Portal SAMP
[Ajuda] Tentando criar um sistema de cofre - Versão de Impressão

+- Portal SAMP (https://portalsamp.com)
+-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5)
+--- Fórum: Área de suporte (https://portalsamp.com/forumdisplay.php?fid=6)
+--- Tópico: [Ajuda] Tentando criar um sistema de cofre (/showthread.php?tid=1289)



Tentando criar um sistema de cofre - JR_Junior - 17/06/2021

Olá.
Estou tentando criar um sistema de cofre onde eu possa abrir e fechar a porta do mesmo.

Aqui está o cofre criado já com a porta fechada:
Código PHP:
new cofre CreateDynamicObject(19618414.470702537.359139.45900,  0.000000.0000090.00000);
new 
porta CreateDynamicObject(19619414.704012536.938489.45800,  0.000000.0000090.00000); 

Beleza, eu sei que se eu quiser abrir essa porta basta usar SetObjectRot. Isso funciona perfeitamente com cofres e portas criados manualmente, igual esse.

O que eu quero é poder criar cofres em qualquer coordenada e a porta seja gerada automaticamente na posição correta.

Eu usei AttachObjectToObject e funcionou perfeitamente, o problema é que AttachObjectToObject só funciona com CreateObject e eu preciso que o sistema seja com CreateDynamicObject.

Eu tentei uns cálculos malucos com floatcos e floatsin mas eu não manjo muito e aí não deu certo.

Se alguém puder fazer essa caridade eu agradeço demais!


RE: Tentando criar um sistema de cofre - xbruno1000x - 17/06/2021

Código:
AttachDynamicObjectToObject(objectid, attachtoid, Float:offsetx, Float:offsety, Float:offsetz, Float:rx, Float:ry, Float:rz, syncrotation = 1);
SetDynamicObjectRot(objectid, Float:rx, Float:ry, Float:rz);


Se você for usar streamer, tenha em mente que terá que consultar frequentemente a streamer wiki, sempre ajuda bastante.
https://github.com/samp-incognito/samp-streamer-plugin/wiki/Natives-(Objects)


RE: Tentando criar um sistema de cofre - JR_Junior - 17/06/2021

(17/06/2021 09:55)xbruno1000x Escreveu:
Código:
AttachDynamicObjectToObject(objectid, attachtoid, Float:offsetx, Float:offsety, Float:offsetz, Float:rx, Float:ry, Float:rz, syncrotation = 1);
SetDynamicObjectRot(objectid, Float:rx, Float:ry, Float:rz);


Se você for usar streamer, tenha em mente que terá que consultar frequentemente a streamer wiki, sempre ajuda bastante.
https://github.com/samp-incognito/samp-streamer-plugin/wiki/Natives-(Objects)

Como não existe AttachPlayerObjectToObject, AttachDynamicObjectToObject não funciona por si só, precisa ter o plugin YSF e esse plugin dá um monte de conflito, inclusive com a include foreach. Sendo assim a unica solução seria usando floatcos e floatsin, mas eu não manjo muito.


RE: Tentando criar um sistema de cofre - xbruno1000x - 18/06/2021

Por que você tem que fazer um cofre e uma porta? Não poderia usar o objeto cofre fechado (id 2332) e o objeto cofre aberto (id 1829)?


RE: Tentando criar um sistema de cofre - JR_Junior - 18/06/2021

(18/06/2021 00:34)xbruno1000x Escreveu: Por que você tem que fazer um cofre e uma porta? Não poderia usar o objeto cofre fechado (id 2332) e o objeto cofre aberto (id 1829)?

Por 2 motivos:

1 - O objeto 1829 é ideal pra roubo de dinheiro, pois mostra uma pilha de dinheiro, porém meu sistema de cofre é possivel guardar qualquer item, sendo assim, pra ficar menos estranho quero colocar um cofre vazio.

2 - Porque quero fazer a porta mover tanto pra abrir, quanto pra fechar, juntamente com as animações.


RE: Tentando criar um sistema de cofre - JR_Junior - 19/06/2021

Finalmente consegui, pode fechar o tópico!