Witamy w Nieoficjalnym polskim support'cie AMX Mod X
Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
|
Guest Message by DevFuse
PANDA_2zl
Rejestracja: 13.02.2019Aktualnie: Nieaktywny
Poza forum Ostatnio: dziś, 09:27




Statystyki
- Grupa: Power User
- Całość postów: 831
- Odwiedzin: 10 745
- Tytuł: Czempion
- Wiek: Wiek nie został ustalony
- Urodziny: Data urodzin nie została podana
-
Imię
Michał
-
Płeć
Mężczyzna
-
Lokalizacja
Kraków
Kontakt
227
Wszechwidzący
Narzędzia użytkownika
Ostatnio byli
Moje posty
W temacie: CS-Clutch.pl - Projekt
03.08.2026 17:24
dla tych 5 zapaleńców warto zrobić to forum
W temacie: Szukam pluginu który naprawia wyrzucanie broni powyżej 30
30.03.2026 19:37
jestem ślepy
/* * Hook API function that are available into enum. * Look at the enums for parameter lists. * * @param function The function to hook * @param callback The forward to call * @param post Whether or not to forward this in post * * @return Returns a hook handle. Use EnableHookChain/DisableHookChain to toggle the forward on or off */ native HookChain:RegisterHookChain(ReAPIFunc:function_id, const callback[], post = 0);...
define ReAPIFunc {EngineFunc, GamedllFunc, GamedllFunc_CBaseAnimating, GamedllFunc_CBasePlayer, GamedllFunc_CSGameRules, GamedllFunc_CGrenade, GamedllFunc_CWeaponBox, ReCheckerFunc, GamedllFunc_CBasePlayerWeapon, GamedllFunc_CGib, GamedllFunc_CBaseEntity, GamedllFunc_CBotManager}edict_t* CreateEntity(); edict_t* CreateNamedEntity();Nawet fakemeta ma takie same cuda
a dasz radę mi skompilować ten kod? bo nie chce mi działać, za głupi jestem
W temacie: Szukam pluginu który naprawia wyrzucanie broni powyżej 30
30.03.2026 16:48
Z Piątnicy no bo skąd 🙈🤣majster skąd te eventy wziąłeś? bo bym sam skorzystał
A tak serio: https://github.com/r...ripting/include
wskaż w którym pliku masz te eventy, a najlepiej zacytuj segmenty z nimi, bo chyba jestem ślepy
W temacie: Szukam pluginu który naprawia wyrzucanie broni powyżej 30
30.03.2026 13:31
Spróbujemy to ugryźć inaczejguard_max_weapons "20" - maksymalna ilość broni na mapie // 20 - NS // 25 - Maksymalne dla stabilności // 30 - ryzyko crasha guard_weapon_life "10.0" - czas "życia" broni na ziemi // 10.0 - agresywne usuwanie // 15.0 - optymalne / stabline // 30.0 - długie, możliwy crash guard_max_edicts "900" - maksymalna ilośc encji na serwerze // 850 - bezpieczen / stabilne // 900 - optymalne / stabilne // 1000 - ryzykowne przy NS guard_safe_margin "100" - buffor bezpieczeństwa, plugin nie czeka az osiągniesz wartość z guard_max_edicts tylko reaguje odpowiednio wcześniej // 50 - pozna reakcja, możliwe ryzyko crasha // 100 - optymalne / stabilne // 150 - bezpieczne / stabilne // // dokładnie działa to tak [ guard_max_edicts - guard_safe_margin ] guard_debug "0" - debuger // 0 - off // 1 - on // loguje do konsoli co robi plugin oraz dodatkowo co spamuje enitami z innych pluginów#include <amxmodx> #include <reapi> #define PLUGIN "Entity & Drop Fix" #define VERSION "1.1" #define AUTHOR "Misiaczek ;c / Err0r" new g_pMaxWeapons; new g_pWeaponLife; new g_pMaxEdicts; new g_pSafeMargin; new g_pDebug; new g_iWeaponCount; new g_iEdictCount; public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR); g_pMaxWeapons = register_cvar("guard_max_weapons", "25"); g_pWeaponLife = register_cvar("guard_weapon_life", "15.0"); g_pMaxEdicts = register_cvar("guard_max_edicts", "900"); g_pSafeMargin = register_cvar("guard_safe_margin", "50"); g_pDebug = register_cvar("guard_debug", "0"); RegisterHookChain(RG_CBasePlayer_DropPlayerItem, "OnDrop", false); RegisterHookChain(RG_CreateEntity, "OnEntityCreate", false); RegisterHookChain(RG_RemoveEntity, "OnEntityRemove", true); RegisterHookChain(RG_RoundEnd, "OnRoundEnd", true); set_task(1.0, "CleanupWeapons", _, _, _, "b"); set_task(3.0, "FullSync", _, _, _, "b"); } public plugin_cfg() { FullSync(); } public OnDrop(const id, const char[] item) { if (!is_user_alive(id)) return HC_CONTINUE; new max = get_pcvar_num(g_pMaxWeapons); if (g_iWeaponCount >= max) { if (get_pcvar_num(g_pDebug)) client_print(id, print_center, "[GUARD] Limit broni!"); return HC_SUPERCEDE; } return HC_CONTINUE; } public OnEntityCreate(const ent, const char[] classname[]) { if (!ent) return HC_CONTINUE; new maxEdicts = get_pcvar_num(g_pMaxEdicts); new margin = get_pcvar_num(g_pSafeMargin); if (g_iEdictCount >= (maxEdicts - margin)) { if (IsRemovable(classname)) { if (get_pcvar_num(g_pDebug)) server_print("[GUARD] BLOCK ENTITY: %s", classname); return HC_SUPERCEDE; } } if (equal(classname, "weaponbox")) { new maxWeapons = get_pcvar_num(g_pMaxWeapons); if (g_iWeaponCount >= maxWeapons) { if (get_pcvar_num(g_pDebug)) server_print("[GUARD] BLOCK WEAPONBOX"); return HC_SUPERCEDE; } g_iWeaponCount++; } g_iEdictCount++; return HC_CONTINUE; } public OnEntityRemove(const ent) { if (!is_entity(ent)) return HC_CONTINUE; static classname[32]; get_entvar(ent, var_classname, classname, charsmax(classname)); if (equal(classname, "weaponbox")) { if (g_iWeaponCount > 0) g_iWeaponCount--; } if (g_iEdictCount > 0) g_iEdictCount--; return HC_CONTINUE; } public CleanupWeapons() { new ent = -1; new Float:time = get_gametime(); new Float:lifetime = get_pcvar_float(g_pWeaponLife); while ((ent = rg_find_ent_by_class(ent, "weaponbox"))) { if (!is_entity(ent)) continue; if (IsC4(ent)) continue; new Float:spawn; get_entvar(ent, var_fuser1, spawn); if (spawn == 0.0) { set_entvar(ent, var_fuser1, time); continue; } if ((time - spawn) > lifetime) { rg_remove_entity(ent); } } } public FullSync() { new ent = -1; g_iWeaponCount = 0; g_iEdictCount = 0; while ((ent = rg_find_ent_by_class(ent, "*"))) { if (!is_entity(ent)) continue; g_iEdictCount++; static classname[32]; get_entvar(ent, var_classname, classname, charsmax(classname)); if (equal(classname, "weaponbox") && !IsC4(ent)) { g_iWeaponCount++; } } if (get_pcvar_num(g_pDebug)) { server_print("[GUARD] Edicts: %d | Weapons: %d", g_iEdictCount, g_iWeaponCount); } } public OnRoundEnd() { g_iWeaponCount = 0; } stock bool:IsRemovable(const classname[]) { if (equal(classname, "weaponbox")) return true; if (equal(classname, "armoury_entity")) return true; if (equal(classname, "grenade")) return true; return false; } stock bool:IsC4(ent) { static model[64]; get_entvar(ent, var_model, model, charsmax(model)); return containi(model, "c4") != -1; }
majster skąd te eventy wziąłeś? bo bym sam skorzystał
W temacie: Informacja o rankingu gracza podczas pośmiertnej obserwacji
29.03.2026 15:53
Bez pośpiechu, odwdzięczyłem się zakupem jakiegoś pluginu ze stronki za bodaj 13 PLN
to przepłaciłeś
- AMXX.pl: Support AMX Mod X i SourceMod
- → Przeglądanie profilu: Posty: PANDA_2zl
- Regulamin


Dodatki SourceMod



Moja zawartość