diff --git a/server/gameserver/refreshrule.cc b/server/gameserver/refreshrule.cc new file mode 100644 index 0000000..2d2cd0d --- /dev/null +++ b/server/gameserver/refreshrule.cc @@ -0,0 +1,14 @@ +#include "precompile.h" + +#include "refreshrule.h" + +void RefreshRule::Init() +{ + +} + +void RefreshRule::UnInit() +{ + +} + diff --git a/server/gameserver/refreshrule.h b/server/gameserver/refreshrule.h new file mode 100644 index 0000000..1cbd287 --- /dev/null +++ b/server/gameserver/refreshrule.h @@ -0,0 +1,11 @@ +#pragma once + +class Room; +class RefreshRule +{ + public: + Room* room = nullptr; + + void Init(); + void UnInit(); +}; diff --git a/server/gameserver/room.cc b/server/gameserver/room.cc index ebc887c..a298f06 100644 --- a/server/gameserver/room.cc +++ b/server/gameserver/room.cc @@ -29,6 +29,7 @@ #include "perfmonitor.h" #include "mapinstance.h" #include "mapmgr.h" +#include "refreshrule.h" #include "framework/cpp/utils.h" @@ -85,6 +86,9 @@ void Room::Init() CreateDropObjs(); InitObstacleDatas(); ShuaAndroid(); + refresh_rule_ = new RefreshRule(); + refresh_rule_->room = this; + refresh_rule_->Init(); if (room_type_ == RT_NewBrid && creator_game_times_ <= 0) { CreateLevel0RoomSpecThings(); } @@ -95,9 +99,12 @@ void Room::Init() void Room::UnInit() { + refresh_rule_->UnInit(); #ifdef DEBUG UnInitDebugInfo(); #endif + refresh_rule_->UnInit(); + A8_SAFE_DELETE(refresh_rule_); timer_attacher.ClearTimerList(); xtimer_attacher_.ClearTimerList(); for (auto& pair : accountid_hash_) { diff --git a/server/gameserver/room.h b/server/gameserver/room.h index e4144bd..ae667c7 100644 --- a/server/gameserver/room.h +++ b/server/gameserver/room.h @@ -36,6 +36,7 @@ class AabbCollider; class Android; class Car; class Hero; +class RefreshRule; class Room { public: @@ -318,4 +319,6 @@ private: std::vector obstacle_datas_; xtimer_list* auto_jump_timer_ = nullptr; + + RefreshRule* refresh_rule_ = nullptr; };