public void AttackEnemy(GameObject oprt, GameObject from, GameObject enemy, float atk, bool isSplash = false) { GameObject bullet = Instantiate(m_bullet, from.transform) as GameObject; TurnBaseBulletLogic logic = bullet.GetComponent <TurnBaseBulletLogic>(); logic.m_enemy = oprt.GetComponent <TurnBaseEnemyLogic>(); logic.m_target = enemy.transform; logic.m_atk = atk; logic.m_isSplash = isSplash; }
void HitByBullet(TurnBaseBulletLogic logic) { logic.Hit(); m_health -= logic.m_atk; if (m_health <= 0) { logic.DestroyEnemy(gameObject); if (m_TurnBaseManager) { m_TurnBaseManager.GetComponent <TurnBaseManager>().RemoveEnemy(gameObject); } TurnBaseBlockLogic blockLogic = transform.GetChild(0).gameObject.GetComponent <TurnBaseBlockLogic>(); for (int i = 0; i < blockLogic.m_blocked.Count; i++) { blockLogic.m_blocked[i].GetComponent <UnityEngine.AI.NavMeshAgent>().isStopped = false; } Destroy(gameObject); } // if(logic.m_operator.m_buff == Buff.None) // { // m_health -= logic.m_atk; // } }
void HitByBullet(TurnBaseBulletLogic logic) { logic.Hit(); m_health -= logic.m_atk; if (m_health <= 0) { logic.DestroyEnemy(gameObject); if (m_TurnBaseManager) { m_TurnBaseManager.GetComponent <TurnBaseManager>().RemoveEnemy(gameObject); } Destroy(gameObject); } // if(logic.m_operator.m_buff == Buff.None) // { // m_health -= logic.m_atk; // } if (logic.m_operator && logic.m_operator.m_buff == Buff.Decelerate) { m_NavMeshAgent.speed = logic.m_operator.m_debuff * m_Speed; if (logic.m_operator) { m_currentFreq = logic.m_operator.m_debuff * m_freq; m_debuffTimer = logic.m_operator.m_debuffTime; } } else if (logic.m_enemy && logic.m_enemy.m_buff == Buff.Decelerate) { m_NavMeshAgent.speed = logic.m_enemy.m_debuff * m_Speed; if (logic.m_enemy) { m_currentFreq = logic.m_enemy.m_debuff * m_freq; m_debuffTimer = logic.m_enemy.m_debuffTime; } } }