ReHLDS/ReAPI [2.5] VIP System

praccprefere

Пользователь
Регистрация
8 Июн 2017
Сообщения
30
Симпатии
1
Пол
Мужской
praccprefere, Установи плагин: vip за стим и проблема решена.
Стим игрокам будет выдавать флаг "t", а вип система выдаёт это все игрокам с этим флагом t. Проблема решена)
мне не нужно это)) я описал конкретно, что нужно
 

hooligan***

Пользователь
Регистрация
9 Июн 2017
Сообщения
346
Симпатии
91
Пол
Мужской
praccprefere, а теперь ещё раз прочти внимательно что я написал)))
Тебе нужно выдавать стим игрокам бонусы из випки, так дай стим игрокам випку и они будут получать эти бонусы. Надеюсь что понял))
P.s Конечно, если для тебя принципиально добавить это условие в вип меню, а не в отдельный плагин, то вырежи код и добавь, ничего сложного нет. Хотя по сути абсолютно никакой разницы нет.
 

praccprefere

Пользователь
Регистрация
8 Июн 2017
Сообщения
30
Симпатии
1
Пол
Мужской
praccprefere, а теперь ещё раз прочти внимательно что я написал)))
Тебе нужно выдавать стим игрокам бонусы из випки, так дай стим игрокам випку и они будут получать эти бонусы. Надеюсь что понял))
P.s Конечно, если для тебя принципиально добавить это условие в вип меню, а не в отдельный плагин, то вырежи код и добавь, ничего сложного нет. Хотя по сути абсолютно никакой разницы нет.
для меня легче увеличить количество функций в одном плагине, чем добавлять новый плагин с несколькими функциями
21 Окт 2018
praccprefere, а теперь ещё раз прочти внимательно что я написал)))
Тебе нужно выдавать стим игрокам бонусы из випки, так дай стим игрокам випку и они будут получать эти бонусы. Надеюсь что понял))
P.s Конечно, если для тебя принципиально добавить это условие в вип меню, а не в отдельный плагин, то вырежи код и добавь, ничего сложного нет. Хотя по сути абсолютно никакой разницы нет.
стимам и этого достаточно)
 

пазлик~

Скриптер
Разработчик
Регистрация
8 Июн 2017
Сообщения
234
Симпатии
127
Пол
Мужской
в re_vip_core.sma добавить проверку на стим
 
Последнее редактирование: пазлик~

пазлик~

Скриптер
Разработчик
Регистрация
8 Июн 2017
Сообщения
234
Симпатии
127
Пол
Мужской
pr0dukt.ekb, К примеру добавить в public native_bonus_spawn(id) условие if (!(REU_GetAuthtype(id) == CA_TYPE_STEAM)) return false;
 
Последнее редактирование: пазлик~

praccprefere

Пользователь
Регистрация
8 Июн 2017
Сообщения
30
Симпатии
1
Пол
Мужской
пазлик~, переставляю функцию и просто эта часть кода отваливается
 

пазлик~

Скриптер
Разработчик
Регистрация
8 Июн 2017
Сообщения
234
Симпатии
127
Пол
Мужской
praccprefere, В лс скиньте исход. я поправлю. Я чуток не верно условие составил вам.
 
Последнее редактирование: пазлик~

fantom

Постоялец
Регистрация
11 Июн 2017
Сообщения
223
Симпатии
146
Пол
Мужской
Нашел у себя дополнение к даному плагину. Как то год назад просили дописать чуть больше функционала чем есть сейчас в платной версии. Но так как я обещал не сливать: то делюсь обрезаной версией. Без установки модели weaponbox-а, без запрета поднятия не вип игроком, без увеличенной обоймы. Поставляется как есть чтоб не валялось.
Код:
#include <amxmodx>
#include <hamsandwich>
#include <reapi>
#include <vip_system>

#define MAX_TITLE_LENGTH 64
#define MAX_MODEL_LENGTH 64

#define makeCustomID(%1) (%1 + 100)
#define getCustomID(%1) (get_entvar(%1, var_impulse) - 100)

enum _:CONFIG {
    c_title[MAX_TITLE_LENGTH],
    WeaponIdType:c_weapon,
    c_cost,
    c_bpammo,
    Float:c_damage,
    c_v_model[MAX_MODEL_LENGTH],
    c_p_model[MAX_MODEL_LENGTH]
};

new const config[][CONFIG] = {
    // { "TITLE", WEAPON_ID, price, bpammo, damage, "V model path", "P model path"
    { "VIP AK-47", WEAPON_AK47, 2500, 100, 1.1, "models/headparty/v_ak47.mdl", "models/headparty/p_ak47.mdl" },
    { "VIP M4A1", WEAPON_M4A1, 3100, 100, 1.1, "models/headparty/v_m4a1.mdl", "models/headparty/p_m4a1.mdl" },
    { "VIP AWP", WEAPON_AWP, 4750, 40, 1.1, "models/headparty/v_awp.mdl", "models/headparty/p_awp.mdl" }
};

new menu, Float:damage[MAX_CLIENTS + 1];

public plugin_precache() {
    for (new i = 0; i < sizeof config; i++) {
        precache_model(config[i][c_v_model]);
        precache_model(config[i][c_p_model]);
    }
}

public plugin_init() {
    register_plugin("[ReVIP] Custom Weapons", "0.1", "F@nt0M");

    RegisterHookChain(RG_CBasePlayer_TakeDamage, "CBasePlayer_TakeDamage", false);
    for (new i = 0, name[32]; i < sizeof config; i++) {
        rg_get_weapon_info(config[i][c_weapon], WI_NAME, name, charsmax(name));
        RegisterHam(Ham_Item_Deploy, name, "Fwd_Item_Deploy", true);
        RegisterHam(Ham_Item_Holster, name, "Fwd_Item_Holster", true);
    }
    
    new title[128];
    formatex(title, charsmax(title), "\r%L \w[\d%L\w]", LANG_SERVER, "CUSTOM_SHOP_NAME", LANG_SERVER, "NAME_SERVER");
    menu = menu_create(title, "MenuHandler");
    new callback = menu_makecallback("MenuItemCallback");
    
    for (new i = 0, item[32]; i < sizeof config; i++) {
        num_to_str(i, item, charsmax(item));
        formatex(title, charsmax(title), "%s \r[\y$%d\r]", config[i][c_title], config[i][c_cost]);
        menu_additem(menu, title, item, 0, callback);
    }
    
    formatex(title, charsmax(title), "%L", LANG_SERVER, "SHOP_NEXT");
    menu_setprop(menu, MPROP_NEXTNAME, title);
    formatex(title, charsmax(title), "%L", LANG_SERVER, "SHOP_BACK");
    menu_setprop(menu, MPROP_BACKNAME, title);
    formatex(title, charsmax(title), "%L", LANG_SERVER, "SHOP_EXIT");
    menu_setprop(menu, MPROP_EXITNAME, title);
}

public plugin_end() {
    menu_destroy(menu);
}

public vip_use_custom_shop(id) {
    menu_display(id, menu, 0);
}

public MenuHandler(id, menu, menuItem) {
    if (menuItem == MENU_EXIT) {
        return;
    }
    
    new tmp, tmpStr[1], info[10];
    menu_item_getinfo(menu, menuItem, tmp, info, charsmax(info), tmpStr, 0, tmp);
    new item = str_to_num(info);
    new money = get_member(id, m_iAccount);
    if (money >= config[item][c_cost] && giveItem(id, item)) {
        rg_add_account(id, money - config[item][c_cost], AS_SET, true);
    }
}

public MenuItemCallback(id, menu, menuItem) {
    new tmp, tmpStr[1], info[10];
    menu_item_getinfo(menu, menuItem, tmp, info, charsmax(info), tmpStr, 0, tmp);
    new item = str_to_num(info);
    return get_member(id, m_iAccount) >= config[item][c_cost] ? ITEM_ENABLED : ITEM_DISABLED
}

public Fwd_Item_Deploy(weapon) {
    new id = get_member(weapon, m_pPlayer);
    if (!is_user_connected(id) || !get_flag_access_def(id)) {
        return HAM_IGNORED;
    }

    new item = getItemByWeapon(weapon);
    if (item == -1) {
        return HAM_IGNORED;
    }

    setWeaponModel(id, item);
    damage[id] = config[item][c_damage];

    return HAM_IGNORED;
}

public Fwd_Item_Holster(weapon) {
    new id = get_member(weapon, m_pPlayer);
    if (!is_user_connected(id)) {
        return HAM_IGNORED;
    }

    damage[id] = 0.0;
    return HAM_IGNORED;
}

public CBasePlayer_TakeDamage(const id, const inflictor, const attacker, const Float:dmg) {
    #pragma unused inflictor

    if (id == attacker || !is_user_connected(attacker) || !rg_is_player_can_takedamage(id, attacker)) {
        return HC_CONTINUE;
    }

    if (damage[attacker] > 0.0) {
        SetHookChainArg(4, ATYPE_FLOAT, dmg * damage[attacker]);
    }

    return HC_CONTINUE;
}

bool:giveItem(const id, const item) {
    new name[32];
    rg_get_weapon_info(config[item][c_weapon], WI_NAME, name, charsmax(name));
    new weapon = rg_give_custom_item(id, name, GT_REPLACE, makeCustomID(item));
    
    if (!is_nullent(weapon)) {
        rg_switch_weapon(id, weapon);
        rg_set_user_bpammo(id, config[item][c_weapon], config[item][c_bpammo]);
        setWeaponModel(id, item);
    }
}

getItemByWeapon(const weapon) {
    new item = getCustomID(weapon);
    return item >= 0 ? item : -1;
}

setWeaponModel(const id, const item) {
    set_entvar(id, var_viewmodel, config[item][c_v_model]);
    set_entvar(id, var_weaponmodel, config[item][c_p_model]);
}

P.S. я вырезал все за 5 мин. роботу не проверял но должно работать
P.S.S. Помощи что либо поправить просьба не просить меня и ен ломится с просьбами.
 

rain220391

Пользователь
Регистрация
29 Мар 2018
Сообщения
1
Симпатии
0
GrafkO, Да вроде указано в топике о них, ток не как голд, а как кастомные, какие модели юзеры поставят такие у них и будут, кто то голд кто то другой пак захочет, и как за всегда Free версия для всех без магазина.
Доброго времени суток , хотел бы приобрести фулл версию вашу как можно с вами связаться ?
 

пазлик~

Скриптер
Разработчик
Регистрация
8 Июн 2017
Сообщения
234
Симпатии
127
Пол
Мужской
@rain220391,читаем faq пишем в лс
 

trapmaniak

Пользователь
Регистрация
8 Июл 2017
Сообщения
32
Симпатии
0
Пол
Мужской
В первом посте указано
пароль от архива
neugomon.ru
 

several

Пользователь
Регистрация
1 Окт 2018
Сообщения
15
Симпатии
0
Такая проблема. Выдает в начале раунда следующее:
Ваши бонусы: Smoke, HE, Flash, Deagle
и ВИП игрок получает только 1 флешку. Как сделать, чтобы выдавало 2 флешки?

В vip_system.cfg пробовал прописывать так:
give_items "adffhps" не помогает
 

flexcorejz

Пользователь
Регистрация
8 Ноя 2017
Сообщения
269
Симпатии
17
Такая проблема. Выдает в начале раунда следующее:
Ваши бонусы: Smoke, HE, Flash, Deagle
и ВИП игрок получает только 1 флешку. Как сделать, чтобы выдавало 2 флешки?

В vip_system.cfg пробовал прописывать так:
give_items "adffhps" не помогает
Выдает же плагин AES. Отключите бонусы у ВИПов, если конечно бонусы AES доступны всем.
 

flexcorejz

Пользователь
Регистрация
8 Ноя 2017
Сообщения
269
Симпатии
17
Зачем отключать? Как сделать, чтоб 2 флешки выдавало?
У тебя бонусы випки как я понял, выдает после бонус AES. Ну и вот что-бы не было этого конфликта, как вариант включить с 1 звания, все гранаты, а бонусы VIP отключить. Ну или в bonus.ini, вроде как есть функция IGNORE, и просто выставь флаг с випки, и посмотри что будет.
 

VladBrovary

Пользователь
Регистрация
8 Июн 2017
Сообщения
40
Симпатии
17
Пол
Мужской
Можно получить плагин? Отписал в ЛС. Ибо старая ссылка уже не активна, жду ответа Пазлик.