public override TickResult Tick(AgentMemory am) { if (am.IsRunning(ID) == false) { am.SetInt(ID, "lastRunningNode", 0); am.StartRunning(ID); } for (int node = am.GetInt(ID, "lastRunningNode", 0); node < Children.Count; node++) { TickResult result = TickChild(Children[node], am); if (result == TickResult.Success) { // Sprawdzamy następny continue; } else if (result == TickResult.Running) { am.SetInt(ID, "lastRunningNode", node); return(result); } else { // Porażka lub błąd - zaczynamy od nowa am.StopRunning(ID); return(result); } } am.StopRunning(ID); return(TickResult.Success); }
public override TickResult Tick(AgentMemory agentMemory) { if (agentMemory.IsRunning(ID) == false) { agentMemory.SetInt(ID, "lastRunningNode", 0); agentMemory.StartRunning(ID); } for (int node = agentMemory.GetInt(ID, "lastRunningNode", 0); node < Children.Count; node++) { TickResult result = TickChild(Children[node], agentMemory); if (result == TickResult.Failure) { continue; } else if (result == TickResult.Running) { agentMemory.SetInt(ID, "lastRunningNode", node); return(result); } else { agentMemory.StopRunning(ID); return(result); } } agentMemory.StopRunning(ID); return(TickResult.Failure); }
public TickResult Tick(AgentMemory agentMemory) { agentMemory.ResetActiveNodesList(); agentMemory.ProcessTimers(agentMemory.DeltaTime); agentMemory.CurrentTree = this; TickResult result = Node.TickChild(Root, agentMemory); return(result); }
public override TickResult Tick(AgentMemory am) { for (int i = 0; i < Children.Count; i++) { TickResult result = TickChild(Children[i], am); if (result != TickResult.Success) { return(result); } } return(TickResult.Success); }
public static string GetReply(TickResultFlag flag, ArcadeUser user = null, TickResult result = null) { IEnumerable <CasinoReply> replies = GetReplies(flag); if (user != null && result != null) { replies = replies.Where(x => MeetsCriteria(x, user, result)); } if (Check.NotNullOrEmpty(replies)) { return(Randomizer.Choose(replies).ToString(user, result)); } return(GetGeneric(flag)); }
public override TickResult Tick(AgentMemory agentMemory) { TickResult result = TickChild(Child, agentMemory); if (result == TickResult.Failure) { return(TickResult.Success); } else if (result == TickResult.Success) { return(TickResult.Failure); } else { return(result); } }
public override TickResult Tick(AgentMemory agentMemory) { for (int i = 0; i < Children.Count; i++) { TickResult result = TickChild(Children[i], agentMemory); if (result == TickResult.Failure) { continue; } else { return(result); } } return(TickResult.Failure); }
public TickResult Tick() { if (null == mList) { return(TickResult.Finished); } TickResult result = TickResult.Finished; mList.ForEach(delegate(Trigger t) { if (t.Tick() == TickResult.Running) { result = TickResult.Running; } }); return(result); }
protected override TickResult OnTick() { if (TickResult.Finished == base.OnTick()) { return(TickResult.Finished); } TickResult result = TickResult.Finished; foreach (Action action in mList) { if (TickResult.Running == action.Tick()) { result = TickResult.Running; } } return(result); }
public override TickResult Tick(AgentMemory agentMemory) { ExampleNodeData data = agentMemory.GetObject(ID) as ExampleNodeData; if (data == null) { return(TickResult.Error); } TickResult result = TickChild(hiddenWaitNode, agentMemory); if (result == TickResult.Running) { data.NumberOfTicks++; return(TickResult.Running); } else { return(TickResult.Success); } }
public async Task DoublerAsync(long wager = 0, int expectedTick = 1, TickWinMethod method = TickWinMethod.Below) { if (wager < 0) { await Context.Channel.SendMessageAsync($"> 👁️ You can't specify a **negative** value.\n> *\"I know what you were trying to do.\"*"); return; } if (wager == 0) { // $"> ⚠️ You need to specify a positive amount of **Chips** to bet." await Context.Channel.SendMessageAsync(CommandDetailsViewer.WriteTick()); return; } if (wager > Context.Account.ChipBalance) { await Context.Channel.SendMessageAsync($"> ⚠️ You don't have enough **Chips** to bet with."); return; } if (expectedTick <= 0) { await Context.Channel.SendMessageAsync($"> ⚠️ You have specified an invalid tick. Try something that's above **0**."); return; } var tick = new Tick(expectedTick, method); TickResult result = tick.Next(wager, Context.Account.GetVar(TickStats.CurrentLossStreak)); Message message = result.ApplyAndDisplay(Context.Account); await Context.Channel.SendMessageAsync(Context.Account, message); }
public static TickResult TickChild(Node child, AgentMemory agentMemory) { if (child.CheckPrecondition(agentMemory) == false) { return(TickResult.Failure); } if (child.Activates) { TickResult result = child.Tick(agentMemory); return(result); } else { agentMemory.ActivateNode(child.ID); TickResult result = child.Tick(agentMemory); if (result != TickResult.Running) { agentMemory.DeactivateNode(child.ID); } return(result); } }