public void Execute() { _command = _model.Command; _command.End -= OnCommandFinish; _command.End += OnCommandFinish; _command.Init(_player, _self); _command.Execute(_move); }
private void ExecuteCommandQueue(UserInfo user, long deltaTime) { UserAiStateInfo userAi = user.GetAiStateInfo(); while (userAi.CommandQueue.Count > 0) { IAiCommand cmd = userAi.CommandQueue.Peek(); if (cmd.Execute(deltaTime)) { userAi.CommandQueue.Dequeue(); } else { break; } } }
private void ExecuteCommandQueue(NpcInfo npc, long deltaTime) { NpcAiStateInfo npcAi = npc.GetAiStateInfo(); while (npcAi.CommandQueue.Count > 0) { IAiCommand cmd = npcAi.CommandQueue.Peek(); if (cmd.Execute(deltaTime)) { npcAi.CommandQueue.Dequeue(); } else { break; } } }