From 9b89cef51c4fdf394ece7e459213d2f3161cf4a7 Mon Sep 17 00:00:00 2001 From: daydensteve Date: Sun, 3 Nov 2024 08:46:12 -0500 Subject: [PATCH 01/11] ignore visual studio pro files --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index b5a0e6e..5c8d22f 100644 --- a/.gitignore +++ b/.gitignore @@ -145,6 +145,7 @@ dmypy.json cython_debug/ .vscode/* +.vs/* # Local History for Visual Studio Code .history/ From 2f6974cab6af191053f0647be81ebc54635d4aaf Mon Sep 17 00:00:00 2001 From: daydensteve Date: Sun, 3 Nov 2024 08:48:13 -0500 Subject: [PATCH 02/11] new chuni ui images/directories --- titles/chuni/img/avatar-common.png | Bin 0 -> 35085 bytes titles/chuni/img/avatar-platform.png | Bin 0 -> 25387 bytes titles/chuni/img/avatar/.gitignore | 4 ++++ titles/chuni/img/character-bg.png | Bin 0 -> 30878 bytes titles/chuni/img/character/.gitignore | 4 ++++ titles/chuni/img/jacket/.gitignore | 5 +++++ titles/chuni/img/mapIcon/.gitignore | 4 ++++ titles/chuni/img/nameplate/.gitignore | 4 ++++ titles/chuni/img/rank/rank0.png | Bin 0 -> 21473 bytes titles/chuni/img/rank/rank1.png | Bin 0 -> 33652 bytes titles/chuni/img/rank/rank10.png | Bin 0 -> 30558 bytes titles/chuni/img/rank/rank11.png | Bin 0 -> 25195 bytes titles/chuni/img/rank/rank2.png | Bin 0 -> 26546 bytes titles/chuni/img/rank/rank3.png | Bin 0 -> 30641 bytes titles/chuni/img/rank/rank4.png | Bin 0 -> 30641 bytes titles/chuni/img/rank/rank5.png | Bin 0 -> 28331 bytes titles/chuni/img/rank/rank6.png | Bin 0 -> 28331 bytes titles/chuni/img/rank/rank7.png | Bin 0 -> 42548 bytes titles/chuni/img/rank/rank8.png | Bin 0 -> 42548 bytes titles/chuni/img/rank/rank9.png | Bin 0 -> 21428 bytes titles/chuni/img/rank/rating0.png | Bin 0 -> 20220 bytes titles/chuni/img/rank/team3.png | Bin 0 -> 45380 bytes titles/chuni/img/systemVoice/.gitignore | 4 ++++ 23 files changed, 25 insertions(+) create mode 100644 titles/chuni/img/avatar-common.png create mode 100644 titles/chuni/img/avatar-platform.png create mode 100644 titles/chuni/img/avatar/.gitignore create mode 100644 titles/chuni/img/character-bg.png create mode 100644 titles/chuni/img/character/.gitignore create mode 100644 titles/chuni/img/jacket/.gitignore create mode 100644 titles/chuni/img/mapIcon/.gitignore create mode 100644 titles/chuni/img/nameplate/.gitignore create mode 100644 titles/chuni/img/rank/rank0.png create mode 100644 titles/chuni/img/rank/rank1.png create mode 100644 titles/chuni/img/rank/rank10.png create mode 100644 titles/chuni/img/rank/rank11.png create mode 100644 titles/chuni/img/rank/rank2.png create mode 100644 titles/chuni/img/rank/rank3.png create mode 100644 titles/chuni/img/rank/rank4.png create mode 100644 titles/chuni/img/rank/rank5.png create mode 100644 titles/chuni/img/rank/rank6.png create mode 100644 titles/chuni/img/rank/rank7.png create mode 100644 titles/chuni/img/rank/rank8.png create mode 100644 titles/chuni/img/rank/rank9.png create mode 100644 titles/chuni/img/rank/rating0.png create mode 100644 titles/chuni/img/rank/team3.png create mode 100644 titles/chuni/img/systemVoice/.gitignore diff --git a/titles/chuni/img/avatar-common.png b/titles/chuni/img/avatar-common.png new file mode 100644 index 0000000000000000000000000000000000000000..030b55ed969af5cf84e65e403340654b46d8a031 GIT binary patch literal 35085 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 literal 0 HcmV?d00001 diff --git a/titles/chuni/img/avatar-platform.png b/titles/chuni/img/avatar-platform.png new file mode 100644 index 0000000000000000000000000000000000000000..e981414d7bd9e454077a251c08cb79dca76b5354 GIT binary patch literal 25387 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 V%L7tDKmK!APD&Y6Dq-aRe*oo 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
eq5<(^xvcf_jBO$F5`5hK4T8g| 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 UP>sI5_}AxhQc8DAB#eXq7ZVVjO8@`> literal 0 HcmV?d00001 diff --git a/titles/chuni/img/rank/rank3.png b/titles/chuni/img/rank/rank3.png new file mode 100644 index 0000000000000000000000000000000000000000..5d55b3d4a56933c0fe8a9706773f873e07a0b91c GIT binary patch literal 30641 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 Op&+X&Qz-Q)=zjsTDjfp= literal 0 HcmV?d00001 diff --git a/titles/chuni/img/rank/rank6.png b/titles/chuni/img/rank/rank6.png new file mode 100644 index 0000000000000000000000000000000000000000..af519b68eece1dce3054211cfd7487eee50c5e9b GIT binary patch literal 28331 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 Op&+X&Qz-Q)=zjsTDjfp= literal 0 HcmV?d00001 diff --git a/titles/chuni/img/rank/rank7.png b/titles/chuni/img/rank/rank7.png new file mode 100644 index 0000000000000000000000000000000000000000..db7ae79a364d633404303a69262a1cce6fc82c6b GIT binary patch literal 42548 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 literal 0 HcmV?d00001 diff --git a/titles/chuni/img/rank/rank8.png b/titles/chuni/img/rank/rank8.png new file mode 100644 index 0000000000000000000000000000000000000000..db7ae79a364d633404303a69262a1cce6fc82c6b GIT binary patch literal 42548 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 literal 0 HcmV?d00001 diff --git a/titles/chuni/img/rank/rank9.png b/titles/chuni/img/rank/rank9.png new file mode 100644 index 0000000000000000000000000000000000000000..145096ded5dda6cdfae60f60b00ed186b6c3e3c9 GIT binary patch literal 21428 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 KYM%1htN#lf2TADw literal 0 HcmV?d00001 diff --git a/titles/chuni/img/rank/rating0.png b/titles/chuni/img/rank/rating0.png new file mode 100644 index 0000000000000000000000000000000000000000..66813b8f2e4c3e4e0406381c5a3a7384fba3cf21 GIT binary patch literal 20220 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�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 literal 0 HcmV?d00001 diff --git a/titles/chuni/img/systemVoice/.gitignore b/titles/chuni/img/systemVoice/.gitignore new file mode 100644 index 0000000..86d0cb2 --- /dev/null +++ b/titles/chuni/img/systemVoice/.gitignore @@ -0,0 +1,4 @@ +# Ignore everything in this directory +* +# Except this file +!.gitignore \ No newline at end of file From c2d4abcc26a8f1002a50aec915f53e3161aa1af8 Mon Sep 17 00:00:00 2001 From: daydensteve Date: Sun, 3 Nov 2024 16:37:05 -0500 Subject: [PATCH 03/11] db and import updates for userbox, avatar, voice, and map icon --- .../41f77ef50588_chuni_ui_overhaul.py | 122 +++++++ titles/chuni/read.py | 225 +++++++++++- titles/chuni/schema/profile.py | 52 +++ titles/chuni/schema/static.py | 330 ++++++++++++++++++ 4 files changed, 715 insertions(+), 14 deletions(-) create mode 100644 core/data/alembic/versions/41f77ef50588_chuni_ui_overhaul.py diff --git a/core/data/alembic/versions/41f77ef50588_chuni_ui_overhaul.py b/core/data/alembic/versions/41f77ef50588_chuni_ui_overhaul.py new file mode 100644 index 0000000..9e88a5f --- /dev/null +++ b/core/data/alembic/versions/41f77ef50588_chuni_ui_overhaul.py @@ -0,0 +1,122 @@ +"""chuni_ui_overhaul + +Revision ID: 41f77ef50588 +Revises: d8cd1fa04c2a +Create Date: 2024-11-02 13:27:45.839787 + +""" +from alembic import op +import sqlalchemy as sa +from sqlalchemy.dialects import mysql + +# revision identifiers, used by Alembic. +revision = '41f77ef50588' +down_revision = 'd8cd1fa04c2a' +branch_labels = None +depends_on = None + + +def upgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.add_column('chuni_static_avatar', sa.Column('sortName', mysql.VARCHAR(length=255), nullable=True)) + op.add_column('chuni_static_avatar', sa.Column('isEnabled', mysql.TINYINT(display_width=1), server_default=sa.text('1'), autoincrement=False, nullable=True)) + op.add_column('chuni_static_avatar', sa.Column('defaultHave', mysql.TINYINT(display_width=1), server_default=sa.text('0'), autoincrement=False, nullable=True)) + + op.create_table('chuni_static_character', + sa.Column('id', mysql.INTEGER(display_width=11), autoincrement=True, nullable=False), + sa.Column('version', mysql.INTEGER(display_width=11), autoincrement=False, nullable=False), + sa.Column('characterId', mysql.INTEGER(display_width=11), autoincrement=False, nullable=True), + sa.Column('name', mysql.VARCHAR(length=255), nullable=True), + sa.Column('sortName', mysql.VARCHAR(length=255), nullable=True), + sa.Column('worksName', mysql.VARCHAR(length=255), nullable=True), + sa.Column('rareType', mysql.INTEGER(display_width=11), server_default=sa.text('0'), autoincrement=False, nullable=True), + sa.Column('imagePath1', mysql.VARCHAR(length=255), nullable=True), + sa.Column('imagePath2', mysql.VARCHAR(length=255), nullable=True), + sa.Column('imagePath3', mysql.VARCHAR(length=255), nullable=True), + sa.Column('isEnabled', mysql.TINYINT(display_width=1), server_default=sa.text('1'), autoincrement=False, nullable=True), + sa.Column('defaultHave', mysql.TINYINT(display_width=1), server_default=sa.text('0'), autoincrement=False, nullable=True), + sa.PrimaryKeyConstraint('id'), + mysql_collate='utf8mb4_general_ci', + mysql_default_charset='utf8mb4', + mysql_engine='InnoDB' + ) + op.create_index('chuni_static_character_uk', 'chuni_static_character', ['version', 'characterId'], unique=True) + op.create_table('chuni_static_map_icon', + sa.Column('id', mysql.INTEGER(display_width=11), autoincrement=True, nullable=False), + sa.Column('version', mysql.INTEGER(display_width=11), autoincrement=False, nullable=False), + sa.Column('mapIconId', mysql.INTEGER(display_width=11), autoincrement=False, nullable=True), + sa.Column('name', mysql.VARCHAR(length=255), nullable=True), + sa.Column('sortName', mysql.VARCHAR(length=255), nullable=True), + sa.Column('iconPath', mysql.VARCHAR(length=255), nullable=True), + sa.Column('isEnabled', mysql.TINYINT(display_width=1), server_default=sa.text('1'), autoincrement=False, nullable=True), + sa.Column('defaultHave', mysql.TINYINT(display_width=1), server_default=sa.text('0'), autoincrement=False, nullable=True), + sa.PrimaryKeyConstraint('id'), + mysql_collate='utf8mb4_general_ci', + mysql_default_charset='utf8mb4', + mysql_engine='InnoDB' + ) + op.create_index('chuni_static_mapicon_uk', 'chuni_static_map_icon', ['version', 'mapIconId'], unique=True) + op.create_table('chuni_static_nameplate', + sa.Column('id', mysql.INTEGER(display_width=11), autoincrement=True, nullable=False), + sa.Column('version', mysql.INTEGER(display_width=11), autoincrement=False, nullable=False), + sa.Column('nameplateId', mysql.INTEGER(display_width=11), autoincrement=False, nullable=True), + sa.Column('name', mysql.VARCHAR(length=255), nullable=True), + sa.Column('texturePath', mysql.VARCHAR(length=255), nullable=True), + sa.Column('isEnabled', mysql.TINYINT(display_width=1), server_default=sa.text('1'), autoincrement=False, nullable=True), + sa.Column('defaultHave', mysql.TINYINT(display_width=1), server_default=sa.text('0'), autoincrement=False, nullable=True), + sa.Column('sortName', mysql.VARCHAR(length=255), nullable=True), + sa.PrimaryKeyConstraint('id'), + mysql_collate='utf8mb4_general_ci', + mysql_default_charset='utf8mb4', + mysql_engine='InnoDB' + ) + op.create_index('chuni_static_nameplate_uk', 'chuni_static_nameplate', ['version', 'nameplateId'], unique=True) + op.create_table('chuni_static_trophy', + sa.Column('id', mysql.INTEGER(display_width=11), autoincrement=True, nullable=False), + sa.Column('version', mysql.INTEGER(display_width=11), autoincrement=False, nullable=False), + sa.Column('trophyId', mysql.INTEGER(display_width=11), autoincrement=False, nullable=True), + sa.Column('name', mysql.VARCHAR(length=255), nullable=True), + sa.Column('rareType', mysql.TINYINT(display_width=11), server_default=sa.text('0'), autoincrement=False, nullable=True), + sa.Column('isEnabled', mysql.TINYINT(display_width=1), server_default=sa.text('1'), autoincrement=False, nullable=True), + sa.Column('defaultHave', mysql.TINYINT(display_width=1), server_default=sa.text('0'), autoincrement=False, nullable=True), + sa.PrimaryKeyConstraint('id'), + mysql_collate='utf8mb4_general_ci', + mysql_default_charset='utf8mb4', + mysql_engine='InnoDB' + ) + op.create_index('chuni_static_trophy_uk', 'chuni_static_trophy', ['version', 'trophyId'], unique=True) + op.create_table('chuni_static_system_voice', + sa.Column('id', mysql.INTEGER(display_width=11), autoincrement=True, nullable=False), + sa.Column('version', mysql.INTEGER(display_width=11), autoincrement=False, nullable=False), + sa.Column('voiceId', mysql.INTEGER(display_width=11), autoincrement=False, nullable=True), + sa.Column('name', mysql.VARCHAR(length=255), nullable=True), + sa.Column('sortName', mysql.VARCHAR(length=255), nullable=True), + sa.Column('imagePath', mysql.VARCHAR(length=255), nullable=True), + sa.Column('isEnabled', mysql.TINYINT(display_width=1), server_default=sa.text('1'), autoincrement=False, nullable=True), + sa.Column('defaultHave', mysql.TINYINT(display_width=1), server_default=sa.text('0'), autoincrement=False, nullable=True), + sa.PrimaryKeyConstraint('id'), + mysql_collate='utf8mb4_general_ci', + mysql_default_charset='utf8mb4', + mysql_engine='InnoDB' + ) + op.create_index('chuni_static_systemvoice_uk', 'chuni_static_system_voice', ['version', 'voiceId'], unique=True) + # ### end Alembic commands ### + + +def downgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.drop_index('chuni_static_systemvoice_uk', table_name='chuni_static_system_voice') + op.drop_table('chuni_static_system_voice') + op.drop_index('chuni_static_trophy_uk', table_name='chuni_static_trophy') + op.drop_table('chuni_static_trophy') + op.drop_index('chuni_static_nameplate_uk', table_name='chuni_static_nameplate') + op.drop_table('chuni_static_nameplate') + op.drop_index('chuni_static_mapicon_uk', table_name='chuni_static_map_icon') + op.drop_table('chuni_static_map_icon') + op.drop_index('chuni_static_character_uk', table_name='chuni_static_character') + op.drop_table('chuni_static_character') + + op.drop_column('chuni_static_avatar', 'defaultHave') + op.drop_column('chuni_static_avatar', 'isEnabled') + op.drop_column('chuni_static_avatar', 'sortName') + # ### end Alembic commands ### \ No newline at end of file diff --git a/titles/chuni/read.py b/titles/chuni/read.py index eebdf8b..b25d97f 100644 --- a/titles/chuni/read.py +++ b/titles/chuni/read.py @@ -42,6 +42,12 @@ class ChuniReader(BaseReader): if self.version >= ChuniConstants.VER_CHUNITHM_NEW: we_diff = "5" + # character images could be stored anywhere across all the data dirs. Map them first + self.logger.info(f"Mapping DDS image files...") + dds_images = dict() + for dir in data_dirs: + self.map_dds_images(dds_images, f"{dir}/ddsImage") + for dir in data_dirs: self.logger.info(f"Read from {dir}") await self.read_events(f"{dir}/event") @@ -49,6 +55,11 @@ class ChuniReader(BaseReader): await self.read_charges(f"{dir}/chargeItem") await self.read_avatar(f"{dir}/avatarAccessory") await self.read_login_bonus(f"{dir}/") + await self.read_nameplate(f"{dir}/namePlate") + await self.read_trophy(f"{dir}/trophy") + await self.read_character(f"{dir}/chara", dds_images) + await self.read_map_icon(f"{dir}/mapIcon") + await self.read_system_voice(f"{dir}/systemVoice") async def read_login_bonus(self, root_dir: str) -> None: for root, dirs, files in walk(f"{root_dir}loginBonusPreset"): @@ -61,9 +72,8 @@ class ChuniReader(BaseReader): for name in xml_root.findall("name"): id = name.find("id").text name = name.find("str").text - is_enabled = ( - True if xml_root.find("disableFlag").text == "false" else False - ) + disableFlag = xml_root.find("disableFlag") # may not exist in older data + is_enabled = True if (disableFlag is None or disableFlag.text == "false") else False result = await self.data.static.put_login_bonus_preset( self.version, id, name, is_enabled @@ -175,16 +185,8 @@ class ChuniReader(BaseReader): for jaketFile in xml_root.findall("jaketFile"): # nice typo, SEGA jacket_path = jaketFile.find("path").text - # Convert the image to png and save it for use in the frontend - jacket_filename_src = f"{root}/{dir}/{jacket_path}" - (pre, ext) = path.splitext(jacket_path) - jacket_filename_dst = f"titles/chuni/img/jacket/{pre}.png" - if path.exists(jacket_filename_src) and not path.exists(jacket_filename_dst): - try: - im = Image.open(jacket_filename_src) - im.save(jacket_filename_dst) - except Exception: - self.logger.warning(f"Failed to convert {jacket_path} to png") + # Save off image for use in frontend + self.copy_image(jacket_path, f"{root}/{dir}", "titles/chuni/img/jacket/") for fumens in xml_root.findall("fumens"): for MusicFumenData in fumens.findall("MusicFumenData"): @@ -268,17 +270,212 @@ class ChuniReader(BaseReader): for name in xml_root.findall("name"): id = name.find("id").text name = name.find("str").text + sortName = xml_root.find("sortName").text category = xml_root.find("category").text + defaultHave = xml_root.find("defaultHave").text == 'true' + disableFlag = xml_root.find("disableFlag") # may not exist in older data + is_enabled = True if (disableFlag is None or disableFlag.text == "false") else False + for image in xml_root.findall("image"): iconPath = image.find("path").text + self.copy_image(iconPath, f"{root}/{dir}", "titles/chuni/img/avatar/") for texture in xml_root.findall("texture"): texturePath = texture.find("path").text + self.copy_image(texturePath, f"{root}/{dir}", "titles/chuni/img/avatar/") result = await self.data.static.put_avatar( - self.version, id, name, category, iconPath, texturePath + self.version, id, name, category, iconPath, texturePath, is_enabled, defaultHave, sortName ) if result is not None: self.logger.info(f"Inserted avatarAccessory {id}") else: self.logger.warning(f"Failed to insert avatarAccessory {id}") + + async def read_nameplate(self, nameplate_dir: str) -> None: + for root, dirs, files in walk(nameplate_dir): + for dir in dirs: + if path.exists(f"{root}/{dir}/NamePlate.xml"): + with open(f"{root}/{dir}/NamePlate.xml", "r", encoding='utf-8') as fp: + strdata = fp.read() + + xml_root = ET.fromstring(strdata) + for name in xml_root.findall("name"): + id = name.find("id").text + name = name.find("str").text + sortName = xml_root.find("sortName").text + defaultHave = xml_root.find("defaultHave").text == 'true' + disableFlag = xml_root.find("disableFlag") # may not exist in older data + is_enabled = True if (disableFlag is None or disableFlag.text == "false") else False + + for image in xml_root.findall("image"): + texturePath = image.find("path").text + self.copy_image(texturePath, f"{root}/{dir}", "titles/chuni/img/nameplate/") + + result = await self.data.static.put_nameplate( + self.version, id, name, texturePath, is_enabled, defaultHave, sortName + ) + + if result is not None: + self.logger.info(f"Inserted nameplate {id}") + else: + self.logger.warning(f"Failed to insert nameplate {id}") + + async def read_trophy(self, trophy_dir: str) -> None: + for root, dirs, files in walk(trophy_dir): + for dir in dirs: + if path.exists(f"{root}/{dir}/Trophy.xml"): + with open(f"{root}/{dir}/Trophy.xml", "r", encoding='utf-8') as fp: + strdata = fp.read() + + xml_root = ET.fromstring(strdata) + for name in xml_root.findall("name"): + id = name.find("id").text + name = name.find("str").text + rareType = xml_root.find("rareType").text + disableFlag = xml_root.find("disableFlag") # may not exist in older data + is_enabled = True if (disableFlag is None or disableFlag.text == "false") else False + defaultHave = xml_root.find("defaultHave").text == 'true' + + result = await self.data.static.put_trophy( + self.version, id, name, rareType, is_enabled, defaultHave + ) + + if result is not None: + self.logger.info(f"Inserted trophy {id}") + else: + self.logger.warning(f"Failed to insert trophy {id}") + + async def read_character(self, chara_dir: str, dds_images: dict) -> None: + for root, dirs, files in walk(chara_dir): + for dir in dirs: + if path.exists(f"{root}/{dir}/Chara.xml"): + with open(f"{root}/{dir}/Chara.xml", "r", encoding='utf-8') as fp: + strdata = fp.read() + + xml_root = ET.fromstring(strdata) + for name in xml_root.findall("name"): + id = name.find("id").text + name = name.find("str").text + sortName = xml_root.find("sortName").text + for work in xml_root.findall("works"): + worksName = work.find("str").text + rareType = xml_root.find("rareType").text + defaultHave = xml_root.find("defaultHave").text == 'true' + disableFlag = xml_root.find("disableFlag") # may not exist in older data + is_enabled = True if (disableFlag is None or disableFlag.text == "false") else False + + # character images are not stored alongside + for image in xml_root.findall("defaultImages"): + imageKey = image.find("str").text + if imageKey in dds_images.keys(): + (imageDir, imagePaths) = dds_images[imageKey] + imagePath1 = imagePaths[0] if len(imagePaths) > 0 else "" + imagePath2 = imagePaths[1] if len(imagePaths) > 1 else "" + imagePath3 = imagePaths[2] if len(imagePaths) > 2 else "" + # @note the third image is the image needed for the user box ui + if imagePath3: + self.copy_image(imagePath3, imageDir, "titles/chuni/img/character/") + else: + self.logger.warning(f"Character {id} only has {len(imagePaths)} images. Expected 3") + else: + self.logger.warning(f"Unable to location character {id} images") + + result = await self.data.static.put_character( + self.version, id, name, sortName, worksName, rareType, imagePath1, imagePath2, imagePath3, is_enabled, defaultHave + ) + + if result is not None: + self.logger.info(f"Inserted character {id}") + else: + self.logger.warning(f"Failed to insert character {id}") + + async def read_map_icon(self, mapicon_dir: str) -> None: + for root, dirs, files in walk(mapicon_dir): + for dir in dirs: + if path.exists(f"{root}/{dir}/MapIcon.xml"): + with open(f"{root}/{dir}/MapIcon.xml", "r", encoding='utf-8') as fp: + strdata = fp.read() + + xml_root = ET.fromstring(strdata) + for name in xml_root.findall("name"): + id = name.find("id").text + name = name.find("str").text + sortName = xml_root.find("sortName").text + for image in xml_root.findall("image"): + iconPath = image.find("path").text + self.copy_image(iconPath, f"{root}/{dir}", "titles/chuni/img/mapIcon/") + defaultHave = xml_root.find("defaultHave").text == 'true' + disableFlag = xml_root.find("disableFlag") # may not exist in older data + is_enabled = True if (disableFlag is None or disableFlag.text == "false") else False + + result = await self.data.static.put_map_icon( + self.version, id, name, sortName, iconPath, is_enabled, defaultHave + ) + + if result is not None: + self.logger.info(f"Inserted map icon {id}") + else: + self.logger.warning(f"Failed to map icon {id}") + + async def read_system_voice(self, voice_dir: str) -> None: + for root, dirs, files in walk(voice_dir): + for dir in dirs: + if path.exists(f"{root}/{dir}/SystemVoice.xml"): + with open(f"{root}/{dir}/SystemVoice.xml", "r", encoding='utf-8') as fp: + strdata = fp.read() + + xml_root = ET.fromstring(strdata) + for name in xml_root.findall("name"): + id = name.find("id").text + name = name.find("str").text + sortName = xml_root.find("sortName").text + for image in xml_root.findall("image"): + imagePath = image.find("path").text + self.copy_image(imagePath, f"{root}/{dir}", "titles/chuni/img/systemVoice/") + defaultHave = xml_root.find("defaultHave").text == 'true' + disableFlag = xml_root.find("disableFlag") # may not exist in older data + is_enabled = True if (disableFlag is None or disableFlag.text == "false") else False + + result = await self.data.static.put_system_voice( + self.version, id, name, sortName, imagePath, is_enabled, defaultHave + ) + + if result is not None: + self.logger.info(f"Inserted system voice {id}") + else: + self.logger.warning(f"Failed to system voice {id}") + + def copy_image(self, filename: str, src_dir: str, dst_dir: str) -> None: + # Convert the image to png so we can easily display it in the frontend + file_src = path.join(src_dir, filename) + (basename, ext) = path.splitext(filename) + file_dst = path.join(dst_dir, basename) + ".png" + + if path.exists(file_src) and not path.exists(file_dst): + try: + im = Image.open(file_src) + im.save(file_dst) + except Exception: + self.logger.warning(f"Failed to convert {filename} to png") + + def map_dds_images(self, image_dict: dict, dds_dir: str) -> None: + for root, dirs, files in walk(dds_dir): + for dir in dirs: + directory = f"{root}/{dir}" + if path.exists(f"{directory}/DDSImage.xml"): + with open(f"{directory}/DDSImage.xml", "r", encoding='utf-8') as fp: + strdata = fp.read() + + xml_root = ET.fromstring(strdata) + for name in xml_root.findall("name"): + name = name.find("str").text + + images = [] + i = 0 + while xml_root.findall(f"ddsFile{i}"): + for ddsFile in xml_root.findall(f"ddsFile{i}"): + images += [ddsFile.find("path").text] + i += 1 + + image_dict[name] = (directory, images) \ No newline at end of file diff --git a/titles/chuni/schema/profile.py b/titles/chuni/schema/profile.py index f0b8c0f..8d71ba6 100644 --- a/titles/chuni/schema/profile.py +++ b/titles/chuni/schema/profile.py @@ -439,6 +439,58 @@ class ChuniProfileData(BaseData): return False return True + async def update_map_icon(self, user_id: int, version: int, new_map_icon: int) -> bool: + sql = profile.update((profile.c.user == user_id) & (profile.c.version == version)).values( + mapIconId=new_map_icon + ) + result = await self.execute(sql) + + if result is None: + self.logger.warning(f"Failed to set user {user_id} map icon") + return False + return True + + async def update_system_voice(self, user_id: int, version: int, new_system_voice: int) -> bool: + sql = profile.update((profile.c.user == user_id) & (profile.c.version == version)).values( + voiceId=new_system_voice + ) + result = await self.execute(sql) + + if result is None: + self.logger.warning(f"Failed to set user {user_id} system voice") + return False + return True + + async def update_userbox(self, user_id: int, version: int, new_nameplate: int, new_trophy: int, new_character: int) -> bool: + sql = profile.update((profile.c.user == user_id) & (profile.c.version == version)).values( + nameplateId=new_nameplate, + trophyId=new_trophy, + charaIllustId=new_character + ) + result = await self.execute(sql) + + if result is None: + self.logger.warning(f"Failed to set user {user_id} userbox") + return False + return True + + async def update_avatar(self, user_id: int, version: int, new_wear: int, new_face: int, new_head: int, new_skin: int, new_item: int, new_front: int, new_back: int) -> bool: + sql = profile.update((profile.c.user == user_id) & (profile.c.version == version)).values( + avatarWear=new_wear, + avatarFace=new_face, + avatarHead=new_head, + avatarSkin=new_skin, + avatarItem=new_item, + avatarFront=new_front, + avatarBack=new_back + ) + result = await self.execute(sql) + + if result is None: + self.logger.warning(f"Failed to set user {user_id} avatar") + return False + return True + async def put_profile_data( self, aime_id: int, version: int, profile_data: Dict ) -> Optional[int]: diff --git a/titles/chuni/schema/static.py b/titles/chuni/schema/static.py index 5c96812..e3070ec 100644 --- a/titles/chuni/schema/static.py +++ b/titles/chuni/schema/static.py @@ -73,10 +73,91 @@ avatar = Table( Column("category", Integer), Column("iconPath", String(255)), Column("texturePath", String(255)), + Column("isEnabled", Boolean, server_default="1"), + Column("defaultHave", Boolean, server_default="0"), + Column("sortName", String(255)), UniqueConstraint("version", "avatarAccessoryId", name="chuni_static_avatar_uk"), mysql_charset="utf8mb4", ) +nameplate = Table( + "chuni_static_nameplate", + metadata, + Column("id", Integer, primary_key=True, nullable=False), + Column("version", Integer, nullable=False), + Column("nameplateId", Integer), + Column("name", String(255)), + Column("texturePath", String(255)), + Column("isEnabled", Boolean, server_default="1"), + Column("defaultHave", Boolean, server_default="0"), + Column("sortName", String(255)), + UniqueConstraint("version", "nameplateId", name="chuni_static_nameplate_uk"), + mysql_charset="utf8mb4", +) + +character = Table( + "chuni_static_character", + metadata, + Column("id", Integer, primary_key=True, nullable=False), + Column("version", Integer, nullable=False), + Column("characterId", Integer), + Column("name", String(255)), + Column("sortName", String(255)), + Column("worksName", String(255)), + Column("rareType", Integer), + Column("imagePath1", String(255)), + Column("imagePath2", String(255)), + Column("imagePath3", String(255)), + Column("isEnabled", Boolean, server_default="1"), + Column("defaultHave", Boolean, server_default="0"), + UniqueConstraint("version", "characterId", name="chuni_static_character_uk"), + mysql_charset="utf8mb4", +) + +trophy = Table( + "chuni_static_trophy", + metadata, + Column("id", Integer, primary_key=True, nullable=False), + Column("version", Integer, nullable=False), + Column("trophyId", Integer), + Column("name", String(255)), + Column("rareType", Integer), + Column("isEnabled", Boolean, server_default="1"), + Column("defaultHave", Boolean, server_default="0"), + UniqueConstraint("version", "trophyId", name="chuni_static_trophy_uk"), + mysql_charset="utf8mb4", +) + +map_icon = Table( + "chuni_static_map_icon", + metadata, + Column("id", Integer, primary_key=True, nullable=False), + Column("version", Integer, nullable=False), + Column("mapIconId", Integer), + Column("name", String(255)), + Column("sortName", String(255)), + Column("iconPath", String(255)), + Column("isEnabled", Boolean, server_default="1"), + Column("defaultHave", Boolean, server_default="0"), + UniqueConstraint("version", "mapIconId", name="chuni_static_mapicon_uk"), + mysql_charset="utf8mb4", +) + +system_voice = Table( + "chuni_static_system_voice", + metadata, + Column("id", Integer, primary_key=True, nullable=False), + Column("version", Integer, nullable=False), + Column("voiceId", Integer), + Column("name", String(255)), + Column("sortName", String(255)), + Column("imagePath", String(255)), + Column("isEnabled", Boolean, server_default="1"), + Column("defaultHave", Boolean, server_default="0"), + UniqueConstraint("version", "voiceId", name="chuni_static_systemvoice_uk"), + mysql_charset="utf8mb4", +) + gachas = Table( "chuni_static_gachas", metadata, @@ -470,6 +551,9 @@ class ChuniStaticData(BaseData): category: int, iconPath: str, texturePath: str, + isEnabled: int, + defaultHave: int, + sortName: str ) -> Optional[int]: sql = insert(avatar).values( version=version, @@ -478,6 +562,9 @@ class ChuniStaticData(BaseData): category=category, iconPath=iconPath, texturePath=texturePath, + isEnabled=isEnabled, + defaultHave=defaultHave, + sortName=sortName ) conflict = sql.on_duplicate_key_update( @@ -485,6 +572,9 @@ class ChuniStaticData(BaseData): category=category, iconPath=iconPath, texturePath=texturePath, + isEnabled=isEnabled, + defaultHave=defaultHave, + sortName=sortName ) result = await self.execute(conflict) @@ -492,6 +582,246 @@ class ChuniStaticData(BaseData): return None return result.lastrowid + async def get_avatar_items(self, version: int, category: int, enabled_only: bool = True) -> Optional[List[Dict]]: + if enabled_only: + sql = select(avatar).where((avatar.c.version == version) & (avatar.c.category == category) & (avatar.c.isEnabled)).order_by(avatar.c.sortName) + else: + sql = select(avatar).where((avatar.c.version == version) & (avatar.c.category == category)).order_by(avatar.c.sortName) + result = await self.execute(sql) + + if result is None: + return None + return result.fetchall() + + async def put_nameplate( + self, + version: int, + nameplateId: int, + name: str, + texturePath: str, + isEnabled: int, + defaultHave: int, + sortName: str + ) -> Optional[int]: + sql = insert(nameplate).values( + version=version, + nameplateId=nameplateId, + name=name, + texturePath=texturePath, + isEnabled=isEnabled, + defaultHave=defaultHave, + sortName=sortName + ) + + conflict = sql.on_duplicate_key_update( + name=name, + texturePath=texturePath, + isEnabled=isEnabled, + defaultHave=defaultHave, + sortName=sortName + ) + + result = await self.execute(conflict) + if result is None: + return None + return result.lastrowid + + async def get_nameplates(self, version: int, enabled_only: bool = True) -> Optional[List[Dict]]: + if enabled_only: + sql = select(nameplate).where((nameplate.c.version == version) & (nameplate.c.isEnabled)).order_by(nameplate.c.sortName) + else: + sql = select(nameplate).where(nameplate.c.version == version).order_by(nameplate.c.sortName) + result = await self.execute(sql) + + if result is None: + return None + return result.fetchall() + + async def put_trophy( + self, + version: int, + trophyId: int, + name: str, + rareType: int, + isEnabled: int, + defaultHave: int, + ) -> Optional[int]: + sql = insert(trophy).values( + version=version, + trophyId=trophyId, + name=name, + rareType=rareType, + isEnabled=isEnabled, + defaultHave=defaultHave + ) + + conflict = sql.on_duplicate_key_update( + name=name, + rareType=rareType, + isEnabled=isEnabled, + defaultHave=defaultHave + ) + + result = await self.execute(conflict) + if result is None: + return None + return result.lastrowid + + async def get_trophies(self, version: int, enabled_only: bool = True) -> Optional[List[Dict]]: + if enabled_only: + sql = select(trophy).where((trophy.c.version == version) & (trophy.c.isEnabled)).order_by(trophy.c.name) + else: + sql = select(trophy).where(trophy.c.version == version).order_by(trophy.c.name) + result = await self.execute(sql) + + if result is None: + return None + return result.fetchall() + + async def put_map_icon( + self, + version: int, + mapIconId: int, + name: str, + sortName: str, + iconPath: str, + isEnabled: int, + defaultHave: int, + ) -> Optional[int]: + sql = insert(map_icon).values( + version=version, + mapIconId=mapIconId, + name=name, + sortName=sortName, + iconPath=iconPath, + isEnabled=isEnabled, + defaultHave=defaultHave + ) + + conflict = sql.on_duplicate_key_update( + name=name, + sortName=sortName, + iconPath=iconPath, + isEnabled=isEnabled, + defaultHave=defaultHave + ) + + result = await self.execute(conflict) + if result is None: + return None + return result.lastrowid + + async def get_map_icons(self, version: int, enabled_only: bool = True) -> Optional[List[Dict]]: + if enabled_only: + sql = select(map_icon).where((map_icon.c.version == version) & (map_icon.c.isEnabled)).order_by(map_icon.c.sortName) + else: + sql = select(map_icon).where(map_icon.c.version == version).order_by(map_icon.c.sortName) + result = await self.execute(sql) + + if result is None: + return None + return result.fetchall() + + async def put_system_voice( + self, + version: int, + voiceId: int, + name: str, + sortName: str, + imagePath: str, + isEnabled: int, + defaultHave: int, + ) -> Optional[int]: + sql = insert(system_voice).values( + version=version, + voiceId=voiceId, + name=name, + sortName=sortName, + imagePath=imagePath, + isEnabled=isEnabled, + defaultHave=defaultHave + ) + + conflict = sql.on_duplicate_key_update( + name=name, + sortName=sortName, + imagePath=imagePath, + isEnabled=isEnabled, + defaultHave=defaultHave + ) + + result = await self.execute(conflict) + if result is None: + return None + return result.lastrowid + + async def get_system_voices(self, version: int, enabled_only: bool = True) -> Optional[List[Dict]]: + if enabled_only: + sql = select(system_voice).where((system_voice.c.version == version) & (system_voice.c.isEnabled)).order_by(system_voice.c.sortName) + else: + sql = select(system_voice).where(system_voice.c.version == version).order_by(system_voice.c.sortName) + result = await self.execute(sql) + + if result is None: + return None + return result.fetchall() + + async def put_character( + self, + version: int, + characterId: int, + name: str, + sortName: str, + worksName: str, + rareType: int, + imagePath1: str, + imagePath2: str, + imagePath3: str, + isEnabled: int, + defaultHave: int + ) -> Optional[int]: + sql = insert(character).values( + version=version, + characterId=characterId, + name=name, + sortName=sortName, + worksName=worksName, + rareType=rareType, + imagePath1=imagePath1, + imagePath2=imagePath2, + imagePath3=imagePath3, + isEnabled=isEnabled, + defaultHave=defaultHave + ) + + conflict = sql.on_duplicate_key_update( + name=name, + sortName=sortName, + worksName=worksName, + rareType=rareType, + imagePath1=imagePath1, + imagePath2=imagePath2, + imagePath3=imagePath3, + isEnabled=isEnabled, + defaultHave=defaultHave + ) + + result = await self.execute(conflict) + if result is None: + return None + return result.lastrowid + + async def get_characters(self, version: int, enabled_only: bool = True) -> Optional[List[Dict]]: + if enabled_only: + sql = select(character).where((character.c.version == version) & (character.c.isEnabled)).order_by(character.c.sortName) + else: + sql = select(character).where(character.c.version == version).order_by(character.c.sortName) + result = await self.execute(sql) + + if result is None: + return None + return result.fetchall() + async def put_gacha( self, version: int, From e49c70b73806d0908706551780e2a7b5c5864df0 Mon Sep 17 00:00:00 2001 From: daydensteve Date: Sun, 3 Nov 2024 16:37:27 -0500 Subject: [PATCH 04/11] more enums! --- titles/chuni/base.py | 6 +++--- titles/chuni/const.py | 19 +++++++++++++++++++ 2 files changed, 22 insertions(+), 3 deletions(-) diff --git a/titles/chuni/base.py b/titles/chuni/base.py index 0e0adac..2410ef0 100644 --- a/titles/chuni/base.py +++ b/titles/chuni/base.py @@ -7,7 +7,7 @@ import pytz from typing import Dict, Any, List from core.config import CoreConfig -from titles.chuni.const import ChuniConstants +from titles.chuni.const import ChuniConstants, ItemKind from titles.chuni.database import ChuniData from titles.chuni.config import ChuniConfig SCORE_BUFFER = {} @@ -43,7 +43,7 @@ class ChuniBase: user_id, { "itemId": ticket.strip(), - "itemKind": 5, + "itemKind": ItemKind.TICKET.value, "stock": self.game_cfg.mods.stock_count, "isValid": True, }, @@ -116,7 +116,7 @@ class ChuniBase: user_id, { "itemId": login_item["presentId"], - "itemKind": 6, + "itemKind": ItemKind.PRESENT.value, "stock": login_item["itemNum"], "isValid": True, }, diff --git a/titles/chuni/const.py b/titles/chuni/const.py index 003c618..68d7056 100644 --- a/titles/chuni/const.py +++ b/titles/chuni/const.py @@ -91,3 +91,22 @@ class MapAreaConditionType(Enum): class MapAreaConditionLogicalOperator(Enum): AND = 1 OR = 2 + + +class AvatarCategory(Enum): + WEAR = 1 + HEAD = 2 + FACE = 3 + SKIN = 4 + ITEM = 5 + FRONT = 6 + BACK = 7 + +class ItemKind(Enum): + NAMEPLATE = 1 + TROPHY = 3 + TICKET = 5 + PRESENT = 6 + MAP_ICON = 8 + SYSTEM_VOICE = 9 + AVATAR_ACCESSORY = 11 \ No newline at end of file From 626ce6bd96cc2df4468fcf6338012ffae1070a16 Mon Sep 17 00:00:00 2001 From: daydensteve Date: Sun, 3 Nov 2024 18:37:09 -0500 Subject: [PATCH 05/11] userbox, avatar, mapicon, and voice ui configuration --- titles/chuni/frontend.py | 344 +++++++++++++++++- titles/chuni/templates/chuni_avatar.jinja | 302 +++++++++++++++ titles/chuni/templates/chuni_favorites.jinja | 18 +- titles/chuni/templates/chuni_header.jinja | 12 +- titles/chuni/templates/chuni_index.jinja | 128 +++++++ titles/chuni/templates/chuni_playlog.jinja | 25 +- titles/chuni/templates/chuni_userbox.jinja | 256 +++++++++++++ titles/chuni/templates/css/chuni_style.css | 324 +++++++++++++++++ .../chuni/templates/scripts/collapsibles.js | 66 ++++ 9 files changed, 1458 insertions(+), 17 deletions(-) create mode 100644 titles/chuni/templates/chuni_avatar.jinja create mode 100644 titles/chuni/templates/chuni_userbox.jinja create mode 100644 titles/chuni/templates/scripts/collapsibles.js diff --git a/titles/chuni/frontend.py b/titles/chuni/frontend.py index 69f1ae9..381c08c 100644 --- a/titles/chuni/frontend.py +++ b/titles/chuni/frontend.py @@ -11,7 +11,7 @@ from core.frontend import FE_Base, UserSession from core.config import CoreConfig from .database import ChuniData from .config import ChuniConfig -from .const import ChuniConstants +from .const import ChuniConstants, AvatarCategory, ItemKind def pairwise(iterable): @@ -99,6 +99,12 @@ class ChuniFrontend(FE_Base): Route("/{index}", self.render_GET_playlog, methods=['GET']), ]), Route("/favorites", self.render_GET_favorites, methods=['GET']), + Route("/userbox", self.render_GET_userbox, methods=['GET']), + Route("/avatar", self.render_GET_avatar, methods=['GET']), + Route("/update.map-icon", self.update_map_icon, methods=['POST']), + Route("/update.system-voice", self.update_system_voice, methods=['POST']), + Route("/update.userbox", self.update_userbox, methods=['POST']), + Route("/update.avatar", self.update_avatar, methods=['POST']), Route("/update.name", self.update_name, methods=['POST']), Route("/update.favorite_music_playlog", self.update_favorite_music_playlog, methods=['POST']), Route("/update.favorite_music_favorites", self.update_favorite_music_favorites, methods=['POST']), @@ -123,15 +129,33 @@ class ChuniFrontend(FE_Base): usr_sesh.chunithm_version = versions[0] profile = await self.data.profile.get_profile_data(usr_sesh.user_id, usr_sesh.chunithm_version) + user_id = usr_sesh.user_id + version = usr_sesh.chunithm_version + + # While map icons and system voices weren't present prior to AMAZON, we don't need to bother checking + # version here - it'll just end up being empty sets and the jinja will ignore the variables anyway. + user_map_icons = await self.data.item.get_items(user_id, ItemKind.MAP_ICON.value) + user_map_icons = [icon["itemId"] for icon in user_map_icons] + [profile.mapIconId] + user_system_voices = await self.data.item.get_items(user_id, ItemKind.SYSTEM_VOICE.value) + user_system_voices = [icon["itemId"] for icon in user_system_voices] + [profile.voiceId] + + map_icons, total_map_icons = await self.get_available_map_icons(version, user_map_icons) + system_voices, total_system_voices = await self.get_available_system_voices(version, user_system_voices) + resp = Response(template.render( title=f"{self.core_config.server.name} | {self.nav_name}", game_list=self.environment.globals["game_list"], sesh=vars(usr_sesh), - user_id=usr_sesh.user_id, + user_id=user_id, profile=profile, version_list=ChuniConstants.VERSION_NAMES, versions=versions, - cur_version=usr_sesh.chunithm_version + cur_version=version, + cur_version_name=ChuniConstants.game_ver_to_string(version), + map_icons=map_icons, + system_voices=system_voices, + total_map_icons=total_map_icons, + total_system_voices=total_system_voices ), media_type="text/html; charset=utf-8") if usr_sesh.chunithm_version >= 0: @@ -189,6 +213,8 @@ class ChuniFrontend(FE_Base): profile=profile, hot_list=hot_list, base_list=base_list, + cur_version=usr_sesh.chunithm_version, + cur_version_name=ChuniConstants.game_ver_to_string(usr_sesh.chunithm_version) ), media_type="text/html; charset=utf-8") else: return RedirectResponse("/gate/", 303) @@ -217,7 +243,9 @@ class ChuniFrontend(FE_Base): title=f"{self.core_config.server.name} | {self.nav_name}", game_list=self.environment.globals["game_list"], sesh=vars(usr_sesh), - playlog_count=0 + playlog_count=0, + cur_version=version, + cur_version_name=ChuniConstants.game_ver_to_string(version) ), media_type="text/html; charset=utf-8") playlog = await self.data.score.get_playlogs_limited(user_id, version, index, 20) playlog_with_title = [] @@ -257,6 +285,7 @@ class ChuniFrontend(FE_Base): user_id=user_id, playlog=playlog_with_title, playlog_count=playlog_count, + cur_version=version, cur_version_name=ChuniConstants.game_ver_to_string(version) ), media_type="text/html; charset=utf-8") else: @@ -319,11 +348,318 @@ class ChuniFrontend(FE_Base): user_id=user_id, favorites_by_genre=favorites_by_genre, favorites_count=favorites_count, + cur_version=version, cur_version_name=ChuniConstants.game_ver_to_string(version) ), media_type="text/html; charset=utf-8") else: return RedirectResponse("/gate/", 303) + async def get_available_map_icons(self, version: int, user_unlocked_items: List[int]) -> (List[dict], int): + items = dict() + rows = await self.data.static.get_map_icons(version) + if rows: + for row in rows: + # Only include items that are either available by default or in the user unlocked list + if row["defaultHave"] or row["mapIconId"] in user_unlocked_items: + item = dict() + item["id"] = row["mapIconId"] + item["name"] = row["name"] + item["iconPath"] = path.splitext(row["iconPath"])[0] + ".png" + items[row["mapIconId"]] = item + + return (items, len(rows)) + + async def get_available_system_voices(self, version: int, user_unlocked_items: List[int]) -> (List[dict], int): + items = dict() + rows = await self.data.static.get_system_voices(version) + if rows: + for row in rows: + # Only include items that are either available by default or in the user unlocked list + if row["defaultHave"] or row["voiceId"] in user_unlocked_items: + item = dict() + item["id"] = row["voiceId"] + item["name"] = row["name"] + item["imagePath"] = path.splitext(row["imagePath"])[0] + ".png" + items[row["voiceId"]] = item + + return (items, len(rows)) + + async def get_available_nameplates(self, version: int, user_unlocked_items: List[int]) -> (List[dict], int): + items = dict() + rows = await self.data.static.get_nameplates(version) + if rows: + for row in rows: + # Only include items that are either available by default or in the user unlocked list + if row["defaultHave"] or row["nameplateId"] in user_unlocked_items: + item = dict() + item["id"] = row["nameplateId"] + item["name"] = row["name"] + item["texturePath"] = path.splitext(row["texturePath"])[0] + ".png" + items[row["nameplateId"]] = item + + return (items, len(rows)) + + async def get_available_trophies(self, version: int, user_unlocked_items: List[int]) -> (List[dict], int): + items = dict() + rows = await self.data.static.get_trophies(version) + if rows: + for row in rows: + # Only include items that are either available by default or in the user unlocked list + if row["defaultHave"] or row["trophyId"] in user_unlocked_items: + item = dict() + item["id"] = row["trophyId"] + item["name"] = row["name"] + item["rarity"] = row["rareType"] + items[row["trophyId"]] = item + + return (items, len(rows)) + + async def get_available_characters(self, version: int, user_unlocked_items: List[int]) -> (List[dict], int): + items = dict() + rows = await self.data.static.get_characters(version) + if rows: + for row in rows: + # Only include items that are either available by default or in the user unlocked list + if row["defaultHave"] or row["characterId"] in user_unlocked_items: + item = dict() + item["id"] = row["characterId"] + item["name"] = row["name"] + item["iconPath"] = path.splitext(row["imagePath3"])[0] + ".png" + items[row["characterId"]] = item + + return (items, len(rows)) + + async def get_available_avatar_items(self, version: int, category: AvatarCategory, user_unlocked_items: List[int]) -> (List[dict], int): + items = dict() + rows = await self.data.static.get_avatar_items(version, category.value) + if rows: + for row in rows: + # Only include items that are either available by default or in the user unlocked list + if row["defaultHave"] or row["avatarAccessoryId"] in user_unlocked_items: + item = dict() + item["id"] = row["avatarAccessoryId"] + item["name"] = row["name"] + item["iconPath"] = path.splitext(row["iconPath"])[0] + ".png" + item["texturePath"] = path.splitext(row["texturePath"])[0] + ".png" + items[row["avatarAccessoryId"]] = item + + return (items, len(rows)) + + async def render_GET_userbox(self, request: Request) -> bytes: + template = self.environment.get_template( + "titles/chuni/templates/chuni_userbox.jinja" + ) + usr_sesh = self.validate_session(request) + if not usr_sesh: + usr_sesh = UserSession() + + if usr_sesh.user_id > 0: + if usr_sesh.chunithm_version < 0: + return RedirectResponse("/game/chuni/", 303) + + user_id = usr_sesh.user_id + version = usr_sesh.chunithm_version + + # Get the user profile so we know how the userbox is currently configured + profile = await self.data.profile.get_profile_data(user_id, version) + # Get all the user unlocked components so we know what to populate as options + user_nameplates = await self.data.item.get_items(user_id, ItemKind.NAMEPLATE.value) + user_nameplates = [item["itemId"] for item in user_nameplates] + [profile.nameplateId] + user_trophies = await self.data.item.get_items(user_id, ItemKind.TROPHY.value) + user_trophies = [item["itemId"] for item in user_trophies] + [profile.trophyId] + user_characters = await self.data.item.get_characters(user_id) + user_characters = [chara["characterId"] for chara in user_characters] + [profile.charaIllustId] + + # Build up available list of components + nameplates, total_nameplates = await self.get_available_nameplates(version, user_nameplates) + trophies, total_trophies = await self.get_available_trophies(version, user_trophies) + characters, total_characters = await self.get_available_characters(version, user_characters) + + # Get the user's team + team_name = "ARTEMiS" + if profile["teamId"]: + team = await self.data.profile.get_team_by_id(profile["teamId"]) + team_name = team["teamName"] + # Figure out the rating color we should use (rank maps to the stylesheet) + rating = profile.playerRating / 100; + rating_rank = 0 + if rating >= 16: + rating_rank = 8 + elif rating >= 15.25: + rating_rank = 7 + elif rating >= 14.5: + rating_rank = 6 + elif rating >= 13.25: + rating_rank = 5 + elif rating >= 12: + rating_rank = 4 + elif rating >= 10: + rating_rank = 3 + elif rating >= 7: + rating_rank = 2 + elif rating >= 4: + rating_rank = 1 + + return Response(template.render( + title=f"{self.core_config.server.name} | {self.nav_name}", + game_list=self.environment.globals["game_list"], + sesh=vars(usr_sesh), + user_id=user_id, + cur_version=version, + cur_version_name=ChuniConstants.game_ver_to_string(version), + profile=profile, + team_name=team_name, + rating_rank=rating_rank, + nameplates=nameplates, + trophies=trophies, + characters=characters, + total_nameplates=total_nameplates, + total_trophies=total_trophies, + total_characters=total_characters + ), media_type="text/html; charset=utf-8") + else: + return RedirectResponse("/gate/", 303) + + async def render_GET_avatar(self, request: Request) -> bytes: + template = self.environment.get_template( + "titles/chuni/templates/chuni_avatar.jinja" + ) + usr_sesh = self.validate_session(request) + if not usr_sesh: + usr_sesh = UserSession() + + if usr_sesh.user_id > 0: + if usr_sesh.chunithm_version < 11: + # Avatar configuration only for NEW!! and newer + return RedirectResponse("/game/chuni/", 303) + + user_id = usr_sesh.user_id + version = usr_sesh.chunithm_version + + # Get the user profile so we know what avatar items are currently in use + profile = await self.data.profile.get_profile_data(user_id, version) + # Get all the user avatar accessories so we know what to populate + user_accessories = await self.data.item.get_items(user_id, ItemKind.AVATAR_ACCESSORY.value) + user_accessories = [item["itemId"] for item in user_accessories] + \ + [profile.avatarBack, profile.avatarItem, profile.avatarWear, \ + profile.avatarFront, profile.avatarSkin, profile.avatarHead, profile.avatarFace] + + # Build up available list of items for each avatar category + wears, total_wears = await self.get_available_avatar_items(version, AvatarCategory.WEAR, user_accessories) + faces, total_faces = await self.get_available_avatar_items(version, AvatarCategory.FACE, user_accessories) + heads, total_heads = await self.get_available_avatar_items(version, AvatarCategory.HEAD, user_accessories) + skins, total_skins = await self.get_available_avatar_items(version, AvatarCategory.SKIN, user_accessories) + items, total_items = await self.get_available_avatar_items(version, AvatarCategory.ITEM, user_accessories) + fronts, total_fronts = await self.get_available_avatar_items(version, AvatarCategory.FRONT, user_accessories) + backs, total_backs = await self.get_available_avatar_items(version, AvatarCategory.BACK, user_accessories) + + return Response(template.render( + title=f"{self.core_config.server.name} | {self.nav_name}", + game_list=self.environment.globals["game_list"], + sesh=vars(usr_sesh), + user_id=user_id, + cur_version=version, + cur_version_name=ChuniConstants.game_ver_to_string(version), + profile=profile, + wears=wears, + faces=faces, + heads=heads, + skins=skins, + items=items, + fronts=fronts, + backs=backs, + total_wears=total_wears, + total_faces=total_faces, + total_heads=total_heads, + total_skins=total_skins, + total_items=total_items, + total_fronts=total_fronts, + total_backs=total_backs + ), media_type="text/html; charset=utf-8") + else: + return RedirectResponse("/gate/", 303) + + async def update_map_icon(self, request: Request) -> bytes: + usr_sesh = self.validate_session(request) + if not usr_sesh: + return RedirectResponse("/gate/", 303) + + form_data = await request.form() + new_map_icon: str = form_data.get("id") + + if not new_map_icon: + return RedirectResponse("/gate/?e=4", 303) + + if not await self.data.profile.update_map_icon(usr_sesh.user_id, usr_sesh.chunithm_version, new_map_icon): + return RedirectResponse("/gate/?e=999", 303) + + return RedirectResponse("/game/chuni/", 303) + + async def update_system_voice(self, request: Request) -> bytes: + usr_sesh = self.validate_session(request) + if not usr_sesh: + return RedirectResponse("/gate/", 303) + + form_data = await request.form() + new_system_voice: str = form_data.get("id") + + if not new_system_voice: + return RedirectResponse("/gate/?e=4", 303) + + if not await self.data.profile.update_system_voice(usr_sesh.user_id, usr_sesh.chunithm_version, new_system_voice): + return RedirectResponse("/gate/?e=999", 303) + + return RedirectResponse("/game/chuni/", 303) + + async def update_userbox(self, request: Request) -> bytes: + usr_sesh = self.validate_session(request) + if not usr_sesh: + return RedirectResponse("/gate/", 303) + + form_data = await request.form() + new_nameplate: str = form_data.get("nameplate") + new_trophy: str = form_data.get("trophy") + new_character: str = form_data.get("character") + + if not new_nameplate or \ + not new_trophy or \ + not new_character: + return RedirectResponse("/game/chuni/userbox?e=4", 303) + + if not await self.data.profile.update_userbox(usr_sesh.user_id, usr_sesh.chunithm_version, new_nameplate, new_trophy, new_character): + return RedirectResponse("/gate/?e=999", 303) + + return RedirectResponse("/game/chuni/userbox", 303) + + async def update_avatar(self, request: Request) -> bytes: + usr_sesh = self.validate_session(request) + if not usr_sesh: + return RedirectResponse("/gate/", 303) + + form_data = await request.form() + new_wear: str = form_data.get("wear") + new_face: str = form_data.get("face") + new_head: str = form_data.get("head") + new_skin: str = form_data.get("skin") + new_item: str = form_data.get("item") + new_front: str = form_data.get("front") + new_back: str = form_data.get("back") + + if not new_wear or \ + not new_face or \ + not new_head or \ + not new_skin or \ + not new_item or \ + not new_front or \ + not new_back: + return RedirectResponse("/game/chuni/avatar?e=4", 303) + + if not await self.data.profile.update_avatar(usr_sesh.user_id, usr_sesh.chunithm_version, new_wear, new_face, new_head, new_skin, new_item, new_front, new_back): + return RedirectResponse("/gate/?e=999", 303) + + return RedirectResponse("/game/chuni/avatar", 303) + + async def update_name(self, request: Request) -> bytes: usr_sesh = self.validate_session(request) if not usr_sesh: diff --git a/titles/chuni/templates/chuni_avatar.jinja b/titles/chuni/templates/chuni_avatar.jinja new file mode 100644 index 0000000..f53ce5c --- /dev/null +++ b/titles/chuni/templates/chuni_avatar.jinja @@ -0,0 +1,302 @@ +{% extends "core/templates/index.jinja" %} +{% block content %} + + +

+ {% include 'titles/chuni/templates/chuni_header.jinja' %} + + +
+
+
+ + + + + + + + + + + + + +
AVATAR
+ + + + + + + + + + + + +
Wear:
Face:
Head:
Skin:
Item:
Front:
Back:
+      + +
+
+
+
+ + +
+ + + +
+ {% for item in wears.values() %} + {{ item[ + + {% endfor %} +
+
+ + + +
+ {% for item in faces.values() %} + {{ item[ + + {% endfor %} +
+
+ + + +
+ {% for item in heads.values() %} + {{ item[ + + {% endfor %} +
+
+ + + +
+ {% for item in skins.values() %} + {{ item[ + + {% endfor %} +
+
+ + + +
+ {% for item in items.values() %} + {{ item[ + + {% endfor %} +
+
+ + + +
+ {% for item in fronts.values() %} + {{ item[ + + {% endfor %} +
+
+ + + +
+ {% for item in backs.values() %} + {{ item[ + + {% endfor %} +
+ +
+ + {% if error is defined %} + {% include "core/templates/widgets/err_banner.jinja" %} + {% endif %} +
+ + + +{% endblock content %} \ No newline at end of file diff --git a/titles/chuni/templates/chuni_favorites.jinja b/titles/chuni/templates/chuni_favorites.jinja index a386f6a..9ed23c3 100644 --- a/titles/chuni/templates/chuni_favorites.jinja +++ b/titles/chuni/templates/chuni_favorites.jinja @@ -7,15 +7,10 @@ {% include 'titles/chuni/templates/chuni_header.jinja' %} {% if favorites_by_genre is defined and favorites_by_genre is not none %}
+ + {% if cur_version >= 6 %} + +
+
+ +
+ {% for item in map_icons.values() %} + {{ item[ + + {% endfor %} +
+
+
+ + +
+
+ +
+ {% for item in system_voices.values() %} + {{ item[ + + {% endfor %} +
+
+
+ {% endif %} +
@@ -147,4 +186,93 @@ }); } + +{% if cur_version >= 6 %} + +{% endif %} + {% endblock content %} \ No newline at end of file diff --git a/titles/chuni/templates/chuni_playlog.jinja b/titles/chuni/templates/chuni_playlog.jinja index 8e035f3..cdd3f98 100644 --- a/titles/chuni/templates/chuni_playlog.jinja +++ b/titles/chuni/templates/chuni_playlog.jinja @@ -7,20 +7,15 @@ {% include 'titles/chuni/templates/chuni_header.jinja' %} {% if playlog is defined and playlog is not none %}
-

{{ cur_version_name }}

Playlog Count: {{ playlog_count }}

{% set rankName = ['D', 'C', 'B', 'BB', 'BBB', 'A', 'AA', 'AAA', 'S', 'S+', 'SS', 'SS+', 'SSS', 'SSS+'] %} {% set difficultyName = ['normal', 'hard', 'expert', 'master', 'ultimate'] %} {% for record in playlog %} - - - -
-

+

{{ '★' if record.isFav else '☆' }}

{{ record.title }}
@@ -191,5 +186,23 @@ } }); }); + + // Add/Remove Favorite + function updateFavorite(elementId, musicId) { + element = document.getElementById(elementId); + isAdd = 1; + if (element.classList.contains("fav-set")) + { + isAdd = 0; + } + + $.post("/game/chuni/update.favorite_music_favorites", { musicId: musicId, isAdd: isAdd }) + .done(function (data) { + location.reload(); + }) + .fail(function () { + alert("Failed to update favorite."); + }); + } {% endblock content %} \ No newline at end of file diff --git a/titles/chuni/templates/chuni_userbox.jinja b/titles/chuni/templates/chuni_userbox.jinja new file mode 100644 index 0000000..bd64943 --- /dev/null +++ b/titles/chuni/templates/chuni_userbox.jinja @@ -0,0 +1,256 @@ +{% extends "core/templates/index.jinja" %} +{% block content %} + + +
+ {% include 'titles/chuni/templates/chuni_header.jinja' %} + + +
+
+
+
+ + + + + + + + + + +
USER BOX
+ + + + + +
{{team_name}}
+ + + +
+ + + +
+ Lv. + {{ profile.level }}   {{ profile.userName }} +
+
+ RATING +   {{ profile.playerRating/100 }} +
+ + + + +
Nameplate:
Trophy:
+ +
Character:
+      + +
+
+
+ + + +
+ + + +
+ {% for item in nameplates.values() %} + {{ item[ + + {% endfor %} +
+
+ + + +
+ {% for item in characters.values() %} + {{ item[ + + {% endfor %} +
+ +
+ + {% if error is defined %} + {% include "core/templates/widgets/err_banner.jinja" %} + {% endif %} + + + + +{% endblock content %} \ No newline at end of file diff --git a/titles/chuni/templates/css/chuni_style.css b/titles/chuni/templates/css/chuni_style.css index 39c68b7..18ce6c5 100644 --- a/titles/chuni/templates/css/chuni_style.css +++ b/titles/chuni/templates/css/chuni_style.css @@ -159,6 +159,45 @@ caption { font-weight: bold; } +.rating { + font-weight: bold; + -webkit-text-stroke-width: 1px; + -webkit-text-stroke-color: black; +} + +.rating-rank0 { + color: #008000; +} + +.rating-rank1 { + color: #ffa500; +} +.rating-rank2 { + color: #ff0000; +} +.rating-rank3 { + color: #800080; +} +.rating-rank4 { + color: #cd853f; +} +.rating-rank5 { + color: #c0c0c0; +} +.rating-rank6 { + color: #ffd700; +} +.rating-rank7 { + color: #a9a9a9; +} + +.rating-rank8 { + background: linear-gradient(to right, red, yellow, lime, aqua, blue, fuchsia) 0 / 5em; + background-clip: text; + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + .scrolling-text { overflow: hidden; } @@ -194,6 +233,41 @@ caption { } } +/* + Styles to support collapsible boxes (used for browsing images) +*/ +.collapsible { + background-color: #555; + cursor: pointer; + padding-bottom: 16px; + width: 100%; + border: none; + text-align: left; + outline: none; + font-family: monospace; + font-weight: bold; +} + + .collapsible:after { + content: '[+]'; + float: right; + } + +.collapsible-active:after { + content: "[-]"; +} + +.collapsible-content { + max-height: 0px; + overflow: hidden; + opacity: 0; + transition: max-height 0.2s ease-out; + background-color: #DDD; +} + +/* + Styles for favorites star in /playlog +*/ .fav { padding: 0; padding-left: 4px; @@ -206,7 +280,257 @@ caption { color: gold; } +/* + Styles for favorites in /favorites +*/ .btn-fav-remove { padding:10px; width:100%; +} + +/* + Styles for userbox configuration +*/ +.userbox { + position: absolute; +} + +.userbox-nameplate { + top: 72px; + left: 32px; +} + +.userbox-teamframe { + top: 74px; + left: 156px; +} + +.userbox-teamname { + top: 72px; + left: 254px; + padding: 8px 20px; + font-size: 22px; + text-shadow: rgba(0,0,0,0.8) 2px 2px; + color: #DDD; + width: 588px; + text-align: left; +} + +.userbox-trophy { + top: 170px; + left: 250px; + zoom: 0.70; +} + +.userbox-trophy-name { + top: 170px; + left: 250px; + padding: 8px 20px; + font-size: 28px; + font-weight: bold; + color: #333; + width: 588px; + text-align: center; +} + +.userbox-ratingframe { + top: 160px; + left: 175px; +} + +.userbox-charaframe { + top: 267px; + left: 824px; + zoom: 0.61; +} + +.userbox-chara { + top: 266px; + left: 814px; + zoom: 0.62; +} + +.userbox-name { + top: 160px; + left: 162px; + padding: 8px 20px; + font-size: 32px; + font-weight: bold; + color: #333; + text-align: left; +} + +.userbox-name-level-label { + font-size: 24px; +} + +.userbox-rating { + top: 204px; + left: 166px; + padding: 8px 20px; + font-size: 24px; + text-align: left; +} + +.userbox-rating-label { + font-size: 16px; +} + +.trophy-rank0 { + color: #111; + background-color: #DDD; +} +.trophy-rank1 { + color: #111; + background-color: #D85; +} +.trophy-rank2 { + color: #111; + background-color: #ADF; +} +.trophy-rank3 { + color: #111; + background-color: #EB3; +} +.trophy-rank4 { + color: #111; + background-color: #EB3; +} +.trophy-rank5 { + color: #111; + background-color: #FFA; +} +.trophy-rank6 { + color: #111; + background-color: #FFA; +} +.trophy-rank7 { + color: #111; + background-color: #FCF; +} +.trophy-rank8 { + color: #111; + background-color: #FCF; +} +.trophy-rank9 { + color: #111; + background-color: #07C; +} +.trophy-rank10 { + color: #111; + background-color: #7FE; +} +.trophy-rank11 { + color: #111; + background-color: #8D7; +} + +/* + Styles for scrollable divs (used for browsing images) +*/ +.scrolling-lists { + table-layout: fixed; +} + + .scrolling-lists div { + overflow: auto; + white-space: nowrap; + } + + .scrolling-lists img { + width: 128px; + } + +.scrolling-lists-lg { + table-layout: fixed; + width: 100%; +} + + .scrolling-lists-lg div { + overflow: auto; + white-space: nowrap; + padding: 4px; + } + + .scrolling-lists-lg img { + padding: 4px; + width: 128px; + } + +/* + Styles for avatar configuration +*/ +.avatar-preview { + position:absolute; + zoom:0.5; +} + +.avatar-preview-wear { + top: 280px; + left: 60px; +} + +.avatar-preview-face { + top: 262px; + left: 200px; +} + +.avatar-preview-head { + top: 130px; + left: 120px; +} + +.avatar-preview-skin-body { + top: 250px; + left: 190px; + height: 406px; + width: 256px; + object-fit: cover; + object-position: top; +} + +.avatar-preview-skin-leftfoot { + top: 625px; + left: 340px; + object-position: -84px -406px; +} + +.avatar-preview-skin-rightfoot { + top: 625px; + left: 40px; + object-position: 172px -406px; +} + +.avatar-preview-common { + top: 250px; + left: 135px; +} + +.avatar-preview-item-lefthand { + top: 180px; + left: 370px; + height: 544px; + width: 200px; + object-fit: cover; + object-position: right; +} + +.avatar-preview-item-righthand { + top: 180px; + left: 65px; + height: 544px; + width: 200px; + object-fit: cover; + object-position: left; +} + +.avatar-preview-back { + top: 140px; + left: 46px; +} + +.avatar-preview-platform { + top: 310px; + left: 55px; + zoom: 1; } \ No newline at end of file diff --git a/titles/chuni/templates/scripts/collapsibles.js b/titles/chuni/templates/scripts/collapsibles.js new file mode 100644 index 0000000..ff2b5a3 --- /dev/null +++ b/titles/chuni/templates/scripts/collapsibles.js @@ -0,0 +1,66 @@ +/// +/// Handles the collapsible behavior of each of the scrollable containers +/// +/// @note Intent is to include this file via jinja in the same +{% else %} +{% endif %} {% endblock content %} \ No newline at end of file diff --git a/titles/chuni/templates/chuni_index.jinja b/titles/chuni/templates/chuni_index.jinja index c0e22b9..417b04f 100644 --- a/titles/chuni/templates/chuni_index.jinja +++ b/titles/chuni/templates/chuni_index.jinja @@ -72,11 +72,11 @@ {% if cur_version >= 6 %} Map Icon: -
{{ map_icons[profile.mapIconId]["name"] }}
+
{{ map_icons[profile.mapIconId]["name"] if map_icons|length > 0 else "Server DB needs upgraded or is not populated with necessary data" }}
System Voice: -
{{ system_voices[profile.voiceId]["name"] }}
+
{{ system_voices[profile.voiceId]["name"] if system_voices|length > 0 else "Server DB needs upgraded or is not populated with necessary data" }}
{% endif %} diff --git a/titles/chuni/templates/chuni_userbox.jinja b/titles/chuni/templates/chuni_userbox.jinja index fbc0110..ab0f821 100644 --- a/titles/chuni/templates/chuni_userbox.jinja +++ b/titles/chuni/templates/chuni_userbox.jinja @@ -91,6 +91,12 @@ {% endif %} +{% if nameplates|length == 0 or characters|length == 0 %} + +{% else %} - +{% endif %} {% endblock content %} \ No newline at end of file
-

{{ cur_version_name }}

Favorite Count: {{ favorites_count }}

{% for key, genre in favorites_by_genre.items() %}

{{ key }}

{% for favorite in genre %} -
@@ -28,7 +23,7 @@
{{ favorite.artist }}


- +
@@ -51,5 +46,16 @@ } }); }); + + // Remove Favorite + function removeFavorite(musicId) { + $.post("/game/chuni/update.favorite_music_favorites", { musicId: musicId, isAdd: 0 }) + .done(function (data) { + location.reload(); + }) + .fail(function () { + alert("Failed to remove favorite."); + }); + } {% endblock content %} \ No newline at end of file diff --git a/titles/chuni/templates/chuni_header.jinja b/titles/chuni/templates/chuni_header.jinja index 6085d14..56f8b39 100644 --- a/titles/chuni/templates/chuni_header.jinja +++ b/titles/chuni/templates/chuni_header.jinja @@ -1,5 +1,5 @@
-

Chunithm

+

{{ cur_version_name }}

\ No newline at end of file diff --git a/titles/chuni/templates/chuni_index.jinja b/titles/chuni/templates/chuni_index.jinja index 1854a89..c0e22b9 100644 --- a/titles/chuni/templates/chuni_index.jinja +++ b/titles/chuni/templates/chuni_index.jinja @@ -69,9 +69,48 @@ Last Play Date: {{ profile.lastPlayDate }} + {% if cur_version >= 6 %} + + Map Icon: +
{{ map_icons[profile.mapIconId]["name"] }}
+ + + System Voice: +
{{ system_voices[profile.voiceId]["name"] }}
+ + {% endif %}