public override void BeginState( IAiProcess currentState) { if(m_ownerUnit.EnableMoving) { if(m_flyUnitAgent == null) { m_flyUnitAgent = new FlyUnitAgent(); m_flyUnitAgent.m_unit = m_ownerUnit; m_ai.m_UpdateMgr.Add(m_flyUnitAgent); } m_flyUnitAgent.enableUpdate = true; if(m_ai.m_TargetUnit != null) { SetTarget (m_ai.m_TargetUnit.Position); } else { SetTarget (m_ai.m_endOfTarget); } } }
public override void EndState(IAiProcess nextState) { if (m_flyUnitAgent != null) { m_flyUnitAgent.StopMove(); } }
public override void EndState(IAiProcess nextState) { for (int i = 0; i < m_ownerUnit.m_mountList.Count; ++i) { m_ownerUnit.m_mountList[i].EndFire(); } }
public override void EndState(IAiProcess nextState) { for(int i = 0; i < m_ownerUnit.m_mountList.Count; ++i) { m_ownerUnit.m_mountList[i].EndFire(); } }
public override void EndState(IAiProcess nextState) { // if(nextState != null) // { // // } }
// public bool UnitTargetIn() // { // if(m_TargetUnit == null) // { // return false; // } // // Vector3 v_PosDist = m_TargetUnit.Position - m_unit.Position; // // float l_bothSize = m_TargetUnit.UnitSize + m_unit.UnitSize; // l_bothSize += m_unit.AttackRange; // if(v_PosDist.sqrMagnitude <= l_bothSize*l_bothSize) // { // return true; // } // // return false; // } public void UpdateAI() { if (m_nextAiProcess != m_currentAiProcess) { IAiProcess nextAiProcess = m_nextAiProcess; IAiProcess currentProcess = m_currentAiProcess; if (currentProcess != null) { currentProcess.EndState(nextAiProcess); } if (nextAiProcess != null) { nextAiProcess.BeginState(currentProcess); } m_currentAiProcess = m_nextAiProcess; } if (m_currentAiProcess != null) { m_currentAiProcess.Update(); } if (m_UnitAttribute.HP <= 0 && m_dead == false) { m_dead = true; SetNextProcess(eAiProcess.fly_die); } m_UpdateMgr.Update(); }
public override void BeginState(IAiProcess currentState) { // if(currentState != null) // { // // } m_startTime = Time.realtimeSinceStartup; }
public override void EndState(IAiProcess nextState) { if (nextState != null) { } else { } }
public override void BeginState(IAiProcess currentState) { if (currentState != null) { } else { } m_waitTime = m_waitTimeMax; }
public override void EndState(IAiProcess nextState) { if(m_UnityActionDeadEnd != null && m_UnityActionDeadEnd.Target != null) { m_UnityActionDeadEnd.Invoke(); } GameMgr.Ins.m_unitMgr.RemoveUnit(m_ownerUnit); m_dead = true; }
public override void EndState(IAiProcess nextState) { if (m_UnityActionDeadEnd != null && m_UnityActionDeadEnd.Target != null) { m_UnityActionDeadEnd.Invoke(); } GameMgr.Ins.m_unitMgr.RemoveUnit(m_ownerUnit); m_dead = true; }
public override void EndState(IAiProcess nextState) { if(nextState != null) { } else { } }
public void SetNextProcess(eAiProcess eaiProcessName) { if (eaiProcessName == eAiProcess.Max) { m_nextAiProcess = null; } else { m_nextAiProcess = m_AiProcessList [(int)eaiProcessName]; } }
public override void BeginState(IAiProcess currentState) { if(currentState != null) { } else { } m_waitTime = m_waitTimeMax; }
public void AddState(eAiProcess eaiProcessName, IAiProcess aiProcess) { if (aiProcess != null) { m_AiProcessList[(int)eaiProcessName] = aiProcess; aiProcess.SetOwnerUnit(this.m_unit, eaiProcessName); } else { Debug.LogError("Error State is null"); } }
public override void BeginState(IAiProcess currentState) { if (m_ai.m_TargetUnit != null) { m_lastMoveTarget = m_ai.m_endOfTarget; m_ownerUnit.Move(m_ai.m_TargetUnit.Position); } else { m_lastMoveTarget = m_ai.m_endOfTarget; m_ownerUnit.Move(m_ai.m_endOfTarget); } }
public override void BeginState( IAiProcess currentState) { if(m_ai.m_TargetUnit != null) { m_lastMoveTarget = m_ai.m_endOfTarget; m_ownerUnit.Move(m_ai.m_TargetUnit.Position); } else { m_lastMoveTarget = m_ai.m_endOfTarget; m_ownerUnit.Move(m_ai.m_endOfTarget); } }
public void AddState(eAiProcess eaiProcessName, IAiProcess aiProcess) { if(aiProcess != null) { m_AiProcessList[(int)eaiProcessName] = aiProcess; aiProcess.SetOwnerUnit(this.m_unit, eaiProcessName); } else { Debug.LogError("Error State is null"); } }
public override void BeginState(IAiProcess currentState) { if (m_init == false) { m_init = true; for (int i = 0; i < m_ownerUnit.m_mountList.Count; ++i) { m_ai.m_UpdateMgr.Add(m_ownerUnit.m_mountList[i]); } } if (m_FlyUnitAgent == null) { m_FlyUnitAgent = m_ai.m_UpdateMgr.GetUpdateClass <FlyUnitAgent> (); } }
public override void BeginState(IAiProcess currentState) { m_ownerUnit.m_ai.m_dead = true; m_ownerUnit.StopMove(); m_ownerUnit.Die(); m_ownerUnit.EnableNavAgent = false; m_ownerUnit.m_unitGagebar.gameObject.SetActive(false); m_time = 2; if (m_UnityActionDeadStart != null && m_UnityActionDeadStart.Target != null) { m_UnityActionDeadStart.Invoke(); } }
public override void BeginState(IAiProcess currentState) { if(m_init == false) { m_init = true; for(int i = 0; i < m_ownerUnit.m_mountList.Count; ++i) { m_ai.m_UpdateMgr.Add(m_ownerUnit.m_mountList[i]); } } if(m_FlyUnitAgent == null) { m_FlyUnitAgent = m_ai.m_UpdateMgr.GetUpdateClass<FlyUnitAgent> (); } }
public override void BeginState(IAiProcess currentState) { m_ownerUnit.m_ai.m_dead = true; m_ownerUnit.StopMove(); m_ownerUnit.Die(); m_ownerUnit.EnableNavAgent = false; m_ownerUnit.m_unitGagebar.gameObject.SetActive(false); m_time = 2; if(m_UnityActionDeadStart != null && m_UnityActionDeadStart.Target != null) { m_UnityActionDeadStart.Invoke(); } }
public override void BeginState(IAiProcess currentState) { m_ownerUnit.m_ai.m_dead = true; m_ownerUnit.Die(); m_ownerUnit.m_unitGagebar.gameObject.SetActive(false); m_time = 0; Exploder.ExploderObject l_ExploderObject = m_ownerUnit.GetComponent <Exploder.ExploderObject> (); if (l_ExploderObject != null) { l_ExploderObject.Explode(); } if (m_UnityActionDeadStart != null && m_UnityActionDeadStart.Target != null) { m_UnityActionDeadStart.Invoke(); } }
public override void BeginState(IAiProcess currentState) { //m_currentSkill = this.OwnerUnit.m_baseSkill; if (m_ownerUnit.IsMove()) { m_ownerUnit.StopMove(); } if (!m_ownerUnit.IsAttacking()) { m_ownerUnit.Attack(0); } if (m_ai.m_TargetUnit != null) { m_ownerUnit.LookTarget(m_ai.m_TargetUnit.Position); } m_ownerUnit.SetNavQuality(ObstacleAvoidanceType.NoObstacleAvoidance); }
public override void BeginState(IAiProcess currentState) { //m_currentSkill = this.OwnerUnit.m_baseSkill; if(m_ownerUnit.IsMove()) { m_ownerUnit.StopMove(); } if(!m_ownerUnit.IsAttacking()) { m_ownerUnit.Attack(0); } if(m_ai.m_TargetUnit != null) { m_ownerUnit.LookTarget(m_ai.m_TargetUnit.Position); } m_ownerUnit.SetNavQuality(ObstacleAvoidanceType.NoObstacleAvoidance); }
public override void BeginState(IAiProcess currentState) { if (m_ownerUnit.EnableMoving) { if (m_flyUnitAgent == null) { m_flyUnitAgent = new FlyUnitAgent(); m_flyUnitAgent.m_unit = m_ownerUnit; m_ai.m_UpdateMgr.Add(m_flyUnitAgent); } m_flyUnitAgent.enableUpdate = true; if (m_ai.m_TargetUnit != null) { SetTarget(m_ai.m_TargetUnit.Position); } else { SetTarget(m_ai.m_endOfTarget); } } }
public override void EndState(IAiProcess nextState) { }
public abstract void BeginState(IAiProcess currentState);
public abstract void EndState(IAiProcess nextState);
public override void EndState( IAiProcess nextState) { if(m_flyUnitAgent != null) m_flyUnitAgent.StopMove(); }
public void SetNextProcess(eAiProcess eaiProcessName) { if(eaiProcessName == eAiProcess.Max) { m_nextAiProcess = null; } else { m_nextAiProcess = m_AiProcessList [(int)eaiProcessName]; } }
// public bool UnitTargetIn() // { // if(m_TargetUnit == null) // { // return false; // } // // Vector3 v_PosDist = m_TargetUnit.Position - m_unit.Position; // // float l_bothSize = m_TargetUnit.UnitSize + m_unit.UnitSize; // l_bothSize += m_unit.AttackRange; // if(v_PosDist.sqrMagnitude <= l_bothSize*l_bothSize) // { // return true; // } // // return false; // } public void UpdateAI() { if(m_nextAiProcess != m_currentAiProcess) { IAiProcess nextAiProcess = m_nextAiProcess; IAiProcess currentProcess = m_currentAiProcess; if(currentProcess != null) currentProcess.EndState(nextAiProcess); if(nextAiProcess != null) nextAiProcess.BeginState(currentProcess); m_currentAiProcess = m_nextAiProcess; } if(m_currentAiProcess != null) { m_currentAiProcess.Update(); } if(m_UnitAttribute.HP <= 0 && m_dead == false) { m_dead = true; SetNextProcess(eAiProcess.fly_die); } m_UpdateMgr.Update (); }