Система PayDay

Пользователь
Статус
Сообщения
84
Лайки
12

1

месяц на сайте

В начало мода где находятся #include вставляем:
Pawn:
#include <foreach>

Спускаемся в public OnGameModeInit() и вставляем следующие:
Pawn:
SetTimer("UpDateTimer", 1000*60, 1);

Следом идем к forward желательно определить место где будут находиться все forward и вставляем:
Pawn:
forward UpDateTimer();

Идем в конец когда и вставляем:
Pawn:
public UpDateTimer()
{
    new hour, minute, second;
    gettime(hour, minute, second);
    if(minute == 0)
    {
        PayDay();
    }
    return true;
}

Поднимаемся к нашим forward и вставляем:
Pawn:
forward PayDay();

После чего ищем где находится enum с переменными для аккаунтов и вставляем следующие:
Pawn:
enum player
{
        pLevel,
        pExpe
}

Далее в конец кода:
Pawn:
public PayDay()
{
        foreach(new i : Player)
       {
            new nextlevel = pInfo[i][pLevel]*6;
            new exp=nextlevel-pInfo[i][pExpe];
            pInfo[i][pExpe]++;
            SavePlayer(i,"Expe",pInfo[i][pExpe], "d");
            if(pInfo[i][pExpe] > nextlevel)
            {
                pInfo[i][pLevel]+=1;
                pInfo[i][pExpe]=0;
                SavePlayer(i,"Expe",pInfo[i][pExpe], "d");
                SavePlayer(i, "Level", pInfo[i][pLevel], "d");
                SCM(i,-1,SERVER"Ваш уровень повышен!");
            }
            if(pInfo[i][pLevel] <= 3)
            {
                        new str[110];
                        SCM(i,-1,"======================== {00C0FF}PayDay{FFFFFF} ===========================");
                        format(str,sizeof(str),"Ваш уровень:{00C0FF}%d{FFFFFF}",pInfo[i][pLevel]);
                        SCM(i,-1,str);
                        format(str,sizeof(str),"Опыт:{00C0FF}%d{FFFFFF}",pInfo[i][pExpe]);
                        SCM(i,-1,str);
                        format(str,sizeof(str),"До повышение уровня осталось {00C0FF}%d{FFFFFF} часов",exp);
                        SCM(i,-1,str);
            }
                
    }
    return 1;
}

У вас может не быть некоторых параметров указанных в public PayDay() так что делаем следующие:

К #define добавляем:
Pawn:
#define SCM SendClientMessage
#define SERVER "{FFFFFF}[{00C0FF}Информация{FFFFFF}]:"

Либо в начало мода, либо ко всем stock-ам:
Pawn:
stock SavePlayer(playerid, const field_name[], const set[], const type[])
{
        new string[128+1];
        if(!strcmp(type, "d", true))
        {
            mysql_format(dbHandle, string, sizeof(string), "UPDATE `users` SET `%s` = '%d' WHERE `ID` = '%d' LIMIT 1",
            field_name, set, pInfo[playerid][pID]);
        }
        else if(!strcmp(type, "s", true))
        {
                mysql_format(dbHandle, string, sizeof(string), "UPDATE `users` SET `%s` = '%s' WHERE `ID` = '%d' LIMIT 1",
                field_name, set, pInfo[playerid][pID]);
        }
       mysql_function_query(dbHandle, string, false, "", "");
}
 

1 человек читают эту тему (Всего: 1, Пользователей: 0, Гостей: 1)

Сверху