1
This commit is contained in:
parent
aa2e222a20
commit
f0536c1c1e
@ -52,54 +52,9 @@ void MapMgr::UnInit()
|
||||
|
||||
void MapMgr::AttachRoom(Room* room, RoomInitInfo& init_info)
|
||||
{
|
||||
if (init_info.pve_instance_id) {
|
||||
init_info.room_mode = kPveMode;
|
||||
room->pve_mode_meta = mt::PveGeminiMode::GetById(init_info.room_mode);
|
||||
if (!room->pve_mode_meta) {
|
||||
abort();
|
||||
}
|
||||
init_info.init_map_id = room->pve_mode_meta->map_id();
|
||||
room->pve_instance = mt::PveGemini::GetById(init_info.pve_instance_id);
|
||||
if (!room->pve_instance) {
|
||||
#ifdef DEBUG
|
||||
abort();
|
||||
#else
|
||||
init_info.pve_instance_id = 10001;
|
||||
room->pve_instance = mt::PveGemini::GetById(init_info.pve_instance_id);
|
||||
#endif
|
||||
}
|
||||
if (!room->pve_instance) {
|
||||
abort();
|
||||
}
|
||||
#ifdef DEBUG
|
||||
a8::XPrintf("attachRoom pve_instance_id:%d room_mode:%d\n",
|
||||
{
|
||||
init_info.pve_instance_id,
|
||||
init_info.room_mode
|
||||
});
|
||||
#endif
|
||||
}
|
||||
#if 1
|
||||
auto map_instance = GetMapInstance(init_info.init_map_id);
|
||||
if (!map_instance) {
|
||||
map_instance = GetMapInstance(2001);
|
||||
}
|
||||
#else
|
||||
MapInstance* map_instance = init_info.init_map_id == 0 ?
|
||||
RandMapInstance(init_info.room_mode) : GetMapInstance(init_info.init_map_id);
|
||||
if (!map_instance) {
|
||||
map_instance = RandMapInstance(init_info.room_mode);
|
||||
} else if (map_instance->GetMapMeta()->i->map_mode() != init_info.room_mode) {
|
||||
#ifdef DEBUG
|
||||
#else
|
||||
if (!room->pve_instance) {
|
||||
map_instance = RandMapInstance(init_info.room_mode);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
if (!map_instance) {
|
||||
A8_ABORT();
|
||||
abort();
|
||||
}
|
||||
map_instance->AttachRoom(room, init_info);
|
||||
}
|
||||
|
@ -805,6 +805,7 @@ void RoomMgr::SetMatchMode(int mode)
|
||||
void RoomMgr::AdjustCMJoin(cs::CMJoin* msg)
|
||||
{
|
||||
msg->set_force_enter_newbie_room(false);
|
||||
msg->set_pve_instance_id(0);
|
||||
if (msg->proto_version() < cs::ProtoVersion) {
|
||||
msg->set_mapid(2001);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user