示例#1
0
        public override void SetCharacter(ICharacter character)
        {
            base.SetCharacter(character);

            if (characterAi != null)
            {
                Destroy(characterAi);
                characterAi = null;
            }

            if (StageController.Instance.IsDisableAi == true)
            {
                return;
            }

            switch (character.CharacterType)
            {
            case CharacterType.Rocketeer:
                characterAi = gameObject.AddComponent <RocketeerAi>();
                break;

            case CharacterType.Heavy:
                characterAi = gameObject.AddComponent <HeavyAi>();
                break;

            case CharacterType.Engineer:
                characterAi = gameObject.AddComponent <EngineerAi>();
                break;

            case CharacterType.Doctor:
                characterAi = gameObject.AddComponent <DoctorAi>();
                break;

            default:
                Debug.LogErrorFormat("Create CharcterAi failed, CharacterType : {0} name : {1}", character.CharacterType, character.name);
                return;
            }
        }
示例#2
0
 public ChaseBehaviour(ICharacterAi ai) : base(ai)
 {
 }
示例#3
0
 public HeavySkillBehaviour(ICharacterAi ai) : base(ai)
 {
     AiState = AiState.Skill;
 }
示例#4
0
 public IAiBehaviour(ICharacterAi ai)
 {
     this.ai = ai;
 }
示例#5
0
 public SleepBehaviour(ICharacterAi ai) : base(ai)
 {
     AiState = AiState.Sleep;
 }
示例#6
0
 public SkillBehaviour(ICharacterAi ai) : base(ai)
 {
 }
示例#7
0
 public MoveBehaviour(ICharacterAi ai) : base(ai)
 {
     AiState = AiState.Move;
 }
示例#8
0
 public EscapeBehaviour(ICharacterAi ai) : base(ai)
 {
     AiState = AiState.Escape;
 }
示例#9
0
 public EngineerSkillBehaviour(ICharacterAi ai) : base(ai)
 {
     AiState = AiState.Skill;
 }
示例#10
0
 public DoctorSkillBehaviour(ICharacterAi ai) : base(ai)
 {
     AiState = AiState.Skill;
 }
示例#11
0
 public RocketeerSkillBehaviour(ICharacterAi ai) : base(ai)
 {
     AiState = AiState.Skill;
 }
示例#12
0
 public DodgeBehaviour(ICharacterAi ai) : base(ai)
 {
     AiState = AiState.Dodge;
 }
示例#13
0
 public ChargeBehaviour(ICharacterAi ai) : base(ai)
 {
     AiState = AiState.Charge;
 }
示例#14
0
 public LaunchBehaviour(ICharacterAi ai) : base(ai)
 {
     AiState = AiState.Launch;
 }