本文整理汇总了C#中Sim.CanRunAutonomyImmediately方法的典型用法代码示例。如果您正苦于以下问题:C# Sim.CanRunAutonomyImmediately方法的具体用法?C# Sim.CanRunAutonomyImmediately怎么用?C# Sim.CanRunAutonomyImmediately使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Sim
的用法示例。
在下文中一共展示了Sim.CanRunAutonomyImmediately方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: DoInteraction
protected static void DoInteraction(Sim ths)
{
string msg = ths.FullName;
if (AutonomyRestrictions.IsAnyAutonomyEnabled(ths))
{
msg += Common.NewLine + "IsAnyAutonomyEnabled";
if (!ths.Autonomy.InAutonomyManagerQueue)
{
msg += Common.NewLine + "Not InAutonomyManagerQueue";
if (ths.CanRunAutonomyImmediately())
{
msg += Common.NewLine + "CanRunAutonomyImmediately";
AutonomyManager.Add(ths.Autonomy);
}
else
{
float autonomyDelayDuringSocializing;
float timeSinceInteractionQueueBecameEmpty = ths.Autonomy.TimeSinceInteractionQueueBecameEmpty;
if ((ths.Conversation != null) && (ths.IsActiveSim || ((ths.Conversation.WhoTalkedLast != null) && ths.Conversation.WhoTalkedLast.IsActiveSim)))
{
msg += Common.NewLine + "Section A";
autonomyDelayDuringSocializing = Sims3.Gameplay.Autonomy.Autonomy.AutonomyDelayDuringSocializing;
}
else if (ths.mExitReason == ExitReason.UserCanceled)
{
msg += Common.NewLine + "Section B";
autonomyDelayDuringSocializing = Sims3.Gameplay.Autonomy.Autonomy.AutonomyDelayAfterUserCancellation;
}
else
{
msg += Common.NewLine + "Section C";
autonomyDelayDuringSocializing = Sims3.Gameplay.Autonomy.Autonomy.AutonomyDelayNormal;
}
msg += Common.NewLine + "timeSinceInteractionQueueBecameEmpty=" + timeSinceInteractionQueueBecameEmpty;
msg += Common.NewLine + "autonomyDelayDuringSocializing=" + autonomyDelayDuringSocializing;
if (((timeSinceInteractionQueueBecameEmpty < 0f) || (timeSinceInteractionQueueBecameEmpty >= autonomyDelayDuringSocializing)) || ((ths.Service != null) || ths.SimDescription.HasActiveRole))
{
AutonomyManager.Add(ths.Autonomy);
}
}
}
}
Common.Notify(msg);
}