diff options
author | mogguh <mogguh@b956fd51-792f-4845-bead-9b4dfca2ff2c> | 2008-07-12 03:23:24 +0000 |
---|---|---|
committer | mogguh <mogguh@b956fd51-792f-4845-bead-9b4dfca2ff2c> | 2008-07-12 03:23:24 +0000 |
commit | 8121a296beadb6117aa51353c642aab92cf19151 (patch) | |
tree | f03f4da54eae3e5f895a932e6ca3de53d7e82058 | |
parent | de20f99f49e0091e72b2662d41679c0ed784bf10 (diff) | |
download | usdx-8121a296beadb6117aa51353c642aab92cf19151.tar.gz usdx-8121a296beadb6117aa51353c642aab92cf19151.tar.xz usdx-8121a296beadb6117aa51353c642aab92cf19151.zip |
Text has a new property -> Z (default is 0)
Selects on the options have been exchanged for SelectSlides (OptionsScreens are looking less broken (more to come))
Solmization has been banned from the options (it's still available via config.ini and is working)
Uncommented poc ttf code
[Back] button in OptionsRecord is skineable again
git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@1183 b956fd51-792f-4845-bead-9b4dfca2ff2c
-rw-r--r-- | Game/Code/Classes/TextGL.pas | 70 | ||||
-rw-r--r-- | Game/Code/Classes/UThemes.pas | 106 | ||||
-rw-r--r-- | Game/Code/Menu/UMenu.pas | 10 | ||||
-rw-r--r-- | Game/Code/Menu/UMenuText.pas | 11 | ||||
-rw-r--r-- | Game/Code/Screens/UScreenOptionsAdvanced.pas | 13 | ||||
-rw-r--r-- | Game/Code/Screens/UScreenOptionsGame.pas | 16 | ||||
-rw-r--r-- | Game/Code/Screens/UScreenOptionsGraphics.pas | 13 | ||||
-rw-r--r-- | Game/Code/Screens/UScreenOptionsLyrics.pas | 11 | ||||
-rw-r--r-- | Game/Code/Screens/UScreenOptionsRecord.pas | 15 | ||||
-rw-r--r-- | Game/Code/Screens/UScreenOptionsSound.pas | 11 | ||||
-rw-r--r-- | Game/Code/Screens/UScreenOptionsThemes.pas | 7 |
11 files changed, 151 insertions, 132 deletions
diff --git a/Game/Code/Classes/TextGL.pas b/Game/Code/Classes/TextGL.pas index 2c29af59..2e186793 100644 --- a/Game/Code/Classes/TextGL.pas +++ b/Game/Code/Classes/TextGL.pas @@ -29,6 +29,7 @@ procedure glPrintLetterCut(letter: char; Start, Finish: real); procedure glPrint(text: pchar); // custom GL "Print" routine procedure glPrintCut(text: pchar); procedure SetFontPos(X, Y: real); // sets X and Y +procedure SetFontZ(Z: real); // sets Z procedure SetFontSize(Size: real); procedure SetFontStyle(Style: integer); // sets active font style (normal, bold, etc) procedure SetFontItalic(Enable: boolean); // sets italic type letter (works for all fonts) @@ -36,19 +37,20 @@ procedure SetFontAspectW(Aspect: real); procedure SetFontReflection(Enable:boolean;Spacing: real); // Enables/Disables text reflection // Start of SDL_ttf -function NextPowerOfTwo(Value: integer): integer; +//function NextPowerOfTwo(Value: integer): integer; // Checks if the ttf exists, if yes then a SDL_ttf is returned -function LoadFont(FileName: PAnsiChar; PointSize: integer):PTTF_Font; +//function LoadFont(FileName: PAnsiChar; PointSize: integer):PTTF_Font; // Does the renderstuff, color is in $ffeecc style -function RenderText(font: PTTF_Font; Text:PAnsiChar; Color: Cardinal):PSDL_Surface; -procedure printrandomtext(); +//function RenderText(font: PTTF_Font; Text:PAnsiChar; Color: Cardinal):PSDL_Surface; +//procedure printrandomtext(); // End of SDL_ttf type TTextGL = record X: real; Y: real; + Z: real; Text: string; Size: real; ColR: real; @@ -307,7 +309,7 @@ var OutTemp: real; XItal: real; begin - with Fonts[ActFont].Tex do + with Fonts[ActFont].Tex do begin FWidth := Fonts[ActFont].Width[Ord(Letter)]; @@ -389,31 +391,36 @@ begin end; +{* +<mog> I uncommented this, because it was some kind of after hour hack together with blindy +it's actually just a prove of concept, as it's having some flaws +- instead nice and clean ttf code should be placed here :) +*} // tyty to Asphyre // FIXME: check if the non-asm version is fast enough and use it by default if so -function NextPowerOfTwo(Value: integer): integer; -begin - Result:= 1; -{$IF Defined(CPUX86_64)} - asm - mov rcx, -1 - bsr rcx, Value - inc rcx - shl Result, cl - end; -{$ELSEIF Defined(CPU386) or Defined(CPUI386)} - asm - mov ecx, -1 - bsr ecx, Value - inc ecx - shl Result, cl - end; -{$ELSE} - while (Result <= Value) do - Result := 2 * Result; -{$IFEND} -end; - +//function NextPowerOfTwo(Value: integer): integer; +//begin +// Result:= 1; +//{$IF Defined(CPUX86_64)} +// asm +// mov rcx, -1 +// bsr rcx, Value +// inc rcx +// shl Result, cl +// end; +//{$ELSEIF Defined(CPU386) or Defined(CPUI386)} +// asm +// mov ecx, -1 +// bsr ecx, Value +// inc ecx +// shl Result, cl +// end; +//{$ELSE} +// while (Result <= Value) do +// Result := 2 * Result; +//{$IFEND} +//end; +{* function LoadFont(FileName: PAnsiChar; PointSize: integer):PTTF_Font; begin if (FileExists(FileName)) then @@ -505,7 +512,7 @@ begin TTF_CloseFont(font); end; - +*} procedure glPrintCut(text: pchar); var Letter: char; @@ -556,6 +563,11 @@ begin Fonts[ActFont].Tex.Y := Y; end; +procedure SetFontZ(Z: real); +begin + Fonts[ActFont].Tex.Z := Z; +end; + procedure SetFontSize(Size: real); begin Fonts[ActFont].Tex.H := 30 * (Size/10); diff --git a/Game/Code/Classes/UThemes.pas b/Game/Code/Classes/UThemes.pas index e38e08c2..31e91724 100644 --- a/Game/Code/Classes/UThemes.pas +++ b/Game/Code/Classes/UThemes.pas @@ -56,6 +56,7 @@ type X: integer; Y: integer; W: integer; + Z: real; Color: string; ColR: real; ColG: real; @@ -385,41 +386,40 @@ type end; TThemeOptionsGame = class(TThemeBasic) - SelectPlayers: TThemeSelect; - SelectDifficulty: TThemeSelect; + SelectPlayers: TThemeSelectSlide; + SelectDifficulty: TThemeSelectSlide; SelectLanguage: TThemeSelectSlide; - SelectTabs: TThemeSelect; + SelectTabs: TThemeSelectSlide; SelectSorting: TThemeSelectSlide; - SelectDebug: TThemeSelect; + SelectDebug: TThemeSelectSlide; ButtonExit: TThemeButton; end; TThemeOptionsGraphics = class(TThemeBasic) - SelectFullscreen: TThemeSelect; - SelectSlideResolution: TThemeSelectSlide; - SelectDepth: TThemeSelect; - SelectOscilloscope: TThemeSelect; - SelectLineBonus: TThemeSelect; - SelectMovieSize: TThemeSelect; + SelectFullscreen: TThemeSelectSlide; + SelectResolution: TThemeSelectSlide; + SelectDepth: TThemeSelectSlide; + SelectOscilloscope: TThemeSelectSlide; + SelectLineBonus: TThemeSelectSlide; + SelectMovieSize: TThemeSelectSlide; ButtonExit: TThemeButton; end; TThemeOptionsSound = class(TThemeBasic) - SelectMicBoost: TThemeSelect; - SelectClickAssist: TThemeSelect; - SelectBeatClick: TThemeSelect; - SelectThreshold: TThemeSelect; - //Song Preview + SelectMicBoost: TThemeSelectSlide; + SelectClickAssist: TThemeSelectSlide; + SelectBeatClick: TThemeSelectSlide; + SelectThreshold: TThemeSelectSlide; SelectSlidePreviewVolume: TThemeSelectSlide; SelectSlidePreviewFading: TThemeSelectSlide; - ButtonExit: TThemeButton; + ButtonExit: TThemeButton; end; TThemeOptionsLyrics = class(TThemeBasic) - SelectLyricsFont: TThemeSelect; + SelectLyricsFont: TThemeSelectSlide; SelectLyricsEffect: TThemeSelectSlide; - SelectSolmization: TThemeSelect; - SelectNoteLines: TThemeSelect; +// SelectSolmization: TThemeSelectSlide; + SelectNoteLines: TThemeSelectSlide; ButtonExit: TThemeButton; end; @@ -438,13 +438,13 @@ type end; TThemeOptionsAdvanced = class(TThemeBasic) - SelectLoadAnimation: TThemeSelect; - SelectEffectSing: TThemeSelect; - SelectScreenFade: TThemeSelect; - SelectLineBonus: TThemeSelect; - SelectAskbeforeDel: TThemeSelect; + SelectLoadAnimation: TThemeSelectSlide; + SelectEffectSing: TThemeSelectSlide; + SelectScreenFade: TThemeSelectSlide; + SelectLineBonus: TThemeSelectSlide; + SelectAskbeforeDel: TThemeSelectSlide; SelectOnSongClick: TThemeSelectSlide; - SelectPartyPopup: TThemeSelect; + SelectPartyPopup: TThemeSelectSlide; ButtonExit: TThemeButton; end; @@ -1134,32 +1134,32 @@ begin // Options Game ThemeLoadBasic(OptionsGame, 'OptionsGame'); - ThemeLoadSelect(OptionsGame.SelectPlayers, 'OptionsGameSelectPlayers'); - ThemeLoadSelect(OptionsGame.SelectDifficulty, 'OptionsGameSelectDifficulty'); + ThemeLoadSelectSlide(OptionsGame.SelectPlayers, 'OptionsGameSelectPlayers'); + ThemeLoadSelectSlide(OptionsGame.SelectDifficulty, 'OptionsGameSelectDifficulty'); ThemeLoadSelectSlide(OptionsGame.SelectLanguage, 'OptionsGameSelectSlideLanguage'); - ThemeLoadSelect(OptionsGame.SelectTabs, 'OptionsGameSelectTabs'); + ThemeLoadSelectSlide(OptionsGame.SelectTabs, 'OptionsGameSelectTabs'); ThemeLoadSelectSlide(OptionsGame.SelectSorting, 'OptionsGameSelectSlideSorting'); - ThemeLoadSelect(OptionsGame.SelectDebug, 'OptionsGameSelectDebug'); + ThemeLoadSelectSlide(OptionsGame.SelectDebug, 'OptionsGameSelectDebug'); ThemeLoadButton(OptionsGame.ButtonExit, 'OptionsGameButtonExit'); // Options Graphics ThemeLoadBasic(OptionsGraphics, 'OptionsGraphics'); - ThemeLoadSelect(OptionsGraphics.SelectFullscreen, 'OptionsGraphicsSelectFullscreen'); - ThemeLoadSelectSlide(OptionsGraphics.SelectSlideResolution, 'OptionsGraphicsSelectSlideResolution'); - ThemeLoadSelect(OptionsGraphics.SelectDepth, 'OptionsGraphicsSelectDepth'); - ThemeLoadSelect(OptionsGraphics.SelectOscilloscope, 'OptionsGraphicsSelectOscilloscope'); - ThemeLoadSelect(OptionsGraphics.SelectLineBonus, 'OptionsGraphicsSelectLineBonus'); - ThemeLoadSelect(OptionsGraphics.SelectMovieSize, 'OptionsGraphicsSelectMovieSize'); - ThemeLoadButton(OptionsGraphics.ButtonExit, 'OptionsGraphicsButtonExit'); + ThemeLoadSelectSlide(OptionsGraphics.SelectFullscreen, 'OptionsGraphicsSelectFullscreen'); + ThemeLoadSelectSlide(OptionsGraphics.SelectResolution, 'OptionsGraphicsSelectSlideResolution'); + ThemeLoadSelectSlide(OptionsGraphics.SelectDepth, 'OptionsGraphicsSelectDepth'); + ThemeLoadSelectSlide(OptionsGraphics.SelectOscilloscope, 'OptionsGraphicsSelectOscilloscope'); + ThemeLoadSelectSlide(OptionsGraphics.SelectLineBonus, 'OptionsGraphicsSelectLineBonus'); + ThemeLoadSelectSlide(OptionsGraphics.SelectMovieSize, 'OptionsGraphicsSelectMovieSize'); + ThemeLoadButton(OptionsGraphics.ButtonExit, 'OptionsGraphicsButtonExit'); // Options Sound ThemeLoadBasic(OptionsSound, 'OptionsSound'); - ThemeLoadSelect(OptionsSound.SelectMicBoost, 'OptionsSoundSelectMicBoost'); - ThemeLoadSelect(OptionsSound.SelectClickAssist, 'OptionsSoundSelectClickAssist'); - ThemeLoadSelect(OptionsSound.SelectBeatClick, 'OptionsSoundSelectBeatClick'); - ThemeLoadSelect(OptionsSound.SelectThreshold, 'OptionsSoundSelectThreshold'); + ThemeLoadSelectSlide(OptionsSound.SelectMicBoost, 'OptionsSoundSelectMicBoost'); + ThemeLoadSelectSlide(OptionsSound.SelectClickAssist, 'OptionsSoundSelectClickAssist'); + ThemeLoadSelectSlide(OptionsSound.SelectBeatClick, 'OptionsSoundSelectBeatClick'); + ThemeLoadSelectSlide(OptionsSound.SelectThreshold, 'OptionsSoundSelectThreshold'); //Song Preview ThemeLoadSelectSlide(OptionsSound.SelectSlidePreviewVolume, 'OptionsSoundSelectSlidePreviewVolume'); ThemeLoadSelectSlide(OptionsSound.SelectSlidePreviewFading, 'OptionsSoundSelectSlidePreviewFading'); @@ -1169,11 +1169,11 @@ begin // Options Lyrics ThemeLoadBasic(OptionsLyrics, 'OptionsLyrics'); - ThemeLoadSelect(OptionsLyrics.SelectLyricsFont, 'OptionsLyricsSelectLyricsFont'); + ThemeLoadSelectSlide(OptionsLyrics.SelectLyricsFont, 'OptionsLyricsSelectLyricsFont'); ThemeLoadSelectSlide(OptionsLyrics.SelectLyricsEffect, 'OptionsLyricsSelectLyricsEffect'); - ThemeLoadSelect(OptionsLyrics.SelectSolmization, 'OptionsLyricsSelectSolmization'); - ThemeLoadSelect(OptionsLyrics.SelectNoteLines, 'OptionsLyricsSelectNoteLines'); - ThemeLoadButton(OptionsLyrics.ButtonExit, 'OptionsLyricsButtonExit'); + //ThemeLoadSelectSlide(OptionsLyrics.SelectSolmization, 'OptionsLyricsSelectSolmization'); + ThemeLoadSelectSlide(OptionsLyrics.SelectNoteLines, 'OptionsLyricsSelectNoteLines'); + ThemeLoadButton(OptionsLyrics.ButtonExit, 'OptionsLyricsButtonExit'); // Options Themes ThemeLoadBasic(OptionsThemes, 'OptionsThemes'); @@ -1194,14 +1194,14 @@ begin //Options Advanced ThemeLoadBasic(OptionsAdvanced, 'OptionsAdvanced'); - ThemeLoadSelect (OptionsAdvanced.SelectLoadAnimation, 'OptionsAdvancedSelectLoadAnimation'); - ThemeLoadSelect (OptionsAdvanced.SelectScreenFade, 'OptionsAdvancedSelectScreenFade'); - ThemeLoadSelect (OptionsAdvanced.SelectEffectSing, 'OptionsAdvancedSelectEffectSing'); - ThemeLoadSelect (OptionsAdvanced.SelectLineBonus, 'OptionsAdvancedSelectLineBonus'); - ThemeLoadSelectSlide (OptionsAdvanced.SelectOnSongClick, 'OptionsAdvancedSelectSlideOnSongClick'); - ThemeLoadSelect (OptionsAdvanced.SelectAskbeforeDel, 'OptionsAdvancedSelectAskbeforeDel'); - ThemeLoadSelect (OptionsAdvanced.SelectPartyPopup, 'OptionsAdvancedSelectPartyPopup'); - ThemeLoadButton (OptionsAdvanced.ButtonExit, 'OptionsAdvancedButtonExit'); + ThemeLoadSelectSlide(OptionsAdvanced.SelectLoadAnimation, 'OptionsAdvancedSelectLoadAnimation'); + ThemeLoadSelectSlide(OptionsAdvanced.SelectScreenFade, 'OptionsAdvancedSelectScreenFade'); + ThemeLoadSelectSlide(OptionsAdvanced.SelectEffectSing, 'OptionsAdvancedSelectEffectSing'); + ThemeLoadSelectSlide(OptionsAdvanced.SelectLineBonus, 'OptionsAdvancedSelectLineBonus'); + ThemeLoadSelectSlide(OptionsAdvanced.SelectOnSongClick, 'OptionsAdvancedSelectSlideOnSongClick'); + ThemeLoadSelectSlide(OptionsAdvanced.SelectAskbeforeDel, 'OptionsAdvancedSelectAskbeforeDel'); + ThemeLoadSelectSlide(OptionsAdvanced.SelectPartyPopup, 'OptionsAdvancedSelectPartyPopup'); + ThemeLoadButton (OptionsAdvanced.ButtonExit, 'OptionsAdvancedButtonExit'); //error and check popup ThemeLoadBasic (ErrorPopup, 'ErrorPopup'); @@ -1457,6 +1457,8 @@ begin ThemeText.Y := ThemeIni.ReadInteger(Name, 'Y', 0); ThemeText.W := ThemeIni.ReadInteger(Name, 'W', 0); + ThemeText.Z := ThemeIni.ReadFloat(Name, 'Z', 0); + ThemeText.ColR := ThemeIni.ReadFloat(Name, 'ColR', 0); ThemeText.ColG := ThemeIni.ReadFloat(Name, 'ColG', 0); ThemeText.ColB := ThemeIni.ReadFloat(Name, 'ColB', 0); diff --git a/Game/Code/Menu/UMenu.pas b/Game/Code/Menu/UMenu.pas index 625e051f..dd2ccb24 100644 --- a/Game/Code/Menu/UMenu.pas +++ b/Game/Code/Menu/UMenu.pas @@ -75,7 +75,7 @@ type function AddText(ThemeText: TThemeText): integer; overload; function AddText(X, Y: real; const Text_: string): integer; overload; function AddText(X, Y: real; Style: integer; Size, ColR, ColG, ColB: real; const Text: string): integer; overload; - function AddText(X, Y, W: real; Style: integer; Size, ColR, ColG, ColB: real; Align: integer; const Text_: string; Reflection_: Boolean; ReflectionSpacing_: Real): integer; overload; + function AddText(X, Y, W: real; Style: integer; Size, ColR, ColG, ColB: real; Align: integer; const Text_: string; Reflection_: Boolean; ReflectionSpacing_: Real; Z : Real): integer; overload; // button Procedure SetButtonLength(Length: Cardinal); //Function that Set Length of Button Array in one Step instead of register new Memory for every Button @@ -535,7 +535,7 @@ end; function TMenu.AddText(ThemeText: TThemeText): integer; begin Result := AddText(ThemeText.X, ThemeText.Y, ThemeText.W, ThemeText.Font, ThemeText.Size, - ThemeText.ColR, ThemeText.ColG, ThemeText.ColB, ThemeText.Align, ThemeText.Text, ThemeText.Reflection, ThemeText.ReflectionSpacing); + ThemeText.ColR, ThemeText.ColG, ThemeText.ColB, ThemeText.Align, ThemeText.Text, ThemeText.Reflection, ThemeText.ReflectionSpacing, ThemeText.Z); end; function TMenu.AddText(X, Y: real; const Text_: string): integer; @@ -551,17 +551,17 @@ end; function TMenu.AddText(X, Y: real; Style: integer; Size, ColR, ColG, ColB: real; const Text: string): integer; begin - Result := AddText(X, Y, 0, Style, Size, ColR, ColG, ColB, 0, Text, false, 0); + Result := AddText(X, Y, 0, Style, Size, ColR, ColG, ColB, 0, Text, false, 0, 0); end; -function TMenu.AddText(X, Y, W: real; Style: integer; Size, ColR, ColG, ColB: real; Align: integer; const Text_: string; Reflection_: Boolean; ReflectionSpacing_: Real): integer; +function TMenu.AddText(X, Y, W: real; Style: integer; Size, ColR, ColG, ColB: real; Align: integer; const Text_: string; Reflection_: Boolean; ReflectionSpacing_: Real; Z : Real): integer; var TextNum: integer; begin // adds text TextNum := Length(Text); SetLength(Text, TextNum + 1); - Text[TextNum] := TText.Create(X, Y, W, Style, Size, ColR, ColG, ColB, Align, Text_, Reflection_, ReflectionSpacing_); + Text[TextNum] := TText.Create(X, Y, W, Style, Size, ColR, ColG, ColB, Align, Text_, Reflection_, ReflectionSpacing_, Z); Result := TextNum; end; diff --git a/Game/Code/Menu/UMenuText.pas b/Game/Code/Menu/UMenuText.pas index a9703bf3..fecf936e 100644 --- a/Game/Code/Menu/UMenuText.pas +++ b/Game/Code/Menu/UMenuText.pas @@ -27,6 +27,7 @@ type public X: real; Y: real; + Z: real; MoveX: real; //Some Modifier for X - Position that don't affect the real Y MoveY: real; //Some Modifier for Y - Position that don't affect the real Y W: real; //text wider than W is broken @@ -56,7 +57,7 @@ type procedure Draw; constructor Create; overload; constructor Create(X, Y: real; Tekst: string); overload; - constructor Create(ParX, ParY, ParW: real; ParStyle: integer; ParSize, ParColR, ParColG, ParColB: real; ParAlign: integer; ParTekst: string; ParReflection: boolean; ParReflectionSpacing: real); overload; + constructor Create(ParX, ParY, ParW: real; ParStyle: integer; ParSize, ParColR, ParColG, ParColB: real; ParAlign: integer; ParTekst: string; ParReflection: boolean; ParReflectionSpacing: real; ParZ: real); overload; end; implementation @@ -295,6 +296,9 @@ begin end; SetFontPos(X2, Y2); + + SetFontZ(Z); + glPrint(PChar(Text2)); {if Size >= 10 then @@ -318,16 +322,17 @@ end; constructor TText.Create(X, Y: real; Tekst: string); begin - Create(X, Y, 0, 0, 10, 0, 0, 0, 0, Tekst, false, 0); + Create(X, Y, 0, 0, 10, 0, 0, 0, 0, Tekst, false, 0, 0); end; -constructor TText.Create(ParX, ParY, ParW: real; ParStyle: integer; ParSize, ParColR, ParColG, ParColB: real; ParAlign: integer; ParTekst: string; ParReflection: boolean; ParReflectionSpacing: real); +constructor TText.Create(ParX, ParY, ParW: real; ParStyle: integer; ParSize, ParColR, ParColG, ParColB: real; ParAlign: integer; ParTekst: string; ParReflection: boolean; ParReflectionSpacing: real; ParZ:real); begin inherited Create; Alpha := 1; X := ParX; Y := ParY; W := ParW; + Z := ParZ; Style := ParStyle; Size := ParSize; Text := ParTekst; diff --git a/Game/Code/Screens/UScreenOptionsAdvanced.pas b/Game/Code/Screens/UScreenOptionsAdvanced.pas index adf4125d..711414aa 100644 --- a/Game/Code/Screens/UScreenOptionsAdvanced.pas +++ b/Game/Code/Screens/UScreenOptionsAdvanced.pas @@ -38,7 +38,8 @@ begin SDLK_ESCAPE, SDLK_BACKSPACE : begin - Ini.Save; + // Escape -> save nothing - just leave this screen + AudioPlayback.PlaySound(SoundLib.Back); FadeTo(@ScreenOptions); end; @@ -88,12 +89,12 @@ begin //SelectLoadAnimation Hidden because it is useless atm //AddSelect(Theme.OptionsAdvanced.SelectLoadAnimation, Ini.LoadAnimation, ILoadAnimation); - AddSelect(Theme.OptionsAdvanced.SelectScreenFade, Ini.ScreenFade, IScreenFade); - AddSelect(Theme.OptionsAdvanced.SelectEffectSing, Ini.EffectSing, IEffectSing); - AddSelect(Theme.OptionsAdvanced.SelectLineBonus, Ini.LineBonus, ILineBonus); + AddSelectSlide(Theme.OptionsAdvanced.SelectScreenFade, Ini.ScreenFade, IScreenFade); + AddSelectSlide(Theme.OptionsAdvanced.SelectEffectSing, Ini.EffectSing, IEffectSing); + AddSelectSlide(Theme.OptionsAdvanced.SelectLineBonus, Ini.LineBonus, ILineBonus); AddSelectSlide(Theme.OptionsAdvanced.SelectOnSongClick, Ini.OnSongClick, IOnSongClick); - AddSelect(Theme.OptionsAdvanced.SelectAskbeforeDel, Ini.AskbeforeDel, IAskbeforeDel); - AddSelect(Theme.OptionsAdvanced.SelectPartyPopup, Ini.PartyPopup, IPartyPopup); + AddSelectSlide(Theme.OptionsAdvanced.SelectAskbeforeDel, Ini.AskbeforeDel, IAskbeforeDel); + AddSelectSlide(Theme.OptionsAdvanced.SelectPartyPopup, Ini.PartyPopup, IPartyPopup); AddButton(Theme.OptionsAdvanced.ButtonExit); if (Length(Button[0].Text)=0) then diff --git a/Game/Code/Screens/UScreenOptionsGame.pas b/Game/Code/Screens/UScreenOptionsGame.pas index 428b2ff7..2dc8dd7f 100644 --- a/Game/Code/Screens/UScreenOptionsGame.pas +++ b/Game/Code/Screens/UScreenOptionsGame.pas @@ -42,6 +42,7 @@ begin begin AudioPlayback.PlaySound(SoundLib.Back); RefreshSongs; + FadeTo(@ScreenOptions); end; SDLK_RETURN: @@ -77,8 +78,6 @@ begin end; constructor TScreenOptionsGame.Create; -//var -// I: integer; // Auto Removed, Unused Variable begin inherited Create; @@ -88,13 +87,12 @@ begin old_Sorting := Ini.Sorting; old_Tabs := Ini.Tabs; - AddSelect(Theme.OptionsGame.SelectPlayers, Ini.Players, IPlayers); - AddSelect(Theme.OptionsGame.SelectDifficulty, Ini.Difficulty, IDifficulty); - AddSelectSlide(Theme.OptionsGame.SelectLanguage, Ini.Language, ILanguage); - AddSelect(Theme.OptionsGame.SelectTabs, Ini.Tabs, ITabs); - AddSelectSlide(Theme.OptionsGame.SelectSorting, Ini.Sorting, ISorting); - AddSelect(Theme.OptionsGame.SelectDebug, Ini.Debug, IDebug); - + AddSelectSlide(Theme.OptionsGame.SelectPlayers, Ini.Players, IPlayers); + AddSelectSlide(Theme.OptionsGame.SelectDifficulty, Ini.Difficulty, IDifficulty); + AddSelectSlide(Theme.OptionsGame.SelectLanguage, Ini.Language, ILanguage); + AddSelectSlide(Theme.OptionsGame.SelectTabs, Ini.Tabs, ITabs); + AddSelectSlide(Theme.OptionsGame.SelectSorting, Ini.Sorting, ISorting); + AddSelectSlide(Theme.OptionsGame.SelectDebug, Ini.Debug, IDebug); AddButton(Theme.OptionsGame.ButtonExit); if (Length(Button[0].Text)=0) then diff --git a/Game/Code/Screens/UScreenOptionsGraphics.pas b/Game/Code/Screens/UScreenOptionsGraphics.pas index 9d8ee78a..08fca99d 100644 --- a/Game/Code/Screens/UScreenOptionsGraphics.pas +++ b/Game/Code/Screens/UScreenOptionsGraphics.pas @@ -38,7 +38,8 @@ begin SDLK_ESCAPE, SDLK_BACKSPACE : begin - Ini.Save; + // Escape -> save nothing - just leave this screen + AudioPlayback.PlaySound(SoundLib.Back); FadeTo(@ScreenOptions); end; @@ -89,11 +90,11 @@ begin LoadFromTheme(Theme.OptionsGraphics); - AddSelectSlide(Theme.OptionsGraphics.SelectSlideResolution, Ini.Resolution, IResolution); - AddSelect(Theme.OptionsGraphics.SelectFullscreen, Ini.Fullscreen, IFullscreen); - AddSelect(Theme.OptionsGraphics.SelectDepth, Ini.Depth, IDepth); - AddSelect(Theme.OptionsGraphics.SelectOscilloscope, Ini.Oscilloscope, IOscilloscope); - AddSelect(Theme.OptionsGraphics.SelectMovieSize, Ini.MovieSize, IMovieSize); + AddSelectSlide(Theme.OptionsGraphics.SelectResolution, Ini.Resolution, IResolution); + AddSelectSlide(Theme.OptionsGraphics.SelectFullscreen, Ini.Fullscreen, IFullscreen); + AddSelectSlide(Theme.OptionsGraphics.SelectDepth, Ini.Depth, IDepth); + AddSelectSlide(Theme.OptionsGraphics.SelectOscilloscope, Ini.Oscilloscope, IOscilloscope); + AddSelectSlide(Theme.OptionsGraphics.SelectMovieSize, Ini.MovieSize, IMovieSize); AddButton(Theme.OptionsGraphics.ButtonExit); diff --git a/Game/Code/Screens/UScreenOptionsLyrics.pas b/Game/Code/Screens/UScreenOptionsLyrics.pas index dec3b00c..42f1fadb 100644 --- a/Game/Code/Screens/UScreenOptionsLyrics.pas +++ b/Game/Code/Screens/UScreenOptionsLyrics.pas @@ -38,13 +38,14 @@ begin SDLK_ESCAPE, SDLK_BACKSPACE : begin - Ini.Save; + // Escape -> save nothing - just leave this screen + AudioPlayback.PlaySound(SoundLib.Back); FadeTo(@ScreenOptions); end; SDLK_RETURN: begin - if SelInteraction = 4 then begin + if SelInteraction = 3 then begin Ini.Save; AudioPlayback.PlaySound(SoundLib.Back); FadeTo(@ScreenOptions); @@ -80,10 +81,10 @@ begin LoadFromTheme(Theme.OptionsLyrics); - AddSelect(Theme.OptionsLyrics.SelectLyricsFont, Ini.LyricsFont, ILyricsFont); + AddSelectSlide(Theme.OptionsLyrics.SelectLyricsFont, Ini.LyricsFont, ILyricsFont); AddSelectSlide(Theme.OptionsLyrics.SelectLyricsEffect, Ini.LyricsEffect, ILyricsEffect); - AddSelect(Theme.OptionsLyrics.SelectSolmization, Ini.Solmization, ISolmization); - AddSelect(Theme.OptionsLyrics.SelectNoteLines, Ini.NoteLines, INoteLines); + //AddSelect(Theme.OptionsLyrics.SelectSolmization, Ini.Solmization, ISolmization); GAH!!!!11 DIE!!! + AddSelectSlide(Theme.OptionsLyrics.SelectNoteLines, Ini.NoteLines, INoteLines); AddButton(Theme.OptionsLyrics.ButtonExit); diff --git a/Game/Code/Screens/UScreenOptionsRecord.pas b/Game/Code/Screens/UScreenOptionsRecord.pas index c5d1d328..885f7db5 100644 --- a/Game/Code/Screens/UScreenOptionsRecord.pas +++ b/Game/Code/Screens/UScreenOptionsRecord.pas @@ -141,7 +141,8 @@ begin SDLK_ESCAPE, SDLK_BACKSPACE: begin - Ini.Save; + // Escape -> save nothing - just leave this screen + AudioPlayback.PlaySound(SoundLib.Back); FadeTo(@ScreenOptions); end; @@ -188,7 +189,7 @@ var InputDevice: TAudioInputDevice; InputDeviceCfg: PInputDeviceConfig; ChannelTheme: ^TThemeSelectSlide; - ButtonTheme: TThemeButton; + //ButtonTheme: TThemeButton; WidgetYPos: integer; begin inherited Create; @@ -283,11 +284,13 @@ begin end; // add Exit-button - ButtonTheme := Theme.OptionsRecord.ButtonExit; + //ButtonTheme := Theme.OptionsRecord.ButtonExit; // adjust button position - if (WidgetYPos <> 0) then - ButtonTheme.Y := WidgetYPos; - AddButton(ButtonTheme); + //if (WidgetYPos <> 0) then + // ButtonTheme.Y := WidgetYPos; + //AddButton(ButtonTheme); + // <mog> I uncommented the stuff above, because it's not skinable :X + AddButton(Theme.OptionsRecord.ButtonExit); if (Length(Button[0].Text) = 0) then AddButtonText(14, 20, Theme.Options.Description[7]); // store InteractionID diff --git a/Game/Code/Screens/UScreenOptionsSound.pas b/Game/Code/Screens/UScreenOptionsSound.pas index 2d807d02..ba487937 100644 --- a/Game/Code/Screens/UScreenOptionsSound.pas +++ b/Game/Code/Screens/UScreenOptionsSound.pas @@ -42,7 +42,8 @@ begin SDLK_ESCAPE, SDLK_BACKSPACE : begin - Ini.Save; + // Escape -> save nothing - just leave this screen + AudioPlayback.PlaySound(SoundLib.Back); FadeTo(@ScreenOptions); end; @@ -84,10 +85,10 @@ begin LoadFromTheme(Theme.OptionsSound); - AddSelect(Theme.OptionsSound.SelectMicBoost, Ini.MicBoost, IMicBoost); // TODO - This need moving to ScreenOptionsRecord - AddSelect(Theme.OptionsSound.SelectClickAssist, Ini.ClickAssist, IClickAssist); - AddSelect(Theme.OptionsSound.SelectBeatClick, Ini.BeatClick, IBeatClick); - AddSelect(Theme.OptionsSound.SelectThreshold, Ini.ThresholdIndex, IThreshold); + AddSelectSlide(Theme.OptionsSound.SelectMicBoost, Ini.MicBoost, IMicBoost); // TODO - This need moving to ScreenOptionsRecord + AddSelectSlide(Theme.OptionsSound.SelectClickAssist, Ini.ClickAssist, IClickAssist); + AddSelectSlide(Theme.OptionsSound.SelectBeatClick, Ini.BeatClick, IBeatClick); + AddSelectSlide(Theme.OptionsSound.SelectThreshold, Ini.ThresholdIndex, IThreshold); //Song Preview AddSelectSlide(Theme.OptionsSound.SelectSlidePreviewVolume, Ini.PreviewVolume, IPreviewVolume); diff --git a/Game/Code/Screens/UScreenOptionsThemes.pas b/Game/Code/Screens/UScreenOptionsThemes.pas index 743f5fda..a4f00b64 100644 --- a/Game/Code/Screens/UScreenOptionsThemes.pas +++ b/Game/Code/Screens/UScreenOptionsThemes.pas @@ -52,12 +52,7 @@ begin SDLK_ESCAPE, SDLK_BACKSPACE : begin - Ini.Save; - - // Reload all screens, after Theme changed - // Todo : JB - Check if theme was actually changed - UGraphic.UnLoadScreens(); - UGraphic.LoadScreens(); + // Escape -> save nothing - just leave this screen AudioPlayback.PlaySound(SoundLib.Back); FadeTo(@ScreenOptions); |