Compare commits
81 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
48807ffa1b | ||
![]() |
c78c11d4b0 | ||
![]() |
cf75c3276d | ||
![]() |
2053312e2b | ||
![]() |
aa2105b30c | ||
![]() |
7bdd79eb3a | ||
![]() |
d692c51efa | ||
![]() |
3af700f035 | ||
![]() |
dcd3c603f3 | ||
![]() |
d6f90cd4cb | ||
![]() |
7bf02217b7 | ||
![]() |
65829307d6 | ||
![]() |
48c2919dc7 | ||
![]() |
c07aed183e | ||
![]() |
0d795ff0dc | ||
![]() |
8be63ace09 | ||
![]() |
523420bb8f | ||
![]() |
39989d56da | ||
![]() |
a20f329c6d | ||
![]() |
08ad1ade1c | ||
![]() |
2739cd3f9f | ||
![]() |
6d2528d470 | ||
![]() |
196646803e | ||
![]() |
fa680f707d | ||
![]() |
dabecaffaf | ||
![]() |
ef58abcb27 | ||
![]() |
c22f7b1c7d | ||
![]() |
749e0f19cb | ||
![]() |
2d8089254c | ||
![]() |
608fd18c26 | ||
![]() |
d81957040e | ||
![]() |
e3dc89e56d | ||
![]() |
b67aa400f8 | ||
![]() |
da56c8447d | ||
![]() |
824e4dbe5d | ||
![]() |
50fd07946c | ||
![]() |
122db4bef3 | ||
![]() |
869ba41905 | ||
![]() |
ba2b5ee8d7 | ||
![]() |
be058c8a41 | ||
![]() |
17f8ecccb0 | ||
![]() |
095e35f7e0 | ||
![]() |
fb441acc87 | ||
![]() |
e9b56610ba | ||
![]() |
24a2508473 | ||
![]() |
aaac15a155 | ||
![]() |
1d7e8a1087 | ||
![]() |
1607ee5487 | ||
![]() |
9f0679adc2 | ||
![]() |
79d7cce34b | ||
![]() |
bdb5e79713 | ||
![]() |
7e2f4181b8 | ||
![]() |
8683150ce8 | ||
![]() |
c85563a289 | ||
![]() |
e1e32e2800 | ||
![]() |
15ea46ca30 | ||
![]() |
43ee63e993 | ||
![]() |
a713a90c9e | ||
![]() |
c1a4452086 | ||
![]() |
1632a294c9 | ||
![]() |
dc6b6ac09d | ||
![]() |
beed72f3a9 | ||
![]() |
fd1386e1be | ||
![]() |
3d6b01a527 | ||
![]() |
10c9ce7c68 | ||
![]() |
97fb0f0aa6 | ||
![]() |
2ddbc831ec | ||
![]() |
a3c22feb24 | ||
![]() |
93c3442442 | ||
![]() |
a1a58f1dee | ||
![]() |
755fd5dcd0 | ||
![]() |
edcd30b9e0 | ||
![]() |
99cae679b9 | ||
![]() |
c8f08c2975 | ||
![]() |
1b43f53bb2 | ||
![]() |
685a81bc54 | ||
![]() |
07b3d684ff | ||
![]() |
1fc68a5d59 | ||
![]() |
f8c7e083bf | ||
![]() |
d58896c69a | ||
![]() |
08a2a26b5a |
17
README.md
17
README.md
@ -1,17 +0,0 @@
|
||||
# 拾取逻辑(涵盖上机甲)
|
||||
|
||||
| 函数名 | 函数说明 | 返回值 | 输出参数1 | 输出参数2 | 输出参数3 |
|
||||
|------------------|--------------------------|--------------------------------------|----------------------|-----------|-----------|
|
||||
| SearchPickupObj | 查询可以拾取的对象 | 0:无可拾取对象 1:机甲 2:宝箱 3:其他 | out_point0:对象坐标 | | |
|
||||
| PickupObjIsValid | 可拾取对象当前是否有效 | true: 有效 false:已失效 | | | |
|
||||
| AbandonPickup | 放弃拾取当前物件一段时间 | | | | |
|
||||
| Pickup | 开始拾取 | BT_FAILURE:失败 BT_SUCCESS:成功 | | | |
|
||||
|
||||
# 观战
|
||||
|
||||
SMJoinedNotify
|
||||
SMMapInfo
|
||||
SMUiUpdate
|
||||
https://www.cnblogs.com/fellow1988/p/17263427.html
|
||||
|
||||
export ASAN_OPTIONS=halt_on_error=false:print_scariness=true:fast_unwind_on_malloc=true:detect_leak=1
|
17
server/bin/exported/android_attack.xml
Normal file
17
server/bin/exported/android_attack.xml
Normal file
@ -0,0 +1,17 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: android_attack.xml-->
|
||||
<behavior name="android_attack" agenttype="AndroidAgent" version="5">
|
||||
<pars>
|
||||
<par name="_$local_task_param_$_0" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_1" type="int" value="0" />
|
||||
</pars>
|
||||
<node class="Task" id="0">
|
||||
<property Prototype="Self.BaseAgent::OnAttacked(0,0)" />
|
||||
<property IsHTN="false" />
|
||||
<node class="Action" id="1">
|
||||
<property Method="Self.BaseAgent::CoAttackTarget(int Self.AndroidAgent::_$local_task_param_$_0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
106
server/bin/exported/android_pvp.xml
Normal file
106
server/bin/exported/android_pvp.xml
Normal file
@ -0,0 +1,106 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: android_pvp.xml-->
|
||||
<behavior name="android_pvp" agenttype="AndroidAgent" version="5">
|
||||
<node class="IfElse" id="17">
|
||||
<node class="Condition" id="18">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.BaseAgent::IsGameOver()" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="False" id="7" />
|
||||
<node class="Selector" id="0">
|
||||
<node class="IfElse" id="4">
|
||||
<node class="Condition" id="1">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.AndroidAgent::GetState()" />
|
||||
<property Opr="const State_e kPreBattle" />
|
||||
</node>
|
||||
<node class="SelectorProbability" id="6">
|
||||
<node class="DecoratorWeight" id="8">
|
||||
<property DecorateWhenChildEnds="false" />
|
||||
<property Weight="const int 30" />
|
||||
<attachment class="Event" id="16" flag="event">
|
||||
<property ReferenceFilename="android_attack" />
|
||||
<property Task="Self.BaseAgent::OnAttacked(0,0)" />
|
||||
<property TriggeredOnce="false" />
|
||||
<property TriggerMode="Return" />
|
||||
</attachment>
|
||||
<node class="Action" id="9">
|
||||
<property Method="Self.AndroidAgent::DoIdle(2000,4000)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="DecoratorWeight" id="10">
|
||||
<property DecorateWhenChildEnds="false" />
|
||||
<property Weight="const int 50" />
|
||||
<attachment class="Event" id="25" flag="event">
|
||||
<property ReferenceFilename="android_attack" />
|
||||
<property Task="Self.BaseAgent::OnAttacked(0,0)" />
|
||||
<property TriggeredOnce="false" />
|
||||
<property TriggerMode="Return" />
|
||||
</attachment>
|
||||
<node class="Action" id="11">
|
||||
<property Method="Self.AndroidAgent::DoRandomWalk()" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="DecoratorWeight" id="12">
|
||||
<property DecorateWhenChildEnds="false" />
|
||||
<property Weight="const int 20" />
|
||||
<attachment class="Event" id="26" flag="event">
|
||||
<property ReferenceFilename="android_attack" />
|
||||
<property Task="Self.BaseAgent::OnAttacked(0,0)" />
|
||||
<property TriggeredOnce="false" />
|
||||
<property TriggerMode="Return" />
|
||||
</attachment>
|
||||
<node class="Action" id="13">
|
||||
<property Method="Self.AndroidAgent::DoRandomShot()" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="DecoratorWeight" id="14">
|
||||
<property DecorateWhenChildEnds="false" />
|
||||
<property Weight="const int 5" />
|
||||
<node class="Action" id="15">
|
||||
<property Method="Self.AndroidAgent::DoAttack()" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="DecoratorWeight" id="20">
|
||||
<property DecorateWhenChildEnds="false" />
|
||||
<property Weight="const int 80" />
|
||||
<node class="IfElse" id="21">
|
||||
<node class="Condition" id="22">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.BaseAgent::HasTarget(300)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Action" id="23">
|
||||
<property Method="Self.AndroidAgent::DoPursuit()" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="False" id="24" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
<node class="True" id="19" />
|
||||
</node>
|
||||
<node class="Condition" id="2">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.AndroidAgent::GetState()" />
|
||||
<property Opr="const State_e kFly" />
|
||||
</node>
|
||||
<node class="Condition" id="3">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.AndroidAgent::GetState()" />
|
||||
<property Opr="const State_e kJump" />
|
||||
</node>
|
||||
<node class="Condition" id="5">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.AndroidAgent::GetState()" />
|
||||
<property Opr="const State_e kBattling" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -10,329 +10,54 @@
|
||||
// Agent property and method handlers
|
||||
|
||||
|
||||
struct METHOD_TYPE_BaseAgent_AbortCoroutine { };
|
||||
template<> inline void BaseAgent::_Execute_Method_<METHOD_TYPE_BaseAgent_AbortCoroutine>(CoId_e p0)
|
||||
struct METHOD_TYPE_BaseAgent_HasBuffEffect { };
|
||||
template<> inline bool BaseAgent::_Execute_Method_<METHOD_TYPE_BaseAgent_HasBuffEffect>(int p0)
|
||||
{
|
||||
this->BaseAgent::AbortCoroutine(p0);
|
||||
return this->BaseAgent::HasBuffEffect(p0);
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_BaseAgent_CoTest { };
|
||||
template<> inline behaviac::EBTStatus BaseAgent::_Execute_Method_<METHOD_TYPE_BaseAgent_CoTest>(int p0)
|
||||
struct METHOD_TYPE_BaseAgent_HasTarget { };
|
||||
template<> inline bool BaseAgent::_Execute_Method_<METHOD_TYPE_BaseAgent_HasTarget>(float p0)
|
||||
{
|
||||
return this->BaseAgent::CoTest(p0);
|
||||
return this->BaseAgent::HasTarget(p0);
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_BaseAgent_CoTest1 { };
|
||||
template<> inline behaviac::EBTStatus BaseAgent::_Execute_Method_<METHOD_TYPE_BaseAgent_CoTest1>(int p0)
|
||||
struct METHOD_TYPE_BaseAgent_SetBulletTraceMode { };
|
||||
template<> inline void BaseAgent::_Execute_Method_<METHOD_TYPE_BaseAgent_SetBulletTraceMode>(bool p0)
|
||||
{
|
||||
return this->BaseAgent::CoTest1(p0);
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_BaseAgent_Rand { };
|
||||
template<> inline int BaseAgent::_Execute_Method_<METHOD_TYPE_BaseAgent_Rand>()
|
||||
{
|
||||
return this->BaseAgent::Rand();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_BaseAgent_RandRange { };
|
||||
template<> inline int BaseAgent::_Execute_Method_<METHOD_TYPE_BaseAgent_RandRange>(int p0, int p1)
|
||||
{
|
||||
return this->BaseAgent::RandRange(p0, p1);
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_BaseAgent_Test { };
|
||||
template<> inline int BaseAgent::_Execute_Method_<METHOD_TYPE_BaseAgent_Test>(int p0)
|
||||
{
|
||||
return this->BaseAgent::Test(p0);
|
||||
this->BaseAgent::SetBulletTraceMode(p0);
|
||||
}
|
||||
|
||||
|
||||
struct METHOD_TYPE_RoomAgent_GetHumanNum { };
|
||||
template<> inline int RoomAgent::_Execute_Method_<METHOD_TYPE_RoomAgent_GetHumanNum>()
|
||||
struct METHOD_TYPE_AndroidAgent_DoRandomShot { };
|
||||
template<> inline behaviac::EBTStatus AndroidAgent::_Execute_Method_<METHOD_TYPE_AndroidAgent_DoRandomShot>()
|
||||
{
|
||||
return this->RoomAgent::GetHumanNum();
|
||||
return this->AndroidAgent::DoRandomShot();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_RoomAgent_GetPlayerNum { };
|
||||
template<> inline int RoomAgent::_Execute_Method_<METHOD_TYPE_RoomAgent_GetPlayerNum>()
|
||||
struct METHOD_TYPE_AndroidAgent_GetState { };
|
||||
template<> inline State_e AndroidAgent::_Execute_Method_<METHOD_TYPE_AndroidAgent_GetState>()
|
||||
{
|
||||
return this->RoomAgent::GetPlayerNum();
|
||||
return this->AndroidAgent::GetState();
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
struct METHOD_TYPE_HeroAgent_AbandonPickup { };
|
||||
template<> inline void HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_AbandonPickup>(int p0, int p1)
|
||||
struct METHOD_TYPE_HeroAgent_DoAttack { };
|
||||
template<> inline behaviac::EBTStatus HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_DoAttack>()
|
||||
{
|
||||
this->HeroAgent::AbandonPickup(p0, p1);
|
||||
return this->HeroAgent::DoAttack();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_HeroAgent_Abort { };
|
||||
template<> inline void HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_Abort>(behaviac::string p0, behaviac::vector<int> p1)
|
||||
struct METHOD_TYPE_HeroAgent_DoFlyToMasterAround { };
|
||||
template<> inline behaviac::EBTStatus HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_DoFlyToMasterAround>()
|
||||
{
|
||||
this->HeroAgent::Abort(p0, p1);
|
||||
return this->HeroAgent::DoFlyToMasterAround();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_HeroAgent_CanThrowItem { };
|
||||
template<> inline bool HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_CanThrowItem>(InventorySlot_e p0)
|
||||
struct METHOD_TYPE_HeroAgent_DoFollowMaster { };
|
||||
template<> inline behaviac::EBTStatus HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_DoFollowMaster>()
|
||||
{
|
||||
return this->HeroAgent::CanThrowItem(p0);
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_HeroAgent_CarHasBuffEffect { };
|
||||
template<> inline bool HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_CarHasBuffEffect>(int p0)
|
||||
{
|
||||
return this->HeroAgent::CarHasBuffEffect(p0);
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_HeroAgent_CarHasOil { };
|
||||
template<> inline bool HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_CarHasOil>()
|
||||
{
|
||||
return this->HeroAgent::CarHasOil();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_HeroAgent_ClearEvents { };
|
||||
template<> inline behaviac::EBTStatus HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_ClearEvents>()
|
||||
{
|
||||
return this->HeroAgent::ClearEvents();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_HeroAgent_CoUseSkill { };
|
||||
template<> inline behaviac::EBTStatus HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_CoUseSkill>(int p0)
|
||||
{
|
||||
return this->HeroAgent::CoUseSkill(p0);
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_HeroAgent_DecV { };
|
||||
template<> inline void HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_DecV>(int p0, int p1)
|
||||
{
|
||||
this->HeroAgent::DecV(p0, p1);
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_HeroAgent_GetCarCurOil { };
|
||||
template<> inline bool HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_GetCarCurOil>()
|
||||
{
|
||||
return this->HeroAgent::GetCarCurOil();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_HeroAgent_GetCarMaxOil { };
|
||||
template<> inline float HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_GetCarMaxOil>()
|
||||
{
|
||||
return this->HeroAgent::GetCarMaxOil();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_HeroAgent_GetDown { };
|
||||
template<> inline void HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_GetDown>()
|
||||
{
|
||||
this->HeroAgent::GetDown();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_HeroAgent_GetTeammateManhattanDistance { };
|
||||
template<> inline float HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_GetTeammateManhattanDistance>()
|
||||
{
|
||||
return this->HeroAgent::GetTeammateManhattanDistance();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_HeroAgent_GetTodayBattleTimes { };
|
||||
template<> inline int HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_GetTodayBattleTimes>()
|
||||
{
|
||||
return this->HeroAgent::GetTodayBattleTimes();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_HeroAgent_IsSingleCar { };
|
||||
template<> inline bool HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_IsSingleCar>()
|
||||
{
|
||||
return this->HeroAgent::IsSingleCar();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_HeroAgent_Pickup { };
|
||||
template<> inline behaviac::EBTStatus HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_Pickup>()
|
||||
{
|
||||
return this->HeroAgent::Pickup();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_HeroAgent_PickupObjIsValid { };
|
||||
template<> inline bool HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_PickupObjIsValid>()
|
||||
{
|
||||
return this->HeroAgent::PickupObjIsValid();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_HeroAgent_ResetUseSkillTimes { };
|
||||
template<> inline void HeroAgent::_Execute_Method_<METHOD_TYPE_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 { };
|
||||
template<> inline int HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_SearchPickupObj>()
|
||||
{
|
||||
return this->HeroAgent::SearchPickupObj();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_HeroAgent_SearchTeammate { };
|
||||
template<> inline bool HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_SearchTeammate>(int p0)
|
||||
{
|
||||
return this->HeroAgent::SearchTeammate(p0);
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_HeroAgent_SendEmote { };
|
||||
template<> inline void HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_SendEmote>(int p0)
|
||||
{
|
||||
this->HeroAgent::SendEmote(p0);
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_HeroAgent_SetAttackDir { };
|
||||
template<> inline void HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_SetAttackDir>(const glm::vec3& p0)
|
||||
{
|
||||
this->HeroAgent::SetAttackDir(p0);
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_HeroAgent_SetBulletAngleOffset { };
|
||||
template<> inline void HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_SetBulletAngleOffset>(int p0, int p1)
|
||||
{
|
||||
this->HeroAgent::SetBulletAngleOffset(p0, p1);
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_HeroAgent_SetMoveDir { };
|
||||
template<> inline void HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_SetMoveDir>(const glm::vec3& p0)
|
||||
{
|
||||
this->HeroAgent::SetMoveDir(p0);
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_HeroAgent_SetV { };
|
||||
template<> inline void HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_SetV>(int p0, int p1)
|
||||
{
|
||||
this->HeroAgent::SetV(p0, p1);
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_HeroAgent_ShotNormal { };
|
||||
template<> inline void HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_ShotNormal>(const glm::vec3& p0)
|
||||
{
|
||||
this->HeroAgent::ShotNormal(p0);
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_HeroAgent_SwitchSeat { };
|
||||
template<> inline void HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_SwitchSeat>(int p0)
|
||||
{
|
||||
this->HeroAgent::SwitchSeat(p0);
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_HeroAgent_TargetInShotRange { };
|
||||
template<> inline bool HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_TargetInShotRange>()
|
||||
{
|
||||
return this->HeroAgent::TargetInShotRange();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_HeroAgent_TeammateIsValid { };
|
||||
template<> inline bool HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_TeammateIsValid>()
|
||||
{
|
||||
return this->HeroAgent::TeammateIsValid();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_HeroAgent_ThrowItem { };
|
||||
template<> inline behaviac::EBTStatus HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_ThrowItem>(InventorySlot_e p0)
|
||||
{
|
||||
return this->HeroAgent::ThrowItem(p0);
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_HeroAgent_TrySearchTeammate { };
|
||||
template<> inline behaviac::EBTStatus HeroAgent::_Execute_Method_<METHOD_TYPE_HeroAgent_TrySearchTeammate>(int p0)
|
||||
{
|
||||
return this->HeroAgent::TrySearchTeammate(p0);
|
||||
}
|
||||
|
||||
|
||||
|
||||
struct METHOD_TYPE_MasterAgent_IsValid { };
|
||||
template<> inline bool MasterAgent::_Execute_Method_<METHOD_TYPE_MasterAgent_IsValid>()
|
||||
{
|
||||
return this->MasterAgent::IsValid();
|
||||
}
|
||||
|
||||
|
||||
struct METHOD_TYPE_TeammateAgent_Abandon { };
|
||||
template<> inline void TeammateAgent::_Execute_Method_<METHOD_TYPE_TeammateAgent_Abandon>(int p0, int p1)
|
||||
{
|
||||
this->TeammateAgent::Abandon(p0, p1);
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_TeammateAgent_ClearAbandon { };
|
||||
template<> inline void TeammateAgent::_Execute_Method_<METHOD_TYPE_TeammateAgent_ClearAbandon>()
|
||||
{
|
||||
this->TeammateAgent::ClearAbandon();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_TeammateAgent_GetHeroId { };
|
||||
template<> inline int TeammateAgent::_Execute_Method_<METHOD_TYPE_TeammateAgent_GetHeroId>()
|
||||
{
|
||||
return this->TeammateAgent::GetHeroId();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_TeammateAgent_GetHp { };
|
||||
template<> inline float TeammateAgent::_Execute_Method_<METHOD_TYPE_TeammateAgent_GetHp>()
|
||||
{
|
||||
return this->TeammateAgent::GetHp();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_TeammateAgent_GetHPRate { };
|
||||
template<> inline float TeammateAgent::_Execute_Method_<METHOD_TYPE_TeammateAgent_GetHPRate>()
|
||||
{
|
||||
return this->TeammateAgent::GetHPRate();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_TeammateAgent_GetLevel { };
|
||||
template<> inline int TeammateAgent::_Execute_Method_<METHOD_TYPE_TeammateAgent_GetLevel>()
|
||||
{
|
||||
return this->TeammateAgent::GetLevel();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_TeammateAgent_GetMaxHp { };
|
||||
template<> inline float TeammateAgent::_Execute_Method_<METHOD_TYPE_TeammateAgent_GetMaxHp>()
|
||||
{
|
||||
return this->TeammateAgent::GetMaxHp();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_TeammateAgent_GetPos { };
|
||||
template<> inline glm::vec3 TeammateAgent::_Execute_Method_<METHOD_TYPE_TeammateAgent_GetPos>()
|
||||
{
|
||||
return this->TeammateAgent::GetPos();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_TeammateAgent_GetShotRange { };
|
||||
template<> inline float TeammateAgent::_Execute_Method_<METHOD_TYPE_TeammateAgent_GetShotRange>()
|
||||
{
|
||||
return this->TeammateAgent::GetShotRange();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_TeammateAgent_GetUniId { };
|
||||
template<> inline int TeammateAgent::_Execute_Method_<METHOD_TYPE_TeammateAgent_GetUniId>()
|
||||
{
|
||||
return this->TeammateAgent::GetUniId();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_TeammateAgent_HasBuffEffect { };
|
||||
template<> inline bool TeammateAgent::_Execute_Method_<METHOD_TYPE_TeammateAgent_HasBuffEffect>(int p0)
|
||||
{
|
||||
return this->TeammateAgent::HasBuffEffect(p0);
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_TeammateAgent_IsDead { };
|
||||
template<> inline bool TeammateAgent::_Execute_Method_<METHOD_TYPE_TeammateAgent_IsDead>()
|
||||
{
|
||||
return this->TeammateAgent::IsDead();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_TeammateAgent_IsValid { };
|
||||
template<> inline bool TeammateAgent::_Execute_Method_<METHOD_TYPE_TeammateAgent_IsValid>()
|
||||
{
|
||||
return this->TeammateAgent::IsValid();
|
||||
return this->HeroAgent::DoFollowMaster();
|
||||
}
|
||||
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -16,448 +16,45 @@ namespace behaviac
|
||||
// ---------------------------------------------------------------------
|
||||
|
||||
inline void FunctionPointer_behaviac_Agent_LogMessage(char* param0) { behaviac::Agent::LogMessage(param0); }
|
||||
inline void FunctionPointer_BaseAgent_AbortCoroutine(Agent* self, CoId_e co_id) { ((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_AbortCoroutine, void, CoId_e >(co_id); }
|
||||
inline behaviac::EBTStatus FunctionPointer_BaseAgent_CoTest(Agent* self, int time) { return (behaviac::EBTStatus)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_CoTest, behaviac::EBTStatus, int >(time); }
|
||||
inline behaviac::EBTStatus FunctionPointer_BaseAgent_CoTest1(Agent* self, int time) { return (behaviac::EBTStatus)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_CoTest1, behaviac::EBTStatus, int >(time); }
|
||||
inline int FunctionPointer_BaseAgent_DeltaTime(Agent* self, int time) { return ((BaseAgent*)self)->DeltaTime(time); }
|
||||
inline int FunctionPointer_BaseAgent_GetTickCount(Agent* self) { return ((BaseAgent*)self)->GetTickCount(); }
|
||||
inline behaviac::EBTStatus FunctionPointer_BaseAgent_CoAttackTarget(Agent* self, int target_id) { return ((BaseAgent*)self)->CoAttackTarget(target_id); }
|
||||
inline float FunctionPointer_BaseAgent_GetAttackRange(Agent* self) { return ((BaseAgent*)self)->GetAttackRange(); }
|
||||
inline bool FunctionPointer_BaseAgent_HasBuffEffect(Agent* self, int buff_effect) { return (bool)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_HasBuffEffect, bool, int >(buff_effect); }
|
||||
inline bool FunctionPointer_BaseAgent_HasTarget(Agent* self, float range) { return (bool)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_HasTarget, bool, float >(range); }
|
||||
inline bool FunctionPointer_BaseAgent_IsGameOver(Agent* self) { return ((BaseAgent*)self)->IsGameOver(); }
|
||||
inline void FunctionPointer_BaseAgent_LogMessage(char* param0) { BaseAgent::LogMessage(param0); }
|
||||
inline int FunctionPointer_BaseAgent_Rand(Agent* self) { return (int)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_Rand, int >(); }
|
||||
inline int FunctionPointer_BaseAgent_RandRange(Agent* self, int min_val, int max_val) { return (int)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_RandRange, int, int, int >(min_val, max_val); }
|
||||
inline float FunctionPointer_BaseAgent_RandRangeAsFloat(Agent* self, float min_val, float max_val) { return ((BaseAgent*)self)->RandRangeAsFloat(min_val, max_val); }
|
||||
inline int FunctionPointer_BaseAgent_Test(Agent* self, int p1) { return (int)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_Test, int, int >(p1); }
|
||||
inline void FunctionPointer_RoomAgent_AbortCoroutine(Agent* self, CoId_e co_id) { ((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_AbortCoroutine, void, CoId_e >(co_id); }
|
||||
inline behaviac::EBTStatus FunctionPointer_RoomAgent_CoTest(Agent* self, int time) { return (behaviac::EBTStatus)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_CoTest, behaviac::EBTStatus, int >(time); }
|
||||
inline behaviac::EBTStatus FunctionPointer_RoomAgent_CoTest1(Agent* self, int time) { return (behaviac::EBTStatus)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_CoTest1, behaviac::EBTStatus, int >(time); }
|
||||
inline int FunctionPointer_RoomAgent_DeltaTime(Agent* self, int time) { return ((RoomAgent*)self)->DeltaTime(time); }
|
||||
inline HeroAgent* FunctionPointer_RoomAgent_FindHero(Agent* self, int hero_uniid) { return ((RoomAgent*)self)->FindHero(hero_uniid); }
|
||||
inline int FunctionPointer_RoomAgent_GetAliveHumanNum(Agent* self) { return ((RoomAgent*)self)->GetAliveHumanNum(); }
|
||||
inline int FunctionPointer_RoomAgent_GetAlivePlayerNum(Agent* self) { return ((RoomAgent*)self)->GetAlivePlayerNum(); }
|
||||
inline int FunctionPointer_RoomAgent_GetAliveTeamNum(Agent* self) { return ((RoomAgent*)self)->GetAliveTeamNum(); }
|
||||
inline GasMode_e FunctionPointer_RoomAgent_GetGasMode(Agent* self) { return ((RoomAgent*)self)->GetGasMode(); }
|
||||
inline int FunctionPointer_RoomAgent_GetHumanNum(Agent* self) { return (int)((RoomAgent*)self)->_Execute_Method_<METHOD_TYPE_RoomAgent_GetHumanNum, int >(); }
|
||||
inline int FunctionPointer_RoomAgent_GetMapId(Agent* self) { return ((RoomAgent*)self)->GetMapId(); }
|
||||
inline int FunctionPointer_RoomAgent_GetPlayerNum(Agent* self) { return (int)((RoomAgent*)self)->_Execute_Method_<METHOD_TYPE_RoomAgent_GetPlayerNum, int >(); }
|
||||
inline int FunctionPointer_RoomAgent_GetTeamNum(Agent* self) { return ((RoomAgent*)self)->GetTeamNum(); }
|
||||
inline int FunctionPointer_RoomAgent_GetTickCount(Agent* self) { return ((RoomAgent*)self)->GetTickCount(); }
|
||||
inline bool FunctionPointer_RoomAgent_IsGameOver(Agent* self) { return ((RoomAgent*)self)->IsGameOver(); }
|
||||
inline void FunctionPointer_RoomAgent_LogMessage(char* param0) { RoomAgent::LogMessage(param0); }
|
||||
inline int FunctionPointer_RoomAgent_Rand(Agent* self) { return (int)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_Rand, int >(); }
|
||||
inline int FunctionPointer_RoomAgent_RandRange(Agent* self, int min_val, int max_val) { return (int)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_RandRange, int, int, int >(min_val, max_val); }
|
||||
inline float FunctionPointer_RoomAgent_RandRangeAsFloat(Agent* self, float min_val, float max_val) { return ((RoomAgent*)self)->RandRangeAsFloat(min_val, max_val); }
|
||||
inline int FunctionPointer_RoomAgent_Test(Agent* self, int p1) { return (int)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_Test, int, int >(p1); }
|
||||
inline int FunctionPointer_TeamAgent_GetAlivePlayerNum(Agent* self) { return ((TeamAgent*)self)->GetAlivePlayerNum(); }
|
||||
inline int FunctionPointer_TeamAgent_GetMemberNum(Agent* self) { return ((TeamAgent*)self)->GetMemberNum(); }
|
||||
inline int FunctionPointer_TeamAgent_GetPlayerNum(Agent* self) { return ((TeamAgent*)self)->GetPlayerNum(); }
|
||||
inline void FunctionPointer_TeamAgent_LogMessage(char* param0) { TeamAgent::LogMessage(param0); }
|
||||
inline void FunctionPointer_TargetAgent_Abandon(Agent* self, int min_time, int max_time) { ((TargetAgent*)self)->Abandon(min_time, max_time); }
|
||||
inline void FunctionPointer_TargetAgent_AbortCoroutine(Agent* self, CoId_e co_id) { ((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_AbortCoroutine, void, CoId_e >(co_id); }
|
||||
inline void FunctionPointer_TargetAgent_ClearAbandon(Agent* self) { ((TargetAgent*)self)->ClearAbandon(); }
|
||||
inline behaviac::EBTStatus FunctionPointer_TargetAgent_CoTest(Agent* self, int time) { return (behaviac::EBTStatus)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_CoTest, behaviac::EBTStatus, int >(time); }
|
||||
inline behaviac::EBTStatus FunctionPointer_TargetAgent_CoTest1(Agent* self, int time) { return (behaviac::EBTStatus)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_CoTest1, behaviac::EBTStatus, int >(time); }
|
||||
inline int FunctionPointer_TargetAgent_DeltaTime(Agent* self, int time) { return ((TargetAgent*)self)->DeltaTime(time); }
|
||||
inline int FunctionPointer_TargetAgent_GetHeroId(Agent* self) { return ((TargetAgent*)self)->GetHeroId(); }
|
||||
inline float FunctionPointer_TargetAgent_GetHp(Agent* self) { return ((TargetAgent*)self)->GetHp(); }
|
||||
inline float FunctionPointer_TargetAgent_GetHPRate(Agent* self) { return ((TargetAgent*)self)->GetHPRate(); }
|
||||
inline int FunctionPointer_TargetAgent_GetLevel(Agent* self) { return ((TargetAgent*)self)->GetLevel(); }
|
||||
inline float FunctionPointer_TargetAgent_GetMaxHp(Agent* self) { return ((TargetAgent*)self)->GetMaxHp(); }
|
||||
inline glm::vec3 FunctionPointer_TargetAgent_GetPos(Agent* self) { return ((TargetAgent*)self)->GetPos(); }
|
||||
inline int FunctionPointer_TargetAgent_GetTickCount(Agent* self) { return ((TargetAgent*)self)->GetTickCount(); }
|
||||
inline int FunctionPointer_TargetAgent_GetUniId(Agent* self) { return ((TargetAgent*)self)->GetUniId(); }
|
||||
inline bool FunctionPointer_TargetAgent_HasBuffEffect(Agent* self, BuffEffectType_e effect_id) { return ((TargetAgent*)self)->HasBuffEffect(effect_id); }
|
||||
inline bool FunctionPointer_TargetAgent_IsDead(Agent* self) { return ((TargetAgent*)self)->IsDead(); }
|
||||
inline bool FunctionPointer_TargetAgent_IsGameOver(Agent* self) { return ((TargetAgent*)self)->IsGameOver(); }
|
||||
inline bool FunctionPointer_TargetAgent_IsValid(Agent* self) { return ((TargetAgent*)self)->IsValid(); }
|
||||
inline void FunctionPointer_TargetAgent_LogMessage(char* param0) { TargetAgent::LogMessage(param0); }
|
||||
inline int FunctionPointer_TargetAgent_Rand(Agent* self) { return (int)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_Rand, int >(); }
|
||||
inline int FunctionPointer_TargetAgent_RandRange(Agent* self, int min_val, int max_val) { return (int)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_RandRange, int, int, int >(min_val, max_val); }
|
||||
inline float FunctionPointer_TargetAgent_RandRangeAsFloat(Agent* self, float min_val, float max_val) { return ((TargetAgent*)self)->RandRangeAsFloat(min_val, max_val); }
|
||||
inline int FunctionPointer_TargetAgent_Test(Agent* self, int p1) { return (int)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_Test, int, int >(p1); }
|
||||
|
||||
inline void Set_HeroAgent_current_target_agent(Agent* self, TargetAgent* value) { ((HeroAgent*)self)->current_target_agent = value; };
|
||||
inline const void* Get_HeroAgent_current_target_agent(Agent* self) { return &((HeroAgent*)self)->current_target_agent; };
|
||||
|
||||
inline void Set_HeroAgent_current_teammate_agent(Agent* self, TeammateAgent* value) { ((HeroAgent*)self)->current_teammate_agent = value; };
|
||||
inline const void* Get_HeroAgent_current_teammate_agent(Agent* self) { return &((HeroAgent*)self)->current_teammate_agent; };
|
||||
|
||||
inline void Set_HeroAgent_master_agent(Agent* self, MasterAgent* value) { ((HeroAgent*)self)->master_agent = value; };
|
||||
inline const void* Get_HeroAgent_master_agent(Agent* self) { return &((HeroAgent*)self)->master_agent; };
|
||||
|
||||
inline void Set_HeroAgent_out_errno(Agent* self, int value) { ((HeroAgent*)self)->out_errno = value; };
|
||||
inline const void* Get_HeroAgent_out_errno(Agent* self) { return &((HeroAgent*)self)->out_errno; };
|
||||
|
||||
inline void Set_HeroAgent_out_point0(Agent* self, glm::vec3 value) { ((HeroAgent*)self)->out_point0 = value; };
|
||||
inline const void* Get_HeroAgent_out_point0(Agent* self) { return &((HeroAgent*)self)->out_point0; };
|
||||
|
||||
inline void Set_HeroAgent_out_point1(Agent* self, glm::vec3 value) { ((HeroAgent*)self)->out_point1 = value; };
|
||||
inline const void* Get_HeroAgent_out_point1(Agent* self) { return &((HeroAgent*)self)->out_point1; };
|
||||
|
||||
inline void Set_HeroAgent_out_point2(Agent* self, glm::vec3 value) { ((HeroAgent*)self)->out_point2 = value; };
|
||||
inline const void* Get_HeroAgent_out_point2(Agent* self) { return &((HeroAgent*)self)->out_point2; };
|
||||
|
||||
inline void Set_HeroAgent_out_val0(Agent* self, int value) { ((HeroAgent*)self)->out_val0 = value; };
|
||||
inline const void* Get_HeroAgent_out_val0(Agent* self) { return &((HeroAgent*)self)->out_val0; };
|
||||
|
||||
inline void Set_HeroAgent_out_val1(Agent* self, float value) { ((HeroAgent*)self)->out_val1 = value; };
|
||||
inline const void* Get_HeroAgent_out_val1(Agent* self) { return &((HeroAgent*)self)->out_val1; };
|
||||
|
||||
inline void Set_HeroAgent_out_val2(Agent* self, float value) { ((HeroAgent*)self)->out_val2 = value; };
|
||||
inline const void* Get_HeroAgent_out_val2(Agent* self) { return &((HeroAgent*)self)->out_val2; };
|
||||
|
||||
inline void Set_HeroAgent_out_val3(Agent* self, float value) { ((HeroAgent*)self)->out_val3 = value; };
|
||||
inline const void* Get_HeroAgent_out_val3(Agent* self) { return &((HeroAgent*)self)->out_val3; };
|
||||
|
||||
inline void Set_HeroAgent_out_val4(Agent* self, float value) { ((HeroAgent*)self)->out_val4 = value; };
|
||||
inline const void* Get_HeroAgent_out_val4(Agent* self) { return &((HeroAgent*)self)->out_val4; };
|
||||
|
||||
inline void Set_HeroAgent_room_agent(Agent* self, RoomAgent* value) { ((HeroAgent*)self)->room_agent = value; };
|
||||
inline const void* Get_HeroAgent_room_agent(Agent* self) { return &((HeroAgent*)self)->room_agent; };
|
||||
|
||||
inline void Set_HeroAgent_task_param0(Agent* self, float value) { ((HeroAgent*)self)->task_param0 = value; };
|
||||
inline const void* Get_HeroAgent_task_param0(Agent* self) { return &((HeroAgent*)self)->task_param0; };
|
||||
|
||||
inline void Set_HeroAgent_task_param1(Agent* self, float value) { ((HeroAgent*)self)->task_param1 = value; };
|
||||
inline const void* Get_HeroAgent_task_param1(Agent* self) { return &((HeroAgent*)self)->task_param1; };
|
||||
|
||||
inline void Set_HeroAgent_task_param2(Agent* self, float value) { ((HeroAgent*)self)->task_param2 = value; };
|
||||
inline const void* Get_HeroAgent_task_param2(Agent* self) { return &((HeroAgent*)self)->task_param2; };
|
||||
|
||||
inline void Set_HeroAgent_task_param3(Agent* self, float value) { ((HeroAgent*)self)->task_param3 = value; };
|
||||
inline const void* Get_HeroAgent_task_param3(Agent* self) { return &((HeroAgent*)self)->task_param3; };
|
||||
|
||||
inline void Set_HeroAgent_task_param4(Agent* self, float value) { ((HeroAgent*)self)->task_param4 = value; };
|
||||
inline const void* Get_HeroAgent_task_param4(Agent* self) { return &((HeroAgent*)self)->task_param4; };
|
||||
|
||||
inline void Set_HeroAgent_team_agent(Agent* self, TeamAgent* value) { ((HeroAgent*)self)->team_agent = value; };
|
||||
inline const void* Get_HeroAgent_team_agent(Agent* self) { return &((HeroAgent*)self)->team_agent; };
|
||||
|
||||
inline void Set_HeroAgent_tmp_point0(Agent* self, glm::vec3 value) { ((HeroAgent*)self)->tmp_point0 = value; };
|
||||
inline const void* Get_HeroAgent_tmp_point0(Agent* self) { return &((HeroAgent*)self)->tmp_point0; };
|
||||
|
||||
inline void Set_HeroAgent_tmp_point1(Agent* self, glm::vec3 value) { ((HeroAgent*)self)->tmp_point1 = value; };
|
||||
inline const void* Get_HeroAgent_tmp_point1(Agent* self) { return &((HeroAgent*)self)->tmp_point1; };
|
||||
|
||||
inline void Set_HeroAgent_tmp_point2(Agent* self, glm::vec3 value) { ((HeroAgent*)self)->tmp_point2 = value; };
|
||||
inline const void* Get_HeroAgent_tmp_point2(Agent* self) { return &((HeroAgent*)self)->tmp_point2; };
|
||||
|
||||
inline void Set_HeroAgent_tmp_val0(Agent* self, float value) { ((HeroAgent*)self)->tmp_val0 = value; };
|
||||
inline const void* Get_HeroAgent_tmp_val0(Agent* self) { return &((HeroAgent*)self)->tmp_val0; };
|
||||
|
||||
inline void Set_HeroAgent_tmp_val1(Agent* self, float value) { ((HeroAgent*)self)->tmp_val1 = value; };
|
||||
inline const void* Get_HeroAgent_tmp_val1(Agent* self) { return &((HeroAgent*)self)->tmp_val1; };
|
||||
|
||||
inline void Set_HeroAgent_tmp_val2(Agent* self, float value) { ((HeroAgent*)self)->tmp_val2 = value; };
|
||||
inline const void* Get_HeroAgent_tmp_val2(Agent* self) { return &((HeroAgent*)self)->tmp_val2; };
|
||||
|
||||
inline void Set_HeroAgent_tmp_val3(Agent* self, float value) { ((HeroAgent*)self)->tmp_val3 = value; };
|
||||
inline const void* Get_HeroAgent_tmp_val3(Agent* self) { return &((HeroAgent*)self)->tmp_val3; };
|
||||
|
||||
inline void Set_HeroAgent_tmp_val4(Agent* self, float value) { ((HeroAgent*)self)->tmp_val4 = value; };
|
||||
inline const void* Get_HeroAgent_tmp_val4(Agent* self) { return &((HeroAgent*)self)->tmp_val4; };
|
||||
|
||||
inline void FunctionPointer_HeroAgent_AbandonPickup(Agent* self, int min_time, int max_time) { ((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_AbandonPickup, void, int, int >(min_time, max_time); }
|
||||
inline void FunctionPointer_HeroAgent_Abort(Agent* self, behaviac::string msg, behaviac::vector<int> args) { ((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_Abort, void, behaviac::string, behaviac::vector<int> >(msg, args); }
|
||||
inline void FunctionPointer_HeroAgent_AbortCoroutine(Agent* self, CoId_e co_id) { ((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_AbortCoroutine, void, CoId_e >(co_id); }
|
||||
inline void FunctionPointer_HeroAgent_BattleMove(Agent* self, glm::vec3& loc_point0) { } /* BattleMove */
|
||||
inline bool FunctionPointer_HeroAgent_CanAttack(Agent* self) { return ((HeroAgent*)self)->CanAttack(); }
|
||||
inline bool FunctionPointer_HeroAgent_CanShot(Agent* self) { return ((HeroAgent*)self)->CanShot(); }
|
||||
inline bool FunctionPointer_HeroAgent_CanThrowItem(Agent* self, InventorySlot_e slot) { return (bool)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_CanThrowItem, bool, InventorySlot_e >(slot); }
|
||||
inline bool FunctionPointer_HeroAgent_CanUseSkill(Agent* self, int skill_id) { return ((HeroAgent*)self)->CanUseSkill(skill_id); }
|
||||
inline bool FunctionPointer_HeroAgent_CarHasBuffEffect(Agent* self, int effect_id) { return (bool)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_CarHasBuffEffect, bool, int >(effect_id); }
|
||||
inline bool FunctionPointer_HeroAgent_CarHasOil(Agent* self) { return (bool)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_CarHasOil, bool >(); }
|
||||
inline void FunctionPointer_HeroAgent_ChaseToKill(Agent* self, int loc_val0, int loc_val1, int loc_val2) { } /* ChaseToKill */
|
||||
inline void FunctionPointer_HeroAgent_ChiMode(Agent* self) { } /* ChiMode */
|
||||
inline behaviac::EBTStatus FunctionPointer_HeroAgent_ClearEvents(Agent* self) { return (behaviac::EBTStatus)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_ClearEvents, behaviac::EBTStatus >(); }
|
||||
inline void FunctionPointer_HeroAgent_CloseBulletTraceMode(Agent* self) { ((HeroAgent*)self)->CloseBulletTraceMode(); }
|
||||
inline behaviac::EBTStatus FunctionPointer_HeroAgent_CoGetNextMobaModeRoadPoint(Agent* self) { return ((HeroAgent*)self)->CoGetNextMobaModeRoadPoint(); }
|
||||
inline behaviac::EBTStatus FunctionPointer_HeroAgent_CoGetRunAwayPoint(Agent* self) { return ((HeroAgent*)self)->CoGetRunAwayPoint(); }
|
||||
inline behaviac::EBTStatus FunctionPointer_HeroAgent_CoIdle(Agent* self, int min_val, int max_val) { return ((HeroAgent*)self)->CoIdle(min_val, max_val); }
|
||||
inline behaviac::EBTStatus FunctionPointer_HeroAgent_CoMoveCurrentTargetRaycast(Agent* self) { return ((HeroAgent*)self)->CoMoveCurrentTargetRaycast(); }
|
||||
inline behaviac::EBTStatus FunctionPointer_HeroAgent_CoMoveForward(Agent* self, int min_val, int max_val) { return ((HeroAgent*)self)->CoMoveForward(min_val, max_val); }
|
||||
inline behaviac::EBTStatus FunctionPointer_HeroAgent_CoMoveMasterRaycast(Agent* self) { return ((HeroAgent*)self)->CoMoveMasterRaycast(); }
|
||||
inline behaviac::EBTStatus FunctionPointer_HeroAgent_CoShotCurrentTargetRaycast(Agent* self) { return ((HeroAgent*)self)->CoShotCurrentTargetRaycast(); }
|
||||
inline behaviac::EBTStatus FunctionPointer_HeroAgent_CoSleep(Agent* self, int time) { return ((HeroAgent*)self)->CoSleep(time); }
|
||||
inline behaviac::EBTStatus FunctionPointer_HeroAgent_CoStartMove(Agent* self, int min_val, int max_val) { return ((HeroAgent*)self)->CoStartMove(min_val, max_val); }
|
||||
inline behaviac::EBTStatus FunctionPointer_HeroAgent_CoTest(Agent* self, int time) { return (behaviac::EBTStatus)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_CoTest, behaviac::EBTStatus, int >(time); }
|
||||
inline behaviac::EBTStatus FunctionPointer_HeroAgent_CoTest1(Agent* self, int time) { return (behaviac::EBTStatus)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_CoTest1, behaviac::EBTStatus, int >(time); }
|
||||
inline behaviac::EBTStatus FunctionPointer_HeroAgent_CoUseSkill(Agent* self, int skill_id) { return (behaviac::EBTStatus)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_CoUseSkill, behaviac::EBTStatus, int >(skill_id); }
|
||||
inline behaviac::EBTStatus FunctionPointer_HeroAgent_DebugOut(Agent* self, behaviac::string msg, int arg0, int arg1, int arg2) { return ((HeroAgent*)self)->DebugOut(msg, arg0, arg1, arg2); }
|
||||
inline void FunctionPointer_HeroAgent_DecV(Agent* self, int id, int val) { ((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_DecV, void, int, int >(id, val); }
|
||||
inline int FunctionPointer_HeroAgent_DeltaTime(Agent* self, int time) { return ((HeroAgent*)self)->DeltaTime(time); }
|
||||
inline void FunctionPointer_HeroAgent_FollowMaster(Agent* self, glm::vec3& loc_point0, float loc_val0) { } /* FollowMaster */
|
||||
inline void FunctionPointer_HeroAgent_FollowTeammate(Agent* self, glm::vec3& loc_point0, float loc_val0) { } /* FollowTeammate */
|
||||
inline int FunctionPointer_HeroAgent_GetAgentType(Agent* self) { return ((HeroAgent*)self)->GetAgentType(); }
|
||||
inline int FunctionPointer_HeroAgent_GetAliveEnemyNum(Agent* self) { return ((HeroAgent*)self)->GetAliveEnemyNum(); }
|
||||
inline int FunctionPointer_HeroAgent_GetBattleTimes(Agent* self) { return ((HeroAgent*)self)->GetBattleTimes(); }
|
||||
inline bool FunctionPointer_HeroAgent_GetCarCurOil(Agent* self) { return (bool)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_GetCarCurOil, bool >(); }
|
||||
inline float FunctionPointer_HeroAgent_GetCarMaxOil(Agent* self) { return (float)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_GetCarMaxOil, float >(); }
|
||||
inline void FunctionPointer_HeroAgent_GetDown(Agent* self) { ((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_GetDown, void >(); }
|
||||
inline int FunctionPointer_HeroAgent_GetHeroId(Agent* self) { return ((HeroAgent*)self)->GetHeroId(); }
|
||||
inline float FunctionPointer_HeroAgent_GetHp(Agent* self) { return ((HeroAgent*)self)->GetHp(); }
|
||||
inline float FunctionPointer_HeroAgent_GetHPRate(Agent* self) { return ((HeroAgent*)self)->GetHPRate(); }
|
||||
inline int FunctionPointer_HeroAgent_GetLastAttackPassTime(Agent* self) { return ((HeroAgent*)self)->GetLastAttackPassTime(); }
|
||||
inline int FunctionPointer_HeroAgent_GetLastShotPassTime(Agent* self) { return ((HeroAgent*)self)->GetLastShotPassTime(); }
|
||||
inline int FunctionPointer_HeroAgent_GetLastUseSkillPassTime(Agent* self) { return ((HeroAgent*)self)->GetLastUseSkillPassTime(); }
|
||||
inline int FunctionPointer_HeroAgent_GetLevel(Agent* self) { return ((HeroAgent*)self)->GetLevel(); }
|
||||
inline float FunctionPointer_HeroAgent_GetMaxHp(Agent* self) { return ((HeroAgent*)self)->GetMaxHp(); }
|
||||
inline float FunctionPointer_HeroAgent_GetNewAttackerHPRate(Agent* self) { return ((HeroAgent*)self)->GetNewAttackerHPRate(); }
|
||||
inline bool FunctionPointer_HeroAgent_GetNewAttackerInRange(Agent* self, float range) { return ((HeroAgent*)self)->GetNewAttackerInRange(range); }
|
||||
inline int FunctionPointer_HeroAgent_GetNewAttackerPassTime(Agent* self) { return ((HeroAgent*)self)->GetNewAttackerPassTime(); }
|
||||
inline glm::vec3 FunctionPointer_HeroAgent_GetPos(Agent* self) { return ((HeroAgent*)self)->GetPos(); }
|
||||
inline glm::vec3 FunctionPointer_HeroAgent_GetRandomDir(Agent* self) { return ((HeroAgent*)self)->GetRandomDir(); }
|
||||
inline int FunctionPointer_HeroAgent_GetReviveCount(Agent* self) { return ((HeroAgent*)self)->GetReviveCount(); }
|
||||
inline glm::vec3 FunctionPointer_HeroAgent_GetSafeAreaCenter(Agent* self) { return ((HeroAgent*)self)->GetSafeAreaCenter(); }
|
||||
inline float FunctionPointer_HeroAgent_GetSafeAreaRadius(Agent* self) { return ((HeroAgent*)self)->GetSafeAreaRadius(); }
|
||||
inline float FunctionPointer_HeroAgent_GetShotRange(Agent* self) { return ((HeroAgent*)self)->GetShotRange(); }
|
||||
inline int FunctionPointer_HeroAgent_GetShotTimes(Agent* self) { return ((HeroAgent*)self)->GetShotTimes(); }
|
||||
inline behaviac::string FunctionPointer_HeroAgent_GetSkillBtFile(Agent* self) { return ((HeroAgent*)self)->GetSkillBtFile(); }
|
||||
inline glm::vec3 FunctionPointer_HeroAgent_GetTargetDir(Agent* self) { return ((HeroAgent*)self)->GetTargetDir(); }
|
||||
inline float FunctionPointer_HeroAgent_GetTargetManhattanDistance(Agent* self) { return ((HeroAgent*)self)->GetTargetManhattanDistance(); }
|
||||
inline float FunctionPointer_HeroAgent_GetTeammateManhattanDistance(Agent* self) { return (float)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_GetTeammateManhattanDistance, float >(); }
|
||||
inline int FunctionPointer_HeroAgent_GetTickCount(Agent* self) { return ((HeroAgent*)self)->GetTickCount(); }
|
||||
inline int FunctionPointer_HeroAgent_GetTodayBattleTimes(Agent* self) { return (int)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_GetTodayBattleTimes, int >(); }
|
||||
inline int FunctionPointer_HeroAgent_GetUniId(Agent* self) { return ((HeroAgent*)self)->GetUniId(); }
|
||||
inline int FunctionPointer_HeroAgent_GetUseSkillTimes(Agent* self) { return ((HeroAgent*)self)->GetUseSkillTimes(); }
|
||||
inline int FunctionPointer_HeroAgent_GetV(Agent* self, int id) { return ((HeroAgent*)self)->GetV(id); }
|
||||
inline bool FunctionPointer_HeroAgent_HasBuffEffect(Agent* self, BuffEffectType_e buff_effect) { return ((HeroAgent*)self)->HasBuffEffect(buff_effect); }
|
||||
inline bool FunctionPointer_HeroAgent_HasNewAttacker(Agent* self) { return ((HeroAgent*)self)->HasNewAttacker(); }
|
||||
inline bool FunctionPointer_HeroAgent_HasObserver(Agent* self) { return ((HeroAgent*)self)->HasObserver(); }
|
||||
inline bool FunctionPointer_HeroAgent_HasUseableSkill(Agent* self) { return ((HeroAgent*)self)->HasUseableSkill(); }
|
||||
inline void FunctionPointer_HeroAgent_IncV(Agent* self, int id, int val) { ((HeroAgent*)self)->IncV(id, val); }
|
||||
inline bool FunctionPointer_HeroAgent_InTargetShotRange(Agent* self) { return ((HeroAgent*)self)->InTargetShotRange(); }
|
||||
inline bool FunctionPointer_HeroAgent_IsChiJiMode(Agent* self) { return ((HeroAgent*)self)->IsChiJiMode(); }
|
||||
inline bool FunctionPointer_HeroAgent_IsDead(Agent* self) { return ((HeroAgent*)self)->IsDead(); }
|
||||
inline bool FunctionPointer_HeroAgent_IsGameOver(Agent* self) { return ((HeroAgent*)self)->IsGameOver(); }
|
||||
inline bool FunctionPointer_HeroAgent_IsMobaMode(Agent* self) { return ((HeroAgent*)self)->IsMobaMode(); }
|
||||
inline bool FunctionPointer_HeroAgent_IsMoving(Agent* self) { return ((HeroAgent*)self)->IsMoving(); }
|
||||
inline bool FunctionPointer_HeroAgent_IsNearGas(Agent* self, float anti_range) { return ((HeroAgent*)self)->IsNearGas(anti_range); }
|
||||
inline bool FunctionPointer_HeroAgent_IsSingleCar(Agent* self) { return (bool)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_IsSingleCar, bool >(); }
|
||||
inline void FunctionPointer_HeroAgent_LogMessage(char* param0) { HeroAgent::LogMessage(param0); }
|
||||
inline void FunctionPointer_HeroAgent_MasterHelpAttack(Agent* self) { } /* MasterHelpAttack */
|
||||
inline bool FunctionPointer_HeroAgent_MasterInRange(Agent* self, float range) { return ((HeroAgent*)self)->MasterInRange(range); }
|
||||
inline void FunctionPointer_HeroAgent_MobaMode(Agent* self, int loc_val0, int loc_val1) { } /* MobaMode */
|
||||
inline bool FunctionPointer_HeroAgent_NewAttackerIsHuman(Agent* self) { return ((HeroAgent*)self)->NewAttackerIsHuman(); }
|
||||
inline void FunctionPointer_HeroAgent_OnMobaModeRevive(Agent* self) { } /* OnMobaModeRevive */
|
||||
inline void FunctionPointer_HeroAgent_OnMobaRevive(Agent* self) { } /* OnMobaRevive */
|
||||
inline void FunctionPointer_HeroAgent_OnUnderAttack(Agent* self, int enemy_uniid) { } /* OnUnderAttack */
|
||||
inline void FunctionPointer_HeroAgent_OpenBulletTraceMode(Agent* self) { ((HeroAgent*)self)->OpenBulletTraceMode(); }
|
||||
inline behaviac::EBTStatus FunctionPointer_HeroAgent_Pickup(Agent* self) { return (behaviac::EBTStatus)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_Pickup, behaviac::EBTStatus >(); }
|
||||
inline void FunctionPointer_HeroAgent_PickupItem(Agent* self, int loc_val0, int loc_val1, glm::vec3& loc_val2) { } /* PickupItem */
|
||||
inline bool FunctionPointer_HeroAgent_PickupObjIsValid(Agent* self) { return (bool)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_PickupObjIsValid, bool >(); }
|
||||
inline int FunctionPointer_HeroAgent_Rand(Agent* self) { return (int)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_Rand, int >(); }
|
||||
inline behaviac::EBTStatus FunctionPointer_HeroAgent_RandomSafeZonePoint(Agent* self, int try_count, int step_len) { return ((HeroAgent*)self)->RandomSafeZonePoint(try_count, step_len); }
|
||||
inline void FunctionPointer_HeroAgent_RandomShot(Agent* self, int loc_val0, int loc_val1, glm::vec3& loc_point0) { } /* RandomShot */
|
||||
inline void FunctionPointer_HeroAgent_RandomWalk(Agent* self, int loc_val0, int loc_val1, glm::vec3& loc_point0) { } /* RandomWalk */
|
||||
inline int FunctionPointer_HeroAgent_RandRange(Agent* self, int min_val, int max_val) { return (int)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_RandRange, int, int, int >(min_val, max_val); }
|
||||
inline float FunctionPointer_HeroAgent_RandRangeAsFloat(Agent* self, float min_val, float max_val) { return ((HeroAgent*)self)->RandRangeAsFloat(min_val, max_val); }
|
||||
inline behaviac::EBTStatus FunctionPointer_HeroAgent_RegisterEvents(Agent* self, behaviac::vector<BtEvent_e> events) { return ((HeroAgent*)self)->RegisterEvents(events); }
|
||||
inline void FunctionPointer_HeroAgent_ResetShotTimes(Agent* self) { ((HeroAgent*)self)->ResetShotTimes(); }
|
||||
inline void FunctionPointer_HeroAgent_ResetUseSkillTimes(Agent* self) { ((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_ResetUseSkillTimes, void >(); }
|
||||
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 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 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_SetBulletAngleOffset(Agent* self, int min_val, int max_val) { ((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_SetBulletAngleOffset, void, int, int >(min_val, max_val); }
|
||||
inline void FunctionPointer_HeroAgent_SetV(Agent* self, int id, int val) { ((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_SetV, void, int, int >(id, val); }
|
||||
inline void FunctionPointer_HeroAgent_ShotTrace(Agent* self) { ((HeroAgent*)self)->ShotTrace(); }
|
||||
inline void FunctionPointer_HeroAgent_StayPutAttack(Agent* self) { } /* StayPutAttack */
|
||||
inline void FunctionPointer_HeroAgent_SwitchSeat(Agent* self, int seat) { ((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_SwitchSeat, void, int >(seat); }
|
||||
inline bool FunctionPointer_HeroAgent_SwitchToNewAttacker(Agent* self) { return ((HeroAgent*)self)->SwitchToNewAttacker(); }
|
||||
inline bool FunctionPointer_HeroAgent_TargetInRange(Agent* self, float range) { return ((HeroAgent*)self)->TargetInRange(range); }
|
||||
inline bool FunctionPointer_HeroAgent_TargetInShotRange(Agent* self) { return (bool)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_TargetInShotRange, bool >(); }
|
||||
inline void FunctionPointer_HeroAgent_TeammateHelpAttack(Agent* self) { } /* TeammateHelpAttack */
|
||||
inline bool FunctionPointer_HeroAgent_TeammateIsValid(Agent* self) { return (bool)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_TeammateIsValid, bool >(); }
|
||||
inline int FunctionPointer_HeroAgent_Test(Agent* self, int p1) { return (int)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_Test, int, int >(p1); }
|
||||
inline behaviac::EBTStatus FunctionPointer_HeroAgent_ThrowItem(Agent* self, InventorySlot_e slot) { return (behaviac::EBTStatus)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_ThrowItem, behaviac::EBTStatus, InventorySlot_e >(slot); }
|
||||
inline behaviac::EBTStatus FunctionPointer_HeroAgent_TrySearchEnemy(Agent* self, float range, int min_interval, int max_interval) { return ((HeroAgent*)self)->TrySearchEnemy(range, min_interval, max_interval); }
|
||||
inline behaviac::EBTStatus FunctionPointer_HeroAgent_TrySearchTeammate(Agent* self, int range) { return (behaviac::EBTStatus)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_TrySearchTeammate, behaviac::EBTStatus, int >(range); }
|
||||
inline void FunctionPointer_HeroAgent_UseNormalSkill(Agent* self, int loc_val0, int loc_val1, int loc_val2) { } /* UseNormalSkill */
|
||||
inline void FunctionPointer_HeroAgent_UseSkill30100(Agent* self, int loc_val0, int loc_val1, int loc_val2) { } /* UseSkill30100 */
|
||||
inline void FunctionPointer_HeroAgent_UseSkill30200(Agent* self, int loc_val0, int loc_val1, int loc_val2) { } /* UseSkill30200 */
|
||||
inline void FunctionPointer_HeroAgent_UseSkill30300(Agent* self, int loc_val0, int loc_val1, int loc_val2) { } /* UseSkill30300 */
|
||||
inline void FunctionPointer_HeroAgent_UseSkill30400(Agent* self, int loc_val0, int loc_val1, int loc_val2) { } /* UseSkill30400 */
|
||||
inline void FunctionPointer_HeroAgent_UseSkill30500(Agent* self, int loc_val0, int loc_val1, int loc_val2) { } /* UseSkill30500 */
|
||||
inline void FunctionPointer_HeroAgent_UseSkill30600(Agent* self, int loc_val0, int loc_val1, int loc_val2) { } /* UseSkill30600 */
|
||||
inline void FunctionPointer_HeroAgent_UseSkill30700(Agent* self, int loc_val0, int loc_val1, int loc_val2) { } /* UseSkill30700 */
|
||||
inline void FunctionPointer_HeroAgent_UseSkill30800(Agent* self, int loc_val0, int loc_val1, int loc_val2) { } /* UseSkill30800 */
|
||||
inline void FunctionPointer_HeroAgent_UseSkill30900(Agent* self, int loc_val0, int loc_val1, int loc_val2) { } /* UseSkill30900 */
|
||||
inline void FunctionPointer_HeroAgent_UseSkill31000(Agent* self, int loc_val0, int loc_val1, int loc_val2) { } /* UseSkill31000 */
|
||||
inline void FunctionPointer_AndroidAgent_AbandonPickup(Agent* self, int min_time, int max_time) { ((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_AbandonPickup, void, int, int >(min_time, max_time); }
|
||||
inline void FunctionPointer_AndroidAgent_Abort(Agent* self, behaviac::string msg, behaviac::vector<int> args) { ((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_Abort, void, behaviac::string, behaviac::vector<int> >(msg, args); }
|
||||
inline void FunctionPointer_AndroidAgent_AbortCoroutine(Agent* self, CoId_e co_id) { ((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_AbortCoroutine, void, CoId_e >(co_id); }
|
||||
inline void FunctionPointer_AndroidAgent_BattleMove(Agent* self, glm::vec3& loc_point0) { } /* BattleMove */
|
||||
inline bool FunctionPointer_AndroidAgent_CanAttack(Agent* self) { return ((AndroidAgent*)self)->CanAttack(); }
|
||||
inline bool FunctionPointer_AndroidAgent_CanShot(Agent* self) { return ((AndroidAgent*)self)->CanShot(); }
|
||||
inline bool FunctionPointer_AndroidAgent_CanThrowItem(Agent* self, InventorySlot_e slot) { return (bool)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_CanThrowItem, bool, InventorySlot_e >(slot); }
|
||||
inline bool FunctionPointer_AndroidAgent_CanUseSkill(Agent* self, int skill_id) { return ((AndroidAgent*)self)->CanUseSkill(skill_id); }
|
||||
inline bool FunctionPointer_AndroidAgent_CarHasBuffEffect(Agent* self, int effect_id) { return (bool)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_CarHasBuffEffect, bool, int >(effect_id); }
|
||||
inline bool FunctionPointer_AndroidAgent_CarHasOil(Agent* self) { return (bool)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_CarHasOil, bool >(); }
|
||||
inline void FunctionPointer_AndroidAgent_ChaseToKill(Agent* self, int loc_val0, int loc_val1, int loc_val2) { } /* ChaseToKill */
|
||||
inline void FunctionPointer_AndroidAgent_ChiMode(Agent* self) { } /* ChiMode */
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_ClearEvents(Agent* self) { return (behaviac::EBTStatus)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_ClearEvents, behaviac::EBTStatus >(); }
|
||||
inline void FunctionPointer_AndroidAgent_CloseBulletTraceMode(Agent* self) { ((AndroidAgent*)self)->CloseBulletTraceMode(); }
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_CoGetNextMobaModeRoadPoint(Agent* self) { return ((AndroidAgent*)self)->CoGetNextMobaModeRoadPoint(); }
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_CoGetRunAwayPoint(Agent* self) { return ((AndroidAgent*)self)->CoGetRunAwayPoint(); }
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_CoIdle(Agent* self, int min_val, int max_val) { return ((AndroidAgent*)self)->CoIdle(min_val, max_val); }
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_CoMoveCurrentTargetRaycast(Agent* self) { return ((AndroidAgent*)self)->CoMoveCurrentTargetRaycast(); }
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_CoMoveForward(Agent* self, int min_val, int max_val) { return ((AndroidAgent*)self)->CoMoveForward(min_val, max_val); }
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_CoMoveMasterRaycast(Agent* self) { return ((AndroidAgent*)self)->CoMoveMasterRaycast(); }
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_CoShotCurrentTargetRaycast(Agent* self) { return ((AndroidAgent*)self)->CoShotCurrentTargetRaycast(); }
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_CoSleep(Agent* self, int time) { return ((AndroidAgent*)self)->CoSleep(time); }
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_CoStartMove(Agent* self, int min_val, int max_val) { return ((AndroidAgent*)self)->CoStartMove(min_val, max_val); }
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_CoTest(Agent* self, int time) { return (behaviac::EBTStatus)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_CoTest, behaviac::EBTStatus, int >(time); }
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_CoTest1(Agent* self, int time) { return (behaviac::EBTStatus)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_CoTest1, behaviac::EBTStatus, int >(time); }
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_CoUseSkill(Agent* self, int skill_id) { return (behaviac::EBTStatus)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_CoUseSkill, behaviac::EBTStatus, int >(skill_id); }
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_DebugOut(Agent* self, behaviac::string msg, int arg0, int arg1, int arg2) { return ((AndroidAgent*)self)->DebugOut(msg, arg0, arg1, arg2); }
|
||||
inline void FunctionPointer_AndroidAgent_DecV(Agent* self, int id, int val) { ((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_DecV, void, int, int >(id, val); }
|
||||
inline int FunctionPointer_AndroidAgent_DeltaTime(Agent* self, int time) { return ((AndroidAgent*)self)->DeltaTime(time); }
|
||||
inline void FunctionPointer_AndroidAgent_FollowMaster(Agent* self, glm::vec3& loc_point0, float loc_val0) { } /* FollowMaster */
|
||||
inline void FunctionPointer_AndroidAgent_FollowTeammate(Agent* self, glm::vec3& loc_point0, float loc_val0) { } /* FollowTeammate */
|
||||
inline behaviac::string FunctionPointer_AndroidAgent_GetAccountId(Agent* self) { return ((AndroidAgent*)self)->GetAccountId(); }
|
||||
inline int FunctionPointer_AndroidAgent_GetAgentType(Agent* self) { return ((AndroidAgent*)self)->GetAgentType(); }
|
||||
inline int FunctionPointer_AndroidAgent_GetAliveEnemyNum(Agent* self) { return ((AndroidAgent*)self)->GetAliveEnemyNum(); }
|
||||
inline int FunctionPointer_AndroidAgent_GetBattleTimes(Agent* self) { return ((AndroidAgent*)self)->GetBattleTimes(); }
|
||||
inline bool FunctionPointer_AndroidAgent_GetCarCurOil(Agent* self) { return (bool)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_GetCarCurOil, bool >(); }
|
||||
inline float FunctionPointer_AndroidAgent_GetCarMaxOil(Agent* self) { return (float)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_GetCarMaxOil, float >(); }
|
||||
inline void FunctionPointer_AndroidAgent_GetDown(Agent* self) { ((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_GetDown, void >(); }
|
||||
inline int FunctionPointer_AndroidAgent_GetHeroId(Agent* self) { return ((AndroidAgent*)self)->GetHeroId(); }
|
||||
inline float FunctionPointer_AndroidAgent_GetHp(Agent* self) { return ((AndroidAgent*)self)->GetHp(); }
|
||||
inline float FunctionPointer_AndroidAgent_GetHPRate(Agent* self) { return ((AndroidAgent*)self)->GetHPRate(); }
|
||||
inline int FunctionPointer_AndroidAgent_GetLastAttackPassTime(Agent* self) { return ((AndroidAgent*)self)->GetLastAttackPassTime(); }
|
||||
inline int FunctionPointer_AndroidAgent_GetLastShotPassTime(Agent* self) { return ((AndroidAgent*)self)->GetLastShotPassTime(); }
|
||||
inline int FunctionPointer_AndroidAgent_GetLastUseSkillPassTime(Agent* self) { return ((AndroidAgent*)self)->GetLastUseSkillPassTime(); }
|
||||
inline int FunctionPointer_AndroidAgent_GetLevel(Agent* self) { return ((AndroidAgent*)self)->GetLevel(); }
|
||||
inline float FunctionPointer_AndroidAgent_GetMaxHp(Agent* self) { return ((AndroidAgent*)self)->GetMaxHp(); }
|
||||
inline float FunctionPointer_AndroidAgent_GetNewAttackerHPRate(Agent* self) { return ((AndroidAgent*)self)->GetNewAttackerHPRate(); }
|
||||
inline bool FunctionPointer_AndroidAgent_GetNewAttackerInRange(Agent* self, float range) { return ((AndroidAgent*)self)->GetNewAttackerInRange(range); }
|
||||
inline int FunctionPointer_AndroidAgent_GetNewAttackerPassTime(Agent* self) { return ((AndroidAgent*)self)->GetNewAttackerPassTime(); }
|
||||
inline glm::vec3 FunctionPointer_AndroidAgent_GetPos(Agent* self) { return ((AndroidAgent*)self)->GetPos(); }
|
||||
inline glm::vec3 FunctionPointer_AndroidAgent_GetRandomDir(Agent* self) { return ((AndroidAgent*)self)->GetRandomDir(); }
|
||||
inline int FunctionPointer_AndroidAgent_GetReviveCount(Agent* self) { return ((AndroidAgent*)self)->GetReviveCount(); }
|
||||
inline glm::vec3 FunctionPointer_AndroidAgent_GetSafeAreaCenter(Agent* self) { return ((AndroidAgent*)self)->GetSafeAreaCenter(); }
|
||||
inline float FunctionPointer_AndroidAgent_GetSafeAreaRadius(Agent* self) { return ((AndroidAgent*)self)->GetSafeAreaRadius(); }
|
||||
inline float FunctionPointer_AndroidAgent_GetShotRange(Agent* self) { return ((AndroidAgent*)self)->GetShotRange(); }
|
||||
inline int FunctionPointer_AndroidAgent_GetShotTimes(Agent* self) { return ((AndroidAgent*)self)->GetShotTimes(); }
|
||||
inline behaviac::string FunctionPointer_AndroidAgent_GetSkillBtFile(Agent* self) { return ((AndroidAgent*)self)->GetSkillBtFile(); }
|
||||
inline glm::vec3 FunctionPointer_AndroidAgent_GetTargetDir(Agent* self) { return ((AndroidAgent*)self)->GetTargetDir(); }
|
||||
inline float FunctionPointer_AndroidAgent_GetTargetManhattanDistance(Agent* self) { return ((AndroidAgent*)self)->GetTargetManhattanDistance(); }
|
||||
inline float FunctionPointer_AndroidAgent_GetTeammateManhattanDistance(Agent* self) { return (float)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_GetTeammateManhattanDistance, float >(); }
|
||||
inline int FunctionPointer_AndroidAgent_GetTickCount(Agent* self) { return ((AndroidAgent*)self)->GetTickCount(); }
|
||||
inline int FunctionPointer_AndroidAgent_GetTodayBattleTimes(Agent* self) { return (int)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_GetTodayBattleTimes, int >(); }
|
||||
inline int FunctionPointer_AndroidAgent_GetUniId(Agent* self) { return ((AndroidAgent*)self)->GetUniId(); }
|
||||
inline int FunctionPointer_AndroidAgent_GetUseSkillTimes(Agent* self) { return ((AndroidAgent*)self)->GetUseSkillTimes(); }
|
||||
inline int FunctionPointer_AndroidAgent_GetV(Agent* self, int id) { return ((AndroidAgent*)self)->GetV(id); }
|
||||
inline bool FunctionPointer_AndroidAgent_HasBuffEffect(Agent* self, BuffEffectType_e buff_effect) { return ((AndroidAgent*)self)->HasBuffEffect(buff_effect); }
|
||||
inline bool FunctionPointer_AndroidAgent_HasNewAttacker(Agent* self) { return ((AndroidAgent*)self)->HasNewAttacker(); }
|
||||
inline bool FunctionPointer_AndroidAgent_HasObserver(Agent* self) { return ((AndroidAgent*)self)->HasObserver(); }
|
||||
inline bool FunctionPointer_AndroidAgent_HasUseableSkill(Agent* self) { return ((AndroidAgent*)self)->HasUseableSkill(); }
|
||||
inline void FunctionPointer_AndroidAgent_IncV(Agent* self, int id, int val) { ((AndroidAgent*)self)->IncV(id, val); }
|
||||
inline bool FunctionPointer_AndroidAgent_InTargetShotRange(Agent* self) { return ((AndroidAgent*)self)->InTargetShotRange(); }
|
||||
inline bool FunctionPointer_AndroidAgent_IsChiJiMode(Agent* self) { return ((AndroidAgent*)self)->IsChiJiMode(); }
|
||||
inline bool FunctionPointer_AndroidAgent_IsDead(Agent* self) { return ((AndroidAgent*)self)->IsDead(); }
|
||||
inline void FunctionPointer_BaseAgent_OnAttacked(Agent* self, int sender, int time) { } /* OnAttacked */
|
||||
inline void FunctionPointer_BaseAgent_SetBulletTraceMode(Agent* self, bool mode) { ((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_SetBulletTraceMode, void, bool >(mode); }
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_CoAttackTarget(Agent* self, int target_id) { return ((AndroidAgent*)self)->CoAttackTarget(target_id); }
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_DoAttack(Agent* self) { return ((AndroidAgent*)self)->DoAttack(); }
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_DoIdle(Agent* self, int min_time, int max_time) { return ((AndroidAgent*)self)->DoIdle(min_time, max_time); }
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_DoPursuit(Agent* self) { return ((AndroidAgent*)self)->DoPursuit(); }
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_DoRandomShot(Agent* self) { return (behaviac::EBTStatus)((AndroidAgent*)self)->_Execute_Method_<METHOD_TYPE_AndroidAgent_DoRandomShot, behaviac::EBTStatus >(); }
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_DoRandomWalk(Agent* self) { return ((AndroidAgent*)self)->DoRandomWalk(); }
|
||||
inline float FunctionPointer_AndroidAgent_GetAttackRange(Agent* self) { return ((AndroidAgent*)self)->GetAttackRange(); }
|
||||
inline State_e FunctionPointer_AndroidAgent_GetState(Agent* self) { return (State_e)((AndroidAgent*)self)->_Execute_Method_<METHOD_TYPE_AndroidAgent_GetState, State_e >(); }
|
||||
inline bool FunctionPointer_AndroidAgent_HasBuffEffect(Agent* self, int buff_effect) { return (bool)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_HasBuffEffect, bool, int >(buff_effect); }
|
||||
inline bool FunctionPointer_AndroidAgent_HasTarget(Agent* self, float range) { return (bool)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_HasTarget, bool, float >(range); }
|
||||
inline bool FunctionPointer_AndroidAgent_IsGameOver(Agent* self) { return ((AndroidAgent*)self)->IsGameOver(); }
|
||||
inline bool FunctionPointer_AndroidAgent_IsMobaMode(Agent* self) { return ((AndroidAgent*)self)->IsMobaMode(); }
|
||||
inline bool FunctionPointer_AndroidAgent_IsMoving(Agent* self) { return ((AndroidAgent*)self)->IsMoving(); }
|
||||
inline bool FunctionPointer_AndroidAgent_IsNearGas(Agent* self, float anti_range) { return ((AndroidAgent*)self)->IsNearGas(anti_range); }
|
||||
inline bool FunctionPointer_AndroidAgent_IsSingleCar(Agent* self) { return (bool)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_IsSingleCar, bool >(); }
|
||||
inline void FunctionPointer_AndroidAgent_LogMessage(char* param0) { AndroidAgent::LogMessage(param0); }
|
||||
inline void FunctionPointer_AndroidAgent_MasterHelpAttack(Agent* self) { } /* MasterHelpAttack */
|
||||
inline bool FunctionPointer_AndroidAgent_MasterInRange(Agent* self, float range) { return ((AndroidAgent*)self)->MasterInRange(range); }
|
||||
inline void FunctionPointer_AndroidAgent_MobaMode(Agent* self, int loc_val0, int loc_val1) { } /* MobaMode */
|
||||
inline bool FunctionPointer_AndroidAgent_NewAttackerIsHuman(Agent* self) { return ((AndroidAgent*)self)->NewAttackerIsHuman(); }
|
||||
inline void FunctionPointer_AndroidAgent_OnMobaModeRevive(Agent* self) { } /* OnMobaModeRevive */
|
||||
inline void FunctionPointer_AndroidAgent_OnMobaRevive(Agent* self) { } /* OnMobaRevive */
|
||||
inline void FunctionPointer_AndroidAgent_OnUnderAttack(Agent* self, int enemy_uniid) { } /* OnUnderAttack */
|
||||
inline void FunctionPointer_AndroidAgent_OpenBulletTraceMode(Agent* self) { ((AndroidAgent*)self)->OpenBulletTraceMode(); }
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_Pickup(Agent* self) { return (behaviac::EBTStatus)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_Pickup, behaviac::EBTStatus >(); }
|
||||
inline void FunctionPointer_AndroidAgent_PickupItem(Agent* self, int loc_val0, int loc_val1, glm::vec3& loc_val2) { } /* PickupItem */
|
||||
inline bool FunctionPointer_AndroidAgent_PickupObjIsValid(Agent* self) { return (bool)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_PickupObjIsValid, bool >(); }
|
||||
inline int FunctionPointer_AndroidAgent_Rand(Agent* self) { return (int)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_Rand, int >(); }
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_RandomSafeZonePoint(Agent* self, int try_count, int step_len) { return ((AndroidAgent*)self)->RandomSafeZonePoint(try_count, step_len); }
|
||||
inline void FunctionPointer_AndroidAgent_RandomShot(Agent* self, int loc_val0, int loc_val1, glm::vec3& loc_point0) { } /* RandomShot */
|
||||
inline void FunctionPointer_AndroidAgent_RandomWalk(Agent* self, int loc_val0, int loc_val1, glm::vec3& loc_point0) { } /* RandomWalk */
|
||||
inline int FunctionPointer_AndroidAgent_RandRange(Agent* self, int min_val, int max_val) { return (int)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_RandRange, int, int, int >(min_val, max_val); }
|
||||
inline float FunctionPointer_AndroidAgent_RandRangeAsFloat(Agent* self, float min_val, float max_val) { return ((AndroidAgent*)self)->RandRangeAsFloat(min_val, max_val); }
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_RegisterEvents(Agent* self, behaviac::vector<BtEvent_e> events) { return ((AndroidAgent*)self)->RegisterEvents(events); }
|
||||
inline void FunctionPointer_AndroidAgent_ResetShotTimes(Agent* self) { ((AndroidAgent*)self)->ResetShotTimes(); }
|
||||
inline void FunctionPointer_AndroidAgent_ResetUseSkillTimes(Agent* self) { ((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_ResetUseSkillTimes, void >(); }
|
||||
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 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 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_SetBulletAngleOffset(Agent* self, int min_val, int max_val) { ((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_SetBulletAngleOffset, void, int, int >(min_val, max_val); }
|
||||
inline void FunctionPointer_AndroidAgent_SetV(Agent* self, int id, int val) { ((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_SetV, void, int, int >(id, val); }
|
||||
inline void FunctionPointer_AndroidAgent_ShotTrace(Agent* self) { ((AndroidAgent*)self)->ShotTrace(); }
|
||||
inline void FunctionPointer_AndroidAgent_StayPutAttack(Agent* self) { } /* StayPutAttack */
|
||||
inline void FunctionPointer_AndroidAgent_SwitchSeat(Agent* self, int seat) { ((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_SwitchSeat, void, int >(seat); }
|
||||
inline bool FunctionPointer_AndroidAgent_SwitchToNewAttacker(Agent* self) { return ((AndroidAgent*)self)->SwitchToNewAttacker(); }
|
||||
inline bool FunctionPointer_AndroidAgent_TargetInRange(Agent* self, float range) { return ((AndroidAgent*)self)->TargetInRange(range); }
|
||||
inline bool FunctionPointer_AndroidAgent_TargetInShotRange(Agent* self) { return (bool)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_TargetInShotRange, bool >(); }
|
||||
inline void FunctionPointer_AndroidAgent_TeammateHelpAttack(Agent* self) { } /* TeammateHelpAttack */
|
||||
inline bool FunctionPointer_AndroidAgent_TeammateIsValid(Agent* self) { return (bool)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_TeammateIsValid, bool >(); }
|
||||
inline int FunctionPointer_AndroidAgent_Test(Agent* self, int p1) { return (int)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_Test, int, int >(p1); }
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_ThrowItem(Agent* self, InventorySlot_e slot) { return (behaviac::EBTStatus)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_ThrowItem, behaviac::EBTStatus, InventorySlot_e >(slot); }
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_TrySearchEnemy(Agent* self, float range, int min_interval, int max_interval) { return ((AndroidAgent*)self)->TrySearchEnemy(range, min_interval, max_interval); }
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_TrySearchTeammate(Agent* self, int range) { return (behaviac::EBTStatus)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_TrySearchTeammate, behaviac::EBTStatus, int >(range); }
|
||||
inline void FunctionPointer_AndroidAgent_UseNormalSkill(Agent* self, int loc_val0, int loc_val1, int loc_val2) { } /* UseNormalSkill */
|
||||
inline void FunctionPointer_AndroidAgent_UseSkill30100(Agent* self, int loc_val0, int loc_val1, int loc_val2) { } /* UseSkill30100 */
|
||||
inline void FunctionPointer_AndroidAgent_UseSkill30200(Agent* self, int loc_val0, int loc_val1, int loc_val2) { } /* UseSkill30200 */
|
||||
inline void FunctionPointer_AndroidAgent_UseSkill30300(Agent* self, int loc_val0, int loc_val1, int loc_val2) { } /* UseSkill30300 */
|
||||
inline void FunctionPointer_AndroidAgent_UseSkill30400(Agent* self, int loc_val0, int loc_val1, int loc_val2) { } /* UseSkill30400 */
|
||||
inline void FunctionPointer_AndroidAgent_UseSkill30500(Agent* self, int loc_val0, int loc_val1, int loc_val2) { } /* UseSkill30500 */
|
||||
inline void FunctionPointer_AndroidAgent_UseSkill30600(Agent* self, int loc_val0, int loc_val1, int loc_val2) { } /* UseSkill30600 */
|
||||
inline void FunctionPointer_AndroidAgent_UseSkill30700(Agent* self, int loc_val0, int loc_val1, int loc_val2) { } /* UseSkill30700 */
|
||||
inline void FunctionPointer_AndroidAgent_UseSkill30800(Agent* self, int loc_val0, int loc_val1, int loc_val2) { } /* UseSkill30800 */
|
||||
inline void FunctionPointer_AndroidAgent_UseSkill30900(Agent* self, int loc_val0, int loc_val1, int loc_val2) { } /* UseSkill30900 */
|
||||
inline void FunctionPointer_AndroidAgent_UseSkill31000(Agent* self, int loc_val0, int loc_val1, int loc_val2) { } /* UseSkill31000 */
|
||||
inline void FunctionPointer_MasterAgent_AbortCoroutine(Agent* self, CoId_e co_id) { ((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_AbortCoroutine, void, CoId_e >(co_id); }
|
||||
inline behaviac::EBTStatus FunctionPointer_MasterAgent_CoTest(Agent* self, int time) { return (behaviac::EBTStatus)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_CoTest, behaviac::EBTStatus, int >(time); }
|
||||
inline behaviac::EBTStatus FunctionPointer_MasterAgent_CoTest1(Agent* self, int time) { return (behaviac::EBTStatus)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_CoTest1, behaviac::EBTStatus, int >(time); }
|
||||
inline int FunctionPointer_MasterAgent_DeltaTime(Agent* self, int time) { return ((MasterAgent*)self)->DeltaTime(time); }
|
||||
inline int FunctionPointer_MasterAgent_GetHeroId(Agent* self) { return ((MasterAgent*)self)->GetHeroId(); }
|
||||
inline float FunctionPointer_MasterAgent_GetHP(Agent* self) { return ((MasterAgent*)self)->GetHP(); }
|
||||
inline int FunctionPointer_MasterAgent_GetLevel(Agent* self) { return ((MasterAgent*)self)->GetLevel(); }
|
||||
inline float FunctionPointer_MasterAgent_GetMaxHP(Agent* self) { return ((MasterAgent*)self)->GetMaxHP(); }
|
||||
inline glm::vec3 FunctionPointer_MasterAgent_GetPos(Agent* self) { return ((MasterAgent*)self)->GetPos(); }
|
||||
inline int FunctionPointer_MasterAgent_GetTickCount(Agent* self) { return ((MasterAgent*)self)->GetTickCount(); }
|
||||
inline int FunctionPointer_MasterAgent_GetUniId(Agent* self) { return ((MasterAgent*)self)->GetUniId(); }
|
||||
inline bool FunctionPointer_MasterAgent_IsDead(Agent* self) { return ((MasterAgent*)self)->IsDead(); }
|
||||
inline bool FunctionPointer_MasterAgent_IsGameOver(Agent* self) { return ((MasterAgent*)self)->IsGameOver(); }
|
||||
inline bool FunctionPointer_MasterAgent_IsValid(Agent* self) { return (bool)((MasterAgent*)self)->_Execute_Method_<METHOD_TYPE_MasterAgent_IsValid, bool >(); }
|
||||
inline void FunctionPointer_MasterAgent_LogMessage(char* param0) { MasterAgent::LogMessage(param0); }
|
||||
inline int FunctionPointer_MasterAgent_Rand(Agent* self) { return (int)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_Rand, int >(); }
|
||||
inline int FunctionPointer_MasterAgent_RandRange(Agent* self, int min_val, int max_val) { return (int)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_RandRange, int, int, int >(min_val, max_val); }
|
||||
inline float FunctionPointer_MasterAgent_RandRangeAsFloat(Agent* self, float min_val, float max_val) { return ((MasterAgent*)self)->RandRangeAsFloat(min_val, max_val); }
|
||||
inline int FunctionPointer_MasterAgent_Test(Agent* self, int p1) { return (int)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_Test, int, int >(p1); }
|
||||
inline void FunctionPointer_TeammateAgent_Abandon(Agent* self, int min_time, int max_time) { ((TeammateAgent*)self)->_Execute_Method_<METHOD_TYPE_TeammateAgent_Abandon, void, int, int >(min_time, max_time); }
|
||||
inline void FunctionPointer_TeammateAgent_ClearAbandon(Agent* self) { ((TeammateAgent*)self)->_Execute_Method_<METHOD_TYPE_TeammateAgent_ClearAbandon, void >(); }
|
||||
inline int FunctionPointer_TeammateAgent_GetHeroId(Agent* self) { return (int)((TeammateAgent*)self)->_Execute_Method_<METHOD_TYPE_TeammateAgent_GetHeroId, int >(); }
|
||||
inline float FunctionPointer_TeammateAgent_GetHp(Agent* self) { return (float)((TeammateAgent*)self)->_Execute_Method_<METHOD_TYPE_TeammateAgent_GetHp, float >(); }
|
||||
inline float FunctionPointer_TeammateAgent_GetHPRate(Agent* self) { return (float)((TeammateAgent*)self)->_Execute_Method_<METHOD_TYPE_TeammateAgent_GetHPRate, float >(); }
|
||||
inline int FunctionPointer_TeammateAgent_GetLevel(Agent* self) { return (int)((TeammateAgent*)self)->_Execute_Method_<METHOD_TYPE_TeammateAgent_GetLevel, int >(); }
|
||||
inline float FunctionPointer_TeammateAgent_GetMaxHp(Agent* self) { return (float)((TeammateAgent*)self)->_Execute_Method_<METHOD_TYPE_TeammateAgent_GetMaxHp, float >(); }
|
||||
inline glm::vec3 FunctionPointer_TeammateAgent_GetPos(Agent* self) { return (glm::vec3)((TeammateAgent*)self)->_Execute_Method_<METHOD_TYPE_TeammateAgent_GetPos, glm::vec3 >(); }
|
||||
inline float FunctionPointer_TeammateAgent_GetShotRange(Agent* self) { return (float)((TeammateAgent*)self)->_Execute_Method_<METHOD_TYPE_TeammateAgent_GetShotRange, float >(); }
|
||||
inline int FunctionPointer_TeammateAgent_GetUniId(Agent* self) { return (int)((TeammateAgent*)self)->_Execute_Method_<METHOD_TYPE_TeammateAgent_GetUniId, int >(); }
|
||||
inline bool FunctionPointer_TeammateAgent_HasBuffEffect(Agent* self, int effect_id) { return (bool)((TeammateAgent*)self)->_Execute_Method_<METHOD_TYPE_TeammateAgent_HasBuffEffect, bool, int >(effect_id); }
|
||||
inline bool FunctionPointer_TeammateAgent_IsDead(Agent* self) { return (bool)((TeammateAgent*)self)->_Execute_Method_<METHOD_TYPE_TeammateAgent_IsDead, bool >(); }
|
||||
inline bool FunctionPointer_TeammateAgent_IsValid(Agent* self) { return (bool)((TeammateAgent*)self)->_Execute_Method_<METHOD_TYPE_TeammateAgent_IsValid, bool >(); }
|
||||
inline void FunctionPointer_TeammateAgent_LogMessage(char* param0) { TeammateAgent::LogMessage(param0); }
|
||||
inline void Set_glm_vec3_x(Agent* self, float value) { ((glm::vec3*)self)->x = value; };
|
||||
inline const void* Get_glm_vec3_x(Agent* self) { return &((glm::vec3*)self)->x; };
|
||||
|
||||
inline void Set_glm_vec3_y(Agent* self, float value) { ((glm::vec3*)self)->y = value; };
|
||||
inline const void* Get_glm_vec3_y(Agent* self) { return &((glm::vec3*)self)->y; };
|
||||
|
||||
inline void Set_glm_vec3_z(Agent* self, float value) { ((glm::vec3*)self)->z = value; };
|
||||
inline const void* Get_glm_vec3_z(Agent* self) { return &((glm::vec3*)self)->z; };
|
||||
|
||||
inline void FunctionPointer_AndroidAgent_OnAttacked(Agent* self, int sender, int time) { } /* OnAttacked */
|
||||
inline void FunctionPointer_AndroidAgent_SetBulletTraceMode(Agent* self, bool mode) { ((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_SetBulletTraceMode, void, bool >(mode); }
|
||||
inline behaviac::EBTStatus FunctionPointer_HeroAgent_CoAttackTarget(Agent* self, int target_id) { return ((HeroAgent*)self)->CoAttackTarget(target_id); }
|
||||
inline behaviac::EBTStatus FunctionPointer_HeroAgent_DoAttack(Agent* self) { return (behaviac::EBTStatus)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_DoAttack, behaviac::EBTStatus >(); }
|
||||
inline behaviac::EBTStatus FunctionPointer_HeroAgent_DoFlyToMasterAround(Agent* self) { return (behaviac::EBTStatus)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_DoFlyToMasterAround, behaviac::EBTStatus >(); }
|
||||
inline behaviac::EBTStatus FunctionPointer_HeroAgent_DoFollowMaster(Agent* self) { return (behaviac::EBTStatus)((HeroAgent*)self)->_Execute_Method_<METHOD_TYPE_HeroAgent_DoFollowMaster, behaviac::EBTStatus >(); }
|
||||
inline behaviac::EBTStatus FunctionPointer_HeroAgent_DoHelpAttack(Agent* self, int target_uniid) { return ((HeroAgent*)self)->DoHelpAttack(target_uniid); }
|
||||
inline EBTStatus FunctionPointer_HeroAgent_DoIdle(Agent* self, int min_time, int max_time) { return ((HeroAgent*)self)->DoIdle(min_time, max_time); }
|
||||
inline behaviac::EBTStatus FunctionPointer_HeroAgent_DoPursuit(Agent* self) { return ((HeroAgent*)self)->DoPursuit(); }
|
||||
inline behaviac::EBTStatus FunctionPointer_HeroAgent_DoRandomShot(Agent* self) { return ((HeroAgent*)self)->DoRandomShot(); }
|
||||
inline behaviac::EBTStatus FunctionPointer_HeroAgent_DoRandomWalk(Agent* self) { return ((HeroAgent*)self)->DoRandomWalk(); }
|
||||
inline float FunctionPointer_HeroAgent_GetAttackRange(Agent* self) { return ((HeroAgent*)self)->GetAttackRange(); }
|
||||
inline float FunctionPointer_HeroAgent_GetMasterDistance(Agent* self) { return ((HeroAgent*)self)->GetMasterDistance(); }
|
||||
inline bool FunctionPointer_HeroAgent_HasBuffEffect(Agent* self, int buff_effect) { return (bool)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_HasBuffEffect, bool, int >(buff_effect); }
|
||||
inline bool FunctionPointer_HeroAgent_HasTarget(Agent* self, float range) { return (bool)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_HasTarget, bool, float >(range); }
|
||||
inline bool FunctionPointer_HeroAgent_IsGameOver(Agent* self) { return ((HeroAgent*)self)->IsGameOver(); }
|
||||
inline void FunctionPointer_HeroAgent_LogMessage(char* param0) { HeroAgent::LogMessage(param0); }
|
||||
inline void FunctionPointer_HeroAgent_OnAttacked(Agent* self, int sender, int time) { } /* OnAttacked */
|
||||
inline void FunctionPointer_HeroAgent_OnMasterAttackTarget(Agent* self, int target_uniid) { } /* OnMasterAttackTarget */
|
||||
inline void FunctionPointer_HeroAgent_SetBulletTraceMode(Agent* self, bool mode) { ((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_SetBulletTraceMode, void, bool >(mode); }
|
||||
}
|
||||
#endif // _BEHAVIAC_AGENT_PROPERTIES_H_
|
||||
|
@ -8,71 +8,14 @@
|
||||
// Customized enums
|
||||
// -------------------
|
||||
|
||||
BEHAVIAC_BEGIN_ENUM_EX(SkillIdx_e, SkillIdx_e)
|
||||
BEHAVIAC_BEGIN_ENUM_EX(State_e, State_e)
|
||||
{
|
||||
BEHAVIAC_ENUMCLASS_DISPLAY_INFO_EX(L"SkillIdx_e", L"");
|
||||
BEHAVIAC_ENUMCLASS_DISPLAY_INFO_EX(L"State_e", L"");
|
||||
|
||||
BEHAVIAC_ENUM_ITEM_EX(kSkillIdx0, "kSkillIdx0");
|
||||
BEHAVIAC_ENUM_ITEM_EX(kSkillIdx1, "kSkillIdx1");
|
||||
BEHAVIAC_ENUM_ITEM_EX(kSkillIdx2, "kSkillIdx2");
|
||||
}
|
||||
BEHAVIAC_END_ENUM_EX()
|
||||
|
||||
BEHAVIAC_BEGIN_ENUM_EX(BuffEffectType_e, BuffEffectType_e)
|
||||
{
|
||||
BEHAVIAC_ENUMCLASS_DISPLAY_INFO_EX(L"BuffEffectType_e", L"");
|
||||
|
||||
BEHAVIAC_ENUM_ITEM_EX(kBET_Building, "kBET_Building");
|
||||
BEHAVIAC_ENUM_ITEM_EX(kBET_Invincible, "kBET_Invincible");
|
||||
BEHAVIAC_ENUM_ITEM_EX(kBET_Vertigo, "kBET_Vertigo");
|
||||
BEHAVIAC_ENUM_ITEM_EX(kBET_HunLuan, "kBET_HunLuan");
|
||||
BEHAVIAC_ENUM_ITEM_EX(kBET_Hide, "kBET_Hide");
|
||||
BEHAVIAC_ENUM_ITEM_EX(kBET_Poisoning, "kBET_Poisoning");
|
||||
BEHAVIAC_ENUM_ITEM_EX(kBET_Driver, "kBET_Driver");
|
||||
BEHAVIAC_ENUM_ITEM_EX(kBET_Passenger, "kBET_Passenger");
|
||||
BEHAVIAC_ENUM_ITEM_EX(kBET_InGrass, "kBET_InGrass");
|
||||
BEHAVIAC_ENUM_ITEM_EX(kBET_InWater, "kBET_InWater");
|
||||
BEHAVIAC_ENUM_ITEM_EX(kBET_HoldShield, "kBET_HoldShield");
|
||||
}
|
||||
BEHAVIAC_END_ENUM_EX()
|
||||
|
||||
BEHAVIAC_BEGIN_ENUM_EX(BtEvent_e, BtEvent_e)
|
||||
{
|
||||
BEHAVIAC_ENUMCLASS_DISPLAY_INFO_EX(L"BtEvent_e", L"");
|
||||
|
||||
BEHAVIAC_ENUM_ITEM_EX(kUnderAttackEvent, "kUnderAttackEvent");
|
||||
BEHAVIAC_ENUM_ITEM_EX(kMasterUnderAttackEvent, "kMasterUnderAttackEvent");
|
||||
BEHAVIAC_ENUM_ITEM_EX(kMobaModeReviveEvent, "kMobaModeReviveEvent");
|
||||
}
|
||||
BEHAVIAC_END_ENUM_EX()
|
||||
|
||||
BEHAVIAC_BEGIN_ENUM_EX(GasMode_e, GasMode_e)
|
||||
{
|
||||
BEHAVIAC_ENUMCLASS_DISPLAY_INFO_EX(L"GasMode_e", L"");
|
||||
|
||||
BEHAVIAC_ENUM_ITEM_EX(GasInactive, "GasInactive");
|
||||
BEHAVIAC_ENUM_ITEM_EX(GasWaiting, "GasWaiting");
|
||||
BEHAVIAC_ENUM_ITEM_EX(GasMoving, "GasMoving");
|
||||
BEHAVIAC_ENUM_ITEM_EX(GasJump, "GasJump");
|
||||
}
|
||||
BEHAVIAC_END_ENUM_EX()
|
||||
|
||||
BEHAVIAC_BEGIN_ENUM_EX(CoId_e, CoId_e)
|
||||
{
|
||||
BEHAVIAC_ENUMCLASS_DISPLAY_INFO_EX(L"CoId_e", L"");
|
||||
|
||||
BEHAVIAC_ENUM_ITEM_EX(kCoFindPath, "kCoFindPath");
|
||||
BEHAVIAC_ENUM_ITEM_EX(kCoFindPathEx, "kCoFindPathEx");
|
||||
}
|
||||
BEHAVIAC_END_ENUM_EX()
|
||||
|
||||
BEHAVIAC_BEGIN_ENUM_EX(InventorySlot_e, InventorySlot_e)
|
||||
{
|
||||
BEHAVIAC_ENUMCLASS_DISPLAY_INFO_EX(L"InventorySlot_e", L"");
|
||||
|
||||
BEHAVIAC_ENUM_ITEM_EX(IS_FRAG, "IS_FRAG");
|
||||
BEHAVIAC_ENUM_ITEM_EX(IS_SMOKE, "IS_SMOKE");
|
||||
BEHAVIAC_ENUM_ITEM_EX(IS_MOLOTOR_COCKTAIL, "IS_MOLOTOR_COCKTAIL");
|
||||
BEHAVIAC_ENUM_ITEM_EX(kPreBattle, "kPreBattle");
|
||||
BEHAVIAC_ENUM_ITEM_EX(kFly, "kFly");
|
||||
BEHAVIAC_ENUM_ITEM_EX(kJump, "kJump");
|
||||
BEHAVIAC_ENUM_ITEM_EX(kBattling, "kBattling");
|
||||
}
|
||||
BEHAVIAC_END_ENUM_EX()
|
||||
|
||||
|
@ -11,63 +11,16 @@
|
||||
// Customized enums
|
||||
// -------------------
|
||||
|
||||
DECLARE_BEHAVIAC_ENUM_EX(SkillIdx_e, SkillIdx_e);
|
||||
BEHAVIAC_DECLARE_TYPE_VECTOR_HANDLER(SkillIdx_e);
|
||||
|
||||
|
||||
DECLARE_BEHAVIAC_ENUM_EX(BuffEffectType_e, BuffEffectType_e);
|
||||
BEHAVIAC_DECLARE_TYPE_VECTOR_HANDLER(BuffEffectType_e);
|
||||
|
||||
|
||||
DECLARE_BEHAVIAC_ENUM_EX(BtEvent_e, BtEvent_e);
|
||||
BEHAVIAC_DECLARE_TYPE_VECTOR_HANDLER(BtEvent_e);
|
||||
|
||||
|
||||
DECLARE_BEHAVIAC_ENUM_EX(GasMode_e, GasMode_e);
|
||||
BEHAVIAC_DECLARE_TYPE_VECTOR_HANDLER(GasMode_e);
|
||||
|
||||
|
||||
enum CoId_e
|
||||
enum State_e
|
||||
{
|
||||
kCoFindPath = 0,
|
||||
kCoFindPathEx = 1,
|
||||
kPreBattle = 1,
|
||||
kFly = 2,
|
||||
kJump = 3,
|
||||
kBattling = 4,
|
||||
};
|
||||
|
||||
DECLARE_BEHAVIAC_ENUM_EX(CoId_e, CoId_e);
|
||||
BEHAVIAC_DECLARE_TYPE_VECTOR_HANDLER(CoId_e);
|
||||
DECLARE_BEHAVIAC_ENUM_EX(State_e, State_e);
|
||||
BEHAVIAC_DECLARE_TYPE_VECTOR_HANDLER(State_e);
|
||||
|
||||
|
||||
DECLARE_BEHAVIAC_ENUM_EX(InventorySlot_e, InventorySlot_e);
|
||||
BEHAVIAC_DECLARE_TYPE_VECTOR_HANDLER(InventorySlot_e);
|
||||
|
||||
|
||||
// -------------------
|
||||
// Customized structs
|
||||
// -------------------
|
||||
|
||||
BEHAVIAC_EXTEND_EXISTING_TYPE_EX(glm::vec3, false);
|
||||
BEHAVIAC_DECLARE_TYPE_VECTOR_HANDLER(glm::vec3);
|
||||
|
||||
template< typename SWAPPER >
|
||||
inline void SwapByteImplement(glm::vec3& v)
|
||||
{
|
||||
SwapByteImplement< SWAPPER >(v.x);
|
||||
SwapByteImplement< SWAPPER >(v.y);
|
||||
SwapByteImplement< SWAPPER >(v.z);
|
||||
}
|
||||
|
||||
namespace behaviac
|
||||
{
|
||||
namespace PrivateDetails
|
||||
{
|
||||
template<>
|
||||
inline bool Equal(const glm::vec3& lhs, const glm::vec3& rhs)
|
||||
{
|
||||
return Equal(lhs.x, rhs.x)
|
||||
&& Equal(lhs.y, rhs.y)
|
||||
&& Equal(lhs.z, rhs.z);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endif // _BEHAVIAC_CUSTOMIZED_TYPES_H_
|
||||
|
@ -8,13 +8,9 @@
|
||||
#include "behaviac/behaviac.h"
|
||||
|
||||
// YOU SHOULD SET THE HEADER FILES OF YOUR GAME WHEN EXPORTING CPP FILES ON THE BEHAVIAC EDITOR:
|
||||
#include "base_agent.h"
|
||||
#include "android_agent.h"
|
||||
#include "hero_agent.h"
|
||||
#include "room_agent.h"
|
||||
#include "target_agent.h"
|
||||
#include "team_agent.h"
|
||||
#include "teammate_agent.h"
|
||||
#include "master_agent.h"
|
||||
|
||||
#include "behaviac_customized_types.h"
|
||||
|
||||
|
@ -1,51 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: boss\60100_leo.xml-->
|
||||
<behavior name="boss/60100_leo" agenttype="HeroAgent" version="5">
|
||||
<node class="IfElse" id="0">
|
||||
<node class="Action" id="1">
|
||||
<property Method="Self.HeroAgent::SearchEnemy(590)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="ReferencedBehavior" id="2">
|
||||
<property ReferenceBehavior="const string "task/ChaseToKill"" />
|
||||
<property Task="Self.HeroAgent::ChaseToKill(0,0,0)" />
|
||||
</node>
|
||||
<node class="IfElse" id="3">
|
||||
<node class="Sequence" id="11">
|
||||
<node class="Condition" id="13">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::IsNearGas(0)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Condition" id="12">
|
||||
<property Operator="Greater" />
|
||||
<property Opl="Self.HeroAgent::GetSafeAreaRadius()" />
|
||||
<property Opr="const float 300" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="ReferencedBehavior" id="5">
|
||||
<property ReferenceBehavior="const string "task/RunGas"" />
|
||||
<property Task="Self.HeroAgent::RunGas(0,0,0)" />
|
||||
</node>
|
||||
<node class="SelectorProbability" id="6">
|
||||
<node class="DecoratorWeight" id="7">
|
||||
<property DecorateWhenChildEnds="false" />
|
||||
<property Weight="const int 80" />
|
||||
<node class="Action" id="8">
|
||||
<property Method="Self.HeroAgent::CoIdle(1500,3000)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="DecoratorWeight" id="9">
|
||||
<property DecorateWhenChildEnds="false" />
|
||||
<property Weight="const int 20" />
|
||||
<node class="ReferencedBehavior" id="10">
|
||||
<property ReferenceBehavior="const string "task/RandomWalk"" />
|
||||
<property Task="Self.HeroAgent::RandomWalk(0,0,{x=0;y=0;z=0;})" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,122 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: function\FnFindPathToTarget.xml-->
|
||||
<behavior name="function/FnFindPathToTarget" agenttype="HeroAgent" version="5">
|
||||
<node class="Sequence" id="0">
|
||||
<node class="Assignment" id="1">
|
||||
<property CastRight="false" />
|
||||
<property Opl="float Self.HeroAgent::tmp_val0" />
|
||||
<property Opr="Self.BaseAgent::RandRangeAsFloat(50,125)" />
|
||||
</node>
|
||||
<node class="Assignment" id="2">
|
||||
<property CastRight="false" />
|
||||
<property Opl="glm::vec3 Self.HeroAgent::tmp_point0" />
|
||||
<property Opr="current_target_agent.TargetAgent::GetPos()" />
|
||||
</node>
|
||||
<node class="Assignment" id="13">
|
||||
<property CastRight="false" />
|
||||
<property Opl="float Self.HeroAgent::tmp_val1" />
|
||||
<property Opr="const float 0" />
|
||||
</node>
|
||||
<node class="Action" id="14">
|
||||
<property Method="Self.HeroAgent::DebugOut("ddddd寻路",0,0,0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="Parallel" id="4">
|
||||
<property ChildFinishPolicy="CHILDFINISH_ONCE" />
|
||||
<property ExitPolicy="EXIT_NONE" />
|
||||
<property FailurePolicy="FAIL_ON_ONE" />
|
||||
<property SuccessPolicy="SUCCEED_ON_ONE" />
|
||||
<node class="Action" id="3">
|
||||
<property Method="Self.HeroAgent::CoFindPathEx(glm::vec3 Self.HeroAgent::tmp_point0,float Self.HeroAgent::tmp_val0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
<attachment class="Precondition" id="8" flag="precondition">
|
||||
<property BinaryOperator="And" />
|
||||
<property Operator="Equal" />
|
||||
<property Opl="float Self.HeroAgent::tmp_val1" />
|
||||
<property Opr2="const float 0" />
|
||||
<property Phase="Enter" />
|
||||
</attachment>
|
||||
<attachment class="Effector" id="12" flag="effector">
|
||||
<property Operator="Assign" />
|
||||
<property Opl="float Self.HeroAgent::tmp_val1" />
|
||||
<property Opr2="const float 1" />
|
||||
<property Phase="Success" />
|
||||
</attachment>
|
||||
</node>
|
||||
<node class="DecoratorLoop" id="17">
|
||||
<property Count="const int -1" />
|
||||
<property DecorateWhenChildEnds="true" />
|
||||
<property DoneWithinFrame="false" />
|
||||
<attachment class="Precondition" id="33" flag="precondition">
|
||||
<property BinaryOperator="And" />
|
||||
<property Operator="Equal" />
|
||||
<property Opl="float Self.HeroAgent::tmp_val1" />
|
||||
<property Opr2="const float 0" />
|
||||
<property Phase="Both" />
|
||||
</attachment>
|
||||
<node class="IfElse" id="18">
|
||||
<node class="Or" id="22">
|
||||
<node class="Condition" id="20">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="current_target_agent.TargetAgent::HasBuffEffect(kBET_Hide)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Condition" id="21">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="current_target_agent.TargetAgent::HasBuffEffect(kBET_InGrass)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="Sequence" id="24">
|
||||
<node class="Action" id="5">
|
||||
<property Method="Self.HeroAgent::DebugOut("ddddd隐身随机走",0,0,0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="Selector" id="7">
|
||||
<node class="SelectorProbability" id="10">
|
||||
<node class="DecoratorWeight" id="15">
|
||||
<property DecorateWhenChildEnds="false" />
|
||||
<property Weight="const int 50" />
|
||||
<node class="ReferencedBehavior" id="19">
|
||||
<property ReferenceBehavior="const string "task/RandomWalk"" />
|
||||
<property Task="Self.HeroAgent::RandomWalk(0,0,{x=0;y=0;z=0;})" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="DecoratorWeight" id="16">
|
||||
<property DecorateWhenChildEnds="false" />
|
||||
<property Weight="const int 50" />
|
||||
<node class="ReferencedBehavior" id="11">
|
||||
<property ReferenceBehavior="const string "task/RandomShot"" />
|
||||
<property Task="Self.HeroAgent::RandomShot(0,0,{x=0;y=0;z=0;})" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
<node class="True" id="9" />
|
||||
</node>
|
||||
<node class="Action" id="6">
|
||||
<property Method="Self.HeroAgent::DebugOut("ddddd隐身改变量",0,0,0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="Assignment" id="26">
|
||||
<property CastRight="false" />
|
||||
<property Opl="float Self.HeroAgent::tmp_val1" />
|
||||
<property Opr="const float 1" />
|
||||
</node>
|
||||
<node class="Action" id="28">
|
||||
<property Method="Self.HeroAgent::DebugOut("ddddd隐身跳出循环",0,0,0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="Sequence" id="29">
|
||||
<node class="True" id="23" />
|
||||
<node class="Action" id="30">
|
||||
<property Method="Self.HeroAgent::DebugOut("ddddd没隐身返回真",0,0,0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,6 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: function\FnSelectSkill.xml-->
|
||||
<behavior name="function/FnSelectSkill" agenttype="HeroAgent" version="5">
|
||||
<node class="False" id="0" />
|
||||
</behavior>
|
@ -1,6 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: hero\30100_hill.xml-->
|
||||
<behavior name="hero/30100_hill" agenttype="HeroAgent" version="5">
|
||||
<node class="Noop" id="0" />
|
||||
</behavior>
|
@ -1,6 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: hero\30200_yamada.xml-->
|
||||
<behavior name="hero/30200_yamada" agenttype="HeroAgent" version="5">
|
||||
<node class="Noop" id="0" />
|
||||
</behavior>
|
@ -1,6 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: hero\30300_aoi.xml-->
|
||||
<behavior name="hero/30300_aoi" agenttype="HeroAgent" version="5">
|
||||
<node class="Noop" id="0" />
|
||||
</behavior>
|
@ -1,6 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: hero\30400_astral.xml-->
|
||||
<behavior name="hero/30400_astral" agenttype="HeroAgent" version="5">
|
||||
<node class="Noop" id="0" />
|
||||
</behavior>
|
@ -1,6 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: hero\30500_miffy.xml-->
|
||||
<behavior name="hero/30500_miffy" agenttype="HeroAgent" version="5">
|
||||
<node class="Noop" id="0" />
|
||||
</behavior>
|
@ -1,6 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: hero\30600_canoe.xml-->
|
||||
<behavior name="hero/30600_canoe" agenttype="HeroAgent" version="5">
|
||||
<node class="Noop" id="0" />
|
||||
</behavior>
|
@ -1,6 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: hero\30700_mariana.xml-->
|
||||
<behavior name="hero/30700_mariana" agenttype="HeroAgent" version="5">
|
||||
<node class="Noop" id="0" />
|
||||
</behavior>
|
@ -1,6 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: hero\30800_dragonscale.xml-->
|
||||
<behavior name="hero/30800_dragonscale" agenttype="HeroAgent" version="5">
|
||||
<node class="Noop" id="0" />
|
||||
</behavior>
|
@ -1,6 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: hero\30900_lazar.xml-->
|
||||
<behavior name="hero/30900_lazar" agenttype="HeroAgent" version="5">
|
||||
<node class="Noop" id="0" />
|
||||
</behavior>
|
@ -1,6 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: hero\31000_kurosawa.xml-->
|
||||
<behavior name="hero/31000_kurosawa" agenttype="HeroAgent" version="5">
|
||||
<node class="Noop" id="0" />
|
||||
</behavior>
|
@ -1,59 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: hero\standard.xml-->
|
||||
<behavior name="hero/standard" agenttype="HeroAgent" version="5">
|
||||
<node class="IfElse" id="4">
|
||||
<attachment class="Precondition" id="11" flag="precondition">
|
||||
<property BinaryOperator="And" />
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::IsDead()" />
|
||||
<property Opr2="const bool false" />
|
||||
<property Phase="Both" />
|
||||
</attachment>
|
||||
<attachment class="Precondition" id="12" flag="precondition">
|
||||
<property BinaryOperator="And" />
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.BaseAgent::IsGameOver()" />
|
||||
<property Opr2="const bool false" />
|
||||
<property Phase="Both" />
|
||||
</attachment>
|
||||
<node class="Condition" id="5">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="room_agent.RoomAgent::GetGasMode()" />
|
||||
<property Opr="const GasMode_e GasInactive" />
|
||||
</node>
|
||||
<node class="SelectorProbability" id="8">
|
||||
<node class="DecoratorWeight" id="7">
|
||||
<property DecorateWhenChildEnds="false" />
|
||||
<property Weight="const int 30" />
|
||||
<node class="ReferencedBehavior" id="6">
|
||||
<property ReferenceBehavior="const string "task/RandomWalk"" />
|
||||
<property Task="Self.HeroAgent::RandomWalk(0,0,{x=0;y=0;z=0;})" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="DecoratorWeight" id="9">
|
||||
<property DecorateWhenChildEnds="false" />
|
||||
<property Weight="const int 70" />
|
||||
<node class="Action" id="10">
|
||||
<property Method="Self.HeroAgent::CoIdle(2000,4000)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
<node class="IfElse" id="0">
|
||||
<node class="Condition" id="1">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::IsMobaMode()" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="ReferencedBehavior" id="2">
|
||||
<property ReferenceBehavior="const string "task/MobaMode"" />
|
||||
<property Task="Self.HeroAgent::MobaMode(0,0)" />
|
||||
</node>
|
||||
<node class="ReferencedBehavior" id="3">
|
||||
<property ReferenceBehavior="const string "task/ChiJiMode"" />
|
||||
<property Task="Self.HeroAgent::ChiMode()" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
29
server/bin/exported/hero_9011.xml
Normal file
29
server/bin/exported/hero_9011.xml
Normal file
@ -0,0 +1,29 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: hero_9011.xml-->
|
||||
<behavior name="hero_9011" agenttype="HeroAgent" version="5">
|
||||
<node class="IfElse" id="0">
|
||||
<node class="Condition" id="1">
|
||||
<property Operator="NotEqual" />
|
||||
<property Opl="Self.BaseAgent::HasBuffEffect(3)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Sequence" id="5">
|
||||
<node class="Action" id="6">
|
||||
<property Method="Self.BaseAgent::SetBulletTraceMode(true)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="Action" id="2">
|
||||
<property Method="Self.HeroAgent::DoAttack()" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
<attachment class="Event" id="4" flag="event">
|
||||
<property ReferenceFilename="hero_help_attack" />
|
||||
<property Task="Self.HeroAgent::OnMasterAttackTarget(0)" />
|
||||
<property TriggeredOnce="false" />
|
||||
<property TriggerMode="Return" />
|
||||
</attachment>
|
||||
</node>
|
||||
</node>
|
||||
<node class="True" id="3" />
|
||||
</node>
|
||||
</behavior>
|
42
server/bin/exported/hero_9012.xml
Normal file
42
server/bin/exported/hero_9012.xml
Normal file
@ -0,0 +1,42 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: hero_9012.xml-->
|
||||
<behavior name="hero_9012" agenttype="HeroAgent" version="5">
|
||||
<node class="IfElse" id="0">
|
||||
<node class="Condition" id="1">
|
||||
<property Operator="Greater" />
|
||||
<property Opl="Self.HeroAgent::GetMasterDistance()" />
|
||||
<property Opr="const float 300" />
|
||||
</node>
|
||||
<node class="Action" id="2">
|
||||
<property Method="Self.HeroAgent::DoFlyToMasterAround()" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="IfElse" id="3">
|
||||
<node class="Condition" id="4">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.BaseAgent::HasTarget(300)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Action" id="5">
|
||||
<property Method="Self.HeroAgent::DoPursuit()" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="IfElse" id="6">
|
||||
<node class="Condition" id="7">
|
||||
<property Operator="Greater" />
|
||||
<property Opl="Self.HeroAgent::GetMasterDistance()" />
|
||||
<property Opr="const float 150" />
|
||||
</node>
|
||||
<node class="Action" id="8">
|
||||
<property Method="Self.HeroAgent::DoFollowMaster()" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="Action" id="9">
|
||||
<property Method="Self.HeroAgent::DoIdle(500,1500)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
16
server/bin/exported/hero_help_attack.xml
Normal file
16
server/bin/exported/hero_help_attack.xml
Normal file
@ -0,0 +1,16 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: hero_help_attack.xml-->
|
||||
<behavior name="hero_help_attack" agenttype="HeroAgent" version="5">
|
||||
<pars>
|
||||
<par name="_$local_task_param_$_0" type="int" value="0" />
|
||||
</pars>
|
||||
<node class="Task" id="0">
|
||||
<property Prototype="Self.HeroAgent::OnMasterAttackTarget(0)" />
|
||||
<property IsHTN="false" />
|
||||
<node class="Action" id="1">
|
||||
<property Method="Self.HeroAgent::DoHelpAttack(int Self.HeroAgent::_$local_task_param_$_0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
9
server/bin/exported/hero_pve_01.xml
Normal file
9
server/bin/exported/hero_pve_01.xml
Normal file
@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: hero_pve_01.xml-->
|
||||
<behavior name="hero_pve_01" agenttype="HeroAgent" version="5">
|
||||
<node class="Action" id="0">
|
||||
<property Method="Self.HeroAgent::DoRandomWalk()" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
</behavior>
|
9
server/bin/exported/hero_pve_02.xml
Normal file
9
server/bin/exported/hero_pve_02.xml
Normal file
@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: hero_pve_02.xml-->
|
||||
<behavior name="hero_pve_02" agenttype="HeroAgent" version="5">
|
||||
<node class="Action" id="0">
|
||||
<property Method="Self.HeroAgent::DoPursuit()" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
</behavior>
|
@ -1,66 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<agents version="1" signature="2686576916">
|
||||
<agent type="HeroAgent" base="BaseAgent" signature="1955586164">
|
||||
<properties>
|
||||
<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="master_agent" type="MasterAgent*" member="false" static="false" defaultvalue="null" />
|
||||
<property name="out_errno" type="int" member="false" static="false" defaultvalue="0" />
|
||||
<property name="out_point0" type="glm::vec3" member="false" static="false" defaultvalue="{x=0;y=0;z=0;}" />
|
||||
<property name="out_point1" type="glm::vec3" member="false" static="false" defaultvalue="{x=0;y=0;z=0;}" />
|
||||
<property name="out_point2" type="glm::vec3" member="false" static="false" defaultvalue="{x=0;y=0;z=0;}" />
|
||||
<property name="out_val0" type="int" member="false" static="false" defaultvalue="0" />
|
||||
<property name="out_val1" type="float" member="false" static="false" defaultvalue="0" />
|
||||
<property name="out_val2" type="float" member="false" static="false" defaultvalue="0" />
|
||||
<property name="out_val3" type="float" member="false" static="false" defaultvalue="0" />
|
||||
<property name="out_val4" type="float" member="false" static="false" defaultvalue="0" />
|
||||
<property name="room_agent" type="RoomAgent*" member="false" static="false" defaultvalue="null" />
|
||||
<property name="task_param0" type="float" member="false" static="false" defaultvalue="0" />
|
||||
<property name="task_param1" type="float" member="false" static="false" defaultvalue="0" />
|
||||
<property name="task_param2" type="float" member="false" static="false" defaultvalue="0" />
|
||||
<property name="task_param3" type="float" member="false" static="false" defaultvalue="0" />
|
||||
<property name="task_param4" type="float" member="false" static="false" defaultvalue="0" />
|
||||
<property name="team_agent" type="TeamAgent*" member="false" static="false" defaultvalue="null" />
|
||||
<property name="tmp_point0" type="glm::vec3" member="false" static="false" defaultvalue="{x=0;y=0;z=0;}" />
|
||||
<property name="tmp_point1" type="glm::vec3" member="false" static="false" defaultvalue="{x=0;y=0;z=0;}" />
|
||||
<property name="tmp_point2" type="glm::vec3" member="false" static="false" defaultvalue="{x=0;y=0;z=0;}" />
|
||||
<property name="tmp_val0" type="float" member="false" static="false" defaultvalue="0" />
|
||||
<property name="tmp_val1" type="float" member="false" static="false" defaultvalue="0" />
|
||||
<property name="tmp_val2" type="float" member="false" static="false" defaultvalue="0" />
|
||||
<property name="tmp_val3" type="float" member="false" static="false" defaultvalue="0" />
|
||||
<property name="tmp_val4" type="float" member="false" static="false" defaultvalue="0" />
|
||||
</properties>
|
||||
</agent>
|
||||
<agent type="AndroidAgent" base="HeroAgent" signature="3669426665">
|
||||
<properties>
|
||||
<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="master_agent" type="MasterAgent*" member="false" static="false" defaultvalue="null" />
|
||||
<property name="out_errno" type="int" member="false" static="false" defaultvalue="0" />
|
||||
<property name="out_point0" type="glm::vec3" member="false" static="false" defaultvalue="{x=0;y=0;z=0;}" />
|
||||
<property name="out_point1" type="glm::vec3" member="false" static="false" defaultvalue="{x=0;y=0;z=0;}" />
|
||||
<property name="out_point2" type="glm::vec3" member="false" static="false" defaultvalue="{x=0;y=0;z=0;}" />
|
||||
<property name="out_val0" type="int" member="false" static="false" defaultvalue="0" />
|
||||
<property name="out_val1" type="float" member="false" static="false" defaultvalue="0" />
|
||||
<property name="out_val2" type="float" member="false" static="false" defaultvalue="0" />
|
||||
<property name="out_val3" type="float" member="false" static="false" defaultvalue="0" />
|
||||
<property name="out_val4" type="float" member="false" static="false" defaultvalue="0" />
|
||||
<property name="room_agent" type="RoomAgent*" member="false" static="false" defaultvalue="null" />
|
||||
<property name="task_param0" type="float" member="false" static="false" defaultvalue="0" />
|
||||
<property name="task_param1" type="float" member="false" static="false" defaultvalue="0" />
|
||||
<property name="task_param2" type="float" member="false" static="false" defaultvalue="0" />
|
||||
<property name="task_param3" type="float" member="false" static="false" defaultvalue="0" />
|
||||
<property name="task_param4" type="float" member="false" static="false" defaultvalue="0" />
|
||||
<property name="team_agent" type="TeamAgent*" member="false" static="false" defaultvalue="null" />
|
||||
<property name="tmp_point0" type="glm::vec3" member="false" static="false" defaultvalue="{x=0;y=0;z=0;}" />
|
||||
<property name="tmp_point1" type="glm::vec3" member="false" static="false" defaultvalue="{x=0;y=0;z=0;}" />
|
||||
<property name="tmp_point2" type="glm::vec3" member="false" static="false" defaultvalue="{x=0;y=0;z=0;}" />
|
||||
<property name="tmp_val0" type="float" member="false" static="false" defaultvalue="0" />
|
||||
<property name="tmp_val1" type="float" member="false" static="false" defaultvalue="0" />
|
||||
<property name="tmp_val2" type="float" member="false" static="false" defaultvalue="0" />
|
||||
<property name="tmp_val3" type="float" member="false" static="false" defaultvalue="0" />
|
||||
<property name="tmp_val4" type="float" member="false" static="false" defaultvalue="0" />
|
||||
</properties>
|
||||
</agent>
|
||||
</agents>
|
@ -1,3 +1,3 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<agents version="1" signature="3338390249" />
|
||||
<agents version="1" signature="1068415381" />
|
@ -1,79 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: monster\8002_thief.xml-->
|
||||
<behavior name="monster/8002_thief" agenttype="HeroAgent" version="5">
|
||||
<node class="IfElse" id="19">
|
||||
<node class="Condition" id="20">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::IsMobaMode()" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Noop" id="21" />
|
||||
<node class="IfElse" id="6">
|
||||
<node class="Action" id="7">
|
||||
<property Method="Self.HeroAgent::SearchEnemy(300)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="SelectorProbability" id="8">
|
||||
<node class="DecoratorWeight" id="9">
|
||||
<property DecorateWhenChildEnds="false" />
|
||||
<property Weight="const int 80" />
|
||||
<node class="ReferencedBehavior" id="2">
|
||||
<property ReferenceBehavior="const string "task/RandomWalk"" />
|
||||
<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" />
|
||||
</node>
|
||||
<node class="SelectorProbability" id="5">
|
||||
<node class="DecoratorWeight" id="10">
|
||||
<property DecorateWhenChildEnds="false" />
|
||||
<property Weight="const int 30" />
|
||||
<node class="ReferencedBehavior" id="11">
|
||||
<property ReferenceBehavior="const string "task/RandomWalk"" />
|
||||
<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 class="SelectorProbability" id="14">
|
||||
<node class="DecoratorWeight" id="15">
|
||||
<property DecorateWhenChildEnds="false" />
|
||||
<property Weight="const int 10" />
|
||||
<node class="ReferencedBehavior" id="16">
|
||||
<property ReferenceBehavior="const string "task/RandomWalk"" />
|
||||
<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>
|
||||
</behavior>
|
@ -1,79 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: monster\8003_mystery_troop.xml-->
|
||||
<behavior name="monster/8003_mystery_troop" agenttype="HeroAgent" version="5">
|
||||
<node class="IfElse" id="19">
|
||||
<node class="Condition" id="20">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::IsMobaMode()" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Noop" id="21" />
|
||||
<node class="IfElse" id="6">
|
||||
<node class="Action" id="7">
|
||||
<property Method="Self.HeroAgent::SearchEnemy(300)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="SelectorProbability" id="8">
|
||||
<node class="DecoratorWeight" id="9">
|
||||
<property DecorateWhenChildEnds="false" />
|
||||
<property Weight="const int 70" />
|
||||
<node class="ReferencedBehavior" id="2">
|
||||
<property ReferenceBehavior="const string "task/RandomWalk"" />
|
||||
<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" />
|
||||
</node>
|
||||
<node class="SelectorProbability" id="5">
|
||||
<node class="DecoratorWeight" id="10">
|
||||
<property DecorateWhenChildEnds="false" />
|
||||
<property Weight="const int 30" />
|
||||
<node class="ReferencedBehavior" id="11">
|
||||
<property ReferenceBehavior="const string "task/RandomWalk"" />
|
||||
<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 class="SelectorProbability" id="14">
|
||||
<node class="DecoratorWeight" id="15">
|
||||
<property DecorateWhenChildEnds="false" />
|
||||
<property Weight="const int 10" />
|
||||
<node class="ReferencedBehavior" id="16">
|
||||
<property ReferenceBehavior="const string "task/RandomWalk"" />
|
||||
<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>
|
||||
</behavior>
|
@ -1,49 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: npc\room.xml-->
|
||||
<behavior name="npc/room" agenttype="RoomAgent" version="5">
|
||||
<node class="Parallel" id="0">
|
||||
<property ChildFinishPolicy="CHILDFINISH_ONCE" />
|
||||
<property ExitPolicy="EXIT_NONE" />
|
||||
<property FailurePolicy="FAIL_ON_ONE" />
|
||||
<property SuccessPolicy="SUCCEED_ON_ONE" />
|
||||
<node class="Action" id="1">
|
||||
<property Method="Self.BaseAgent::CoTest(50000)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
<attachment class="Precondition" id="5" flag="precondition">
|
||||
<property BinaryOperator="And" />
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.BaseAgent::Test(2)" />
|
||||
<property Opr2="const int 2" />
|
||||
<property Phase="Both" />
|
||||
</attachment>
|
||||
</node>
|
||||
<node class="DecoratorLoop" id="2">
|
||||
<property Count="const int -1" />
|
||||
<property DecorateWhenChildEnds="true" />
|
||||
<property DoneWithinFrame="false" />
|
||||
<attachment class="Precondition" id="4" flag="precondition">
|
||||
<property BinaryOperator="And" />
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.BaseAgent::Test(1)" />
|
||||
<property Opr2="const int 1" />
|
||||
<property Phase="Both" />
|
||||
</attachment>
|
||||
<attachment class="Effector" id="6" flag="effector">
|
||||
<property Operator="Invalid" />
|
||||
<property Opl="Self.BaseAgent::Test(3)" />
|
||||
<property Phase="Both" />
|
||||
</attachment>
|
||||
<node class="Sequence" id="7">
|
||||
<node class="Action" id="3">
|
||||
<property Method="Self.BaseAgent::CoTest1(5000)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="Action" id="8">
|
||||
<property Method="Self.BaseAgent::Test(5)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,26 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: pet\9011_dragon_cannon.xml-->
|
||||
<behavior name="pet/9011_dragon_cannon" agenttype="HeroAgent" version="5">
|
||||
<node class="IfElse" id="0">
|
||||
<node class="Condition" id="1">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::HasBuffEffect(kBET_Building)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Noop" id="2" />
|
||||
<node class="IfElse" id="3">
|
||||
<node class="Action" id="4">
|
||||
<property Method="Self.HeroAgent::SearchEnemy(300)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="ReferencedBehavior" id="5">
|
||||
<property ReferenceBehavior="const string "task/StayPutAttack"" />
|
||||
</node>
|
||||
<node class="Action" id="6">
|
||||
<property Method="Self.HeroAgent::CoIdle(1500,3000)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,46 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: pet\9012_robot.xml-->
|
||||
<behavior name="pet/9012_robot" agenttype="HeroAgent" version="5">
|
||||
<node class="Sequence" id="0">
|
||||
<node class="IfElse" id="1">
|
||||
<node class="Condition" id="2">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::MasterInRange(300)" />
|
||||
<property Opr="const bool false" />
|
||||
</node>
|
||||
<node class="ReferencedBehavior" id="3">
|
||||
<property ReferenceBehavior="const string "task/FollowMaster"" />
|
||||
<property Task="Self.HeroAgent::FollowMaster({x=0;y=0;z=0;},0)" />
|
||||
</node>
|
||||
<node class="IfElse" id="4">
|
||||
<node class="Action" id="5">
|
||||
<property Method="Self.HeroAgent::SearchEnemy(400)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="ReferencedBehavior" id="6">
|
||||
<property ReferenceBehavior="const string "task/ChaseToKill"" />
|
||||
<property Task="Self.HeroAgent::ChaseToKill(0,0,0)" />
|
||||
</node>
|
||||
<node class="SelectorProbability" id="7">
|
||||
<node class="DecoratorWeight" id="8">
|
||||
<property DecorateWhenChildEnds="false" />
|
||||
<property Weight="const int 30" />
|
||||
<node class="Action" id="9">
|
||||
<property Method="Self.HeroAgent::CoIdle(1500,3500)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="DecoratorWeight" id="10">
|
||||
<property DecorateWhenChildEnds="false" />
|
||||
<property Weight="const int 60" />
|
||||
<node class="ReferencedBehavior" id="11">
|
||||
<property ReferenceBehavior="const string "task/RandomWalk"" />
|
||||
<property Task="Self.HeroAgent::RandomWalk(0,0,{x=0;y=0;z=0;})" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,41 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: skill\30100_hill.xml-->
|
||||
<behavior name="skill/30100_hill" agenttype="HeroAgent" version="5">
|
||||
<pars>
|
||||
<par name="_$local_task_param_$_0" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_1" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_2" type="int" value="0" />
|
||||
</pars>
|
||||
<node class="Task" id="0">
|
||||
<property Prototype="Self.HeroAgent::UseSkill30100(0,0,0)" />
|
||||
<property IsHTN="false" />
|
||||
<node class="Sequence" id="1">
|
||||
<node class="IfElse" id="2">
|
||||
<node class="Condition" id="3">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::CanUseSkill(0)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Action" id="4">
|
||||
<property Method="Self.HeroAgent::CoUseSkill(0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="IfElse" id="5">
|
||||
<node class="Condition" id="6">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::CanUseSkill(1)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="ReferencedBehavior" id="7">
|
||||
<property ReferenceBehavior="const string "skill/normal"" />
|
||||
</node>
|
||||
<node class="Action" id="8">
|
||||
<property Method="Self.HeroAgent::Abort("use skill error",0:)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,41 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: skill\30200_yamada.xml-->
|
||||
<behavior name="skill/30200_yamada" agenttype="HeroAgent" version="5">
|
||||
<pars>
|
||||
<par name="_$local_task_param_$_0" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_1" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_2" type="int" value="0" />
|
||||
</pars>
|
||||
<node class="Task" id="0">
|
||||
<property Prototype="Self.HeroAgent::UseSkill30100(0,0,0)" />
|
||||
<property IsHTN="false" />
|
||||
<node class="Sequence" id="1">
|
||||
<node class="IfElse" id="2">
|
||||
<node class="Condition" id="3">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::CanUseSkill(0)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Action" id="4">
|
||||
<property Method="Self.HeroAgent::CoUseSkill(0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="IfElse" id="5">
|
||||
<node class="Condition" id="6">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::CanUseSkill(1)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="ReferencedBehavior" id="7">
|
||||
<property ReferenceBehavior="const string "skill/normal"" />
|
||||
</node>
|
||||
<node class="Action" id="8">
|
||||
<property Method="Self.HeroAgent::Abort("use skill error",0:)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,41 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: skill\30300_aoi.xml-->
|
||||
<behavior name="skill/30300_aoi" agenttype="HeroAgent" version="5">
|
||||
<pars>
|
||||
<par name="_$local_task_param_$_0" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_1" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_2" type="int" value="0" />
|
||||
</pars>
|
||||
<node class="Task" id="0">
|
||||
<property Prototype="Self.HeroAgent::UseSkill30100(0,0,0)" />
|
||||
<property IsHTN="false" />
|
||||
<node class="Sequence" id="1">
|
||||
<node class="IfElse" id="2">
|
||||
<node class="Condition" id="3">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::CanUseSkill(0)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Action" id="4">
|
||||
<property Method="Self.HeroAgent::CoUseSkill(0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="IfElse" id="5">
|
||||
<node class="Condition" id="6">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::CanUseSkill(1)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="ReferencedBehavior" id="7">
|
||||
<property ReferenceBehavior="const string "skill/normal"" />
|
||||
</node>
|
||||
<node class="Action" id="8">
|
||||
<property Method="Self.HeroAgent::Abort("use skill error",0:)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,41 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: skill\30400_astral.xml-->
|
||||
<behavior name="skill/30400_astral" agenttype="HeroAgent" version="5">
|
||||
<pars>
|
||||
<par name="_$local_task_param_$_0" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_1" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_2" type="int" value="0" />
|
||||
</pars>
|
||||
<node class="Task" id="0">
|
||||
<property Prototype="Self.HeroAgent::UseSkill30100(0,0,0)" />
|
||||
<property IsHTN="false" />
|
||||
<node class="Sequence" id="1">
|
||||
<node class="IfElse" id="2">
|
||||
<node class="Condition" id="3">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::CanUseSkill(0)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Action" id="4">
|
||||
<property Method="Self.HeroAgent::CoUseSkill(0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="IfElse" id="5">
|
||||
<node class="Condition" id="6">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::CanUseSkill(1)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="ReferencedBehavior" id="7">
|
||||
<property ReferenceBehavior="const string "skill/normal"" />
|
||||
</node>
|
||||
<node class="Action" id="8">
|
||||
<property Method="Self.HeroAgent::Abort("use skill error",0:)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,41 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: skill\30500_miffy.xml-->
|
||||
<behavior name="skill/30500_miffy" agenttype="HeroAgent" version="5">
|
||||
<pars>
|
||||
<par name="_$local_task_param_$_0" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_1" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_2" type="int" value="0" />
|
||||
</pars>
|
||||
<node class="Task" id="0">
|
||||
<property Prototype="Self.HeroAgent::UseSkill30100(0,0,0)" />
|
||||
<property IsHTN="false" />
|
||||
<node class="Sequence" id="1">
|
||||
<node class="IfElse" id="2">
|
||||
<node class="Condition" id="3">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::CanUseSkill(0)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Action" id="4">
|
||||
<property Method="Self.HeroAgent::CoUseSkill(0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="IfElse" id="5">
|
||||
<node class="Condition" id="6">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::CanUseSkill(1)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="ReferencedBehavior" id="7">
|
||||
<property ReferenceBehavior="const string "skill/normal"" />
|
||||
</node>
|
||||
<node class="Action" id="8">
|
||||
<property Method="Self.HeroAgent::Abort("use skill error",0:)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,41 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: skill\30600_canoe.xml-->
|
||||
<behavior name="skill/30600_canoe" agenttype="HeroAgent" version="5">
|
||||
<pars>
|
||||
<par name="_$local_task_param_$_0" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_1" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_2" type="int" value="0" />
|
||||
</pars>
|
||||
<node class="Task" id="0">
|
||||
<property Prototype="Self.HeroAgent::UseSkill30100(0,0,0)" />
|
||||
<property IsHTN="false" />
|
||||
<node class="Sequence" id="1">
|
||||
<node class="IfElse" id="2">
|
||||
<node class="Condition" id="3">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::CanUseSkill(0)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Action" id="4">
|
||||
<property Method="Self.HeroAgent::CoUseSkill(0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="IfElse" id="5">
|
||||
<node class="Condition" id="6">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::CanUseSkill(1)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="ReferencedBehavior" id="7">
|
||||
<property ReferenceBehavior="const string "skill/normal"" />
|
||||
</node>
|
||||
<node class="Action" id="8">
|
||||
<property Method="Self.HeroAgent::Abort("use skill error",0:)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,41 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: skill\30700_mariana.xml-->
|
||||
<behavior name="skill/30700_mariana" agenttype="HeroAgent" version="5">
|
||||
<pars>
|
||||
<par name="_$local_task_param_$_0" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_1" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_2" type="int" value="0" />
|
||||
</pars>
|
||||
<node class="Task" id="0">
|
||||
<property Prototype="Self.HeroAgent::UseSkill30100(0,0,0)" />
|
||||
<property IsHTN="false" />
|
||||
<node class="Sequence" id="1">
|
||||
<node class="IfElse" id="2">
|
||||
<node class="Condition" id="3">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::CanUseSkill(0)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Action" id="4">
|
||||
<property Method="Self.HeroAgent::CoUseSkill(0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="IfElse" id="5">
|
||||
<node class="Condition" id="6">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::CanUseSkill(1)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="ReferencedBehavior" id="7">
|
||||
<property ReferenceBehavior="const string "skill/normal"" />
|
||||
</node>
|
||||
<node class="Action" id="8">
|
||||
<property Method="Self.HeroAgent::Abort("use skill error",0:)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,41 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: skill\30800_dragonscale.xml-->
|
||||
<behavior name="skill/30800_dragonscale" agenttype="HeroAgent" version="5">
|
||||
<pars>
|
||||
<par name="_$local_task_param_$_0" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_1" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_2" type="int" value="0" />
|
||||
</pars>
|
||||
<node class="Task" id="0">
|
||||
<property Prototype="Self.HeroAgent::UseSkill30100(0,0,0)" />
|
||||
<property IsHTN="false" />
|
||||
<node class="Sequence" id="1">
|
||||
<node class="IfElse" id="2">
|
||||
<node class="Condition" id="3">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::CanUseSkill(0)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Action" id="4">
|
||||
<property Method="Self.HeroAgent::CoUseSkill(0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="IfElse" id="5">
|
||||
<node class="Condition" id="6">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::CanUseSkill(1)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="ReferencedBehavior" id="7">
|
||||
<property ReferenceBehavior="const string "skill/normal"" />
|
||||
</node>
|
||||
<node class="Action" id="8">
|
||||
<property Method="Self.HeroAgent::Abort("use skill error",0:)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,41 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: skill\30900_lazar.xml-->
|
||||
<behavior name="skill/30900_lazar" agenttype="HeroAgent" version="5">
|
||||
<pars>
|
||||
<par name="_$local_task_param_$_0" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_1" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_2" type="int" value="0" />
|
||||
</pars>
|
||||
<node class="Task" id="0">
|
||||
<property Prototype="Self.HeroAgent::UseSkill30100(0,0,0)" />
|
||||
<property IsHTN="false" />
|
||||
<node class="Sequence" id="1">
|
||||
<node class="IfElse" id="2">
|
||||
<node class="Condition" id="3">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::CanUseSkill(0)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Action" id="4">
|
||||
<property Method="Self.HeroAgent::CoUseSkill(0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="IfElse" id="5">
|
||||
<node class="Condition" id="6">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::CanUseSkill(1)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="ReferencedBehavior" id="7">
|
||||
<property ReferenceBehavior="const string "skill/normal"" />
|
||||
</node>
|
||||
<node class="Action" id="8">
|
||||
<property Method="Self.HeroAgent::Abort("use skill error",0:)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,41 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: skill\31000_kurosawa.xml-->
|
||||
<behavior name="skill/31000_kurosawa" agenttype="HeroAgent" version="5">
|
||||
<pars>
|
||||
<par name="_$local_task_param_$_0" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_1" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_2" type="int" value="0" />
|
||||
</pars>
|
||||
<node class="Task" id="0">
|
||||
<property Prototype="Self.HeroAgent::UseSkill30100(0,0,0)" />
|
||||
<property IsHTN="false" />
|
||||
<node class="Sequence" id="1">
|
||||
<node class="IfElse" id="2">
|
||||
<node class="Condition" id="3">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::CanUseSkill(0)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Action" id="4">
|
||||
<property Method="Self.HeroAgent::CoUseSkill(0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="IfElse" id="5">
|
||||
<node class="Condition" id="6">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::CanUseSkill(1)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="ReferencedBehavior" id="7">
|
||||
<property ReferenceBehavior="const string "skill/normal"" />
|
||||
</node>
|
||||
<node class="Action" id="8">
|
||||
<property Method="Self.HeroAgent::Abort("use skill error",0:)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,75 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: skill\60100_leo.xml-->
|
||||
<behavior name="skill/60100_leo" agenttype="HeroAgent" version="5">
|
||||
<pars>
|
||||
<par name="_$local_task_param_$_0" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_1" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_2" type="int" value="0" />
|
||||
</pars>
|
||||
<node class="Task" id="0">
|
||||
<property Prototype="Self.HeroAgent::UseSkill30100(0,0,0)" />
|
||||
<property IsHTN="false" />
|
||||
<node class="Sequence" id="1">
|
||||
<node class="SelectorStochastic" id="2">
|
||||
<node class="Sequence" id="3">
|
||||
<node class="Condition" id="12">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::SearchEnemy(180)" />
|
||||
<property Opr="const behaviac::EBTStatus BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="Condition" id="4">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::CanUseSkill(60101)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Action" id="5">
|
||||
<property Method="Self.HeroAgent::CoUseSkill(60101)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="Sequence" id="6">
|
||||
<node class="Condition" id="13">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::SearchEnemy(220)" />
|
||||
<property Opr="const behaviac::EBTStatus BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="Condition" id="7">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::CanUseSkill(60121)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Action" id="8">
|
||||
<property Method="Self.HeroAgent::CoUseSkill(60121)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="Sequence" id="9">
|
||||
<node class="Condition" id="14">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::SearchEnemy(500)" />
|
||||
<property Opr="const behaviac::EBTStatus BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="Condition" id="10">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::CanUseSkill(60111)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Assignment" id="15">
|
||||
<property CastRight="false" />
|
||||
<property Opl="glm::vec3 Self.HeroAgent::tmp_point1" />
|
||||
<property Opr="Self.HeroAgent::GetTargetDir()" />
|
||||
</node>
|
||||
<node class="Action" id="16">
|
||||
<property Method="Self.HeroAgent::SetAttackDir(glm::vec3 Self.HeroAgent::tmp_point0)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="Action" id="11">
|
||||
<property Method="Self.HeroAgent::CoUseSkill(60111)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,15 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: skill\normal.xml-->
|
||||
<behavior name="skill/normal" agenttype="HeroAgent" version="5">
|
||||
<pars>
|
||||
<par name="_$local_task_param_$_0" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_1" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_2" type="int" value="0" />
|
||||
</pars>
|
||||
<node class="Task" id="0">
|
||||
<property Prototype="Self.HeroAgent::UseNormalSkill(0,0,0)" />
|
||||
<property IsHTN="false" />
|
||||
<node class="Noop" id="1" />
|
||||
</node>
|
||||
</behavior>
|
@ -1,31 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: task\BattleMove.xml-->
|
||||
<behavior name="task/BattleMove" agenttype="HeroAgent" version="5">
|
||||
<pars>
|
||||
<par name="_$local_task_param_$_0" type="glm::vec3" value="{x=0;y=0;z=0;}" />
|
||||
</pars>
|
||||
<node class="Task" id="0">
|
||||
<property Prototype="Self.HeroAgent::BattleMove({x=0;y=0;z=0;})" />
|
||||
<property IsHTN="false" />
|
||||
<node class="Sequence" id="1">
|
||||
<node class="Assignment" id="4">
|
||||
<property CastRight="false" />
|
||||
<property Opl="glm::vec3 Self.HeroAgent::_$local_task_param_$_0" />
|
||||
<property Opr="Self.HeroAgent::GetRandomDir()" />
|
||||
</node>
|
||||
<node class="Action" id="3">
|
||||
<property Method="Self.HeroAgent::SetMoveDir(glm::vec3 Self.HeroAgent::_$local_task_param_$_0)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="Action" id="5">
|
||||
<property Method="Self.HeroAgent::SetAttackDir(glm::vec3 Self.HeroAgent::_$local_task_param_$_0)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="Action" id="2">
|
||||
<property Method="Self.HeroAgent::CoMoveForward(50,80)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,44 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: task\ChaosBattle.xml-->
|
||||
<behavior name="task/ChaosBattle" agenttype="HeroAgent" version="5">
|
||||
<pars>
|
||||
<par name="loc_point1" type="glm::vec3" value="{x=0;y=0;z=0;}" />
|
||||
<par name="_$local_task_param_$_0" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_1" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_2" type="glm::vec3" value="{x=0;y=0;z=0;}" />
|
||||
<par name="loc_val2" type="int" value="0" />
|
||||
</pars>
|
||||
<node class="IfElse" id="0">
|
||||
<node class="Or" id="1">
|
||||
<node class="Condition" id="2">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="current_target_agent.TargetAgent::HasBuffEffect(kBET_Hide)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Condition" id="3">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="current_target_agent.TargetAgent::HasBuffEffect(kBET_InGrass)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="Sequence" id="4">
|
||||
<node class="Action" id="6">
|
||||
<property Method="Self.HeroAgent::DebugOut("dddddchaosbattle随机走",0,0,0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="ReferencedBehavior" id="5">
|
||||
<property ReferenceBehavior="const string "task/RandomWalk"" />
|
||||
<property Task="Self.HeroAgent::RandomWalk(0,0,{x=0;y=0;z=0;})" />
|
||||
</node>
|
||||
<node class="False" id="10" />
|
||||
</node>
|
||||
<node class="Sequence" id="8">
|
||||
<node class="Action" id="9">
|
||||
<property Method="Self.HeroAgent::DebugOut("dddddchaosbattle空操作",0,0,0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="True" id="7" />
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,465 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: task\ChaseToKill.xml-->
|
||||
<behavior name="task/ChaseToKill" agenttype="HeroAgent" version="5">
|
||||
<pars>
|
||||
<par name="_$local_task_param_$_0" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_1" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_2" type="int" value="0" />
|
||||
</pars>
|
||||
<node class="Task" id="0">
|
||||
<property Prototype="Self.HeroAgent::ChaseToKill(0,0,0)" />
|
||||
<property IsHTN="false" />
|
||||
<node class="Sequence" id="1">
|
||||
<node class="Assignment" id="2">
|
||||
<property CastRight="false" />
|
||||
<property Opl="int Self.HeroAgent::_$local_task_param_$_0" />
|
||||
<property Opr="const int 0" />
|
||||
</node>
|
||||
<node class="Action" id="7">
|
||||
<property Method="Self.HeroAgent::ResetShotTimes()" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="Action" id="8">
|
||||
<property Method="Self.HeroAgent::ResetUseSkillTimes()" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="DecoratorLoop" id="3">
|
||||
<property Count="const int -1" />
|
||||
<property DecorateWhenChildEnds="true" />
|
||||
<property DoneWithinFrame="false" />
|
||||
<attachment class="Precondition" id="4" flag="precondition">
|
||||
<property BinaryOperator="And" />
|
||||
<property Operator="NotEqual" />
|
||||
<property Opl="Self.HeroAgent::IsDead()" />
|
||||
<property Opr2="const bool true" />
|
||||
<property Phase="Both" />
|
||||
</attachment>
|
||||
<attachment class="Precondition" id="5" flag="precondition">
|
||||
<property BinaryOperator="And" />
|
||||
<property Operator="Equal" />
|
||||
<property Opl="current_target_agent.TargetAgent::IsValid()" />
|
||||
<property Opr2="const bool true" />
|
||||
<property Phase="Both" />
|
||||
</attachment>
|
||||
<node class="Sequence" id="6">
|
||||
<node class="Selector" id="108">
|
||||
<node class="ReferencedBehavior" id="106">
|
||||
<property ReferenceBehavior="const string "task/Pickup"" />
|
||||
<property Task="Self.HeroAgent::PickupItem(0,0,{x=0;y=0;z=0;})" />
|
||||
</node>
|
||||
<node class="True" id="107" />
|
||||
</node>
|
||||
<node class="IfElse" id="118">
|
||||
<node class="Condition" id="120">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::CanAttack()" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="True" id="121" />
|
||||
<node class="Sequence" id="122">
|
||||
<node class="Action" id="123">
|
||||
<property Method="current_target_agent.TargetAgent::Abandon(0,0)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="False" id="124" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="Selector" id="100">
|
||||
<node class="IfElse" id="9">
|
||||
<node class="Condition" id="10">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::TargetInShotRange()" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="IfElse" id="11">
|
||||
<node class="Sequence" id="77">
|
||||
<node class="Action" id="80">
|
||||
<property Method="Self.HeroAgent::DebugOut("ddddd可射击嘛?",0,0,0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="Action" id="12">
|
||||
<property Method="Self.HeroAgent::CoShotCurrentTargetRaycast()" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="Or" id="84">
|
||||
<node class="And" id="68">
|
||||
<node class="Condition" id="78">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="current_target_agent.TargetAgent::HasBuffEffect(kBET_InGrass)" />
|
||||
<property Opr="const bool false" />
|
||||
</node>
|
||||
<node class="Condition" id="79">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="current_target_agent.TargetAgent::HasBuffEffect(kBET_Hide)" />
|
||||
<property Opr="const bool false" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="And" id="85">
|
||||
<node class="Or" id="86">
|
||||
<node class="Condition" id="87">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="current_target_agent.TargetAgent::HasBuffEffect(kBET_InGrass)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Condition" id="88">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="current_target_agent.TargetAgent::HasBuffEffect(kBET_Hide)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="Condition" id="89">
|
||||
<property Operator="LessEqual" />
|
||||
<property Opl="Self.HeroAgent::GetTargetManhattanDistance()" />
|
||||
<property Opr="const float 80" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
<node class="IfElse" id="13">
|
||||
<node class="Condition" id="14">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::HasUseableSkill()" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Sequence" id="15">
|
||||
<node class="Action" id="83">
|
||||
<property Method="Self.HeroAgent::DebugOut("ddddd发技能",0,0,0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="ReferencedBehavior" id="38">
|
||||
<property ReferenceBehavior="Self.HeroAgent::GetSkillBtFile()" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="IfElse" id="26">
|
||||
<node class="Condition" id="27">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::CanShot()" />
|
||||
<property Opr="const bool false" />
|
||||
</node>
|
||||
<node class="IfElse" id="36">
|
||||
<node class="Selector" id="22">
|
||||
<node class="Selector" id="119">
|
||||
<node class="Sequence" id="105">
|
||||
<node class="Condition" id="110">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::CanThrowItem(IS_FRAG)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Action" id="111">
|
||||
<property Method="Self.HeroAgent::ThrowItem(IS_FRAG)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="Sequence" id="116">
|
||||
<node class="Condition" id="112">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::CanThrowItem(IS_SMOKE)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Action" id="113">
|
||||
<property Method="Self.HeroAgent::ThrowItem(IS_SMOKE)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="Sequence" id="117">
|
||||
<node class="Condition" id="114">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::CanThrowItem(IS_MOLOTOR_COCKTAIL)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Action" id="115">
|
||||
<property Method="Self.HeroAgent::ThrowItem(IS_MOLOTOR_COCKTAIL)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
<node class="True" id="109" />
|
||||
</node>
|
||||
<node class="Sequence" id="17">
|
||||
<node class="Action" id="76">
|
||||
<property Method="Self.HeroAgent::DebugOut("ddddd要战斗走位了",0,0,0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="Condition" id="28">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::IsMoving()" />
|
||||
<property Opr="const bool false" />
|
||||
</node>
|
||||
<node class="ReferencedBehavior" id="29">
|
||||
<property ReferenceBehavior="const string "task/BattleMove"" />
|
||||
<property Task="Self.HeroAgent::BattleMove({x=0;y=0;z=0;})" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="Sequence" id="81">
|
||||
<node class="Action" id="82">
|
||||
<property Method="Self.HeroAgent::DebugOut("ddddd空操作1",0,0,0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="Noop" id="37" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="IfElse" id="33">
|
||||
<node class="False" id="34" />
|
||||
<node class="Sequence" id="90">
|
||||
<node class="Action" id="91">
|
||||
<property Method="Self.HeroAgent::DebugOut("ddddd空操作2",0,0,0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="Noop" id="35" />
|
||||
</node>
|
||||
<node class="Sequence" id="16">
|
||||
<node class="Action" id="75">
|
||||
<property Method="Self.HeroAgent::DebugOut("ddddd要射击了",0,0,0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="Assignment" id="19">
|
||||
<property CastRight="false" />
|
||||
<property Opl="glm::vec3 Self.HeroAgent::tmp_point0" />
|
||||
<property Opr="Self.HeroAgent::GetTargetDir()" />
|
||||
</node>
|
||||
<node class="Action" id="20">
|
||||
<property Method="Self.HeroAgent::SetAttackDir(glm::vec3 Self.HeroAgent::tmp_point0)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="Action" id="104">
|
||||
<property Method="Self.HeroAgent::SetBulletAngleOffset(0,30)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="Action" id="18">
|
||||
<property Method="Self.HeroAgent::ShotNormal(glm::vec3 Self.HeroAgent::tmp_point0)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
<node class="IfElse" id="21">
|
||||
<node class="Condition" id="30">
|
||||
<property Operator="Less" />
|
||||
<property Opl="Self.HeroAgent::GetTargetManhattanDistance()" />
|
||||
<property Opr="const float 80" />
|
||||
</node>
|
||||
<node class="Sequence" id="92">
|
||||
<node class="Action" id="93">
|
||||
<property Method="Self.HeroAgent::DebugOut("ddddd不可射击随机走",0,0,0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="SelectorProbability" id="97">
|
||||
<node class="DecoratorWeight" id="98">
|
||||
<property DecorateWhenChildEnds="false" />
|
||||
<property Weight="const int 50" />
|
||||
<node class="ReferencedBehavior" id="31">
|
||||
<property ReferenceBehavior="const string "task/RandomWalk"" />
|
||||
<property Task="Self.HeroAgent::RandomWalk(0,0,{x=0;y=0;z=0;})" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="DecoratorWeight" id="99">
|
||||
<property DecorateWhenChildEnds="false" />
|
||||
<property Weight="const int 50" />
|
||||
<node class="ReferencedBehavior" id="96">
|
||||
<property ReferenceBehavior="const string "task/RandomShot"" />
|
||||
<property Task="Self.HeroAgent::RandomShot(0,0,{x=0;y=0;z=0;})" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
<node class="Sequence" id="94">
|
||||
<node class="Action" id="95">
|
||||
<property Method="Self.HeroAgent::DebugOut("ddddd不可射击寻路",0,0,0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="ReferencedBehavior" id="32">
|
||||
<property ReferenceBehavior="const string "function/FnFindPathToTarget"" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
<node class="ReferencedBehavior" id="24">
|
||||
<property ReferenceBehavior="const string "function/FnFindPathToTarget"" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="True" id="101" />
|
||||
</node>
|
||||
<node class="Action" id="102">
|
||||
<property Method="Self.HeroAgent::DebugOut("ddddd是否走逃跑逻辑",0,0,0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="IfElse" id="23">
|
||||
<attachment class="Precondition" id="45" flag="precondition">
|
||||
<property BinaryOperator="And" />
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::IsDead()" />
|
||||
<property Opr2="const bool false" />
|
||||
<property Phase="Both" />
|
||||
</attachment>
|
||||
<attachment class="Precondition" id="46" flag="precondition">
|
||||
<property BinaryOperator="And" />
|
||||
<property Operator="Equal" />
|
||||
<property Opl="current_target_agent.TargetAgent::IsValid()" />
|
||||
<property Opr2="const bool true" />
|
||||
<property Phase="Both" />
|
||||
</attachment>
|
||||
<node class="Sequence" id="39">
|
||||
<attachment class="Precondition" id="51" flag="precondition">
|
||||
<property BinaryOperator="And" />
|
||||
<property Operator="LessEqual" />
|
||||
<property Opl="Self.HeroAgent::GetHPRate()" />
|
||||
<property Opr2="const float 0.3" />
|
||||
<property Phase="Both" />
|
||||
</attachment>
|
||||
<attachment class="Precondition" id="52" flag="precondition">
|
||||
<property BinaryOperator="And" />
|
||||
<property Operator="GreaterEqual" />
|
||||
<property Opl="current_target_agent.TargetAgent::GetHPRate()" />
|
||||
<property Opr2="const float 0.33" />
|
||||
<property Phase="Both" />
|
||||
</attachment>
|
||||
<node class="Condition" id="49">
|
||||
<property Operator="Greater" />
|
||||
<property Opl="Self.HeroAgent::GetAliveEnemyNum()" />
|
||||
<property Opr="const int 1" />
|
||||
</node>
|
||||
<node class="Condition" id="50">
|
||||
<property Operator="Greater" />
|
||||
<property Opl="Self.HeroAgent::GetSafeAreaRadius()" />
|
||||
<property Opr="const float 350" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="ReferencedBehavior" id="40">
|
||||
<property ReferenceBehavior="const string "task/RunAway"" />
|
||||
<property Task="Self.HeroAgent::RunAway({x=0;y=0;z=0;})" />
|
||||
</node>
|
||||
<node class="Noop" id="41" />
|
||||
</node>
|
||||
<node class="Action" id="103">
|
||||
<property Method="Self.HeroAgent::DebugOut("ddddd是否走切换目标逻辑",0,0,0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="IfElse" id="25">
|
||||
<attachment class="Precondition" id="47" flag="precondition">
|
||||
<property BinaryOperator="And" />
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::IsDead()" />
|
||||
<property Opr2="const bool false" />
|
||||
<property Phase="Both" />
|
||||
</attachment>
|
||||
<attachment class="Precondition" id="48" flag="precondition">
|
||||
<property BinaryOperator="And" />
|
||||
<property Operator="Equal" />
|
||||
<property Opl="current_target_agent.TargetAgent::IsValid()" />
|
||||
<property Opr2="const bool true" />
|
||||
<property Phase="Both" />
|
||||
</attachment>
|
||||
<attachment class="Precondition" id="55" flag="precondition">
|
||||
<property BinaryOperator="And" />
|
||||
<property Operator="Greater" />
|
||||
<property Opl="Self.HeroAgent::GetAliveEnemyNum()" />
|
||||
<property Opr2="const int 1" />
|
||||
<property Phase="Both" />
|
||||
</attachment>
|
||||
<attachment class="Precondition" id="56" flag="precondition">
|
||||
<property BinaryOperator="And" />
|
||||
<property Operator="Greater" />
|
||||
<property Opl="Self.HeroAgent::GetSafeAreaRadius()" />
|
||||
<property Opr2="const float 350" />
|
||||
<property Phase="Both" />
|
||||
</attachment>
|
||||
<node class="Selector" id="42">
|
||||
<node class="Condition" id="53">
|
||||
<property Operator="Greater" />
|
||||
<property Opl="Self.HeroAgent::GetLastAttackPassTime()" />
|
||||
<property Opr="Self.BaseAgent::RandRange(5000,8000)" />
|
||||
</node>
|
||||
<node class="Condition" id="54">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::TargetInRange(550)" />
|
||||
<property Opr="const bool false" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="Action" id="43">
|
||||
<property Method="current_target_agent.TargetAgent::Abandon(2,3)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="Noop" id="44" />
|
||||
</node>
|
||||
<node class="IfElse" id="57">
|
||||
<attachment class="Precondition" id="58" flag="precondition">
|
||||
<property BinaryOperator="And" />
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::IsDead()" />
|
||||
<property Opr2="const bool false" />
|
||||
<property Phase="Both" />
|
||||
</attachment>
|
||||
<attachment class="Precondition" id="59" flag="precondition">
|
||||
<property BinaryOperator="And" />
|
||||
<property Operator="Equal" />
|
||||
<property Opl="current_target_agent.TargetAgent::IsValid()" />
|
||||
<property Opr2="const bool true" />
|
||||
<property Phase="Both" />
|
||||
</attachment>
|
||||
<attachment class="Precondition" id="60" flag="precondition">
|
||||
<property BinaryOperator="And" />
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::HasNewAttacker()" />
|
||||
<property Opr2="const bool true" />
|
||||
<property Phase="Both" />
|
||||
</attachment>
|
||||
<node class="Sequence" id="69">
|
||||
<node class="Condition" id="73">
|
||||
<property Operator="Less" />
|
||||
<property Opl="Self.BaseAgent::RandRange(1,100)" />
|
||||
<property Opr="const int 30" />
|
||||
</node>
|
||||
<node class="Condition" id="63">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::NewAttackerIsHuman()" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Condition" id="70">
|
||||
<property Operator="Greater" />
|
||||
<property Opl="current_target_agent.TargetAgent::GetHPRate()" />
|
||||
<property Opr="const float 0.6" />
|
||||
</node>
|
||||
<node class="Condition" id="74">
|
||||
<property Operator="Greater" />
|
||||
<property Opl="Self.HeroAgent::GetNewAttackerPassTime()" />
|
||||
<property Opr="const int 200" />
|
||||
</node>
|
||||
<node class="Condition" id="62">
|
||||
<property Operator="Less" />
|
||||
<property Opl="Self.HeroAgent::GetNewAttackerPassTime()" />
|
||||
<property Opr="const int 2000" />
|
||||
</node>
|
||||
<node class="Condition" id="67">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::GetNewAttackerInRange(350)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="Sequence" id="64">
|
||||
<node class="Assignment" id="72">
|
||||
<property CastRight="false" />
|
||||
<property Opl="int Self.HeroAgent::_$local_task_param_$_0" />
|
||||
<property Opr="const int 0" />
|
||||
</node>
|
||||
<node class="Action" id="65">
|
||||
<property Method="Self.HeroAgent::ResetShotTimes()" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="Action" id="66">
|
||||
<property Method="Self.HeroAgent::ResetShotTimes()" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="Action" id="71">
|
||||
<property Method="Self.HeroAgent::SwitchToNewAttacker()" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="Noop" id="61" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,13 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: task\ChiJiMoba.xml-->
|
||||
<behavior name="task/ChiJiMoba" agenttype="HeroAgent" version="5">
|
||||
<pars>
|
||||
<par name="_$local_task_param_$_0" type="int" value="0" />
|
||||
</pars>
|
||||
<node class="Task" id="0">
|
||||
<property Prototype="Self.HeroAgent::ChiMode(0)" />
|
||||
<property IsHTN="false" />
|
||||
<node class="Noop" id="1" />
|
||||
</node>
|
||||
</behavior>
|
@ -1,109 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: task\ChiJiMode.xml-->
|
||||
<behavior name="task/ChiJiMode" agenttype="HeroAgent" version="5">
|
||||
<pars>
|
||||
<par name="_$local_task_param_$_0" type="int" value="0" />
|
||||
<par name="loc_val0" type="int" value="0" />
|
||||
<par name="loc_val1" type="int" value="0" />
|
||||
</pars>
|
||||
<node class="Task" id="0">
|
||||
<property Prototype="Self.HeroAgent::ChiMode()" />
|
||||
<property IsHTN="false" />
|
||||
<node class="IfElse" id="1">
|
||||
<node class="Sequence" id="2">
|
||||
<node class="Assignment" id="16">
|
||||
<property CastRight="true" />
|
||||
<property Opl="float Self.HeroAgent::tmp_val0" />
|
||||
<property Opr="Self.BaseAgent::RandRange(25,150)" />
|
||||
</node>
|
||||
<node class="Condition" id="4">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::IsNearGas(float Self.HeroAgent::tmp_val0)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Condition" id="5">
|
||||
<property Operator="GreaterEqual" />
|
||||
<property Opl="Self.HeroAgent::GetSafeAreaRadius()" />
|
||||
<property Opr="const float 500" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="ReferencedBehavior" id="3">
|
||||
<property ReferenceBehavior="const string "task/RunGas"" />
|
||||
<property Task="Self.HeroAgent::RunGas(0,0,0)" />
|
||||
</node>
|
||||
<node class="Sequence" id="18">
|
||||
<node class="SelectorProbability" id="23">
|
||||
<node class="DecoratorWeight" id="24">
|
||||
<property DecorateWhenChildEnds="false" />
|
||||
<property Weight="const int 50" />
|
||||
<node class="IfElse" id="26">
|
||||
<node class="Condition" id="27">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::CanAttack()" />
|
||||
<property Opr="const bool false" />
|
||||
</node>
|
||||
<node class="IfElse" id="34">
|
||||
<node class="Condition" id="35">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::IsMoving()" />
|
||||
<property Opr="const bool false" />
|
||||
</node>
|
||||
<node class="SelectorProbability" id="28">
|
||||
<node class="DecoratorWeight" id="29">
|
||||
<property DecorateWhenChildEnds="false" />
|
||||
<property Weight="const int 50" />
|
||||
<node class="ReferencedBehavior" id="30">
|
||||
<property ReferenceBehavior="const string "task/RandomWalk"" />
|
||||
<property Task="Self.HeroAgent::RandomWalk(0,0,{x=0;y=0;z=0;})" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
<node class="True" id="36" />
|
||||
</node>
|
||||
<node class="IfElse" id="6">
|
||||
<node class="Condition" id="7">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::SearchEnemy(500)" />
|
||||
<property Opr="const behaviac::EBTStatus BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="ReferencedBehavior" id="8">
|
||||
<property ReferenceBehavior="const string "task/ChaseToKill"" />
|
||||
<property Task="Self.HeroAgent::ChaseToKill(0,0,0)" />
|
||||
</node>
|
||||
<node class="Sequence" id="17">
|
||||
<node class="SelectorProbability" id="9">
|
||||
<node class="DecoratorWeight" id="10">
|
||||
<property DecorateWhenChildEnds="false" />
|
||||
<property Weight="const int 50" />
|
||||
<node class="ReferencedBehavior" id="11">
|
||||
<property ReferenceBehavior="const string "task/RandomWalk"" />
|
||||
<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 0" />
|
||||
<node class="ReferencedBehavior" id="13">
|
||||
<property ReferenceBehavior="const string "task/RandomShot"" />
|
||||
<property Task="Self.HeroAgent::RandomShot(0,0,{x=0;y=0;z=0;})" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="DecoratorWeight" id="14">
|
||||
<property DecorateWhenChildEnds="false" />
|
||||
<property Weight="const int 60" />
|
||||
<node class="Action" id="15">
|
||||
<property Method="Self.HeroAgent::CoIdle(1000,4000)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,76 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: task\ChiJiMode_0.xml-->
|
||||
<behavior name="task/ChiJiMode_0" agenttype="HeroAgent" version="5">
|
||||
<pars>
|
||||
<par name="_$local_task_param_$_0" type="int" value="0" />
|
||||
<par name="loc_val0" type="int" value="0" />
|
||||
<par name="loc_val1" type="int" value="0" />
|
||||
</pars>
|
||||
<node class="Task" id="0">
|
||||
<property Prototype="Self.HeroAgent::ChiMode()" />
|
||||
<property IsHTN="false" />
|
||||
<node class="IfElse" id="1">
|
||||
<node class="Sequence" id="2">
|
||||
<node class="Assignment" id="16">
|
||||
<property CastRight="true" />
|
||||
<property Opl="float Self.HeroAgent::tmp_val0" />
|
||||
<property Opr="Self.BaseAgent::RandRange(25,150)" />
|
||||
</node>
|
||||
<node class="Condition" id="4">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::IsNearGas(float Self.HeroAgent::tmp_val0)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Condition" id="5">
|
||||
<property Operator="GreaterEqual" />
|
||||
<property Opl="Self.HeroAgent::GetSafeAreaRadius()" />
|
||||
<property Opr="const float 500" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="ReferencedBehavior" id="3">
|
||||
<property ReferenceBehavior="const string "task/RunGas"" />
|
||||
<property Task="Self.HeroAgent::RunGas(0,0,0)" />
|
||||
</node>
|
||||
<node class="IfElse" id="6">
|
||||
<node class="Condition" id="7">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::SearchEnemy(500)" />
|
||||
<property Opr="const behaviac::EBTStatus BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="ReferencedBehavior" id="8">
|
||||
<property ReferenceBehavior="const string "task/ChaseToKill"" />
|
||||
<property Task="Self.HeroAgent::ChaseToKill(0,0,0)" />
|
||||
</node>
|
||||
<node class="Sequence" id="17">
|
||||
<node class="SelectorProbability" id="9">
|
||||
<node class="DecoratorWeight" id="10">
|
||||
<property DecorateWhenChildEnds="false" />
|
||||
<property Weight="const int 50" />
|
||||
<node class="ReferencedBehavior" id="11">
|
||||
<property ReferenceBehavior="const string "task/RandomWalk"" />
|
||||
<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 100" />
|
||||
<node class="ReferencedBehavior" id="13">
|
||||
<property ReferenceBehavior="const string "task/RandomShot"" />
|
||||
<property Task="Self.HeroAgent::RandomShot(0,0,{x=0;y=0;z=0;})" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="DecoratorWeight" id="14">
|
||||
<property DecorateWhenChildEnds="false" />
|
||||
<property Weight="const int 60" />
|
||||
<node class="Action" id="15">
|
||||
<property Method="Self.HeroAgent::CoIdle(2000,4000)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,20 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: task\Follow.xml-->
|
||||
<behavior name="task/Follow" agenttype="HeroAgent" version="5">
|
||||
<node class="Sequence" id="0">
|
||||
<node class="Assignment" id="1">
|
||||
<property CastRight="false" />
|
||||
<property Opl="glm::vec3 current_teammate_agent.TeammateAgent::tmp_point0" />
|
||||
<property Opr="current_teammate_agent.TeammateAgent::GetPos()" />
|
||||
</node>
|
||||
<node class="Action" id="2">
|
||||
<property Method="Self.HeroAgent::CoFindPathEx(glm::vec3 current_teammate_agent.TeammateAgent::tmp_point0,60)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="Action" id="3">
|
||||
<property Method="Self.HeroAgent::DebugOut("ddddd跟随队友",0,0,0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,34 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: task\FollowMaster.xml-->
|
||||
<behavior name="task/FollowMaster" agenttype="HeroAgent" version="5">
|
||||
<pars>
|
||||
<par name="_$local_task_param_$_0" type="glm::vec3" value="{x=0;y=0;z=0;}" />
|
||||
<par name="_$local_task_param_$_1" type="float" value="0" />
|
||||
</pars>
|
||||
<node class="Task" id="0">
|
||||
<property Prototype="Self.HeroAgent::FollowMaster({x=0;y=0;z=0;},0)" />
|
||||
<property IsHTN="false" />
|
||||
<node class="Sequence" id="1">
|
||||
<node class="Condition" id="2">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="master_agent.MasterAgent::IsValid()" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Assignment" id="4">
|
||||
<property CastRight="false" />
|
||||
<property Opl="glm::vec3 Self.HeroAgent::_$local_task_param_$_0" />
|
||||
<property Opr="master_agent.MasterAgent::GetPos()" />
|
||||
</node>
|
||||
<node class="Assignment" id="5">
|
||||
<property CastRight="false" />
|
||||
<property Opl="float Self.HeroAgent::_$local_task_param_$_1" />
|
||||
<property Opr="Self.BaseAgent::RandRangeAsFloat(80,180)" />
|
||||
</node>
|
||||
<node class="Action" id="3">
|
||||
<property Method="Self.HeroAgent::CoFindPathEx(glm::vec3 Self.HeroAgent::_$local_task_param_$_0,float Self.HeroAgent::_$local_task_param_$_1)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,54 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: task\FollowTeammate.xml-->
|
||||
<behavior name="task/FollowTeammate" agenttype="HeroAgent" version="5">
|
||||
<pars>
|
||||
<par name="_$local_task_param_$_0" type="glm::vec3" value="{x=0;y=0;z=0;}" />
|
||||
<par name="_$local_task_param_$_1" type="float" value="0" />
|
||||
</pars>
|
||||
<node class="Task" id="4">
|
||||
<property Prototype="Self.HeroAgent::FollowTeammate({x=0;y=0;z=0;},0)" />
|
||||
<property IsHTN="false" />
|
||||
<node class="Sequence" id="0">
|
||||
<node class="Action" id="7">
|
||||
<property Method="Self.HeroAgent::DebugOut("ddddd开始跟随",0,0,0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="Condition" id="6">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="current_teammate_agent.TeammateAgent::IsValid()" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="Action" id="8">
|
||||
<property Method="Self.HeroAgent::DebugOut("跟随2",0,0,0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="Assignment" id="1">
|
||||
<property CastRight="false" />
|
||||
<property Opl="glm::vec3 Self.HeroAgent::_$local_task_param_$_0" />
|
||||
<property Opr="current_teammate_agent.TeammateAgent::GetPos()" />
|
||||
</node>
|
||||
<node class="Action" id="9">
|
||||
<property Method="Self.HeroAgent::DebugOut("跟随3",0,0,0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="Assignment" id="5">
|
||||
<property CastRight="false" />
|
||||
<property Opl="float Self.HeroAgent::_$local_task_param_$_1" />
|
||||
<property Opr="Self.BaseAgent::RandRangeAsFloat(120,150)" />
|
||||
</node>
|
||||
<node class="Action" id="10">
|
||||
<property Method="Self.HeroAgent::DebugOut("跟随4",0,0,0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="Action" id="2">
|
||||
<property Method="Self.HeroAgent::CoFindPathEx(glm::vec3 Self.HeroAgent::_$local_task_param_$_0,float Self.HeroAgent::_$local_task_param_$_1)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="Action" id="3">
|
||||
<property Method="Self.HeroAgent::DebugOut("ddddd跟随队友",0,0,0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,10 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: task\MasterHelpAttack.xml-->
|
||||
<behavior name="task/MasterHelpAttack" agenttype="HeroAgent" version="5">
|
||||
<node class="Task" id="0">
|
||||
<property Prototype="Self.HeroAgent::MasterHelpAttack()" />
|
||||
<property IsHTN="false" />
|
||||
<node class="Noop" id="1" />
|
||||
</node>
|
||||
</behavior>
|
@ -1,157 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: task\MobaMode.xml-->
|
||||
<behavior name="task/MobaMode" agenttype="HeroAgent" version="5">
|
||||
<pars>
|
||||
<par name="_$local_task_param_$_0" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_1" type="int" value="0" />
|
||||
</pars>
|
||||
<node class="Task" id="0">
|
||||
<property Prototype="Self.HeroAgent::MobaMode(0,0)" />
|
||||
<property IsHTN="false" />
|
||||
<node class="IfElse" id="1">
|
||||
<attachment class="Event" id="29" flag="event">
|
||||
<property ReferenceFilename="task/OnMobaRevive" />
|
||||
<property Task="Self.HeroAgent::OnMobaRevive()" />
|
||||
<property TriggeredOnce="false" />
|
||||
<property TriggerMode="Return" />
|
||||
</attachment>
|
||||
<node class="False" id="2" />
|
||||
<node class="Noop" id="3" />
|
||||
<node class="Sequence" id="30">
|
||||
<node class="Action" id="31">
|
||||
<property Method="Self.HeroAgent::ClearEvents()" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="Action" id="32">
|
||||
<property Method="Self.HeroAgent::RegisterEvents(1:kMobaModeReviveEvent)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="IfElse" id="33">
|
||||
<node class="Condition" id="34">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::CanAttack()" />
|
||||
<property Opr="const bool false" />
|
||||
</node>
|
||||
<node class="IfElse" id="15">
|
||||
<node class="Condition" id="35">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::IsMoving()" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="True" id="36" />
|
||||
<node class="SelectorProbability" id="37">
|
||||
<node class="DecoratorWeight" id="38">
|
||||
<property DecorateWhenChildEnds="false" />
|
||||
<property Weight="const int 50" />
|
||||
<node class="ReferencedBehavior" id="39">
|
||||
<property ReferenceBehavior="const string "task/RandomWalk"" />
|
||||
<property Task="Self.HeroAgent::RandomWalk(0,0,{x=0;y=0;z=0;})" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
<node class="IfElse" id="6">
|
||||
<node class="Or" id="7">
|
||||
<node class="Condition" id="40">
|
||||
<property Operator="Equal" />
|
||||
<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 class="ReferencedBehavior" id="8">
|
||||
<property ReferenceBehavior="const string "task/ChaseToKill"" />
|
||||
<property Task="Self.HeroAgent::ChaseToKill(0,0,0)" />
|
||||
</node>
|
||||
<node class="Sequence" id="4">
|
||||
<node class="Action" id="5">
|
||||
<property Method="Self.HeroAgent::CoGetNextMobaModeRoadPoint()" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="Sequence" id="21">
|
||||
<node class="Assignment" id="22">
|
||||
<property CastRight="false" />
|
||||
<property Opl="int Self.HeroAgent::_$local_task_param_$_1" />
|
||||
<property Opr="Self.BaseAgent::GetTickCount()" />
|
||||
</node>
|
||||
<node class="Parallel" id="9">
|
||||
<property ChildFinishPolicy="CHILDFINISH_LOOP" />
|
||||
<property ExitPolicy="EXIT_NONE" />
|
||||
<property FailurePolicy="FAIL_ON_ONE" />
|
||||
<property SuccessPolicy="SUCCEED_ON_ONE" />
|
||||
<node class="Action" id="10">
|
||||
<property Method="Self.HeroAgent::CoFindPath(glm::vec3 Self.HeroAgent::out_point0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
<attachment class="Precondition" id="11" flag="precondition">
|
||||
<property BinaryOperator="And" />
|
||||
<property Operator="Assign" />
|
||||
<property Opl="int Self.HeroAgent::_$local_task_param_$_0" />
|
||||
<property Opr2="const int 0" />
|
||||
<property Phase="Enter" />
|
||||
</attachment>
|
||||
<attachment class="Effector" id="12" flag="effector">
|
||||
<property Operator="Assign" />
|
||||
<property Opl="int Self.HeroAgent::_$local_task_param_$_0" />
|
||||
<property Opr2="const int 1" />
|
||||
<property Phase="Both" />
|
||||
</attachment>
|
||||
</node>
|
||||
<node class="DecoratorLoop" id="13">
|
||||
<property Count="const int -1" />
|
||||
<property DecorateWhenChildEnds="true" />
|
||||
<property DoneWithinFrame="false" />
|
||||
<attachment class="Precondition" id="14" flag="precondition">
|
||||
<property BinaryOperator="And" />
|
||||
<property Operator="Equal" />
|
||||
<property Opl="int Self.HeroAgent::_$local_task_param_$_0" />
|
||||
<property Opr2="const int 0" />
|
||||
<property Phase="Both" />
|
||||
</attachment>
|
||||
<node class="Sequence" id="16">
|
||||
<node class="Condition" id="17">
|
||||
<property Operator="Greater" />
|
||||
<property Opl="Self.BaseAgent::DeltaTime(int Self.HeroAgent::_$local_task_param_$_1)" />
|
||||
<property Opr="Self.BaseAgent::RandRange(1000,1500)" />
|
||||
</node>
|
||||
<node class="IfElse" id="24">
|
||||
<node class="Condition" id="18">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::SearchEnemy(200)" />
|
||||
<property Opr="const behaviac::EBTStatus BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="True" id="25" />
|
||||
<node class="Sequence" id="27">
|
||||
<node class="Assignment" id="26">
|
||||
<property CastRight="false" />
|
||||
<property Opl="int Self.HeroAgent::_$local_task_param_$_1" />
|
||||
<property Opr="Self.BaseAgent::GetTickCount()" />
|
||||
</node>
|
||||
<node class="False" id="28" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="False" id="23" />
|
||||
<node class="Assignment" id="19">
|
||||
<property CastRight="false" />
|
||||
<property Opl="int Self.HeroAgent::_$local_task_param_$_0" />
|
||||
<property Opr="const int 1" />
|
||||
</node>
|
||||
<node class="Action" id="20">
|
||||
<property Method="Self.BaseAgent::AbortCoroutine(kCoFindPath)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,13 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: task\OnMobaRevive.xml-->
|
||||
<behavior name="task/OnMobaRevive" agenttype="HeroAgent" version="5">
|
||||
<node class="Task" id="0">
|
||||
<property Prototype="Self.HeroAgent::OnMobaRevive()" />
|
||||
<property IsHTN="false" />
|
||||
<node class="End" id="1">
|
||||
<property EndOutside="false" />
|
||||
<property EndStatus="const behaviac::EBTStatus BT_SUCCESS" />
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,13 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: task\OnUnderAttack.xml-->
|
||||
<behavior name="task/OnUnderAttack" agenttype="HeroAgent" version="5">
|
||||
<pars>
|
||||
<par name="_$local_task_param_$_0" type="int" value="0" />
|
||||
</pars>
|
||||
<node class="Task" id="0">
|
||||
<property Prototype="Self.HeroAgent::OnUnderAttack(0)" />
|
||||
<property IsHTN="false" />
|
||||
<node class="Noop" id="1" />
|
||||
</node>
|
||||
</behavior>
|
@ -1,76 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: task\Pickup.xml-->
|
||||
<behavior name="task/Pickup" agenttype="HeroAgent" version="5">
|
||||
<pars>
|
||||
<par name="_$local_task_param_$_0" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_1" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_2" type="glm::vec3" value="{x=0;y=0;z=0;}" />
|
||||
</pars>
|
||||
<node class="Task" id="0">
|
||||
<property Prototype="Self.HeroAgent::PickupItem(0,0,{x=0;y=0;z=0;})" />
|
||||
<property IsHTN="false" />
|
||||
<node class="IfElse" id="1">
|
||||
<node class="Condition" id="2">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::SearchPickupObj()" />
|
||||
<property Opr="const int 0" />
|
||||
</node>
|
||||
<node class="Noop" id="3" />
|
||||
<node class="Sequence" id="4">
|
||||
<node class="Assignment" id="15">
|
||||
<property CastRight="false" />
|
||||
<property Opl="int Self.HeroAgent::_$local_task_param_$_0" />
|
||||
<property Opr="const int 0" />
|
||||
</node>
|
||||
<node class="Parallel" id="5">
|
||||
<property ChildFinishPolicy="CHILDFINISH_ONCE" />
|
||||
<property ExitPolicy="EXIT_NONE" />
|
||||
<property FailurePolicy="FAIL_ON_ONE" />
|
||||
<property SuccessPolicy="SUCCEED_ON_ALL" />
|
||||
<node class="Sequence" id="7">
|
||||
<node class="Action" id="6">
|
||||
<property Method="Self.HeroAgent::CoFindPath(glm::vec3 Self.HeroAgent::out_point0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="Action" id="8">
|
||||
<property Method="Self.HeroAgent::Pickup()" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="DecoratorLoop" id="9">
|
||||
<property Count="const int -1" />
|
||||
<property DecorateWhenChildEnds="true" />
|
||||
<property DoneWithinFrame="false" />
|
||||
<attachment class="Precondition" id="16" flag="precondition">
|
||||
<property BinaryOperator="And" />
|
||||
<property Operator="Equal" />
|
||||
<property Opl="int Self.HeroAgent::_$local_task_param_$_0" />
|
||||
<property Opr2="const int 0" />
|
||||
<property Phase="Both" />
|
||||
</attachment>
|
||||
<node class="IfElse" id="10">
|
||||
<node class="Condition" id="11">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::PickupObjIsValid()" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="True" id="12" />
|
||||
<node class="Sequence" id="13">
|
||||
<node class="Action" id="14">
|
||||
<property Method="Self.BaseAgent::AbortCoroutine(kCoFindPath)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="Assignment" id="17">
|
||||
<property CastRight="false" />
|
||||
<property Opl="int Self.HeroAgent::_$local_task_param_$_0" />
|
||||
<property Opr="const int 1" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,67 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: task\RandomShot.xml-->
|
||||
<behavior name="task/RandomShot" agenttype="HeroAgent" version="5">
|
||||
<pars>
|
||||
<par name="_$local_task_param_$_0" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_1" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_2" type="glm::vec3" value="{x=0;y=0;z=0;}" />
|
||||
</pars>
|
||||
<node class="Task" id="0">
|
||||
<property Prototype="Self.HeroAgent::RandomShot(0,0,{x=0;y=0;z=0;})" />
|
||||
<property IsHTN="false" />
|
||||
<node class="Sequence" id="1">
|
||||
<node class="Assignment" id="2">
|
||||
<property CastRight="false" />
|
||||
<property Opl="int Self.HeroAgent::_$local_task_param_$_0" />
|
||||
<property Opr="Self.BaseAgent::RandRange(1,3)" />
|
||||
</node>
|
||||
<node class="Assignment" id="3">
|
||||
<property CastRight="false" />
|
||||
<property Opl="int Self.HeroAgent::_$local_task_param_$_1" />
|
||||
<property Opr="const int 0" />
|
||||
</node>
|
||||
<node class="Assignment" id="7">
|
||||
<property CastRight="false" />
|
||||
<property Opl="glm::vec3 Self.HeroAgent::_$local_task_param_$_2" />
|
||||
<property Opr="Self.HeroAgent::GetRandomDir()" />
|
||||
</node>
|
||||
<node class="Action" id="8">
|
||||
<property Method="Self.HeroAgent::SetMoveDir(glm::vec3 Self.HeroAgent::_$local_task_param_$_2)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="Action" id="9">
|
||||
<property Method="Self.HeroAgent::SetAttackDir(glm::vec3 Self.HeroAgent::_$local_task_param_$_2)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="DecoratorLoop" id="4">
|
||||
<property Count="const int -1" />
|
||||
<property DecorateWhenChildEnds="true" />
|
||||
<property DoneWithinFrame="false" />
|
||||
<attachment class="Precondition" id="5" flag="precondition">
|
||||
<property BinaryOperator="And" />
|
||||
<property Operator="Less" />
|
||||
<property Opl="int Self.HeroAgent::_$local_task_param_$_1" />
|
||||
<property Opr2="int Self.HeroAgent::_$local_task_param_$_0" />
|
||||
<property Phase="Both" />
|
||||
</attachment>
|
||||
<node class="Sequence" id="10">
|
||||
<node class="Action" id="11">
|
||||
<property Method="Self.HeroAgent::ShotNormal(glm::vec3 Self.HeroAgent::_$local_task_param_$_2)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="Action" id="12">
|
||||
<property Method="Self.HeroAgent::CoIdle(200,400)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="Compute" id="6">
|
||||
<property Operator="Add" />
|
||||
<property Opl="int Self.HeroAgent::_$local_task_param_$_1" />
|
||||
<property Opr1="int Self.HeroAgent::_$local_task_param_$_1" />
|
||||
<property Opr2="const int 1" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,157 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: task\RandomWalk.xml-->
|
||||
<behavior name="task/RandomWalk" agenttype="HeroAgent" version="5">
|
||||
<pars>
|
||||
<par name="loc_point1" type="glm::vec3" value="{x=0;y=0;z=0;}" />
|
||||
<par name="_$local_task_param_$_0" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_1" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_2" type="glm::vec3" value="{x=0;y=0;z=0;}" />
|
||||
<par name="loc_val2" type="int" value="0" />
|
||||
</pars>
|
||||
<node class="Task" id="0">
|
||||
<property Prototype="Self.HeroAgent::RandomWalk(0,0,{x=0;y=0;z=0;})" />
|
||||
<property IsHTN="false" />
|
||||
<node class="Sequence" id="1">
|
||||
<node class="Assignment" id="2">
|
||||
<property CastRight="false" />
|
||||
<property Opl="int Self.HeroAgent::_$local_task_param_$_0" />
|
||||
<property Opr="Self.BaseAgent::RandRange(1,3)" />
|
||||
</node>
|
||||
<node class="Assignment" id="3">
|
||||
<property CastRight="false" />
|
||||
<property Opl="int Self.HeroAgent::_$local_task_param_$_1" />
|
||||
<property Opr="const int 0" />
|
||||
</node>
|
||||
<node class="DecoratorLoop" id="4">
|
||||
<property Count="const int -1" />
|
||||
<property DecorateWhenChildEnds="true" />
|
||||
<property DoneWithinFrame="false" />
|
||||
<attachment class="Precondition" id="6" flag="precondition">
|
||||
<property BinaryOperator="And" />
|
||||
<property Operator="Less" />
|
||||
<property Opl="int Self.HeroAgent::_$local_task_param_$_1" />
|
||||
<property Opr2="int Self.HeroAgent::_$local_task_param_$_0" />
|
||||
<property Phase="Both" />
|
||||
</attachment>
|
||||
<attachment class="Event" id="13" flag="event">
|
||||
<property ReferenceFilename="task/OnUnderAttack" />
|
||||
<property Task="Self.HeroAgent::OnUnderAttack(0)" />
|
||||
<property TriggeredOnce="false" />
|
||||
<property TriggerMode="Transfer" />
|
||||
</attachment>
|
||||
<node class="Sequence" id="7">
|
||||
<node class="Assignment" id="8">
|
||||
<property CastRight="false" />
|
||||
<property Opl="glm::vec3 Self.HeroAgent::_$local_task_param_$_2" />
|
||||
<property Opr="Self.HeroAgent::GetRandomDir()" />
|
||||
</node>
|
||||
<node class="Action" id="9">
|
||||
<property Method="Self.HeroAgent::SetMoveDir(glm::vec3 Self.HeroAgent::_$local_task_param_$_2)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="Action" id="10">
|
||||
<property Method="Self.HeroAgent::SetAttackDir(glm::vec3 Self.HeroAgent::_$local_task_param_$_2)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="Action" id="23">
|
||||
<property Method="Self.HeroAgent::DebugOut("ddddd随机走要不要切换目标",0,0,0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="Selector" id="35">
|
||||
<node class="IfElse" id="14">
|
||||
<node class="Sequence" id="15">
|
||||
<node class="Condition" id="25">
|
||||
<property Operator="Greater" />
|
||||
<property Opl="Self.HeroAgent::GetNewAttackerPassTime()" />
|
||||
<property Opr="const int 200" />
|
||||
</node>
|
||||
<node class="Condition" id="19">
|
||||
<property Operator="Less" />
|
||||
<property Opl="Self.HeroAgent::GetNewAttackerPassTime()" />
|
||||
<property Opr="const int 2000" />
|
||||
</node>
|
||||
<node class="Condition" id="20">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::GetNewAttackerInRange(350)" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="Sequence" id="16">
|
||||
<node class="Action" id="21">
|
||||
<property Method="Self.HeroAgent::ResetShotTimes()" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="Action" id="22">
|
||||
<property Method="Self.HeroAgent::SwitchToNewAttacker()" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="Action" id="24">
|
||||
<property Method="Self.HeroAgent::DebugOut("ddddd随机走已切换目标",0,0,0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="Selector" id="33">
|
||||
<node class="Action" id="34">
|
||||
<property Method="Self.HeroAgent::DebugOut("ddddd随机走第一种中断情况未发生返回真",0,0,0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="True" id="17" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="True" id="36" />
|
||||
</node>
|
||||
<node class="Action" id="32">
|
||||
<property Method="Self.HeroAgent::DebugOut("ddddd随机走几次?",0,0,0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="Selector" id="37">
|
||||
<node class="Sequence" id="18">
|
||||
<node class="Action" id="30">
|
||||
<property Method="Self.HeroAgent::DebugOut("ddddd发现新目标",0,0,0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="Condition" id="26">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::SearchEnemy(75)" />
|
||||
<property Opr="const behaviac::EBTStatus BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="Assignment" id="27">
|
||||
<property CastRight="false" />
|
||||
<property Opl="glm::vec3 Self.HeroAgent::tmp_point0" />
|
||||
<property Opr="Self.HeroAgent::GetTargetDir()" />
|
||||
</node>
|
||||
<node class="Action" id="28">
|
||||
<property Method="Self.HeroAgent::SetAttackDir(glm::vec3 Self.HeroAgent::tmp_point0)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="Action" id="39">
|
||||
<property Method="Self.HeroAgent::SetBulletAngleOffset(0,30)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="Action" id="29">
|
||||
<property Method="Self.HeroAgent::ShotNormal(glm::vec3 Self.HeroAgent::tmp_point0)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="Action" id="31">
|
||||
<property Method="Self.HeroAgent::DebugOut("已攻击新目标",0,0,0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
</node>
|
||||
<node class="True" id="38" />
|
||||
</node>
|
||||
<node class="Action" id="11">
|
||||
<property Method="Self.HeroAgent::CoMoveForward(150,300)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="Compute" id="5">
|
||||
<property Operator="Add" />
|
||||
<property Opl="int Self.HeroAgent::_$local_task_param_$_1" />
|
||||
<property Opr1="int Self.HeroAgent::_$local_task_param_$_1" />
|
||||
<property Opr2="const int 1" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,33 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: task\RunAway.xml-->
|
||||
<behavior name="task/RunAway" agenttype="HeroAgent" version="5">
|
||||
<pars>
|
||||
<par name="_$local_task_param_$_0" type="glm::vec3" value="{x=0;y=0;z=0;}" />
|
||||
</pars>
|
||||
<node class="Task" id="0">
|
||||
<property Prototype="Self.HeroAgent::RunAway({x=0;y=0;z=0;})" />
|
||||
<property IsHTN="false" />
|
||||
<node class="Sequence" id="1">
|
||||
<node class="DecoratorLoop" id="5">
|
||||
<property Count="const int 1" />
|
||||
<property DecorateWhenChildEnds="true" />
|
||||
<property DoneWithinFrame="false" />
|
||||
<node class="Sequence" id="6">
|
||||
<node class="Action" id="3">
|
||||
<property Method="Self.HeroAgent::CoGetRunAwayPoint()" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="Action" id="4">
|
||||
<property Method="Self.HeroAgent::CoFindPath(glm::vec3 Self.HeroAgent::out_point0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="Action" id="2">
|
||||
<property Method="current_target_agent.TargetAgent::Abandon(1,3)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,72 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: task\RunGas.xml-->
|
||||
<behavior name="task/RunGas" agenttype="HeroAgent" version="5">
|
||||
<pars>
|
||||
<par name="_$local_task_param_$_0" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_1" type="int" value="0" />
|
||||
<par name="_$local_task_param_$_2" type="int" value="0" />
|
||||
</pars>
|
||||
<node class="Task" id="0">
|
||||
<property Prototype="Self.HeroAgent::RunGas(0,0,0)" />
|
||||
<property IsHTN="false" />
|
||||
<node class="Sequence" id="1">
|
||||
<node class="Assignment" id="8">
|
||||
<property CastRight="false" />
|
||||
<property Opl="int Self.HeroAgent::_$local_task_param_$_0" />
|
||||
<property Opr="const int 0" />
|
||||
</node>
|
||||
<node class="Assignment" id="9">
|
||||
<property CastRight="false" />
|
||||
<property Opl="int Self.HeroAgent::_$local_task_param_$_1" />
|
||||
<property Opr="const int 0" />
|
||||
</node>
|
||||
<node class="DecoratorLoop" id="5">
|
||||
<property Count="const int 3" />
|
||||
<property DecorateWhenChildEnds="true" />
|
||||
<property DoneWithinFrame="false" />
|
||||
<attachment class="Precondition" id="6" flag="precondition">
|
||||
<property BinaryOperator="And" />
|
||||
<property Operator="NotEqual" />
|
||||
<property Opl="Self.HeroAgent::IsDead()" />
|
||||
<property Opr2="const bool true" />
|
||||
<property Phase="Both" />
|
||||
</attachment>
|
||||
<attachment class="Precondition" id="14" flag="precondition">
|
||||
<property BinaryOperator="And" />
|
||||
<property Operator="Equal" />
|
||||
<property Opl="int Self.HeroAgent::_$local_task_param_$_1" />
|
||||
<property Opr2="const int 0" />
|
||||
<property Phase="Both" />
|
||||
</attachment>
|
||||
<attachment class="Effector" id="10" flag="effector">
|
||||
<property Operator="Add" />
|
||||
<property Opl="int Self.HeroAgent::_$local_task_param_$_0" />
|
||||
<property Opr1="int Self.HeroAgent::_$local_task_param_$_0" />
|
||||
<property Opr2="const int 1" />
|
||||
<property Phase="Success" />
|
||||
</attachment>
|
||||
<node class="Sequence" id="7">
|
||||
<node class="Assignment" id="3">
|
||||
<property CastRight="true" />
|
||||
<property Opl="int Self.HeroAgent::_$local_task_param_$_2" />
|
||||
<property Opr="Self.BaseAgent::RandRange(80,120)" />
|
||||
</node>
|
||||
<node class="Action" id="2">
|
||||
<property Method="Self.HeroAgent::RandomSafeZonePoint(int Self.HeroAgent::_$local_task_param_$_0,int Self.HeroAgent::_$local_task_param_$_2)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="Action" id="4">
|
||||
<property Method="Self.HeroAgent::CoFindPath(glm::vec3 Self.HeroAgent::out_point0)" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="Assignment" id="13">
|
||||
<property CastRight="false" />
|
||||
<property Opl="int Self.HeroAgent::_$local_task_param_$_1" />
|
||||
<property Opr="const int 1" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,40 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: task\StayPutAttack.xml-->
|
||||
<behavior name="task/StayPutAttack" agenttype="HeroAgent" version="5">
|
||||
<node class="Task" id="9">
|
||||
<property Prototype="Self.HeroAgent::StayPutAttack()" />
|
||||
<property IsHTN="false" />
|
||||
<node class="IfElse" id="5">
|
||||
<node class="Condition" id="6">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.HeroAgent::CanShot()" />
|
||||
<property Opr="const bool false" />
|
||||
</node>
|
||||
<node class="Noop" id="7" />
|
||||
<node class="Sequence" id="0">
|
||||
<node class="Action" id="1">
|
||||
<property Method="Self.HeroAgent::OpenBulletTraceMode()" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="Assignment" id="3">
|
||||
<property CastRight="false" />
|
||||
<property Opl="glm::vec3 Self.HeroAgent::tmp_point0" />
|
||||
<property Opr="Self.HeroAgent::GetTargetDir()" />
|
||||
</node>
|
||||
<node class="Action" id="8">
|
||||
<property Method="Self.HeroAgent::CloseBulletTraceMode()" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="Action" id="2">
|
||||
<property Method="Self.HeroAgent::SetAttackDir(glm::vec3 Self.HeroAgent::tmp_point0)" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
<node class="Action" id="4">
|
||||
<property Method="Self.HeroAgent::ShotTrace()" />
|
||||
<property ResultOption="BT_SUCCESS" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,10 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: task\TeammateHelpAttack.xml-->
|
||||
<behavior name="task/TeammateHelpAttack" agenttype="HeroAgent" version="5">
|
||||
<node class="Task" id="0">
|
||||
<property Prototype="Self.HeroAgent::TeammateHelpAttack()" />
|
||||
<property IsHTN="false" />
|
||||
<node class="Noop" id="1" />
|
||||
</node>
|
||||
</behavior>
|
@ -1 +0,0 @@
|
||||
../../exported
|
@ -1,4 +0,0 @@
|
||||
{
|
||||
"api_url": "https://game2006api-test.kingsome.cn/webapp/index.php",
|
||||
"api_secret_key": "BIgDh5J%uUktooKxT!IM7#m$NtB51%la"
|
||||
}
|
@ -1,32 +0,0 @@
|
||||
[
|
||||
{
|
||||
"instance_id" : 1,
|
||||
"ip": "127.0.0.1",
|
||||
"listen_port": 7611,
|
||||
"channel": 0
|
||||
},
|
||||
{
|
||||
"instance_id" : 2,
|
||||
"ip": "127.0.0.1",
|
||||
"listen_port": 7612,
|
||||
"channel": 0
|
||||
},
|
||||
{
|
||||
"instance_id" : 3,
|
||||
"ip": "127.0.0.1",
|
||||
"listen_port": 7613,
|
||||
"channel": 0
|
||||
},
|
||||
{
|
||||
"instance_id" : 6,
|
||||
"ip": "127.0.0.1",
|
||||
"listen_port": 7616,
|
||||
"channel": 0
|
||||
},
|
||||
{
|
||||
"instance_id" : 8,
|
||||
"ip": "127.0.0.1",
|
||||
"listen_port": 7618,
|
||||
"channel": 5990
|
||||
}
|
||||
]
|
@ -1,5 +0,0 @@
|
||||
[
|
||||
{
|
||||
"url": "http://192.168.100.21:8321/webapp/index.php"
|
||||
}
|
||||
]
|
@ -1,12 +0,0 @@
|
||||
[
|
||||
{
|
||||
"instance_id": 1,
|
||||
"ip": "192.168.100.45",
|
||||
"listen_port": 7621
|
||||
},
|
||||
{
|
||||
"instance_id": 2,
|
||||
"ip": "192.168.100.21",
|
||||
"listen_port": 7621
|
||||
}
|
||||
]
|
@ -1,4 +0,0 @@
|
||||
{
|
||||
"api_url": "https://game2006api-test.kingsome.cn/webapp/index.php",
|
||||
"api_secret_key": "BIgDh5J%uUktooKxT!IM7#m$NtB51%la"
|
||||
}
|
@ -1,26 +0,0 @@
|
||||
[
|
||||
{
|
||||
"instance_id" : 1,
|
||||
"ip": "127.0.0.1",
|
||||
"listen_port": 7611,
|
||||
"channel": 0
|
||||
},
|
||||
{
|
||||
"instance_id" : 2,
|
||||
"ip": "127.0.0.1",
|
||||
"listen_port": 7612,
|
||||
"channel": 0
|
||||
},
|
||||
{
|
||||
"instance_id" : 3,
|
||||
"ip": "127.0.0.1",
|
||||
"listen_port": 7613,
|
||||
"channel": 0
|
||||
},
|
||||
{
|
||||
"instance_id" : 8,
|
||||
"ip": "127.0.0.1",
|
||||
"listen_port": 7618,
|
||||
"channel": 5990
|
||||
}
|
||||
]
|
@ -1,5 +0,0 @@
|
||||
[
|
||||
{
|
||||
"url": "http://127.0.0.1:8321/webapp/index.php"
|
||||
}
|
||||
]
|
@ -1,7 +0,0 @@
|
||||
[
|
||||
{
|
||||
"instance_id": 1,
|
||||
"ip": "127.0.0.1",
|
||||
"listen_port": 7621
|
||||
}
|
||||
]
|
11
server/bin/monitor.sh
Normal file
11
server/bin/monitor.sh
Normal file
@ -0,0 +1,11 @@
|
||||
path_arr=$(echo $PWD|tr '/' '\n')
|
||||
path_arr=(${path_arr})
|
||||
GAME_ID=${path_arr[-5]}
|
||||
|
||||
if echo $GAME_ID | grep -q '[^0-9]'
|
||||
then
|
||||
echo 'game_id参数必须为数字'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
python ../../third_party/tools/scripts/server/monitor.py gameserver${GAME_ID} '-n1 -i1'
|
10
server/bin/real_start_instance.sh
Executable file
10
server/bin/real_start_instance.sh
Executable file
@ -0,0 +1,10 @@
|
||||
#!/bin/bash
|
||||
|
||||
source /etc/profile
|
||||
source /root/.bash_profile
|
||||
|
||||
./gameserver2006 -n $1 -i $2 >> gameserver2006$2_$1.out
|
||||
echo $? >> start.log
|
||||
date >> start.log
|
||||
echo $1 $2 >> start.log
|
||||
free -m >> start.log
|
@ -3,7 +3,7 @@
|
||||
#source /etc/profile
|
||||
#source /root/.bash_profile
|
||||
|
||||
pid=$(ps -ef|grep "gameserver2006 -z 1 -n $2 -i $1"|grep -v grep|awk '{print $2}')
|
||||
pid=$(ps -ef|grep "gameserver2006 -n $2 -i $1"|grep -v grep|awk '{print $2}')
|
||||
echo $pid
|
||||
|
||||
if [[ $pid != "" ]]
|
||||
@ -13,4 +13,4 @@ else
|
||||
echo "pid 为空"
|
||||
fi
|
||||
|
||||
nohup ./gameserver2006 -z 1 -n $2 -i $1 >> gameserver2006$2_$1.out 2>$1 &
|
||||
nohup ./gameserver2006 -n $2 -i $1 >> gameserver2006$2_$1.out 2>$1 &
|
@ -1 +0,0 @@
|
||||
../bt/exported
|
@ -1,28 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Behavior Version="5" NoError="true">
|
||||
<Node Class="Behaviac.Design.Nodes.Behavior" AgentType="AndroidAgent" Domains="" Enable="true" HasOwnPrefabData="false" Id="-1" PrefabName="" PrefabNodeId="-1">
|
||||
<Comment Background="NoColor" Text="" />
|
||||
<DescriptorRefs value="0:" />
|
||||
<Connector Identifier="GenericChildren">
|
||||
<Node Class="PluginBehaviac.Nodes.Sequence" Enable="true" HasOwnPrefabData="false" Id="0" PrefabName="" PrefabNodeId="-1">
|
||||
<Comment Background="NoColor" Text="" />
|
||||
<Connector Identifier="GenericChildren">
|
||||
<Node Class="PluginBehaviac.Nodes.Action" Enable="true" HasOwnPrefabData="false" Id="1" Method="Self.AndroidAgent::CoConnectBattleServer()" PrefabName="" PrefabNodeId="-1" ResultFunctor="""" ResultOption="BT_INVALID">
|
||||
<Comment Background="NoColor" Text="" />
|
||||
</Node>
|
||||
<Node Class="PluginBehaviac.Nodes.Action" Enable="true" HasOwnPrefabData="false" Id="2" Method="Self.AndroidAgent::CoJoin()" PrefabName="" PrefabNodeId="-1" ResultFunctor="""" ResultOption="BT_INVALID">
|
||||
<Comment Background="NoColor" Text="" />
|
||||
</Node>
|
||||
<Node Class="PluginBehaviac.Nodes.DecoratorLoop" Count="const int -1" DecorateWhenChildEnds="true" DoneWithinFrame="false" Enable="true" HasOwnPrefabData="false" Id="3" PrefabName="" PrefabNodeId="-1">
|
||||
<Comment Background="NoColor" Text="" />
|
||||
<Connector Identifier="GenericChildren">
|
||||
<Node Class="PluginBehaviac.Nodes.Action" Enable="true" HasOwnPrefabData="false" Id="6" Method="Self.AndroidAgent::CoUpdateGame()" PrefabName="" PrefabNodeId="-1" ResultFunctor="""" ResultOption="BT_INVALID">
|
||||
<Comment Background="NoColor" Text="" />
|
||||
</Node>
|
||||
</Connector>
|
||||
</Node>
|
||||
</Connector>
|
||||
</Node>
|
||||
</Connector>
|
||||
</Node>
|
||||
</Behavior>
|
@ -1,27 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Behavior Version="5">
|
||||
<Node Class="Behaviac.Design.Nodes.Behavior" AgentType="AndroidAgent" Domains="" Enable="true" HasOwnPrefabData="false" Id="-1" PrefabName="" PrefabNodeId="-1">
|
||||
<Comment Background="NoColor" Text="" />
|
||||
<DescriptorRefs value="0:" />
|
||||
<Connector Identifier="GenericChildren">
|
||||
<Node Class="PluginBehaviac.Nodes.IfElse" Enable="true" HasOwnPrefabData="false" Id="0" PrefabName="" PrefabNodeId="-1">
|
||||
<Comment Background="NoColor" Text="" />
|
||||
<Connector Identifier="_condition">
|
||||
<Node Class="PluginBehaviac.Nodes.Condition" Enable="true" HasOwnPrefabData="false" Id="1" Operator="Equal" Opl="Self.AndroidAgent::IsLoginSuccess()" Opr="const bool true" PrefabName="" PrefabNodeId="-1">
|
||||
<Comment Background="NoColor" Text="" />
|
||||
</Node>
|
||||
</Connector>
|
||||
<Connector Identifier="_if">
|
||||
<Node Class="Behaviac.Design.Nodes.ReferencedBehavior" Enable="true" HasOwnPrefabData="false" Id="3" PrefabName="" PrefabNodeId="-1" ReferenceBehavior="const string "android/battle"" Task="""">
|
||||
<Comment Background="Gray" Text="" />
|
||||
</Node>
|
||||
</Connector>
|
||||
<Connector Identifier="_else">
|
||||
<Node Class="PluginBehaviac.Nodes.Action" Enable="true" HasOwnPrefabData="false" Id="2" Method="Self.AndroidAgent::CoLogin()" PrefabName="" PrefabNodeId="-1" ResultFunctor="""" ResultOption="BT_INVALID">
|
||||
<Comment Background="NoColor" Text="" />
|
||||
</Node>
|
||||
</Connector>
|
||||
</Node>
|
||||
</Connector>
|
||||
</Node>
|
||||
</Behavior>
|
@ -1,64 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<meta>
|
||||
<types />
|
||||
<agents>
|
||||
<agent classfullname="behaviac::Agent" DisplayName="behaviac::Agent" Desc="behaviac::Agent" IsRefType="true" IsImplemented="true">
|
||||
<Method Name="VectorLength" DisplayName="VectorLength" Desc="VectorLength" Class="behaviac::Agent" ReturnType="int" ReturnTypeFullName="System.Int32" Static="true" Public="true" istask="false">
|
||||
<Param Name="param0" Type="const IList&" TypeFullName="System.Collections.IList" DisplayName="param0" Desc="param0" />
|
||||
</Method>
|
||||
<Method Name="VectorAdd" DisplayName="VectorAdd" Desc="VectorAdd" Class="behaviac::Agent" ReturnType="void" ReturnTypeFullName="System.Void" Static="true" Public="true" istask="false">
|
||||
<Param Name="param0" Type="IList&" TypeFullName="System.Collections.IList" DisplayName="param0" Desc="param0" />
|
||||
<Param Name="param1" Type="const System::Object&" TypeFullName="System.Object" DisplayName="param1" Desc="param1" />
|
||||
</Method>
|
||||
<Method Name="VectorRemove" DisplayName="VectorRemove" Desc="VectorRemove" Class="behaviac::Agent" ReturnType="void" ReturnTypeFullName="System.Void" Static="true" Public="true" istask="false">
|
||||
<Param Name="param0" Type="IList&" TypeFullName="System.Collections.IList" DisplayName="param0" Desc="param0" />
|
||||
<Param Name="param1" Type="const System::Object&" TypeFullName="System.Object" DisplayName="param1" Desc="param1" />
|
||||
</Method>
|
||||
<Method Name="VectorContains" DisplayName="VectorContains" Desc="VectorContains" Class="behaviac::Agent" ReturnType="bool" ReturnTypeFullName="System.Boolean" Static="true" Public="true" istask="false">
|
||||
<Param Name="param0" Type="IList&" TypeFullName="System.Collections.IList" DisplayName="param0" Desc="param0" />
|
||||
<Param Name="param1" Type="const System::Object&" TypeFullName="System.Object" DisplayName="param1" Desc="param1" />
|
||||
</Method>
|
||||
<Method Name="VectorClear" DisplayName="VectorClear" Desc="VectorClear" Class="behaviac::Agent" ReturnType="void" ReturnTypeFullName="System.Void" Static="true" Public="true" istask="false">
|
||||
<Param Name="param0" Type="IList&" TypeFullName="System.Collections.IList" DisplayName="param0" Desc="param0" />
|
||||
</Method>
|
||||
<Method Name="LogMessage" DisplayName="LogMessage" Desc="LogMessage" Class="behaviac::Agent" ReturnType="void" ReturnTypeFullName="System.Void" Static="true" Public="true" istask="false">
|
||||
<Param Name="param0" Type="const char*" TypeFullName="System.String" DisplayName="param0" Desc="param0" />
|
||||
</Method>
|
||||
</agent>
|
||||
<agent classfullname="BaseAgent" base="behaviac::Agent" DisplayName="BaseAgent" Desc="BaseAgent" IsRefType="true" IsCustomized="true" IsImplemented="true">
|
||||
<Method Name="GetTickCount" DisplayName="GetTickCount" Desc="GetTickCount" Class="BaseAgent" ReturnType="int" ReturnTypeFullName="System.Int32" Static="false" Public="false" istask="false" />
|
||||
<Method Name="RandRange" DisplayName="RandRange" Desc="RandRange" Class="BaseAgent" ReturnType="int" ReturnTypeFullName="System.Int32" Static="false" Public="false" istask="false">
|
||||
<Param Name="min_val" Type="int" TypeFullName="System.Int32" DisplayName="min_val" Desc="min_val" />
|
||||
<Param Name="max_val" Type="int" TypeFullName="System.Int32" DisplayName="max_val" Desc="max_val" />
|
||||
</Method>
|
||||
<Method Name="RandRangeAsFloat" DisplayName="RandRangeAsFloat" Desc="RandRangeAsFloat" Class="BaseAgent" ReturnType="float" ReturnTypeFullName="System.Single" Static="false" Public="false" istask="false">
|
||||
<Param Name="min_val" Type="float" TypeFullName="System.Single" DisplayName="min_val" Desc="min_val" />
|
||||
<Param Name="max_val" Type="float" TypeFullName="System.Single" DisplayName="max_val" Desc="max_val" />
|
||||
</Method>
|
||||
<Method Name="Rand" DisplayName="Rand" Desc="Rand" Class="BaseAgent" ReturnType="int" ReturnTypeFullName="System.Int32" Static="false" Public="false" istask="false" />
|
||||
<Method Name="DeltaTime" DisplayName="DeltaTime" Desc="DeltaTime" Class="BaseAgent" ReturnType="int" ReturnTypeFullName="System.Int32" Static="false" Public="false" istask="false">
|
||||
<Param Name="time" Type="int" TypeFullName="System.Int32" DisplayName="time" Desc="time" />
|
||||
</Method>
|
||||
<Method Name="AbortCoroutine" DisplayName="AbortCoroutine" Desc="AbortCoroutine" Class="BaseAgent" ReturnType="void" ReturnTypeFullName="System.Void" Static="false" Public="false" istask="false">
|
||||
<Param Name="co_id" Type="int" TypeFullName="System.Int32" DisplayName="co_id" Desc="co_id" />
|
||||
</Method>
|
||||
</agent>
|
||||
<agent classfullname="AndroidAgent" base="BaseAgent" DisplayName="AndroidAgent" Desc="AndroidAgent" IsRefType="true" IsCustomized="true" IsImplemented="true">
|
||||
<Method Name="IsLoginSuccess" DisplayName="IsLoginSuccess" Desc="IsLoginSuccess" Class="AndroidAgent" ReturnType="bool" ReturnTypeFullName="System.Boolean" Static="false" Public="false" istask="false" />
|
||||
<Method Name="SearchEnemy" DisplayName="SearchEnemy" Desc="SearchEnemy" Class="AndroidAgent" ReturnType="behaviac::EBTStatus" ReturnTypeFullName="XMLPluginBehaviac.behaviac_EBTStatus" Static="false" Public="false" istask="false">
|
||||
<Param Name="range" Type="int" TypeFullName="System.Int32" DisplayName="range" Desc="range" />
|
||||
</Method>
|
||||
<Method Name="NetIsConnected" DisplayName="NetIsConnected" Desc="NetIsConnected" Class="AndroidAgent" ReturnType="bool" ReturnTypeFullName="System.Boolean" Static="false" Public="false" istask="false" />
|
||||
<Method Name="CoIdle" DisplayName="CoIdle" Desc="CoIdle" Class="AndroidAgent" ReturnType="behaviac::EBTStatus" ReturnTypeFullName="XMLPluginBehaviac.behaviac_EBTStatus" Static="false" Public="false" istask="false">
|
||||
<Param Name="min_val" Type="int" TypeFullName="System.Int32" DisplayName="min_val" Desc="min_val" />
|
||||
<Param Name="max_val" Type="int" TypeFullName="System.Int32" DisplayName="max_val" Desc="max_val" />
|
||||
</Method>
|
||||
<Method Name="CoLogin" DisplayName="CoLogin" Desc="CoLogin" Class="AndroidAgent" ReturnType="behaviac::EBTStatus" ReturnTypeFullName="XMLPluginBehaviac.behaviac_EBTStatus" Static="false" Public="false" istask="false" />
|
||||
<Method Name="CoConnectBattleServer" DisplayName="CoConnectBattleServer" Desc="CoConnectBattleServer" Class="AndroidAgent" ReturnType="behaviac::EBTStatus" ReturnTypeFullName="XMLPluginBehaviac.behaviac_EBTStatus" Static="false" Public="false" istask="false" />
|
||||
<Method Name="CoJoin" DisplayName="CoJoin" Desc="CoJoin" Class="AndroidAgent" ReturnType="behaviac::EBTStatus" ReturnTypeFullName="XMLPluginBehaviac.behaviac_EBTStatus" Static="false" Public="false" istask="false" />
|
||||
<Method Name="IsGameOver" DisplayName="IsGameOver" Desc="IsGameOver" Class="AndroidAgent" ReturnType="bool" ReturnTypeFullName="System.Boolean" Static="false" Public="false" istask="false" />
|
||||
<Method Name="CoUpdateGame" DisplayName="CoUpdateGame" Desc="CoUpdateGame" Class="AndroidAgent" ReturnType="behaviac::EBTStatus" ReturnTypeFullName="XMLPluginBehaviac.behaviac_EBTStatus" Static="false" Public="false" istask="false" />
|
||||
</agent>
|
||||
</agents>
|
||||
<instances />
|
||||
</meta>
|
@ -1,24 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: android\battle.xml-->
|
||||
<behavior name="android/battle" agenttype="AndroidAgent" version="5">
|
||||
<node class="Sequence" id="0">
|
||||
<node class="Action" id="1">
|
||||
<property Method="Self.AndroidAgent::CoConnectBattleServer()" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="Action" id="2">
|
||||
<property Method="Self.AndroidAgent::CoJoin()" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
<node class="DecoratorLoop" id="3">
|
||||
<property Count="const int -1" />
|
||||
<property DecorateWhenChildEnds="true" />
|
||||
<property DoneWithinFrame="false" />
|
||||
<node class="Action" id="6">
|
||||
<property Method="Self.AndroidAgent::CoUpdateGame()" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,19 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--EXPORTED BY TOOL, DON'T MODIFY IT!-->
|
||||
<!--Source File: android\test.xml-->
|
||||
<behavior name="android/test" agenttype="AndroidAgent" version="5">
|
||||
<node class="IfElse" id="0">
|
||||
<node class="Condition" id="1">
|
||||
<property Operator="Equal" />
|
||||
<property Opl="Self.AndroidAgent::IsLoginSuccess()" />
|
||||
<property Opr="const bool true" />
|
||||
</node>
|
||||
<node class="ReferencedBehavior" id="3">
|
||||
<property ReferenceBehavior="const string "android/battle"" />
|
||||
</node>
|
||||
<node class="Action" id="2">
|
||||
<property Method="Self.AndroidAgent::CoLogin()" />
|
||||
<property ResultOption="BT_INVALID" />
|
||||
</node>
|
||||
</node>
|
||||
</behavior>
|
@ -1,71 +0,0 @@
|
||||
// ---------------------------------------------------------------------
|
||||
// THIS FILE IS AUTO-GENERATED BY BEHAVIAC DESIGNER, SO PLEASE DON'T MODIFY IT BY YOURSELF!
|
||||
// ---------------------------------------------------------------------
|
||||
|
||||
#ifndef _BEHAVIAC_TYPES_H_
|
||||
#define _BEHAVIAC_TYPES_H_
|
||||
|
||||
#include "behaviac/behaviac.h"
|
||||
#include "behaviac/behaviortree/behaviortree.h"
|
||||
#include "behaviac/agent/agent.h"
|
||||
#include "behaviac/common/meta.h"
|
||||
|
||||
#include "behaviac/behaviortree/nodes/actions/action.h"
|
||||
#include "behaviac/behaviortree/nodes/actions/assignment.h"
|
||||
#include "behaviac/behaviortree/nodes/actions/compute.h"
|
||||
#include "behaviac/behaviortree/nodes/actions/end.h"
|
||||
#include "behaviac/behaviortree/nodes/actions/noop.h"
|
||||
#include "behaviac/behaviortree/nodes/actions/wait.h"
|
||||
#include "behaviac/behaviortree/nodes/actions/waitforsignal.h"
|
||||
#include "behaviac/behaviortree/nodes/actions/waitframes.h"
|
||||
#include "behaviac/behaviortree/nodes/composites/compositestochastic.h"
|
||||
#include "behaviac/behaviortree/nodes/composites/ifelse.h"
|
||||
#include "behaviac/behaviortree/nodes/composites/parallel.h"
|
||||
#include "behaviac/behaviortree/nodes/composites/referencebehavior.h"
|
||||
#include "behaviac/behaviortree/nodes/composites/selector.h"
|
||||
#include "behaviac/behaviortree/nodes/composites/selectorloop.h"
|
||||
#include "behaviac/behaviortree/nodes/composites/selectorprobability.h"
|
||||
#include "behaviac/behaviortree/nodes/composites/selectorstochastic.h"
|
||||
#include "behaviac/behaviortree/nodes/composites/sequence.h"
|
||||
#include "behaviac/behaviortree/nodes/composites/sequencestochastic.h"
|
||||
#include "behaviac/behaviortree/nodes/composites/withprecondition.h"
|
||||
#include "behaviac/behaviortree/nodes/conditions/and.h"
|
||||
#include "behaviac/behaviortree/nodes/conditions/conditionbase.h"
|
||||
#include "behaviac/behaviortree/nodes/conditions/condition.h"
|
||||
#include "behaviac/behaviortree/nodes/conditions/false.h"
|
||||
#include "behaviac/behaviortree/nodes/conditions/or.h"
|
||||
#include "behaviac/behaviortree/nodes/conditions/true.h"
|
||||
#include "behaviac/behaviortree/nodes/decorators/decoratoralwaysfailure.h"
|
||||
#include "behaviac/behaviortree/nodes/decorators/decoratoralwaysrunning.h"
|
||||
#include "behaviac/behaviortree/nodes/decorators/decoratoralwayssuccess.h"
|
||||
#include "behaviac/behaviortree/nodes/decorators/decoratorcount.h"
|
||||
#include "behaviac/behaviortree/nodes/decorators/decoratorcountlimit.h"
|
||||
#include "behaviac/behaviortree/nodes/decorators/decoratorfailureuntil.h"
|
||||
#include "behaviac/behaviortree/nodes/decorators/decoratorframes.h"
|
||||
#include "behaviac/behaviortree/nodes/decorators/decoratoriterator.h"
|
||||
#include "behaviac/behaviortree/nodes/decorators/decoratorlog.h"
|
||||
#include "behaviac/behaviortree/nodes/decorators/decoratorloop.h"
|
||||
#include "behaviac/behaviortree/nodes/decorators/decoratorloopuntil.h"
|
||||
#include "behaviac/behaviortree/nodes/decorators/decoratornot.h"
|
||||
#include "behaviac/behaviortree/nodes/decorators/decoratorrepeat.h"
|
||||
#include "behaviac/behaviortree/nodes/decorators/decoratorsuccessuntil.h"
|
||||
#include "behaviac/behaviortree/nodes/decorators/decoratortime.h"
|
||||
#include "behaviac/behaviortree/nodes/decorators/decoratorweight.h"
|
||||
#include "behaviac/behaviortree/attachments/event.h"
|
||||
#include "behaviac/behaviortree/attachments/attachaction.h"
|
||||
#include "behaviac/behaviortree/attachments/precondition.h"
|
||||
#include "behaviac/behaviortree/attachments/effector.h"
|
||||
#include "behaviac/htn/task.h"
|
||||
#include "behaviac/fsm/fsm.h"
|
||||
#include "behaviac/fsm/state.h"
|
||||
#include "behaviac/fsm/startcondition.h"
|
||||
#include "behaviac/fsm/transitioncondition.h"
|
||||
#include "behaviac/fsm/waitstate.h"
|
||||
#include "behaviac/fsm/waitframesstate.h"
|
||||
#include "behaviac/fsm/alwaystransition.h"
|
||||
#include "behaviac/fsm/waittransition.h"
|
||||
|
||||
#include "internal/behaviac_agent_headers.h"
|
||||
#include "internal/behaviac_agent_member_visitor.h"
|
||||
|
||||
#endif // _BEHAVIAC_TYPES_H_
|
@ -1,12 +0,0 @@
|
||||
// ---------------------------------------------------------------------
|
||||
// THIS FILE IS AUTO-GENERATED BY BEHAVIAC DESIGNER, SO PLEASE DON'T MODIFY IT BY YOURSELF!
|
||||
// ---------------------------------------------------------------------
|
||||
|
||||
#ifndef _BEHAVIAC_AGENT_HEADERS_H_
|
||||
#define _BEHAVIAC_AGENT_HEADERS_H_
|
||||
|
||||
#include "behaviac_headers.h"
|
||||
|
||||
// THE FOLLOWING AGENT HEADER FILES IS GENERATED AUTOMATICALLY:
|
||||
|
||||
#endif // _BEHAVIAC_AGENT_HEADERS_H_
|
@ -1,105 +0,0 @@
|
||||
// ---------------------------------------------------------------------
|
||||
// THIS FILE IS AUTO-GENERATED BY BEHAVIAC DESIGNER, SO PLEASE DON'T MODIFY IT BY YOURSELF!
|
||||
// ---------------------------------------------------------------------
|
||||
|
||||
#ifndef _BEHAVIAC_MEMBER_VISITOR_H_
|
||||
#define _BEHAVIAC_MEMBER_VISITOR_H_
|
||||
|
||||
#include "behaviac_agent_headers.h"
|
||||
|
||||
// Agent property and method handlers
|
||||
|
||||
|
||||
struct METHOD_TYPE_BaseAgent_AbortCoroutine { };
|
||||
template<> inline void BaseAgent::_Execute_Method_<METHOD_TYPE_BaseAgent_AbortCoroutine>(int p0)
|
||||
{
|
||||
this->BaseAgent::AbortCoroutine(p0);
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_BaseAgent_DeltaTime { };
|
||||
template<> inline int BaseAgent::_Execute_Method_<METHOD_TYPE_BaseAgent_DeltaTime>(int p0)
|
||||
{
|
||||
return this->BaseAgent::DeltaTime(p0);
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_BaseAgent_GetTickCount { };
|
||||
template<> inline int BaseAgent::_Execute_Method_<METHOD_TYPE_BaseAgent_GetTickCount>()
|
||||
{
|
||||
return this->BaseAgent::GetTickCount();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_BaseAgent_Rand { };
|
||||
template<> inline int BaseAgent::_Execute_Method_<METHOD_TYPE_BaseAgent_Rand>()
|
||||
{
|
||||
return this->BaseAgent::Rand();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_BaseAgent_RandRange { };
|
||||
template<> inline int BaseAgent::_Execute_Method_<METHOD_TYPE_BaseAgent_RandRange>(int p0, int p1)
|
||||
{
|
||||
return this->BaseAgent::RandRange(p0, p1);
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_BaseAgent_RandRangeAsFloat { };
|
||||
template<> inline float BaseAgent::_Execute_Method_<METHOD_TYPE_BaseAgent_RandRangeAsFloat>(float p0, float p1)
|
||||
{
|
||||
return this->BaseAgent::RandRangeAsFloat(p0, p1);
|
||||
}
|
||||
|
||||
|
||||
struct METHOD_TYPE_AndroidAgent_CoConnectBattleServer { };
|
||||
template<> inline behaviac::EBTStatus AndroidAgent::_Execute_Method_<METHOD_TYPE_AndroidAgent_CoConnectBattleServer>()
|
||||
{
|
||||
return this->AndroidAgent::CoConnectBattleServer();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_AndroidAgent_CoIdle { };
|
||||
template<> inline behaviac::EBTStatus AndroidAgent::_Execute_Method_<METHOD_TYPE_AndroidAgent_CoIdle>(int p0, int p1)
|
||||
{
|
||||
return this->AndroidAgent::CoIdle(p0, p1);
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_AndroidAgent_CoJoin { };
|
||||
template<> inline behaviac::EBTStatus AndroidAgent::_Execute_Method_<METHOD_TYPE_AndroidAgent_CoJoin>()
|
||||
{
|
||||
return this->AndroidAgent::CoJoin();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_AndroidAgent_CoLogin { };
|
||||
template<> inline behaviac::EBTStatus AndroidAgent::_Execute_Method_<METHOD_TYPE_AndroidAgent_CoLogin>()
|
||||
{
|
||||
return this->AndroidAgent::CoLogin();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_AndroidAgent_CoUpdateGame { };
|
||||
template<> inline behaviac::EBTStatus AndroidAgent::_Execute_Method_<METHOD_TYPE_AndroidAgent_CoUpdateGame>()
|
||||
{
|
||||
return this->AndroidAgent::CoUpdateGame();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_AndroidAgent_IsGameOver { };
|
||||
template<> inline bool AndroidAgent::_Execute_Method_<METHOD_TYPE_AndroidAgent_IsGameOver>()
|
||||
{
|
||||
return this->AndroidAgent::IsGameOver();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_AndroidAgent_IsLoginSuccess { };
|
||||
template<> inline bool AndroidAgent::_Execute_Method_<METHOD_TYPE_AndroidAgent_IsLoginSuccess>()
|
||||
{
|
||||
return this->AndroidAgent::IsLoginSuccess();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_AndroidAgent_NetIsConnected { };
|
||||
template<> inline bool AndroidAgent::_Execute_Method_<METHOD_TYPE_AndroidAgent_NetIsConnected>()
|
||||
{
|
||||
return this->AndroidAgent::NetIsConnected();
|
||||
}
|
||||
|
||||
struct METHOD_TYPE_AndroidAgent_SearchEnemy { };
|
||||
template<> inline behaviac::EBTStatus AndroidAgent::_Execute_Method_<METHOD_TYPE_AndroidAgent_SearchEnemy>(int p0)
|
||||
{
|
||||
return this->AndroidAgent::SearchEnemy(p0);
|
||||
}
|
||||
|
||||
|
||||
#endif // _BEHAVIAC_MEMBER_VISITOR_H_
|
@ -1,330 +0,0 @@
|
||||
// ---------------------------------------------------------------------
|
||||
// THIS FILE IS AUTO-GENERATED BY BEHAVIAC DESIGNER, SO PLEASE DON'T MODIFY IT BY YOURSELF!
|
||||
// ---------------------------------------------------------------------
|
||||
|
||||
#include "behaviac/common/meta.h"
|
||||
#include "behaviac/common/member.h"
|
||||
#include "behaviac_agent_meta.h"
|
||||
|
||||
namespace behaviac
|
||||
{
|
||||
class CMethod_behaviac_Agent_VectorAdd : public CAgentMethodVoidBase
|
||||
{
|
||||
IInstanceMember* _param0;
|
||||
IInstanceMember* _param1;
|
||||
|
||||
public:
|
||||
CMethod_behaviac_Agent_VectorAdd() : _param0(0) , _param1(0)
|
||||
{
|
||||
}
|
||||
|
||||
CMethod_behaviac_Agent_VectorAdd(CMethod_behaviac_Agent_VectorAdd &rhs) : CAgentMethodVoidBase(rhs) , _param0(0) , _param1(0)
|
||||
{
|
||||
}
|
||||
|
||||
~CMethod_behaviac_Agent_VectorAdd()
|
||||
{
|
||||
BEHAVIAC_DELETE _param0;
|
||||
BEHAVIAC_DELETE _param1;
|
||||
}
|
||||
|
||||
virtual IInstanceMember* clone()
|
||||
{
|
||||
return BEHAVIAC_NEW CMethod_behaviac_Agent_VectorAdd(*this);
|
||||
}
|
||||
|
||||
virtual void load(const char* instance, behaviac::vector<behaviac::string>& paramStrs)
|
||||
{
|
||||
BEHAVIAC_ASSERT(paramStrs.size() == 2);
|
||||
|
||||
behaviac::StringUtils::StringCopySafe(kInstanceNameMax, _instance, instance);
|
||||
_param0 = AgentMeta::TParseProperty<IList >(paramStrs[0].c_str());
|
||||
_param1 = AgentMeta::TParseProperty<System::Object >(paramStrs[1].c_str());
|
||||
}
|
||||
|
||||
virtual void run(Agent* self)
|
||||
{
|
||||
BEHAVIAC_ASSERT(_param0 != NULL);
|
||||
BEHAVIAC_ASSERT(_param1 != NULL);
|
||||
|
||||
IList& pValue_param0 = *(IList*)_param0->GetValue(self, behaviac::Meta::IsVector<IList >::Result, behaviac::GetClassTypeNumberId<IList >());
|
||||
System::Object& pValue_param1 = *(System::Object*)_param1->GetValue(self, behaviac::Meta::IsVector<System::Object >::Result, behaviac::GetClassTypeNumberId<System::Object >());
|
||||
behaviac::Agent::VectorAdd(pValue_param0, pValue_param1);
|
||||
}
|
||||
};
|
||||
|
||||
class CMethod_behaviac_Agent_VectorClear : public CAgentMethodVoidBase
|
||||
{
|
||||
IInstanceMember* _param0;
|
||||
|
||||
public:
|
||||
CMethod_behaviac_Agent_VectorClear() : _param0(0)
|
||||
{
|
||||
}
|
||||
|
||||
CMethod_behaviac_Agent_VectorClear(CMethod_behaviac_Agent_VectorClear &rhs) : CAgentMethodVoidBase(rhs) , _param0(0)
|
||||
{
|
||||
}
|
||||
|
||||
~CMethod_behaviac_Agent_VectorClear()
|
||||
{
|
||||
BEHAVIAC_DELETE _param0;
|
||||
}
|
||||
|
||||
virtual IInstanceMember* clone()
|
||||
{
|
||||
return BEHAVIAC_NEW CMethod_behaviac_Agent_VectorClear(*this);
|
||||
}
|
||||
|
||||
virtual void load(const char* instance, behaviac::vector<behaviac::string>& paramStrs)
|
||||
{
|
||||
BEHAVIAC_ASSERT(paramStrs.size() == 1);
|
||||
|
||||
behaviac::StringUtils::StringCopySafe(kInstanceNameMax, _instance, instance);
|
||||
_param0 = AgentMeta::TParseProperty<IList >(paramStrs[0].c_str());
|
||||
}
|
||||
|
||||
virtual void run(Agent* self)
|
||||
{
|
||||
BEHAVIAC_ASSERT(_param0 != NULL);
|
||||
|
||||
IList& pValue_param0 = *(IList*)_param0->GetValue(self, behaviac::Meta::IsVector<IList >::Result, behaviac::GetClassTypeNumberId<IList >());
|
||||
behaviac::Agent::VectorClear(pValue_param0);
|
||||
}
|
||||
};
|
||||
|
||||
class CMethod_behaviac_Agent_VectorContains : public CAgentMethodBase<bool>
|
||||
{
|
||||
IInstanceMember* _param0;
|
||||
IInstanceMember* _param1;
|
||||
|
||||
public:
|
||||
CMethod_behaviac_Agent_VectorContains() : _param0(0) , _param1(0)
|
||||
{
|
||||
}
|
||||
|
||||
CMethod_behaviac_Agent_VectorContains(CMethod_behaviac_Agent_VectorContains &rhs) : CAgentMethodBase<bool>(rhs) , _param0(0) , _param1(0)
|
||||
{
|
||||
}
|
||||
|
||||
~CMethod_behaviac_Agent_VectorContains()
|
||||
{
|
||||
BEHAVIAC_DELETE _param0;
|
||||
BEHAVIAC_DELETE _param1;
|
||||
}
|
||||
|
||||
virtual IInstanceMember* clone()
|
||||
{
|
||||
return BEHAVIAC_NEW CMethod_behaviac_Agent_VectorContains(*this);
|
||||
}
|
||||
|
||||
virtual void load(const char* instance, behaviac::vector<behaviac::string>& paramStrs)
|
||||
{
|
||||
BEHAVIAC_ASSERT(paramStrs.size() == 2);
|
||||
|
||||
behaviac::StringUtils::StringCopySafe(kInstanceNameMax, _instance, instance);
|
||||
_param0 = AgentMeta::TParseProperty<IList >(paramStrs[0].c_str());
|
||||
_param1 = AgentMeta::TParseProperty<System::Object >(paramStrs[1].c_str());
|
||||
}
|
||||
|
||||
virtual void run(Agent* self)
|
||||
{
|
||||
BEHAVIAC_ASSERT(_param0 != NULL);
|
||||
BEHAVIAC_ASSERT(_param1 != NULL);
|
||||
|
||||
IList& pValue_param0 = *(IList*)_param0->GetValue(self, behaviac::Meta::IsVector<IList >::Result, behaviac::GetClassTypeNumberId<IList >());
|
||||
System::Object& pValue_param1 = *(System::Object*)_param1->GetValue(self, behaviac::Meta::IsVector<System::Object >::Result, behaviac::GetClassTypeNumberId<System::Object >());
|
||||
_returnValue->value = behaviac::Agent::VectorContains(pValue_param0, pValue_param1);
|
||||
}
|
||||
};
|
||||
|
||||
class CMethod_behaviac_Agent_VectorLength : public CAgentMethodBase<int>
|
||||
{
|
||||
IInstanceMember* _param0;
|
||||
|
||||
public:
|
||||
CMethod_behaviac_Agent_VectorLength() : _param0(0)
|
||||
{
|
||||
}
|
||||
|
||||
CMethod_behaviac_Agent_VectorLength(CMethod_behaviac_Agent_VectorLength &rhs) : CAgentMethodBase<int>(rhs) , _param0(0)
|
||||
{
|
||||
}
|
||||
|
||||
~CMethod_behaviac_Agent_VectorLength()
|
||||
{
|
||||
BEHAVIAC_DELETE _param0;
|
||||
}
|
||||
|
||||
virtual IInstanceMember* clone()
|
||||
{
|
||||
return BEHAVIAC_NEW CMethod_behaviac_Agent_VectorLength(*this);
|
||||
}
|
||||
|
||||
virtual void load(const char* instance, behaviac::vector<behaviac::string>& paramStrs)
|
||||
{
|
||||
BEHAVIAC_ASSERT(paramStrs.size() == 1);
|
||||
|
||||
behaviac::StringUtils::StringCopySafe(kInstanceNameMax, _instance, instance);
|
||||
_param0 = AgentMeta::TParseProperty<IList >(paramStrs[0].c_str());
|
||||
}
|
||||
|
||||
virtual void run(Agent* self)
|
||||
{
|
||||
BEHAVIAC_ASSERT(_param0 != NULL);
|
||||
|
||||
IList& pValue_param0 = *(IList*)_param0->GetValue(self, behaviac::Meta::IsVector<IList >::Result, behaviac::GetClassTypeNumberId<IList >());
|
||||
_returnValue->value = behaviac::Agent::VectorLength(pValue_param0);
|
||||
}
|
||||
};
|
||||
|
||||
class CMethod_behaviac_Agent_VectorRemove : public CAgentMethodVoidBase
|
||||
{
|
||||
IInstanceMember* _param0;
|
||||
IInstanceMember* _param1;
|
||||
|
||||
public:
|
||||
CMethod_behaviac_Agent_VectorRemove() : _param0(0) , _param1(0)
|
||||
{
|
||||
}
|
||||
|
||||
CMethod_behaviac_Agent_VectorRemove(CMethod_behaviac_Agent_VectorRemove &rhs) : CAgentMethodVoidBase(rhs) , _param0(0) , _param1(0)
|
||||
{
|
||||
}
|
||||
|
||||
~CMethod_behaviac_Agent_VectorRemove()
|
||||
{
|
||||
BEHAVIAC_DELETE _param0;
|
||||
BEHAVIAC_DELETE _param1;
|
||||
}
|
||||
|
||||
virtual IInstanceMember* clone()
|
||||
{
|
||||
return BEHAVIAC_NEW CMethod_behaviac_Agent_VectorRemove(*this);
|
||||
}
|
||||
|
||||
virtual void load(const char* instance, behaviac::vector<behaviac::string>& paramStrs)
|
||||
{
|
||||
BEHAVIAC_ASSERT(paramStrs.size() == 2);
|
||||
|
||||
behaviac::StringUtils::StringCopySafe(kInstanceNameMax, _instance, instance);
|
||||
_param0 = AgentMeta::TParseProperty<IList >(paramStrs[0].c_str());
|
||||
_param1 = AgentMeta::TParseProperty<System::Object >(paramStrs[1].c_str());
|
||||
}
|
||||
|
||||
virtual void run(Agent* self)
|
||||
{
|
||||
BEHAVIAC_ASSERT(_param0 != NULL);
|
||||
BEHAVIAC_ASSERT(_param1 != NULL);
|
||||
|
||||
IList& pValue_param0 = *(IList*)_param0->GetValue(self, behaviac::Meta::IsVector<IList >::Result, behaviac::GetClassTypeNumberId<IList >());
|
||||
System::Object& pValue_param1 = *(System::Object*)_param1->GetValue(self, behaviac::Meta::IsVector<System::Object >::Result, behaviac::GetClassTypeNumberId<System::Object >());
|
||||
behaviac::Agent::VectorRemove(pValue_param0, pValue_param1);
|
||||
}
|
||||
};
|
||||
|
||||
class BehaviorLoaderImplement : BehaviorLoader
|
||||
{
|
||||
public:
|
||||
BehaviorLoaderImplement()
|
||||
{
|
||||
AgentMeta::SetBehaviorLoader(this);
|
||||
}
|
||||
|
||||
virtual ~BehaviorLoaderImplement()
|
||||
{
|
||||
}
|
||||
|
||||
virtual bool load()
|
||||
{
|
||||
AgentMeta::SetTotalSignature(3338390249u);
|
||||
|
||||
AgentMeta* meta = NULL;
|
||||
BEHAVIAC_UNUSED_VAR(meta);
|
||||
|
||||
// behaviac::Agent
|
||||
meta = BEHAVIAC_NEW AgentMeta(24743406u);
|
||||
AgentMeta::GetAgentMetas()[1770892321u] = meta;
|
||||
meta->RegisterMethod(1045109914u, BEHAVIAC_NEW CAgentStaticMethodVoid_1<char*>(FunctionPointer_behaviac_Agent_LogMessage));
|
||||
meta->RegisterMethod(2521019022u, BEHAVIAC_NEW CMethod_behaviac_Agent_VectorAdd());
|
||||
meta->RegisterMethod(2306090221u, BEHAVIAC_NEW CMethod_behaviac_Agent_VectorClear());
|
||||
meta->RegisterMethod(3483755530u, BEHAVIAC_NEW CMethod_behaviac_Agent_VectorContains());
|
||||
meta->RegisterMethod(505785840u, BEHAVIAC_NEW CMethod_behaviac_Agent_VectorLength());
|
||||
meta->RegisterMethod(502968959u, BEHAVIAC_NEW CMethod_behaviac_Agent_VectorRemove());
|
||||
|
||||
// BaseAgent
|
||||
meta = BEHAVIAC_NEW AgentMeta(378357712u);
|
||||
AgentMeta::GetAgentMetas()[2774251291u] = meta;
|
||||
meta->RegisterMethod(1352812660u, BEHAVIAC_NEW CAgentMethodVoid_1<int>(FunctionPointer_BaseAgent_AbortCoroutine));
|
||||
meta->RegisterMethod(1811924796u, BEHAVIAC_NEW CAgentMethod_1< int, int >(FunctionPointer_BaseAgent_DeltaTime));
|
||||
meta->RegisterMethod(2541118574u, BEHAVIAC_NEW CAgentMethod< int >(FunctionPointer_BaseAgent_GetTickCount));
|
||||
meta->RegisterMethod(1045109914u, BEHAVIAC_NEW CAgentStaticMethodVoid_1<char*>(FunctionPointer_BaseAgent_LogMessage));
|
||||
meta->RegisterMethod(3156314303u, BEHAVIAC_NEW CAgentMethod< int >(FunctionPointer_BaseAgent_Rand));
|
||||
meta->RegisterMethod(1110901686u, BEHAVIAC_NEW CAgentMethod_2< int, int, int >(FunctionPointer_BaseAgent_RandRange));
|
||||
meta->RegisterMethod(966948371u, BEHAVIAC_NEW CAgentMethod_2< float, float, float >(FunctionPointer_BaseAgent_RandRangeAsFloat));
|
||||
meta->RegisterMethod(2521019022u, BEHAVIAC_NEW CMethod_behaviac_Agent_VectorAdd());
|
||||
meta->RegisterMethod(2306090221u, BEHAVIAC_NEW CMethod_behaviac_Agent_VectorClear());
|
||||
meta->RegisterMethod(3483755530u, BEHAVIAC_NEW CMethod_behaviac_Agent_VectorContains());
|
||||
meta->RegisterMethod(505785840u, BEHAVIAC_NEW CMethod_behaviac_Agent_VectorLength());
|
||||
meta->RegisterMethod(502968959u, BEHAVIAC_NEW CMethod_behaviac_Agent_VectorRemove());
|
||||
|
||||
// AndroidAgent
|
||||
meta = BEHAVIAC_NEW AgentMeta(3724796529u);
|
||||
AgentMeta::GetAgentMetas()[2475098143u] = meta;
|
||||
meta->RegisterMethod(1352812660u, BEHAVIAC_NEW CAgentMethodVoid_1<int>(FunctionPointer_AndroidAgent_AbortCoroutine));
|
||||
meta->RegisterMethod(1384709030u, BEHAVIAC_NEW CAgentMethod< behaviac::EBTStatus >(FunctionPointer_AndroidAgent_CoConnectBattleServer));
|
||||
meta->RegisterMethod(3209797653u, BEHAVIAC_NEW CAgentMethod_2< behaviac::EBTStatus, int, int >(FunctionPointer_AndroidAgent_CoIdle));
|
||||
meta->RegisterMethod(3402581732u, BEHAVIAC_NEW CAgentMethod< behaviac::EBTStatus >(FunctionPointer_AndroidAgent_CoJoin));
|
||||
meta->RegisterMethod(2804162432u, BEHAVIAC_NEW CAgentMethod< behaviac::EBTStatus >(FunctionPointer_AndroidAgent_CoLogin));
|
||||
meta->RegisterMethod(805357126u, BEHAVIAC_NEW CAgentMethod< behaviac::EBTStatus >(FunctionPointer_AndroidAgent_CoUpdateGame));
|
||||
meta->RegisterMethod(1811924796u, BEHAVIAC_NEW CAgentMethod_1< int, int >(FunctionPointer_AndroidAgent_DeltaTime));
|
||||
meta->RegisterMethod(2541118574u, BEHAVIAC_NEW CAgentMethod< int >(FunctionPointer_AndroidAgent_GetTickCount));
|
||||
meta->RegisterMethod(400482748u, BEHAVIAC_NEW CAgentMethod< bool >(FunctionPointer_AndroidAgent_IsGameOver));
|
||||
meta->RegisterMethod(856196672u, BEHAVIAC_NEW CAgentMethod< bool >(FunctionPointer_AndroidAgent_IsLoginSuccess));
|
||||
meta->RegisterMethod(1045109914u, BEHAVIAC_NEW CAgentStaticMethodVoid_1<char*>(FunctionPointer_AndroidAgent_LogMessage));
|
||||
meta->RegisterMethod(2514585826u, BEHAVIAC_NEW CAgentMethod< bool >(FunctionPointer_AndroidAgent_NetIsConnected));
|
||||
meta->RegisterMethod(3156314303u, BEHAVIAC_NEW CAgentMethod< int >(FunctionPointer_AndroidAgent_Rand));
|
||||
meta->RegisterMethod(1110901686u, BEHAVIAC_NEW CAgentMethod_2< int, int, int >(FunctionPointer_AndroidAgent_RandRange));
|
||||
meta->RegisterMethod(966948371u, BEHAVIAC_NEW CAgentMethod_2< float, float, float >(FunctionPointer_AndroidAgent_RandRangeAsFloat));
|
||||
meta->RegisterMethod(3025058903u, BEHAVIAC_NEW CAgentMethod_1< behaviac::EBTStatus, int >(FunctionPointer_AndroidAgent_SearchEnemy));
|
||||
meta->RegisterMethod(2521019022u, BEHAVIAC_NEW CMethod_behaviac_Agent_VectorAdd());
|
||||
meta->RegisterMethod(2306090221u, BEHAVIAC_NEW CMethod_behaviac_Agent_VectorClear());
|
||||
meta->RegisterMethod(3483755530u, BEHAVIAC_NEW CMethod_behaviac_Agent_VectorContains());
|
||||
meta->RegisterMethod(505785840u, BEHAVIAC_NEW CMethod_behaviac_Agent_VectorLength());
|
||||
meta->RegisterMethod(502968959u, BEHAVIAC_NEW CMethod_behaviac_Agent_VectorRemove());
|
||||
|
||||
AgentMeta::Register<behaviac::Agent>("behaviac::Agent");
|
||||
AgentMeta::Register<BaseAgent>("BaseAgent");
|
||||
AgentMeta::Register<AndroidAgent>("AndroidAgent");
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
virtual bool unLoad()
|
||||
{
|
||||
AgentMeta::UnRegister<behaviac::Agent>("behaviac::Agent");
|
||||
AgentMeta::UnRegister<BaseAgent>("BaseAgent");
|
||||
AgentMeta::UnRegister<AndroidAgent>("AndroidAgent");
|
||||
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
static BehaviorLoaderImplement _behaviorLoaderImplement_;
|
||||
|
||||
static BehaviorLoaderImplement* _pBehaviorLoader_ = NULL;
|
||||
|
||||
void InitBehaviorLoader()
|
||||
{
|
||||
_pBehaviorLoader_ = BEHAVIAC_NEW BehaviorLoaderImplement();
|
||||
}
|
||||
|
||||
void DestroyBehaviorLoader()
|
||||
{
|
||||
if (_pBehaviorLoader_)
|
||||
{
|
||||
BEHAVIAC_DELETE _pBehaviorLoader_;
|
||||
_pBehaviorLoader_ = NULL;
|
||||
}
|
||||
}
|
||||
}
|
@ -1,42 +0,0 @@
|
||||
// ---------------------------------------------------------------------
|
||||
// THIS FILE IS AUTO-GENERATED BY BEHAVIAC DESIGNER, SO PLEASE DON'T MODIFY IT BY YOURSELF!
|
||||
// ---------------------------------------------------------------------
|
||||
|
||||
#ifndef _BEHAVIAC_AGENT_PROPERTIES_H_
|
||||
#define _BEHAVIAC_AGENT_PROPERTIES_H_
|
||||
|
||||
#include "behaviac_agent_headers.h"
|
||||
#include "behaviac_agent_member_visitor.h"
|
||||
|
||||
namespace behaviac
|
||||
{
|
||||
// ---------------------------------------------------------------------
|
||||
// Delegate methods
|
||||
// ---------------------------------------------------------------------
|
||||
|
||||
inline void FunctionPointer_behaviac_Agent_LogMessage(char* param0) { behaviac::Agent::LogMessage(param0); }
|
||||
inline void FunctionPointer_BaseAgent_AbortCoroutine(Agent* self, int co_id) { ((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_AbortCoroutine, void, int >(co_id); }
|
||||
inline int FunctionPointer_BaseAgent_DeltaTime(Agent* self, int time) { return (int)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_DeltaTime, int, int >(time); }
|
||||
inline int FunctionPointer_BaseAgent_GetTickCount(Agent* self) { return (int)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_GetTickCount, int >(); }
|
||||
inline void FunctionPointer_BaseAgent_LogMessage(char* param0) { BaseAgent::LogMessage(param0); }
|
||||
inline int FunctionPointer_BaseAgent_Rand(Agent* self) { return (int)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_Rand, int >(); }
|
||||
inline int FunctionPointer_BaseAgent_RandRange(Agent* self, int min_val, int max_val) { return (int)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_RandRange, int, int, int >(min_val, max_val); }
|
||||
inline float FunctionPointer_BaseAgent_RandRangeAsFloat(Agent* self, float min_val, float max_val) { return (float)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_RandRangeAsFloat, float, float, float >(min_val, max_val); }
|
||||
inline void FunctionPointer_AndroidAgent_AbortCoroutine(Agent* self, int co_id) { ((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_AbortCoroutine, void, int >(co_id); }
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_CoConnectBattleServer(Agent* self) { return (behaviac::EBTStatus)((AndroidAgent*)self)->_Execute_Method_<METHOD_TYPE_AndroidAgent_CoConnectBattleServer, behaviac::EBTStatus >(); }
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_CoIdle(Agent* self, int min_val, int max_val) { return (behaviac::EBTStatus)((AndroidAgent*)self)->_Execute_Method_<METHOD_TYPE_AndroidAgent_CoIdle, behaviac::EBTStatus, int, int >(min_val, max_val); }
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_CoJoin(Agent* self) { return (behaviac::EBTStatus)((AndroidAgent*)self)->_Execute_Method_<METHOD_TYPE_AndroidAgent_CoJoin, behaviac::EBTStatus >(); }
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_CoLogin(Agent* self) { return (behaviac::EBTStatus)((AndroidAgent*)self)->_Execute_Method_<METHOD_TYPE_AndroidAgent_CoLogin, behaviac::EBTStatus >(); }
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_CoUpdateGame(Agent* self) { return (behaviac::EBTStatus)((AndroidAgent*)self)->_Execute_Method_<METHOD_TYPE_AndroidAgent_CoUpdateGame, behaviac::EBTStatus >(); }
|
||||
inline int FunctionPointer_AndroidAgent_DeltaTime(Agent* self, int time) { return (int)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_DeltaTime, int, int >(time); }
|
||||
inline int FunctionPointer_AndroidAgent_GetTickCount(Agent* self) { return (int)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_GetTickCount, int >(); }
|
||||
inline bool FunctionPointer_AndroidAgent_IsGameOver(Agent* self) { return (bool)((AndroidAgent*)self)->_Execute_Method_<METHOD_TYPE_AndroidAgent_IsGameOver, bool >(); }
|
||||
inline bool FunctionPointer_AndroidAgent_IsLoginSuccess(Agent* self) { return (bool)((AndroidAgent*)self)->_Execute_Method_<METHOD_TYPE_AndroidAgent_IsLoginSuccess, bool >(); }
|
||||
inline void FunctionPointer_AndroidAgent_LogMessage(char* param0) { AndroidAgent::LogMessage(param0); }
|
||||
inline bool FunctionPointer_AndroidAgent_NetIsConnected(Agent* self) { return (bool)((AndroidAgent*)self)->_Execute_Method_<METHOD_TYPE_AndroidAgent_NetIsConnected, bool >(); }
|
||||
inline int FunctionPointer_AndroidAgent_Rand(Agent* self) { return (int)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_Rand, int >(); }
|
||||
inline int FunctionPointer_AndroidAgent_RandRange(Agent* self, int min_val, int max_val) { return (int)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_RandRange, int, int, int >(min_val, max_val); }
|
||||
inline float FunctionPointer_AndroidAgent_RandRangeAsFloat(Agent* self, float min_val, float max_val) { return (float)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_RandRangeAsFloat, float, float, float >(min_val, max_val); }
|
||||
inline behaviac::EBTStatus FunctionPointer_AndroidAgent_SearchEnemy(Agent* self, int range) { return (behaviac::EBTStatus)((AndroidAgent*)self)->_Execute_Method_<METHOD_TYPE_AndroidAgent_SearchEnemy, behaviac::EBTStatus, int >(range); }
|
||||
}
|
||||
#endif // _BEHAVIAC_AGENT_PROPERTIES_H_
|
@ -1,15 +0,0 @@
|
||||
// ---------------------------------------------------------------------
|
||||
// THIS FILE IS AUTO-GENERATED BY BEHAVIAC DESIGNER, SO PLEASE DON'T MODIFY IT BY YOURSELF!
|
||||
// ---------------------------------------------------------------------
|
||||
|
||||
#ifndef _BEHAVIAC_HEADERS_H_
|
||||
#define _BEHAVIAC_HEADERS_H_
|
||||
|
||||
#include "behaviac/behaviac.h"
|
||||
|
||||
// YOU SHOULD SET THE HEADER FILES OF YOUR GAME WHEN EXPORTING CPP FILES ON THE BEHAVIAC EDITOR:
|
||||
#include "base_agent.h"
|
||||
#include "android_agent.h"
|
||||
|
||||
|
||||
#endif // _BEHAVIAC_HEADERS_H_
|
@ -1,14 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<workspace name="robot2006" folder="behaviors" export="exported" language="cpp" userelativepath="false" version="3">
|
||||
<export>
|
||||
<cpp>
|
||||
<isexported>False</isexported>
|
||||
<exportfilecount>1</exportfilecount>
|
||||
<folder>../exported</folder>
|
||||
<includedfilenames>
|
||||
<includedfilename>base_agent.h</includedfilename>
|
||||
<includedfilename>android_agent.h</includedfilename>
|
||||
</includedfilenames>
|
||||
</cpp>
|
||||
</export>
|
||||
</workspace>
|
@ -1 +0,0 @@
|
||||
../gameserver/test_config
|
3
server/bin/start_instance.sh
Executable file
3
server/bin/start_instance.sh
Executable file
@ -0,0 +1,3 @@
|
||||
#!/bin/bash
|
||||
|
||||
nohup sh real_start_instance.sh 1 1 2>&1 &
|
@ -14,11 +14,11 @@ endif()
|
||||
set(LIB_DIR "ubuntu20.04_g++-9")
|
||||
message(LIB_DIR: ${LIB_DIR} )
|
||||
|
||||
set(CMAKE_CXX_FLAGS_RELEASE "-Wall -g -std=gnu++1z -DGAME_ID=${GAME_ID} -DNDEBUG -DDT_VIRTUAL_QUERYFILTER -DNEW_WEAPON_SYS=1 -DNEW_NUM=1 -DA8_PERFT=1")
|
||||
set(CMAKE_CXX_FLAGS_RELEASE "-O3 -Wall -g -std=gnu++1z -DGAME_ID=${GAME_ID} -DNDEBUG -DMAP3D -DDT_VIRTUAL_QUERYFILTER -DNEW_WEAPON_SYS=1 -DNEWBIE_ROOM=1")
|
||||
if (${ASAN})
|
||||
set(CMAKE_CXX_FLAGS_DEBUG "-Wall -g -std=gnu++1z -DGAME_ID=${GAME_ID} -DMYDEBUG -DDT_VIRTUAL_QUERYFILTER -DNEW_WEAPON_SYS=1 -fsanitize=address -DNEW_NUM=1 -fno-omit-frame-pointer -DA8_PERFT=1 -fsanitize-recover=address")
|
||||
set(CMAKE_CXX_FLAGS_DEBUG "-Wall -g -std=gnu++1z -DGAME_ID=${GAME_ID} -DDEBUG -DCXY -DSXY -DMAP3D -DDT_VIRTUAL_QUERYFILTER -DNEW_WEAPON_SYS=1 -DNEWBIE_ROOM=1 -fsanitize=address -fno-omit-frame-pointer")
|
||||
else()
|
||||
set(CMAKE_CXX_FLAGS_DEBUG "-Wall -g -std=gnu++1z -DGAME_ID=${GAME_ID} -DMYDEBUG -DDT_VIRTUAL_QUERYFILTER -DNEW_WEAPON_SYS=1 -DNEW_NUM=1 -DA8_PERFT=1 -fsanitize-recover=address")
|
||||
set(CMAKE_CXX_FLAGS_DEBUG "-Wall -g -std=gnu++1z -DGAME_ID=${GAME_ID} -DDEBUG -DCXY -DSXY -DMAP3D -DDT_VIRTUAL_QUERYFILTER -DNEW_WEAPON_SYS=1 -DNEWBIE_ROOM=1")
|
||||
endif()
|
||||
|
||||
include_directories(
|
||||
@ -81,18 +81,6 @@ aux_source_directory(buff
|
||||
SRC_LIST
|
||||
)
|
||||
|
||||
aux_source_directory(ai/base
|
||||
SRC_LIST
|
||||
)
|
||||
|
||||
aux_source_directory(ai/hero
|
||||
SRC_LIST
|
||||
)
|
||||
|
||||
aux_source_directory(ai/android
|
||||
SRC_LIST
|
||||
)
|
||||
|
||||
execute_process(
|
||||
COMMAND touch -a cs_proto.pb.h
|
||||
COMMAND touch -a cs_proto.pb.cc
|
||||
@ -110,7 +98,7 @@ aux_source_directory(.
|
||||
)
|
||||
|
||||
set(EXECUTABLE_OUTPUT_PATH
|
||||
${PROJECT_BINARY_DIR}/../bin/gameserver/bin
|
||||
${PROJECT_BINARY_DIR}/../bin
|
||||
)
|
||||
|
||||
add_executable(
|
||||
@ -144,10 +132,7 @@ target_link_libraries(
|
||||
if (CMAKE_BUILD_TYPE STREQUAL "Debug")
|
||||
target_link_libraries(
|
||||
gameserver${GAME_ID}
|
||||
behaviac_gcc_release
|
||||
#behaviac_gcc_debug
|
||||
boost_stacktrace_backtrace
|
||||
boost_stacktrace_addr2line
|
||||
behaviac_gcc_debug
|
||||
)
|
||||
else()
|
||||
target_link_libraries(
|
||||
|
@ -13,26 +13,6 @@
|
||||
#include "app.h"
|
||||
#include "jsondatamgr.h"
|
||||
#include "handlermgr.h"
|
||||
#include "playermgr.h"
|
||||
|
||||
class SocketDisconnectHandler : public std::enable_shared_from_this<SocketDisconnectHandler>
|
||||
{
|
||||
public:
|
||||
a8::CommonCbProc cb;
|
||||
int socket_handle = 0;
|
||||
list_head entry;
|
||||
long long add_tick = 0;
|
||||
std::shared_ptr<SocketDisconnectHandler> holder;
|
||||
|
||||
SocketDisconnectHandler()
|
||||
{
|
||||
}
|
||||
|
||||
~SocketDisconnectHandler()
|
||||
{
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
class GCClientSession: public a8::MixedSession
|
||||
{
|
||||
@ -44,22 +24,19 @@ public:
|
||||
is_activite = true;
|
||||
#endif
|
||||
bool warning = false;
|
||||
|
||||
while (buflen - offset >= sizeof(f8::WSProxyPackHead_C)) {
|
||||
f8::WSProxyPackHead_C* p = (f8::WSProxyPackHead_C*)&buf[offset];
|
||||
if (p->magic_code == f8::MAGIC_CODE) {
|
||||
if (buflen - offset < sizeof(f8::WSProxyPackHead_C) + p->packlen) {
|
||||
break;
|
||||
}
|
||||
f8::App::Instance()->AddSocketMsg
|
||||
(SF_GameGate,
|
||||
(socket_handle << 16) + p->socket_handle,
|
||||
p->ip_saddr,
|
||||
p->msgid,
|
||||
p->seqid,
|
||||
&buf[offset + sizeof(f8::WSProxyPackHead_C)],
|
||||
p->packlen,
|
||||
0);
|
||||
App::Instance()->AddSocketMsg(SF_GameGate,
|
||||
(socket_handle << 16) + p->socket_handle,
|
||||
p->ip_saddr,
|
||||
p->msgid,
|
||||
p->seqid,
|
||||
&buf[offset + sizeof(f8::WSProxyPackHead_C)],
|
||||
p->packlen);
|
||||
offset += sizeof(f8::WSProxyPackHead_C) + p->packlen;
|
||||
} else {
|
||||
warning = true;
|
||||
@ -69,15 +46,10 @@ public:
|
||||
}
|
||||
|
||||
if (warning) {
|
||||
f8::UdpLog::Instance()->Warning("收到client非法数据包 buflen:%d", {buflen});
|
||||
f8::UdpLog::Instance()->Warning("收到client非法数据包", {});
|
||||
}
|
||||
}
|
||||
|
||||
virtual void OnConnect() override
|
||||
{
|
||||
f8::UdpLog::Instance()->Warning("OnConnect socket_handle:%d", {socket_handle});
|
||||
}
|
||||
|
||||
virtual void OnRawHttpGet(const std::string& url, const std::string& querystr,
|
||||
std::string& response) override
|
||||
{
|
||||
@ -96,7 +68,6 @@ public:
|
||||
|
||||
virtual void OnDisConnect() override
|
||||
{
|
||||
f8::UdpLog::Instance()->Warning("OnDisConnect socket_handle:%d", {socket_handle});
|
||||
f8::MsgQueue::Instance()->PostMsg
|
||||
(IM_ClientSocketDisconnect,
|
||||
a8::Args
|
||||
@ -109,6 +80,12 @@ public:
|
||||
|
||||
};
|
||||
|
||||
static void CreateGameClientSocket(a8::TcpSession **p)
|
||||
{
|
||||
*p = new GCClientSession();
|
||||
(*p)->SetMaxPacketLen(1024 * 1024 * 10);
|
||||
}
|
||||
|
||||
static void GSListeneron_error(a8::TcpListener*, int type, int errorid)
|
||||
{
|
||||
f8::UdpLog::Instance()->Debug("GGListeneron_error %d %d", {type, errorid});
|
||||
@ -126,7 +103,7 @@ static void GSListeneron_error(a8::TcpListener*, int type, int errorid)
|
||||
void GGListener::Init()
|
||||
{
|
||||
tcp_listener_ = std::make_shared<a8::TcpListener>();
|
||||
tcp_listener_->RegisterSessionClass<GCClientSession>(1024 * 1024 * 10);
|
||||
tcp_listener_->on_create_client_socket = CreateGameClientSocket;
|
||||
tcp_listener_->on_error = GSListeneron_error;
|
||||
|
||||
tcp_listener_->bind_address = "0.0.0.0";
|
||||
@ -140,44 +117,10 @@ void GGListener::Init()
|
||||
int error_id = args.Get<int>(0);
|
||||
GGListener::Instance()->OnListenError(error_id);
|
||||
});
|
||||
f8::MsgQueue::Instance()->RegisterCallBack
|
||||
(
|
||||
IM_ClientSocketDisconnect,
|
||||
[this] (const a8::Args& args)
|
||||
{
|
||||
int gg_socket = args.Get<int>(0);
|
||||
PlayerMgr::Instance()->OnGateDisconnect(gg_socket);
|
||||
{
|
||||
std::vector<std::weak_ptr<SocketDisconnectHandler>> del_handlers;
|
||||
for (auto& pair : disconnect_listener_hash_) {
|
||||
unsigned short parent_socket_handle = (pair.first >> 16) & 0xFFFF;
|
||||
if (parent_socket_handle == gg_socket) {
|
||||
SocketDisconnectHandler *handle = nullptr, *tmp = nullptr;
|
||||
list_for_each_entry_safe(handle, tmp, &pair.second, entry) {
|
||||
del_handlers.push_back(handle->holder);
|
||||
handle->cb(a8::Args({pair.first}));
|
||||
}
|
||||
}
|
||||
}
|
||||
for (auto handler : del_handlers) {
|
||||
RemoveSocketDisconnectHandler(handler);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
void GGListener::UnInit()
|
||||
{
|
||||
std::vector<std::weak_ptr<SocketDisconnectHandler>> del_handlers;
|
||||
for (auto& pair : disconnect_listener_hash_) {
|
||||
SocketDisconnectHandler *handle = nullptr, *tmp = nullptr;
|
||||
list_for_each_entry_safe(handle, tmp, &pair.second, entry) {
|
||||
del_handlers.push_back(handle->holder);
|
||||
}
|
||||
}
|
||||
for (auto& handler : del_handlers) {
|
||||
RemoveSocketDisconnectHandler(handler);
|
||||
}
|
||||
tcp_listener_ = nullptr;
|
||||
}
|
||||
|
||||
@ -214,62 +157,6 @@ long long GGListener::GetSentBytesNum()
|
||||
void GGListener::OnListenError(int errorid)
|
||||
{
|
||||
a8::XPrintf("GGListeneron_error %d\n", {errorid});
|
||||
f8::App::Instance()->Terminate();
|
||||
App::Instance()->terminated = true;
|
||||
exit(1);
|
||||
}
|
||||
|
||||
bool GGListener::DebugNetMsg(int msg_id)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
std::weak_ptr<SocketDisconnectHandler> GGListener::AddSocketDisconnectListener(int socket_handle, a8::CommonCbProc cb)
|
||||
{
|
||||
auto itr = disconnect_listener_hash_.find(socket_handle);
|
||||
if (itr == disconnect_listener_hash_.end()) {
|
||||
disconnect_listener_hash_[socket_handle] = list_head();
|
||||
itr = disconnect_listener_hash_.find(socket_handle);
|
||||
INIT_LIST_HEAD(&itr->second);
|
||||
}
|
||||
auto p = std::make_shared<SocketDisconnectHandler>();
|
||||
p->socket_handle = socket_handle;
|
||||
p->cb = cb;
|
||||
p->add_tick = a8::XGetTickCount();
|
||||
list_add_tail(&p->entry, &itr->second);
|
||||
p->holder = p;
|
||||
return p;
|
||||
}
|
||||
|
||||
void GGListener::RemoveSocketDisconnectHandler(std::weak_ptr<SocketDisconnectHandler> handler)
|
||||
{
|
||||
if (!handler.expired()) {
|
||||
auto p = handler.lock();
|
||||
p->cb = nullptr;
|
||||
p->holder = nullptr;
|
||||
#if 1
|
||||
f8::UdpLog::Instance()->Warning("RemoveSocketDisconnectHandler socket_handle:%d time:%d",
|
||||
{
|
||||
p->socket_handle,
|
||||
a8::XGetTickCount() - p->add_tick
|
||||
});
|
||||
#endif
|
||||
list_del_init(&p->entry);
|
||||
}
|
||||
}
|
||||
|
||||
void GGListener::OnClientDisconnect(int socket_handle)
|
||||
{
|
||||
auto itr = disconnect_listener_hash_.find(socket_handle);
|
||||
if (itr != disconnect_listener_hash_.end()) {
|
||||
std::vector<std::weak_ptr<SocketDisconnectHandler>> del_handlers;
|
||||
SocketDisconnectHandler *handle = nullptr, *tmp = nullptr;
|
||||
list_for_each_entry_safe(handle, tmp, &itr->second, entry) {
|
||||
del_handlers.push_back(handle->holder);
|
||||
handle->cb(a8::Args({itr->first}));
|
||||
}
|
||||
for (auto handler : del_handlers) {
|
||||
RemoveSocketDisconnectHandler(handler);
|
||||
}
|
||||
}
|
||||
PlayerMgr::Instance()->OnClientDisconnect(socket_handle);
|
||||
}
|
||||
|
@ -4,12 +4,6 @@
|
||||
|
||||
#include <f8/types.h>
|
||||
#include <f8/protoutils.h>
|
||||
#include <f8/utils.h>
|
||||
|
||||
namespace ss
|
||||
{
|
||||
class SS_WSP_SocketDisconnect;
|
||||
}
|
||||
|
||||
//game client listener
|
||||
namespace a8
|
||||
@ -17,7 +11,6 @@ namespace a8
|
||||
class TcpListener;
|
||||
}
|
||||
|
||||
class SocketDisconnectHandler;
|
||||
class GGListener : public a8::Singleton<GGListener>
|
||||
{
|
||||
private:
|
||||
@ -45,15 +38,6 @@ public:
|
||||
void SendToClient(int sockhandle, unsigned int seqid, T& msg)
|
||||
{
|
||||
static int msgid = f8::Net_GetMessageId(msg);
|
||||
#ifdef MYDEBUG
|
||||
if (GGListener::Instance()->DebugNetMsg(msgid)) {
|
||||
a8::XPrintf("SendToClient msgid:%d %s\n",
|
||||
{
|
||||
msgid,
|
||||
f8::PbToJson(&msg)
|
||||
});
|
||||
}
|
||||
#endif
|
||||
int packet_size = f8::Net_SendProxyMsg(tcp_listener_.get(), sockhandle, seqid, 0, msgid, msg);
|
||||
if (packet_size > max_packet_size) {
|
||||
max_packet_size = packet_size;
|
||||
@ -71,16 +55,10 @@ public:
|
||||
long long GetSendNodeNum();
|
||||
long long GetSentNodeNum();
|
||||
long long GetSentBytesNum();
|
||||
std::weak_ptr<SocketDisconnectHandler> AddSocketDisconnectListener(int socket_handle, a8::CommonCbProc cb);
|
||||
void RemoveSocketDisconnectHandler(std::weak_ptr<SocketDisconnectHandler> handler);
|
||||
bool DebugNetMsg(int msg_id);
|
||||
void _SS_WSP_SocketDisconnect(f8::MsgHdr* hdr, const ss::SS_WSP_SocketDisconnect& msg);
|
||||
|
||||
private:
|
||||
void OnListenError(int errorid);
|
||||
void OnClientDisconnect(int socket_handle);
|
||||
|
||||
private:
|
||||
std::shared_ptr<a8::TcpListener> tcp_listener_;
|
||||
std::map<int, list_head> disconnect_listener_hash_;
|
||||
};
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -6,7 +6,6 @@ class Ability
|
||||
{
|
||||
public:
|
||||
Ability(CreatureWeakPtr owner);
|
||||
~Ability();
|
||||
|
||||
void IncImmuneTimes(int tag);
|
||||
void DecImmuneTimes(int tag);
|
||||
@ -16,34 +15,45 @@ class Ability
|
||||
void DecSwitch(int type);
|
||||
int GetSwitchTimes(int type);
|
||||
|
||||
AttrHandle AddAttr(int attr_id, float val);
|
||||
void RemoveAttr(AttrHandle handler);
|
||||
float GetAttr(int attr_id);
|
||||
bool HasAttr(int attr_id);
|
||||
AttrAbsHandle AddAttrAbs(int attr_id, float value);
|
||||
void RemoveAttrAbs(AttrAbsHandle handle);
|
||||
AttrRateHandle AddAttrRate(int attr_id, float value);
|
||||
void RemoveAttrRate(AttrRateHandle handle);
|
||||
float GetAttrAbs(int attr_id);
|
||||
float GetAttrRate(int attr_id);
|
||||
|
||||
AttrAdditionHandle AddAttrAddition(int attr_id, float rate);
|
||||
void RemoveAttrAddition(AttrAdditionHandle handler);
|
||||
AttrRuduceHandle AddAttrRuduce(int attr_id, float rate);
|
||||
void RemoveAttrRuduce(AttrRuduceHandle handler);
|
||||
float GetAttrAddition(int attr_id);
|
||||
float GetAttrRuduce(int attr_id);
|
||||
bool HasAddAttr(int attr_id);
|
||||
bool HasDecAttr(int attr_id);
|
||||
|
||||
void GMDelAttr(int attr_id, int idx);
|
||||
void GMClearAttr();
|
||||
AttrDirectHandle AddAttrDirect(int attr_id, float value);
|
||||
void RemoveAttrDirect(AttrDirectHandle handle);
|
||||
float GetAttrDirect(int attr_id);
|
||||
|
||||
void GMDelBaseAttr(int type, int attr_id, int idx);
|
||||
void GMClearBaseAttr(int type);
|
||||
void GMDelGrowAttr(int type, int attr_id, int idx);
|
||||
void GMClearGrowAttr(int type);
|
||||
std::vector<std::string> GMShowAttrs();
|
||||
void SetSource(AttrHandle handle, std::shared_ptr<std::function<std::string()>> cb);
|
||||
|
||||
private:
|
||||
void Clear();
|
||||
void RecalcAttrAbs(int attr_id);
|
||||
void RecalcAttrRate(int attr_id);
|
||||
void RecalcAttrAddition(int attr_id);
|
||||
void RecalcAttrRuduce(int attr_id);
|
||||
|
||||
void RecalcAttrDirect(int attr_id);
|
||||
private:
|
||||
CreatureWeakPtr owner_;
|
||||
std::array<std::tuple<float, list_head>, kHAT_End> attr_abs_ = {};
|
||||
std::array<std::tuple<float, list_head>, kHAT_End> attr_rate_ = {};
|
||||
std::array<std::tuple<float, list_head>, kHAT_End> attr_add_ = {};
|
||||
std::array<std::tuple<float, list_head>, kHAT_End> attr_dec_ = {};
|
||||
std::array<list_head, kHAT_End> attr_list_ = {};
|
||||
std::array<std::tuple<float, list_head>, kHVAT_End - kHVAT_Begin> vattr_add_ = {};
|
||||
std::array<std::tuple<float, list_head>, kHVAT_End - kHVAT_Begin> vattr_dec_ = {};
|
||||
std::array<list_head, kHVAT_End - kHVAT_Begin> vattr_list_ = {};
|
||||
std::array<std::tuple<float, list_head>, kHAT_End> attr_direct_ = {};
|
||||
std::array<int, kSwitchTimeEnd> switch_times_ = {};
|
||||
std::map<int, int> immune_tags_;
|
||||
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user