Witam
Jak zrobić aby zostało zablokowane podnoszenie broni?
Jaki event do tego?
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.
|
Najlepsza odpowiedź Gość_21977_* , 18.10.2013 23:37
// sprawdza, czy byt jest graczem, gdzie maxPlayers to liczba slotów na serwerze #define IsPlayer(%1) (1<=%1<=maxPlayers) new maxPlayers; // liczba slotów na serwerze, globalna public plugin_init(){ // (...) // rejestrujemy dostkięcie broni (lub paczki broni) z innym bytem RegisterHam(Ham_Touch, "weaponbox", "HamTouchPre", 0); RegisterHam(Ham_Touch, "armoury_entity", "HamTouchPre", 0); } // pobiera maksymalną liczbę graczy (liczbę slotów) na serwerze, potrzebne do IsPlayer public plugin_cfg(){ maxPlayers=get_maxplayers(); } public HamTouchPre(weapon, id){ // sprawdzamy, czy byt broni jest poprawny, a byt dotykający broń jest żywym graczem if(!pev_valid(weapon) || !IsPlayer(id) || !is_user_alive(id)){ return HAM_IGNORED; } // ignorujemy blokowanie C4, żeby móc podnieść bombę i wykonać cele mapy new name[20]; pev(weapon, pev_model, name, 19); if(containi(name, "w_backpack")!=-1){ return HAM_IGNORED; } // blokujemy podnoszenie broni, można je dodatkowo uwarunkować, etc. return HAM_SUPERCEDE; }Przejdź do postu
Napisano 18.10.2013 15:05
Witam
Jak zrobić aby zostało zablokowane podnoszenie broni?
Jaki event do tego?
Napisano 18.10.2013 23:37 Najlepsza odpowiedź
// sprawdza, czy byt jest graczem, gdzie maxPlayers to liczba slotów na serwerze #define IsPlayer(%1) (1<=%1<=maxPlayers) new maxPlayers; // liczba slotów na serwerze, globalna public plugin_init(){ // (...) // rejestrujemy dostkięcie broni (lub paczki broni) z innym bytem RegisterHam(Ham_Touch, "weaponbox", "HamTouchPre", 0); RegisterHam(Ham_Touch, "armoury_entity", "HamTouchPre", 0); } // pobiera maksymalną liczbę graczy (liczbę slotów) na serwerze, potrzebne do IsPlayer public plugin_cfg(){ maxPlayers=get_maxplayers(); } public HamTouchPre(weapon, id){ // sprawdzamy, czy byt broni jest poprawny, a byt dotykający broń jest żywym graczem if(!pev_valid(weapon) || !IsPlayer(id) || !is_user_alive(id)){ return HAM_IGNORED; } // ignorujemy blokowanie C4, żeby móc podnieść bombę i wykonać cele mapy new name[20]; pev(weapon, pev_model, name, 19); if(containi(name, "w_backpack")!=-1){ return HAM_IGNORED; } // blokujemy podnoszenie broni, można je dodatkowo uwarunkować, etc. return HAM_SUPERCEDE; }
Napisano 19.10.2013 12:41
Super.
Ale do czego służy IsPlayer? Nie lepeij dać is_user_conected lub alive?
0 użytkowników, 0 gości, 0 anonimowych