• Уважаемые пользователи!
    За решением проблем с работой плагинов, компиляцией, падением сервера и прочими обращайтесь в раздел Помощи!
    Данная тема предназначена для обсуждения плагина, его функционала, принципа работы и предложений.
Gaming Transfer System

Плагин АМХХ Gaming Transfer System 1.0.3

Нет прав для скачивания

zhorzh78

Администратор
Сообщения
3,064
Решения
21
Реакции
1,217
Баллы
113
zhorzh78 добавил(а) новый ресурс:

Gaming Transfer System - Плагин для накопления и переводов между игроками денег, бонусов и т.п.

Требования:
- официальный AMXModX версии 1.8.3 и выше

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

Узнать больше об этом ресурсе...
 
zhorzh78 обновил(а) ресурс Gaming Transfer System новой записью:

Обновление до версии 1.0.1

C++:
 * fix обработки ретурн-кодов eMenuAction

Узнать больше об этом обновлении...
Добавлено:

Пример перевода здоровья между игроками

C++:
#include <amxmodx>
#include <gaming_transfer_system>
#include <fun>

new g_iPurseIndex;

public plugin_cfg()
{
    //создаем кошелек с именем health и получаем его индекс
    //установим максимальный перевод в количестве 10 hp
    g_iPurseIndex = GTSCreatePurse("health", "GTS_ADDON_HEALTH_NAME", "GTS_ADDON_HEALTH_SIGN", .iMaxTransferAmount = 10);

    //открываем словарь плагина gaming_transfer_system.txt
    //в него записываем ключи словаря для своего языка, которые зарегистрировали выше, например [ru]
    //GTS_ADDON_HEALTH_NAME = Здоровье
    //GTS_ADDON_HEALTH_SIGN = %d [HP]
}

//создаем меню
public OnGTSMainMenuOpenPre(id, iPurseIndex, iMenu, iMenuCallback)
{
    //если это наш кошелек со здоровьем
    if(iPurseIndex == g_iPurseIndex)
    {
        //если здоровье меньше 50
        if(get_user_health(id) < 50)
        {
            //оповестим об этом путем создания текста в меню
            menu_addtext2(iMenu, "Слишком мало здоровья");
            //или путем оповещения в чат client_print_color...

            //и покажем его сразу, не создавая пункты перевода
            return GTSForwardReturnSet(id, MENU_SHOW_NOW);
        }
    }
    
    //если не наш кошелек, пропускаем
    return GTSForwardReturnSet(id, MENU_IGNORE);
}

//при получении/установке количества здоровья
public OnGTSPurseBalanceRequestPre(id, iPurseIndex, eBalanceAction:iActionSet, iValue)
{
    //если это наш кошелек со здоровьем
    if(iPurseIndex == g_iPurseIndex)
    {
        //если просят показать количество здоровья
        if(iActionSet == GET_BALANCE)
            //возвращаем количество здоровья
            return get_user_health(id);
        //если просят выдать здоровье количество здоровья
        else
        {
            new iHealth = get_user_health(id);
            //если здоровье после добавления получится больше 100
            if((iHealth + iValue) > 100)
            {
                //запрещаем действие
                return GTSForwardReturnSet(id, MENU_ITEM_ACCESS_DENY);
            }
            
            //иначе, выдаем + iValue
            set_user_health(id, get_user_health(id) + iValue);
            //и разрешаем действие
            return PLUGIN_HANDLED;
        }
    }

    //игнорируем
    return PLUGIN_CONTINUE;
}
 
Последнее редактирование:
Перевод бонусов от плагина Bonus Menu RBS
Чтобы не путать бонусы /anew от других плагинов, квар gts_use_anew можно выключить
C++:
#include <amxmodx>
#include <gaming_transfer_system>
#include <bonusmenu_rbs>

new g_iPurseIndex

public plugin_cfg()
{
    g_iPurseIndex = GTSCreatePurse("bonus", "GTS_CURRENCY_ANEW_NAME", "GTS_CURRENCY_ANEW_SIGN", .iOpenTime = 3);
    //.iOpenTime = 3 - доступ к переводу с 3-го раунда, или через 3 минуты, если мод CSDM
}

public OnGTSPurseBalanceRequestPre(id, iPurseIndex, eBalanceAction:iActionSet, iValue)
{
    if(iPurseIndex == g_iPurseIndex)
    {
        if(iActionSet == GET_BALANCE)
            return bonusmenu_get_user_points(id);
        else
        {
            if(bonusmenu_add_user_points(id, iValue) != -1)
                return PLUGIN_HANDLED;
            else
                return GTSForwardReturnSet(id, MENU_ITEM_ACCESS_DENY);
        }
    }

    return PLUGIN_CONTINUE;
}
 
Перевод бонусов от плагина Bonus Menu RBS
Чтобы не путать бонусы /anew от других плагинов, квар gts_use_anew можно выключить
C++:
#include <amxmodx>
#include <gaming_transfer_system>
#include <bonusmenu_rbs>

new g_iPurseIndex

public plugin_cfg()
{
    g_iPurseIndex = GTSCreatePurse("bonus", "GTS_CURRENCY_ANEW_NAME", "GTS_CURRENCY_ANEW_SIGN", .iOpenTime = 3);
    //.iOpenTime = 3 - доступ к переводу с 3-го раунда, или через 3 минуты, если мод CSDM
}

public OnGTSPurseBalanceRequestPre(id, iPurseIndex, eBalanceAction:iActionSet, iValue)
{
    if(iPurseIndex == g_iPurseIndex)
    {
        if(iActionSet == GET_BALANCE)
            return bonusmenu_get_user_points(id);
        else
        {
            if(bonusmenu_add_user_points(id, iValue) != -1)
                return PLUGIN_HANDLED;
            else
                return GTSForwardReturnSet(id, MENU_ITEM_ACCESS_DENY);
        }
    }

    return PLUGIN_CONTINUE;
}
Можете скинуть пример чтоб можно было деньги перевести которые в личном кабинете. Щас смотрю есть пример по здоровью и есть пример по anew бонусу а пример денег которые в личном кабинете не могу найти
Добавлено:

zhorzh78 добавил(а) новый ресурс:

Gaming Transfer System - Плагин для накопления и переводов между игроками денег, бонусов и т.п.



Узнать больше об этом ресурсе...
по здоровью уже компилировал плагин проверил норм и по anew бонусам bonus menu rbs тоже компилировал норм проверил. Осталось по деньгам с личного счета перевод только не могу найти пример а так здорово.
 
Последнее редактирование:
не туда написал))) сори
 
Последнее редактирование:
плагин заменяет плагин банк с этого же сайта? использует ту же таблицу?
 
Алекс, Можно сказать, что заменяет.
По факту, расширяет возможности перевода не только денег. Ни этот плагин, ни плагин банка не используют таблицы и не умеют что-либо хранить. Они читают и записывают данные из других плагинов.
 
L 01/24/2021 - 22:49:32: [gaming_transfer_system.amxx] [ERR NOCODE] Do not specify a product key
L 01/24/2021 - 22:49:32: [gaming_transfer_system.amxx] [STATUS] The test period is activated
хотя все ввел лицензию и т.д
 
odessa, проверьте кодировку конфига, utf8 без bom. Иначе, создавайте тему помощи с полной информацией.
 
odessa, нет никакой информации. Пробовал ли со слешем, есть ли игроки на сервере, есть ли ошибки, есть ли видео. Есть ли хоть что-то, где посмотреть работу плагина...
 
odessa, нет никакой информации. Пробовал ли со слешем, есть ли игроки на сервере, есть ли ошибки, есть ли видео. Есть ли хоть что-то, где посмотреть работу плагина...
С слешем не пробовал, Игроки есть, ошибок нету все работает четко, но банк не открывает
 
odessa, нет никакой информации. Пробовал ли со слешем, есть ли игроки на сервере, есть ли ошибки, есть ли видео. Есть ли хоть что-то, где посмотреть работу плагина...
Может надо обновить статистику всю полностью ?
 
odessa,
создавайте тему помощи с полной информацией.
Решение вашей проблемы уже было озвучено. Пользуйтесь поиском, прежде чем загадывать загадки без предоставления информации
 
Данный плагин я как понимаю идет замена ранее "банку" он использует ту же колонку game_money? если я его поставлю, банки игроков не опустеют?
И так же вопрос, содержит ли данный плагин все фиксы банка, к примеру работает ли он с бесконечным раундом от рехлдс и поддержка ксдм.

 
Назад
Сверху