This commit is contained in:
aozhiwei 2024-03-28 11:44:43 +08:00
parent 5684536a8e
commit c81d94cf38
7 changed files with 133 additions and 100 deletions

View File

@ -164,6 +164,12 @@ template<> inline void HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_ResetUs
this->HeroAgent::ResetUseSkillTimes(); this->HeroAgent::ResetUseSkillTimes();
} }
struct METHOD_TYPE_HeroAgent_SearchHumanEnemy { };
template<> inline behaviac::EBTStatus HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_SearchHumanEnemy>(int p0)
{
return this->HeroAgent::SearchHumanEnemy(p0);
}
struct METHOD_TYPE_HeroAgent_SearchPickupObj { }; struct METHOD_TYPE_HeroAgent_SearchPickupObj { };
template<> inline int HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_SearchPickupObj>() template<> inline int HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_SearchPickupObj>()
{ {

View File

@ -633,7 +633,7 @@ namespace behaviac
virtual bool load() virtual bool load()
{ {
AgentMeta::SetTotalSignature(4051514415u); AgentMeta::SetTotalSignature(2686576916u);
AgentMeta* meta = NULL; AgentMeta* meta = NULL;
BEHAVIAC_UNUSED_VAR(meta); BEHAVIAC_UNUSED_VAR(meta);
@ -750,7 +750,7 @@ namespace behaviac
meta->RegisterMethod(502968959u, BEHAVIAC_NEW CMethod_behaviac_Agent_VectorRemove()); meta->RegisterMethod(502968959u, BEHAVIAC_NEW CMethod_behaviac_Agent_VectorRemove());
// HeroAgent // HeroAgent
meta = BEHAVIAC_NEW AgentMeta(254256538u); meta = BEHAVIAC_NEW AgentMeta(1955586164u);
AgentMeta::GetAgentMetas()[2270112014u] = meta; AgentMeta::GetAgentMetas()[2270112014u] = meta;
meta->RegisterMemberProperty(2706111800u, BEHAVIAC_NEW CMemberProperty< TargetAgent* >("current_target_agent", Set_HeroAgent_current_target_agent, Get_HeroAgent_current_target_agent)); meta->RegisterMemberProperty(2706111800u, BEHAVIAC_NEW CMemberProperty< TargetAgent* >("current_target_agent", Set_HeroAgent_current_target_agent, Get_HeroAgent_current_target_agent));
meta->RegisterMemberProperty(3525744799u, BEHAVIAC_NEW CMemberProperty< TeammateAgent* >("current_teammate_agent", Set_HeroAgent_current_teammate_agent, Get_HeroAgent_current_teammate_agent)); meta->RegisterMemberProperty(3525744799u, BEHAVIAC_NEW CMemberProperty< TeammateAgent* >("current_teammate_agent", Set_HeroAgent_current_teammate_agent, Get_HeroAgent_current_teammate_agent));
@ -884,6 +884,7 @@ namespace behaviac
meta->RegisterMethod(3146209884u, BEHAVIAC_NEW CAgentMethodVoid_1<glm::vec3&>(FunctionPointer_HeroAgent_RunAway) /* RunAway */); meta->RegisterMethod(3146209884u, BEHAVIAC_NEW CAgentMethodVoid_1<glm::vec3&>(FunctionPointer_HeroAgent_RunAway) /* RunAway */);
meta->RegisterMethod(160678866u, BEHAVIAC_NEW CAgentMethodVoid_3<int, int, int>(FunctionPointer_HeroAgent_RunGas) /* RunGas */); meta->RegisterMethod(160678866u, BEHAVIAC_NEW CAgentMethodVoid_3<int, int, int>(FunctionPointer_HeroAgent_RunGas) /* RunGas */);
meta->RegisterMethod(3025058903u, BEHAVIAC_NEW CAgentMethod_1< behaviac::EBTStatus, float >(FunctionPointer_HeroAgent_SearchEnemy)); meta->RegisterMethod(3025058903u, BEHAVIAC_NEW CAgentMethod_1< behaviac::EBTStatus, float >(FunctionPointer_HeroAgent_SearchEnemy));
meta->RegisterMethod(3238208553u, BEHAVIAC_NEW CAgentMethod_1< behaviac::EBTStatus, int >(FunctionPointer_HeroAgent_SearchHumanEnemy));
meta->RegisterMethod(1182328469u, BEHAVIAC_NEW CAgentMethod< int >(FunctionPointer_HeroAgent_SearchPickupObj)); meta->RegisterMethod(1182328469u, BEHAVIAC_NEW CAgentMethod< int >(FunctionPointer_HeroAgent_SearchPickupObj));
meta->RegisterMethod(3477639065u, BEHAVIAC_NEW CAgentMethod_1< bool, int >(FunctionPointer_HeroAgent_SearchTeammate)); meta->RegisterMethod(3477639065u, BEHAVIAC_NEW CAgentMethod_1< bool, int >(FunctionPointer_HeroAgent_SearchTeammate));
meta->RegisterMethod(2380700906u, BEHAVIAC_NEW CAgentMethodVoid_1<int>(FunctionPointer_HeroAgent_SendEmote)); meta->RegisterMethod(2380700906u, BEHAVIAC_NEW CAgentMethodVoid_1<int>(FunctionPointer_HeroAgent_SendEmote));
@ -922,7 +923,7 @@ namespace behaviac
meta->RegisterMethod(502968959u, BEHAVIAC_NEW CMethod_behaviac_Agent_VectorRemove()); meta->RegisterMethod(502968959u, BEHAVIAC_NEW CMethod_behaviac_Agent_VectorRemove());
// AndroidAgent // AndroidAgent
meta = BEHAVIAC_NEW AgentMeta(2829637431u); meta = BEHAVIAC_NEW AgentMeta(3669426665u);
AgentMeta::GetAgentMetas()[2475098143u] = meta; AgentMeta::GetAgentMetas()[2475098143u] = meta;
meta->RegisterMemberProperty(2706111800u, BEHAVIAC_NEW CMemberProperty< TargetAgent* >("current_target_agent", Set_HeroAgent_current_target_agent, Get_HeroAgent_current_target_agent)); meta->RegisterMemberProperty(2706111800u, BEHAVIAC_NEW CMemberProperty< TargetAgent* >("current_target_agent", Set_HeroAgent_current_target_agent, Get_HeroAgent_current_target_agent));
meta->RegisterMemberProperty(3525744799u, BEHAVIAC_NEW CMemberProperty< TeammateAgent* >("current_teammate_agent", Set_HeroAgent_current_teammate_agent, Get_HeroAgent_current_teammate_agent)); meta->RegisterMemberProperty(3525744799u, BEHAVIAC_NEW CMemberProperty< TeammateAgent* >("current_teammate_agent", Set_HeroAgent_current_teammate_agent, Get_HeroAgent_current_teammate_agent));
@ -1057,6 +1058,7 @@ namespace behaviac
meta->RegisterMethod(3146209884u, BEHAVIAC_NEW CAgentMethodVoid_1<glm::vec3&>(FunctionPointer_AndroidAgent_RunAway) /* RunAway */); meta->RegisterMethod(3146209884u, BEHAVIAC_NEW CAgentMethodVoid_1<glm::vec3&>(FunctionPointer_AndroidAgent_RunAway) /* RunAway */);
meta->RegisterMethod(160678866u, BEHAVIAC_NEW CAgentMethodVoid_3<int, int, int>(FunctionPointer_AndroidAgent_RunGas) /* RunGas */); meta->RegisterMethod(160678866u, BEHAVIAC_NEW CAgentMethodVoid_3<int, int, int>(FunctionPointer_AndroidAgent_RunGas) /* RunGas */);
meta->RegisterMethod(3025058903u, BEHAVIAC_NEW CAgentMethod_1< behaviac::EBTStatus, float >(FunctionPointer_AndroidAgent_SearchEnemy)); meta->RegisterMethod(3025058903u, BEHAVIAC_NEW CAgentMethod_1< behaviac::EBTStatus, float >(FunctionPointer_AndroidAgent_SearchEnemy));
meta->RegisterMethod(3238208553u, BEHAVIAC_NEW CAgentMethod_1< behaviac::EBTStatus, int >(FunctionPointer_AndroidAgent_SearchHumanEnemy));
meta->RegisterMethod(1182328469u, BEHAVIAC_NEW CAgentMethod< int >(FunctionPointer_AndroidAgent_SearchPickupObj)); meta->RegisterMethod(1182328469u, BEHAVIAC_NEW CAgentMethod< int >(FunctionPointer_AndroidAgent_SearchPickupObj));
meta->RegisterMethod(3477639065u, BEHAVIAC_NEW CAgentMethod_1< bool, int >(FunctionPointer_AndroidAgent_SearchTeammate)); meta->RegisterMethod(3477639065u, BEHAVIAC_NEW CAgentMethod_1< bool, int >(FunctionPointer_AndroidAgent_SearchTeammate));
meta->RegisterMethod(2380700906u, BEHAVIAC_NEW CAgentMethodVoid_1<int>(FunctionPointer_AndroidAgent_SendEmote)); meta->RegisterMethod(2380700906u, BEHAVIAC_NEW CAgentMethodVoid_1<int>(FunctionPointer_AndroidAgent_SendEmote));

View File

@ -257,6 +257,7 @@ namespace behaviac
inline void FunctionPointer_HeroAgent_RunAway(Agent* self, glm::vec3& loc_point0) { } /* RunAway */ inline void FunctionPointer_HeroAgent_RunAway(Agent* self, glm::vec3& loc_point0) { } /* RunAway */
inline void FunctionPointer_HeroAgent_RunGas(Agent* self, int loc_val0, int loc_val1, int loc_val2) { } /* RunGas */ inline void FunctionPointer_HeroAgent_RunGas(Agent* self, int loc_val0, int loc_val1, int loc_val2) { } /* RunGas */
inline behaviac::EBTStatus FunctionPointer_HeroAgent_SearchEnemy(Agent* self, float range) { return ((HeroAgent*)self)->SearchEnemy(range); } inline behaviac::EBTStatus FunctionPointer_HeroAgent_SearchEnemy(Agent* self, float range) { return ((HeroAgent*)self)->SearchEnemy(range); }
inline behaviac::EBTStatus FunctionPointer_HeroAgent_SearchHumanEnemy(Agent* self, int range) { return (behaviac::EBTStatus)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_SearchHumanEnemy, behaviac::EBTStatus, int >(range); }
inline int FunctionPointer_HeroAgent_SearchPickupObj(Agent* self) { return (int)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_SearchPickupObj, int >(); } inline int FunctionPointer_HeroAgent_SearchPickupObj(Agent* self) { return (int)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_SearchPickupObj, int >(); }
inline bool FunctionPointer_HeroAgent_SearchTeammate(Agent* self, int range) { return (bool)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_SearchTeammate, bool, int >(range); } inline bool FunctionPointer_HeroAgent_SearchTeammate(Agent* self, int range) { return (bool)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_SearchTeammate, bool, int >(range); }
inline void FunctionPointer_HeroAgent_SendEmote(Agent* self, int emote) { ((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_SendEmote, void, int >(emote); } inline void FunctionPointer_HeroAgent_SendEmote(Agent* self, int emote) { ((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_SendEmote, void, int >(emote); }
@ -387,6 +388,7 @@ namespace behaviac
inline void FunctionPointer_AndroidAgent_RunAway(Agent* self, glm::vec3& loc_point0) { } /* RunAway */ inline void FunctionPointer_AndroidAgent_RunAway(Agent* self, glm::vec3& loc_point0) { } /* RunAway */
inline void FunctionPointer_AndroidAgent_RunGas(Agent* self, int loc_val0, int loc_val1, int loc_val2) { } /* RunGas */ inline void FunctionPointer_AndroidAgent_RunGas(Agent* self, int loc_val0, int loc_val1, int loc_val2) { } /* RunGas */
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_SearchEnemy(Agent* self, float range) { return ((AndroidAgent*)self)->SearchEnemy(range); } inline behaviac::EBTStatus FunctionPointer_AndroidAgent_SearchEnemy(Agent* self, float range) { return ((AndroidAgent*)self)->SearchEnemy(range); }
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_SearchHumanEnemy(Agent* self, int range) { return (behaviac::EBTStatus)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_SearchHumanEnemy, behaviac::EBTStatus, int >(range); }
inline int FunctionPointer_AndroidAgent_SearchPickupObj(Agent* self) { return (int)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_SearchPickupObj, int >(); } inline int FunctionPointer_AndroidAgent_SearchPickupObj(Agent* self) { return (int)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_SearchPickupObj, int >(); }
inline bool FunctionPointer_AndroidAgent_SearchTeammate(Agent* self, int range) { return (bool)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_SearchTeammate, bool, int >(range); } inline bool FunctionPointer_AndroidAgent_SearchTeammate(Agent* self, int range) { return (bool)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_SearchTeammate, bool, int >(range); }
inline void FunctionPointer_AndroidAgent_SendEmote(Agent* self, int emote) { ((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_SendEmote, void, int >(emote); } inline void FunctionPointer_AndroidAgent_SendEmote(Agent* self, int emote) { ((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_SendEmote, void, int >(emote); }

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!--EXPORTED BY TOOL, DON'T MODIFY IT!--> <!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
<agents version="1" signature="4051514415"> <agents version="1" signature="2686576916">
<agent type="HeroAgent" base="BaseAgent" signature="254256538"> <agent type="HeroAgent" base="BaseAgent" signature="1955586164">
<properties> <properties>
<property name="current_target_agent" type="TargetAgent*" member="false" static="false" defaultvalue="null" /> <property name="current_target_agent" type="TargetAgent*" member="false" static="false" defaultvalue="null" />
<property name="current_teammate_agent" type="TeammateAgent*" member="false" static="false" defaultvalue="null" /> <property name="current_teammate_agent" type="TeammateAgent*" member="false" static="false" defaultvalue="null" />
@ -32,7 +32,7 @@
<property name="tmp_val4" type="float" member="false" static="false" defaultvalue="0" /> <property name="tmp_val4" type="float" member="false" static="false" defaultvalue="0" />
</properties> </properties>
</agent> </agent>
<agent type="AndroidAgent" base="HeroAgent" signature="2829637431"> <agent type="AndroidAgent" base="HeroAgent" signature="3669426665">
<properties> <properties>
<property name="current_target_agent" type="TargetAgent*" member="false" static="false" defaultvalue="null" /> <property name="current_target_agent" type="TargetAgent*" member="false" static="false" defaultvalue="null" />
<property name="current_teammate_agent" type="TeammateAgent*" member="false" static="false" defaultvalue="null" /> <property name="current_teammate_agent" type="TeammateAgent*" member="false" static="false" defaultvalue="null" />

View File

@ -2,67 +2,75 @@
<!--EXPORTED BY TOOL, DON'T MODIFY IT!--> <!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
<!--Source File: monster\8002_thief.xml--> <!--Source File: monster\8002_thief.xml-->
<behavior name="monster/8002_thief" agenttype="HeroAgent" version="5"> <behavior name="monster/8002_thief" agenttype="HeroAgent" version="5">
<node class="IfElse" id="6"> <node class="IfElse" id="19">
<node class="Action" id="7"> <node class="Condition" id="20">
<property Method="Self.HeroAgent::SearchEnemy(300)" /> <property Operator="Equal" />
<property ResultOption="BT_INVALID" /> <property Opl="Self.HeroAgent::IsMobaMode()" />
<property Opr="const bool true" />
</node> </node>
<node class="SelectorProbability" id="8"> <node class="Noop" id="21" />
<node class="DecoratorWeight" id="9"> <node class="IfElse" id="6">
<property DecorateWhenChildEnds="false" /> <node class="Action" id="7">
<property Weight="const int 80" /> <property Method="Self.HeroAgent::SearchEnemy(300)" />
<node class="ReferencedBehavior" id="2">
<property ReferenceBehavior="const string &quot;task/RandomWalk&quot;" />
<property Task="Self.HeroAgent::RandomWalk(0,0,{x=0;y=0;z=0;})" />
</node>
</node>
<node class="DecoratorWeight" id="1">
<property DecorateWhenChildEnds="false" />
<property Weight="const int 20" />
<node class="Action" id="4">
<property Method="Self.HeroAgent::CoIdle(2000,4000)" />
<property ResultOption="BT_INVALID" />
</node>
</node>
</node>
<node class="IfElse" id="0">
<node class="Action" id="3">
<property Method="Self.HeroAgent::SearchEnemy(600)" />
<property ResultOption="BT_INVALID" /> <property ResultOption="BT_INVALID" />
</node> </node>
<node class="SelectorProbability" id="5"> <node class="SelectorProbability" id="8">
<node class="DecoratorWeight" id="10"> <node class="DecoratorWeight" id="9">
<property DecorateWhenChildEnds="false" /> <property DecorateWhenChildEnds="false" />
<property Weight="const int 30" /> <property Weight="const int 80" />
<node class="ReferencedBehavior" id="11"> <node class="ReferencedBehavior" id="2">
<property ReferenceBehavior="const string &quot;task/RandomWalk&quot;" /> <property ReferenceBehavior="const string &quot;task/RandomWalk&quot;" />
<property Task="Self.HeroAgent::RandomWalk(0,0,{x=0;y=0;z=0;})" /> <property Task="Self.HeroAgent::RandomWalk(0,0,{x=0;y=0;z=0;})" />
</node> </node>
</node> </node>
<node class="DecoratorWeight" id="12"> <node class="DecoratorWeight" id="1">
<property DecorateWhenChildEnds="false" /> <property DecorateWhenChildEnds="false" />
<property Weight="const int 70" /> <property Weight="const int 20" />
<node class="Action" id="13"> <node class="Action" id="4">
<property Method="Self.HeroAgent::CoIdle(2000,4000)" /> <property Method="Self.HeroAgent::CoIdle(2000,4000)" />
<property ResultOption="BT_INVALID" /> <property ResultOption="BT_INVALID" />
</node> </node>
</node> </node>
</node> </node>
<node class="SelectorProbability" id="14"> <node class="IfElse" id="0">
<node class="DecoratorWeight" id="15"> <node class="Action" id="3">
<property DecorateWhenChildEnds="false" /> <property Method="Self.HeroAgent::SearchEnemy(600)" />
<property Weight="const int 10" /> <property ResultOption="BT_INVALID" />
<node class="ReferencedBehavior" id="16"> </node>
<property ReferenceBehavior="const string &quot;task/RandomWalk&quot;" /> <node class="SelectorProbability" id="5">
<property Task="Self.HeroAgent::RandomWalk(0,0,{x=0;y=0;z=0;})" /> <node class="DecoratorWeight" id="10">
<property DecorateWhenChildEnds="false" />
<property Weight="const int 30" />
<node class="ReferencedBehavior" id="11">
<property ReferenceBehavior="const string &quot;task/RandomWalk&quot;" />
<property Task="Self.HeroAgent::RandomWalk(0,0,{x=0;y=0;z=0;})" />
</node>
</node>
<node class="DecoratorWeight" id="12">
<property DecorateWhenChildEnds="false" />
<property Weight="const int 70" />
<node class="Action" id="13">
<property Method="Self.HeroAgent::CoIdle(2000,4000)" />
<property ResultOption="BT_INVALID" />
</node>
</node> </node>
</node> </node>
<node class="DecoratorWeight" id="17"> <node class="SelectorProbability" id="14">
<property DecorateWhenChildEnds="false" /> <node class="DecoratorWeight" id="15">
<property Weight="const int 90" /> <property DecorateWhenChildEnds="false" />
<node class="Action" id="18"> <property Weight="const int 10" />
<property Method="Self.HeroAgent::CoIdle(2000,4000)" /> <node class="ReferencedBehavior" id="16">
<property ResultOption="BT_INVALID" /> <property ReferenceBehavior="const string &quot;task/RandomWalk&quot;" />
<property Task="Self.HeroAgent::RandomWalk(0,0,{x=0;y=0;z=0;})" />
</node>
</node>
<node class="DecoratorWeight" id="17">
<property DecorateWhenChildEnds="false" />
<property Weight="const int 90" />
<node class="Action" id="18">
<property Method="Self.HeroAgent::CoIdle(2000,4000)" />
<property ResultOption="BT_INVALID" />
</node>
</node> </node>
</node> </node>
</node> </node>

View File

@ -2,67 +2,75 @@
<!--EXPORTED BY TOOL, DON'T MODIFY IT!--> <!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
<!--Source File: monster\8003_mystery_troop.xml--> <!--Source File: monster\8003_mystery_troop.xml-->
<behavior name="monster/8003_mystery_troop" agenttype="HeroAgent" version="5"> <behavior name="monster/8003_mystery_troop" agenttype="HeroAgent" version="5">
<node class="IfElse" id="6"> <node class="IfElse" id="19">
<node class="Action" id="7"> <node class="Condition" id="20">
<property Method="Self.HeroAgent::SearchEnemy(300)" /> <property Operator="Equal" />
<property ResultOption="BT_INVALID" /> <property Opl="Self.HeroAgent::IsMobaMode()" />
<property Opr="const bool true" />
</node> </node>
<node class="SelectorProbability" id="8"> <node class="Noop" id="21" />
<node class="DecoratorWeight" id="9"> <node class="IfElse" id="6">
<property DecorateWhenChildEnds="false" /> <node class="Action" id="7">
<property Weight="const int 70" /> <property Method="Self.HeroAgent::SearchEnemy(300)" />
<node class="ReferencedBehavior" id="2">
<property ReferenceBehavior="const string &quot;task/RandomWalk&quot;" />
<property Task="Self.HeroAgent::RandomWalk(0,0,{x=0;y=0;z=0;})" />
</node>
</node>
<node class="DecoratorWeight" id="1">
<property DecorateWhenChildEnds="false" />
<property Weight="const int 30" />
<node class="Action" id="4">
<property Method="Self.HeroAgent::CoIdle(2000,4000)" />
<property ResultOption="BT_INVALID" />
</node>
</node>
</node>
<node class="IfElse" id="0">
<node class="Action" id="3">
<property Method="Self.HeroAgent::SearchEnemy(600)" />
<property ResultOption="BT_INVALID" /> <property ResultOption="BT_INVALID" />
</node> </node>
<node class="SelectorProbability" id="5"> <node class="SelectorProbability" id="8">
<node class="DecoratorWeight" id="10"> <node class="DecoratorWeight" id="9">
<property DecorateWhenChildEnds="false" /> <property DecorateWhenChildEnds="false" />
<property Weight="const int 30" /> <property Weight="const int 70" />
<node class="ReferencedBehavior" id="11"> <node class="ReferencedBehavior" id="2">
<property ReferenceBehavior="const string &quot;task/RandomWalk&quot;" /> <property ReferenceBehavior="const string &quot;task/RandomWalk&quot;" />
<property Task="Self.HeroAgent::RandomWalk(0,0,{x=0;y=0;z=0;})" /> <property Task="Self.HeroAgent::RandomWalk(0,0,{x=0;y=0;z=0;})" />
</node> </node>
</node> </node>
<node class="DecoratorWeight" id="12"> <node class="DecoratorWeight" id="1">
<property DecorateWhenChildEnds="false" /> <property DecorateWhenChildEnds="false" />
<property Weight="const int 70" /> <property Weight="const int 30" />
<node class="Action" id="13"> <node class="Action" id="4">
<property Method="Self.HeroAgent::CoIdle(2000,4000)" /> <property Method="Self.HeroAgent::CoIdle(2000,4000)" />
<property ResultOption="BT_INVALID" /> <property ResultOption="BT_INVALID" />
</node> </node>
</node> </node>
</node> </node>
<node class="SelectorProbability" id="14"> <node class="IfElse" id="0">
<node class="DecoratorWeight" id="15"> <node class="Action" id="3">
<property DecorateWhenChildEnds="false" /> <property Method="Self.HeroAgent::SearchEnemy(600)" />
<property Weight="const int 10" /> <property ResultOption="BT_INVALID" />
<node class="ReferencedBehavior" id="16"> </node>
<property ReferenceBehavior="const string &quot;task/RandomWalk&quot;" /> <node class="SelectorProbability" id="5">
<property Task="Self.HeroAgent::RandomWalk(0,0,{x=0;y=0;z=0;})" /> <node class="DecoratorWeight" id="10">
<property DecorateWhenChildEnds="false" />
<property Weight="const int 30" />
<node class="ReferencedBehavior" id="11">
<property ReferenceBehavior="const string &quot;task/RandomWalk&quot;" />
<property Task="Self.HeroAgent::RandomWalk(0,0,{x=0;y=0;z=0;})" />
</node>
</node>
<node class="DecoratorWeight" id="12">
<property DecorateWhenChildEnds="false" />
<property Weight="const int 70" />
<node class="Action" id="13">
<property Method="Self.HeroAgent::CoIdle(2000,4000)" />
<property ResultOption="BT_INVALID" />
</node>
</node> </node>
</node> </node>
<node class="DecoratorWeight" id="17"> <node class="SelectorProbability" id="14">
<property DecorateWhenChildEnds="false" /> <node class="DecoratorWeight" id="15">
<property Weight="const int 90" /> <property DecorateWhenChildEnds="false" />
<node class="Action" id="18"> <property Weight="const int 10" />
<property Method="Self.HeroAgent::CoIdle(2000,4000)" /> <node class="ReferencedBehavior" id="16">
<property ResultOption="BT_INVALID" /> <property ReferenceBehavior="const string &quot;task/RandomWalk&quot;" />
<property Task="Self.HeroAgent::RandomWalk(0,0,{x=0;y=0;z=0;})" />
</node>
</node>
<node class="DecoratorWeight" id="17">
<property DecorateWhenChildEnds="false" />
<property Weight="const int 90" />
<node class="Action" id="18">
<property Method="Self.HeroAgent::CoIdle(2000,4000)" />
<property ResultOption="BT_INVALID" />
</node>
</node> </node>
</node> </node>
</node> </node>

View File

@ -52,10 +52,17 @@
</node> </node>
</node> </node>
<node class="IfElse" id="6"> <node class="IfElse" id="6">
<node class="Condition" id="7"> <node class="Or" id="7">
<property Operator="Equal" /> <node class="Condition" id="40">
<property Opl="Self.HeroAgent::SearchEnemy(500)" /> <property Operator="Equal" />
<property Opr="const behaviac::EBTStatus BT_SUCCESS" /> <property Opl="Self.HeroAgent::SearchHumanEnemy(500)" />
<property Opr="const behaviac::EBTStatus BT_SUCCESS" />
</node>
<node class="Condition" id="41">
<property Operator="Equal" />
<property Opl="Self.HeroAgent::SearchEnemy(500)" />
<property Opr="const behaviac::EBTStatus BT_SUCCESS" />
</node>
</node> </node>
<node class="ReferencedBehavior" id="8"> <node class="ReferencedBehavior" id="8">
<property ReferenceBehavior="const string &quot;task/ChaseToKill&quot;" /> <property ReferenceBehavior="const string &quot;task/ChaseToKill&quot;" />