• Пожалуйста, создайте название темы отражающее ее смысл
  • Для ускорения решения Вашего вопроса заполните обязательные поля и подробно опишите возникшую проблему

Помощь Проблема с нативом cmsapi_reload_wallet

  • Автор темы Автор темы D1m0n41k
  • Дата начала Дата начала

D1m0n41k

Участник
Сообщения
487
Реакции
207
Баллы
43
При попытке выдачи денег через данный натив, на баланс аккаунта выдается не соответствующие значения.

Выдача денег производилась через тестовый плагин.

Такая проблема наблюдается только с нативом cmsapi_reload_wallet, при использовании cmsapi_add_user_money таких проблем нет.
 
C++:
#include <amxmodx>
#include <gamecms5>

new szPluginInfo[][] = { "Test", "1.0", "ApXuTekToR" };

new Float:gRubsGive = 5.0;      // Кол-во выдаваемых денег
new Float:gMinBalans = 2.0;     // Минимально допустимое значение баланса игрока

public plugin_init()
{
    register_plugin(szPluginInfo[0], szPluginInfo[1], szPluginInfo[2]);
    register_clcmd("GiveRubs1",  "Give_Rubs1");
    register_clcmd("GiveRubs2",  "Give_Rubs2");
}

public Give_Rubs1(Id)
{

    new Float:UserMoney = cmsapi_get_user_money(Id);
    if(UserMoney + gRubsGive < gMinBalans)
    {
        // Делаем выдачу положительной, что бы баланс игрока не уходил в минус (Если отнимаем)
        cmsapi_reload_wallet(Id, gRubsGive * -1, true);
        // Пишем сообщение в чат
        client_print_color(Id, print_team_default, "^3[^4TEST^3] ^1Баланс ^3меньше ^4%.2f^1...", gMinBalans);
        client_print_color(Id, print_team_default, "^3[^4TEST^3] ^1Выдаю^3: ^4%.2f руб.", gRubsGive*-1);

        // Делаем соответствующие записи в лог
        log_to_file("test.log", "[ 'Give_Rubs1' ] Функция 'cmsapi_reload_wallet'");
        log_to_file("test.log", "[ 'Give_Rubs1' ] Баланс игрока: '%.2f'", UserMoney);
        log_to_file("test.log", "[ 'Give_Rubs1' ] Выдаю: '%.2f'", gRubsGive);
        log_to_file("test.log", "[ 'Give_Rubs1' ] ...................................");
    }
    else
    {
        // Выдаем деньги
        cmsapi_reload_wallet(Id, gRubsGive, true);
        // Пишем сообщение в чат
        client_print_color(Id, print_team_default, "^3[^4TEST^3] ^1Баланс ^3больше ^4%.2f^1...", gMinBalans);
        client_print_color(Id, print_team_default, "^3[^4TEST^3] ^1Выдаю^3: ^4%.2f руб.", gRubsGive);

        // Делаем соответствующие записи в лог
        log_to_file("test.log", "[ 'Give_Rubs1' ] Функция 'cmsapi_reload_wallet'");
        log_to_file("test.log", "[ 'Give_Rubs1' ] Баланс игрока: '%.2f'", UserMoney);
        log_to_file("test.log", "[ 'Give_Rubs1' ] Выдаю: '%.2f'", gRubsGive);
        log_to_file("test.log", "[ 'Give_Rubs1' ] ...................................");
    }
}

public Give_Rubs2(Id)
{

    new Float:UserMoney = cmsapi_get_user_money(Id);
    if(UserMoney + gRubsGive < gMinBalans)
    {
        // Делаем выдачу положительной, что бы баланс игрока не уходил в минус (Если отнимаем)
        cmsapi_add_user_money(Id, gRubsGive*-1);
        // Пишем сообщение в чат
        client_print_color(Id, print_team_default, "^3[^4TEST^3] ^1Баланс ^3меньше ^4%.2f^1...", gMinBalans);
        client_print_color(Id, print_team_default, "^3[^4TEST^3] ^1Выдаю^3: ^4%.2f руб.", gRubsGive*-1);

        // Делаем соответствующие записи в лог
        log_to_file("test.log", "[ 'Give_Rubs2' ] Функция 'cmsapi_add_user_money'");
        log_to_file("test.log", "[ 'Give_Rubs2' ] Баланс игрока: '%.2f'", UserMoney);
        log_to_file("test.log", "[ 'Give_Rubs2' ] Выдаю: '%.2f'", gRubsGive*-1);
        log_to_file("test.log", "[ 'Give_Rubs1' ] ...................................");
    }
    else
    {
        // Выдаем деньги
        cmsapi_add_user_money(Id, gRubsGive);
        // Пишем сообщение в чат
        client_print_color(Id, print_team_default, "^3[^4TEST^3] ^1Баланс ^3больше ^4%.2f^1...", gMinBalans);
        client_print_color(Id, print_team_default, "^3[^4TEST^3] ^1Выдаю^3: ^4%.2f руб.", gRubsGive);

        // Делаем соответствующие записи в лог
        log_to_file("test.log", "[ 'Give_Rubs2' ] Функция 'cmsapi_add_user_money'");
        log_to_file("test.log", "[ 'Give_Rubs2' ] Баланс игрока: '%.2f'", UserMoney);
        log_to_file("test.log", "[ 'Give_Rubs2' ] Выдаю: '%.2f'", gRubsGive);
        log_to_file("test.log", "[ 'Give_Rubs1' ] ...................................");
    }
}

Вложения

  • L20220309.log
    L20220309.log
    7.2 KB · Просмотры: 2
  • test.log
    test.log
    419 байт · Просмотры: 1
  • 1646830654668.png
    1646830654668.png
    35.5 KB · Просмотры: 2
Назад
Сверху