Junior_Djjr escreveu: ↑Caso tiver algum pickup de dinheiro próximo, e naquele local do pickup não tiver nenhuma pessoa próxima, vá até ele, olhe para os lados e pegue.
Logo após pegar, checar por outros próximos, igual acima, mas agora sem fazer a animação olhando.
Melhor pegar uns 3 pickups próximos em vez de só 1, senão vai ficar fazendo animação abaixando toda hora e não será natural.
Após pegar tudo próximo, volta pro primeiro caso, onde caso encontrar de novo, olhe para os lados.
já montei todo o sistema, agora só falta converter uma função cleo de transformar o pickup em objeto para eu obter o handle dele, pq é necessário para obter a proximidade entre o pedestre e o dinheiro (na verdade dá para fazer sem mas para deixar o código mais simples..) o ponto é que sem o handle não consigo fazer o pickup sumir por que não tem nenhuma variavel que me dê o pointer do money, só faz verificações com resultado boolean
achei essa função na internet mas não sei se ela funciona apenas com pickups ou se o moneypickup também se encaixa(se puder dizer antes de eu tentar converter isso ajudaria bastante)
Código: Selecionar tudo
:Pickup2Object
// 0@ - input param (pickup handle)
// get pickup pointer
0085: 1@ = 0@
0A91: 3@ = 1@ / 65536
0A90: 4@ = 3@ * 65536
0062: 1@ -= 4@
1@ *= 32
1@ += 0x9788C0
// read index
0A8E: 4@ = 1@ + 0x1A
0A8D: 4@ = read_memory 4@ size 2 virtual_protect 0
if
003B: 3@ == 4@
then
// obtain pickup's object pointer
1@ += 4
0A8D: 1@ = read_memory 1@ size 4 virtual_protect 0
if
1@ > 0
then
// convert object pointer to a handle
0A8D: 8@ = read_memory 0xB7449C size 4 virtual_protect 0
0AA8: call_function_method 0x465070 struct 8@ num_params 1 pop 0 1@ 1@
if
03CA: object 1@ exists
then
0485: return_true
0AB2: ret 1 1@
end
end
end
059A: return_false
0AB2: ret 1 0
acho que nesse script terei que trabalhar com threads, são muitas coordenadas para fazer verificação kk
#edit
na verdade, agora que eu pensei, não sei como obter o handle do moneypickup pra converter ele em objeto kkkk eita
teria uma gambiarra que daria pra fazer bem legal, ao pedestres morrerem proximo ao jogador gerar pickups de money dentro do proprio script aí eu teria o pointer de cada money criado mas pra isso teria que fazer um mod para remover o drop de dinheiro ao matar npcs(para não ficar mta grana espalhada)