mirror of
https://gitea.tendokyu.moe/Hay1tsme/artemis.git
synced 2026-02-15 04:07:29 +08:00
diva: add stage_result, end handlers
This commit is contained in:
@@ -144,8 +144,8 @@ class AttendRequest(BaseRequest):
|
||||
self.is_bb = bool(int(self.power_on))
|
||||
|
||||
class AttendResponse(BaseResponse):
|
||||
def __init__(self, cmd_id: str, req_id: int) -> None:
|
||||
super().__init__(cmd_id, req_id)
|
||||
def __init__(self, req_id: int) -> None:
|
||||
super().__init__("attend", req_id)
|
||||
self.atnd_prm1 = [1] * 100
|
||||
self.atnd_prm2 = [1] * 100
|
||||
self.atnd_prm3 = [1] * 100
|
||||
@@ -177,8 +177,8 @@ class SpendCreditRequest(BaseRequest):
|
||||
raise DivaRequestParseException(f"StartRequest: {e}")
|
||||
|
||||
class SpendCreditResponse(BaseResponse):
|
||||
def __init__(self, cmd_id: str, req_id: int) -> None:
|
||||
super().__init__(cmd_id, req_id)
|
||||
def __init__(self, req_id: int) -> None:
|
||||
super().__init__("spend_credit", req_id)
|
||||
self.cmpgn_rslt = ",".join(["-1,-1,x,-1,-1,x,x,-1,x"] * 6)
|
||||
self.cmpgn_rslt_num = 0
|
||||
self.vcld_pts = 0
|
||||
|
||||
@@ -22,8 +22,138 @@ class GetPvPdRequest(BaseRequest):
|
||||
raise DivaRequestParseException(f"GetPvPdRequest: {e}")
|
||||
|
||||
class GetPvPdResponse(BaseResponse):
|
||||
def __init__(self, cmd_id: str, req_id: int) -> None:
|
||||
super().__init__(cmd_id, req_id)
|
||||
def __init__(self, req_id: int) -> None:
|
||||
super().__init__("get_pv_pd", req_id)
|
||||
self.pd_by_pv_id = ""
|
||||
self.pdddt_flg = 0
|
||||
self.pdddt_tm = parse.quote(datetime.now().strftime(DivaConstants.LUT_TIME_FMT))
|
||||
self.pdddt_tm = parse.quote(datetime.now().strftime(DivaConstants.LUT_TIME_FMT))
|
||||
|
||||
class StageResultRequest(BaseRequest):
|
||||
def __init__(self, raw: str | bytes) -> None:
|
||||
super().__init__(raw)
|
||||
try:
|
||||
self.pd_id = int(self.pd_id)
|
||||
self.accept_idx = int(self.accept_idx)
|
||||
self.start_idx = int(self.start_idx)
|
||||
self.hp_vol = int(self.hp_vol)
|
||||
self.btn_se_vol = int(self.btn_se_vol)
|
||||
self.btn_se_vol2 = int(self.btn_se_vol2)
|
||||
self.sldr_se_vol2 = int(self.sldr_se_vol2)
|
||||
self.use_pv_mdl_eqp = int(self.use_pv_mdl_eqp)
|
||||
self.vcld_pts = int(self.vcld_pts)
|
||||
self.nxt_pv_id = int(self.nxt_pv_id)
|
||||
self.nxt_dffclty = int(self.nxt_dffclty)
|
||||
self.nxt_edtn = int(self.nxt_edtn)
|
||||
self.sort_kind = int(self.sort_kind)
|
||||
self.nblss_ltt_stts = int(self.nblss_ltt_stts)
|
||||
self.nblss_ltt_tckt = int(self.nblss_ltt_tckt)
|
||||
self.free_play = int(self.free_play)
|
||||
self.game_type = int(self.game_type)
|
||||
self.ply_pv_id = int(self.ply_pv_id)
|
||||
self.ttl_vp_add = int(self.ttl_vp_add)
|
||||
self.ttl_vp_sub = int(self.ttl_vp_sub)
|
||||
self.continue_cnt = int(self.continue_cnt)
|
||||
self.cr_cid = int(self.cr_cid)
|
||||
self.cr_sc = int(self.cr_sc)
|
||||
self.cr_tv = int(self.cr_tv)
|
||||
self.cr_if = int(self.cr_if)
|
||||
|
||||
self.my_qst_id: List[int] = [int(x) for x in self.my_qst_id.split(",")]
|
||||
self.my_qst_sts: List[int] = [int(x) for x in self.my_qst_sts.split(",")]
|
||||
self.stg_difficulty: List[int] = [int(x) for x in self.stg_difficulty.split(",")]
|
||||
self.stg_edtn: List[int] = [int(x) for x in self.stg_edtn.split(",")]
|
||||
self.stg_ply_pv_id: List[int] = [int(x) for x in self.stg_ply_pv_id.split(",")]
|
||||
self.stg_sel_pv_id: List[int] = [int(x) for x in self.stg_sel_pv_id.split(",")]
|
||||
self.stg_scrpt_ver: List[int] = [int(x) for x in self.stg_scrpt_ver.split(",")]
|
||||
self.stg_score: List[int] = [int(x) for x in self.stg_score.split(",")]
|
||||
self.stg_chllng_kind: List[int] = [int(x) for x in self.stg_chllng_kind.split(",")]
|
||||
self.stg_chllng_result: List[int] = [int(x) for x in self.stg_chllng_result.split(",")]
|
||||
self.stg_clr_kind: List[int] = [int(x) for x in self.stg_clr_kind.split(",")]
|
||||
self.stg_vcld_pts: List[int] = [int(x) for x in self.stg_vcld_pts.split(",")]
|
||||
self.stg_cool_cnt: List[int] = [int(x) for x in self.stg_cool_cnt.split(",")]
|
||||
self.stg_cool_pct: List[int] = [int(x) for x in self.stg_cool_pct.split(",")]
|
||||
self.stg_fine_cnt: List[int] = [int(x) for x in self.stg_fine_cnt.split(",")]
|
||||
self.stg_fine_pct: List[int] = [int(x) for x in self.stg_fine_pct.split(",")]
|
||||
self.stg_safe_cnt: List[int] = [int(x) for x in self.stg_safe_cnt.split(",")]
|
||||
self.stg_safe_pct: List[int] = [int(x) for x in self.stg_safe_pct.split(",")]
|
||||
self.stg_sad_cnt: List[int] = [int(x) for x in self.stg_sad_cnt.split(",")]
|
||||
self.stg_sad_pct: List[int] = [int(x) for x in self.stg_sad_pct.split(",")]
|
||||
self.stg_wt_wg_cnt: List[int] = [int(x) for x in self.stg_wt_wg_cnt.split(",")]
|
||||
self.stg_wt_wg_pct: List[int] = [int(x) for x in self.stg_wt_wg_pct.split(",")]
|
||||
self.stg_max_cmb: List[int] = [int(x) for x in self.stg_max_cmb.split(",")]
|
||||
self.stg_chance_tm: List[int] = [int(x) for x in self.stg_chance_tm.split(",")]
|
||||
self.stg_sm_hl: List[int] = [int(x) for x in self.stg_sm_hl.split(",")]
|
||||
self.stg_atn_pnt: List[int] = [int(x) for x in self.stg_atn_pnt.split(",")]
|
||||
self.stg_skin_id: List[int] = [int(x) for x in self.stg_skin_id.split(",")]
|
||||
self.stg_btn_se: List[int] = [int(x) for x in self.stg_btn_se.split(",")]
|
||||
self.stg_btn_se_vol: List[int] = [int(x) for x in self.stg_btn_se_vol.split(",")]
|
||||
self.stg_sld_se: List[int] = [int(x) for x in self.stg_sld_se.split(",")]
|
||||
self.stg_chn_sld_se: List[int] = [int(x) for x in self.stg_chn_sld_se.split(",")]
|
||||
self.stg_sldr_tch_se: List[int] = [int(x) for x in self.stg_sldr_tch_se.split(",")]
|
||||
self.stg_mdl_id: List[int] = [int(x) for x in self.stg_mdl_id.split(",")]
|
||||
self.stg_sel_mdl_id: List[int] = [int(x) for x in self.stg_sel_mdl_id.split(",")]
|
||||
self.stg_rvl_pd_id: List[int] = [int(x) for x in self.stg_rvl_pd_id.split(",")]
|
||||
self.stg_rvl_wl: List[int] = [int(x) for x in self.stg_rvl_wl.split(",")]
|
||||
self.stg_cpt_rslt: List[int] = [int(x) for x in self.stg_cpt_rslt.split(",")]
|
||||
self.stg_sld_scr: List[int] = [int(x) for x in self.stg_sld_scr.split(",")]
|
||||
self.stg_is_sr_gm: List[int] = [int(x) for x in self.stg_is_sr_gm.split(",")]
|
||||
self.stg_pv_brnch_rslt: List[int] = [int(x) for x in self.stg_pv_brnch_rslt.split(",")]
|
||||
self.stg_vcl_chg: List[int] = [int(x) for x in self.stg_vcl_chg.split(",")]
|
||||
self.stg_c_itm_id: List[int] = [int(x) for x in self.stg_c_itm_id.split(",")]
|
||||
self.stg_ms_itm_flg: List[int] = [int(x) for x in self.stg_ms_itm_flg.split(",")]
|
||||
self.stg_rgo: List[int] = [int(x) for x in self.stg_rgo.split(",")]
|
||||
self.stg_ss_num: List[int] = [int(x) for x in self.stg_ss_num.split(",")]
|
||||
self.stg_is_cs_scs: List[int] = [int(x) for x in self.stg_is_cs_scs.split(",")]
|
||||
self.stg_is_nppg_use: List[int] = [int(x) for x in self.stg_is_nppg_use.split(",")]
|
||||
self.stg_p_std_lo_id: List[int] = [int(x) for x in self.stg_p_std_lo_id.split(",")]
|
||||
self.stg_p_std_is_to: List[int] = [int(x) for x in self.stg_p_std_is_to.split(",")]
|
||||
self.stg_p_std_is_ccu: List[int] = [int(x) for x in self.stg_p_std_is_ccu.split(",")]
|
||||
self.stg_p_std_is_tiu: List[int] = [int(x) for x in self.stg_p_std_is_tiu.split(",")]
|
||||
self.stg_p_std_is_iu: List[int] = [int(x) for x in self.stg_p_std_is_iu.split(",")]
|
||||
self.stg_p_std_is_npu: List[int] = [int(x) for x in self.stg_p_std_is_npu.split(",")]
|
||||
self.stg_p_std_is_du: List[int] = [int(x) for x in self.stg_p_std_is_du.split(",")]
|
||||
self.gu_cmd: List[int] = [int(x) for x in self.gu_cmd.split(",")]
|
||||
self.mdl_eqp_cmn_ary: List[int] = [int(x) for x in self.mdl_eqp_cmn_ary.split(",")]
|
||||
self.c_itm_eqp_cmn_ary: List[int] = [int(x) for x in self.c_itm_eqp_cmn_ary.split(",")]
|
||||
self.ms_itm_flg_cmn_ary: List[int] = [int(x) for x in self.ms_itm_flg_cmn_ary.split(",")]
|
||||
self.mdl_eqp_pv_ary: List[int] = [int(x) for x in self.mdl_eqp_pv_ary.split(",")]
|
||||
self.c_itm_eqp_pv_ary: List[int] = [int(x) for x in self.c_itm_eqp_pv_ary.split(",")]
|
||||
self.ms_itm_flg_pv_ary: List[int] = [int(x) for x in self.ms_itm_flg_pv_ary.split(",")]
|
||||
self.stg_mdl_s_sts: List[int] = [int(x) for x in self.stg_mdl_s_sts.split(",")]
|
||||
self.cr_sp: List[int] = [int(x) for x in parse.unquote(self.cr_sp).split(",")]
|
||||
|
||||
except AttributeError as e:
|
||||
raise DivaRequestParseException(f"StageResultRequest: {e}")
|
||||
|
||||
class StageResultResponse(BaseResponse):
|
||||
def __init__(self, req_id: int) -> None:
|
||||
super().__init__("stage_result", req_id)
|
||||
self.chllng_kind = -1
|
||||
self.lv_num_old = 0
|
||||
self.lv_pnt_old = 0
|
||||
self.lv_num = 0
|
||||
self.lv_str = 0
|
||||
self.lv_pnt = 0
|
||||
self.lv_efct_id = 0
|
||||
self.lv_plt_id = 0
|
||||
self.vcld_pts = 0
|
||||
self.prsnt_vcld_pts = 0
|
||||
self.cerwd_kind = -1
|
||||
self.cerwd_value = -1
|
||||
self.cerwd_str_0 = "***"
|
||||
self.cerwd_str_1 = "***"
|
||||
self.ttl_str_ary = "xxx,xxx,xxx,xxx,xxx"
|
||||
self.ttl_plt_id_ary = "xxx,xxx,xxx,xxx,xxx"
|
||||
self.ttl_desc_ary = "xxx,xxx,xxx,xxx,xxx"
|
||||
self.skin_id_ary = "xxx,xxx,xxx,xxx,xxx"
|
||||
self.skin_name_ary = "xxx,xxx,xxx,xxx,xxx"
|
||||
self.skin_illust_ary = "xxx,xxx,xxx,xxx,xxx"
|
||||
self.skin_desc_ary = "xxx,xxx,xxx,xxx,xxx"
|
||||
self.my_qst_id = "-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1"
|
||||
self.my_qst_r_qid = "-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1"
|
||||
self.my_qst_r_knd = "-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1"
|
||||
self.my_qst_r_vl = "-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1"
|
||||
self.my_qst_r_nflg = "-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1"
|
||||
self.my_ccd_r_qid = "-1,-1,-1,-1,-1"
|
||||
self.my_ccd_r_hnd = "-1,-1,-1,-1,-1"
|
||||
self.my_ccd_r_vp = "-1,-1,-1,-1,-1"
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
from typing import Union
|
||||
from titles.diva.handlers.base import (
|
||||
BaseRequest,
|
||||
BaseResponse,
|
||||
@@ -25,10 +26,9 @@ class PreStartRequest(BaseRequest):
|
||||
except AttributeError as e:
|
||||
raise DivaRequestParseException(f"PreStartRequest: {e}")
|
||||
|
||||
|
||||
class PreStartResponse(BaseResponse):
|
||||
def __init__(self, cmd_id: str, req_id: int, pd_id: int) -> None:
|
||||
super().__init__(cmd_id, req_id)
|
||||
def __init__(self, req_id: int, pd_id: int) -> None:
|
||||
super().__init__("pre_start", req_id)
|
||||
self.ps_result = 1
|
||||
self.pd_id = pd_id
|
||||
self.accept_idx = 100
|
||||
@@ -54,7 +54,6 @@ class PreStartResponse(BaseResponse):
|
||||
# But this is how it's stored in the db, so w/e for now
|
||||
self.mdl_eqp_ary = "-999,-999,-999"
|
||||
|
||||
|
||||
class StartRequest(BaseRequest):
|
||||
def __init__(self, raw: str) -> None:
|
||||
super().__init__(raw)
|
||||
@@ -65,10 +64,9 @@ class StartRequest(BaseRequest):
|
||||
except AttributeError as e:
|
||||
raise DivaRequestParseException(f"StartRequest: {e}")
|
||||
|
||||
|
||||
class StartResponse(BaseResponse):
|
||||
def __init__(self, cmd_id: str, req_id: int, pv_id: int, pv_name: str) -> None:
|
||||
super().__init__(cmd_id, req_id)
|
||||
def __init__(self, req_id: int, pv_id: int, pv_name: str) -> None:
|
||||
super().__init__("start", req_id)
|
||||
self.pd_id: int = pv_id
|
||||
self.start_result: int = 1
|
||||
self.accept_idx: int = 100
|
||||
@@ -118,16 +116,15 @@ class StartResponse(BaseResponse):
|
||||
self.ms_itm_flg_ary = ",".join(["1"] * 12)
|
||||
|
||||
class RegisterRequest(BaseRequest):
|
||||
pmm: str
|
||||
idm: str
|
||||
mmgameid: str
|
||||
mmuid: str
|
||||
a_code: str
|
||||
aime_a_code: str
|
||||
player_name: str
|
||||
passwd: str
|
||||
|
||||
def __init__(self, raw: str) -> None:
|
||||
self.pmm: str
|
||||
self.idm: str
|
||||
self.mmgameid: str
|
||||
self.mmuid: str
|
||||
self.a_code: str
|
||||
self.aime_a_code: str
|
||||
self.player_name: str
|
||||
self.passwd: str
|
||||
super().__init__(raw)
|
||||
try:
|
||||
self.aime_id = int(self.aime_id)
|
||||
@@ -137,7 +134,20 @@ class RegisterRequest(BaseRequest):
|
||||
raise DivaRequestParseException(f"RegisterRequest: {e}")
|
||||
|
||||
class RegisterResponse(BaseResponse):
|
||||
def __init__(self, cmd_id: str, req_id: int, pv_id: int) -> None:
|
||||
super().__init__(cmd_id, req_id)
|
||||
def __init__(self, req_id: int, pv_id: int) -> None:
|
||||
super().__init__("register", req_id)
|
||||
self.cd_adm_result: int = 1
|
||||
self.pd_id: int = pv_id
|
||||
|
||||
class EndRequest(BaseRequest):
|
||||
def __init__(self, raw: str | bytes) -> None:
|
||||
self.my_qst_id: str
|
||||
self.my_qst_sts: str
|
||||
|
||||
super().__init__(raw)
|
||||
try:
|
||||
self.pd_id = int(self.pd_id)
|
||||
|
||||
except AttributeError as e:
|
||||
raise DivaRequestParseException(f"EndRequest: {e}")
|
||||
|
||||
Reference in New Issue
Block a user