SA-MP Forums Archive
[Ajuda] Random Checkpoints - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] Random Checkpoints (/showthread.php?tid=577062)



Random Checkpoints - Nenzittow - 08.06.2015

Boas,

Entгo pessoal... preciso de ajuda aqui num mini-sistema.


Й o seguinte:

Imaginem um local onde existem 6 veнculos.

A - B - C - D - E - F
[ ] [ ] [ ] [ ] [ ] [ ]



Um jogador digita /CriarCheckpoint e й criado para o jogador um checkpoint em um desses veнculos.

Ficaria tipo assim:

A - B - C - D - E - F
[ ] [ ] [ ] [ ] [ ] [X]



Depois outros jogadores iriam fazer o mesmo e ficaria algo desse tipo:

A - B - C - D - E - F
[X] [X] [X] [X] [X] [X]



Ou seja, iria ser criado 1 checkpoint em um veнculo diferente para cada jogador.

Quando nгo houvesse + veнculos, iria aparecer uma mensagem para o jogador que digitou /CriarCheckpoint de que nгo existem veнculos disponнveis.

Depois os veнculos iriam ser automaticamente spawnados e os jogadores jб podiam criar novos checkpoints.


A minha dъvida й: como posso fazer isso?

Eu sei que existe um sistema de Random, porйm, nгo sei como iria adequar para essa situaзгo, limitando a 6 veнculos e o mesmo checkpoint nгo pode aparecer para 2 jogadores diferentes.


Pronto, basicamente й isso... essa forma pode nгo ser a melhor para vocкs entenderem, porque na verdade nгo tem muito a ver com o que eu estou a fazer. Isso foi apenas para proteger uma ideia. Penso que quem entende de programaзгo vai entender bem isso.


Re: Random Checkpoints - zSuYaNw - 08.06.2015

Quote:
Originally Posted by CyNiC
Посмотреть сообщение
Usando IRL(https://sampforum.blast.hk/showthread.php?tid=269457):
pawn Код:
//Criando nъmeros a ser sorteados:
new RandomList:Loteria;
Loteria = CreateRandomList();
for(new i = 1; i < 51; i++) AddItemsToRandomList(Loteria, i);
//Obter nъmeros random
new Numbers[6];
Numbers[0] = RandomNumberFromList(Loteria);
RemoveItemsFromRandomList(Loteria, Numbers[0]);
Numbers[1] = RandomNumberFromList(Loteria);
RemoveItemsFromRandomList(Loteria, Numbers[1]);
Numbers[2] = RandomNumberFromList(Loteria);
RemoveItemsFromRandomList(Loteria, Numbers[2]);
Numbers[3] = RandomNumberFromList(Loteria);
RemoveItemsFromRandomList(Loteria, Numbers[3]);
Numbers[4] = RandomNumberFromList(Loteria);
RemoveItemsFromRandomList(Loteria, Numbers[4]);
Numbers[5] = RandomNumberFromList(Loteria);
RemoveItemsFromRandomList(Loteria, Numbers[5]);
//Destruindo lista
DestroyRandomList(Loteria);
Usando foreach: (https://sampforum.blast.hk/showthread.php?tid=92679)
pawn Код:
//Criando nъmeros a ser sorteados:
new Iterator:Numeros<50>;
for(new i = 1; i < 51; i++) Itter_Add(Numeros, i);
//Obter nъmeros random
new Numbers[6];
Numbers[0] = Itter_Random(Numeros);
Itter_Remove(Numeros, Numbers[0]);
Numbers[1] = Itter_Random(Numeros);
Itter_Remove(Numeros, Numbers[1]);
Numbers[2] = Itter_Random(Numeros);
Itter_Remove(Numeros, Numbers[2]);
Numbers[3] = Itter_Random(Numeros);
Itter_Remove(Numeros, Numbers[3]);
Numbers[4] = Itter_Random(Numeros);
Itter_Remove(Numeros, Numbers[4]);
Numbers[5] = Itter_Random(Numeros);
Itter_Remove(Numeros, Numbers[5]);
Da uma pesquisada mano.


Re: Random Checkpoints - Nenzittow - 08.06.2015

Quote:
Originally Posted by zSuYaNw
Посмотреть сообщение
Da uma pesquisada mano.
Nгo entendi muito bem essa explicaзгo...

O 2є link nгo estб funcionando.

Consegue explicar melhor de outra forma pfv?

Obrigado.


Re: Random Checkpoints - Adejair_Junior - 08.06.2015

Quote:
Originally Posted by Nenzittow
Посмотреть сообщение
Nгo entendi muito bem essa explicaзгo...

O 2є link nгo estб funcionando.

Consegue explicar melhor de outra forma pfv?

Obrigado.
Hб infinitas formas de se fazer isto, listas encadeadas, tambйm com y_iterate do ****** que o garf postou acima.

y_iterate
Listas Encadeadas