aboutsummaryrefslogtreecommitdiffstats
path: root/Lua/src/screens/UScreenSing.pas
diff options
context:
space:
mode:
authorwhiteshark0 <whiteshark0@b956fd51-792f-4845-bead-9b4dfca2ff2c>2009-05-22 12:11:37 +0000
committerwhiteshark0 <whiteshark0@b956fd51-792f-4845-bead-9b4dfca2ff2c>2009-05-22 12:11:37 +0000
commitccfb072285d6c866b41d66e4d7fe7d0fcec6faa5 (patch)
tree7bbfa2ba795c91aa3430b75feb00278b6186cf2d /Lua/src/screens/UScreenSing.pas
parentf489a22860c04c382bbc14e0cd09cd41c5b5399c (diff)
downloadusdx-ccfb072285d6c866b41d66e4d7fe7d0fcec6faa5.tar.gz
usdx-ccfb072285d6c866b41d66e4d7fe7d0fcec6faa5.tar.xz
usdx-ccfb072285d6c866b41d66e4d7fe7d0fcec6faa5.zip
added ScreenSing module
added call of party modes OnSing 2 new lua functions: ScreenSing.GetScores() ScreenSing.Finish git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/branches/experimental@1756 b956fd51-792f-4845-bead-9b4dfca2ff2c
Diffstat (limited to 'Lua/src/screens/UScreenSing.pas')
-rw-r--r--Lua/src/screens/UScreenSing.pas13
1 files changed, 11 insertions, 2 deletions
diff --git a/Lua/src/screens/UScreenSing.pas b/Lua/src/screens/UScreenSing.pas
index 465022ed..bbdd1ecd 100644
--- a/Lua/src/screens/UScreenSing.pas
+++ b/Lua/src/screens/UScreenSing.pas
@@ -103,11 +103,12 @@ type
// some settings to be set by plugins
settings: record
-
+ Finish: Boolean; //< if true, screen will finish on next draw
end;
procedure ClearSettings;
+ procedure EndSong;
constructor Create; override;
procedure onShow; override;
@@ -636,7 +637,12 @@ end;
procedure TScreenSing.ClearSettings;
begin
+ Settings.Finish := False;
+end;
+procedure TScreenSing.EndSong;
+begin
+ Settings.Finish := True;
end;
procedure TScreenSing.onHide;
@@ -762,11 +768,14 @@ begin
if ShowFinish then
begin
if (not AudioPlayback.Finished) and ((CurrentSong.Finish = 0) or
- (LyricsState.GetCurrentTime() * 1000 <= CurrentSong.Finish)) then
+ (LyricsState.GetCurrentTime() * 1000 <= CurrentSong.Finish)) and (not Settings.Finish) then
begin
// analyze song if not paused
if (not Paused) then
+ begin
Sing(Self);
+ Party.CallOnSing;
+ end;
end
else
begin