Implement animated rainbow nameplate and enable via config

This commit is contained in:
somepin
2025-11-05 10:50:49 -05:00
parent b5625f7565
commit ac01aa63ba
8 changed files with 27 additions and 10 deletions

View File

@@ -135,7 +135,7 @@ class DanSelectPlayer:
self.chara = Chara2D(int(self.player_num) - 1, 100)
plate_info = global_data.config[f'nameplate_{self.player_num}p']
self.nameplate = Nameplate(plate_info['name'], plate_info['title'],
int(self.player_num), plate_info['dan'], plate_info['gold'], plate_info['title_bg'])
int(self.player_num), plate_info['dan'], plate_info['gold'], plate_info['rainbow'], plate_info['title_bg'])
def update(self, current_time):
"""Update player state"""

View File

@@ -34,7 +34,7 @@ class EntryScreen(Screen):
# Initial nameplate for side selection
plate_info = global_data.config['nameplate_1p']
self.nameplate = Nameplate(plate_info['name'], plate_info['title'], -1, -1, False, 0)
self.nameplate = Nameplate(plate_info['name'], plate_info['title'], -1, -1, False, False, 0)
self.coin_overlay = CoinOverlay()
self.allnet_indicator = AllNetIcon()
@@ -102,7 +102,7 @@ class EntryScreen(Screen):
audio.play_sound('don', 'sound')
self.state = State.SELECT_SIDE
plate_info = global_data.config['nameplate_2p']
self.nameplate = Nameplate(plate_info['name'], plate_info['title'], -1, -1, False, 1)
self.nameplate = Nameplate(plate_info['name'], plate_info['title'], -1, -1, False, False, 1)
self.chara = Chara2D(1, 100)
self.side_select_fade.restart()
self.side = 1
@@ -240,6 +240,7 @@ class EntryPlayer:
player_num,
plate_info['dan'],
plate_info['gold'],
plate_info['rainbow'],
plate_info['title_bg']
)
self.indicator = Indicator(Indicator.State.SELECT)

View File

@@ -328,7 +328,7 @@ class Player:
self.ending_anim: Optional[FailAnimation | ClearAnimation | FCAnimation] = None
self.is_gogo_time = False
plate_info = global_data.config[f'nameplate_{self.is_2p+1}p']
self.nameplate = Nameplate(plate_info['name'], plate_info['title'], global_data.player_num, plate_info['dan'], plate_info['gold'], plate_info['title_bg'])
self.nameplate = Nameplate(plate_info['name'], plate_info['title'], global_data.player_num, plate_info['dan'], plate_info['gold'], plate_info['rainbow'], plate_info['title_bg'])
self.chara = Chara2D(player_number - 1, self.bpm)
if global_data.config['general']['judge_counter']:
self.judge_counter = JudgeCounter()

View File

@@ -120,7 +120,7 @@ class ResultPlayer:
session_data = global_data.session_data[int(self.player_num)-1]
self.score_animator = ScoreAnimator(session_data.result_score)
plate_info = global_data.config[f'nameplate_{self.player_num}p']
self.nameplate = Nameplate(plate_info['name'], plate_info['title'], int(self.player_num), plate_info['dan'], plate_info['gold'], plate_info['title_bg'])
self.nameplate = Nameplate(plate_info['name'], plate_info['title'], int(self.player_num), plate_info['dan'], plate_info['gold'], plate_info['rainbow'], plate_info['title_bg'])
self.score, self.good, self.ok, self.bad, self.max_combo, self.total_drumroll = '', '', '', '', '', ''
self.update_list: list[tuple[str, int]] = [('score', session_data.result_score),
('good', session_data.result_good),

View File

@@ -399,7 +399,7 @@ class SongSelectPlayer:
self.chara = Chara2D(int(self.player_num) - 1, 100)
plate_info = global_data.config[f'nameplate_{self.player_num}p']
self.nameplate = Nameplate(plate_info['name'], plate_info['title'],
int(self.player_num), plate_info['dan'], plate_info['gold'], plate_info['title_bg'])
int(self.player_num), plate_info['dan'], plate_info['gold'], plate_info['rainbow'], plate_info['title_bg'])
def update(self, current_time):
"""Update player state"""