SA-MP Forums Archive
[Ajuda] Mйtodo de random sem repetir - 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] Mйtodo de random sem repetir (/showthread.php?tid=566565)



Mйtodo de randomizar sem repetir - Detoria - 06.03.2015

Bem,eu estou trabalhando em uma gamemode estilo survival,porйm,como eu queria diferenciar,eu decidi colocar alguns easter eggs pelo mapa,atй aн ok.

Eu criei minha var multidimensional,coloquei as coordenadas exatas,e o random para elas aparecerem soуmente em tais lugares,sempre diferenciando,porйm,eu pensei,"elas vгo estar na mesma coordenada,uma hora ou outra,isso vai acontecer",eu quebrei a cabeзa pra tentar nгo repetir as coordenadas,mais sem sucesso.

Enfim,essa foi minha ъltima tentativa sem testar,de um sistema antigo no forum:

PHP код:
new Float:EasterEggs[][]=
{
    {
XYZ},
    {
XYZ},
    {
XYZ},
    
//etc..
};
new 
cCheck[sizeof(EasterEggs)];
public 
OnFilterScriptInit()
{
    new 
randomCoordSelectCoord;
    do{
        for(new 
0sizeof(cCheck);i++)
        {
            if(
cCheck[i] != 0SelectCoord++;
            if(
SelectCoord == sizeof(cCheck[i]))
            {
                for(new 
0sizeof(cCheck); i++)
                {
                     
cCheck[i] = 0;
                     
randomCoord random(sizeof(EasterEggs));
                }while(
cCheck[randomCoord])
                {
                    
CreateEE(EasterEggs[randomCoord][0],EasterEggs[randomCoord][1],EasterEggs[randomCoord][2]);
                }
            }
         }
      }

Enfim,se quiserem testar criando um objeto algo do tipo,podem testar,sу nгo sei se funciona :/


Re: Mйtodo de random sem repetir - JonathanFeitosa - 07.03.2015

o continue ajuda muito nesses casos. Nгo estou com tempo agora, mas depois verifico melhor a sua lуgica.


Re: Mйtodo de random sem repetir - ExPLORE - 07.03.2015

tenta usar o "BREAK", ou "CONTINUE" como o jonathan falou
Aqui


Re: Mйtodo de random sem repetir - Detoria - 07.03.2015

Break caнria bem melhor,porйm caнria bem tambйm um exemplo utilizando-o,porque eu ainda necessito de mais informaзгo "de fora" da wiki,ou seja,de outros programadores,peзo um exemplo de uso do continue e do break,se possнvel.

Mesmo assim,obrigado pelas respostas!