forked from Hay1tsme/artemis
sao: fix data issues
This commit is contained in:
parent
348edef0f5
commit
3a710c671e
@ -14,8 +14,7 @@ class SaoBase:
|
|||||||
def __init__(self, core_cfg: CoreConfig, game_cfg: SaoConfig) -> None:
|
def __init__(self, core_cfg: CoreConfig, game_cfg: SaoConfig) -> None:
|
||||||
self.core_cfg = core_cfg
|
self.core_cfg = core_cfg
|
||||||
self.game_cfg = game_cfg
|
self.game_cfg = game_cfg
|
||||||
self.core_data = Data(core_cfg)
|
self.data = SaoData(core_cfg)
|
||||||
self.game_data = SaoData(core_cfg)
|
|
||||||
self.version = 0
|
self.version = 0
|
||||||
self.logger = logging.getLogger("sao")
|
self.logger = logging.getLogger("sao")
|
||||||
|
|
||||||
@ -80,26 +79,26 @@ class SaoBase:
|
|||||||
req = SaoGetAuthCardDataRequest(header, request)
|
req = SaoGetAuthCardDataRequest(header, request)
|
||||||
|
|
||||||
#Check authentication
|
#Check authentication
|
||||||
user_id = self.core_data.card.get_user_id_from_card( req.access_code )
|
user_id = await self.data.card.get_user_id_from_card( req.access_code )
|
||||||
|
|
||||||
if not user_id:
|
if not user_id:
|
||||||
user_id = self.core_data.user.create_user() #works
|
user_id = await self.data.user.create_user() #works
|
||||||
card_id = self.core_data.card.create_card(user_id, req.access_code)
|
card_id = await self.data.card.create_card(user_id, req.access_code)
|
||||||
|
|
||||||
if card_id is None:
|
if card_id is None:
|
||||||
user_id = -1
|
user_id = -1
|
||||||
self.logger.error("Failed to register card!")
|
self.logger.error("Failed to register card!")
|
||||||
|
|
||||||
# Create profile with 3 basic heroes
|
# Create profile with 3 basic heroes
|
||||||
profile_id = self.game_data.profile.create_profile(user_id)
|
profile_id = await self.data.profile.create_profile(user_id)
|
||||||
self.game_data.item.put_hero_log(user_id, 101000010, 1, 0, 101000016, 0, 30086, 1001, 1002, 1003, 1005)
|
await self.data.item.put_hero_log(user_id, 101000010, 1, 0, 101000016, 0, 30086, 1001, 1002, 1003, 1005)
|
||||||
self.game_data.item.put_hero_log(user_id, 102000010, 1, 0, 103000006, 0, 30086, 1001, 1002, 1003, 1005)
|
await self.data.item.put_hero_log(user_id, 102000010, 1, 0, 103000006, 0, 30086, 1001, 1002, 1003, 1005)
|
||||||
self.game_data.item.put_hero_log(user_id, 103000010, 1, 0, 112000009, 0, 30086, 1001, 1002, 1003, 1005)
|
await self.data.item.put_hero_log(user_id, 103000010, 1, 0, 112000009, 0, 30086, 1001, 1002, 1003, 1005)
|
||||||
self.game_data.item.put_hero_party(user_id, 0, 101000010, 102000010, 103000010)
|
await self.data.item.put_hero_party(user_id, 0, 101000010, 102000010, 103000010)
|
||||||
self.game_data.item.put_equipment_data(user_id, 101000016, 1, 200, 0, 0, 0)
|
await self.data.item.put_equipment_data(user_id, 101000016, 1, 200, 0, 0, 0)
|
||||||
self.game_data.item.put_equipment_data(user_id, 103000006, 1, 200, 0, 0, 0)
|
await self.data.item.put_equipment_data(user_id, 103000006, 1, 200, 0, 0, 0)
|
||||||
self.game_data.item.put_equipment_data(user_id, 112000009, 1, 200, 0, 0, 0)
|
await self.data.item.put_equipment_data(user_id, 112000009, 1, 200, 0, 0, 0)
|
||||||
self.game_data.item.put_player_quest(user_id, 1001, True, 300, 0, 0, 1)
|
await self.data.item.put_player_quest(user_id, 1001, True, 300, 0, 0, 1)
|
||||||
|
|
||||||
# Force the tutorial stage to be completed due to potential crash in-game
|
# Force the tutorial stage to be completed due to potential crash in-game
|
||||||
|
|
||||||
@ -107,23 +106,23 @@ class SaoBase:
|
|||||||
self.logger.info(f"User Authenticated: { req.access_code } | { user_id }")
|
self.logger.info(f"User Authenticated: { req.access_code } | { user_id }")
|
||||||
|
|
||||||
#Grab values from profile
|
#Grab values from profile
|
||||||
profile_data = self.game_data.profile.get_profile(user_id)
|
profile_data = await self.data.profile.get_profile(user_id)
|
||||||
|
|
||||||
if user_id and not profile_data:
|
if user_id and not profile_data:
|
||||||
profile_id = self.game_data.profile.create_profile(user_id)
|
profile_id = await self.data.profile.create_profile(user_id)
|
||||||
self.game_data.item.put_hero_log(user_id, 101000010, 1, 0, 101000016, 0, 30086, 1001, 1002, 1003, 1005)
|
await self.data.item.put_hero_log(user_id, 101000010, 1, 0, 101000016, 0, 30086, 1001, 1002, 1003, 1005)
|
||||||
self.game_data.item.put_hero_log(user_id, 102000010, 1, 0, 103000006, 0, 30086, 1001, 1002, 1003, 1005)
|
await self.data.item.put_hero_log(user_id, 102000010, 1, 0, 103000006, 0, 30086, 1001, 1002, 1003, 1005)
|
||||||
self.game_data.item.put_hero_log(user_id, 103000010, 1, 0, 112000009, 0, 30086, 1001, 1002, 1003, 1005)
|
await self.data.item.put_hero_log(user_id, 103000010, 1, 0, 112000009, 0, 30086, 1001, 1002, 1003, 1005)
|
||||||
self.game_data.item.put_hero_party(user_id, 0, 101000010, 102000010, 103000010)
|
await self.data.item.put_hero_party(user_id, 0, 101000010, 102000010, 103000010)
|
||||||
self.game_data.item.put_equipment_data(user_id, 101000016, 1, 200, 0, 0, 0)
|
await self.data.item.put_equipment_data(user_id, 101000016, 1, 200, 0, 0, 0)
|
||||||
self.game_data.item.put_equipment_data(user_id, 103000006, 1, 200, 0, 0, 0)
|
await self.data.item.put_equipment_data(user_id, 103000006, 1, 200, 0, 0, 0)
|
||||||
self.game_data.item.put_equipment_data(user_id, 112000009, 1, 200, 0, 0, 0)
|
await self.data.item.put_equipment_data(user_id, 112000009, 1, 200, 0, 0, 0)
|
||||||
self.game_data.item.put_player_quest(user_id, 1001, True, 300, 0, 0, 1)
|
await self.data.item.put_player_quest(user_id, 1001, True, 300, 0, 0, 1)
|
||||||
|
|
||||||
# Force the tutorial stage to be completed due to potential crash in-game
|
# Force the tutorial stage to be completed due to potential crash in-game
|
||||||
|
|
||||||
|
|
||||||
profile_data = self.game_data.profile.get_profile(user_id)
|
profile_data = await self.data.profile.get_profile(user_id)
|
||||||
|
|
||||||
resp = SaoGetAuthCardDataResponse(header.cmd +1, profile_data)
|
resp = SaoGetAuthCardDataResponse(header.cmd +1, profile_data)
|
||||||
return resp.make()
|
return resp.make()
|
||||||
@ -137,8 +136,8 @@ class SaoBase:
|
|||||||
#common/login
|
#common/login
|
||||||
req = SaoCommonLoginRequest(header, request)
|
req = SaoCommonLoginRequest(header, request)
|
||||||
|
|
||||||
user_id = self.core_data.card.get_user_id_from_card( req.access_code )
|
user_id = await self.data.card.get_user_id_from_card( req.access_code )
|
||||||
profile_data = self.game_data.profile.get_profile(user_id)
|
profile_data = await self.data.profile.get_profile(user_id)
|
||||||
|
|
||||||
resp = SaoCommonLoginResponse(header.cmd +1, profile_data)
|
resp = SaoCommonLoginResponse(header.cmd +1, profile_data)
|
||||||
return resp.make()
|
return resp.make()
|
||||||
@ -157,7 +156,7 @@ class SaoBase:
|
|||||||
#user_info/get_user_basic_data
|
#user_info/get_user_basic_data
|
||||||
req = SaoGetUserBasicDataRequest(header, request)
|
req = SaoGetUserBasicDataRequest(header, request)
|
||||||
|
|
||||||
profile_data = self.game_data.profile.get_profile(req.user_id)
|
profile_data = await self.data.profile.get_profile(req.user_id)
|
||||||
|
|
||||||
resp = SaoGetUserBasicDataResponse(header.cmd +1, profile_data)
|
resp = SaoGetUserBasicDataResponse(header.cmd +1, profile_data)
|
||||||
return resp.make()
|
return resp.make()
|
||||||
@ -166,7 +165,7 @@ class SaoBase:
|
|||||||
#have_object/get_hero_log_user_data_list
|
#have_object/get_hero_log_user_data_list
|
||||||
req = SaoGetHeroLogUserDataListRequest(header, request)
|
req = SaoGetHeroLogUserDataListRequest(header, request)
|
||||||
|
|
||||||
hero_data = self.game_data.item.get_hero_logs(req.user_id)
|
hero_data = await self.data.item.get_hero_logs(req.user_id)
|
||||||
|
|
||||||
resp = SaoGetHeroLogUserDataListResponse(header.cmd +1, hero_data)
|
resp = SaoGetHeroLogUserDataListResponse(header.cmd +1, hero_data)
|
||||||
return resp.make()
|
return resp.make()
|
||||||
@ -175,7 +174,7 @@ class SaoBase:
|
|||||||
#have_object/get_equipment_user_data_list
|
#have_object/get_equipment_user_data_list
|
||||||
req = SaoGetEquipmentUserDataListRequest(header, request)
|
req = SaoGetEquipmentUserDataListRequest(header, request)
|
||||||
|
|
||||||
equipment_data = self.game_data.item.get_user_equipments(req.user_id)
|
equipment_data = await self.data.item.get_user_equipments(req.user_id)
|
||||||
|
|
||||||
resp = SaoGetEquipmentUserDataListResponse(header.cmd +1, equipment_data)
|
resp = SaoGetEquipmentUserDataListResponse(header.cmd +1, equipment_data)
|
||||||
return resp.make()
|
return resp.make()
|
||||||
@ -184,21 +183,21 @@ class SaoBase:
|
|||||||
#have_object/get_item_user_data_list
|
#have_object/get_item_user_data_list
|
||||||
req = SaoGetItemUserDataListRequest(header, request)
|
req = SaoGetItemUserDataListRequest(header, request)
|
||||||
|
|
||||||
item_data = self.game_data.item.get_user_items(req.user_id)
|
item_data = await self.data.item.get_user_items(req.user_id)
|
||||||
|
|
||||||
resp = SaoGetItemUserDataListResponse(header.cmd +1, item_data)
|
resp = SaoGetItemUserDataListResponse(header.cmd +1, item_data)
|
||||||
return resp.make()
|
return resp.make()
|
||||||
|
|
||||||
async def handle_c606(self, header: SaoRequestHeader, request: bytes) -> bytes:
|
async def handle_c606(self, header: SaoRequestHeader, request: bytes) -> bytes:
|
||||||
#have_object/get_support_log_user_data_list
|
#have_object/get_support_log_user_data_list
|
||||||
supportIdsData = self.game_data.static.get_support_log_ids(0, True)
|
supportIdsData = await self.data.static.get_support_log_ids(0, True)
|
||||||
|
|
||||||
resp = SaoGetSupportLogUserDataListResponse(header.cmd +1, supportIdsData)
|
resp = SaoGetSupportLogUserDataListResponse(header.cmd +1, supportIdsData)
|
||||||
return resp.make()
|
return resp.make()
|
||||||
|
|
||||||
async def handle_c800(self, header: SaoRequestHeader, request: bytes) -> bytes:
|
async def handle_c800(self, header: SaoRequestHeader, request: bytes) -> bytes:
|
||||||
#custom/get_title_user_data_list
|
#custom/get_title_user_data_list
|
||||||
titleIdsData = self.game_data.static.get_title_ids(0, True)
|
titleIdsData = await self.data.static.get_title_ids(0, True)
|
||||||
|
|
||||||
resp = SaoGetTitleUserDataListResponse(header.cmd +1, titleIdsData)
|
resp = SaoGetTitleUserDataListResponse(header.cmd +1, titleIdsData)
|
||||||
return resp.make()
|
return resp.make()
|
||||||
@ -207,7 +206,7 @@ class SaoBase:
|
|||||||
#have_object/get_episode_append_data_list
|
#have_object/get_episode_append_data_list
|
||||||
req = SaoGetEpisodeAppendDataListRequest(header, request)
|
req = SaoGetEpisodeAppendDataListRequest(header, request)
|
||||||
|
|
||||||
profile_data = self.game_data.profile.get_profile(req.user_id)
|
profile_data = await self.data.profile.get_profile(req.user_id)
|
||||||
|
|
||||||
resp = SaoGetEpisodeAppendDataListResponse(header.cmd +1, profile_data)
|
resp = SaoGetEpisodeAppendDataListResponse(header.cmd +1, profile_data)
|
||||||
return resp.make()
|
return resp.make()
|
||||||
@ -216,10 +215,10 @@ class SaoBase:
|
|||||||
#custom/get_party_data_list
|
#custom/get_party_data_list
|
||||||
req = SaoGetPartyDataListRequest(header, request)
|
req = SaoGetPartyDataListRequest(header, request)
|
||||||
|
|
||||||
hero_party = self.game_data.item.get_hero_party(req.user_id, 0)
|
hero_party = await self.data.item.get_hero_party(req.user_id, 0)
|
||||||
hero1_data = self.game_data.item.get_hero_log(req.user_id, hero_party[3])
|
hero1_data = await self.data.item.get_hero_log(req.user_id, hero_party[3])
|
||||||
hero2_data = self.game_data.item.get_hero_log(req.user_id, hero_party[4])
|
hero2_data = await self.data.item.get_hero_log(req.user_id, hero_party[4])
|
||||||
hero3_data = self.game_data.item.get_hero_log(req.user_id, hero_party[5])
|
hero3_data = await self.data.item.get_hero_log(req.user_id, hero_party[5])
|
||||||
|
|
||||||
resp = SaoGetPartyDataListResponse(header.cmd +1, hero1_data, hero2_data, hero3_data)
|
resp = SaoGetPartyDataListResponse(header.cmd +1, hero1_data, hero2_data, hero3_data)
|
||||||
return resp.make()
|
return resp.make()
|
||||||
@ -238,7 +237,7 @@ class SaoBase:
|
|||||||
#quest/get_quest_scene_user_data_list // QuestScene.csv
|
#quest/get_quest_scene_user_data_list // QuestScene.csv
|
||||||
req = SaoGetQuestSceneUserDataListRequest(header, request)
|
req = SaoGetQuestSceneUserDataListRequest(header, request)
|
||||||
|
|
||||||
quest_data = self.game_data.item.get_quest_logs(req.user_id)
|
quest_data = await self.data.item.get_quest_logs(req.user_id)
|
||||||
|
|
||||||
resp = SaoGetQuestSceneUserDataListResponse(header.cmd +1, quest_data)
|
resp = SaoGetQuestSceneUserDataListResponse(header.cmd +1, quest_data)
|
||||||
return resp.make()
|
return resp.make()
|
||||||
@ -262,40 +261,40 @@ class SaoBase:
|
|||||||
#custom/synthesize_enhancement_hero_log
|
#custom/synthesize_enhancement_hero_log
|
||||||
req = SaoSynthesizeEnhancementHeroLogRequest(header, request)
|
req = SaoSynthesizeEnhancementHeroLogRequest(header, request)
|
||||||
|
|
||||||
synthesize_hero_log_data = self.game_data.item.get_hero_log(req.user_id, req.origin_user_hero_log_id)
|
synthesize_hero_log_data = await self.data.item.get_hero_log(req.user_id, req.origin_user_hero_log_id)
|
||||||
|
|
||||||
for x in req.material_common_reward_user_data_list:
|
for x in req.material_common_reward_user_data_list:
|
||||||
hero_exp = 0
|
hero_exp = 0
|
||||||
itemList = self.game_data.static.get_item_id(x.user_common_reward_id)
|
itemList = await self.data.static.get_item_id(x.user_common_reward_id)
|
||||||
heroList = self.game_data.static.get_hero_id(x.user_common_reward_id)
|
heroList = await self.data.static.get_hero_id(x.user_common_reward_id)
|
||||||
equipmentList = self.game_data.static.get_equipment_id(x.user_common_reward_id)
|
equipmentList = await self.data.static.get_equipment_id(x.user_common_reward_id)
|
||||||
|
|
||||||
if itemList:
|
if itemList:
|
||||||
hero_exp = 2000 + int(synthesize_hero_log_data["log_exp"])
|
hero_exp = 2000 + int(synthesize_hero_log_data["log_exp"])
|
||||||
self.game_data.item.remove_item(req.user_id, x.user_common_reward_id)
|
await self.data.item.remove_item(req.user_id, x.user_common_reward_id)
|
||||||
|
|
||||||
if equipmentList:
|
if equipmentList:
|
||||||
equipment_data = self.game_data.item.get_user_equipment(req.user_id, x.user_common_reward_id)
|
equipment_data = await self.data.item.get_user_equipment(req.user_id, x.user_common_reward_id)
|
||||||
if equipment_data is None:
|
if equipment_data is None:
|
||||||
self.logger.error(f"Failed to find equipment {x.user_common_reward_id} for user {req.user_id}!")
|
self.logger.error(f"Failed to find equipment {x.user_common_reward_id} for user {req.user_id}!")
|
||||||
continue
|
continue
|
||||||
|
|
||||||
hero_exp = int(equipment_data["enhancement_exp"]) + int(synthesize_hero_log_data["log_exp"])
|
hero_exp = int(equipment_data["enhancement_exp"]) + int(synthesize_hero_log_data["log_exp"])
|
||||||
self.game_data.item.remove_equipment(req.user_id, x.user_common_reward_id)
|
await self.data.item.remove_equipment(req.user_id, x.user_common_reward_id)
|
||||||
|
|
||||||
if heroList:
|
if heroList:
|
||||||
hero_data = self.game_data.item.get_hero_log(req.user_id, x.user_common_reward_id)
|
hero_data = await self.data.item.get_hero_log(req.user_id, x.user_common_reward_id)
|
||||||
if hero_data is None:
|
if hero_data is None:
|
||||||
self.logger.error(f"Failed to find hero {x.user_common_reward_id} for user {req.user_id}!")
|
self.logger.error(f"Failed to find hero {x.user_common_reward_id} for user {req.user_id}!")
|
||||||
continue
|
continue
|
||||||
|
|
||||||
hero_exp = int(hero_data["log_exp"]) + int(synthesize_hero_log_data["log_exp"])
|
hero_exp = int(hero_data["log_exp"]) + int(synthesize_hero_log_data["log_exp"])
|
||||||
self.game_data.item.remove_hero_log(req.user_id, x.user_common_reward_id)
|
await self.data.item.remove_hero_log(req.user_id, x.user_common_reward_id)
|
||||||
|
|
||||||
if hero_exp == 0:
|
if hero_exp == 0:
|
||||||
self.logger.warn(f"Hero {x.user_common_reward_id} (type {x.common_reward_type}) not found!")
|
self.logger.warn(f"Hero {x.user_common_reward_id} (type {x.common_reward_type}) not found!")
|
||||||
|
|
||||||
self.game_data.item.put_hero_log(
|
await self.data.item.put_hero_log(
|
||||||
req.user_id,
|
req.user_id,
|
||||||
int(req.origin_user_hero_log_id),
|
int(req.origin_user_hero_log_id),
|
||||||
synthesize_hero_log_data["log_level"],
|
synthesize_hero_log_data["log_level"],
|
||||||
@ -309,12 +308,12 @@ class SaoBase:
|
|||||||
synthesize_hero_log_data["skill_slot5_skill_id"]
|
synthesize_hero_log_data["skill_slot5_skill_id"]
|
||||||
)
|
)
|
||||||
|
|
||||||
profile = self.game_data.profile.get_profile(req.user_id)
|
profile = await self.data.profile.get_profile(req.user_id)
|
||||||
new_col = int(profile["own_col"]) - 100
|
new_col = int(profile["own_col"]) - 100
|
||||||
|
|
||||||
# Update profile
|
# Update profile
|
||||||
|
|
||||||
self.game_data.profile.put_profile(
|
await self.data.profile.put_profile(
|
||||||
req.user_id,
|
req.user_id,
|
||||||
profile["user_type"],
|
profile["user_type"],
|
||||||
profile["nick_name"],
|
profile["nick_name"],
|
||||||
@ -327,7 +326,7 @@ class SaoBase:
|
|||||||
)
|
)
|
||||||
|
|
||||||
# Load the item again to push to the response handler
|
# Load the item again to push to the response handler
|
||||||
synthesize_hero_log_data = self.game_data.item.get_hero_log(req.user_id, req.origin_user_hero_log_id)
|
synthesize_hero_log_data = await self.data.item.get_hero_log(req.user_id, req.origin_user_hero_log_id)
|
||||||
|
|
||||||
resp = SaoSynthesizeEnhancementHeroLogResponse(header.cmd +1, synthesize_hero_log_data)
|
resp = SaoSynthesizeEnhancementHeroLogResponse(header.cmd +1, synthesize_hero_log_data)
|
||||||
return resp.make()
|
return resp.make()
|
||||||
@ -335,48 +334,48 @@ class SaoBase:
|
|||||||
async def handle_c816(self, header: SaoRequestHeader, request: bytes) -> bytes:
|
async def handle_c816(self, header: SaoRequestHeader, request: bytes) -> bytes:
|
||||||
#custom/synthesize_enhancement_equipment
|
#custom/synthesize_enhancement_equipment
|
||||||
req_data = SaoSynthesizeEnhancementEquipmentRequest(header, request)
|
req_data = SaoSynthesizeEnhancementEquipmentRequest(header, request)
|
||||||
synthesize_equipment_data = self.game_data.item.get_user_equipment(req_data.user_id, req_data.origin_user_equipment_id)
|
synthesize_equipment_data = await self.data.item.get_user_equipment(req_data.user_id, req_data.origin_user_equipment_id)
|
||||||
|
|
||||||
for x in req_data.material_common_reward_user_data_list:
|
for x in req_data.material_common_reward_user_data_list:
|
||||||
equipment_exp = 0
|
equipment_exp = 0
|
||||||
itemList = self.game_data.static.get_item_id(x.user_common_reward_id)
|
itemList = await self.data.static.get_item_id(x.user_common_reward_id)
|
||||||
heroList = self.game_data.static.get_hero_id(x.user_common_reward_id)
|
heroList = await self.data.static.get_hero_id(x.user_common_reward_id)
|
||||||
equipmentList = self.game_data.static.get_equipment_id(x.user_common_reward_id)
|
equipmentList = await self.data.static.get_equipment_id(x.user_common_reward_id)
|
||||||
|
|
||||||
if itemList:
|
if itemList:
|
||||||
equipment_exp = 2000 + int(synthesize_equipment_data["enhancement_exp"])
|
equipment_exp = 2000 + int(synthesize_equipment_data["enhancement_exp"])
|
||||||
self.game_data.item.remove_item(req_data.user_id, x.user_common_reward_id)
|
await self.data.item.remove_item(req_data.user_id, x.user_common_reward_id)
|
||||||
|
|
||||||
if equipmentList:
|
if equipmentList:
|
||||||
equipment_data = self.game_data.item.get_user_equipment(req_data.user_id, x.user_common_reward_id)
|
equipment_data = await self.data.item.get_user_equipment(req_data.user_id, x.user_common_reward_id)
|
||||||
if equipment_data is None:
|
if equipment_data is None:
|
||||||
self.logger.error(f"Failed to find equipment {x.user_common_reward_id} for user {req_data.user_id}!")
|
self.logger.error(f"Failed to find equipment {x.user_common_reward_id} for user {req_data.user_id}!")
|
||||||
continue
|
continue
|
||||||
|
|
||||||
equipment_exp = int(equipment_data["enhancement_exp"]) + int(synthesize_equipment_data["enhancement_exp"])
|
equipment_exp = int(equipment_data["enhancement_exp"]) + int(synthesize_equipment_data["enhancement_exp"])
|
||||||
self.game_data.item.remove_equipment(req_data.user_id, x.user_common_reward_id)
|
await self.data.item.remove_equipment(req_data.user_id, x.user_common_reward_id)
|
||||||
|
|
||||||
if heroList:
|
if heroList:
|
||||||
hero_data = self.game_data.item.get_hero_log(req_data.user_id, x.user_common_reward_id)
|
hero_data = await self.data.item.get_hero_log(req_data.user_id, x.user_common_reward_id)
|
||||||
if hero_data is None:
|
if hero_data is None:
|
||||||
self.logger.error(f"Failed to find hero {x.user_common_reward_id} for user {req_data.user_id}!")
|
self.logger.error(f"Failed to find hero {x.user_common_reward_id} for user {req_data.user_id}!")
|
||||||
continue
|
continue
|
||||||
|
|
||||||
equipment_exp = int(hero_data["log_exp"]) + int(synthesize_equipment_data["enhancement_exp"])
|
equipment_exp = int(hero_data["log_exp"]) + int(synthesize_equipment_data["enhancement_exp"])
|
||||||
self.game_data.item.remove_hero_log(req_data.user_id, x.user_common_reward_id)
|
await self.data.item.remove_hero_log(req_data.user_id, x.user_common_reward_id)
|
||||||
|
|
||||||
if equipment_exp == 0:
|
if equipment_exp == 0:
|
||||||
self.logger.warn(f"Common reward {x.user_common_reward_id} (type {x.common_reward_type}) not found!")
|
self.logger.warn(f"Common reward {x.user_common_reward_id} (type {x.common_reward_type}) not found!")
|
||||||
continue
|
continue
|
||||||
|
|
||||||
self.game_data.item.put_equipment_data(req_data.user_id, int(req_data.origin_user_equipment_id), synthesize_equipment_data["enhancement_value"], equipment_exp, 0, 0, 0)
|
await self.data.item.put_equipment_data(req_data.user_id, int(req_data.origin_user_equipment_id), synthesize_equipment_data["enhancement_value"], equipment_exp, 0, 0, 0)
|
||||||
|
|
||||||
profile = self.game_data.profile.get_profile(req_data.user_id)
|
profile = await self.data.profile.get_profile(req_data.user_id)
|
||||||
new_col = int(profile["own_col"]) - 100
|
new_col = int(profile["own_col"]) - 100
|
||||||
|
|
||||||
# Update profile
|
# Update profile
|
||||||
|
|
||||||
self.game_data.profile.put_profile(
|
await self.data.profile.put_profile(
|
||||||
req_data.user_id,
|
req_data.user_id,
|
||||||
profile["user_type"],
|
profile["user_type"],
|
||||||
profile["nick_name"],
|
profile["nick_name"],
|
||||||
@ -389,7 +388,7 @@ class SaoBase:
|
|||||||
)
|
)
|
||||||
|
|
||||||
# Load the item again to push to the response handler
|
# Load the item again to push to the response handler
|
||||||
synthesize_equipment_data = self.game_data.item.get_user_equipment(req_data.user_id, req_data.origin_user_equipment_id)
|
synthesize_equipment_data = await self.data.item.get_user_equipment(req_data.user_id, req_data.origin_user_equipment_id)
|
||||||
|
|
||||||
resp = SaoSynthesizeEnhancementEquipmentResponse(header.cmd +1, synthesize_equipment_data)
|
resp = SaoSynthesizeEnhancementEquipmentResponse(header.cmd +1, synthesize_equipment_data)
|
||||||
return resp.make()
|
return resp.make()
|
||||||
@ -400,7 +399,7 @@ class SaoBase:
|
|||||||
party_hero_list = []
|
party_hero_list = []
|
||||||
|
|
||||||
for party_team in req_data.party_data_list[0].party_team_data_list:
|
for party_team in req_data.party_data_list[0].party_team_data_list:
|
||||||
hero_data = self.game_data.item.get_hero_log(req_data.user_id, party_team.user_hero_log_id)
|
hero_data = await self.data.item.get_hero_log(req_data.user_id, party_team.user_hero_log_id)
|
||||||
hero_level = 1
|
hero_level = 1
|
||||||
hero_exp = 0
|
hero_exp = 0
|
||||||
|
|
||||||
@ -408,7 +407,7 @@ class SaoBase:
|
|||||||
hero_level = hero_data["log_level"]
|
hero_level = hero_data["log_level"]
|
||||||
hero_exp = hero_data["log_exp"]
|
hero_exp = hero_data["log_exp"]
|
||||||
|
|
||||||
self.game_data.item.put_hero_log(
|
await self.data.item.put_hero_log(
|
||||||
req_data.user_id,
|
req_data.user_id,
|
||||||
party_team.user_hero_log_id,
|
party_team.user_hero_log_id,
|
||||||
hero_level,
|
hero_level,
|
||||||
@ -424,7 +423,7 @@ class SaoBase:
|
|||||||
|
|
||||||
party_hero_list.append(party_team.user_hero_log_id)
|
party_hero_list.append(party_team.user_hero_log_id)
|
||||||
|
|
||||||
self.game_data.item.put_hero_party(req_data.user_id, req_data.party_data_list[0].party_team_data_list[0].user_party_team_id, party_hero_list[0], party_hero_list[1], party_hero_list[2])
|
await self.data.item.put_hero_party(req_data.user_id, req_data.party_data_list[0].party_team_data_list[0].user_party_team_id, party_hero_list[0], party_hero_list[1], party_hero_list[2])
|
||||||
|
|
||||||
resp = SaoNoopResponse(header.cmd +1)
|
resp = SaoNoopResponse(header.cmd +1)
|
||||||
return resp.make()
|
return resp.make()
|
||||||
@ -434,9 +433,9 @@ class SaoBase:
|
|||||||
req_data = SaoEpisodePlayStartRequest(header, request)
|
req_data = SaoEpisodePlayStartRequest(header, request)
|
||||||
|
|
||||||
user_id = req_data.user_id
|
user_id = req_data.user_id
|
||||||
profile_data = self.game_data.profile.get_profile(user_id)
|
profile_data = await self.data.profile.get_profile(user_id)
|
||||||
|
|
||||||
self.game_data.item.create_session(
|
await self.data.item.create_session(
|
||||||
user_id,
|
user_id,
|
||||||
int(req_data.play_start_request_data[0].user_party_id),
|
int(req_data.play_start_request_data[0].user_party_id),
|
||||||
req_data.episode_id,
|
req_data.episode_id,
|
||||||
@ -461,7 +460,7 @@ class SaoBase:
|
|||||||
total_damage = req_data.play_end_request_data_list[0].score_data_list[0].total_damage
|
total_damage = req_data.play_end_request_data_list[0].score_data_list[0].total_damage
|
||||||
concurrent_destroying_num = req_data.play_end_request_data_list[0].score_data_list[0].concurrent_destroying_num
|
concurrent_destroying_num = req_data.play_end_request_data_list[0].score_data_list[0].concurrent_destroying_num
|
||||||
|
|
||||||
profile = self.game_data.profile.get_profile(user_id)
|
profile = await self.data.profile.get_profile(user_id)
|
||||||
vp = int(profile["own_vp"])
|
vp = int(profile["own_vp"])
|
||||||
exp = int(profile["rank_exp"]) + 100 #always 100 extra exp for some reason
|
exp = int(profile["rank_exp"]) + 100 #always 100 extra exp for some reason
|
||||||
col = int(profile["own_col"]) + int(req_data.play_end_request_data_list[0].base_get_data_list[0].get_col)
|
col = int(profile["own_col"]) + int(req_data.play_end_request_data_list[0].base_get_data_list[0].get_col)
|
||||||
@ -480,10 +479,10 @@ class SaoBase:
|
|||||||
episode_id = int(episode_id) + int(stage_id)
|
episode_id = int(episode_id) + int(stage_id)
|
||||||
|
|
||||||
# Match episode_id with the questSceneId saved in the DB through sortNo
|
# Match episode_id with the questSceneId saved in the DB through sortNo
|
||||||
questId = self.game_data.static.get_quests_id(episode_id)
|
questId = await self.data.static.get_quests_id(episode_id)
|
||||||
episode_id = questId[2]
|
episode_id = questId[2]
|
||||||
|
|
||||||
self.game_data.item.put_player_quest(user_id, episode_id, quest_clear_flag, clear_time, combo_num, total_damage, concurrent_destroying_num)
|
await self.data.item.put_player_quest(user_id, episode_id, quest_clear_flag, clear_time, combo_num, total_damage, concurrent_destroying_num)
|
||||||
|
|
||||||
vp = int(profile["own_vp"]) + 10 #always 10 VP per cleared stage
|
vp = int(profile["own_vp"]) + 10 #always 10 VP per cleared stage
|
||||||
|
|
||||||
@ -506,7 +505,7 @@ class SaoBase:
|
|||||||
break
|
break
|
||||||
|
|
||||||
# Update profile
|
# Update profile
|
||||||
updated_profile = self.game_data.profile.put_profile(
|
updated_profile = await self.data.profile.put_profile(
|
||||||
user_id,
|
user_id,
|
||||||
profile["user_type"],
|
profile["user_type"],
|
||||||
profile["nick_name"],
|
profile["nick_name"],
|
||||||
@ -519,8 +518,8 @@ class SaoBase:
|
|||||||
)
|
)
|
||||||
|
|
||||||
# Update heroes from the used party
|
# Update heroes from the used party
|
||||||
play_session = self.game_data.item.get_session(user_id)
|
play_session = await self.data.item.get_session(user_id)
|
||||||
session_party = self.game_data.item.get_hero_party(user_id, play_session["user_party_team_id"])
|
session_party = await self.data.item.get_hero_party(user_id, play_session["user_party_team_id"])
|
||||||
|
|
||||||
hero_list = []
|
hero_list = []
|
||||||
hero_list.append(session_party["user_hero_log_id_1"])
|
hero_list.append(session_party["user_hero_log_id_1"])
|
||||||
@ -528,7 +527,7 @@ class SaoBase:
|
|||||||
hero_list.append(session_party["user_hero_log_id_3"])
|
hero_list.append(session_party["user_hero_log_id_3"])
|
||||||
|
|
||||||
for i in range(0,len(hero_list)):
|
for i in range(0,len(hero_list)):
|
||||||
hero_data = self.game_data.item.get_hero_log(user_id, hero_list[i])
|
hero_data = await self.data.item.get_hero_log(user_id, hero_list[i])
|
||||||
|
|
||||||
log_exp = int(hero_data["log_exp"]) + int(req_data.play_end_request_data_list[0].base_get_data_list[0].get_hero_log_exp)
|
log_exp = int(hero_data["log_exp"]) + int(req_data.play_end_request_data_list[0].base_get_data_list[0].get_hero_log_exp)
|
||||||
|
|
||||||
@ -549,7 +548,7 @@ class SaoBase:
|
|||||||
hero_level = int(data[e][0])
|
hero_level = int(data[e][0])
|
||||||
break
|
break
|
||||||
|
|
||||||
self.game_data.item.put_hero_log(
|
await self.data.item.put_hero_log(
|
||||||
user_id,
|
user_id,
|
||||||
hero_data["user_hero_log_id"],
|
hero_data["user_hero_log_id"],
|
||||||
hero_level,
|
hero_level,
|
||||||
@ -567,19 +566,19 @@ class SaoBase:
|
|||||||
json_data = {"data": []}
|
json_data = {"data": []}
|
||||||
|
|
||||||
for r in range(0,req_data.play_end_request_data_list[0].get_rare_drop_data_count):
|
for r in range(0,req_data.play_end_request_data_list[0].get_rare_drop_data_count):
|
||||||
rewardList = self.game_data.static.get_rare_drop_id(int(req_data.play_end_request_data_list[0].get_rare_drop_data_list[r].quest_rare_drop_id))
|
rewardList = await self.data.static.get_rare_drop_id(int(req_data.play_end_request_data_list[0].get_rare_drop_data_list[r].quest_rare_drop_id))
|
||||||
commonRewardId = rewardList["commonRewardId"]
|
commonRewardId = rewardList["commonRewardId"]
|
||||||
|
|
||||||
heroList = self.game_data.static.get_hero_id(commonRewardId)
|
heroList = await self.data.static.get_hero_id(commonRewardId)
|
||||||
equipmentList = self.game_data.static.get_equipment_id(commonRewardId)
|
equipmentList = await self.data.static.get_equipment_id(commonRewardId)
|
||||||
itemList = self.game_data.static.get_item_id(commonRewardId)
|
itemList = await self.data.static.get_item_id(commonRewardId)
|
||||||
|
|
||||||
if heroList:
|
if heroList:
|
||||||
self.game_data.item.put_hero_log(user_id, commonRewardId, 1, 0, 101000016, 0, 30086, 1001, 1002, 0, 0)
|
await self.data.item.put_hero_log(user_id, commonRewardId, 1, 0, 101000016, 0, 30086, 1001, 1002, 0, 0)
|
||||||
if equipmentList:
|
if equipmentList:
|
||||||
self.game_data.item.put_equipment_data(user_id, commonRewardId, 1, 200, 0, 0, 0)
|
await self.data.item.put_equipment_data(user_id, commonRewardId, 1, 200, 0, 0, 0)
|
||||||
if itemList:
|
if itemList:
|
||||||
self.game_data.item.put_item(user_id, commonRewardId)
|
await self.data.item.put_item(user_id, commonRewardId)
|
||||||
|
|
||||||
# Generate random hero(es) based off the response
|
# Generate random hero(es) based off the response
|
||||||
for a in range(0,req_data.play_end_request_data_list[0].get_unanalyzed_log_tmp_reward_data_count):
|
for a in range(0,req_data.play_end_request_data_list[0].get_unanalyzed_log_tmp_reward_data_count):
|
||||||
@ -588,21 +587,21 @@ class SaoBase:
|
|||||||
data_unanalyzed = list(DictReader(f, fieldnames=keys_unanalyzed))
|
data_unanalyzed = list(DictReader(f, fieldnames=keys_unanalyzed))
|
||||||
|
|
||||||
randomized_unanalyzed_id = choice(data_unanalyzed)
|
randomized_unanalyzed_id = choice(data_unanalyzed)
|
||||||
heroList = self.game_data.static.get_hero_id(randomized_unanalyzed_id['CommonRewardId'])
|
heroList = await self.data.static.get_hero_id(randomized_unanalyzed_id['CommonRewardId'])
|
||||||
equipmentList = self.game_data.static.get_equipment_id(randomized_unanalyzed_id['CommonRewardId'])
|
equipmentList = await self.data.static.get_equipment_id(randomized_unanalyzed_id['CommonRewardId'])
|
||||||
itemList = self.game_data.static.get_item_id(randomized_unanalyzed_id['CommonRewardId'])
|
itemList = await self.data.static.get_item_id(randomized_unanalyzed_id['CommonRewardId'])
|
||||||
if heroList:
|
if heroList:
|
||||||
self.game_data.item.put_hero_log(user_id, randomized_unanalyzed_id['CommonRewardId'], 1, 0, 101000016, 0, 30086, 1001, 1002, 0, 0)
|
await self.data.item.put_hero_log(user_id, randomized_unanalyzed_id['CommonRewardId'], 1, 0, 101000016, 0, 30086, 1001, 1002, 0, 0)
|
||||||
if equipmentList:
|
if equipmentList:
|
||||||
self.game_data.item.put_equipment_data(user_id, randomized_unanalyzed_id['CommonRewardId'], 1, 200, 0, 0, 0)
|
await self.data.item.put_equipment_data(user_id, randomized_unanalyzed_id['CommonRewardId'], 1, 200, 0, 0, 0)
|
||||||
if itemList:
|
if itemList:
|
||||||
self.game_data.item.put_item(user_id, randomized_unanalyzed_id['CommonRewardId'])
|
await self.data.item.put_item(user_id, randomized_unanalyzed_id['CommonRewardId'])
|
||||||
|
|
||||||
json_data["data"].append(randomized_unanalyzed_id['CommonRewardId'])
|
json_data["data"].append(randomized_unanalyzed_id['CommonRewardId'])
|
||||||
|
|
||||||
# Send response
|
# Send response
|
||||||
|
|
||||||
self.game_data.item.create_end_session(user_id, episode_id, quest_clear_flag, json_data["data"])
|
await self.data.item.create_end_session(user_id, episode_id, quest_clear_flag, json_data["data"])
|
||||||
|
|
||||||
resp = SaoEpisodePlayEndResponse(header.cmd +1)
|
resp = SaoEpisodePlayEndResponse(header.cmd +1)
|
||||||
return resp.make()
|
return resp.make()
|
||||||
@ -613,9 +612,9 @@ class SaoBase:
|
|||||||
|
|
||||||
user_id = req_data.user_id
|
user_id = req_data.user_id
|
||||||
floor_id = req_data.trial_tower_id
|
floor_id = req_data.trial_tower_id
|
||||||
profile_data = self.game_data.profile.get_profile(user_id)
|
profile_data = await self.data.profile.get_profile(user_id)
|
||||||
|
|
||||||
self.game_data.item.create_session(
|
await self.data.item.create_session(
|
||||||
user_id,
|
user_id,
|
||||||
int(req_data.play_start_request_data[0].user_party_id),
|
int(req_data.play_start_request_data[0].user_party_id),
|
||||||
req_data.trial_tower_id,
|
req_data.trial_tower_id,
|
||||||
@ -671,16 +670,16 @@ class SaoBase:
|
|||||||
trial_tower_id = trial_tower_id + 3000
|
trial_tower_id = trial_tower_id + 3000
|
||||||
next_tower_id = trial_tower_id + 1
|
next_tower_id = trial_tower_id + 1
|
||||||
|
|
||||||
self.game_data.item.put_player_quest(user_id, trial_tower_id, quest_clear_flag, clear_time, combo_num, total_damage, concurrent_destroying_num)
|
await self.data.item.put_player_quest(user_id, trial_tower_id, quest_clear_flag, clear_time, combo_num, total_damage, concurrent_destroying_num)
|
||||||
|
|
||||||
# Check if next stage is already done
|
# Check if next stage is already done
|
||||||
checkQuest = self.game_data.item.get_quest_log(user_id, next_tower_id)
|
checkQuest = await self.data.item.get_quest_log(user_id, next_tower_id)
|
||||||
if not checkQuest:
|
if not checkQuest:
|
||||||
if next_tower_id != 3101:
|
if next_tower_id != 3101:
|
||||||
self.game_data.item.put_player_quest(user_id, next_tower_id, 0, 0, 0, 0, 0)
|
await self.data.item.put_player_quest(user_id, next_tower_id, 0, 0, 0, 0, 0)
|
||||||
|
|
||||||
# Update the profile
|
# Update the profile
|
||||||
profile = self.game_data.profile.get_profile(user_id)
|
profile = await self.data.profile.get_profile(user_id)
|
||||||
|
|
||||||
exp = int(profile["rank_exp"]) + 100 #always 100 extra exp for some reason
|
exp = int(profile["rank_exp"]) + 100 #always 100 extra exp for some reason
|
||||||
col = int(profile["own_col"]) + int(req_data.play_end_request_data_list[0].base_get_data_list[0].get_col)
|
col = int(profile["own_col"]) + int(req_data.play_end_request_data_list[0].base_get_data_list[0].get_col)
|
||||||
@ -702,7 +701,7 @@ class SaoBase:
|
|||||||
player_level = int(data[i][0])
|
player_level = int(data[i][0])
|
||||||
break
|
break
|
||||||
|
|
||||||
updated_profile = self.game_data.profile.put_profile(
|
updated_profile = await self.data.profile.put_profile(
|
||||||
user_id,
|
user_id,
|
||||||
profile["user_type"],
|
profile["user_type"],
|
||||||
profile["nick_name"],
|
profile["nick_name"],
|
||||||
@ -715,8 +714,8 @@ class SaoBase:
|
|||||||
)
|
)
|
||||||
|
|
||||||
# Update heroes from the used party
|
# Update heroes from the used party
|
||||||
play_session = self.game_data.item.get_session(user_id)
|
play_session = await self.data.item.get_session(user_id)
|
||||||
session_party = self.game_data.item.get_hero_party(user_id, play_session["user_party_team_id"])
|
session_party = await self.data.item.get_hero_party(user_id, play_session["user_party_team_id"])
|
||||||
|
|
||||||
hero_list = []
|
hero_list = []
|
||||||
hero_list.append(session_party["user_hero_log_id_1"])
|
hero_list.append(session_party["user_hero_log_id_1"])
|
||||||
@ -724,7 +723,7 @@ class SaoBase:
|
|||||||
hero_list.append(session_party["user_hero_log_id_3"])
|
hero_list.append(session_party["user_hero_log_id_3"])
|
||||||
|
|
||||||
for i in range(0,len(hero_list)):
|
for i in range(0,len(hero_list)):
|
||||||
hero_data = self.game_data.item.get_hero_log(user_id, hero_list[i])
|
hero_data = await self.data.item.get_hero_log(user_id, hero_list[i])
|
||||||
|
|
||||||
log_exp = int(hero_data["log_exp"]) + int(req_data.play_end_request_data_list[0].base_get_data_list[0].get_hero_log_exp)
|
log_exp = int(hero_data["log_exp"]) + int(req_data.play_end_request_data_list[0].base_get_data_list[0].get_hero_log_exp)
|
||||||
|
|
||||||
@ -745,7 +744,7 @@ class SaoBase:
|
|||||||
hero_level = int(data[e][0])
|
hero_level = int(data[e][0])
|
||||||
break
|
break
|
||||||
|
|
||||||
self.game_data.item.put_hero_log(
|
await self.data.item.put_hero_log(
|
||||||
user_id,
|
user_id,
|
||||||
hero_data["user_hero_log_id"],
|
hero_data["user_hero_log_id"],
|
||||||
hero_level,
|
hero_level,
|
||||||
@ -763,19 +762,19 @@ class SaoBase:
|
|||||||
|
|
||||||
# Grab the rare loot from the table, match it with the right item and then push to the player profile
|
# Grab the rare loot from the table, match it with the right item and then push to the player profile
|
||||||
for x in req_data.play_end_request_data_list[0].get_rare_drop_data_list:
|
for x in req_data.play_end_request_data_list[0].get_rare_drop_data_list:
|
||||||
rewardList = self.game_data.static.get_rare_drop_id(int(x.quest_rare_drop_id))
|
rewardList = await self.data.static.get_rare_drop_id(int(x.quest_rare_drop_id))
|
||||||
commonRewardId = rewardList["commonRewardId"]
|
commonRewardId = rewardList["commonRewardId"]
|
||||||
|
|
||||||
heroList = self.game_data.static.get_hero_id(commonRewardId)
|
heroList = await self.data.static.get_hero_id(commonRewardId)
|
||||||
equipmentList = self.game_data.static.get_equipment_id(commonRewardId)
|
equipmentList = await self.data.static.get_equipment_id(commonRewardId)
|
||||||
itemList = self.game_data.static.get_item_id(commonRewardId)
|
itemList = await self.data.static.get_item_id(commonRewardId)
|
||||||
|
|
||||||
if heroList:
|
if heroList:
|
||||||
self.game_data.item.put_hero_log(user_id, commonRewardId, 1, 0, 101000016, 0, 30086, 1001, 1002, 0, 0)
|
await self.data.item.put_hero_log(user_id, commonRewardId, 1, 0, 101000016, 0, 30086, 1001, 1002, 0, 0)
|
||||||
if equipmentList:
|
if equipmentList:
|
||||||
self.game_data.item.put_equipment_data(user_id, commonRewardId, 1, 200, 0, 0, 0)
|
await self.data.item.put_equipment_data(user_id, commonRewardId, 1, 200, 0, 0, 0)
|
||||||
if itemList:
|
if itemList:
|
||||||
self.game_data.item.put_item(user_id, commonRewardId)
|
await self.data.item.put_item(user_id, commonRewardId)
|
||||||
|
|
||||||
# Generate random hero(es) based off the response
|
# Generate random hero(es) based off the response
|
||||||
for x in req_data.play_end_request_data_list[0].get_unanalyzed_log_tmp_reward_data_list:
|
for x in req_data.play_end_request_data_list[0].get_unanalyzed_log_tmp_reward_data_list:
|
||||||
@ -788,21 +787,21 @@ class SaoBase:
|
|||||||
while int(randomized_unanalyzed_id['UnanalyzedLogGradeId']) != x.unanalyzed_log_grade_id:
|
while int(randomized_unanalyzed_id['UnanalyzedLogGradeId']) != x.unanalyzed_log_grade_id:
|
||||||
randomized_unanalyzed_id = choice(data_unanalyzed)
|
randomized_unanalyzed_id = choice(data_unanalyzed)
|
||||||
|
|
||||||
heroList = self.game_data.static.get_hero_id(randomized_unanalyzed_id['CommonRewardId'])
|
heroList = await self.data.static.get_hero_id(randomized_unanalyzed_id['CommonRewardId'])
|
||||||
equipmentList = self.game_data.static.get_equipment_id(randomized_unanalyzed_id['CommonRewardId'])
|
equipmentList = await self.data.static.get_equipment_id(randomized_unanalyzed_id['CommonRewardId'])
|
||||||
itemList = self.game_data.static.get_item_id(randomized_unanalyzed_id['CommonRewardId'])
|
itemList = await self.data.static.get_item_id(randomized_unanalyzed_id['CommonRewardId'])
|
||||||
if heroList:
|
if heroList:
|
||||||
self.game_data.item.put_hero_log(user_id, randomized_unanalyzed_id['CommonRewardId'], 1, 0, 101000016, 0, 30086, 1001, 1002, 0, 0)
|
await self.data.item.put_hero_log(user_id, randomized_unanalyzed_id['CommonRewardId'], 1, 0, 101000016, 0, 30086, 1001, 1002, 0, 0)
|
||||||
if equipmentList:
|
if equipmentList:
|
||||||
self.game_data.item.put_equipment_data(user_id, randomized_unanalyzed_id['CommonRewardId'], 1, 200, 0, 0, 0)
|
await self.data.item.put_equipment_data(user_id, randomized_unanalyzed_id['CommonRewardId'], 1, 200, 0, 0, 0)
|
||||||
if itemList:
|
if itemList:
|
||||||
self.game_data.item.put_item(user_id, randomized_unanalyzed_id['CommonRewardId'])
|
await self.data.item.put_item(user_id, randomized_unanalyzed_id['CommonRewardId'])
|
||||||
|
|
||||||
json_data["data"].append(randomized_unanalyzed_id['CommonRewardId'])
|
json_data["data"].append(randomized_unanalyzed_id['CommonRewardId'])
|
||||||
|
|
||||||
# Send response
|
# Send response
|
||||||
|
|
||||||
self.game_data.item.create_end_session(user_id, trial_tower_id, quest_clear_flag, json_data["data"])
|
await self.data.item.create_end_session(user_id, trial_tower_id, quest_clear_flag, json_data["data"])
|
||||||
|
|
||||||
resp = SaoTrialTowerPlayEndResponse(header.cmd +1)
|
resp = SaoTrialTowerPlayEndResponse(header.cmd +1)
|
||||||
return resp.make()
|
return resp.make()
|
||||||
@ -812,7 +811,7 @@ class SaoBase:
|
|||||||
|
|
||||||
req = SaoEpisodePlayEndUnanalyzedLogFixedRequest(header, request)
|
req = SaoEpisodePlayEndUnanalyzedLogFixedRequest(header, request)
|
||||||
|
|
||||||
end_session_data = self.game_data.item.get_end_session(req.user_id)
|
end_session_data = await self.data.item.get_end_session(req.user_id)
|
||||||
|
|
||||||
resp = SaoEpisodePlayEndUnanalyzedLogFixedResponse(header.cmd +1, end_session_data[4])
|
resp = SaoEpisodePlayEndUnanalyzedLogFixedResponse(header.cmd +1, end_session_data[4])
|
||||||
return resp.make()
|
return resp.make()
|
||||||
@ -821,7 +820,7 @@ class SaoBase:
|
|||||||
#quest/trial_tower_play_end_unanalyzed_log_fixed
|
#quest/trial_tower_play_end_unanalyzed_log_fixed
|
||||||
req = TrialTowerPlayEndUnanalyzedLogFixed(header, request)
|
req = TrialTowerPlayEndUnanalyzedLogFixed(header, request)
|
||||||
|
|
||||||
end_session_data = self.game_data.item.get_end_session(req.user_id)
|
end_session_data = await self.data.item.get_end_session(req.user_id)
|
||||||
|
|
||||||
resp = SaoEpisodePlayEndUnanalyzedLogFixedResponse(header.cmd +1, end_session_data[4])
|
resp = SaoEpisodePlayEndUnanalyzedLogFixedResponse(header.cmd +1, end_session_data[4])
|
||||||
return resp.make()
|
return resp.make()
|
||||||
|
Loading…
Reference in New Issue
Block a user