[Ajuda] Random
#1

Estou usando essa stock:
pawn Код:
stock RandomEx(minnum = cellmin, maxnum = cellmax) return random(maxnum - minnum + 1) + minnum;
E estou fazendo uma random aleatуria de musicas.

Exe:

pawn Код:
CMD:escutarmusica(playerid)
{
    new randmu = RandomEx(1, 7), Musicaa[40], String[20];
    if(randmu == 1) Musicaa = "Musica Code";
    else if(randmu == 2) Musicaa = "Musica Code";
    else if(randmu == 3) Musicaa = "Musica Code";
    else if(randmu == 4) Musicaa = "Musica Code";
    else if(randmu == 5) Musicaa = "Musica Code";
    else if(randmu == 6) Musicaa = "Musica Code";
    else if(randmu == 7) Musicaa = "Musica Code";
    format(String, sizeof(String), "Musica %d", randmu);
    SendClientMessage(playerid, -1, String);
    return 1;
}
Mas eu quero fazer, que NUNCA repita a mesma random.

Porque as vezes, repete a mesma mъsica.

Tem algum jeito de fazer a random, nгo repetir?
Reply
#2

Tente assim


pawn Код:
new RandomMusica[3][] = // Nomes Server Random
{
    "Link da musica 1",
    "Link da musica 2",
    "Link da musica 3"
};
 
CMD:escutarmusica(playerid)
{

SendMSG();
}

//Coloque o cуdigo abaixo fora de publics
forward SendMSG();      
public SendMSG()//Aqui a public
{
    new string[256];
    new randMSG = random(sizeof(RandomMusica));
    format(string,sizeof(string),"hostname %s",RandomMusica[randMSG]);
    SendRconCommand(string);
}
Reply
#3

Quote:
Originally Posted by Blitz22
Посмотреть сообщение
Tente assim


pawn Код:
new RandomMusica[3][] = // Nomes Server Random
{
    "Link da musica 1",
    "Link da musica 2",
    "Link da musica 3"
};
 
CMD:escutarmusica(playerid)
{

SendMSG();
}

//Coloque o cуdigo abaixo fora de publics
forward SendMSG();      
public SendMSG()//Aqui a public
{
    new string[256];
    new randMSG = random(sizeof(RandomMusica));
    format(string,sizeof(string),"hostname %s",RandomMusica[randMSG]);
    SendRconCommand(string);
}
Random assim, tambйm repete algumas vezes, pelo menos aqui.
Reply
#4

coloca 1 variбvel a "dizer" que aquela musica ja foi reproduzida.

dps disso faz reproduzir, 1 que ainda n tenha sido reproduzida..
Reply
#5

Pode me mostrar um exemplo ?
Reply
#6

Use matemбtica e lуgica, sу precisa saber aritmйtica junto de variбveis.
Caso contrario, crie um sistema por sequencia. (acho a melhor opзгo)
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)