1
This commit is contained in:
parent
95887d8d20
commit
2c1c3e740d
@ -414,6 +414,53 @@ namespace behaviac
|
||||
}
|
||||
};
|
||||
|
||||
class CMethod_HeroAgent_RandomPoint : public CAgentMethodBase<glm::vec3>
|
||||
{
|
||||
IInstanceMember* _center;
|
||||
IInstanceMember* _range;
|
||||
|
||||
public:
|
||||
CMethod_HeroAgent_RandomPoint() : _center(0) , _range(0)
|
||||
{
|
||||
}
|
||||
|
||||
CMethod_HeroAgent_RandomPoint(CMethod_HeroAgent_RandomPoint &rhs) : CAgentMethodBase<glm::vec3>(rhs) , _center(0) , _range(0)
|
||||
{
|
||||
}
|
||||
|
||||
~CMethod_HeroAgent_RandomPoint()
|
||||
{
|
||||
BEHAVIAC_DELETE _center;
|
||||
BEHAVIAC_DELETE _range;
|
||||
}
|
||||
|
||||
virtual IInstanceMember* clone()
|
||||
{
|
||||
return BEHAVIAC_NEW CMethod_HeroAgent_RandomPoint(*this);
|
||||
}
|
||||
|
||||
virtual void load(const char* instance, behaviac::vector<behaviac::string>& paramStrs)
|
||||
{
|
||||
BEHAVIAC_ASSERT(paramStrs.size() == 2);
|
||||
|
||||
behaviac::StringUtils::StringCopySafe(kInstanceNameMax, _instance, instance);
|
||||
_center = AgentMeta::TParseProperty<glm::vec3 >(paramStrs[0].c_str());
|
||||
_range = AgentMeta::TParseProperty<float >(paramStrs[1].c_str());
|
||||
}
|
||||
|
||||
virtual void run(Agent* self)
|
||||
{
|
||||
BEHAVIAC_ASSERT(_center != NULL);
|
||||
BEHAVIAC_ASSERT(_range != NULL);
|
||||
|
||||
const glm::vec3& pValue_center = *(const glm::vec3*)_center->GetValue(self, behaviac::Meta::IsVector<const glm::vec3 >::Result, behaviac::GetClassTypeNumberId<const glm::vec3 >());
|
||||
float& pValue_range = *(float*)_range->GetValue(self, behaviac::Meta::IsVector<float >::Result, behaviac::GetClassTypeNumberId<float >());
|
||||
self = Agent::GetParentAgent(self, _instance);
|
||||
|
||||
_returnValue->value = ((HeroAgent*)self)->RandomPoint(pValue_center, pValue_range);
|
||||
}
|
||||
};
|
||||
|
||||
class CMethod_HeroAgent_SetAttackDir : public CAgentMethodVoidBase
|
||||
{
|
||||
IInstanceMember* _dir;
|
||||
@ -578,7 +625,7 @@ namespace behaviac
|
||||
|
||||
virtual bool load()
|
||||
{
|
||||
AgentMeta::SetTotalSignature(1707898316u);
|
||||
AgentMeta::SetTotalSignature(4063247840u);
|
||||
|
||||
AgentMeta* meta = NULL;
|
||||
BEHAVIAC_UNUSED_VAR(meta);
|
||||
@ -673,7 +720,7 @@ namespace behaviac
|
||||
meta->RegisterMethod(502968959u, BEHAVIAC_NEW CMethod_behaviac_Agent_VectorRemove());
|
||||
|
||||
// HeroAgent
|
||||
meta = BEHAVIAC_NEW AgentMeta(3697005899u);
|
||||
meta = BEHAVIAC_NEW AgentMeta(752687754u);
|
||||
AgentMeta::GetAgentMetas()[2270112014u] = meta;
|
||||
meta->RegisterMemberProperty(2706111800u, BEHAVIAC_NEW CMemberProperty< TargetAgent* >("current_target_agent", Set_HeroAgent_current_target_agent, Get_HeroAgent_current_target_agent));
|
||||
meta->RegisterMemberProperty(1530109714u, BEHAVIAC_NEW CMemberProperty< HeroAgent* >("master_agent", Set_HeroAgent_master_agent, Get_HeroAgent_master_agent));
|
||||
@ -746,7 +793,7 @@ namespace behaviac
|
||||
meta->RegisterMethod(2059940772u, BEHAVIAC_NEW CAgentMethodVoid_1<int>(FunctionPointer_HeroAgent_MobaMode) /* MobaMode */);
|
||||
meta->RegisterMethod(542998674u, BEHAVIAC_NEW CAgentMethodVoid(FunctionPointer_HeroAgent_OpenBulletTraceMode));
|
||||
meta->RegisterMethod(3156314303u, BEHAVIAC_NEW CAgentMethod< int >(FunctionPointer_HeroAgent_Rand));
|
||||
meta->RegisterMethod(657529872u, BEHAVIAC_NEW CAgentMethod_1< glm::vec3, float >(FunctionPointer_HeroAgent_RandomPoint));
|
||||
meta->RegisterMethod(657529872u, BEHAVIAC_NEW CMethod_HeroAgent_RandomPoint());
|
||||
meta->RegisterMethod(3929481793u, BEHAVIAC_NEW CAgentMethodVoid(FunctionPointer_HeroAgent_RandomShot) /* RandomShot */);
|
||||
meta->RegisterMethod(2913172428u, BEHAVIAC_NEW CAgentMethodVoid(FunctionPointer_HeroAgent_RandomWalk) /* RandomWalk */);
|
||||
meta->RegisterMethod(1110901686u, BEHAVIAC_NEW CAgentMethod_2< int, int, int >(FunctionPointer_HeroAgent_RandRange));
|
||||
@ -769,7 +816,7 @@ namespace behaviac
|
||||
meta->RegisterMethod(502968959u, BEHAVIAC_NEW CMethod_behaviac_Agent_VectorRemove());
|
||||
|
||||
// AndroidAgent
|
||||
meta = BEHAVIAC_NEW AgentMeta(2851357735u);
|
||||
meta = BEHAVIAC_NEW AgentMeta(1768786932u);
|
||||
AgentMeta::GetAgentMetas()[2475098143u] = meta;
|
||||
meta->RegisterMemberProperty(2706111800u, BEHAVIAC_NEW CMemberProperty< TargetAgent* >("current_target_agent", Set_HeroAgent_current_target_agent, Get_HeroAgent_current_target_agent));
|
||||
meta->RegisterMemberProperty(1530109714u, BEHAVIAC_NEW CMemberProperty< HeroAgent* >("master_agent", Set_HeroAgent_master_agent, Get_HeroAgent_master_agent));
|
||||
@ -843,7 +890,7 @@ namespace behaviac
|
||||
meta->RegisterMethod(2059940772u, BEHAVIAC_NEW CAgentMethodVoid_1<int>(FunctionPointer_AndroidAgent_MobaMode) /* MobaMode */);
|
||||
meta->RegisterMethod(542998674u, BEHAVIAC_NEW CAgentMethodVoid(FunctionPointer_AndroidAgent_OpenBulletTraceMode));
|
||||
meta->RegisterMethod(3156314303u, BEHAVIAC_NEW CAgentMethod< int >(FunctionPointer_AndroidAgent_Rand));
|
||||
meta->RegisterMethod(657529872u, BEHAVIAC_NEW CAgentMethod_1< glm::vec3, float >(FunctionPointer_AndroidAgent_RandomPoint));
|
||||
meta->RegisterMethod(657529872u, BEHAVIAC_NEW CMethod_HeroAgent_RandomPoint());
|
||||
meta->RegisterMethod(3929481793u, BEHAVIAC_NEW CAgentMethodVoid(FunctionPointer_AndroidAgent_RandomShot) /* RandomShot */);
|
||||
meta->RegisterMethod(2913172428u, BEHAVIAC_NEW CAgentMethodVoid(FunctionPointer_AndroidAgent_RandomWalk) /* RandomWalk */);
|
||||
meta->RegisterMethod(1110901686u, BEHAVIAC_NEW CAgentMethod_2< int, int, int >(FunctionPointer_AndroidAgent_RandRange));
|
||||
|
@ -173,7 +173,6 @@ namespace behaviac
|
||||
inline void FunctionPointer_HeroAgent_MobaMode(Agent* self, int hero_id) { } /* MobaMode */
|
||||
inline void FunctionPointer_HeroAgent_OpenBulletTraceMode(Agent* self) { ((HeroAgent*)self)->OpenBulletTraceMode(); }
|
||||
inline int FunctionPointer_HeroAgent_Rand(Agent* self) { return (int)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_Rand, int >(); }
|
||||
inline glm::vec3 FunctionPointer_HeroAgent_RandomPoint(Agent* self, float range) { return ((HeroAgent*)self)->RandomPoint(range); }
|
||||
inline void FunctionPointer_HeroAgent_RandomShot(Agent* self) { } /* RandomShot */
|
||||
inline void FunctionPointer_HeroAgent_RandomWalk(Agent* self) { } /* 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); }
|
||||
@ -229,7 +228,6 @@ namespace behaviac
|
||||
inline void FunctionPointer_AndroidAgent_MobaMode(Agent* self, int hero_id) { } /* MobaMode */
|
||||
inline void FunctionPointer_AndroidAgent_OpenBulletTraceMode(Agent* self) { ((AndroidAgent*)self)->OpenBulletTraceMode(); }
|
||||
inline int FunctionPointer_AndroidAgent_Rand(Agent* self) { return (int)((BaseAgent*)self)->_Execute_Method_<METHOD_TYPE_BaseAgent_Rand, int >(); }
|
||||
inline glm::vec3 FunctionPointer_AndroidAgent_RandomPoint(Agent* self, float range) { return ((AndroidAgent*)self)->RandomPoint(range); }
|
||||
inline void FunctionPointer_AndroidAgent_RandomShot(Agent* self) { } /* RandomShot */
|
||||
inline void FunctionPointer_AndroidAgent_RandomWalk(Agent* self) { } /* 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); }
|
||||
|
@ -144,12 +144,12 @@ void HeroAgent::SetAttackDir(const glm::vec3& dir)
|
||||
|
||||
void HeroAgent::ShotNormal(const glm::vec3& dir)
|
||||
{
|
||||
|
||||
abort();
|
||||
}
|
||||
|
||||
void HeroAgent::ShotTrace()
|
||||
{
|
||||
|
||||
abort();
|
||||
}
|
||||
|
||||
glm::vec3 HeroAgent::GetRandomDir()
|
||||
@ -169,7 +169,7 @@ glm::vec3 HeroAgent::GetTargetDir()
|
||||
return dir;
|
||||
}
|
||||
|
||||
glm::vec3 HeroAgent::RandomPoint(float range)
|
||||
glm::vec3 HeroAgent::RandomPoint(const glm::vec3& center, float range)
|
||||
{
|
||||
abort();
|
||||
}
|
||||
|
@ -43,7 +43,7 @@ public:
|
||||
void ShotTrace();
|
||||
glm::vec3 GetRandomDir();
|
||||
glm::vec3 GetTargetDir();
|
||||
glm::vec3 RandomPoint(float range);
|
||||
glm::vec3 RandomPoint(const glm::vec3& center, float range);
|
||||
float GetShotRange();
|
||||
void SetV(int id, int val);
|
||||
int GetV(int id);
|
||||
|
Loading…
x
Reference in New Issue
Block a user