OnCommand="%function(self) self:diffusealpha(0); InitScreen('ScreenEvaluation'); end"
/>
+ <!--Scrape the Player's Score and show something cool-->
+ <BitmapText
+ Text="hello"
+ File="_eurostile blue glow"
+ InitCommand="%function(self)
+ self:x(SCREEN_CENTER_X);
+ self:y(SCREEN_CENTER_Y);
+ self:hibernate(0.1);
+ self:queuecommand('Go');
+ end"
+ GoCommand="%function(self)
+ self:diffusealpha(0);
+ if GAMESTATE:IsPlayerEnabled(PLAYER_1) then
+ gnScoreP1 = SCREENMAN:GetTopScreen():GetChild('PercentP1'):GetChild('PercentP1'):GetText();
+ gnScoreP1 = string.gsub(gnScoreP1,'%%','');
+ gnScoreP1 = tonumber(gnScoreP1);
+ end
+
+ if GAMESTATE:IsPlayerEnabled(PLAYER_2) then
+ gnScoreP2 = SCREENMAN:GetTopScreen():GetChild('PercentP2'):GetChild('PercentP21'):GetText();
+ gnScoreP2 = string.gsub(gnScoreP1,'%%','');
+ gnScoreP2 = tonumber(gnScoreP2);
+ end
+ self:settext(gnScoreP1);
+ end"
+ />
+
<!--Restart the song on event mode if you pressed the menu button-->
<BitmapText
Text=""
File="_eurostile blue glow"
Condition="GAMESTATE:IsEventMode() and MenuButtonGiveUp() and not gnNoRestart and not GAMESTATE:IsCourseMode()"
InitCommand="%function(self)
- if gnStaminaSongPercent > gnLowestRestartPercent and gnStaminaSongPercent < gnHighestRestartPercent then
+ if gnSongElapsedPercent > gnLowestRestartPercent and gnSongElapsedPercent < gnHighestRestartPercent then
SCREENMAN:SetNewScreen('ScreenStage');
end
end"
InitCommand="%function(self)
self:settext(GAMESTATE:GetCurrentSong():GetDisplayMainTitle());
self:x(SCREEN_CENTER_X);
- self:y(SCREEN_CENTER_Y-173);
+ self:y(SCREEN_CENTER_Y-172);
end"
/>
<!-- <BitmapText
self:accelerate(0.5);
gnJudgeText = math.ceil(tonumber(SCREENMAN:GetTopScreen():GetChild('MarvelousNumberP'..gnPlayerCount):GetText()) / gnJudgeTotal * 121);
if gnJudgeText >= 121 then gnJudgeText = 121; end
+ if math.floor(tonumber(SCREENMAN:GetTopScreen():GetChild('MarvelousNumberP'..gnPlayerCount):GetText())) == 0 then gnJudgeText = 0 end
self:zoomx(gnJudgeText);
self:queuecommand('SFX');
end"
self:accelerate(0.5);
gnJudgeText = math.ceil(tonumber(SCREENMAN:GetTopScreen():GetChild('PerfectNumberP'..gnPlayerCount):GetText()) / gnJudgeTotal * 121);
if gnJudgeText >= 121 then gnJudgeText = 121; end
+ if math.floor(tonumber(SCREENMAN:GetTopScreen():GetChild('PerfectNumberP'..gnPlayerCount):GetText())) == 0 then gnJudgeText = 0 end
self:zoomx(gnJudgeText);
self:queuecommand('SFX');
end"
self:accelerate(0.5);
gnJudgeText = math.ceil(tonumber(SCREENMAN:GetTopScreen():GetChild('GreatNumberP'..gnPlayerCount):GetText()) / gnJudgeTotal * 121);
if gnJudgeText >= 121 then gnJudgeText = 121; end
+ if math.floor(tonumber(SCREENMAN:GetTopScreen():GetChild('GreatNumberP'..gnPlayerCount):GetText())) == 0 then gnJudgeText = 0 end
self:zoomx(gnJudgeText);
self:queuecommand('SFX');
end"
self:accelerate(0.5);
gnJudgeText = math.ceil(tonumber(SCREENMAN:GetTopScreen():GetChild('GoodNumberP'..gnPlayerCount):GetText()) / gnJudgeTotal * 121);
if gnJudgeText >= 121 then gnJudgeText = 121; end
+ if math.floor(tonumber(SCREENMAN:GetTopScreen():GetChild('GoodNumberP'..gnPlayerCount):GetText())) == 0 then gnJudgeText = 0 end
self:zoomx(gnJudgeText);
self:queuecommand('SFX');
end"
self:accelerate(0.5);
gnJudgeText = math.ceil(tonumber(SCREENMAN:GetTopScreen():GetChild('BooNumberP'..gnPlayerCount):GetText()) / gnJudgeTotal * 121);
if gnJudgeText >= 121 then gnJudgeText = 121; end
+ if math.floor(tonumber(SCREENMAN:GetTopScreen():GetChild('BooNumberP'..gnPlayerCount):GetText())) == 0 then gnJudgeText = 0 end
self:zoomx(gnJudgeText);
self:queuecommand('SFX');
end"
self:sleep(0.6/2);
gnJudgeText = math.ceil(tonumber(SCREENMAN:GetTopScreen():GetChild('MissNumberP'..gnPlayerCount):GetText()) / gnJudgeTotal * 121);
if gnJudgeText >= 121 then gnJudgeText = 121; end
+ if math.floor(tonumber(SCREENMAN:GetTopScreen():GetChild('MissNumberP'..gnPlayerCount):GetText())) == 0 then gnJudgeText = 0 end
self:zoomx(gnJudgeText);
self:queuecommand('SFX');
end"
self:accelerate(0.5);
gnJudgeText = math.ceil(gnJumpsNumber / gnJumpsTotal * 121);
if gnJudgeText >= 121 then gnJudgeText = 121; end
+ if math.floor(gnJumpsNumber / gnJumpsTotal) == 0 then gnJudgeText = 0 end
self:zoomx(gnJudgeText);
self:queuecommand('SFX');
end"
self:accelerate(0.5);
gnJudgeText = math.ceil(gnHoldsNumber / gnHoldsTotal * 121);
if gnJudgeText >= 121 then gnJudgeText = 121; end
+ if math.floor(gnHoldsNumber / gnHoldsTotal) == 0 then gnJudgeText = 0 end
self:zoomx(gnJudgeText);
self:queuecommand('SFX');
end"
self:accelerate(0.5);
gnJudgeText = math.ceil(gnMinesNumber / gnMinesTotal * 121);
if gnJudgeText >= 121 then gnJudgeText = 121; end
+ if math.floor(gnMinesNumber / gnMinesTotal) == 0 then gnJudgeText = 0 end
self:zoomx(gnJudgeText);
self:queuecommand('SFX');
end"
self:accelerate(0.5);
gnJudgeText = math.ceil(gnHandsNumber / gnHandsTotal * 121);
if gnJudgeText >= 121 then gnJudgeText = 121; end
+ if math.floor(gnHandsNumber / gnHandsTotal) == 0 then gnJudgeText = 0 end
self:zoomx(gnJudgeText);
self:queuecommand('SFX');
end"
self:accelerate(0.5);
gnJudgeText = math.ceil(gnRollsNumber / gnRollsTotal * 121);
if gnJudgeText >= 121 then gnJudgeText = 121; end
+ if math.floor(gnRollsNumber / gnRollsTotal) == 0 then gnJudgeText = 0 end
self:zoomx(gnJudgeText);
end"
self:queuecommand('SFX');
self:accelerate(0.5);
gnJudgeText = math.ceil(tonumber(SCREENMAN:GetTopScreen():GetChild('MaxComboNumberP'..gnPlayerCount):GetText()) / 10000 * 121);
if gnJudgeText >= 121 then gnJudgeText = 121; self:rainbow(); end
+ if math.floor(tonumber(SCREENMAN:GetTopScreen():GetChild('MaxComboNumberP'..gnPlayerCount):GetText())) == 0 then gnJudgeText = 0 end
self:zoomx(gnJudgeText);
self:queuecommand('SFX');
end"
if scn == 'ScreenSelectMusic' then
ScreenTransitionWhoosh('short');
-RateRestoreMessage(false);
+RateRestoreMessage(true);
if curRate == nil then curRate = 1 end
gnBlazedP1 = 0;
gnBlazedP2 = 0;
gnStatFrequency = gnStatFrequency + 1;
gnOptionMod = 0;
gnOptionModType = 0;
- gnStaminaSongPercent = 0;
+ gnSongElapsedPercent = 0;
gnNoRestart = false;
end
gnLowHealth = false;
gnLowHealth = false;
gnVoiceTimer = 0;
- gnStaminaTimer = 0;
gnRandomVoice = math.random(1,5);
gnRandomMark1 = math.random(5,92);
gnRandomMark2 = math.random(5,92);
gnRandomMark3 = math.random(5,92);
- gnStaminaSongPercent = 0;
+ gnSongElapsedPercent = 0;
gnStamina25Window = 0;
gnStamina50Window = 0;
gnStamina75Window = 0;
gnSameGrade = 0;
gnSoundCheck = true;
gnAward = 0;
+ gnOptionCheck = false;
+
+ -- Each 0 represents 1% of the song (0% inclusive), there are 202 in total, 101 per player.
+ gnSongTimeline = {
+ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+
+ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+ }
end
if scn == 'ScreenEvaluation' then
ScreenTransitionWhoosh('short');
gnSongCount = gnSongCount + 1;
-RateRestoreMessage(false);
+if not (GAMESTATE:IsEventMode() and MenuButtonGiveUp() and not gnNoRestart and not GAMESTATE:IsCourseMode()) then
+ RateRestoreMessage(false);
+ end
end
-- ==='RATE MOD HAS BEEN RESTORED' MESSAGE===
-- Call with false to display message, call with true to display the message AND reset the mod
function RateRestoreMessage(i)
- if GetRateMod() ~= '1.0x' then
+ if GetRateMod() ~= '1.0x' then
if i then
GAMESTATE:ApplyGameCommand('mod, 1.0xmusic',1);
+ gnOptionCheck = true;
end
- SCREENMAN:SystemMessage('Rate Modifier has been restored to 1.0x')
+ SCREENMAN:SystemMessage('Rate Modifier has been restored to 1.0x');
+ else
+ if gnOptionCheck then
+ gnOptionCheck = false;
+ SCREENMAN:SystemMessage('Rate Modifier has been restored to 1.0x');
+ end
end
end