Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

[Вопрос] usedrugs (sam-rp)

Статус
В этой теме нельзя размещать новые ответы.

Jordan_Adams

Новичок
Здравствуйте, нужна команда с usedrugs как на samp-rp, киньте пожалуйста, у кого есть, у меня не работает.
Делал всё как тут, но баги есть, ибо вырезано с РЛС:

PHP:
if(strcmp(cmd, "/usedrugs", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            tmp = strtok(cmdtext, idx);
            if(!strlen(tmp)) return    SendClientMessage(playerid, COLOR_GREY, "Введите: /usedrugs [количество]");
            new moneys2 = strval(tmp);
            new Float:health;
            GetPlayerHealth(playerid, health);
            new ammount;
            if(GetPVarInt(playerid, "DrugsTime") > gettime()) return SendClientMessage(playerid, COLOR_GREY, "{F70000}x{ADAEAD} Употре***ть наркотики можно раз в 10 секунд!");
            if(PlayerInfo[playerid][pDrugs] < moneys2) return SendClientMessage(playerid, COLOR_GREY, "{F70000}x{ADAEAD} Недостаточно наркотиков!");
            switch(moneys2)
            {
                case 1..3:
                {
                    SetTimerEx("DrugEffectGone", 60000, false, "i", playerid);
                    if(health < 120){ SetPlayerHealthNoCheat(playerid, health+10*moneys2); }
                }
                case 4..5:
                {
                    if(PlayerInfo[playerid][pNarcoZavisimost] < 1500)return SendClientMessage(playerid, COLOR_GREY, "{F70000}x{ADAEAD} Неверное количество");
                    SetTimerEx("DrugEffectGone", 120000, false, "i", playerid);
                    if(health < 130){ SetPlayerHealthNoCheat(playerid, health+10*moneys2); }
                }
                case 6..8:
                {
                    if(PlayerInfo[playerid][pNarcoZavisimost] < 2300)return SendClientMessage(playerid, COLOR_GREY, "{F70000}x{ADAEAD} Неверное количество");
                    SetTimerEx("DrugEffectGone", 180000, false, "i", playerid);
                    if(health < 140){ SetPlayerHealthNoCheat(playerid, health+10*moneys2); }
                }
                case 9,10:
                {
                    if(PlayerInfo[playerid][pNarcoZavisimost] < 3500)return SendClientMessage(playerid, COLOR_GREY, "{F70000}x{ADAEAD} Неверное количество");
                    SetTimerEx("DrugEffectGone", 210000, false, "i", playerid);
                    if(health < 150){ SetPlayerHealthNoCheat(playerid, health+10*moneys2); }
                }
                case 11..15:
                {
                    if(PlayerInfo[playerid][pNarcoZavisimost] < 5000)return SendClientMessage(playerid, COLOR_GREY, "{F70000}x{ADAEAD} Неверное количество");
                    SetTimerEx("DrugEffectGone", 300000, false, "i", playerid);
                    if(health < 160){ SetPlayerHealthNoCheat(playerid, health+10*moneys2); }
                }
            }
            if(PlayerInfo[playerid][pDrugs] >= ammount)
            {
                   if(PlayerInfo[playerid][p HP] >= 160)
                {
                    SetPlayerWeather(playerid, -68);
                    PlayerStoned[playerid] = 0;
                }
            }
            SetPlayerWeather(playerid, -68);//даём ефект под кайфом
            PlayerStoned[playerid] += 1;//нарколомка
            PlayerInfo[playerid][pDrugs] -= moneys2;//отнимаем нарко
            ApplyAnimation(playerid,"SMOKING","M_smk_drag",4.1,0,0,0,0,0,1);//даём анимку типо глатает нарко
            format(string,sizeof(string), "употребил(a) наркотики");//пишем над башкой
            SetPlayerChatBubble(playerid,string,COLOR_PURPLE,30.0,10000);//пишем над башкой
            PlayerInfo[playerid][pNarcoZavisimost] += moneys2*20;//прибавляем наркозависимость
            SetPVarInt(playerid, "DrugsTime", gettime()+10);//для ограничения
            format(string, sizeof(string), "(( Здоровье пополнено до: %.1f ))", PlayerHealth[playerid]);
            SendClientMessage(playerid, COLOR_WHITE, string);
            format(string, sizeof(string), "%s употребил(а) наркотики", sendername);//пишем в чат
            ProxDetector(10.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);//пишем в чат
        }
        return true;
    }
В конец мода.
PHP:
forward DrugEffectGone(playerid); 
public DrugEffectGone(playerid) 
{ 
    new time[3]; 
    new pogoda; 
    gettime(time[0], time[1], time[2]); 
    SetPlayerTime(playerid, time[0], time[1]); 
    SetPlayerWeather(playerid, pogoda); 
    SetPlayerDrunkLevel (playerid, 0); 
    return 1; 
}
Это всё я сделал, ошибки исправил, но когда захожу в игру, первое - пополняет ХП до 280+, так же имеется баг с погодой - не убирается.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу