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

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

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

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

помогите решить проблему

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

Narc56

Дебютант
Всем привет! Ребят не как не могу сделать полосу с голодом, точнее я сделал работает но не большой баг, например пополнил я сытность на 100% полоса заполнена выхожу из игры и захожу снова полоса становится половина а запасы сытности на 100% съем ченибуть полоса опять становится полной че делать как изменить чтоб при выходи полоса сохранялось на столько сколька у тебя сытности? в общем я не знаю как еще понятней объяснить вот уроки сытности:
Код:
В pInfo добавляем:
PHP код:
pSitosti,  
Ко всем new добавляем:
PHP код:
new timesitosti; 
#define timesit 60 // секунд для отнятия единицы сытости  
В ежесекундный таймер ( в RLS обычно public fresh )
PHP код:
        timesitosti ++; 
    if(timesitosti > timesit) 
    { 
        timesitosti = 0; 
        for(new g = 0; g < GetMaxPlayers(); g++) 
        { 
            if(PlayerInfo[g][pSitosti])PlayerInfo[g][pSitosti] --; 
            if(PlayerInfo[g][pSitosti] < 30) 
            { 
                new Float:health; 
                GetPlayerHealth(g,health); 
                SetPlayerHealth(g, health-0.3);//если у вас античит, заменяйте SetPlayerHealth!!! 
            } 
            if(PlayerInfo[g][pSitosti] == 29)SendClientMessage(g,0x9ACD32AA, "Вы проголодались! Посетите бар, закусочную или купите ХотДог. Узнать свою «Сытость» можно командой /satiety"); 
        } 
    }  
В функциию регистрации ( в RLS обычно public OnPlayerRegister )
PHP код:
ini_setInteger(File,"pSitosti",PlayerInfo[playerid][pSitosti]);  
В функциию авторизации ( в RLS обычно public OnPlayerLogin )
PHP код:
ini_getInteger(File,"pSitosti",PlayerInfo[playerid][pSitosti]);  
В функциию сохранения ( в RLS обычно public OnPlayerUpdateRL )
PHP код:
ini_setInteger(File,"pSitosti",PlayerInfo[playerid][pSitosti]);  
Если у вас мод на MySQL, делайте по примеру других переменных и не забываем добавлять переменную в таблицу 

Ко всем командам:
PHP код:
        if(strcmp(cmd,"/satiety",true) == 0) 
    { 
        if(PlayerInfo[playerid][pSitosti] > 100)PlayerInfo[playerid][pSitosti] = 100; 
        new 
            satietystr[43]; 
        format(satietystr, sizeof(satietystr), "Ваша «Сытость» : %d / 100", PlayerInfo[playerid][pSitosti]); 
        return SendClientMessage(playerid,0x33AAFFFF,satietystr); 
    }  
В конец мода:
PHP код:
        stock poel(playerid, sitost) 
    { 
        PlayerInfo[playerid][pSitosti] +=sitost; 
        if(PlayerInfo[playerid][pSitosti] > 100)PlayerInfo[playerid][pSitosti] = 100; 
        new 
            satietystr[52]; 
        format(satietystr, sizeof(satietystr), "Сытость пополнена до: %d / 100", PlayerInfo[playerid][pSitosti]); 
        return SendClientMessage(playerid,0xFFFFFFFF,satietystr); 
    }  
Для пополнения сытости во всех магазинах, или где там у вас еда , ставим вот такое:
PHP код:
poel(playerid, кол-о сытости);
а вот моя полоса
Код:
    in_t = pPoel3[playerid] = CreatePlayerTextDraw(playerid, 87 + 1.2, 291 + 2.15, "_");
    PlayerTextDrawUseBox        (playerid, in_t, 1);
    PlayerTextDrawTextSize        (playerid, in_t, 83.0 + 50*50/100, 0.0);
    PlayerTextDrawLetterSize    (playerid, in_t, 1.0, 3.2 / 10 - 0.35);
    PlayerTextDrawBoxColor        (playerid, in_t, 6064810);
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу