[Pedido] Ir em tal coordenada.
#1

Existe algum cуdigo que faзa o Admin ir na coordenada desejada?
Se alguйm souber, poderia me explicar como funciona?
Reply
#2

pawn Код:
CMD:ir(playerid, params[])
{
    //if(!IsPlayerAdmin(playerid)) return 1;
    new Float:gPos[3]; // Define uma Float Pra Colocarmos as Cordenadas.
    if(sscanf(params, "fff", gPos[0], gPos[1], gPos[2])) return SendClientMessage(playerid, -1, "Uso correto: /ir [x] [y] [z]"); // Caso o Player Digitar, Errado o Comando, Mandara Mensagem, Ou Seja nгo Poderб ter mais de 3 espaзos, quando for digitar as cordenadas
    SetPlayerPos(playerid, gPos[0], gPos[1], gPos[2]); // TelePorta O Player Na Cordenada, Colocada.
    new gString[128]; // Cria uma Variavel, Pra Avisar, qual Cordenada O Player Foi.
    format(gString, sizeof(gString), "Vocк teleportou para a coordenada {00FF33}%f %f %f{FFFFFF}.", gPos[0], gPos[1], gPos[2]); //Manda mensagem, avisando que vocк Teleportou, e Teleporta o Player, nas cordenadas colocadas.
    SendClientMessage(playerid, -1, gString); // Manda Mensagem para o player.
    return 1;
}
Ou se for Em STRCMP
pawn Код:
if(strcmp("/ircord", cmdtext, true) == 0)
{
     if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "Somente administrador rcon pode usar!");
     new Float:P[3], aStr[75];
     tmp = strtok(cmdtext, idx);
     if(!strlen(tmp)) return SendClientMessage(playerid, -1 , "/ircord [x] [y] [z]");
     P[0] = strval(tmp);
     if(!strlen(tmp)) return SendClientMessage(playerid, -1 , "/ircord [x] [y] [z]");
     P[1] = strval(tmp);
     if(!strlen(tmp)) return SendClientMessage(playerid, -1 , "/ircord [x] [y] [z]");
     P[2] = strval(tmp);
     SetPlayerPos(playerid, P[0], P[1], P[2]);
     format(aStr, sizeof(aStr), "Teleportado atй as cordenadas X » [%f] , Y » [%f] , Z » [%f]", P[0], P[1], P[2]);
     return 1;
}
Espero ter ajudado.
Reply
#3

Й sу isso o cуdigo? O.O
Reply
#4

Creio que Sim ^^
DHASUDHASUHDAS
Lembrando, terб que Por no topo do gamemode:
pawn Код:
<sscanf>
<zcmd>
Porquк No primeiro codigo, Usa ZCMD, E Sscanf, otimizando e deixando mais "limpo" o code.

Ajudei? +REP
Reply
#5

Quote:
Originally Posted by Dick_Vigarista
Посмотреть сообщение
Й sу isso o cуdigo? O.O
E desde quando um cуdigo precisa ter 100 linhas de programaзгo para um simples teleporte?
Reply
#6

Se vocк usa strcmp

PHP код:
    if(strcmp(cmd,"/setpos",true)==&& PlayerInfo[playerid][pAdmin] == 10)
    {
        new 
plid,Float:setpos[3];
        
tmp strtok(cmdtext,idx);
        if(!
strlen(tmp)) return SendClientMessage(playeridCOR_ORGPM"USE: /setpos [id] [X] [Y] [Z]");
        
plid strval(tmp);
        for(new 
x=0;x<3;x++)
        {
            
tmp strtok(cmdtext,idx);
            if(!
strlen(tmp)) return SendClientMessage(playeridCOR_ORGPM"USE: /setpos [id] [X] [Y] [Z]");
            
setpos[x] = floatstr(tmp);
        }
        
SetPlayerPos(plid,setpos[0],setpos[1],setpos[2]);
        
SendClientMessage(playeridCOR_ORGPM"Posiзгo setada!");
        return 
1;
    } 
Reply
#7

Sу uma dica tambem Dick_vigarista,
Estava olhando, Posts Criados Por vocк.
Nгo estou brigando com ninguem sу estou falando, o certo.
Vocк, Esta pedindo Muita ajuda, jб й o 2 segundo Tуpico que te ajudo neste dia, E Olhei seus historico de Tуpicos.

E Olha isso:

Tente, Ajudar Pessoas Cara, Se nгo pessoas nгo iram mais te ajudar, se vocк Continuar assim.
Reply
#8

Quote:
Originally Posted by iCasTiel
Посмотреть сообщение
E desde quando um cуdigo precisa ter 100 linhas de programaзгo para um simples teleporte?
Por que eu peguei um cуdigo, aprimorei e compilei ele, deu 4 errors. tinha em torno de 120 e poucas linhas..
E no final, nгo funcionou. kk
Reply
#9

pawn Код:
COMMAND:irpara(playerid, params[])
{
    new Float:x, Float:y, Float:z, PortMsg[128], Interior;
    if (APlayerData[playerid][PlayerLevel] >= 2)
    {
        if (sscanf(params, "fffi", x, y, z, Interior)) SendClientMessage(playerid, 0xFF0000AA, "{FFFF00}[INFO] {079100}Uso: /irpara [x] [y] [z] [Interior]");
        {
            SetPlayerPos(playerid, x, y, z);
            SetPlayerInterior(playerid, Interior);
            format(PortMsg, 128, "Vocк foi teleportado para a posiзгo: %4.2f, %4.2f, %4.2f", x, y, z);
            SendClientMessage(playerid, 0x00FF00FF, PortMsg);
        }
    }
    else
        SendClientMessage(playerid, -1, "{FF0000}Vocк nгo tem permissгo para isso!");
    return 1;
}
Retirei do GameMode que tenho no PC . Crйditos PowerPC603.
Reply
#10

Quote:
Originally Posted by Powers
Посмотреть сообщение
Se vocк usa strcmp

PHP код:
    if(strcmp(cmd,"/setpos",true)==&& PlayerInfo[playerid][pAdmin] == 10)
    {
        new 
plid,Float:setpos[3];
        
tmp strtok(cmdtext,idx);
        if(!
strlen(tmp)) return SendClientMessage(playeridCOR_ORGPM"USE: /setpos [id] [X] [Y] [Z]");
        
plid strval(tmp);
        for(new 
x=0;x<3;x++)
        {
            
tmp strtok(cmdtext,idx);
            if(!
strlen(tmp)) return SendClientMessage(playeridCOR_ORGPM"USE: /setpos [id] [X] [Y] [Z]");
            
setpos[x] = floatstr(tmp);
        }
        
SetPlayerPos(plid,setpos[0],setpos[1],setpos[2]);
        
SendClientMessage(playeridCOR_ORGPM"Posiзгo setada!");
        return 
1;
    } 
Quando eu uso esse comando, Seta a posiзгo. Porйm, Eu nгo vou nela. Sу seta mesmo.
Seria outro comando para ir em tal posiзгo setada?
Reply


Forum Jump:


Users browsing this thread: 3 Guest(s)