From 1c2bac36a8b00b469688834b0df9982c4911a74a Mon Sep 17 00:00:00 2001 From: Kyzentun Keeslala Date: Sun, 12 Jun 2016 14:51:27 -0600 Subject: [PATCH] Moved actors for ScreenSyncOverlay from the engine to a lua file in the theme to make the overlay themable. Renamed some strings used by ScreenSyncOverlay to have actual names. They were using their untranslated text as names. Removed ScreenSyncOverlay section from de.ini because none of the strings were actually translated. Removed most of ScreenSyncOverlay section from fr.ini because the strings were not actually translated. --- .../ScreenSyncOverlay overlay.lua | 70 ++++++++++++++++ Themes/_fallback/Languages/de.ini | 18 ---- Themes/_fallback/Languages/en.ini | 10 +-- Themes/_fallback/Languages/es.ini | 10 +-- Themes/_fallback/Languages/fr.ini | 15 ---- Themes/_fallback/Languages/ja.ini | 10 +-- Themes/_fallback/Languages/nl.ini | 10 +-- Themes/_fallback/Languages/pl.ini | 10 +-- Themes/_fallback/Languages/zh.ini | 10 +-- src/ScreenSyncOverlay.cpp | 82 ++++--------------- src/ScreenSyncOverlay.h | 8 +- 11 files changed, 119 insertions(+), 134 deletions(-) create mode 100644 Themes/_fallback/BGAnimations/ScreenSyncOverlay overlay.lua diff --git a/Themes/_fallback/BGAnimations/ScreenSyncOverlay overlay.lua b/Themes/_fallback/BGAnimations/ScreenSyncOverlay overlay.lua new file mode 100644 index 0000000000..6bdf5fb42f --- /dev/null +++ b/Themes/_fallback/BGAnimations/ScreenSyncOverlay overlay.lua @@ -0,0 +1,70 @@ +local revert_sync_changes= THEME:GetString("ScreenSyncOverlay", "revert_sync_changes") +local change_bpm= THEME:GetString("ScreenSyncOverlay", "change_bpm") +local change_song_offset= THEME:GetString("ScreenSyncOverlay", "change_song_offset") +local change_machine_offset= THEME:GetString("ScreenSyncOverlay", "change_machine_offset") +local hold_alt= THEME:GetString("ScreenSyncOverlay", "hold_alt") + +return Def.ActorFrame{ + Def.Quad{ + Name= "quad", InitCommand= function(self) + self:diffuse{0, 0, 0, 0}:horizalign(right):vertalign(top) + :xy(_screen.w, 0) + end, + ShowCommand= function(self) + self:stoptweening():linear(.3):diffusealpha(.5) + :sleep(4):linear(.3):diffusealpha(0) + end, + HideCommand= function(self) + self:finishtweening() + end, + }, + Def.BitmapText{ + Name= "help_text", Font= "Common Normal", InitCommand= function(self) + local text= { + revert_sync_changes..":", + " F4", + change_bpm..":", + " F9/F10", + change_song_offset..":", + " F11/F12", + change_machine_offset..":", + " Shift + F11/F12", + hold_alt, + } + self:diffuse{1, 1, 1, 0}:horizalign(left):vertalign(top) + :shadowlength(2):settext(table.concat(text, "\n")) + :xy(_screen.w - self:GetZoomedWidth() - 10, 10) + + local quad= self:GetParent():GetChild("quad") + quad:zoomtowidth(self:GetZoomedWidth()+20) + :zoomtoheight(self:GetZoomedHeight()+20) + end, + ShowCommand= function(self) + self:stoptweening():linear(.3):diffusealpha(1) + :sleep(4):linear(.3):diffusealpha(0) + end, + HideCommand= function(self) + self:finishtweening() + end, + }, + Def.BitmapText{ + Name= "Status", Font= "ScreenSyncOverlay status", + InitCommand= function(self) + ActorUtil.LoadAllCommands(self, "ScreenSyncOverlay") + self:playcommand("On") + end, + SetStatusCommand= function(self, param) + self:settext(param.text) + end, + }, + Def.BitmapText{ + Name= "Adjustments", Font= "ScreenSyncOverlay adjustments", + InitCommand= function(self) + ActorUtil.LoadAllCommands(self, "ScreenSyncOverlay") + self:playcommand("On") + end, + SetAdjustmentsCommand= function(self, param) + self:visible(param.visible):settext(param.text) + end, + }, +} diff --git a/Themes/_fallback/Languages/de.ini b/Themes/_fallback/Languages/de.ini index 983d67a53e..1f74a2d012 100644 --- a/Themes/_fallback/Languages/de.ini +++ b/Themes/_fallback/Languages/de.ini @@ -1949,24 +1949,6 @@ Stats not saved - No memory cards ready.=Statistiken nicht gespeichert - Keine S The profile on P%d card contains corrupt or tampered data.=Das Profil von P%ds Karte enthält korrupte oder modifizierte Daten. There is no machine profile on P%d card.=Es gibt kein Maschinen-Profil auf P%ds Karte. -[ScreenSyncOverlay] -AutoPlay=AutoPlay -AutoPlayCPU=AutoPlayCPU -AutoSync Machine=AutoSync Machine -AutoSync Song=AutoSync Song -AutoSync Tempo=AutoSync Tempo -Can't sync while playing a course.=Can't sync while playing a course. -Sync changes reverted.=Sync changes reverted. -Revert sync changes=Revert sync changes -Current BPM - smaller/larger=Current BPM - smaller/larger -Song offset - notes earlier/later=Song offset - notes earlier/later -Machine offset - notes earlier/later=Machine offset - notes earlier/later -(hold Alt for smaller increment)=(hold Alt for smaller increment) -Old offset=Old offset -New offset=New offset -Collecting sample=Collecting sample -Standard deviation=Standard deviation - [ScreenSystemLayer] CreditsCardChanged=KARTE AUSGEWECHSELT CreditsCardChecking=KARTEN-ÜBERPRÜFUNG diff --git a/Themes/_fallback/Languages/en.ini b/Themes/_fallback/Languages/en.ini index 91092fcd79..6787e2ab1a 100644 --- a/Themes/_fallback/Languages/en.ini +++ b/Themes/_fallback/Languages/en.ini @@ -1960,11 +1960,11 @@ AutoSync Song=AutoSync Song AutoSync Tempo=AutoSync Tempo Can't sync while playing a course.=Can't sync while playing a course. Sync changes reverted.=Sync changes reverted. -Revert sync changes=Revert sync changes -Current BPM - smaller/larger=Current BPM - smaller/larger -Song offset - notes earlier/later=Song offset - notes earlier/later -Machine offset - notes earlier/later=Machine offset - notes earlier/later -(hold Alt for smaller increment)=(hold Alt for smaller increment) +revert_sync_changes=Revert sync changes +change_bpm=Current BPM - smaller/larger +change_song_offset=Song offset - notes earlier/later +change_machine_offset=Machine offset - notes earlier/later +hold_alt=(hold Alt for smaller increment) Old offset=Old offset New offset=New offset Collecting sample=Collecting sample diff --git a/Themes/_fallback/Languages/es.ini b/Themes/_fallback/Languages/es.ini index 7e79da6b0a..a32dbdc542 100644 --- a/Themes/_fallback/Languages/es.ini +++ b/Themes/_fallback/Languages/es.ini @@ -1917,11 +1917,11 @@ AutoSync Song=Autosinc. canción AutoSync Tempo=Autosinc. ritmo Can't sync while playing a course.=No se puede sinc. en un curso. Sync changes reverted.=Cambios de sinc. descartados. -Revert sync changes=Descartar cambios de sinc. -Current BPM - smaller/larger=BPM actual - mayor/superior -Song offset - notes earlier/later=Ajuste de canción - notas antes/después -Machine offset - notes earlier/later=Ajuste de máquina - notas antes/después -(hold Alt for smaller increment)=(mantén Alt para incrementos menores) +revert_sync_changes=Descartar cambios de sinc. +change_bpm=BPM actual - mayor/superior +change_song_offset=Ajuste de canción - notas antes/después +change_machine_offset=Ajuste de máquina - notas antes/después +hold_alt=(mantén Alt para incrementos menores) Old offset=Ajuste anterior New offset=Ajueste nuevo Collecting sample=Recogiendo muestra diff --git a/Themes/_fallback/Languages/fr.ini b/Themes/_fallback/Languages/fr.ini index 6e6370fbf5..ed825c5f76 100644 --- a/Themes/_fallback/Languages/fr.ini +++ b/Themes/_fallback/Languages/fr.ini @@ -1930,21 +1930,6 @@ The profile on P%d card contains corrupt or tampered data.=The profile on P%d ca There is no machine profile on P%d card.=There is no machine profile on P%d card. [ScreenSyncOverlay] -AutoPlay=AutoPlay -AutoPlayCPU=AutoPlayCPU -AutoSync Machine=AutoSync Machine -AutoSync Song=AutoSync Song -AutoSync Tempo=AutoSync Tempo -Can't sync while playing a course.=Can't sync while playing a course. -Sync changes reverted.=Sync changes reverted. -Revert sync changes=Revert sync changes -Current BPM - smaller/larger=Current BPM - smaller/larger -Song offset - notes earlier/later=Song offset - notes earlier/later -Machine offset - notes earlier/later=Machine offset - notes earlier/later -(hold Alt for smaller increment)=(hold Alt for smaller increment) -Old offset=Old offset -New offset=New offset -Collecting sample=Collecting sample Standard deviation=Déviation standard [ScreenSystemLayer] diff --git a/Themes/_fallback/Languages/ja.ini b/Themes/_fallback/Languages/ja.ini index c761272269..05678c20f2 100644 --- a/Themes/_fallback/Languages/ja.ini +++ b/Themes/_fallback/Languages/ja.ini @@ -2108,11 +2108,11 @@ AutoSync Song=AutoSync Song AutoSync Tempo=AutoSync Tempo Can't sync while playing a course.=コースプレイ中は自動調整できません。 Sync changes reverted.=自動調整の結果を破棄しました。 -Revert sync changes=調整結果の破棄 -Current BPM - smaller/larger=現在のBPMを下げる/上げる -Song offset - notes earlier/later=譜面のオフセットを減らす/増やす -Machine offset - notes earlier/later=筐体オフセットを減らす/増やす -(hold Alt for smaller increment)=(Altを押しながらだと細かい調整が可能です) +revert_sync_changes=調整結果の破棄 +change_bpm=現在のBPMを下げる/上げる +change_song_offset=譜面のオフセットを減らす/増やす +change_machine_offset=筐体オフセットを減らす/増やす +hold_alt=(Altを押しながらだと細かい調整が可能です) Old offset=旧オフセット New offset=新オフセット Collecting sample=標本 diff --git a/Themes/_fallback/Languages/nl.ini b/Themes/_fallback/Languages/nl.ini index f2a8f0df83..36668de64a 100644 --- a/Themes/_fallback/Languages/nl.ini +++ b/Themes/_fallback/Languages/nl.ini @@ -1923,11 +1923,11 @@ AutoSync Song=AutoSync Nummer AutoSync Tempo=AutoSync Tempo Can't sync while playing a course.=Kan niet synchroniseren tijdens het spelen van een parkoers. Sync changes reverted.=Sync-veranderingen ongedaan gemaakt. -Revert sync changes=Maak sync-veranderingen ongedaan -Current BPM - smaller/larger=Huidige BPM - kleiner/groter -Song offset - notes earlier/later=Nummer offset - noten eerder/later -Machine offset - notes earlier/later=Machine offset - noten eerder/later -(hold Alt for smaller increment)=(Hou Alt ingedrukt voor kleinere stappen) +revert_sync_changes=Maak sync-veranderingen ongedaan +change_bpm=Huidige BPM - kleiner/groter +change_song_offset=Nummer offset - noten eerder/later +change_machine_offset=Machine offset - noten eerder/later +hold_alt=(Hou Alt ingedrukt voor kleinere stappen) Old offset=Oude offset New offset=Nieuwe offset Collecting sample=Sample wordt genomen diff --git a/Themes/_fallback/Languages/pl.ini b/Themes/_fallback/Languages/pl.ini index 9eb9f115c7..ee2f16979e 100644 --- a/Themes/_fallback/Languages/pl.ini +++ b/Themes/_fallback/Languages/pl.ini @@ -1906,11 +1906,11 @@ AutoSync Song=AutoSync. Piosenki AutoSync Tempo=AutoSync. Tempa Can't sync while playing a course.=Nie można synchronizować podczas maratonu. Sync changes reverted.=Przywrócono stare ustawienia synchronizacji. -Revert sync changes=Przywróć stare ustawienia synchronizacji -Current BPM - smaller/larger=Bieżące BPM - większe/mniejsze -Song offset - notes earlier/later=Offset Piosenki - strzałki wcześniej/później -Machine offset - notes earlier/later=Offset Maszyny - strzałki wcześniej/później -(hold Alt for smaller increment)=(przytrzymaj Alt by zmniejszyć przyrost wartości) +revert_sync_changes=Przywróć stare ustawienia synchronizacji +change_bpm=Bieżące BPM - większe/mniejsze +change_song_offset=Offset Piosenki - strzałki wcześniej/później +change_machine_offset=Offset Maszyny - strzałki wcześniej/później +hold_alt=(przytrzymaj Alt by zmniejszyć przyrost wartości) Old offset=Stary offset New offset=Nowy offset Collecting sample=Zbierane próbki diff --git a/Themes/_fallback/Languages/zh.ini b/Themes/_fallback/Languages/zh.ini index 07bdca1104..4d59a91996 100644 --- a/Themes/_fallback/Languages/zh.ini +++ b/Themes/_fallback/Languages/zh.ini @@ -1965,11 +1965,11 @@ AutoSync Song=自動同歩歌曲 AutoSync Tempo=自動同歩節奏 Can't sync while playing a course.=遊玩組曲期間不可同歩 Sync changes reverted.=已恢復同歩變更 -Revert sync changes=恢復同歩變更 -Current BPM - smaller/larger=現在的BPM已轉移 -Song offset - notes earlier/later=歌曲偏移植(offset)已轉移 -Machine offset - notes earlier/later=整體偏移植(offset)已轉移 -(hold Alt for smaller increment)=(按Alt鍵緩和數値差距) +revert_sync_changes=恢復同歩變更 +change_bpm=現在的BPM已轉移 +change_song_offset=歌曲偏移植(offset)已轉移 +change_machine_offset=整體偏移植(offset)已轉移 +hold_alt=(按Alt鍵緩和數値差距) Old offset=舊偏移値(offset) New offset=新偏移値(offset) Collecting sample=採樣 diff --git a/src/ScreenSyncOverlay.cpp b/src/ScreenSyncOverlay.cpp index 5299123ec8..74e7830893 100644 --- a/src/ScreenSyncOverlay.cpp +++ b/src/ScreenSyncOverlay.cpp @@ -18,53 +18,12 @@ static bool IsGameplay() REGISTER_SCREEN_CLASS( ScreenSyncOverlay ); -static LocalizedString REVERT_SYNC_CHANGES ( "ScreenSyncOverlay", "Revert sync changes" ); -static LocalizedString CURRENT_BPM ( "ScreenSyncOverlay", "Current BPM - smaller/larger" ); -static LocalizedString SONG_OFFSET ( "ScreenSyncOverlay", "Song offset - notes earlier/later" ); -static LocalizedString MACHINE_OFFSET ( "ScreenSyncOverlay", "Machine offset - notes earlier/later" ); -static LocalizedString HOLD_ALT ( "ScreenSyncOverlay", "(hold Alt for smaller increment)" ); - void ScreenSyncOverlay::Init() { Screen::Init(); - - m_quad.SetDiffuse( RageColor(0,0,0,0) ); - m_quad.SetHorizAlign(align_right); - m_quad.SetVertAlign(align_top); - m_quad.SetXY(SCREEN_WIDTH, SCREEN_TOP); - this->AddChild( &m_quad ); - m_textHelp.LoadFromFont( THEME->GetPathF("Common", "normal") ); - m_textHelp.SetHorizAlign( align_left ); - m_textHelp.SetVertAlign(align_top); - m_textHelp.SetDiffuseAlpha( 0 ); - m_textHelp.SetShadowLength( 2 ); - m_textHelp.SetText( - REVERT_SYNC_CHANGES.GetValue()+":\n" - " F4\n" + - CURRENT_BPM.GetValue()+":\n" - " F9/F10\n" + - CURRENT_BPM.GetValue()+":\n" - " F11/F12\n" + - MACHINE_OFFSET.GetValue()+":\n" - " Shift + F11/F12\n" + - HOLD_ALT.GetValue() ); - m_textHelp.SetXY(SCREEN_WIDTH - m_textHelp.GetZoomedWidth() - 10, - SCREEN_TOP + 10); - this->AddChild( &m_textHelp ); - - m_quad.ZoomToWidth( m_textHelp.GetZoomedWidth()+20 ); - m_quad.ZoomToHeight( m_textHelp.GetZoomedHeight()+20 ); - - m_textStatus.SetName( "Status" ); - m_textStatus.LoadFromFont( THEME->GetPathF(m_sName, "status") ); - ActorUtil::LoadAllCommandsAndOnCommand( m_textStatus, m_sName ); - this->AddChild( &m_textStatus ); - - m_textAdjustments.SetName( "Adjustments" ); - m_textAdjustments.LoadFromFont( THEME->GetPathF(m_sName,"Adjustments") ); - ActorUtil::LoadAllCommandsAndOnCommand( m_textAdjustments, m_sName ); - this->AddChild( &m_textAdjustments ); + m_overlay.Load(THEME->GetPathB(m_sName, "overlay")); + AddChild(m_overlay); Update( 0 ); } @@ -133,13 +92,16 @@ void ScreenSyncOverlay::UpdateText() AdjustSync::GetSyncChangeTextSong( vs ); } - m_textStatus.SetText( join("\n",vs) ); + Message set_status("SetStatus"); + set_status.SetParam("text", join("\n",vs)); + m_overlay->HandleMessage(set_status); // Update SyncInfo - bool bVisible = GAMESTATE->m_SongOptions.GetCurrent().m_AutosyncType != AutosyncType_Off; - m_textAdjustments.SetVisible( bVisible ); - if( bVisible ) + bool visible= GAMESTATE->m_SongOptions.GetCurrent().m_AutosyncType != AutosyncType_Off; + Message set_adjustments("SetAdjustments"); + set_adjustments.SetParam("visible", visible); + if(visible) { float fNew = PREFSMAN->m_fGlobalOffsetSeconds; float fOld = AdjustSync::s_fGlobalOffsetSecondsOriginal; @@ -149,8 +111,13 @@ void ScreenSyncOverlay::UpdateText() s += NEW_OFFSET.GetValue() + ssprintf( ": %0.3f\n", fNew ); s += STANDARD_DEVIATION.GetValue() + ssprintf( ": %0.3f\n", fStdDev ); s += COLLECTING_SAMPLE.GetValue() + ssprintf( ": %d / %d", AdjustSync::s_iAutosyncOffsetSample+1, AdjustSync::OFFSET_SAMPLE_COUNT ); - m_textAdjustments.SetText( s ); + set_adjustments.SetParam("text", s); } + else + { + set_adjustments.SetParam("text", RString("")); + } + m_overlay->HandleMessage(set_adjustments); } static LocalizedString CANT_SYNC_WHILE_PLAYING_A_COURSE ("ScreenSyncOverlay","Can't sync while playing a course."); @@ -322,27 +289,12 @@ bool ScreenSyncOverlay::Input( const InputEventPlus &input ) void ScreenSyncOverlay::ShowHelp() { - m_quad.StopTweening(); - m_quad.BeginTweening( 0.3f, TWEEN_LINEAR ); - m_quad.SetDiffuseAlpha( 0.5f ); - - m_textHelp.StopTweening(); - m_textHelp.BeginTweening( 0.3f, TWEEN_LINEAR ); - m_textHelp.SetDiffuseAlpha( 1 ); - - m_quad.Sleep( 4 ); - m_quad.BeginTweening( 0.3f, TWEEN_LINEAR ); - m_quad.SetDiffuseAlpha( 0 ); - - m_textHelp.Sleep( 4 ); - m_textHelp.BeginTweening( 0.3f, TWEEN_LINEAR ); - m_textHelp.SetDiffuseAlpha( 0 ); + m_overlay->PlayCommand("Show"); } void ScreenSyncOverlay::HideHelp() { - m_quad.FinishTweening(); - m_textHelp.FinishTweening(); + m_overlay->PlayCommand("Hide"); } diff --git a/src/ScreenSyncOverlay.h b/src/ScreenSyncOverlay.h index fb3b109b28..111f7de900 100644 --- a/src/ScreenSyncOverlay.h +++ b/src/ScreenSyncOverlay.h @@ -2,8 +2,7 @@ #define ScreenSyncOverlay_H #include "Screen.h" -#include "BitmapText.h" -#include "Quad.h" +#include "AutoActor.h" /** @brief Credits and statistics drawn on top of everything else. */ class ScreenSyncOverlay : public Screen { @@ -20,10 +19,7 @@ private: void ShowHelp(); void HideHelp(); - Quad m_quad; - BitmapText m_textHelp; - BitmapText m_textStatus; - BitmapText m_textAdjustments; + AutoActor m_overlay; };