mirror of
https://gitea.tendokyu.moe/Dniel97/artemis.git
synced 2026-10-06 00:47:55 +03:00
Merge branch 'master' into idac
This commit is contained in:
@@ -107,21 +107,21 @@ class IDACSeason2BootController:
|
||||
req = self.RequestBootGetGachaData.model_validate(data)
|
||||
req_headers = RequestSeason2Headers.model_validate(headers)
|
||||
|
||||
ver = self._headers_to_version(req_headers)
|
||||
device_version = self._headers_to_version(req_headers)
|
||||
|
||||
# TODO: properly set the domain name
|
||||
hostname = "sega-initiald.net"
|
||||
|
||||
if self.core_cfg.server.is_using_proxy:
|
||||
domain_api_game = f"http://{hostname}/{ver}/"
|
||||
domain_api_game = f"http://{hostname}/{device_version}/"
|
||||
else:
|
||||
domain_api_game = (
|
||||
f"http://{hostname}:{Utils.get_title_port(self.core_cfg)}/{ver}/"
|
||||
f"http://{hostname}:{Utils.get_title_port(self.core_cfg)}/{device_version}/"
|
||||
)
|
||||
|
||||
# sets the special mode data if the version supports the special mode
|
||||
special_mode_data = None
|
||||
special_story_type = self._special_story_type(ver)
|
||||
special_story_type = self._special_story_type(device_version)
|
||||
if special_story_type != StoryTypeEnum.NONE:
|
||||
special_mode_data = ResponseSeason2BootGetConfigData.SpecialModeData(
|
||||
start_dt=datetime(2023, 1, 1),
|
||||
@@ -130,8 +130,8 @@ class IDACSeason2BootController:
|
||||
)
|
||||
|
||||
battle_gift_event = []
|
||||
if ver in self.battle_gift_event:
|
||||
battle_gift_event_data = self.battle_gift_event.get(ver, {})
|
||||
if device_version in self.battle_gift_event:
|
||||
battle_gift_event_data = self.battle_gift_event.get(device_version, {})
|
||||
# check if battle gift event time is valid
|
||||
start_dt = battle_gift_event_data.start_dt
|
||||
end_dt = battle_gift_event_data.end_dt
|
||||
@@ -140,8 +140,8 @@ class IDACSeason2BootController:
|
||||
battle_gift_event = [battle_gift_event_data]
|
||||
|
||||
stamp_info: list[ResponseSeason2BootGetConfigData.StampInfo] = []
|
||||
if ver in self.stamp_info:
|
||||
stamp_info_data = self.stamp_info.get(ver, [])
|
||||
if device_version in self.stamp_info:
|
||||
stamp_info_data = self.stamp_info.get(device_version, [])
|
||||
# check if stamp event time is valid
|
||||
start_dt = self.game_cfg.stamp.open_dt
|
||||
end_dt = self.game_cfg.stamp.close_dt
|
||||
@@ -256,7 +256,7 @@ class IDACSeason2BootController:
|
||||
theory_open_version="1.40.00",
|
||||
# unlocks the version specific special mode
|
||||
special_mode_data=special_mode_data,
|
||||
timetrial_event_data=self.timetrial_event.get(ver, None),
|
||||
timetrial_event_data=self.timetrial_event.get(device_version, None),
|
||||
number_lottery_data=number_lottery_data,
|
||||
)
|
||||
|
||||
@@ -298,9 +298,9 @@ class IDACSeason2BootController:
|
||||
path = "./titles/idac/data/"
|
||||
|
||||
# 1.00.00 is default
|
||||
ver = self._headers_to_version(req_headers)
|
||||
device_version = self._headers_to_version(req_headers)
|
||||
|
||||
timerelease_filename = f"timeRelease_v{ver:04d}"
|
||||
timerelease_filename = f"timeRelease_v{device_version:04d}"
|
||||
timerelease_path = f"{path}{timerelease_filename}.json"
|
||||
|
||||
# if the file doesn't exist, try to find the next lowest version
|
||||
@@ -316,7 +316,7 @@ class IDACSeason2BootController:
|
||||
|
||||
self.logger.debug(f"Using time release file: {timerelease_filename}")
|
||||
# load the time release data
|
||||
with open(f"{path}{timerelease_filename}.json", encoding="utf-8") as f:
|
||||
with open(timerelease_path, encoding="utf-8") as f:
|
||||
time_release_data = f.read()
|
||||
|
||||
resp = self.ResponseBootGetTimeReleaseData.model_validate_json(
|
||||
|
||||
@@ -216,7 +216,7 @@ class IDACSeason2UserController:
|
||||
req = self.RequestUserGetData.model_validate(data)
|
||||
|
||||
user_id = req_headers.session
|
||||
ver_str = self._headers_to_version(req_headers)
|
||||
device_version = self._headers_to_version(req_headers)
|
||||
|
||||
# get the user's profile, can never be None
|
||||
profile_dto = await self.user_service.get_profile(user_id)
|
||||
@@ -261,8 +261,8 @@ class IDACSeason2UserController:
|
||||
|
||||
battle_gift_data: list[BattleGift] = []
|
||||
# check if the battle gift event is active
|
||||
if ver_str in self.game_cfg.battle_gift_info:
|
||||
battle_gift_info = self.game_cfg.battle_gift_info[ver_str]
|
||||
if device_version in self.game_cfg.battle_gift_info:
|
||||
battle_gift_info = self.game_cfg.battle_gift_info[device_version]
|
||||
# get the users battle gifts, for the current active battle gift event
|
||||
battle_gifts = await self.user_service.get_profile_battle_gifts(
|
||||
user_id, battle_gift_info.battle_gift_event_id
|
||||
@@ -347,7 +347,7 @@ class IDACSeason2UserController:
|
||||
vs_info_data = await self.user_service.get_profile_vs_info(user_id)
|
||||
|
||||
stamp_event_data: list[Season2StampEvent] = []
|
||||
for active_stamp in self.game_cfg.stamp_info.get(ver_str, []):
|
||||
for active_stamp in self.game_cfg.stamp_info.get(device_version, []):
|
||||
# check if the user has the stamp already played
|
||||
stamp_dto = await self.user_service.get_profile_stamp(
|
||||
user_id, active_stamp.m_stamp_event_id
|
||||
@@ -389,8 +389,8 @@ class IDACSeason2UserController:
|
||||
|
||||
# get the user's timetrial event data
|
||||
timetrial_event_data: Optional[TimetrialEventData2] = None
|
||||
if ver_str in self.game_cfg.timetrial_info:
|
||||
timetrial_info = self.game_cfg.timetrial_info[ver_str]
|
||||
if device_version in self.game_cfg.timetrial_info:
|
||||
timetrial_info = self.game_cfg.timetrial_info[device_version]
|
||||
|
||||
timetrial_dto = await self.user_service.get_profile_timetrial_event(
|
||||
user_id, timetrial_info.timetrial_event_id
|
||||
@@ -575,7 +575,7 @@ class IDACSeason2UserController:
|
||||
req_headers = RequestSeason2UserHeaders.model_validate(headers)
|
||||
req = self.RequestUserUpdateTimeTrialResult.model_validate(data)
|
||||
|
||||
ver_str = self._headers_to_version(req_headers)
|
||||
device_version = self._headers_to_version(req_headers)
|
||||
|
||||
user_id = req_headers.session
|
||||
|
||||
@@ -628,9 +628,9 @@ class IDACSeason2UserController:
|
||||
|
||||
# update timetrial event points (if event is active)
|
||||
timetrial_event_data: Optional[TimetrialEventData_2] = None
|
||||
if ver_str in self.game_cfg.timetrial_info:
|
||||
if device_version in self.game_cfg.timetrial_info:
|
||||
timetrial_event_id = self.game_cfg.timetrial_info[
|
||||
ver_str
|
||||
device_version
|
||||
].timetrial_event_id
|
||||
|
||||
timetrial_event_data = TimetrialEventData_2(
|
||||
|
||||
Reference in New Issue
Block a user