public static int S_NormalToTarget(EStance t) { switch (t) { default: case EStance.Normal: return(0); case EStance.Run: case EStance.Crouch: return(2); case EStance.Prone: return(4); } }
public void ChangeStance(EStance targetStance) { if (!curUnit) { return; } EStance curStance = curUnit.GetStance; int targetPoints = 0; switch (curStance) { case EStance.Normal: targetPoints = StaticFunctions.S_NormalToTarget(targetStance); break; case EStance.Run: targetPoints = StaticFunctions.S_NormalToTarget(targetStance); break; case EStance.Crouch: targetPoints = StaticFunctions.S_CrouchToTarget(targetStance); break; case EStance.Prone: targetPoints = StaticFunctions.S_ProneToTarget(targetStance); break; default: break; } if (curUnit.Stats.CurrentActionPoints < targetPoints) { return; } curUnit.Stats.CurrentActionPoints -= targetPoints; UIManager.instance.UpdateAponCharacterPanel(curUnit.Stats.CurrentActionPoints); curUnit.ChangeStance(targetStance); preNode = null; }