В теме 8 сообщений

Я считаю, что донат нужен каждому проекту. Ведь донат 

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

Перейдем к сути скрипта. 

Из названия ясно, что это не калькулятор на командах, а система доната для вашего сервера, а можеть быть и проекта. 

Пару слов о скрипте...

Сохраняются донат коды (которые пользователи собственно и будут активировать, а взамен получать плюшки) на mxINI. Но думаю, легко это все дело перевести на mySQL. Если будут желающие, переведу бесплатно и выложу также в эту тему. 

Командный процессор также стандартный, если будет нужно, также могу перевести. 

КОМАНДЫ СКРИПТА:

/donate - само донат-меню скрипта

/setdonatecode - команда создания скрипта.

Немного о работе скрипта...

Сам скрипт работает по следующему алгоритму: вы создаете донат-код (командой, которая описана выше), а игрок, которому вы дали данный код его использует и получает донат-очки. Эти донат очки он может использовать в меню донат-услуг, введя команду /donate. 

УСТАНОВКА СКРИПТА:

Вот этот код кинуть в OnPlayerDialogResponse и уже настроить выдачу всех плюшек самому, где отмечено:

сase 51:
{
    if(!response) return 1;
    switch(listitem)
    {
        case 0:
        {
            SetPlayerArmour(playerid,100);
            DonatePoints[playerid] -= 25;
        }
        case 1:
        {
            // Какие-нибудь функции
            DonatePoints[playerid] -= 120;
        }
        case 2:
        {
            // Какие-нибудь функции
            DonatePoints[playerid] -= 01;
        }
    }
}

Ну а сам скрипт устанавливаете, привычным делом. Скидываете два файла из архива в папку filterscripts и прописываете в строчке filterscripts (server.cfg) название .pwn файла. 

Файл хранения донат-кодов создастся автоматически при первом запуске сервера с подключенным скриптом. 

СКАЧКА И АВТОРСТВО СКРИПТА:
Автор скрипта: 
iBublik

Чтобы скачать данный скрипт, перейдите по этой ссылке.

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


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

а где OnPlayerDialogResponse?

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


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

Не могу активировать пишет команды нету как создать команду пишу /setdonatecode и нечего подскажите что делать

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


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

@ALEXMEN16 скрипт старый, под стандартный командный процессор скорее всего, поэтому и не работает. 

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


Ссылка на сообщение
Поделиться на другие сайты
20 часов назад, ALEXMEN16 сказал:

Не могу активировать пишет команды нету как создать команду пишу /setdonatecode и нечего подскажите что делать

Вставьте скрипт в мод, и перепишите команду на ваш командный процессор . 

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


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

           
                сase 51:  //Ошибка из-за чего?
{

 

error 029: invalid expression, assumed zero
C:\Users\Elena\Desktop\Новая папка2\gamemodes\2.pwn(9530) : error 017: undefined symbol "ase"
C:\Users\Elena\Desktop\Новая папка2\gamemodes\2.pwn(9530) : warning 215: expression has no effect
C:\Users\Elena\Desktop\Новая папка2\gamemodes\2.pwn(9530) : error 001: expected token: ";", but found ":"
C:\Users\Elena\Desktop\Новая папка2\gamemodes\2.pwn(9530) : fatal error 107: too many error messages on one line
 

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


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

@ququ2123, в этом слове первая буква русская, а последующие - английские. Как результат, неизвестное компилятору слово. Вот и ошибки.

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


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

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

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

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

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


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

Войти

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


Войти

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

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

  • Похожий контент

    • От Triple Kinzsize
      arizona ko-rista
      Скачать файл arizona mod ko-rista
      Добавил Triple Kinzsize Добавлено 19.12.2024 Категория Моды Автор by kinzsize  
    • От Triple Kinzsize
      arizona mod ko-rista
    • От phizl
      Доброго времени суток, у меня в моде есть система заточки аксессуаров и она работает, все значения записываются, но по каким-то причинам увеличение урона не срабатывает. У меня есть инклуд weapon-config, до этого в нём не было перехвата функции, я его сделал и по идее дефолтные паблики OnPlayerGiveDamage и OnPlayerTakeDamage щас срабатывают. Буду очень благодарен любой помощи! (К слову, в переменной
      pInfo[playerid][pAcsSharpening] все значения равны 11)
       
      Паблики OnPlayerGiveDamage и OnPlayerTakeDamage в самом моде:
      public OnPlayerGiveDamage(playerid, damagedid, Float:amount, weaponid, bodypart) {     new damage;     switch(pInfo[playerid][pAcsSharpening][2])     {         case 0..3: damage = 0;         case 4..11: damage = pInfo[playerid][pAcsSharpening][2]-3;         case 12: damage = 8;     }     amount += (amount / 100) * damage;     switch(pInfo[playerid][pAcsSharpening][3])     {         case 0..3: damage = 0;         case 4..11: damage = pInfo[playerid][pAcsSharpening][3]-3;         case 12: damage = 8;     }     amount += (amount / 100) * damage;     return 1; } public OnPlayerTakeDamage(playerid, issuerid, Float:amount, weaponid, bodypart) {     new nodamage;     if(pInfo[playerid][pAcsSharpening][1] != 0)     {         switch(pInfo[playerid][pAcsSharpening][1])         {             case 1..3: nodamage = 0;             case 4: nodamage = 2;             case 5: nodamage = 4;             case 6: nodamage = 5;             case 7: nodamage = 6;             case 8: nodamage = 8;             case 9: nodamage = 10;             case 10: nodamage = 12;             case 11,12: nodamage = 15;         }     }     if(pInfo[playerid][pAcsSharpening][4] != 0)     {         switch(pInfo[playerid][pAcsSharpening][4])         {             case 1..3: nodamage = 0;             case 4..11: nodamage = pInfo[playerid][pAcsSharpening][4]-2;             case 12: nodamage = 9;         }     }     new damage;     switch(pInfo[playerid][pAcsSharpening][2])     {         case 0..3: damage = 0;         case 4..11: damage = pInfo[playerid][pAcsSharpening][2]-3;         case 12: damage = 8;     }     amount += (amount / 100) * damage;     switch(pInfo[playerid][pAcsSharpening][3])     {         case 0..3: damage = 0;         case 4..11: damage = pInfo[playerid][pAcsSharpening][3]-3;         case 12: damage = 8;     }     amount += (amount / 100) * damage;     if(pInfo[playerid][pAcsSharpening][1] == 0 && pInfo[playerid][pAcsSharpening][4] == 1 || pInfo[playerid][pAcsSharpening][4] == 0 && pInfo[playerid][pAcsSharpening][2] == 1) amount -= (amount / 100) * nodamage;     if(pInfo[playerid][pAcsSharpening][4] == 1 && pInfo[playerid][pAcsSharpening][2] == 1) amount -= (amount / 100)*nodamage*2;     return 1; }  
      Эти же паблики, но в weapon-config с моим перехватом (расположен внизу каждого паблика), мало ли как-то не так сделал