Command Help
#1

I have a made a /goto command, but when I /goto 2 (id 2 = Me), it doesn't says You cannot goto yourself, and teleport to myself.
It appears Kostas has teleported you!
Also, The !IsPlayerConnected doesn't work and teleport underground at the farm. And it appears "You have teleport (id)"
pawn Код:
if ( strcmp( cmd, "/goto", true ) == 0 ) {
        new pID = strval(cmdtext);
        if(!strlen(cmdtext)) return SendClientMessage(playerid, 0xFF0000AA, "/Goto [playerid]");
        else if( pID == INVALID_PLAYER_ID || !IsPlayerConnected( pID ) ) return SendClientMessage( playerid, COLOR_RED, "Player is not connected!" );
        else if(pID == playerid) return SendClientMessage(playerid, COLOR_RED, "You cannot goto yourself");
        else if(AllowGoto[pID] == 0) return SendClientMessage(playerid, COLOR_RED, "This player has disable teleport");
        else {
            new tmp[256];
            tmp = strtok( cmdtext, idx );
            if ( !strlen( tmp ) ) { return 1; }
            new Float:X, Float:Y, Float:Z, Pname[24];
            GetPlayerPos( strval(tmp), X, Y, Z );
            ResetPlayerWeapons(playerid);
            if (GetPlayerState(playerid)==PLAYER_STATE_DRIVER)SetVehiclePos( GetPlayerVehicleID(playerid), X+2, Y+2, Z );
            else SetPlayerPos( playerid, X+2, Y+2, Z );
            new String[56];
            GetPlayerName(strval(tmp), Pname, sizeof(Pname));
            format(String, sizeof(String), "{FF9600}You have teleported to %s(%d)", Pname, strval(tmp));
            SendClientMessage(playerid, COLOR_ORANGE, String);
            GetPlayerName(playerid, Pname, sizeof(Pname));
            format(String, sizeof(String), "{FF9600}%s(%d) has teleported to your location", Pname, playerid);
            SendClientMessage(strval(tmp), COLOR_ORANGE, String);
        }
        return 1;
    }
Reply
#2

pawn Код:
if ( strcmp( cmd, "/goto", true ) == 0 )
{
    new pID = strval(cmdtext);
    if(!strlen(cmdtext)) return SendClientMessage(playerid, 0xFF0000AA, "/Goto [playerid]");
    if(AllowGoto[pID] == 0) return SendClientMessage(playerid, COLOR_RED, "This player has disable teleport");
    if( pID == playerid ) return SendClientMessage(playerid, COLOR_RED, "You cannot goto yourself");
    if( !IsPlayerConnected( pID ) && pID == INVALID_PLAYER_ID ) return SendClientMessage( playerid, COLOR_RED, "Player is not connected!" );

    new tmp[256];
    tmp = strtok( cmdtext, idx );
    if ( !strlen( tmp ) ) { return 1; }
    new Float:X, Float:Y, Float:Z, Pname[24];
    GetPlayerPos( strval(tmp), X, Y, Z );
    ResetPlayerWeapons(playerid);
    if (GetPlayerState(playerid)==PLAYER_STATE_DRIVER)SetVehiclePos( GetPlayerVehicleID(playerid), X+2, Y+2, Z );
    else SetPlayerPos( playerid, X+2, Y+2, Z );
    new String[56];
    GetPlayerName(strval(tmp), Pname, sizeof(Pname));
    format(String, sizeof(String), "{FF9600}You have teleported to %s(%d)", Pname, strval(tmp));
    SendClientMessage(playerid, COLOR_ORANGE, String);
    GetPlayerName(playerid, Pname, sizeof(Pname));
    format(String, sizeof(String), "{FF9600}%s(%d) has teleported to your location", Pname, playerid);
    SendClientMessage(strval(tmp), COLOR_ORANGE, String);

    return 1;
}
Reply
#3

Quote:
Originally Posted by aRoach
Посмотреть сообщение
pawn Код:
if ( strcmp( cmd, "/goto", true ) == 0 )
{
    new pID = strval(cmdtext);
    if(!strlen(cmdtext)) return SendClientMessage(playerid, 0xFF0000AA, "/Goto [playerid]");
    if(AllowGoto[pID] == 0) return SendClientMessage(playerid, COLOR_RED, "This player has disable teleport");
    if(pID == playerid) return SendClientMessage(playerid, COLOR_RED, "You cannot goto yourself");
    if( pID == INVALID_PLAYER_ID || !IsPlayerConnected( pID ) ) return SendClientMessage( playerid, COLOR_RED, "Player is not connected!" );
    else
    {
        new tmp[256];
        tmp = strtok( cmdtext, idx );
        if ( !strlen( tmp ) ) { return 1; }
        new Float:X, Float:Y, Float:Z, Pname[24];
        GetPlayerPos( strval(tmp), X, Y, Z );
        ResetPlayerWeapons(playerid);
        if (GetPlayerState(playerid)==PLAYER_STATE_DRIVER)SetVehiclePos( GetPlayerVehicleID(playerid), X+2, Y+2, Z );
        else SetPlayerPos( playerid, X+2, Y+2, Z );
        new String[56];
        GetPlayerName(strval(tmp), Pname, sizeof(Pname));
        format(String, sizeof(String), "{FF9600}You have teleported to %s(%d)", Pname, strval(tmp));
        SendClientMessage(playerid, COLOR_ORANGE, String);
        GetPlayerName(playerid, Pname, sizeof(Pname));
        format(String, sizeof(String), "{FF9600}%s(%d) has teleported to your location", Pname, playerid);
        SendClientMessage(strval(tmp), COLOR_ORANGE, String);
    }
    return 1;
}
Still nothing. I can teleport to myself and I still when I teleport to a player that isn't connected i fall underground at the farm.
Reply
#4

Do you use 0.3d?
Reply
#5

Nop, I use 0.3c R5
Reply
#6

pawn Код:
new pID = strval(cmdtext);
to
pawn Код:
new pID = strval(tmp);
Reply
#7

pawn Код:
if ( strcmp( cmd, "/goto", true ) == 0 )
{
    new pID = strval(tmp);
    if(!strlen(cmdtext)) return SendClientMessage(playerid, 0xFF0000AA, "/Goto [playerid]");
    if(AllowGoto[pID] == 0) return SendClientMessage(playerid, COLOR_RED, "This player has disable teleport");
    if( pID == playerid ) return SendClientMessage(playerid, COLOR_RED, "You cannot goto yourself");
    if( !IsPlayerConnected( pID ) && pID == INVALID_PLAYER_ID ) return SendClientMessage( playerid, COLOR_RED, "Player is not connected!" );

    new tmp[256];
    tmp = strtok( cmdtext, idx );
    if ( !strlen( tmp ) ) { return 1; }
    new Float:X, Float:Y, Float:Z, Pname[24];
    GetPlayerPos( pID, X, Y, Z );
    ResetPlayerWeapons(playerid);
    if (GetPlayerState(playerid)==PLAYER_STATE_DRIVER)SetVehiclePos( GetPlayerVehicleID(playerid), X+2, Y+2, Z );
    else SetPlayerPos( playerid, X+2, Y+2, Z );
    new String[56];
    GetPlayerName(pID, Pname, sizeof(Pname));
    format(String, sizeof(String), "{FF9600}You have teleported to %s(%d)", Pname, pID);
    SendClientMessage(playerid, COLOR_ORANGE, String);
    GetPlayerName(playerid, Pname, sizeof(Pname));
    format(String, sizeof(String), "{FF9600}%s(%d) has teleported to your location", Pname, playerid);
    SendClientMessage(pID, COLOR_ORANGE, String);

    return 1;
}
Try this...
Reply
#8

Thank you!
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)