本文整理汇总了C#中Agent.IsMasked方法的典型用法代码示例。如果您正苦于以下问题:C# Agent.IsMasked方法的具体用法?C# Agent.IsMasked怎么用?C# Agent.IsMasked使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Agent
的用法示例。
在下文中一共展示了Agent.IsMasked方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: GetTickInfo
public static string GetTickInfo(Agent pAgent, BehaviorTask b, string action)
{
#if !BEHAVIAC_RELEASE
if (Config.IsLoggingOrSocketing)
{
if (pAgent != null && pAgent.IsMasked())
{
//BEHAVIAC_PROFILE("GetTickInfo", true);
string bClassName = b.GetClassNameString();
//filter out intermediate bt, whose class name is empty
if (!string.IsNullOrEmpty(bClassName))
{
int nodeId = b.GetId();
BehaviorTreeTask bt = pAgent != null ? pAgent.btgetcurrent() : null;
//TestBehaviorGroup\scratch.xml.EventetTask[0]:enter
string bpstr = "";
if (bt != null)
{
string btName = bt.GetName();
bpstr = string.Format("{0}.xml->", btName);
}
bpstr += string.Format("{0}[{1}]", bClassName, nodeId);
if (!string.IsNullOrEmpty(action))
{
bpstr += string.Format(":{0}", action);
}
return bpstr;
}
}
}
#endif
return string.Empty;
}
示例2: Log
//action
public void Log(Agent pAgent, string btMsg, EActionResult actionResult, LogMode mode)
{
#if !BEHAVIAC_RELEASE
if (Config.IsLoggingOrSocketing)
{
//BEHAVIAC_PROFILE("LogManager.Instance.LogAction");
if (!System.Object.ReferenceEquals(pAgent, null) && pAgent.IsMasked())
{
if (!string.IsNullOrEmpty(btMsg))
{
string agentClassName = pAgent.GetClassTypeName();
agentClassName = agentClassName.Replace(".", "::");
string agentName = agentClassName;
agentName += "#";
agentName += pAgent.GetName();
string actionResultStr = "";
if (actionResult == EActionResult.EAR_success)
{
actionResultStr = "success";
}
else if (actionResult == EActionResult.EAR_failure)
{
actionResultStr = "failure";
}
else if (actionResult == EActionResult.EAR_all)
{
actionResultStr = "all";
}
else
{
//although actionResult can be EAR_none or EAR_all, but, as this is the real result of an action
//it can only be success or failure
//when it is EAR_none, it is for update
if (actionResult == behaviac.EActionResult.EAR_none && mode == behaviac.LogMode.ELM_tick)
{
actionResultStr = "running";
}
else
{
actionResultStr = "none";
}
}
if (mode == LogMode.ELM_continue)
{
//[continue]Ship.Ship_1 ships\suicide.xml.BehaviorTreeTask[0]:enter [all/success/failure] [1]
int count = Workspace.Instance.GetActionCount(btMsg);
Debug.Check(count > 0);
string buffer = string.Format("[continue]{0} {1} [{2}] [{3}]\n", agentName, btMsg, actionResultStr, count);
Output(pAgent, buffer);
}
else if (mode == LogMode.ELM_breaked)
{
//[breaked]Ship.Ship_1 ships\suicide.xml.BehaviorTreeTask[0]:enter [all/success/failure] [1]
int count = Workspace.Instance.GetActionCount(btMsg);
Debug.Check(count > 0);
string buffer = string.Format("[breaked]{0} {1} [{2}] [{3}]\n", agentName, btMsg, actionResultStr, count);
Output(pAgent, buffer);
}
else if (mode == LogMode.ELM_tick)
{
//[tick]Ship.Ship_1 ships\suicide.xml.BehaviorTreeTask[0]:enter [all/success/failure] [1]
//[tick]Ship.Ship_1 ships\suicide.xml.BehaviorTreeTask[0]:update [1]
//[tick]Ship.Ship_1 ships\suicide.xml.Selector[1]:enter [all/success/failure] [1]
//[tick]Ship.Ship_1 ships\suicide.xml.Selector[1]:update [1]
int count = Workspace.Instance.UpdateActionCount(btMsg);
string buffer = string.Format("[tick]{0} {1} [{2}] [{3}]\n", agentName, btMsg, actionResultStr, count);
Output(pAgent, buffer);
}
else if (mode == LogMode.ELM_jump)
{
string buffer = string.Format("[jump]{0} {1}\n", agentName, btMsg);
Output(pAgent, buffer);
}
else if (mode == LogMode.ELM_return)
{
string buffer = string.Format("[return]{0} {1}\n", agentName, btMsg);
Output(pAgent, buffer);
}
else
{
Debug.Check(false);
}
}
}
}
#endif
//.........这里部分代码省略.........
示例3: GetTickInfo
public static string GetTickInfo(Agent pAgent, BehaviorNode n, string action)
{
#if !BEHAVIAC_RELEASE
if (Config.IsLoggingOrSocketing)
{
if (pAgent != null && pAgent.IsMasked())
{
//BEHAVIAC_PROFILE("GetTickInfo", true);
string bClassName = n.GetClassNameString();
//filter out intermediate bt, whose class name is empty
if (!string.IsNullOrEmpty(bClassName))
{
string btName = GetParentTreeName(n);
string bpstr = "";
if (!string.IsNullOrEmpty(btName))
{
bpstr = string.Format("{0}.xml->", btName);
}
int nodeId = n.GetId();
bpstr += string.Format("{0}[{1}]", bClassName, nodeId);
if (!string.IsNullOrEmpty(action))
{
bpstr += string.Format(":{0}", action);
}
return bpstr;
}
}
}
#endif
return string.Empty;
}
示例4: Log
//property
public static void Log(Agent pAgent, string typeName, string varName, string value)
{
#if !BEHAVIAC_RELEASE
if (Config.IsLoggingOrSocketing)
{
//BEHAVIAC_PROFILE("LogManager.LogVar");
if (!System.Object.ReferenceEquals(pAgent, null) && pAgent.IsMasked())
{
string agentClassName = pAgent.GetClassTypeName();
string agentInstanceName = pAgent.GetName();
agentClassName = agentClassName.Replace(".", "::");
agentInstanceName = agentInstanceName.Replace(".", "::");
//[property]WorldState.World WorldState.time.276854364
//[property]Ship.Ship_1 GameObject.HP.100
//[property]Ship.Ship_1 GameObject.age.0
//[property]Ship.Ship_1 GameObject.speed.0.000000
string buffer;
bool bIsPar = Utils.IsParVar(varName);
if (bIsPar)
{
string tn = typeName;
//filter out "signed "
tn.Replace("signed ", "");
buffer = string.Format("[property]{0}#{1} {2} {3}->{4}\n", agentClassName, agentInstanceName, tn, varName, value);
}
else
{
buffer = string.Format("[property]{0}#{1} {2}->{3}\n", agentClassName, agentInstanceName, varName, value);
}
Output(pAgent, buffer);
SocketUtils.SendText(buffer);
}
}
#endif
}