2023-03-09 16:50:11 +00:00
|
|
|
from titles.diva.handlers.base import (
|
|
|
|
BaseRequest,
|
|
|
|
BaseResponse,
|
|
|
|
DivaRequestParseException,
|
|
|
|
)
|
|
|
|
|
2023-02-26 04:40:50 +00:00
|
|
|
|
|
|
|
class PreStartRequest(BaseRequest):
|
|
|
|
pmm: str
|
|
|
|
idm: str
|
|
|
|
mmgameid: str
|
|
|
|
mmuid: str
|
|
|
|
a_code: str
|
|
|
|
aime_id: str
|
|
|
|
aime_a_code: str
|
2023-03-09 16:50:11 +00:00
|
|
|
|
2023-02-26 04:40:50 +00:00
|
|
|
def __init__(self, raw: str) -> None:
|
|
|
|
super().__init__(raw)
|
|
|
|
try:
|
|
|
|
self.key_obj_type = int(self.key_obj_type)
|
|
|
|
self.exec_vu = int(self.exec_vu)
|
|
|
|
|
|
|
|
except AttributeError as e:
|
|
|
|
raise DivaRequestParseException(f"PreStartRequest: {e}")
|
|
|
|
|
2023-03-09 16:50:11 +00:00
|
|
|
|
2023-02-26 04:40:50 +00:00
|
|
|
class PreStartResponse(BaseResponse):
|
|
|
|
player_name: str
|
|
|
|
sort_kind: str
|
|
|
|
lv_efct_id: str
|
|
|
|
lv_plt_id: str
|
|
|
|
lv_str: str
|
|
|
|
lv_num: str
|
|
|
|
lv_pnt: str
|
|
|
|
vcld_pts: str
|
|
|
|
skn_eqp: str
|
|
|
|
btn_se_eqp: str
|
|
|
|
sld_se_eqp: str
|
|
|
|
chn_sld_se_eqp: str
|
|
|
|
sldr_tch_se_eqp: str
|
|
|
|
passwd_stat: str
|
|
|
|
mdl_eqp_tm: str
|
2023-03-09 16:50:11 +00:00
|
|
|
|
2023-02-26 04:40:50 +00:00
|
|
|
def __init__(self, cmd_id: str, req_id: int, pd_id: int) -> None:
|
2023-03-09 16:50:11 +00:00
|
|
|
super().__init__(cmd_id, req_id)
|
|
|
|
self.ps_result = 1
|
2023-02-26 04:40:50 +00:00
|
|
|
self.pd_id = pd_id
|
|
|
|
self.accept_idx = 100
|
|
|
|
self.nblss_ltt_stts = -1
|
|
|
|
self.nblss_ltt_tckt = -1
|
|
|
|
self.nblss_ltt_is_opn = -1
|
|
|
|
# Ideally this would be a real array that would get converted later
|
|
|
|
# But this is how it's stored in the db, so w/e for now
|
|
|
|
self.mdl_eqp_ary = "-999,-999,-999"
|
|
|
|
|
2023-03-09 16:50:11 +00:00
|
|
|
|
2023-02-26 04:40:50 +00:00
|
|
|
class StartRequest(BaseRequest):
|
|
|
|
def __init__(self, raw: str) -> None:
|
|
|
|
super().__init__(raw)
|
|
|
|
try:
|
|
|
|
self.pd_id = int(self.pd_id)
|
|
|
|
self.accept_idx = int(self.accept_idx)
|
|
|
|
|
|
|
|
except AttributeError as e:
|
|
|
|
raise DivaRequestParseException(f"StartRequest: {e}")
|
|
|
|
|
2023-03-09 16:50:11 +00:00
|
|
|
|
2023-02-26 04:40:50 +00:00
|
|
|
class StartResponse(BaseResponse):
|
|
|
|
def __init__(self, cmd_id: str, req_id: int) -> None:
|
|
|
|
super().__init__(cmd_id, req_id)
|