weapons restrict Weaponres2.1

Статус
В этой теме нельзя размещать новые ответы.
Сообщения
21
Реакции
1
Ошибка
L 01/27/2023 - 18:47:38: [ReAPI] SetHookChainReturn: trying to set return value with incompatible type, expected 'ATYPE_BOOL'; got 'ATYPE_INTEGER'
L 01/27/2023 - 18:47:38: [AMXX] Run time error 10 (plugin "weaponrest.amxx") (native "SetHookChainReturn") - debug not enabled!
L 01/27/2023 - 18:47:38: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
ОС
Linux
Amx Mod X
AMX Mod X 1.9.0.5263 (http://www.amxmodx.org)
Authors:
David "BAILOPAN" Anderson, Pavol "PM OnoTo" Marko
Felix "SniperBeamer" Geyer, Jonny "Got His Gun" Bergstrom
Lukasz "SidLuke" Wlasinski, Christian "Basic-Master" Hammacher
Borja "faluco" Ferrer, Scott "DS" Ehlert
Compiled: Oct 27 2019 16:23:31
Built from: https://github.com/alliedmodders/amxmodx/commit/15a14a0
Build ID: 5263:15a14a0
Core mode: JIT+ASM32
Билд
Protocol version 48
Exe version 1.1.2.7/Stdio (cstrike)
ReHLDS version: 3.12.0.780-dev
Build date: 16:20:56 Sep 19 2022 (3082)
Build from: https://github.com/dreamstalker/rehlds/commit/d6ebe82
ReGamedll
CPU   In    Out   Uptime  Users   FPS    Players
49.75 182.80 339.68 82 236 1162.94 22
game version
ReGameDLL version: 5.21.0.575-dev
Build date: 21:32:28 Dec 17 2022
Build from: https://github.com/s1lentq/ReGameDLL_CS/commit/889edc8
Версия Metamod
Metamod-r v1.3.0.131, API (5:13)
Metamod-r build: 18:51:02 Jul 11 2022
Metamod-r from: https://github.com/theAsmodai/metamod-r/commit/adc9414
Список метамодулей
[ 1] Reunion          RUN   -    reunion_mm_i386.so        v0.1.92d         ini  Start Never
[ 2] ReAuthCheck RUN - reauthcheck_mm_i386.so v0.1.6 ini Start Never
[ 3] VoiceTranscoder RUN - vtc.so v2017RC5 ini ANY
[ 4] SafeNameAndChat RUN - SafeNameAndChat.so v1.2 Beta 3 ini ANY
[ 5] AMX Mod X RUN - amxmodx.so v1.9.0.5263 ini Start ANY
[ 6] HitBox Fix RUN - hitbox_fix.so v1.1.2 ini Start ANY
[ 7] WHBlocker RUN - whblocker.so v1.5.697 ini ANY
[ 8] Rechecker RUN - rechecker_mm_i386.so v2.7 ini ANY
[ 9] ReSemiclip RUN - resemiclip.so v2.3.9 ini ANY
[10] CStrike RUN - cstrike_amxx_i386.so v1.9.0.5263 pl5 ANY ANY
[11] CSX RUN - csx_amxx_i386.so v1.9.0.5263 pl5 ANY ANY
[12] MySQL RUN - mysql_amxx_i386.so v1.9.0.5263 pl5 ANY ANY
[13] ReAPI RUN - reapi_amxx_i386.so v5.22.0.254-dev pl5 ANY Never
[14] FakeMeta RUN - fakemeta_amxx_i386.so v1.9.0.5263 pl5 ANY ANY
[15] Engine RUN - engine_amxx_i386.so v1.9.0.5263 pl5 ANY ANY
[16] Ham Sandwich RUN - hamsandwich_amxx_i386.so v1.9.0.5263 pl5 ANY ANY
[17] Fun RUN - fun_amxx_i386.so v1.9.0.5263 pl5 ANY ANY
17 plugins, 17 running
Список плагинов
[  1] GameCMS_API             5.6.1       zhorzh78          gamecms_api_5.6  running  
[ 2] GameCMS_GagManager 2.2.7 ReAp zhorzh78 gamecms_gagmana running
[ 3] FreshBans 1.4.6b kanagava fresh_bans.amxx running
[ 4] [190] Screen Player 20.06.06 SKAJIbnEJIb screen_player.a running
[ 5] DopBan 3.0.8b kanagava dop_ban.amxx running
[ 6] GameCMS_Registration 1.5 zhorzh78 gamecms_registr running
[ 7] GameCMS_Informer 2.3 API5 zhorzh78 forum_HUD_infor running
[ 8] CMSGive_RegFlags 1.0 ApXuTekToR CMSGive_RegFlag running
[ 9] Admin Commands 1.9.0.5263 AMXX Dev Team admincmd.amxx running
[ 10] Menus Front-End 20.06.06 SKAJIbnEJIb & AM amxmodmenu_rbs. running
[ 11] [190] CmdMenu RBS 20.06.06 SKAJIbnEJIb & AM cmdmenu_rbs.amx running
[ 12] Players Menu 1.7 neugomon players_menu.am running
[ 13] [190] MapsMenu RBS 20.06.06 SKAJIbnEJIb & AM mapsmenu_rbs.am running
[ 14] Map Manager 2.5.61 Mistrick mapmanager.amxx running
[ 15] Weapon Restrict 2.1 s1lent & neugomo weaponrest.amxx running
[ 16] [190] StatsX RBS 21.03.23 SKAJIbnEJIb & AM statsx_rbs.amxx running
[ 17] [190] Stats Configurat 20.06.06 SKAJIbnEJIb & AM statscfg_rbs.am running
[ 18] [190] Ultimate Weapons 21.08.23BE SKAJIbnEJIb ultimate_weapon running
[ 19] [190] VIP RBS 20.07.20 SKAJIbnEJIb vip_rbs.amxx running
[ 20] [190] AdminChat RBS 20.06.06 SKAJIbnEJIb adminchat_rbs.a running
[ 21] [190] Chat RBS 20.06.06 SKAJIbnEJIb chat_rbs.amxx running
[ 22] AFK Control 1.4.1 [Rnd neygomon afk_control.amx running
[ 23] Ping Control 1.31 neygomon Ping_Control.am running
[ 24] [190] Army Ranks Ultim 20.06.06 SKAJIbnEJIb army_ranks_ulti running
[ 25] [190] Skill ELO 20.06.06 SKAJIbnEJIb skill_elo.amxx running
[ 26] [190] BonusMenu RBS 20.06.06 SKAJIbnEJIb bonusmenu_rbs.a running
[ 27] [190] CsStats MySQL 20.06.06 SKAJIbnEJIb csstats_mysql.a running
[ 28] [190] FG RconShop 21.09.12 SKAJIbnEJIb fg_rconshop.amx running
[ 29] [ReAPI] No Team Flash 0.0.3 Vaqtincha no_team_flash.a running
[ 30] [190] Ultimate Informe 21.03.23 SKAJIbnEJIb ultimate_inform running
[ 31] [190] Ultimate Models 21.03.23 SKAJIbnEJIb ultimate_models running
[ 32] Auto rr 1.0 ill rr.amxx running
[ 33] Demo Recorder 2.4.1 F@nt0M demo_recorder.a running
[ 34] ResetScore 1.1 Leo_[BH] resetscore_reap running
[ 35] C4 Timer on roundtime 0.3.3a neygomon c4timer.amxx running
[ 36] [190] Ad From Server 20.06.06 SKAJIbnEJIb ad_from_server. running
[ 37] [190] Kill Assist RBS 20.06.06 SKAJIbnEJIb & Di killassist_rbs. running
[ 38] Parachute Lite [ReAPI] 11.0 Leo_[BH] parachute_lite. running
[ 39] [190] Snipers RBS 20.06.06 SKAJIbnEJIb snipers_rbs.amx running
[ 40] Damager 0.0.5 steelzzz damager.amxx running
[ 41] Night VIPs Private Racoon night_vips.amxx running
[ 42] Top Awards 1.2.0 szawesome top_awards.amxx running
[ 43] [ReAPI] Best player of 1.1.2 F@nt0M best_player_of_ running
[ 44] Lite Admin ESP 1.0 neygomon lite_admin_esp. running
[ 45] [ReAPI] Healthnade 0.0.8f DEV-CS.RU Commun reapi_healthnad running
[ 46] [190] SlayLosers RBS 20.06.06 SKAJIbnEJIb & d3 slaylosers_rbs. running
[ 47] [ReAPI] Block 'Fire in 0.0.1 sergrib reapi_block_FIT running
[ 48] Injector X 1.0 Deadly|Darkness dd_injectorX.am running
[ 49] Kills Counter 0.3 serfreeman1337 kills_counter.a running
[ 50] Master Servers Check 3.7 Javekson ms_check.amxx running
50 plugins, 50 running
Автор плагина
silent - neygomon
Версия плагина
2.1
Исходный код
#include <amxmodx>
#include <reapi>

enum SectionBits
{
SECTION_WEAPONS,
SECTION_ITEMS
};
new g_BitsItemsBlocked[SectionBits];

public plugin_init()
{
register_plugin("Weapon Restrict", "2.1", "s1lent & neugomon");

LoadCfg();
RegisterHookChain(RG_CBasePlayer_HasRestrictItem, "fwdHasRestrictItemPre", false);
}

public fwdHasRestrictItemPre(const id, const ItemID:item, ItemRestType:type)
{
if((item < ITEM_NVG) ? g_BitsItemsBlocked[SECTION_WEAPONS] & (1 << any:item) :
g_BitsItemsBlocked[SECTION_ITEMS] & (1 << any:(item % ITEM_NVG)))
{
if(type == ITEM_TYPE_BUYING)
client_print(id, print_center, "*** Покупка запрещена! ***");

SetHookChainReturn(ATYPE_INTEGER, 1);
return HC_SUPERCEDE;
}
return HC_CONTINUE;
}

LoadCfg()
{
new szPath[64];
new szMapName[32]
new szLoadedConfig[96];
get_localinfo("amxx_configsdir", szPath, charsmax(szPath));
rh_get_mapname(szMapName, charsmax(szMapName));

formatex(szLoadedConfig, charsmax(szLoadedConfig), "%s/weaponrest/%s.ini", szPath, szMapName);

new fp = fopen(szLoadedConfig, "rt");
if(!fp)
{
formatex(szLoadedConfig, charsmax(szLoadedConfig), "%s/weaponrest/default.ini", szPath);
if(!(fp = fopen(szLoadedConfig, "rt")))
set_fail_state("Configs not read :(");
}

new Trie:tWeapons = TrieCreate();
new Trie:tItems = TrieCreate();

TrieSetCell(tWeapons, "ITEM_SHIELDGUN",any:ITEM_SHIELDGUN);
TrieSetCell(tWeapons, "ITEM_P228",any:ITEM_P228);
TrieSetCell(tWeapons, "ITEM_GLOCK",any:ITEM_GLOCK);
TrieSetCell(tWeapons, "ITEM_SCOUT",any:ITEM_SCOUT);
TrieSetCell(tWeapons, "ITEM_HEGRENADE", any:ITEM_HEGRENADE);
TrieSetCell(tWeapons, "ITEM_XM1014", any:ITEM_XM1014);
TrieSetCell(tWeapons, "ITEM_C4", any:ITEM_C4);
TrieSetCell(tWeapons, "ITEM_MAC10", any:ITEM_MAC10);
TrieSetCell(tWeapons, "ITEM_AUG", any:ITEM_AUG);
TrieSetCell(tWeapons, "ITEM_SMOKEGRENADE", any:ITEM_SMOKEGRENADE);
TrieSetCell(tWeapons, "ITEM_ELITE", any:ITEM_ELITE);
TrieSetCell(tWeapons, "ITEM_FIVESEVEN", any:ITEM_FIVESEVEN);
TrieSetCell(tWeapons, "ITEM_UMP45", any:ITEM_UMP45);
TrieSetCell(tWeapons, "ITEM_SG550", any:ITEM_SG550);
TrieSetCell(tWeapons, "ITEM_GALIL", any:ITEM_GALIL);
TrieSetCell(tWeapons, "ITEM_FAMAS", any:ITEM_FAMAS);
TrieSetCell(tWeapons, "ITEM_USP", any:ITEM_USP);
TrieSetCell(tWeapons, "ITEM_GLOCK18", any:ITEM_GLOCK18);
TrieSetCell(tWeapons, "ITEM_AWP", any:ITEM_AWP);
TrieSetCell(tWeapons, "ITEM_MP5N", any:ITEM_MP5N);
TrieSetCell(tWeapons, "ITEM_M249", any:ITEM_M249);
TrieSetCell(tWeapons, "ITEM_M3", any:ITEM_M3);
TrieSetCell(tWeapons, "ITEM_M4A1", any:ITEM_M4A1);
TrieSetCell(tWeapons, "ITEM_TMP", any:ITEM_TMP);
TrieSetCell(tWeapons, "ITEM_G3SG1", any:ITEM_G3SG1);
TrieSetCell(tWeapons, "ITEM_FLASHBANG", any:ITEM_FLASHBANG);
TrieSetCell(tWeapons, "ITEM_DEAGLE", any:ITEM_DEAGLE);
TrieSetCell(tWeapons, "ITEM_SG552", any:ITEM_SG552);
TrieSetCell(tWeapons, "ITEM_AK47", any:ITEM_AK47);
TrieSetCell(tWeapons, "ITEM_KNIFE", any:ITEM_KNIFE);
TrieSetCell(tWeapons, "ITEM_P90", any:ITEM_P90);

TrieSetCell(tItems, "ITEM_NVG", any:ITEM_NVG);
TrieSetCell(tItems, "ITEM_DEFUSEKIT", any:ITEM_DEFUSEKIT);
TrieSetCell(tItems, "ITEM_KEVLAR", any:ITEM_KEVLAR);
TrieSetCell(tItems, "ITEM_ASSAULT", any:ITEM_ASSAULT);
TrieSetCell(tItems, "ITEM_LONGJUMP", any:ITEM_LONGJUMP);
TrieSetCell(tItems, "ITEM_SODACAN", any:ITEM_SODACAN);
TrieSetCell(tItems, "ITEM_HEALTHKIT", any:ITEM_HEALTHKIT);
TrieSetCell(tItems, "ITEM_ANTIDOTE", any:ITEM_ANTIDOTE);
TrieSetCell(tItems, "ITEM_BATTERY", any:ITEM_BATTERY);

new szBuff[32];
new aPos;

while(!feof(fp))
{
fgets(fp, szBuff, charsmax(szBuff));
trim(szBuff);

if(!szBuff[0] || szBuff[0] == ';')
continue;

if(TrieGetCell(tWeapons, szBuff, aPos))
g_BitsItemsBlocked[SECTION_WEAPONS] |= (1 << aPos);
else if(TrieGetCell(tItems, szBuff, aPos))
g_BitsItemsBlocked[SECTION_ITEMS] |= (1 << aPos % any:ITEM_NVG);
}

TrieDestroy(tWeapons);
TrieDestroy(tItems);

fclose(fp);
log_amx("Load items block from '%s'", szLoadedConfig);
}
Доброго времени суток, помощь нужна таварищи
 
В этой теме было размещено решение! Перейти к решению.

Вложения

Сообщения
857
Реакции
144
Помог
25 раз(а)
Просто замени ATYPE_INTEGER -> ATYPE_BOOL
27 Янв 2023
UPD -> Число 1 замени на true/false, смотря что тебе нужно сделать.
 
Сообщения
21
Реакции
1
@ImmortalAmxx,это где заменить ? Объясни если не трудно
 
Сообщения
212
Реакции
25
Помог
1 раз(а)
Efimov1992, 27 строка в коде который ты скинул там замени
 
Сообщения
2,827
Реакции
1,662
Помог
75 раз(а)
Efimov1992, берешь открываешь исходник и поиском прогоняешь на слово.
 
Сообщения
21
Реакции
1
@Алексеич,Число 1 замени на true/false это где там поменять ?
 
Сообщения
942
Реакции
51
Помог
10 раз(а)
Efimov1992,
Код:
SetHookChainReturn(ATYPE_INTEGER, 1);
//ATYPE_INTEGER - может принимать значенте int (0........)
--->
SetHookChainReturn(ATYPE_BOOL, true);
//ATYPE_BOOL - может принимать значенте boll (false или true)
Как тебе еще объяснить?
 
Сообщения
3,331
Реакции
1,464
Помог
124 раз(а)
Efimov1992, на будущее нужно читать всё, что пишется в логе ошибки. В данном случае я про это:
Код:
[AMXX] Run time error 10 (plugin "weaponrest.amxx") (native "SetHookChainReturn") - debug not enabled!
[AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
Если перевести эту строчку, получится:
Код:
Чтобы включить режим отладки, добавьте "debug" после названия плагина в plugins.ini (без кавычек).
А в режиме отладки плагин показывает на какой строке возникает ошибка. Таким образом, ты бы мог сам без ожидания подсказок найти место, где надо было заменить ATYPE_INTEGER на ATYPE_BOOL.
 
Сообщения
942
Реакции
51
Помог
10 раз(а)
Nordic Warrior, ему надо для начала изучить типы значений переменных, что бы не задавать глупых вопросов :secret:
 
Сообщения
515
Реакции
459
Предупреждения
17
Помог
8 раз(а)
изучить типы значений переменных
Какие типы? Вроде чел не задаёт вопрос на разделе скриптинг и не претендует на кодера. Он же не мог знать про типы и это нормально.
 
Сообщения
942
Реакции
51
Помог
10 раз(а)
Причем тут кодер, переспрашивать по 40 раз ты считаешь нормальным?
 
Сообщения
515
Реакции
459
Предупреждения
17
Помог
8 раз(а)
Code_0xABC, не все же интеллектуалы как вы 😂
 
Статус
В этой теме нельзя размещать новые ответы.

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу