04.03.2017, 14:44
Sua lуgica ta meio ruim:
Timers sгo utilizados para executar funзхes a cada X intervalo de tempo ou em certo intervalo de tempo. Vocк sу chama a funзгo "VerificarPosicao" uma vez e o intervalo nгo importa, entгo nгo й necessбrio o uso de timer.
Pra fazer esse sistema de colocaзгo vocк precisa entender como se faz "sorting", jб mandei um link no outro tуpico com uma cacetada de algorнtimos sobre isso, sу escolher o que melhor se encaixa na situaзгo.
O jeito mais fбcil й criar uma variбvel global pra salvar as posiзхes e, quando comeзar a corrida, colocar o id de todos os jogadores que estгo no evento dentro dela, sem pular nenhuma posiзгo. Assim vocк terб uma array com todos os corredores (por enquanto a ordem nгo importa porque ninguйm pegou checkpoint).
A partir disto, quando alguйm pegar um CP vocк vai dar um loop nessa array com as posiзхes e verificar se ele passou alguйm, se sim faz a troca (swap). Talvez nгo seja o modo mais otimizado, mas й o mais fбcil
Timers sгo utilizados para executar funзхes a cada X intervalo de tempo ou em certo intervalo de tempo. Vocк sу chama a funзгo "VerificarPosicao" uma vez e o intervalo nгo importa, entгo nгo й necessбrio o uso de timer.
Pra fazer esse sistema de colocaзгo vocк precisa entender como se faz "sorting", jб mandei um link no outro tуpico com uma cacetada de algorнtimos sobre isso, sу escolher o que melhor se encaixa na situaзгo.
O jeito mais fбcil й criar uma variбvel global pra salvar as posiзхes e, quando comeзar a corrida, colocar o id de todos os jogadores que estгo no evento dentro dela, sem pular nenhuma posiзгo. Assim vocк terб uma array com todos os corredores (por enquanto a ordem nгo importa porque ninguйm pegou checkpoint).
A partir disto, quando alguйm pegar um CP vocк vai dar um loop nessa array com as posiзхes e verificar se ele passou alguйm, se sim faz a troca (swap). Talvez nгo seja o modo mais otimizado, mas й o mais fбcil