/* * FILE: CECHPWorkSit.cs * * DESCRIPTION: Host player sit work * * CONVERTED FROM: EC_HPWorkSit.cpp/EC_HPWorkSit.h */ using BrewMonster; using CSNetwork.GPDataType; namespace BrewMonster.Scripts { public class CECHPWorkSit : CECHPWork { protected bool m_bBeSitting; public CECHPWorkSit(CECHPWorkMan pWorkMan) : base(Host_work_ID.WORK_SIT, pWorkMan) { m_dwMask = Work_mask.MASK_SIT; m_dwTransMask = Work_mask.MASK_STAND; Reset(); } public void SetBeSittingFlag(bool bTrue) { m_bBeSitting = bTrue; } public override void Reset() { base.Reset(); m_bBeSitting = false; } public override bool CopyData(CECHPWork pWork) { if (!base.CopyData(pWork)) return false; CECHPWorkSit pSrc = (CECHPWorkSit)pWork; m_bBeSitting = pSrc.m_bBeSitting; return true; } protected override void OnFirstTick() { m_pHost.m_iMoveMode = (int)Move_Mode.MOVE_STAND; if (m_bBeSitting) m_pHost.PlayAction((int)PLAYER_ACTION_TYPE.ACT_SITDOWN_LOOP); else { m_pHost.PlayAction((int)PLAYER_ACTION_TYPE.ACT_SITDOWN); m_pHost.PlayAction((int)PLAYER_ACTION_TYPE.ACT_SITDOWN_LOOP, true, 200, true); } } public override bool Tick(float dwDeltaTime) { base.Tick(dwDeltaTime); return true; } } }