diff --git a/server/gameserver/mapmgr.cc b/server/gameserver/mapmgr.cc index 0250ba0..b8d7c75 100644 --- a/server/gameserver/mapmgr.cc +++ b/server/gameserver/mapmgr.cc @@ -33,12 +33,20 @@ void MapMgr::Init() map_meta_->i->map_height() / MAP_GRID_WIDTH, MAP_GRID_WIDTH); CreateThings(); - a8::UdpLog::Instance()->Info("current_uniid:%d loots:%d spawn_points:%d\n", - { - current_uniid_, - loots_.size(), - spawn_points_.size() - }); + a8::UdpLog::Instance()->Info + ("current_uniid:%d loots:%d spawn_points:%d " + "building_num:%d obstalce_num:%d obstacle0_num:%d " + "obstacle1_num:%d obstacle2_num:%d", + { + current_uniid_, + loots_.size(), + spawn_points_.size(), + building_num_, + obstacle_num_, + obstacle0_num_, + obstacle1_num_, + obstacle2_num_, + }); if (current_uniid_ >= FIXED_OBJECT_MAXID) { abort(); } @@ -152,6 +160,7 @@ void MapMgr::CreateBuilding(int thing_id, float building_x, float building_y) building->Initialize(); uniid_hash_[building->GetEntityUniId()] = building; grid_service_->AddPermanentEntity(building); + ++building_num_; for (size_t door_idx = 0; door_idx < building_meta->doors.size(); ++door_idx) { if (door_idx >= 0 && door_idx < building->meta->doors.size()) { MetaData::Building::Door* door_meta = &building->meta->doors[door_idx]; @@ -200,6 +209,30 @@ Obstacle* MapMgr::InternalCreateObstacle(int id, float x, float y, } uniid_hash_[entity->GetEntityUniId()] = entity; grid_service_->AddPermanentEntity(entity); + { + switch (thing->i->attack_type()) { + case 0: + { + ++obstacle0_num_; + } + break; + case 1: + { + ++obstacle1_num_; + } + break; + case 2: + { + ++obstacle2_num_; + } + break; + default: + { + } + break; + } + ++obstacle_num_; + } return entity; } return nullptr; diff --git a/server/gameserver/mapmgr.h b/server/gameserver/mapmgr.h index a78e28f..8ee5d24 100644 --- a/server/gameserver/mapmgr.h +++ b/server/gameserver/mapmgr.h @@ -47,4 +47,10 @@ class MapMgr : public a8::Singleton std::vector loots_; std::vector buildings_; std::vector level0room_spec_things_; + + int building_num_ = 0; + int obstacle_num_ = 0; + int obstacle0_num_ = 0; + int obstacle1_num_ = 0; + int obstacle2_num_ = 0; };