/heal [ид игрока] [цена]

Перейти вниз

/heal [ид игрока] [цена]

Сообщение  Rush в Сб Окт 10, 2015 9:59 am

Ко всем командам:
Код:
if(strcmp(cmd, "/heal", true) == 0)
{
    if(!IsPlayerConnected(playerid)) return 1;
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp)) return SendClientMessage(playerid,COLOR_GRAD2,"ИНФО: /heal [ид игрока] [цена]");
    giveplayerid = ReturnUser(tmp);
    if(!IsPlayerConnected(giveplayerid)) return SendClientMessage(playerid,COLOR_GREY,"Этот игрок оффлайн!");
    new Float:hpPlayer;
    GetPlayerHealth(giveplayerid,hpPlayer);
    if(hpPlayer >= 100.0) return SendClientMessage(playerid,COLOR_GREY,"Этот человек здоров!");
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp)) return SendClientMessage(playerid,COLOR_GRAD2,"ИНФО: /heal [ид игрока] [цена]");
    new price = strval(tmp);
    if(price <= 0) return SendClientMessage(playerid,COLOR_GRAD2,"Сумма должна быть выше 0р");
    if(GetPlayerMoney(giveplayerid) < price) return SendClientMessage(playerid,COLOR_GREY,"У него нет такой суммы!");
    GetPlayerName(playerid,sendername,sizeof(sendername));
    GetPlayerName(giveplayerid,giveplayer,sizeof(giveplayer));
    format(string,sizeof(string),"Врач %s предлагает вам восстановить здоровье за %iр",sendername,price);
    SendClientMessage(giveplayerid,COLOR_WHITE,string);
    SendClientMessage(giveplayerid,COLOR_WHITE,"Нажмите Y чтобы согласиться или N чтобы отказаться");
    format(string,sizeof(string),"Вы предложили %s восстановить здоровье за %iр",giveplayer,price);
    SendClientMessage(playerid,COLOR_WHITE,string);
    SetPVarInt(giveplayerid,"hp_price",price);
    SetPVarInt(giveplayerid,"medic",playerid);
    return 1;
}
В public OnPlayerKeyStateChange
Код:
if(newkeys == KEY_YES)
{
    if(GetPVarInt(playerid,"hp_price") != 0)
    {
        new price = GetPVarInt(playerid,"hp_price"),medic = GetPVarInt(playerid,"medic");
        GetPlayerName(playerid,sendername,sizeof(sendername));
        GetPlayerName(medic,giveplayer,sizeof(giveplayer));
        format(string,sizeof(string),"Врач %s восстановил вам здоровье за %iр",giveplayer,price);
        SendClientMessage(playerid,COLOR_WHITE,string);
        format(string,sizeof(string),"Вы восстановили %s здоровье за %iр",sendername,price);
        SendClientMessage(medic,COLOR_WHITE,string);
        SetPlayerHealth(playerid,100.0);
        GivePlayerMoney(playerid,-price);
        GivePlayerMoney(medic,-price);
        DeletePVar(playerid,"hp_price");
        DeletePVar(playerid,"medic");
    }
    return 1;
}
if(newkeys == KEY_NO)
{
    if(GetPVarInt(playerid,"hp_price") != 0)
    {
        new medic = GetPVarInt(playerid,"medic");
        GetPlayerName(playerid,sendername,sizeof(sendername));
        SendClientMessage(playerid,COLOR_RED,"Вы отказались!");
        format(string,sizeof(string),"%s отказался",sendername);
        SendClientMessage(medic,COLOR_RED,string);
        DeletePVar(playerid,"hp_price");
        DeletePVar(playerid,"medic");
    }
    return 1;
}
rush пишет:Информация:

Игрок (врач) предлагает другому игроку восстановить здоровье за n-сумму, если игрок согласен - он должен нажать клавишу Y, если не согласен - N
Автор: Roman
avatar
Rush

Сообщения : 201
Репутация : 46
Дата регистрации : 2012-12-10
Возраст : 21
Откуда : Россия

http://gs-games.gta-ru.com

Вернуться к началу Перейти вниз

Вернуться к началу


 
Права доступа к этому форуму:
Вы не можете отвечать на сообщения