[Pedido] alquem min ajuda pf-[ Teleporta um player].
#1

Galera to precisando muito desse comando. tipo eu teleporto o cara usando um comando.tipo eu digito /teleportaplayer [id] eu usando isso ai eu teleporto um cara para outro lugar.se alquem suber obg
Reply
#2

pawn Код:
CMD:teleportar(playerid, params[])
{
    if(IsPlayerAdmin(playerid))
    {
        jogador1, jogador2;
        new Float:X, Float:Y, Float:Z;
        if(sscanf(params, "dd", jogador1, jogador2)) return SendClientMessage(playerid, -1, "ERRO: Use /Teleportar [ ID 1 ] [ ID 2 ]");
        if(!IsPlayerConnected(jogador1) return SendClientMessage(playerid, -1, "ERRO:Jogador 1 nгo conectado.");
        if(!IsPlayerConnected(jogador2) return SendClientMessage(playerid, -1, "ERRO:Jogador 2 nгo conectado.");
        GetPlayerPos(jogador2, X, Y, Z);
        SetPlayerPos(jogador1, X, Y, Z);
        SendClientMessage(playerid, -1, "* jogadores teleportados.");
    }
    else
    {
        SendClientMessage(playerid, -1, "Vocк nгo й admin !");
    }
    return 1;
}
Creio que seja isso '-'

Lembrando, ele ira levar o jogador1 atй a posiзгo do jogador2 .
Reply
#3

pawn Код:
CMD:teleportar(playerid, params[]) {
      new tele, give;
      if(sscanf(params, "id", tele, give)) return SendClientMessage(playerid, -1 "Use: /teleportar [playerid]");
      SetPlayerPos(give, Float:X, Float:Y, Float:Z);
      return true;
}
Estб aн, caso der algo errado avisa, (estou usando celular)

#OFF
Йs de Recife й cara? Tambйm sou -q
Reply
#4

Este comando seta o posiзao do player para o que indicou no comando:

pawn Код:
CMD:setarpos(playerid, params[])
{
    new X, Y, Z;
    if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Vocк precisa ser admin nivel 3 para usar este comando!");
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Vocк precisa /trabalhar para usar esse comando!");
    if(sscanf(params, "uiii", ID, X, Y, Z)) return SendClientMessage(playerid, CINZA, "[SERVER] Use /setarposicao [ID] [Pos X] [Pos Y] [Pos Z]"), SendClientMessage(playerid, CINZA, "Use o comando para alterar a posiзгo de um jogador");
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
    SetPlayerPos(ID, X, Y, Z);
    format(String, sizeof(String), "[SERVER] O Admin {1B95E0}%s{00C2EC} Teleportou o jogador {1B95E0}%s{00C2EC} para as cordenadas: %d %d %d!", Nome(playerid), Nome(ID), X, Y, Z);
    SendClientMessageToAll(BRANCO, String);
    return 1;
}
ou este que traz o player ate sua posiзao

pawn Код:
CMD:trazer(playerid, params[])
{
    if(PlayerDados[playerid][Admin] < 1) return SendClientMessage(playerid, BRANCO, "Vocк precisa ser admin nivel 2 para usar este comando!");
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Vocк precisa /trabalhar para usar esse comando!");
    if(sscanf(params, "u", ID)) return SendClientMessage(playerid, CINZA, "[SERVER] Use /trazer [ID]"), SendClientMessage(playerid, CINZA, "Use o comando para trazer um jogador atй vocк");
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
    new Float:Pos[3];
    GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
    SetPlayerPos(ID, Pos[0]+2, Pos[1]+2, Pos[2]+2);
    format(String, sizeof(String), "O Admin %s trouxe vocк atй ele!", Nome(playerid));
    SendClientMessage(ID, AZUL_CLARO, String);
    format(String, sizeof(String), "Vocк trouxe o jogador %s [ID: %d] atй vocк", Nome(ID), ID);
    SendClientMessage(playerid, AZUL_CLARO, String);
    return 1;
}
Reply
#5

axo que seria mais facil teleportar o cara para uma coordenada definida ao digitar o comando
pawn Код:
CMD:teleportplayer(playerid,params[]){
    if(!IsPlayerAdmin(playerid))return 0;
    new Float:F[3],id;
    if(sscanf(params,"ufff",id,F[0],F[1],F[2]))return SendClientMessage(playerid,/*Cor Vermelha*/ 0xFF0000AA,"/teleportplayer <id> <X> <Y> <Z>");
    if(!IsPlayerConnected(id))return SendClientMessage(playerid,/*Cor Vermelha*/ 0xFF0000AA,"Jogador Nгo Conectado");
    SetPlayerPos(id,F[0],F[1],F[2]);
    new String[256],Nome[24],AdminNome[24];
    GetPlayerName(id,Nome,24);
    GetPlayerName(id,AdminNome,24);
    SendClientMessage(playerid,/*Cor Vermelha*/ 0xFF0000AA,(format(String,256,"Vocк Teleportou o Player %s Para As Seguintes Posiзхes %f %f %f",Nome,F[0],F[1],F[2]),String));
    return SendClientMessage(playerid,/*Cor Vermelha*/ 0xFF0000AA,(format(String,256,"Vocк Foi Teleportado Por %s Para As Seguintes Posiзхes %f %f %f",AdminNome,F[0],F[1],F[2]),String));
}
@edit

Quote:
Originally Posted by ungroup
Посмотреть сообщение
Este comando seta o posiзao do player para o que indicou no comando:

pawn Код:
CMD:setarpos(playerid, params[])
{
    new X, Y, Z;
    if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Vocк precisa ser admin nivel 3 para usar este comando!");
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Vocк precisa /trabalhar para usar esse comando!");
    if(sscanf(params, "uiii", ID, X, Y, Z)) return SendClientMessage(playerid, CINZA, "[SERVER] Use /setarposicao [ID] [Pos X] [Pos Y] [Pos Z]"), SendClientMessage(playerid, CINZA, "Use o comando para alterar a posiзгo de um jogador");
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
    SetPlayerPos(ID, X, Y, Z);
    format(String, sizeof(String), "[SERVER] O Admin {1B95E0}%s{00C2EC} Teleportou o jogador {1B95E0}%s{00C2EC} para as cordenadas: %d %d %d!", Nome(playerid), Nome(ID), X, Y, Z);
    SendClientMessageToAll(BRANCO, String);
    return 1;
}
sу avisando, pra usar floats no sscanf й 'f' nгo 'i'
Reply
#6

Nem o desenvolvidor do SAMP ou melhor, do GTA SA conseguiria decorar cada coordenada de San Andreas.
Reply
#7

Galera decupem ai por nao avisar, eu faзo nen ideia como usar sscanf. e possivel vcs criarem em strcmp?
se for possivel obg ai. mais eu quero assim exemplo eu uso /teleplayer [id] ai o cara vai para esse lugar SetPlayerPos(playerid, -1120.8994, 2822.5698, 42.7000);
Reply
#8

Quote:
Originally Posted by Weslly Stronda
Посмотреть сообщение
Galera decupem ai por nao avisar, eu faзo nen ideia como usar sscanf. e possivel vcs criarem em strcmp?
se for possivel obg ai.
clбro, irei fazer em Strtok e ja edito.

@edit:
pawn Код:
#include <a_samp>
public OnPlayerCommandText(playerid,cmdtext[]){
    new cmd[256],idx;
    cmd = strtok(cmdtext,idx);
    if(!strcmp("/teleportplayer",cmd,true)){
        tmp = strtok(cmdtext,idx);
        if(!strlen(tmp))return SendClientMessage(playerid,/*Cor Vermelha*/ 0xFF0000AA,"/teleportplayer <id> <X> <Y> <Z>");
            id = strval(tmp);
        if(!IsPlayerAdmin(playerid))return 0;
            SetPlayerPos(id, -1120.8994, 2822.5698, 42.7000);
        new String[256],Nome[24],AdminNome[24];
        GetPlayerName(id,Nome,24);
        GetPlayerName(id,AdminNome,24);
        SendClientMessage(playerid,/*Cor Vermelha*/ 0xFF0000AA,(format(String,256,"Vocк Teleportou o Player %s ",Nome),String));
        return SendClientMessage(playerid,/*Cor Vermelha*/ 0xFF0000AA,(format(String,256,"Vocк Foi Teleportado Por %s",AdminNome),String));
    }
    return 0;
}
strtok(const string[], &index)
{
    new length = strlen(string);
    while ((index < length) && (string[index] <= ' '))
    {
        index++;
    }

    new offset = index;
    new result[20];
    while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
    {
        result[index - offset] = string[index];
        index++;
    }
    result[index - offset] = EOS;
    return result;
}
ta ae o cуdigo qlquer erro me avise amanhг
Reply
#9

jonathan deo esse error aqui:
fatal error 100: cannot read from file: "sscanf"
Reply
#10

vc tem de botar o plugin sscanf e a include
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)