Me ayudan con estas cosas??
#1

Emm hola! XD Emm fijense ke les venia a pedir unas cosas xd emm fijense ke me keria krear esto

1-Goto para los users Y Tambien blockear goto



pawn Код:
dcmd_goto(playerid,params[])
{
    if(AccInfo[playerid][Level] >= 2 || IsPlayerAdmin(playerid))
    {
        if(!strlen(params)) return
        SendClientMessage(playerid, LIGHTBLUE2, "Uso: /goto [ID del Jugador]") &&
        SendClientMessage(playerid, orange, "Funcion: Puedes teleportarte a un jugador Determinado");
        new player1;
        new string[128];
        if(!IsNumeric(params))
        player1 = ReturnPlayerID(params);
           else player1 = strval(params);
         if(IsPlayerConnected(player1) && player1 != INVALID_PLAYER_ID && player1 != playerid)
         {
            SendCommandToAdmins(playerid,"Goto");
            new Float:x, Float:y, Float:z;    GetPlayerPos(player1,x,y,z);
            SetPlayerInterior(playerid,GetPlayerInterior(player1));
            SetPlayerVirtualWorld(playerid,GetPlayerVirtualWorld(player1));
            if(GetPlayerState(playerid) == 2)
            {
            SetVehiclePos(GetPlayerVehicleID(playerid),x+3,y,z);
            LinkVehicleToInterior(GetPlayerVehicleID(playerid),GetPlayerInterior(player1));
            SetVehicleVirtualWorld(GetPlayerVehicleID(playerid),GetPlayerVirtualWorld(player1));
            }
            else SetPlayerPos(playerid,x+2,y,z);
            format(string,sizeof(string),"|- Usted ha teletransportado a \"%s\" -|", pName(player1));
            return SendClientMessage(playerid,BlueMsg,string);
        }
        else return ErrorMessages(playerid, 4);
    }
    else return ErrorMessages(playerid, 1);
}
Ps me lanza muchos errores No se si me ayudaban asi con esto tambien ke por ejemplo cuando un user jode mucho al otro Ponga /block [ID] y no pueda teletransportarse nose si me ayudaban


PD:Obviamente le kite Las cosas de admins como esta
pawn Код:
if(AccInfo[playerid][Level] >= 2 || IsPlayerAdmin(playerid))
    {
Entre otras
Reply
#2

fijate asi:
pawn Код:
dcmd_goto(playerid,params[])
{
    if(Pinfo[playerid][Block] == 0){
        if(!strlen(params)) return
        SendClientMessage(playerid, LIGHTBLUE2, "Uso: /goto [ID del Jugador]") &&
        SendClientMessage(playerid, orange, "Funcion: Puedes teleportarte a un jugador Determinado");
        new player1;
        new string[128];
        if(!IsNumeric(params))
            player1 = ReturnPlayerID(params);
        else player1 = strval(params);
        if(IsPlayerConnected(player1) && player1 != INVALID_PLAYER_ID && player1 != playerid){
            new Float:x, Float:y, Float:z;
            GetPlayerPos(player1,x,y,z);
            SetPlayerInterior(playerid,GetPlayerInterior(player1));
            SetPlayerVirtualWorld(playerid,GetPlayerVirtualWorld(player1));
            if(GetPlayerState(playerid) == 2){
                SetVehiclePos(GetPlayerVehicleID(playerid),x+3,y,z);
                LinkVehicleToInterior(GetPlayerVehicleID(playerid),GetPlayerInterior(player1));
                SetVehicleVirtualWorld(GetPlayerVehicleID(playerid),GetPlayerVirtualWorld(player1));
            }
            else SetPlayerPos(playerid,x+2,y,z);
            format(string,sizeof(string),"|- Usted se ha teletransportado a \"%s\" -|", pName(player1));
            return SendClientMessage(playerid, color, string);
        }else return SendClientMessage(playerid, color, "ERROR: ID incorrecto");
    }else return SendClientMessage(playerid, color, "ERROR: No puedes teletrasportarte a este jugador");
}
Reply
#3

pawn Код:
dcmd_goto(playerid,params[])
{
    if(!strlen(params)) return
    SendClientMessage(playerid, LIGHTBLUE2, "Uso: /goto [ID del Jugador]") &&
    SendClientMessage(playerid, orange, "Funcion: Puedes teleportarte a un jugador Determinado");
    new player1;
    new string[128];
    if(!IsNumeric(params))
    player1 = ReturnPlayerID(params);
    else player1 = strval(params);
    if(IsPlayerConnected(player1) && player1 != INVALID_PLAYER_ID && player1 != playerid)
    {
        if(AccInfo[BlockGT][player1] != playerid)
        {
            SendCommandToAdmins(playerid,"Goto");
            new Float:x, Float:y, Float:z;    GetPlayerPos(player1,x,y,z);
            SetPlayerInterior(playerid,GetPlayerInterior(player1));
            SetPlayerVirtualWorld(playerid,GetPlayerVirtualWorld(player1));
            if(GetPlayerState(playerid) == 2)
            {
                SetVehiclePos(GetPlayerVehicleID(playerid),x+3,y,z);
                LinkVehicleToInterior(GetPlayerVehicleID(playerid),GetPlayerInterior(player1));
                SetVehicleVirtualWorld(GetPlayerVehicleID(playerid),GetPlayerVirtualWorld(player1));
            }
            else SetPlayerPos(playerid,x+2,y,z);
            format(string,sizeof(string),"|- Usted ha teletransportado a \"%s\" -|", pName(player1));
            return SendClientMessage(playerid,BlueMsg,string);
        }
        else return SendClientMessage(playerid,COLOR,"El jugador tiene deshabilitada su tele transportaciуn");
    }
    else return ErrorMessages(playerid, 4);
}
//--------
dcmd_block(playerid,params[])
{
    if(!strlen(params)) return
    SendClientMessage(playerid,LIGHTBLUE2,"Uso: /block [ID del jugador]") &&
    SendClientMessage(playerid,orange,"Funciуn: Deshabilita el teleporte hacia ti de un jugador determinado");
    new player1;
    new string[128];
    if(!IsNumeric(params))
        player1 = ReturPlayerID(params);
    else
        player1 = strval(params);
    if(IsPlayerConnected(player1) && player1 != INVALID_PLAYER_ID && player1 != playerid)
    {
        SendCommandToAdmins(playerid,"Block");
        AccInfo[BlockGT][playerid] = player1;
        //pon mensajes
    }
    else return ErrorMessages(playerid,4);
}
//--
//Al enum de AccInfo agregarle BlockGT
//--
//OnPlayerConnect(playerid), arriba del todo
AccInfo[BlockGT][playerid] = -1;
Deberнa funcionar, no lo he probado.
Puede que haya algunos bugs.
Reply
#4

Bueno.. Mm no me funciona Si me podrias poner uno mas simple de goto y de block? Asi ke no lleve nada relacionados con admins ni "Error messages" Yo eso lo copie de lux admin emm me entienden?ЁPorfavor. Bueno es si kieren Les agradeceria muchisimo
Reply
#5

Comando goto:
pawn Код:
if(!strcmp(cmd, "/goto", true)){
        new tmp[256];
        tmp = strtok(cmdtext, idx);
        if(!strlen(tmp))return SendClientMessage(playerid, 0xFFFFFFFF, "USO: /goto <playerid>");
        if(!IsNumeric(tmp))return SendClientMessage(playerid, 0xFF0000FF, "ERROR: Debe ser un id valido");
        new id, name[MAX_PLAYER_NAME], namee[MAX_PLAYER_NAME];
        id = strval(tmp);
        if(id != INVALID_PLAYER_ID){
            if(IsPlayerConnected(id)){
                if(Pinfo[playerid][lock] == 0){
                    new Float:X, Float:Y, Float:Z, str[128];
                    GetPlayerPos(id, X, Y, Z);
                    SetPlayerPos(playerid, X+2, Y+2, Z);
                    GetPlayerName(id, name, sizeof(name));
                    GetPlayerName(playerid, namee, sizeof(namee));
                    format(str, sizeof(str), ">>Has sido teletransportado hacia %s(%i)", name, id);
                    SendClientMessage(playerid, 0xFFD900FF, str);
                    format(str, sizeof(str), ">>%s(%i) ha sido teletransportado a tu posicion", namee, playerid);
                    return SendClientMessage(playerid, 0xFFD900FF, str);
                }else return SendClientMessage(playerid, 0xFF0000FF, "ERROR: Este jugador no admite teleport a йl");
            }else return SendClientMessage(playerid, 0xFF0000FF, "ERROR: jugador no conectado");
        }else return SendClientMessage(playerid, 0xFF0000FF, "ERROR: ID invalido");
    }
Comando lock:
pawn Код:
if(!strcmp(cmd, "/lock", true)){
        if(Pinfo[playerid][lock] == 0){
            Pinfo[playerid][lock] = 1;
            return SendClientMessage(playerid, 0xFFFF00FF, ">>Ahora nadie podra teletransportarce hacia ti");
        }
        else{
            Pinfo[playerid][lock] = 0;
            return SendClientMessage(playerid, 0xFFFF00FF, ">>Ahora los jugadores podran teletransportarce hacia ti");
        }
    }
Reply
#6

Me lanza errores de Pinfo[playerid][lock] = 1; GRACIAS Por ayudarme aunke no me haiga funcionado,intentaron Son unos grosos sepanlo sigan asi D:
Reply
#7

posiblemente xq no lo hayas definido
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)