forked from Hay1tsme/artemis
66 lines
2.2 KiB
Python
66 lines
2.2 KiB
Python
from typing import Dict
|
|
|
|
from core.config import CoreConfig
|
|
from titles.mai2.buddiesplus import Mai2BuddiesPlus
|
|
from titles.mai2.const import Mai2Constants
|
|
from titles.mai2.config import Mai2Config
|
|
|
|
|
|
class Mai2Prism(Mai2BuddiesPlus):
|
|
def __init__(self, cfg: CoreConfig, game_cfg: Mai2Config) -> None:
|
|
super().__init__(cfg, game_cfg)
|
|
self.version = Mai2Constants.VER_MAIMAI_DX_PRISM
|
|
|
|
async def handle_cm_get_user_preview_api_request(self, data: Dict) -> Dict:
|
|
user_data = await super().handle_cm_get_user_preview_api_request(data)
|
|
|
|
# hardcode lastDataVersion for CardMaker
|
|
user_data["lastDataVersion"] = "1.50.00"
|
|
return user_data
|
|
|
|
|
|
async def handle_get_user_new_item_list_api_request(self, data: Dict) -> Dict:
|
|
return {
|
|
"user_id": data["userId"],
|
|
"userItemList": []
|
|
}
|
|
|
|
#seems to be used for downloading music scores online
|
|
async def handle_get_game_music_score_api_request(self, data: Dict) -> Dict:
|
|
return {
|
|
"gameMusicScore": {
|
|
"musicId": data["musicId"],
|
|
"level": data["level"],
|
|
"type": data["type"],
|
|
"scoreData": ""
|
|
}
|
|
}
|
|
|
|
async def handle_get_game_kaleidx_scope_api_request(self, data: Dict) -> Dict:
|
|
return {
|
|
"gameKaleidxScopeList": [
|
|
{"gateId": 1, "phaseId": 6},
|
|
{"gateId": 2, "phaseId": 6},
|
|
{"gateId": 3, "phaseId": 6},
|
|
{"gateId": 4, "phaseId": 6},
|
|
{"gateId": 5, "phaseId": 6},
|
|
{"gateId": 6, "phaseId": 6}
|
|
]
|
|
}
|
|
|
|
async def handle_get_user_kaleidx_scope_api_request(self, data: Dict) -> Dict:
|
|
kaleidxscope = await self.data.score.get_user_kaleidxscope_list(data["userId"])
|
|
|
|
if kaleidxscope is None:
|
|
return {"userId": data["userId"], "userKaleidxScopeList":[]}
|
|
|
|
kaleidxscope_list = []
|
|
for kaleidxscope_data in kaleidxscope:
|
|
tmp = kaleidxscope_data._asdict()
|
|
tmp.pop("user")
|
|
tmp.pop("id")
|
|
kaleidxscope_list.append(tmp)
|
|
return {
|
|
"userId": data["userId"],
|
|
"userKaleidxScopeList": kaleidxscope_list
|
|
} |