diff --git a/server/gameserver/custom_battle.cc b/server/gameserver/custom_battle.cc index 5911155d..61de5518 100644 --- a/server/gameserver/custom_battle.cc +++ b/server/gameserver/custom_battle.cc @@ -14,7 +14,20 @@ void CustomBattle::UnInit() void CustomBattle::ParseResult(a8::XObject& obj) { + if (!obj.HasKey("errcode")) { + parse_ok_ = false; + return; + } + room_id_ = obj.Get("room_id").GetString(); + room_uuid_ = obj.Get("room_uuid").GetString(); + zone_id_ = obj.Get("zone_id"); + node_id_ = obj.Get("node_id"); + start_time_ = obj.Get("start_time"); + sign_ = obj.Get("sign").GetString(); + raw_data_ = std::make_shared(); + obj.DeepCopy(*raw_data_); + parse_ok_ = true; } bool CustomBattle::CanAdd(const std::string& account_id, const std::string& session_id)