diff --git a/server/gameserver/metamgr.cc b/server/gameserver/metamgr.cc index fb84daf..fb94815 100755 --- a/server/gameserver/metamgr.cc +++ b/server/gameserver/metamgr.cc @@ -135,7 +135,9 @@ public: { MetaMgr::Instance()->gas_inactive_time = MetaMgr::Instance()->GetSysParamAsInt("gas_inactive_time"); - MetaMgr::Instance()->newbie_gas_inactive_time = MetaMgr::Instance()->GetSysParamAsInt("newbie_gas_inactive_time", 10); + MetaMgr::Instance()->newbie_gas_inactive_time = MetaMgr::Instance()->GetSysParamAsInt("newbie_gas_inactive_time", 5); + MetaMgr::Instance()->midbrid_gas_inactive_time = MetaMgr::Instance()->GetSysParamAsInt("midbrid_gas_inactive_time", 15); + MetaMgr::Instance()->common_gas_inactive_time = MetaMgr::Instance()->GetSysParamAsInt("common_gas_inactive_time", 15); MetaMgr::Instance()->newbie_born_point = MetaMgr::Instance()->GetSysParamAsString("newbie_born_point"); { std::vector strings; diff --git a/server/gameserver/metamgr.h b/server/gameserver/metamgr.h index b7c20cc..da923ec 100755 --- a/server/gameserver/metamgr.h +++ b/server/gameserver/metamgr.h @@ -47,7 +47,9 @@ class MetaMgr : public a8::Singleton MetaData::Robot* RandRobot(std::set& refreshed_robot_set); int gas_inactive_time = 10; - int newbie_gas_inactive_time = 10; + int newbie_gas_inactive_time = 5; + int midbrid_gas_inactive_time = 15; + int common_gas_inactive_time = 15; int jump_time = 10; float K = 100.0f; float kill_param = 0.0f; diff --git a/server/gameserver/room.cc b/server/gameserver/room.cc index 997c994..6af4152 100644 --- a/server/gameserver/room.cc +++ b/server/gameserver/room.cc @@ -1773,7 +1773,13 @@ ObstacleData* Room::GetPermanentObstacleData(int obstacle_uniid) long long Room::GetGasInactiveTime() { if (room_type_ == RT_NewBrid) { - return MetaMgr::Instance()->newbie_gas_inactive_time; + if (creator_game_times_ <= 0) { + return MetaMgr::Instance()->newbie_gas_inactive_time; + } else { + return MetaMgr::Instance()->common_gas_inactive_time; + } + } else if (room_type_ == RT_MidBrid) { + return MetaMgr::Instance()->midbrid_gas_inactive_time; } else { return MetaMgr::Instance()->gas_inactive_time; }