public abstract string GetAimAnim(E_AimDirection direction, E_CoverPose pose, E_CoverDirection position);
public override string GetAimAnim(E_AimDirection direction, E_CoverPose pose, E_CoverDirection position) { if (BlackBoard.Cover != null) { switch (direction) { case E_AimDirection.Left: switch (position) { case E_CoverDirection.Left: return(pose == E_CoverPose.Stand ? "CoverStandAimLeftMaxL" : "CoverCrouchAimLeftMaxL"); case E_CoverDirection.Right: return(pose == E_CoverPose.Stand ? "CoverStandAimRightMaxL" : "CoverCrouchAimRightMaxL"); default: return(pose == E_CoverPose.Stand ? "" : "CoverCrouchAimCenterMaxL"); } case E_AimDirection.Right: switch (position) { case E_CoverDirection.Left: return(pose == E_CoverPose.Stand ? "CoverStandAimLeftMaxR" : "CoverCrouchAimLeftMaxR"); case E_CoverDirection.Right: return(pose == E_CoverPose.Stand ? "CoverStandAimRightMaxR" : "CoverCrouchAimRightMaxR"); default: return(pose == E_CoverPose.Stand ? "" : "CoverCrouchAimCenterMaxR"); } case E_AimDirection.Up: switch (position) { case E_CoverDirection.Left: return(pose == E_CoverPose.Stand ? "CoverStandAimLeftMaxU" : "CoverCrouchAimLeftMaxU"); case E_CoverDirection.Right: return(pose == E_CoverPose.Stand ? "CoverStandAimRightMaxU" : "CoverCrouchAimRightMaxU"); default: return(pose == E_CoverPose.Stand ? "" : "CoverCrouchAimCenterMaxU"); } case E_AimDirection.Down: switch (position) { case E_CoverDirection.Left: return(pose == E_CoverPose.Stand ? "CoverStandAimLeftMaxD" : "CoverCrouchAimLeftMaxD"); case E_CoverDirection.Right: return(pose == E_CoverPose.Stand ? "CoverStandAimRightMaxD" : "CoverCrouchAimRightMaxD"); default: return(pose == E_CoverPose.Stand ? "" : "CoverCrouchAimCenterMaxD"); } } } else { if (direction == E_AimDirection.Down) { return("AimD"); } else if (direction == E_AimDirection.Up) { return("AimU"); } } throw new System.ArgumentOutOfRangeException(); }