[AJUDA]Comando
#1

Po queria faser um comando simples para tirar o player que esta no hospital curando! tipo hm medkit

do o comando o player sai do hospital sem pagar e mais rapido !

Ajuda ae PF !

meu hospital !

pawn Код:
public hosp(playerid)
{

    SetPlayerFacingAngle(playerid, 0);
    new rand;
    rand = random(sizeof(gMedicSpawns));
    SetPlayerPos(playerid, gMedicSpawns[rand][0], gMedicSpawns[rand][1], gMedicSpawns[rand][2]);
    SetPlayerCameraPos(playerid, gMedicSpawns[rand][3], gMedicSpawns[rand][4], gMedicSpawns[rand][5]);
    SetPlayerCameraLookAt(playerid,gMedicSpawns[rand][6], gMedicSpawns[rand][7], gMedicSpawns[rand][8]);
    TogglePlayerControllable(playerid,0);
    ApplyAnimation(playerid, "CRACK", "crckdeth2", 4.0, 1, 0, 0, 0, -1);
    SetPlayerInterior(playerid, 10);
    PlayerInfo[playerid][pInt] = 10;
    GameTextForPlayer(playerid, "~n~~n~~n~~n~~n~~n~~n~~n~~n~~w~Voce esta se recuperando de uma operacao e precisa descansar...", 60000, 10);
    //JustDied[playerid] = 1;
    SetTimerEx("sairhosp", 60000, false, "i", playerid);
    hospital[playerid] = false;
}
forward sairhosp(playerid);

public sairhosp(playerid)
{
TogglePlayerControllable(playerid, 1);
SetPlayerPos(playerid,1183.1646,-1324.0796,13.5777);
GivePlayerMoney(playerid,-100);//Cobra 200$ dele
SendClientMessage(playerid, COLOR_RED,"Vocк saiu do hospital, cobramos R$100 pela sua estadia!");
hospital[playerid] = false;
//testhp = 1;
SetPlayerInterior(playerid, 0);
SetCameraBehindPlayer(playerid);
return 1;
}
Reply
#2

Nгo entendi seu ponto de vista. Pode explicar melhor?
Reply
#3

Tipo Queria faser um comando para admins para tirar um player do hospital sem que ele espere o tempo

exemplo o cara morreu por bug quero tirar ele do hospital vou e dou o comando ai ele sai usando a public sairhosp mais sem cobrar entende ?

so quero mesmo saber aciono a public acima sairhosp com um comando e sem cobrar!
Reply
#4

pawn Код:
#include <sscanf2>
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
    new params[100 char];
    new id;
    unformat(cmdtext, "s[50]S( )[100]",cmd,params);
   
    if(strcmp(cmd, "/tirarhosp", true) == 0)
    {
        if(IsPlayerAdmin(playerid)) //se o kra for admin .-. (identifica se o kra que usou o comando й admin)
        {
            if(sscanf(params, "d", id)) return SendClientMessage(playerid, -1, "USO: /tirarhosp [id]");
            if(!IsPlayerConnected(id)) return SendClientMessage(playerid, -1, "ID INVБLIDO"); //caso o player que vc digitou o id esteja offline irб mandar a mensagem 'id invбlido'
            new pos[3];
            GetPlayerPos(playerid, pos[0], pos[1], pos[2]); //pega a posiзгo do player que digitou o comando
            SetPlayerPos(id, pos[0], pos[1], pos[2]); //seta a posiзгo do player no hospital para onde o player que digitou o comando estб
            SendClientMessage(id, -1, "Vocк foi retirado do hospital!"); //irб mandar mensagem para o player do hospital
            SendClientMessage(playerid, -1, "Vocк retirou alguйm do hospital com sucesso!"); //irб mandar mensagem para o player que digitou o comando
            return 1;
        }
    }
    return 0;
}
EXEMPLO /\
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
    new params[100 char];
    new id;
    unformat(cmdtext, "s[50]S( )[100]",cmd,params);
   
    if(strcmp(cmd, "/tirarhosp", true) == 0)
    {
        if((IsPlayerAdmin(playerid)) //se o kra for admin .-.
        {
            if(sscanf(params, "d", id)) return SendClientMessage(playerid, -1, "USO: /tirarhosp [id]");
            if(!IsPlayerConnected(id)) return SendClientMessage(playerid, -1, "ID INVБLIDO");
            sairhosp(id); //irб chamar sua public sairhosp
            return 1;
        }
    }
    return 0;
}
ou /\
й sу vc adaptar o comando para sua preferencia
Reply
#5

Quote:
Originally Posted by Cristhian
Посмотреть сообщение
pawn Код:
#include <sscanf2>
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
    new params[100 char];
    new id;
    unformat(cmdtext, "s[50]S( )[100]",cmd,params);
   
    if(strcmp(cmd, "/tirarhosp", true) == 0)
    {
        if(PlayerInfo[playerid][pAdmin] >= 1) //se o kra for admin .-.
        {
            if(sscanf(params, "d", id)) return SendClientMessage(playerid, -1, "USO: /tirarhosp [id]");
            if(!IsPlayerConnected(id)) return SendClientMessage(playerid, -1, "ID INVБLIDO");
            new pos[3];
            GetPlayerPos(playerid, pos[0], pos[1], pos[2]);
            SetPlayerPos(id, pos[0], pos[1], pos[2]);
            SendClientMessage(id, -1, "Vocк foi retirado do hospital!");
            SendClientMessage(playerid, -1, "Vocк retirou alguйm do hospital com sucesso!");
            return 1;
        }
    }
    return 0;
}
EXEMPLO /\
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
    new params[100 char];
    new id;
    unformat(cmdtext, "s[50]S( )[100]",cmd,params);
   
    if(strcmp(cmd, "/tirarhosp", true) == 0)
    {
        if(PlayerInfo[playerid][pAdmin] >= 1) //se o kra for admin .-.
        {
            if(sscanf(params, "d", id)) return SendClientMessage(playerid, -1, "USO: /tirarhosp [id]");
            if(!IsPlayerConnected(id)) return SendClientMessage(playerid, -1, "ID INVБLIDO");
            sairhosp(id);
            return 1;
        }
    }
    return 0;
}
ou /\
й sу vc adaptar o comando para sua preferencia
Porfavor se nao for pedir muito pode colocar uma explicaзгo para eu entender melhor o comando Obrigado.
Reply
#6

editei meu post, dк uma olhada, a explicaзгo estб nos comentбrio "//"
OBS: explicaзгo nгo ficou muito boa, mas qualquer coisa й sу falar
Reply
#7

Meols DEOS,
nгo acredito que o cara vai colocar uma plugin sу para um comando!


Tente amigo:
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
    if(strcmp(cmdtext, "/tirarhosp", true, 9))
    {
       // if(PlayerInfo[playerid][pAdmin] >= 1)
        {
            if(!cmdtext[11])
                return SendClientMessage(playerid, -1,"/tirarHosp <id>");

            static Float:pos[3];
            GetPlayerPos(playerid, pos[0], pos[1], pos[2]);
            SetPlayerPos(strval(cmdtext[11]), pos[0], pos[1], pos[2]);
            SendClientMessage(strval(cmdtext[11]), -1, "Vocк foi retirado do hospital!");
            SendClientMessage(playerid, -1, "Vocк retirou alguйm do hospital com sucesso!");
            return 1;
        }
    }
    return 0;
}
Ou

pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
    if(strcmp(cmdtext, "/tirarhosp", true, 9))
    {
       // if(PlayerInfo[playerid][pAdmin] >= 1)
        {
            if(!cmdtext[11])
                return SendClientMessage(playerid, -1,"/tirarHosp <id>");

            CallLocalFunction("sairhosp", "i", strval(cmdtext[11]));
            return 1;
        }
    }
    return 0;
}
Reply
#8

Po so puxar a public sairhosp nao deu poruqe so adinta ela mais mesmo assim o time da public hosp ainda continua ai passa um tempo ele sai do hospital novamente .
Reply
#9

ajudem ai Galera Porfavor ! desculpe pelo double =(
Reply
#10

pawn Код:
new timer;
pawn Код:
public hosp(playerid)
{

    SetPlayerFacingAngle(playerid, 0);
    new rand;
    rand = random(sizeof(gMedicSpawns));
    SetPlayerPos(playerid, gMedicSpawns[rand][0], gMedicSpawns[rand][1], gMedicSpawns[rand][2]);
    SetPlayerCameraPos(playerid, gMedicSpawns[rand][3], gMedicSpawns[rand][4], gMedicSpawns[rand][5]);
    SetPlayerCameraLookAt(playerid,gMedicSpawns[rand][6], gMedicSpawns[rand][7], gMedicSpawns[rand][8]);
    TogglePlayerControllable(playerid,0);
    ApplyAnimation(playerid, "CRACK", "crckdeth2", 4.0, 1, 0, 0, 0, -1);
    SetPlayerInterior(playerid, 10);
    PlayerInfo[playerid][pInt] = 10;
    GameTextForPlayer(playerid, "~n~~n~~n~~n~~n~~n~~n~~n~~n~~w~Voce esta se recuperando de uma operacao e precisa descansar...", 60000, 10);
    //JustDied[playerid] = 1;
    timer = SetTimerEx("sairhosp", 60000, false, "i", playerid); //identificando o timer :D
    hospital[playerid] = false;
}
forward sairhosp(playerid);

public sairhosp(playerid)
{
    TogglePlayerControllable(playerid, 1);
    SetPlayerPos(playerid,1183.1646,-1324.0796,13.5777);
    GivePlayerMoney(playerid,-100);//Cobra 200$ dele
    SendClientMessage(playerid, COLOR_RED,"Vocк saiu do hospital, cobramos R$100 pela sua estadia!");
    hospital[playerid] = false;
    //testhp = 1;
    KillTimer(timer); //deletando seu timer :D
    SetPlayerInterior(playerid, 0);
    SetCameraBehindPlayer(playerid);
    return 1;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)