[Ajuda] Mйtodo de random sem repetir
#1

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 :/
Reply
#2

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

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

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!
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)