/// <summary> /// Processes this node, deriving whatever information it can. /// </summary> public override void Process() { GameEntityState tempState = new GameEntityState {Id = Id}; _game.ActorStates.Add(Id, tempState); foreach (LogNode curLogNode in Children) { if (curLogNode.GetType() == typeof(TagNode)) { ((TagNode)curLogNode).Process(Id); } else { throw new NotSupportedException(); } } }
private void OnEnable() { _state = GameEntityState.Move; }
protected void Update() { GameEntityState _checkingState = GetCurrentState(); if (_checkingState != GameEntityState.Collision) _state = _checkingState; switch (_checkingState) { case GameEntityState.Wait: OnWait(); break; case GameEntityState.Move: OnMove(); break; case GameEntityState.Attack: OnAttack(); break; case GameEntityState.Prepare: OnPrepare(); break; case GameEntityState.Blink: //InvokeRepeating(); break; case GameEntityState.Death: OnDeath(); break; } if (_isBlink) Blink(); }