int32_t LuaEngine::OnTimer(int64_t task_id, void* data) { UNUSE_ARG(data); LOG(INFO) << "OnTimer: task_id[" << task_id << "] TIMEOUT!!!!"; CloseTask(task_id); return -1; }
int32_t MsgModule::OnDatasvrAccountRegRes(ProtoSs::Msg* msg, void* arg) { UNUSE_ARG(arg); LuaEngineModule* lua_engine_module = FindModule<LuaEngineModule>(app_); uint64_t task_id = msg->head().seq(); int32_t account_reg_flag = msg->head().ret(); LOG(INFO) << "account reg result[" << account_reg_flag << "]"; lua_engine_module->Resume(task_id, account_reg_flag); return 0; }
int32_t MsgModule::OnDatasvrSetPlayerDataRes(ProtoSs::Msg* msg, void* arg) { UNUSE_ARG(arg); LuaEngineModule* lua_engine_module = FindModule<LuaEngineModule>(app_); uint64_t task_id = msg->head().seq(); int32_t update_player_data_flag = msg->head().ret(); int32_t player_idx = msg->head().player_idx(); LOG(INFO) << "get player_data result[" << update_player_data_flag << "] player_idx[" << player_idx << "] seq[" << task_id << "]"; lua_engine_module->Resume(task_id, update_player_data_flag); return 0; }
int32_t MsgModule::OnDatasvrGetPlayerDataRes(ProtoSs::Msg* msg, void* arg) { UNUSE_ARG(arg); LuaEngineModule* lua_engine_module = FindModule<LuaEngineModule>(app_); uint64_t task_id = msg->head().seq(); int32_t ret = msg->head().ret(); int32_t player_idx = msg->head().player_idx(); LOG(INFO) << "get player_data result[" << ret << "] player_idx[" << player_idx << "] seq[" << task_id << "]"; if (ret == 0) { const ProtoSs::GetPlayerDataRes& get_player_data_res = msg->get_player_data_res(); Database::PlayerData player_data; player_data.ParseFromArray(get_player_data_res.player_data().c_str(), get_player_data_res.player_data().size()); LOG(INFO) << "\nplayer_data:\n" << player_data.Utf8DebugString(); // 从数据库初始化对象 ObjMgrModule* obj_mgr_module = FindModule<ObjMgrModule>(app_); Player* player = obj_mgr_module->get_player(player_idx); const Database::RoleInfo& role_info = player_data.role_info(); player->set_player_by_db(&role_info); for (int32_t i = 0; i < player_data.city_list_size(); i++) { const Database::CityInfo& city_info = player_data.city_list(i); int32_t city_idx = obj_mgr_module->add_city(player_idx); City* city = obj_mgr_module->get_city(city_idx); city->set_city_by_db(&city_info); if (city != NULL) { city->set_player_idx(player_idx); } } lua_engine_module->Resume(task_id, 0); } else { lua_engine_module->Resume(task_id, 1); } return 0; }
int32_t MsgModule::OnDatasvrAccountVerifyRes(ProtoSs::Msg* msg, void* arg) { UNUSE_ARG(arg); LuaEngineModule* lua_engine_module = FindModule<LuaEngineModule>(app_); uint64_t task_id = msg->head().seq(); int32_t ret = msg->head().ret(); LOG(INFO) << "account verify result[" << ret << "]"; if (ret == 0) { lua_engine_module->SetGlobal("ACCOUNT_VERIFY_FLAG", 0); } else { lua_engine_module->SetGlobal("ACCOUNT_VERIFY_FLAG", 1); } lua_engine_module->Resume(task_id, CHECK_SIG_OK); return 0; }