Проблем с компилирането на плъгин

Въпроси и проблеми свързани с ReHLDS и допълненията.
Аватар
nikolaydong
Извън линия
Потребител
Потребител
Мнения: 69
Регистриран на: 26 Яну 2019, 00:42
Се отблагодари: 1 път
Получена благодарност: 3 пъти
Обратна връзка:

Проблем с компилирането на плъгин

Мнение от nikolaydong » 02 Яну 2023, 18:54

Също така, ако може да го направите да останат като бонуси единствено пари и флагове за достъп.

Код за потвърждение: Избери целия код

#include <amxmodx>
#include <authemu>
#include <reapi>

/* Настройки */

// Время через которое будет выдана награда после входа игрока на сервер
#define BONUS_TIME      5.0

// Выдавать флаги только тем игрокам, у которых нет никаких других флагов (Игрок имеет флаг "z" - тогда выдаетются флаги)
// Закомментируйте, если нужно выдавать даже игрокам с другими флагами
#define ACCESS_FLAGS    ADMIN_USER

/* Тип интеграции со система ранга
NOTE: Закомментируйте, если не нужна поддержка ранг системы
1 - Army Ranks Ultimate
2 - Advanced Expirience System
3 - CMSStats Ranks
4 - OciXCroms Rank System (Награждать может только опытом, из-за отстутствия бонсоной системы) */
#define TYPE_JOB        2

/* Далее настроек нет */
#if defined TYPE_JOB
    #if TYPE_JOB == 1
        native ar_set_user_addxp(id, addxp);
        native ar_add_user_anew(admin, player, anew);
    #elseif TYPE_JOB == 2
        #include <aes_v>
    #elseif TYPE_JOB == 3
        native cmsranks_set_user_addxp(id, value);
        native cmsranks_add_user_anew(id, value);
    #elseif TYPE_JOB == 4
        #include <crxranks>
    #endif
#endif

public plugin_init() {
    register_plugin("Steam_GSClient_Bonus", "1.0.5", "ApXuTekToR");

    RegisterHookChain(RG_CBasePlayer_SetClientUserInfoName, "CBasePlayer_SetUserFlags")

    register_cvar("sgsc_bonus_type",    "1");
    register_cvar("sgsc_bonus_money",   "500");
    register_cvar("sgsc_bonus_flags",   "t");
    #if defined TYPE_JOB
        register_cvar("sgsc_bonus_exp",     "1");
        #if TYPE_JOB != 4
        register_cvar("sgsc_bonus_anew",    "1");
        #endif
    #endif

    new szConfigsDir[256];
    get_localinfo("amxx_configsdir", szConfigsDir, charsmax(szConfigsDir));
    server_cmd("exec %s/Steam_GSClient_Bonus.cfg", szConfigsDir);
    server_exec();

    register_srvcmd("SGSCBonus_lockmap", "Check_LockMap");
}

public client_putinserver(id) {
    set_task(BONUS_TIME, "GiveBonus", id);
}

public GiveBonus(id) {
    if(!is_user_connected(id))
        return;
    static c_BonusType, c_GiveMoney, c_GiveFlags[16];
#if defined TYPE_JOB
    static c_GiveExp;
    #if TYPE_JOB != 4
    static c_GiveAnew;
    #endif
#endif
    c_BonusType = get_cvar_num("sgsc_bonus_type");
    c_GiveMoney = get_cvar_num("sgsc_bonus_money");
    get_cvar_string("sgsc_bonus_flags", c_GiveFlags, charsmax(c_GiveFlags));
#if defined TYPE_JOB
    c_GiveExp = get_cvar_num("sgsc_bonus_exp");
    #if TYPE_JOB != 4
    c_GiveAnew = get_cvar_num("sgsc_bonus_anew");
    #endif
#endif
    if(is_user_steam(id) || is_user_authemu(id)) {
        if(c_BonusType == 1) {
            rg_add_account(id, c_GiveMoney, AS_ADD, true);
            client_print_color(id, print_team_default, "^3[^4VIP Bonus^3] ^1You received ^3[^4%d ^1$^3] ^1for using ^4GSClient | Steam ^client", c_GiveMoney);
        } else if(c_BonusType == 2) {
            #if defined ACCESS_FLAGS
            if(get_user_flags(id) & ACCESS_FLAGS) {
                set_user_flags(id, read_flags(c_GiveFlags));
                client_print_color(id, print_team_default, "^3[^4VIP Bonus^3] ^1You received ^3[^4VIP flag^3] ^1for using ^4GSClient | Steam ^client");
            }
            #else
                set_user_flags(id, read_flags(c_GiveFlags));
                client_print_color(id, print_team_default, "^3[^4VIP Bonus^3] ^1You received ^3[^4VIP flag^3] ^1for using ^4GSClient | Steam ^client");
            #endif
        }
        #if defined TYPE_JOB
        else if(c_BonusType == 3) {
            PlayerGivePlayerEXP(id, c_GiveExp);
            client_print_color(id, print_team_default, "^3[^4SGSC^3] ^1Вы получили ^3[^4%d ^1Exp^3] ^1за ^4Лицензионную ^1сборку", c_GiveExp);
        }
        #if TYPE_JOB != 4
        else if(c_BonusType == 4) {
            PlayerGivePlayerAnew(id, c_GiveAnew);
            client_print_color(id, print_team_default, "^3[^4SGSC^3] ^1Вы получили ^3[^4%d ^1Anew^3] ^1за ^4Лицензионную ^1сборку", c_GiveAnew);
        }
        #endif
        #endif
    }
    return;
}

public CBasePlayer_SetUserFlags(const Id, infobuffer[], szNewName[]) {
    if(!is_user_connected(Id)) return;

    new szOldName[32], c_GiveFlags[16], c_BonusType;
    get_entvar(Id, var_netname, szOldName, charsmax(szOldName));
    c_BonusType = get_cvar_num("sgsc_bonus_type");
    get_cvar_string("sgsc_bonus_flags", c_GiveFlags, charsmax(c_GiveFlags));

    if(strcmp(szOldName, szNewName) && c_BonusType == 2) {
        #if defined ACCESS_FLAGS
        if(get_user_flags(Id) & ACCESS_FLAGS)
            return;
        #endif
        set_user_flags(Id, read_flags(c_GiveFlags));
    }
}

#if defined TYPE_JOB
stock PlayerGivePlayerEXP(index, count) {
	#if TYPE_JOB == 1
	ar_set_user_addxp(index, count);
	#elseif TYPE_JOB == 2
	aes_add_player_exp_f(index, count);
	#elseif TYPE_JOB == 3
	cmsranks_set_user_addxp(index, count);
	#elseif TYPE_JOB == 4
    crxranks_give_user_xp(index, count);
    #endif
}

#if TYPE_JOB != 4
stock PlayerGivePlayerAnew(index, count) {
	#if TYPE_JOB == 1
	ar_add_user_anew(-1, index, count);
	#elseif TYPE_JOB == 2
	aes_add_player_bonus_f(index, count);
	#elseif TYPE_JOB == 3
	cmsranks_add_user_anew(index, count);
	#endif
}
#endif
#endif

public Check_LockMap() {
	new getmap[32], map[32];
	read_args(getmap, charsmax(getmap));
	remove_quotes(getmap);
	get_mapname(map, charsmax(map));

	if(!strcmp(getmap, map, true)) {
		pause("ad");
	}
}

Аватар
runthenwalk
Извън линия
Рекламатор
Рекламатор
Мнения: 44
Регистриран на: 06 Авг 2021, 19:41
Се отблагодари: 9 пъти
Получена благодарност: 4 пъти

Re: Проблем с компилирането на плъгин

Мнение от runthenwalk » 03 Яну 2023, 09:41

Не се разбира какъв е проблема нито каква ти е идеята

Аватар
nikolaydong
Извън линия
Потребител
Потребител
Мнения: 69
Регистриран на: 26 Яну 2019, 00:42
Се отблагодари: 1 път
Получена благодарност: 3 пъти
Обратна връзка:

Re: Проблем с компилирането на плъгин

Мнение от nikolaydong » 04 Яну 2023, 20:02

Проблемът е, че не можех да го компилирам, но в последствие видях, че ми трябва избор на Ранк система. Не желая да ползвам такава, някой може ли да го премахне това нещо и да остави единствено даването на флаг за вип?

Публикувай отговор
  • Подобни теми
    Отговори
    Преглеждания
     Последно мнение

Обратно към “Поддръжка / Помощ”

Кой е на линия

Потребители разглеждащи този форум: Bing [Bot] и 16 госта