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

Add-on GameCMS_Present Coins Addon 1.1

Нет прав для скачивания
@lalala, Какие ключи, какие плагины? Все инструкции по покупке плагинов есть в теме тех самых плагинов. О каких плагинах идет речь- неизвестно.
 
@lalala, Какие ключи, какие плагины? Все инструкции по покупке плагинов есть в теме тех самых плагинов. О каких плагинах идет речь- неизвестно.
cms_present_key "" //16-ти значный ключ продукта
а что это и где ее взять ?
 
Автор, ты упомянул слово "Киллер". Идея такая наглянула. Взять старый плагин наемника, и сделать его с монетами

Кто юзает этот плагин, посоветовал бы заменить модельку на лежачую монету. Где написан руб, или какую вы там валюту юзаете
 
Автор, ты упомянул слово "Киллер". Идея такая наглянула. Взять старый плагин наемника, и сделать его с монетами
Кто юзает этот плагин, посоветовал бы заменить модельку на лежачую монету. Где написан руб, или какую вы там валюту юзаете
Я не юзаю. Поэтому, не понимаю о чем речь и какое предложение.

Если задумка в какой-то переделке другого плагина или написания нового дополнения, то пишите в раздел Разработка
 
Здравствуйте. Возможно ли изменить путь до модельки на свой адрес?
 
Последнее редактирование:
zhorzh78, Понял, а можно как-то сделать что б монетка чутка отпрыгивала в сторону, а то использую талисман жизни и они сливаются в единое.
 
Melodyne,
966

Поиграйте с координатами. Добавьте некоторое значение, например
C++:
origin[1] = float(sorigin[1]) + 30.0;
 
На авп карте
Код:
L 05/14/2019 - 19:21:46: [AMXX] Displaying debug trace (plugin "presents_coins_on_death.1.1.amxx", version "1.1")
L 05/14/2019 - 19:21:46: [AMXX] Run time error 10: native error (native "CmsSpawnPresentById")
L 05/14/2019 - 19:21:46: [AMXX]    [0] presents_coins_on_death.1.1.sma::EventDeathMessage (line 64)
 
а есть ли в этом плагине такая возможность что бы монетки выпадали только после смерти игрока с определенным флагом
 
ashok49,
C++:
#include <amxmodx>
#include <gamecms5>
#include <gamecms_present>

#define PLUGIN "GameCMS_Present Coins Addon"
#define VERSION "1.1"
#define AUTHOR "zhorzh78"

#if AMXX_VERSION_NUM < 183
    #include <colorchat>
#endif

new Float:fMoney = 0.05;     //сумма денег за монетку (на баланс сайта)
new bool:killerOnly = true    //true- если поднять монету разрешено только киллеру (чтобы не ругались за монеты :))
                            //false- если поднять монету разрешено любому

new const g_szSound[] = "some_sound.wav"; //звук при поднятии из папки sound/

new bool:g_API;
new coinPresent;
                          
public plugin_init()
{
    register_plugin(PLUGIN, VERSION, AUTHOR);
  
    register_event("DeathMsg", "EventDeathMessage", "a");
}

public plugin_precache()
{
    precache_sound(g_szSound);
}

//Если основной плагин презентов не стартанул, останавливаем
public OnPresentCoreStopped()
    pause("d");

//Проверяем, загружен ли API для выдачи денег
public OnAPIPluginLoaded(Handle:sqlTuple)
{
    //добавляем презент "монета"
    //указываем модель монеты "exp2_blue" без .mdl
    coinPresent = CmsAddPresent(500, "монета", -2, -3, 0, "exp2_blue", 0);
    g_API = true;
}
  

//Событие смерти игрока
public EventDeathMessage(killer, victim)
{
    if(!coinPresent)
        return;

    new killer = read_data(1);
    new victim = read_data(2);

    //если умер сам, не спавним монету
    if(killer == victim)
        return;

    new Float:origin[3], sorigin[3]
    get_user_origin(victim, sorigin, 0)

    origin[0] = float(sorigin[0]);
    origin[1] = float(sorigin[1]);
    origin[2] = float(sorigin[2]);
  
    //презент создаем только для киллера или для всех (зависит от настройки)
    //спавним презент без стандартного уведомления в чат о его появлении (параметр true блокирует уведомление)
    //зададим время до удаления монетки 15.0 сек
    CmsSpawnPresentById(500, origin, true, killerOnly ? killer : 0, 15.0)
}

//событие попытки поднять презент
public OnTakePresent(id, itemId, iEntity)
{
    //если API загружен и игрок- владелец монеты (киллер) (проверку игрока проверяет Core)
    if(g_API)
    {
        if(itemId == 500)
        {
            emit_sound(id, CHAN_AUTO, g_szSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
            //===== тут- для примера возврата функции
            if(random_num(0, 10) == 2)
            {
                //вернем "3" для запрета поднятия монетки и блокирования стандартного сообщения
                //т.к. задаем свое сообщение
                client_print_color(id, 0, "Манетка паламалась)) тибе аблом");
                return 3;
            }
            //===== конец примера
          
            if(cmsapi_add_user_money(id, fMoney))
            {
                client_print_color(id, 0, "%L Ты получил награду %.2f рублей", LANG_SERVER, "CMS_PRESENT_PREFIX_CHAT", fMoney);
                //вернем "2" для разрешения поднять монетку и блокировки стандартного сообщения о поднятии
                //т.к. задали свое сообщение
                return 2;
            }
        }
    }

    return 0;
}

public client_disconnected(id)
CmsRemovePresent(0, id)
 
zhorzh78, Чтобы звук слышно было только поднявшему
Код:
emit_sound(id, CHAN_AUTO, g_szSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)

emit_sound(id, CHAN_AUTO, g_szSound, VOL_NORM, ATTN_NORM, id, PITCH_NORM)

так будет ?
 
Назад
Сверху