Other Languages Moderators Lord Henry Posted April 11, 2018 Other Languages Moderators Share Posted April 11, 2018 (edited) Olá senhores. Estou querendo evitar o trabalho de mapear milhares de camas e sofás pelos interiores do GTA. Para isso preciso de alguma função que detecte a presença da cama (Objeto com tal ID) próxima ao jogador. Mas todas as funções que tentei não funcionam com objetos nativos do mapa, só com objetos criados por scripts, o que não me adianta nada. Já tentei fazer isso com onClientClick que consegue obter o elemento clicado, mas não funcionou para objetos de cenário. Tentei também getPedTarget, que também só conseguiu obter elementos criados por scripts, não consegue obter elementos de cenário. E por último tentei getPedContactElement, que detecta o elemento que o jogador está em contato, mas novamente não funciona para elementos de cenário. Já até pensei em criar uma esfera de colisão ao redor do jogador para detectar os elementos que estiverem colidindo nela, mas sei que não iria detectar os objetos do cenário. Alguma ideia do que fazer? Ou realmente terei que fazer manualmente 1 por 1? Edited April 11, 2018 by Lord Henry Link to comment
Leonardo Bradoks Posted April 12, 2018 Share Posted April 12, 2018 Olha eu também não sei no MTA mas no SA-MP a mentalidade seria, criar uma função para pegar o ID do objeto que você está mirando, ai você chega nesses objetos e mira neles ai irá aparecer o REAL ID nativo do GTA. Link to comment
Leonardo Bradoks Posted April 12, 2018 Share Posted April 12, 2018 Creio que a única maneira possível de fazer isso é salvando a posição onde está o objeto e definindo o raio de aproximação em 1.0 ou 0.5. Link to comment
Other Languages Moderators Lord Henry Posted April 12, 2018 Author Other Languages Moderators Share Posted April 12, 2018 (edited) Então, mas aqui não é SAMP. A sistemática lá e programação são diferentes. Até mesmo a edição de mapas é diferente. Quanto ir salvando a posição onde está o objeto é justamente oq eu não quero fazer, pois daria um trabalho infinito fazer isso em cada interior. Sabendo que são mais de 150 interiores diferentes. Eu preciso obter as posições desses objetos automaticamente para fazer o script funcionar. Edited April 12, 2018 by Lord Henry Link to comment
DNL291 Posted April 13, 2018 Share Posted April 13, 2018 processLineOfSight Acho que é possível com essa função. 1 Link to comment
Other Languages Moderators Lord Henry Posted April 13, 2018 Author Other Languages Moderators Share Posted April 13, 2018 12 hours ago, DNL291 said: processLineOfSight Acho que é possível com essa função. Hum... função muito pesada pra usar. Em vez de procurar por camas, deixarei o jogador dormir em qualquer lugar, desde que esteja em interiores específicos. Link to comment
DNL291 Posted April 13, 2018 Share Posted April 13, 2018 Não cheguei a testar a performance dessa função, mas acho que não é pesada assim não, seja em uso de memória ou processamento. Na verdade, seria muito mais leve optar por ela em vez de mapear os objetos manualmente. É a função usada pelo Map Editor, quando o jogador seleciona os objetos do GTA. Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now