From 8d6b1f576c988f3920f426dcd41f4e39c438874e Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Fri, 23 Jul 2021 02:48:59 +0000 Subject: [PATCH] 1 --- server/gameserver/hero.cc | 17 ++++++++--------- server/gameserver/hero.h | 2 +- server/gameserver/room.cc | 1 - 3 files changed, 9 insertions(+), 11 deletions(-) diff --git a/server/gameserver/hero.cc b/server/gameserver/hero.cc index 2e66879..2754094 100644 --- a/server/gameserver/hero.cc +++ b/server/gameserver/hero.cc @@ -8,6 +8,7 @@ #include "perfmonitor.h" #include "typeconvert.h" #include "hero.ai.h" +#include "mine_sweeper.ai.h" #include "obstacle.h" #include "collider.h" #include "bullet.h" @@ -30,11 +31,6 @@ void Hero::Initialize() { Creature::Initialize(); RecalcSelfCollider(); - ai = new HeroAI; - ai->owner = this; - #if 0 - ai->SetAiLevel(8); - #endif MetaData::Equip* weapon_meta = MetaMgr::Instance()->GetEquip(meta->i->default_weapon()); if (weapon_meta) { weapons[GUN_SLOT1].weapon_idx = GUN_SLOT1; @@ -46,6 +42,7 @@ void Hero::Initialize() SetCurrWeapon(&weapons[GUN_SLOT1]); } SetInfiniteBulletMode(); + InitAI(); } void Hero::FillMFObjectPart(Room* room, Human* hum, cs::MFObjectPart* part_data) @@ -180,10 +177,6 @@ void Hero::GetHitAabbBox(AabbCollider& aabb_box) aabb_box._max.y = GetHitRadius(); } -void Hero::SetAiLevel(int ai_level) -{ -} - void Hero::DetachFromMaster() { if (!detached_) { @@ -248,3 +241,9 @@ void Hero::OnRemoveFromTargetPartObject(Entity* target) { } + +void Hero::InitAI() +{ + ai = new HeroAI; + ai->owner = this; +} diff --git a/server/gameserver/hero.h b/server/gameserver/hero.h index cd58faa..30a9908 100644 --- a/server/gameserver/hero.h +++ b/server/gameserver/hero.h @@ -37,7 +37,6 @@ public: virtual void GetHitAabbBox(AabbCollider& aabb_box) override; virtual void OnAddToTargetPartObject(Entity* target) override; virtual void OnRemoveFromTargetPartObject(Entity* target) override; - void SetAiLevel(int ai_level); void DetachFromMaster(); protected: @@ -45,6 +44,7 @@ protected: void InternalUpdateMove(float speed); virtual void RecalcSelfCollider() override; void BeKill(int killer_id, const std::string& killer_name, int weapon_id); + void InitAI(); private: bool later_removed_ = false; diff --git a/server/gameserver/room.cc b/server/gameserver/room.cc index 1d7a30a..7b0c63c 100644 --- a/server/gameserver/room.cc +++ b/server/gameserver/room.cc @@ -643,7 +643,6 @@ Hero* Room::CreateHero(Creature* master, hero->SetAttackDir(dir); hero->team_id = team_id; hero->Initialize(); - hero->SetAiLevel(7); AddToEntityHash(hero); AddToMoveableHash(hero); grid_service->AddCreature(hero);