DayZ 1.28
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено

◆ CheckLiftWeapon()

override void ManBase::CheckLiftWeapon ( )
inlineprotected

См. определение в файле PlayerBase.c строка 8212

8213 {
8214 // lift weapon check
8215 if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_CLIENT)
8216 {
8217 Weapon_Base weap;
8218 if (Weapon_Base.CastTo(weap, GetItemInHands()))
8219 {
8220 Object hitObject;
8221 float obstruct;
8222 bool limited = weap.LiftWeaponCheckEx(this, obstruct, hitObject);
8223 if (weap.UseWeaponObstruction(this, obstruct, hitObject))
8224 {
8225 limited = false;
8226 }
8227 else
8228 {
8229 obstruct = 0.0;
8230 }
8231
8232 obstruct = Math.Clamp( obstruct, 0, 1 );
8233
8234 if (m_LiftWeapon_player != limited || m_ObstructWeapon_player != obstruct)
8235 {
8236 SendLiftWeaponSync(limited, obstruct);
8237 }
8238 }
8239 else if (m_LiftWeapon_player || m_ObstructWeapon_player > 0)
8240 {
8241 SendLiftWeaponSync(false);
8242 }
8243 }
8244 }
void SendLiftWeaponSync(bool state, float obstruct=0)
Client-side only.
Определения PlayerBase.c:8173
ItemBase GetItemInHands()
Определения PlayerBase.c:6202
DayZPlayerInstanceType
defined in C++
Определения dayzplayer.c:1068
proto native DayZPlayerInstanceType GetInstanceType()
class LOD Object

Перекрестные ссылки Math::Clamp(), GetInstanceType(), GetItemInHands() и SendLiftWeaponSync().