[Ajuda] [Duvida] Criar locais de descarregamento aleatуrios
#1

Galera, como eu faзo pra criar locais de descarregamento aleatуrio? Exemplo, cada vez que o player digitasse /carregar na HQ, apareceria um local aleatуrio para ele descarregar. Tipo, eu definiria uns 5 locais de descarregar, que seria escolhido um desses 5 aleatoriamente quando desse /carregar. Alguйm sabe como faz isso?
Reply
#2

http://forum.sa-mp.com/showpost.php?...21&postcount=6
Reply
#3

Nгo sei se estб certo, mas testa ae.

PHP код:

static FloatDescarregar[5][3] = {
{
0.0,0.0,0.0}. // X Y Z coord 1
{1.0,2.0,3.0}. // X Y Z coord 2
{4.0,5.0,6.0}  // X Y Z coord 3
{7.0,8.0,9.0// X Y Z coord 4
{10.011.012.0// X Y Z coord 5
};
new 
random  random(sizeof(Descarregar));
SetPlayerCheckpoint(playeridDescarregar[random][0], Descarregar[random][1], Descarregar[random][2], 5.0); 
Reply
#4

Quote:
Originally Posted by Cauezin
Посмотреть сообщение
Nгo sei se estб certo, mas testa ae.

PHP код:

static FloatDescarregar[5][3] = {
{
0.0,0.0,0.0}. // X Y Z coord 1
{1.0,2.0,3.0}. // X Y Z coord 2
{4.0,5.0,6.0}  // X Y Z coord 3
{7.0,8.0,9.0// X Y Z coord 4
{10.011.012.0// X Y Z coord 5
};
new 
random  random(sizeof(Descarregar));
SetPlayerCheckpoint(playeridDescarregar[random][0], Descarregar[random][1], Descarregar[random][2], 5.0); 
Mas como eu faria pra quando digitasse /carregar marcar no mapa 1 desses locais aleatoriamente para descarregar?
Reply
#5

Quote:
Originally Posted by LeonardoMD
Посмотреть сообщение
Mas como eu faria pra quando digitasse /carregar marcar no mapa 1 desses locais aleatoriamente para descarregar?
PHP код:

CMD
:carregar(playerid)
{
SetPlayerCheckpoint(playeridDescarregar[random][0], Descarregar[random][1], Descarregar[random][2], 5.0); 
SendClientMessage(playerid, -1"[Caminhoneiros] Descarregue no ponto vermelho em seu mapa");
return 
1;

Reply
#6

Quote:
Originally Posted by Cauezin
Посмотреть сообщение
PHP код:

CMD
:carregar(playerid)
{
SetPlayerCheckpoint(playeridDescarregar[random][0], Descarregar[random][1], Descarregar[random][2], 5.0); 
SendClientMessage(playerid, -1"[Caminhoneiros] Descarregue no ponto vermelho em seu mapa");
return 
1;

Vlw mano! Tmj.
Mais uma dъvida hehe', como eu faria pra adaptar o comando /descarregar nesse caso? Tipo, pra verificar se o player estб em um dos 5 locais que foi aleatoriamente marcado no mapa quando ele deu /carregar? :/
Reply
#7

Quote:
Originally Posted by LeonardoMD
Посмотреть сообщение
Vlw mano! Tmj.
Mais uma dъvida hehe', como eu faria pra adaptar o comando /descarregar nesse caso? Tipo, pra verificar se o player estб em um dos 5 locais que foi aleatoriamente marcado no mapa quando ele deu /carregar? :/
Cara й um sistema de checkpoints, nгo precisa de /descarregar, quando vocк entrar no checkpoint vai ser exatamente /descarregar , sу que sem digitar comandos.

Estude como funciona os checkpoints para completar seu sistema.
Reply
#8

Vocк terб que transformar a variбvel random em um vetor usando o MAX PLAYERS pois cada player terб seu checkpoint randomico. No comando descarregar vocк usa a funзгo IsPlayerInRangeOfPoint e usa como argumentos a matriz Carregar com нndice da variбvel criada.
Exemplo:
PHP код:
static FloatDescarregar[5][3] = { 
{
0.0,0.0,0.0}. // X Y Z coord 1 
{1.0,2.0,3.0}. // X Y Z coord 2 
{4.0,5.0,6.0}  // X Y Z coord 3 
{7.0,8.0,9.0// X Y Z coord 4 
{10.011.012.0// X Y Z coord 5 
}; 
new 
random[MAX_PLAYERS]; 
CMD:carregar(playerid

    
random[playerid] = random(sizeof(Descarregar));
    
    new 
index =  random[playerid];
    
    
SetPlayerCheckpoint(playeridDescarregar[index][0], Descarregar[index][1], Descarregar[index][2], 5.0);  
    
SendClientMessage(playerid, -1"[Caminhoneiros] Descarregue no ponto vermelho em seu mapa"); 
    return 
1
}  
CMD:descarregar(playerid)
{
    new 
index =  random[playerid];
    
    if(!
IsPlayerInRangeOfPoint(playerid,5.0,Descarregar[index][0], Descarregar[index][1], Descarregar[index][2]);
        return 
SendClientMessage(playerid, -1,"Vocк nгo estб no local de entrega!"); 
        
    return 
1;

Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)