本文整理汇总了C#中IAgentData.PreUpdate方法的典型用法代码示例。如果您正苦于以下问题:C# IAgentData.PreUpdate方法的具体用法?C# IAgentData.PreUpdate怎么用?C# IAgentData.PreUpdate使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IAgentData
的用法示例。
在下文中一共展示了IAgentData.PreUpdate方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Update
/// <summary>
/// Per frame data.
/// </summary>
/// <param name="agentData"> Agent data. </param>
public void Update(IAgentData agentData)
{
if (this.Root == null)
{
return;
}
agentData.CurrentDeciderLevel = 0;
agentData.PreUpdate();
switch (agentData.ExecutionStatus)
{
case ExecutionStatus.None:
case ExecutionStatus.Failed:
case ExecutionStatus.Success:
{
IDecisionData decisionData = null;
if (this.Root.Decide(agentData, ref decisionData) > 0.0f)
{
// Activate decider.
agentData.ExecutionStatus = this.Root.Activate(agentData, decisionData);
if (agentData.ExecutionStatus == ExecutionStatus.Running)
{
// Update decider.
agentData.ExecutionStatus = this.Root.Update(agentData);
}
}
}
break;
case ExecutionStatus.Running:
{
// Update decider.
agentData.ExecutionStatus = this.Root.Update(agentData);
}
break;
}
agentData.PostUpdate();
}