コード例 #1
0
 public void ShowBuiltList(BuildingInformation buildingInfo)
 {
     this.buildings.TryGetValue(buildingInfo, out var buildings);
     if (buildings == null || buildings.Count < 1)
     {
         HideBuiltList();
         return;
     }
     while (buildings.Count > buildingAgents.Count)
     {
         BuildingAgent ba = ObjectPool.Get(UI.buildingCellPrefab, UI.buildingCellsParent).GetComponent <BuildingAgent>();
         ba.Hide();
         buildingAgents.Add(ba);
     }
     while (buildings.Count < buildingAgents.Count)
     {
         buildingAgents[buildingAgents.Count - 1].Clear(true);
         buildingAgents.RemoveAt(buildingAgents.Count - 1);
     }
     for (int i = 0; i < buildings.Count; i++)
     {
         buildingAgents[i].Init(buildings[i]);
         buildingAgents[i].Show();
     }
     UI.listWindow.alpha          = 1;
     UI.listWindow.blocksRaycasts = true;
 }
コード例 #2
0
ファイル: GameManager.cs プロジェクト: themaelstorm/LD2021
    public void PrepareBuilding(int buildingId)
    {
        GameObject go = GameObject.Instantiate(BuildingPrefabs[buildingId]);

        TempPlacementBuilding = go.GetComponent <BuildingAgent>();
        TempPlacementBuilding.transform.SetParent(this.transform);
        SelectedBuildingId = buildingId;
    }
コード例 #3
0
ファイル: WorkerAgent.cs プロジェクト: themaelstorm/LD2021
    void GoSatisfy(BuildingAgent building)
    {
        int sX = Mathf.FloorToInt(transform.position.x);
        int sY = -Mathf.FloorToInt(transform.position.y);

        int gX = Mathf.FloorToInt(building.transform.position.x);
        int gY = -Mathf.FloorToInt(building.transform.position.y);

        StopAllCoroutines();
        StartCoroutine(MoveForNeeds(GameManager.instance.StartPathFinding(sX, sY, gX, gY), building));
    }
コード例 #4
0
ファイル: GameManager.cs プロジェクト: themaelstorm/LD2021
    public void PlaceBuilding(int buildingId, int x, int y)
    {
        GameObject    go       = GameObject.Instantiate(BuildingPrefabs[buildingId]);
        BuildingAgent building = go.GetComponent <BuildingAgent>();

        building.transform.SetParent(this.transform);
        building.transform.localPosition = new Vector3(x, -y, 0f);
        building.BuildIt();
        BuildingList.Add(building);

        UI.UpdateStatsUI();
    }
コード例 #5
0
ファイル: WorkerAgent.cs プロジェクト: themaelstorm/LD2021
    IEnumerator MoveForNeeds(List <Vector3> path, BuildingAgent building)
    {
        foreach (Vector3 pos in path)
        {
            while (Vector3.Distance(transform.position, pos) > 0.1f)
            {
                transform.position = Vector3.MoveTowards(transform.position, pos, moveSpeed * Time.deltaTime);
                yield return(null);
            }
        }

        if (building.Users.Count < building.Value)
        {
            building.Use(this);
        }
        else
        {
            Status = WorkerStates.Needy;
        }
    }
コード例 #6
0
ファイル: WorkerAgent.cs プロジェクト: themaelstorm/LD2021
 void SatisfyNeeds()
 {
     if (hunger <= hungerThreshold)
     {
         Debug.Log("hungru to go diner");
         BuildingAgent building = GameManager.instance.GetNearestDiner(this.transform.position);
         if (building != null)
         {
             isReadyToWork = false;
             Status        = WorkerStates.Working;
             GoSatisfy(building);
         }
     }
     else if (energy <= energyThreshold)
     {
         Debug.Log("energy low go to bed");
         BuildingAgent building = GameManager.instance.GetNearestBed(this.transform.position);
         if (building != null)
         {
             isReadyToWork = false;
             Status        = WorkerStates.Working;
             GoSatisfy(building);
         }
     }
     else if (fun <= funThreshold)
     {
         Debug.Log("bored go to pub");
         BuildingAgent building = GameManager.instance.GetNearestPub(this.transform.position);
         if (building != null)
         {
             isReadyToWork = false;
             Status        = WorkerStates.Working;
             GoSatisfy(building);
         }
     }
     else
     {
         Status        = WorkerStates.Working;
         isReadyToWork = true;
     }
 }
コード例 #7
0
ファイル: GameManager.cs プロジェクト: themaelstorm/LD2021
    public BuildingAgent GetNearestPub(Vector3 pos)
    {
        BuildingAgent agent = null;
        float         dist  = 99999f;

        //Vector3 pos = new Vector3(x, y, 0f);

        foreach (BuildingAgent building in BuildingList)
        {
            if (building.BuildingType == (int)BuildingNames.Pub)
            {
                if (Mathf.Abs(Vector3.Distance(building.transform.position, pos)) < dist)
                {
                    if (building.Users.Count < building.Value)
                    {
                        dist  = Mathf.Abs(Vector3.Distance(building.transform.position, pos));
                        agent = building;
                    }
                }
            }
        }

        return(agent);
    }
コード例 #8
0
ファイル: GameManager.cs プロジェクト: themaelstorm/LD2021
 public void CleanTempBuilding()
 {
     Destroy(TempPlacementBuilding.gameObject);
     TempPlacementBuilding = null;
     SelectedBuildingId    = -1;
 }
コード例 #9
0
 public void DestroyBuilding(Building building)
 {
     if (building && building.gameObject)
     {
         BuildingAgent ba = buildingAgents.Find(x => x.MBuilding == building);
         if (ba)
         {
             ba.Hide();
             ba.Clear();
             buildingAgents.Remove(ba);
             this.buildings.TryGetValue(building.MBuildingInfo, out var buildings);
             if (buildings != null)
             {
                 buildings.Remove(building);
                 if (buildings.Count < 1)
                 {
                     this.buildings.Remove(building.MBuildingInfo);
                 }
             }
         }
         if (buildingAgents.Count < 1 && currentInfo == building.MBuildingInfo && UI.listWindow.alpha > 0)
         {
             HideBuiltList();
         }
         if (AStarManager.Instance)
         {
             var colliders = building.GetComponentsInChildren <Collider>();
             if (colliders.Length > 0)
             {
                 Vector3 min = colliders[0].bounds.min;
                 Vector3 max = colliders[0].bounds.max;
                 for (int i = 1; i < colliders.Length; i++)
                 {
                     if (ZetanUtility.Vector3LessThan(colliders[i].bounds.min, min))
                     {
                         min = colliders[i].bounds.min;
                     }
                     if (ZetanUtility.Vector3LargeThan(colliders[i].bounds.max, max))
                     {
                         max = colliders[i].bounds.max;
                     }
                 }
                 AStarManager.Instance.UpdateGraphs(min, max);
             }
             else
             {
                 var collider2Ds = building.GetComponentsInChildren <Collider2D>();
                 if (collider2Ds.Length > 0)
                 {
                     Vector3 min = collider2Ds[0].bounds.min;
                     Vector3 max = collider2Ds[0].bounds.max;
                     for (int i = 1; i < collider2Ds.Length; i++)
                     {
                         if (ZetanUtility.Vector3LessThan(collider2Ds[i].bounds.min, min))
                         {
                             min = collider2Ds[i].bounds.min;
                         }
                         if (ZetanUtility.Vector3LargeThan(collider2Ds[i].bounds.max, max))
                         {
                             max = collider2Ds[i].bounds.max;
                         }
                     }
                     AStarManager.Instance.UpdateGraphs(min, max);
                 }
             }
         }
         building.Destroy();
     }
     CannotManage();
 }
コード例 #10
0
        public override bool Load()
        {
            AgentMeta.TotalSignature = 2623873306;

            AgentMeta meta;

            // behaviac.Agent
            meta = new AgentMeta(24743406);
            AgentMeta._AgentMetas_[2436498804] = meta;
            meta.RegisterMethod(1045109914, new CAgentStaticMethodVoid <string>(delegate(string param0) { behaviac.Agent.LogMessage(param0); }));
            meta.RegisterMethod(2521019022, new CMethod_behaviac_Agent_VectorAdd());
            meta.RegisterMethod(2306090221, new CMethod_behaviac_Agent_VectorClear());
            meta.RegisterMethod(3483755530, new CMethod_behaviac_Agent_VectorContains());
            meta.RegisterMethod(505785840, new CMethod_behaviac_Agent_VectorLength());
            meta.RegisterMethod(502968959, new CMethod_behaviac_Agent_VectorRemove());

            // FightAgent
            meta = new AgentMeta(2912840436);
            AgentMeta._AgentMetas_[2927482685] = meta;
            meta.RegisterMemberProperty(1074892373, new CMemberProperty <bool>("couldAttack", delegate(Agent self, bool value) { ((FightAgent)self)._set_couldAttack(value); }, delegate(Agent self) { return(((FightAgent)self)._get_couldAttack()); }));
            meta.RegisterMemberProperty(1823529647, new CMemberProperty <bool>("couldMove", delegate(Agent self, bool value) { ((FightAgent)self)._set_couldMove(value); }, delegate(Agent self) { return(((FightAgent)self)._get_couldMove()); }));
            meta.RegisterMemberProperty(4050060769, new CMemberProperty <bool>("isDead", delegate(Agent self, bool value) { ((FightAgent)self)._set_isDead(value); }, delegate(Agent self) { return(((FightAgent)self)._get_isDead()); }));
            meta.RegisterMemberProperty(2799042603, new CMemberProperty <behaviac.EBTStatus>("LifeStatus", delegate(Agent self, behaviac.EBTStatus value) { ((FightAgent)self)._set_LifeStatus(value); }, delegate(Agent self) { return(((FightAgent)self)._get_LifeStatus()); }));
            meta.RegisterMemberProperty(4005016119, new CMemberProperty <bVector3>("position", delegate(Agent self, bVector3 value) { ((FightAgent)self)._set_position(value); }, delegate(Agent self) { return(((FightAgent)self)._get_position()); }));
            meta.RegisterMethod(1054489725, new CAgentMethod <bool>(delegate(Agent self) { return(((FightAgent)self).IsDead()); }));
            meta.RegisterMethod(726511973, new CAgentMethod <bool>(delegate(Agent self) { return(((FightAgent)self).IsLowHp()); }));
            meta.RegisterMethod(1045109914, new CAgentStaticMethodVoid <string>(delegate(string param0) { FightAgent.LogMessage(param0); }));
            meta.RegisterMethod(181959349, new CAgentMethodVoid(delegate(Agent self) { ((FightAgent)self).PlayDead(); }));
            meta.RegisterMethod(2521019022, new CMethod_behaviac_Agent_VectorAdd());
            meta.RegisterMethod(2306090221, new CMethod_behaviac_Agent_VectorClear());
            meta.RegisterMethod(3483755530, new CMethod_behaviac_Agent_VectorContains());
            meta.RegisterMethod(505785840, new CMethod_behaviac_Agent_VectorLength());
            meta.RegisterMethod(502968959, new CMethod_behaviac_Agent_VectorRemove());

            // BuildingAgent
            meta = new AgentMeta(744566553);
            AgentMeta._AgentMetas_[4051970114] = meta;
            meta.RegisterMemberProperty(1074892373, new CMemberProperty <bool>("couldAttack", delegate(Agent self, bool value) { ((BuildingAgent)self)._set_couldAttack(value); }, delegate(Agent self) { return(((BuildingAgent)self)._get_couldAttack()); }));
            meta.RegisterMemberProperty(1823529647, new CMemberProperty <bool>("couldMove", delegate(Agent self, bool value) { ((BuildingAgent)self)._set_couldMove(value); }, delegate(Agent self) { return(((BuildingAgent)self)._get_couldMove()); }));
            meta.RegisterMemberProperty(4050060769, new CMemberProperty <bool>("isDead", delegate(Agent self, bool value) { ((BuildingAgent)self)._set_isDead(value); }, delegate(Agent self) { return(((BuildingAgent)self)._get_isDead()); }));
            meta.RegisterMemberProperty(2799042603, new CMemberProperty <behaviac.EBTStatus>("LifeStatus", delegate(Agent self, behaviac.EBTStatus value) { ((BuildingAgent)self)._set_LifeStatus(value); }, delegate(Agent self) { return(((BuildingAgent)self)._get_LifeStatus()); }));
            meta.RegisterMemberProperty(4005016119, new CMemberProperty <bVector3>("position", delegate(Agent self, bVector3 value) { ((BuildingAgent)self)._set_position(value); }, delegate(Agent self) { return(((BuildingAgent)self)._get_position()); }));
            meta.RegisterMethod(1054489725, new CAgentMethod <bool>(delegate(Agent self) { return(((BuildingAgent)self).IsDead()); }));
            meta.RegisterMethod(726511973, new CAgentMethod <bool>(delegate(Agent self) { return(((BuildingAgent)self).IsLowHp()); }));
            meta.RegisterMethod(1045109914, new CAgentStaticMethodVoid <string>(delegate(string param0) { BuildingAgent.LogMessage(param0); }));
            meta.RegisterMethod(181959349, new CAgentMethodVoid(delegate(Agent self) { ((BuildingAgent)self).PlayDead(); }));
            meta.RegisterMethod(2521019022, new CMethod_behaviac_Agent_VectorAdd());
            meta.RegisterMethod(2306090221, new CMethod_behaviac_Agent_VectorClear());
            meta.RegisterMethod(3483755530, new CMethod_behaviac_Agent_VectorContains());
            meta.RegisterMethod(505785840, new CMethod_behaviac_Agent_VectorLength());
            meta.RegisterMethod(502968959, new CMethod_behaviac_Agent_VectorRemove());

            // DefenseTowerAgent
            meta = new AgentMeta(2978994066);
            AgentMeta._AgentMetas_[1520164275] = meta;
            meta.RegisterMemberProperty(1074892373, new CMemberProperty <bool>("couldAttack", delegate(Agent self, bool value) { ((DefenseTowerAgent)self)._set_couldAttack(value); }, delegate(Agent self) { return(((DefenseTowerAgent)self)._get_couldAttack()); }));
            meta.RegisterMemberProperty(1823529647, new CMemberProperty <bool>("couldMove", delegate(Agent self, bool value) { ((DefenseTowerAgent)self)._set_couldMove(value); }, delegate(Agent self) { return(((DefenseTowerAgent)self)._get_couldMove()); }));
            meta.RegisterMemberProperty(1067866206, new CMemberProperty <FightAgent>("curTarget", delegate(Agent self, FightAgent value) { ((DefenseTowerAgent)self)._set_curTarget(value); }, delegate(Agent self) { return(((DefenseTowerAgent)self)._get_curTarget()); }));
            meta.RegisterMemberProperty(4050060769, new CMemberProperty <bool>("isDead", delegate(Agent self, bool value) { ((DefenseTowerAgent)self)._set_isDead(value); }, delegate(Agent self) { return(((DefenseTowerAgent)self)._get_isDead()); }));
            meta.RegisterMemberProperty(2799042603, new CMemberProperty <behaviac.EBTStatus>("LifeStatus", delegate(Agent self, behaviac.EBTStatus value) { ((DefenseTowerAgent)self)._set_LifeStatus(value); }, delegate(Agent self) { return(((DefenseTowerAgent)self)._get_LifeStatus()); }));
            meta.RegisterMemberProperty(4005016119, new CMemberProperty <bVector3>("position", delegate(Agent self, bVector3 value) { ((DefenseTowerAgent)self)._set_position(value); }, delegate(Agent self) { return(((DefenseTowerAgent)self)._get_position()); }));
            meta.RegisterMethod(3575241253, new CAgentMethod <behaviac.EBTStatus>(delegate(Agent self) { return(((DefenseTowerAgent)self).AttackCurEnemy()); }));
            meta.RegisterMethod(2972488885, new CAgentMethod <FightAgent>(delegate(Agent self) { return(((DefenseTowerAgent)self).FindEnemyInRange()); }));
            meta.RegisterMethod(1054489725, new CAgentMethod <bool>(delegate(Agent self) { return(((DefenseTowerAgent)self).IsDead()); }));
            meta.RegisterMethod(726511973, new CAgentMethod <bool>(delegate(Agent self) { return(((DefenseTowerAgent)self).IsLowHp()); }));
            meta.RegisterMethod(1045109914, new CAgentStaticMethodVoid <string>(delegate(string param0) { DefenseTowerAgent.LogMessage(param0); }));
            meta.RegisterMethod(181959349, new CAgentMethodVoid(delegate(Agent self) { ((DefenseTowerAgent)self).PlayDead(); }));
            meta.RegisterMethod(2521019022, new CMethod_behaviac_Agent_VectorAdd());
            meta.RegisterMethod(2306090221, new CMethod_behaviac_Agent_VectorClear());
            meta.RegisterMethod(3483755530, new CMethod_behaviac_Agent_VectorContains());
            meta.RegisterMethod(505785840, new CMethod_behaviac_Agent_VectorLength());
            meta.RegisterMethod(502968959, new CMethod_behaviac_Agent_VectorRemove());

            // SoilderAgent
            meta = new AgentMeta(549697942);
            AgentMeta._AgentMetas_[4286480859] = meta;
            meta.RegisterMemberProperty(1074892373, new CMemberProperty <bool>("couldAttack", delegate(Agent self, bool value) { ((SoilderAgent)self)._set_couldAttack(value); }, delegate(Agent self) { return(((SoilderAgent)self)._get_couldAttack()); }));
            meta.RegisterMemberProperty(1823529647, new CMemberProperty <bool>("couldMove", delegate(Agent self, bool value) { ((SoilderAgent)self)._set_couldMove(value); }, delegate(Agent self) { return(((SoilderAgent)self)._get_couldMove()); }));
            meta.RegisterMemberProperty(593809957, new CMemberProperty <ActionStatus>("curActionStatus", delegate(Agent self, ActionStatus value) { ((SoilderAgent)self)._set_curActionStatus(value); }, delegate(Agent self) { return(((SoilderAgent)self)._get_curActionStatus()); }));
            meta.RegisterMemberProperty(2679270583, new CMemberProperty <FightAgent>("curEnemyTarget", delegate(Agent self, FightAgent value) { ((SoilderAgent)self)._set_curEnemyTarget(value); }, delegate(Agent self) { return(((SoilderAgent)self)._get_curEnemyTarget()); }));
            meta.RegisterMemberProperty(1428937743, new CMemberProperty <Situation>("curSituation", delegate(Agent self, Situation value) { ((SoilderAgent)self)._set_curSituation(value); }, delegate(Agent self) { return(((SoilderAgent)self)._get_curSituation()); }));
            meta.RegisterMemberProperty(1608869297, new CMemberProperty <bVector3>("curTacticAtkPos", delegate(Agent self, bVector3 value) { ((SoilderAgent)self)._set_curTacticAtkPos(value); }, delegate(Agent self) { return(((SoilderAgent)self)._get_curTacticAtkPos()); }));
            meta.RegisterMemberProperty(4009490894, new CMemberProperty <bVector3>("homePoint", delegate(Agent self, bVector3 value) { ((SoilderAgent)self)._set_homePoint(value); }, delegate(Agent self) { return(((SoilderAgent)self)._get_homePoint()); }));
            meta.RegisterMemberProperty(4050060769, new CMemberProperty <bool>("isDead", delegate(Agent self, bool value) { ((SoilderAgent)self)._set_isDead(value); }, delegate(Agent self) { return(((SoilderAgent)self)._get_isDead()); }));
            meta.RegisterMemberProperty(2799042603, new CMemberProperty <behaviac.EBTStatus>("LifeStatus", delegate(Agent self, behaviac.EBTStatus value) { ((SoilderAgent)self)._set_LifeStatus(value); }, delegate(Agent self) { return(((SoilderAgent)self)._get_LifeStatus()); }));
            meta.RegisterMemberProperty(4005016119, new CMemberProperty <bVector3>("position", delegate(Agent self, bVector3 value) { ((SoilderAgent)self)._set_position(value); }, delegate(Agent self) { return(((SoilderAgent)self)._get_position()); }));
            meta.RegisterMethod(3127879122, new CMethod_SoilderAgent_Attack());
            meta.RegisterMethod(1629954219, new CAgentMethodVoid <bVector3>(delegate(Agent self, bVector3 task_pos) { }) /* AttackToPos_task */);
            meta.RegisterMethod(783803240, new CAgentMethodVoid <FightAgent>(delegate(Agent self, FightAgent task_chaseTarget) { }) /* ChaseAndAttack_task */);
            meta.RegisterMethod(2716570482, new CAgentMethod <FightAgent>(delegate(Agent self) { return(((SoilderAgent)self).GetNearestEnemy()); }));
            meta.RegisterMethod(2253404977, new CAgentMethod <behaviac.EBTStatus>(delegate(Agent self) { return(((SoilderAgent)self).Idle()); }));
            meta.RegisterMethod(1054489725, new CAgentMethod <bool>(delegate(Agent self) { return(((SoilderAgent)self).IsDead()); }));
            meta.RegisterMethod(726511973, new CAgentMethod <bool>(delegate(Agent self) { return(((SoilderAgent)self).IsLowHp()); }));
            meta.RegisterMethod(1045109914, new CAgentStaticMethodVoid <string>(delegate(string param0) { SoilderAgent.LogMessage(param0); }));
            meta.RegisterMethod(2754924504, new CMethod_SoilderAgent_MoveTo());
            meta.RegisterMethod(1793645156, new CMethod_SoilderAgent_MoveToTarget());
            meta.RegisterMethod(181959349, new CAgentMethodVoid(delegate(Agent self) { ((SoilderAgent)self).PlayDead(); }));
            meta.RegisterMethod(3970781763, new CMethod_SoilderAgent_TestEnemyInAtkRange());
            meta.RegisterMethod(3756619215, new CAgentMethod <bool>(delegate(Agent self) { return(((SoilderAgent)self).TestHasAtkToPosCommand()); }));
            meta.RegisterMethod(700275576, new CAgentMethod <bool>(delegate(Agent self) { return(((SoilderAgent)self).TestHasEnemyInEyeRange()); }));
            meta.RegisterMethod(2521019022, new CMethod_behaviac_Agent_VectorAdd());
            meta.RegisterMethod(2306090221, new CMethod_behaviac_Agent_VectorClear());
            meta.RegisterMethod(3483755530, new CMethod_behaviac_Agent_VectorContains());
            meta.RegisterMethod(505785840, new CMethod_behaviac_Agent_VectorLength());
            meta.RegisterMethod(502968959, new CMethod_behaviac_Agent_VectorRemove());

            // HeroAgent
            meta = new AgentMeta(3064835767);
            AgentMeta._AgentMetas_[2270112014] = meta;
            meta.RegisterMemberProperty(1074892373, new CMemberProperty <bool>("couldAttack", delegate(Agent self, bool value) { ((HeroAgent)self)._set_couldAttack(value); }, delegate(Agent self) { return(((HeroAgent)self)._get_couldAttack()); }));
            meta.RegisterMemberProperty(1823529647, new CMemberProperty <bool>("couldMove", delegate(Agent self, bool value) { ((HeroAgent)self)._set_couldMove(value); }, delegate(Agent self) { return(((HeroAgent)self)._get_couldMove()); }));
            meta.RegisterMemberProperty(593809957, new CMemberProperty <ActionStatus>("curActionStatus", delegate(Agent self, ActionStatus value) { ((HeroAgent)self)._set_curActionStatus(value); }, delegate(Agent self) { return(((HeroAgent)self)._get_curActionStatus()); }));
            meta.RegisterMemberProperty(2679270583, new CMemberProperty <FightAgent>("curEnemyTarget", delegate(Agent self, FightAgent value) { ((HeroAgent)self)._set_curEnemyTarget(value); }, delegate(Agent self) { return(((HeroAgent)self)._get_curEnemyTarget()); }));
            meta.RegisterMemberProperty(1428937743, new CMemberProperty <Situation>("curSituation", delegate(Agent self, Situation value) { ((HeroAgent)self)._set_curSituation(value); }, delegate(Agent self) { return(((HeroAgent)self)._get_curSituation()); }));
            meta.RegisterMemberProperty(1608869297, new CMemberProperty <bVector3>("curTacticAtkPos", delegate(Agent self, bVector3 value) { ((HeroAgent)self)._set_curTacticAtkPos(value); }, delegate(Agent self) { return(((HeroAgent)self)._get_curTacticAtkPos()); }));
            meta.RegisterMemberProperty(3679778246, new CMemberProperty <bVector3>("fleePos", delegate(Agent self, bVector3 value) { ((HeroAgent)self)._set_fleePos(value); }, delegate(Agent self) { return(((HeroAgent)self)._get_fleePos()); }));
            meta.RegisterMemberProperty(4009490894, new CMemberProperty <bVector3>("homePoint", delegate(Agent self, bVector3 value) { ((HeroAgent)self)._set_homePoint(value); }, delegate(Agent self) { return(((HeroAgent)self)._get_homePoint()); }));
            meta.RegisterMemberProperty(4050060769, new CMemberProperty <bool>("isDead", delegate(Agent self, bool value) { ((HeroAgent)self)._set_isDead(value); }, delegate(Agent self) { return(((HeroAgent)self)._get_isDead()); }));
            meta.RegisterMemberProperty(2799042603, new CMemberProperty <behaviac.EBTStatus>("LifeStatus", delegate(Agent self, behaviac.EBTStatus value) { ((HeroAgent)self)._set_LifeStatus(value); }, delegate(Agent self) { return(((HeroAgent)self)._get_LifeStatus()); }));
            meta.RegisterMemberProperty(4005016119, new CMemberProperty <bVector3>("position", delegate(Agent self, bVector3 value) { ((HeroAgent)self)._set_position(value); }, delegate(Agent self) { return(((HeroAgent)self)._get_position()); }));
            meta.RegisterMemberProperty(1022875399, new CMemberProperty <bVector3>("retreatPos", delegate(Agent self, bVector3 value) { ((HeroAgent)self)._set_retreatPos(value); }, delegate(Agent self) { return(((HeroAgent)self)._get_retreatPos()); }));
            meta.RegisterMethod(2674554263, new CAgentMethod <bool>(delegate(Agent self) { return(((HeroAgent)self).ArrivedRetreatPos()); }));
            meta.RegisterMethod(3127879122, new CMethod_SoilderAgent_Attack());
            meta.RegisterMethod(1629954219, new CAgentMethodVoid <bVector3>(delegate(Agent self, bVector3 task_pos) { }) /* AttackToPos_task */);
            meta.RegisterMethod(3981281435, new CAgentMethod <behaviac.EBTStatus>(delegate(Agent self) { return(((HeroAgent)self).CallFriendHeroToHealMe()); }));
            meta.RegisterMethod(783803240, new CAgentMethodVoid <FightAgent>(delegate(Agent self, FightAgent task_chaseTarget) { }) /* ChaseAndAttack_task */);
            meta.RegisterMethod(1105002646, new CAgentMethod <behaviac.EBTStatus>(delegate(Agent self) { return(((HeroAgent)self).CombooKill()); }));
            meta.RegisterMethod(143620965, new CAgentMethodVoid <bVector3>(delegate(Agent self, bVector3 task_cooperatePos) { }) /* Cooperate_task */);
            meta.RegisterMethod(592004963, new CAgentMethod <bool>(delegate(Agent self) { return(((HeroAgent)self).CouldBeSecKilled()); }));
            meta.RegisterMethod(1497521703, new CAgentMethod <bool>(delegate(Agent self) { return(((HeroAgent)self).CouldUseQuickHeal()); }));
            meta.RegisterMethod(2027654893, new CAgentMethod <bool>(delegate(Agent self) { return(((HeroAgent)self).CouldUseSlowHeal()); }));
            meta.RegisterMethod(1787278696, new CAgentMethod <bVector3>(delegate(Agent self) { return(((HeroAgent)self).GetCurReseanableTacticsTarget()); }));
            meta.RegisterMethod(749487724, new CAgentMethod <float>(delegate(Agent self) { return(((HeroAgent)self).GetDistanceFromHome()); }));
            meta.RegisterMethod(1218032045, new CAgentMethod <int>(delegate(Agent self) { return(((HeroAgent)self).GetEnemyCountInRange()); }));
            meta.RegisterMethod(2743497259, new CAgentMethod <int>(delegate(Agent self) { return(((HeroAgent)self).GetEnemyHeroCountInRange()); }));
            meta.RegisterMethod(3513837595, new CAgentMethod <int>(delegate(Agent self) { return(((HeroAgent)self).GetFirendHeroCountInRange()); }));
            meta.RegisterMethod(3164054455, new CAgentMethod <int>(delegate(Agent self) { return(((HeroAgent)self).GetFriendCountInRange()); }));
            meta.RegisterMethod(2716570482, new CAgentMethod <FightAgent>(delegate(Agent self) { return(((HeroAgent)self).GetNearestEnemy()); }));
            meta.RegisterMethod(1237488994, new CAgentMethod <FightAgent>(delegate(Agent self) { return(((HeroAgent)self).GetWeakestEnemy()); }));
            meta.RegisterMethod(2569706439, new CAgentMethod <FightAgent>(delegate(Agent self) { return(((HeroAgent)self).GetWeakHeroInRange()); }));
            meta.RegisterMethod(2547311622, new CAgentMethod <bool>(delegate(Agent self) { return(((HeroAgent)self).HasCombooKill()); }));
            meta.RegisterMethod(1496859174, new CAgentMethod <bool>(delegate(Agent self) { return(((HeroAgent)self).HasEnemyInEyeRange()); }));
            meta.RegisterMethod(996104106, new CAgentMethod <bool>(delegate(Agent self) { return(((HeroAgent)self).HasReturnHomeSkill()); }));
            meta.RegisterMethod(1519838893, new CAgentMethod <bool>(delegate(Agent self) { return(((HeroAgent)self).HasTreasureInEyeRange()); }));
            meta.RegisterMethod(2253404977, new CAgentMethod <behaviac.EBTStatus>(delegate(Agent self) { return(((HeroAgent)self).Idle()); }));
            meta.RegisterMethod(1054489725, new CAgentMethod <bool>(delegate(Agent self) { return(((HeroAgent)self).IsDead()); }));
            meta.RegisterMethod(2432849062, new CAgentMethod <bool>(delegate(Agent self) { return(((HeroAgent)self).IsEnemyChasing()); }));
            meta.RegisterMethod(1778583587, new CMethod_HeroAgent_IsInLootRange());
            meta.RegisterMethod(726511973, new CAgentMethod <bool>(delegate(Agent self) { return(((HeroAgent)self).IsLowHp()); }));
            meta.RegisterMethod(1045109914, new CAgentStaticMethodVoid <string>(delegate(string param0) { HeroAgent.LogMessage(param0); }));
            meta.RegisterMethod(3468933412, new CMethod_HeroAgent_LootTreasure());
            meta.RegisterMethod(762819242, new CAgentMethodVoid <FightAgent>(delegate(Agent self, FightAgent task_treasure) { }) /* LootTreasure_task */);
            meta.RegisterMethod(2754924504, new CMethod_SoilderAgent_MoveTo());
            meta.RegisterMethod(1793645156, new CMethod_SoilderAgent_MoveToTarget());
            meta.RegisterMethod(181959349, new CAgentMethodVoid(delegate(Agent self) { ((HeroAgent)self).PlayDead(); }));
            meta.RegisterMethod(2057619381, new CAgentMethod <behaviac.EBTStatus>(delegate(Agent self) { return(((HeroAgent)self).QuickHeal()); }));
            meta.RegisterMethod(4056496344, new CMethod_HeroAgent_SetRetreatPos());
            meta.RegisterMethod(563297901, new CAgentMethod <behaviac.EBTStatus>(delegate(Agent self) { return(((HeroAgent)self).SkillReturnHome()); }));
            meta.RegisterMethod(420198528, new CAgentMethod <behaviac.EBTStatus>(delegate(Agent self) { return(((HeroAgent)self).SlowHealSelf()); }));
            meta.RegisterMethod(2783913227, new CAgentMethodVoid <bVector3>(delegate(Agent self, bVector3 task_tacticsAtkPos) { }) /* TacticsAttack_task */);
            meta.RegisterMethod(3500369013, new CAgentMethodVoid <bVector3>(delegate(Agent self, bVector3 task_RetreatPos) { }) /* TempRetreat_task */);
            meta.RegisterMethod(2100968353, new CAgentMethod <bool>(delegate(Agent self) { return(((HeroAgent)self).TestArrivedTacticsTarget()); }));
            meta.RegisterMethod(2854910934, new CAgentMethod <Situation>(delegate(Agent self) { return(((HeroAgent)self).TestCurSituation()); }));
            meta.RegisterMethod(3970781763, new CMethod_SoilderAgent_TestEnemyInAtkRange());
            meta.RegisterMethod(982139696, new CAgentMethod <bool>(delegate(Agent self) { return(((HeroAgent)self).TestFriendHeroCouldHealMe()); }));
            meta.RegisterMethod(3756619215, new CAgentMethod <bool>(delegate(Agent self) { return(((HeroAgent)self).TestHasAtkToPosCommand()); }));
            meta.RegisterMethod(700275576, new CAgentMethod <bool>(delegate(Agent self) { return(((HeroAgent)self).TestHasEnemyInEyeRange()); }));
            meta.RegisterMethod(3000592579, new CAgentMethod <bool>(delegate(Agent self) { return(((HeroAgent)self).TestHasTacticsTargetLeft()); }));
            meta.RegisterMethod(1819711739, new CAgentMethod <bool>(delegate(Agent self) { return(((HeroAgent)self).TestSomeEnemyHeroCouldBeKilled()); }));
            meta.RegisterMethod(2521019022, new CMethod_behaviac_Agent_VectorAdd());
            meta.RegisterMethod(2306090221, new CMethod_behaviac_Agent_VectorClear());
            meta.RegisterMethod(3483755530, new CMethod_behaviac_Agent_VectorContains());
            meta.RegisterMethod(505785840, new CMethod_behaviac_Agent_VectorLength());
            meta.RegisterMethod(502968959, new CMethod_behaviac_Agent_VectorRemove());

            AgentMeta.Register <behaviac.Agent>("behaviac.Agent");
            AgentMeta.Register <FightAgent>("FightAgent");
            AgentMeta.Register <BuildingAgent>("BuildingAgent");
            AgentMeta.Register <DefenseTowerAgent>("DefenseTowerAgent");
            AgentMeta.Register <SoilderAgent>("SoilderAgent");
            AgentMeta.Register <HeroAgent>("HeroAgent");
            AgentMeta.Register <Situation>("Situation");
            ComparerRegister.RegisterType <Situation, CompareValue_Situation>();
            AgentMeta.Register <ActionStatus>("ActionStatus");
            ComparerRegister.RegisterType <ActionStatus, CompareValue_ActionStatus>();
            AgentMeta.Register <bVector3>("bVector3");
            ComparerRegister.RegisterType <bVector3, CompareValue_bVector3>();
            return(true);
        }