private void AllChangeEnemyMode(Enemy.EnemyState state) { foreach (GameObject obj in enemy_list) { obj.GetComponent <Enemy>().enemy_state = state; } }
private void AllChangeEnemyModeExceptStakeAndStun(Enemy.EnemyState state) { foreach (GameObject obj in enemy_list) { if (obj.GetComponent <Enemy>().enemy_state != Enemy.EnemyState.STAKE && obj.GetComponent <Enemy>().enemy_state != Enemy.EnemyState.STUN) { ChangeEnemyMode(obj, state); } } }
public void ChangeMonsterState(Vector2 roomIdx, Enemy.EnemyState enemyState) { List <GameObject> monterList = sessionArray[(int)roomIdx.y, (int)roomIdx.x].monsterList; Enemy enemy = null; foreach (var monster in monterList) { enemy = monster.GetComponent <Enemy>(); enemy.SetState(enemyState); } }
void OnTriggerStay(Collider col) //コライダーに触れている間 { if (col.tag == "Player") //プレイヤー発見 { Debug.Log("見つけた!"); Enemy.EnemyState state = Enemy.GetState(); //敵キャラクターの状態を取得 //プレイヤーを追いかける設定に変更 if (state == Enemy.EnemyState.Wait || state == Enemy.EnemyState.Walk) { Enemy.SetState(Enemy.EnemyState.Chase, col.transform); } } }
void OnTriggerStay(Collider col) { // プレイヤーキャラクターを発見 if (col.tag == "Player") { // 敵キャラクターの状態を取得 Enemy.EnemyState state = Enemy.GetState(); // 敵キャラクターが追いかける状態でなければ追いかける設定に変更 if (state == Enemy.EnemyState.Wait || state == Enemy.EnemyState.Walk) { Enemy.SetState(Enemy.EnemyState.Chase, col.transform); } } }
protected void AddTimer(float time, Enemy.EnemyState state) { if (timers == null) { timers = new Dictionary <Enemy.EnemyState, Timer>(); timers.Add(state, new Timer(time)); } else { if (!timers.ContainsKey(state)) { timers.Add(state, new Timer(time)); } } }
protected bool IsElapsed(Enemy.EnemyState state) { if (timers.ContainsKey(state)) { bool ret = timers[state].IsElapsed; if (ret) { timers.Remove(state); } return(ret); } else { return(false); } }
public void ChangeEnemyMode(Enemy obj, Enemy.EnemyState state) { obj.enemy_state = state; }
private void ChangeEnemyMode(GameObject obj, Enemy.EnemyState state) { obj.GetComponent <Enemy>().enemy_state = state; }