Перейти к содержанию
Авторизация  
John_Smith

Система доната.

Рекомендуемые сообщения

John_Smith

Решил выложить систему доната, так, как никто не выкладывал, думаю пригодиться.

 

Автор: Alan_Waket

Дата: 19.05.2013г

 

Ко всем new

PHP код:

new DonateMoney1;
В enum pInfo

PHP код:

pDonateRank, 
pDonateMoney1,
В public OnPlayerRegister(playerid, password[])

PHP код:

ini_setInteger(File,"DonateMoney1",PlayerInfo[playerid][pDonateMoney1]); 
ini_setInteger(File,"DonateRank",PlayerInfo[playerid][pDonateRank]);
В public OnPlayerLogin(playerid,password[])

PHP код:

ini_getInteger(File,"DonateMoney1",PlayerInfo[playerid][pDonateMoney1]); 
ini_getInteger(File,"DonateRank",PlayerInfo[playerid][pDonateRank]);
В public OnPlayerConnect(playerid)

PHP код:

PlayerInfo[playerid][pDonateMoney1] = 0; 
PlayerInfo[playerid][pDonateRank] = 0;
В public OnPlayerCommandText(playerid, cmdtext[])

PHP код:

else if(strcmp(cmd, "/givedonate", true) == 0) 
        { 
        if(PlayerInfo[playerid][pAdmin] > 9) 
        { 
        tmp = strtok(cmdtext, idx); 
        if(!strlen(tmp)) return    SendClientMessage(playerid, COLOR_WHITE, "::: Введите: /givedon [ид] [рублей]"); 
        new playa; 
        playa = ReturnUser(tmp); 
        tmp = strtok(cmdtext, idx); 
        DonateMoney1 = strval(tmp); 
        if (PlayerInfo[playerid][pAdmin] >= 9) 
        { 
        if(IsPlayerConnected(playa)) 
        { 
        if(playa != INVALID_PLAYER_ID) 
        { 
        format(string, sizeof(string), "- %d донат переведён на счёт игроку", DonateMoney1); 
        SendClientMessage(playerid, COLOR_WHITE, string); 
        PlayerInfo[playa][pDonateMoney1] += DonateMoney1; 
        SendClientMessage(playa, COLOR_NEWS, "Пополнение доната аккаунта"); 
        format(string, sizeof(string), "- Пополнение счёта на сумму: {d53e07}%d {33ccff}рублей", DonateMoney1); 
        SendClientMessage(playa, COLOR_WHITE, string); 
        format(string, sizeof(string), "- Ваш донатный счёт: {d53e07}%d {33ccff}рублей", PlayerInfo[playa][pDonateMoney1]); 
        SendClientMessage(playa, COLOR_WHITE, string); 
        } 
        } 
        } 
        } 
        return true; 
        }
PHP код:
else if(strcmp(cmd, "/donate", true) == 0) 
    { 
            new lvlexp[80]; 
             new listitems[] = "[1] Покупка скинаn[2] Снятие наказанийn[3] Прочие покупкиn[4] Покупка VIP статусаn[5] Игровые привилегии"; 
            format(lvlexp,70,"Донат | Баланс: %d рублей",PlayerInfo[playerid][pDonateMoney1]); 
            ShowPlayerDialog(playerid, 10055, DIALOG_STYLE_LIST, lvlexp, listitems, "Выбрать", "Отмена"); 
    }
В public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])

PHP код:

case 10055: 
        { 
        if(response) 
        { 
        switch(listitem) 
        { 
        case 0: 
        { 
         new string3[512]; 
        format(string3,sizeof(string3),"n{ffffff}Введите ID скина на который вы хотите сменить свой скин и нажмите {34c924}'Ок'nnn{ffffff}Стоимость любого скина составляет {34c924}50 {ffffff}DonateMoney"); 
        ShowPlayerDialog(playerid,5563,DIALOG_STYLE_INPUT,"{ffffff}Введите ID скина",string3,"Ок","Выйти"); 
        } 
        case 1:ShowPlayerDialog(playerid, 10056, DIALOG_STYLE_LIST, "Cнятие наказаний", "[1] Снять бан чата (20р)n[2] Снятие варнов (50р)n[3] Выйти из тюрьмы (30р)", "Выбрать", "Назад"); 
        case 2:ShowPlayerDialog(playerid, 10057, DIALOG_STYLE_LIST, "Прочее", "[1] Прибавить 1к наркозависимости (30р)n[2] Убавить 1к наркозависимости (30р)n[3] Купить 1кг наркотиков(15)n[4] Купить 1000 материалов (20р)n[5] Получить набор оружия(бесконечные патроны) (40р)n[6] Купить комплект лицензий (20р)n[7] Покупка скиллов (50р)n[8]Снятие розыска (20)n[9]Обнулить счет преступлений (100р)n[10] Купить 50 законопослушности (20р)", "Выбрать", "Назад");
        case 3:ShowPlayerDialog(playerid, 10058, DIALOG_STYLE_LIST, "Покупка VIP", "[1] Bronze VIP (50р)n[2] Silver VIP(100р)n[3] Gold VIP(150р)", "Выбрать", "Назад"); 
        case 4:ShowPlayerDialog(playerid, 10059, DIALOG_STYLE_LIST, "Игровые привелегии", "[1] 500.000$ (20р)n[2] 1.000.000$ (40р)n[3] 3.000.000$ (120р)n[4] 5.000.000$ (160р)n[5] 10.000.000$ (320р))", "Выбрать", "Назад"); 
        } 
        } 
        } 
        case 10056: 
        { 
        if(response) 
        { 
        switch(listitem) 
        { 
        case 0: 
        { 
        if(PlayerInfo[playerid][pDonateMoney1] < 20) return SendClientMessage(playerid, COLOR_GREY, "Не достатoчно денег"); 
        PlayerInfo[playerid][pMuted] = 0; 
        PlayerInfo[playerid][pMuteTime] = 0; 
        SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы разблокировали себе чат"); 
        PlayerInfo[playerid][pDonateMoney1] -= 20; 
        } 
        case 1: 
        { 
        if(PlayerInfo[playerid][pDonateMoney1] < 50) return SendClientMessage(playerid, COLOR_GREY, "Не достатoчно денег"); 
        PlayerInfo[playerid][pWarns] = 0; 
        PlayerInfo[playerid][punWarnstime] = 0; 
         PlayerInfo[playerid][punWarns] = 0; 
        SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Варны с данного аккаунта успешно сняты"); 
        PlayerInfo[playerid][pDonateMoney1] -= 50; 
        } 
        case 2: 
        { 
        if(PlayerInfo[playerid][pDonateMoney1] < 30) return SendClientMessage(playerid, COLOR_GREY, "Не достаточно денег"); 
        PlayerInfo[playerid][pJailTime] = 0; 
        PlayerInfo[playerid][pCheat] = 0; 
        PlayerInfo[playerid][pJailed] = 0; 
        SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы вышли из тюрьмы"); 
        PlayerInfo[playerid][pDonateMoney1] -= 30; 
        SpawnPlayer(playerid); 
        } 
        } 
        } 
        else 
        { 
        return true; 
        } 
        } 
        case 10057: 
        { 
        if(response) 
        { 
        switch(listitem) 
        { 
        case 0: 
        { 
        if(PlayerInfo[playerid][pDonateMoney1] < 30) return SendClientMessage(playerid, COLOR_GREY, "Не достаточно денег"); 
        PlayerInfo[playerid][pNarcoZavisimost] += 1000; 
        SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы прибавили 1к наркозависимости"); 
        PlayerInfo[playerid][pDonateMoney1] -= 30; 
        } 
        case 1: 
        { 
        if(PlayerInfo[playerid][pDonateMoney1] < 30) return SendClientMessage(playerid, COLOR_GREY, "Не достаточно денег"); 
        PlayerInfo[playerid][pNarcoZavisimost] -= 1000; 
        SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы уменьшили наркозависмость на 1к"); 
        PlayerInfo[playerid][pDonateMoney1] -= 30; 
        } 
        case 2: 
        { 
        if(PlayerInfo[playerid][pDonateMoney1] < 15) return SendClientMessage(playerid, COLOR_GREY, "Не достаточно денег"); 
        PlayerInfo[playerid][pDrugs] += 1000; 
        SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы купили 1кг наркотиков"); 
        PlayerInfo[playerid][pDonateMoney1] -= 15; 
        } 
        case 3: 
        { 
        if(PlayerInfo[playerid][pDonateMoney1] < 20) return SendClientMessage(playerid, COLOR_GREY, "Не достаточно денег"); 
        PlayerInfo[playerid][pMats] += 1000; 
        SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы купили 1к материалов"); 
        PlayerInfo[playerid][pDonateMoney1] -= 20; 
        } 
        case 4: 
        { 
        if(PlayerInfo[playerid][pDonateMoney1] < 40) return SendClientMessage(playerid, COLOR_GREY, "Не достаточно денег"); 
        GivePlayerWeapon(playerid,24,9999); 
        GivePlayerWeapon(playerid,25,9999); 
        GivePlayerWeapon(playerid,29,9999); 
        GivePlayerWeapon(playerid,31,9999); 
        GivePlayerWeapon(playerid,43,9999); 
        GivePlayerWeapon(playerid,46,9999); 
        GivePlayerWeapon(playerid,41,9999); 
        SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы приобрели комплект оружия, пропадает после смерти"); 
        PlayerInfo[playerid][pDonateMoney1] -= 40; 
        } 
        case 5: 
        { 
        if(PlayerInfo[playerid][pDonateMoney1] < 20) return SendClientMessage(playerid, COLOR_GREY, "Не достаточно денег"); 
        PlayerInfo[playerid][pVodPrava] = 1; 
        PlayerInfo[playerid][pFishLic] = 1; 
        PlayerInfo[playerid][pBoatLic] = 1; 
        PlayerInfo[playerid][pFlyLic] = 1; 
        PlayerInfo[playerid][pGunLic] = 1; 
        PlayerInfo[playerid][pBizLic] = 1; 
        SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы купили комплект лицензий"); //     
        PlayerInfo[playerid][pDonateMoney1] -= 20; 
        } 
        case 6: 
        { 
        if(PlayerInfo[playerid][pDonateMoney1] < 50) return SendClientMessage(playerid, COLOR_GREY, "Не достаточно денег"); 
        PlayerInfo[playerid][pDesertEagle] = 100; 
        PlayerInfo[playerid][pSDPistol] = 100; 
        PlayerInfo[playerid][pMP5] = 100; 
        PlayerInfo[playerid][pAK47] = 100; 
        PlayerInfo[playerid][pM4] = 100; 
        PlayerInfo[playerid][pShotGun] = 100; 
        SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы улучшили навыки владения оружия до максимума"); // 
        PlayerInfo[playerid][pDonateMoney1] -= 50; 
        } 
        case 7: 
        { 
        if(PlayerInfo[playerid][pDonateMoney1] < 20) return SendClientMessage(playerid, COLOR_GREY, "Не достаточно денег"); 
        PlayerInfo[playerid][pZvezdi]= 0; 
        SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы удалили себя из списка розыскиваемый"); // 
        PlayerInfo[playerid][pDonateMoney1] -= 20; 
        } 
        case 8: 
        { 
        if(PlayerInfo[playerid][pDonateMoney1] < 100) return SendClientMessage(playerid, COLOR_GREY, "Не достаточно денег"); 
        PlayerInfo[playerid][pKills] = 0; 
        SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы обнулили счетчик преступлений"); // 
        PlayerInfo[playerid][pDonateMoney1] -= 100; 
        } 
        case 9: 
        { 
        if(PlayerInfo[playerid][pDonateMoney1] < 20) return SendClientMessage(playerid, COLOR_GREY, "Не достаточно денег"); 
        PlayerInfo[playerid][pZakonp] += 50; 
        SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы стали законопослушным гражданином"); // 
        PlayerInfo[playerid][pDonateMoney1] -= 20; 
        } 
        } 
        } 
        else 
        { 
        return true; 
        } 
        } 
        case 10058: 
        { 
        if(response) 
        { 
        switch(listitem) 
        { 
        case 0: 
        { 
        if(PlayerInfo[playerid][pDonateMoney1] < 50) return SendClientMessage(playerid, COLOR_GREY, "Не достатoчно денег"); 
        PlayerInfo[playerid][pDonateRank] = 1; 
        SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы купили Bronze VIP статус"); 
        PlayerInfo[playerid][pDonateMoney1] -= 50; 
        } 
        case 1: 
        { 
        if(PlayerInfo[playerid][pDonateMoney1] < 100) return SendClientMessage(playerid, COLOR_GREY, "Не достатoчно денег"); 
        PlayerInfo[playerid][pDonateRank] = 2; 
        SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы купили Silver VIP статус"); 
        PlayerInfo[playerid][pDonateMoney1] -= 50; 
        } 
        case 2: 
        { 
        if(PlayerInfo[playerid][pDonateMoney1] < 150) return SendClientMessage(playerid, COLOR_GREY, "Не достаточно денег"); 
        PlayerInfo[playerid][pDonateRank] = 3; 
        SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы купили Gold VIP статус"); 
        PlayerInfo[playerid][pDonateMoney1] -= 150; 
        } 
        } 
        } 
        else 
        { 
        return true; 
        } 
        } 
        case 10059: 
        { 
        if(response) 
        { 
        switch(listitem) 
        { 
        case 0: 
        { 
        if(PlayerInfo[playerid][pDonateMoney1] < 20) return SendClientMessage(playerid, COLOR_GREY, "Не достатoчно денег"); 
        PlayerInfo[playerid][pCash] += 500000; 
        SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы купили 500к"); 
        PlayerInfo[playerid][pDonateMoney1] -= 20; 
        } 
        case 1: 
        { 
        if(PlayerInfo[playerid][pDonateMoney1] < 40) return SendClientMessage(playerid, COLOR_GREY, "Не достатoчно денег"); 
        PlayerInfo[playerid][pCash] += 1000000; 
        SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы купили 1кк"); 
        PlayerInfo[playerid][pDonateMoney1] -= 40; 
        } 
        case 2: 
        { 
        if(PlayerInfo[playerid][pDonateMoney1] < 120) return SendClientMessage(playerid, COLOR_GREY, "Не достаточно денег"); 
        PlayerInfo[playerid][pCash] += 3000000; 
        SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы купили 3кк"); 
        PlayerInfo[playerid][pDonateMoney1] -= 120; 
        } 
        case 3: 
        { 
        if(PlayerInfo[playerid][pDonateMoney1] < 160) return SendClientMessage(playerid, COLOR_GREY, "Не достаточно денег"); 
        PlayerInfo[playerid][pCash] += 5000000; 
        SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы купили 5кк"); 
        PlayerInfo[playerid][pDonateMoney1] -= 160; 
        } 
        case 4: 
        { 
        if(PlayerInfo[playerid][pDonateMoney1] < 320) return SendClientMessage(playerid, COLOR_GREY, "Не достаточно денег"); 
        PlayerInfo[playerid][pCash] += 10000000; 
        SendClientMessage(playerid, 0x6495EDFF, "{FFBF00}Вы купили 10кк"); 
        PlayerInfo[playerid][pDonateMoney1] -= 320; 
        } 
        } 
        } 
        else 
        { 
        return true; 
        } 
        }
Собственно все.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
TrollFace

Уверены, что мод у всех на MxINI ? Я вот, например, нет. Поэтому указал бы, какой принцип сохранения используется.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
John_Smith

Уверены, что мод у всех на MxINI ? Я вот, например, нет. Поэтому указал бы, какой принцип сохранения используется.

 

У большинства, на MxINI, это самый распространённый, по моему мнению.
  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Rustyk

У меня на mxini, но этот донат врятли пойдёт....

Есть ли скрины? Или тупо копипаст??

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
John_Smith

У меня на mxini, но этот донат врятли пойдёт....

Есть ли скрины? Или тупо копипаст??

 

У времени нет, на скрины.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Кирилл Сергеевич

У меня на mxini, но этот донат врятли пойдёт....

Есть ли скрины? Или тупо копипаст??

 

Это тупо копипаст,и это пойдет на твой мод.Система доната РЛС

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Rustyk

Hу и смысл тогда , почему пользователи должны выкладывать скрины , а модеры нет?

Я уверен скопипастил с самп портала.... А на многие крмп сервера не пойдёт...

  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
John_Smith

Hу и смысл тогда , почему пользователи должны выкладывать скрины , а модеры нет?

Я уверен скопипастил с самп портала.... А на многие крмп сервера не пойдёт...

 

Ты наверно глаза забыл открыть, ты видишь в каком разделе урок???

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
John_Smith

Hу и смысл тогда , почему пользователи должны выкладывать скрины , а модеры нет?

Я уверен скопипастил с самп портала.... А на многие крмп сервера не пойдёт...

 

И кто сказал что пользыватели должны скрины выкладывать, ничего они не должны.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Rustyk

Да? А почему мои 3 темы уже закрыли??

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
John_Smith

Да? А почему мои 3 темы уже закрыли??

 

Это оффтоп уже.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

Мы разместили cookie-файлы на ваше устройство, чтобы помочь сделать этот сайт лучше. Вы можете изменить свои настройки cookie-файлов, или продолжить без изменения настроек.