Jak sprawdzić czy gracz jest zasłonięty tarczą (ma włączoną tarcze) ?
Edited by sebacs2, 03.07.2014 15:50.
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.
|
Posted 03.07.2014 15:47
Jak sprawdzić czy gracz jest zasłonięty tarczą (ma włączoną tarcze) ?
Edited by sebacs2, 03.07.2014 15:50.
Zapraszam na sieć serwerów Cs-KoRea.pl
Serwer [FFA+BF2] 31.186.83.100:27041 Serwer [Cod] 31.186.83.100:27046
Posted 03.07.2014 18:49
Moduły:
Cstrike --> cs_get_user_shield
Fakemeta:
GetPlayerShield(id) { const OFFSET_SHIELD = 510 const HAS_SHIELD = (1<<24) return get_pdata_int(id,OFFSET_SHIELD,5) & HAS_SHIELD ? 1:0 }
Posted 03.07.2014 21:47
ale to tylko pokazuje czy ma tarcze, a nie czy jest nią zasłonięty
Zapraszam na sieć serwerów Cs-KoRea.pl
Serwer [FFA+BF2] 31.186.83.100:27041 Serwer [Cod] 31.186.83.100:27046
Posted 03.07.2014 22:21
Wybacz źle cię zrozumiałem (moja wina). Trochę pokombinowałem i proszę:
bool:BehindShield(id) { const m_pActiveItem = 373 const OFFSET_SHIELD = 510 const HAS_SHIELD = (1<<24) const m_fWeaponState = 74 const WEAPONSTATE_SHIELD_DRAWN = (1<<5) if(is_user_alive(id) && get_pdata_int(id,OFFSET_SHIELD,5) & HAS_SHIELD) { new wid = get_pdata_cbase(id,m_pActiveItem,5) if(pev_valid(wid) == 2 && get_pdata_int(wid,m_fWeaponState,4) & WEAPONSTATE_SHIELD_DRAWN) return true } return false }
Posted 03.07.2014 23:00
Znacznie szybciej będzie tak:
#define SHIELD 98 bool:BehindShield(id) { if(!is_user_alive(id) || pev(id, pev_sequence) != SHIELD) return false return true }
Posted 04.07.2014 06:05
pev_sequence spada o 1~5(w zależności od czegoś) zawsze jak gracz trzyma Ctrl (jak puszcza to wzrasta) tzn. jeśli gracz zasłoni się tarczą to twój kod zadziała ale jeś dodatkowo kucnie to już nieZnacznie szybciej będzie tak:
bool:BehindShield(id) { const OFFSET_SHIELD = 510 const m_bUsesShield = (1<<16) if(is_user_alive(id) && get_pdata_int(id,OFFSET_SHIELD,5) & m_bUsesShield) return true return false }
Edited by BlackPerfum, 04.07.2014 06:16.
Posted 04.07.2014 08:28
pev_sequence spada o 1~5(w zależności od czegoś) zawsze jak gracz trzyma Ctrl (jak puszcza to wzrasta) tzn. jeśli gracz zasłoni się tarczą to twój kod zadziała ale jeś dodatkowo kucnie to już nie
ID animacji przy ducku to 97 więc nie problem to sprawdzić
0 members, 1 guests, 0 anonymous users