protected override void onTargetReached(GameObject obj) { TDWorld world = TDWorld.getWorld(); GameObject player = world.getPlayer(); if (obj == player) { return; } TDEnemy tdEnemy = world.getTDEnemy(obj); if (null != tdEnemy) { m_state = State.eFight; return; } if (world.isFakeTarget(obj)) { DestroyObject(obj); } m_state = State.ePatrol; }
protected override void onTargetReached(GameObject obj) { TDWorld world = TDWorld.getWorld(); GameObject player = world.getPlayer(); if (obj == player) { TDPlayer tdP = world.getTDPlayer(); tdP.receiveDamage(1); } DestroyObject(gameObject); }
// Use this for initialization protected override void Start() { base.Start(); GameObject enemyHealthPrefab = (GameObject)Resources.Load("EnemyHealthBarPrefab"); m_healthBar = (GameObject)Instantiate(enemyHealthPrefab, new Vector3(0.5f, 0.5f), new Quaternion()); updateHealthBar(); TDWorld world = TDWorld.getWorld(); GameObject player = world.getPlayer(); hasPathTo(player); m_state = State.eRunToPlayer; m_timer = Time.time; }
void runToPlayer() { TDWorld world = TDWorld.getWorld(); if ((null == m_path) || (Time.time - m_timer > world.m_configuration.enemyRecalcPathTime)) { GameObject player = world.getPlayer(); m_timer = Time.time; hasPathTo(player); } TDHero hero = world.getTDHero(); if (hero.isAlive()) { if ((hero.transform.position - transform.position).magnitude < heroHostileRadius()) { if (Random.value < heroHostileChance()) { cleanPath(); m_state = State.eFightHero; } } } }