Skip to content

Instantly share code, notes, and snippets.

@kyzentun
Created May 16, 2015 06:52
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kyzentun/311da4cf535b646fdf84 to your computer and use it in GitHub Desktop.
Save kyzentun/311da4cf535b646fdf84 to your computer and use it in GitHub Desktop.
local xtl_cond_a_result= not (GAMESTATE:IsPlayerEnabled(PLAYER_1) and GAMESTATE:IsPlayerEnabled(PLAYER_2)
and GAMESTATE:GetCurrentSteps(PLAYER_1):GetDifficulty() ~= GAMESTATE:GetCurrentSteps(PLAYER_2):GetDifficulty())
-- XML is so terrible. At least, I hope XML being terrible is the reason why this piece of code was repeated 17 times.
-- score1 = tonumber(string.sub(SCREENMAN:GetTopScreen():GetChild('ScoreP1'):GetChild('ScoreDisplayPercentage Percent'):GetChild('PercentP1'):GetText(), 1, -2))
-- And it's clumsy too, going through the actor tree, hoping those actors exist (they don't if the preferences aren't set to specific things), and then parsing the text.
-- Much better to just fetch the score from STATSMAN. -Kyz
local function get_score(pn)
-- Normally I'd cache the PlayerStageStats for each player in a local
-- variable at the file's scope, so that the code doesn't have to do the work
-- of fetching them every time, but I don't care about this code.
return STATSMAN:GetCurStageStats():GetPlayerStageStats(pn):GetScore()
end
local function optional_actor(cond, actor)
if cond then return actor end
return Def.Actor{}
end
return Def.ActorFrame{
Name= "xtl_actor_b",
InitCommand= function(self)
PlayerEnabled = 0;
-- This section of trying to figure out what rate mod is being used is just hilarious. In SM5, it's much simpler. -Kyz
-- rateModList = { '1.0', '1.1', '1.2', '1.3', '1.4', '1.5', '1.6', '1.7', '1.8', '1.9', '2.0' };
-- rateMod = 1;
-- WTF Mad Matt! You said this would work :/
-- Well it did at first but then it started crashing everything so..... no rate mod for you!
--for playerNumber = 1,2 do
-- if GAMESTATE:IsPlayerEnabled(playerNumber-1) then
-- for i = 1, table.getn(rateModList) do
-- if GAMESTATE:PlayerIsUsingModifier(playerNumber, rateModList[i]..'xmusic') then
-- rateMod = tonumber(rateModList[i]);
-- end
-- end
-- end
--end
-- How to get the rate mod in SM5:
rateMod= GAMESTATE:GetSongOptionsObject("ModsLevel_Preferred"):MusicRate()
beat = (60/138)/rateMod;
beatCount = 0;
miniCount = 0;
end,
optional_actor(xtl_cond_a_result,
Def.Quad{
Name= "xtl_actor_c",
OnCommand= function(self)
self:diffuse(0,0,0,1);
self:zoomto(math.ceil((SCREEN_WIDTH-640)/2),SCREEN_HEIGHT);
self:x((SCREEN_WIDTH-640)/4);
self:y(SCREEN_CENTER_Y);
self:z(1000);
self:sleep(218.9);
end,
}),
optional_actor(xtl_cond_a_result,
Def.Quad{
Name= "xtl_actor_d",
OnCommand= function(self)
self:diffuse(0,0,0,1);
self:zoomto(math.ceil((SCREEN_WIDTH-640)/2)+2,SCREEN_HEIGHT);
self:x(math.ceil((640)+3*(SCREEN_WIDTH-640)/4));
self:y(SCREEN_CENTER_Y);
self:z(1000);
self:sleep(218.9);
end,
}),
optional_actor(xtl_cond_a_result,
Def.Sprite{
Name= "xtl_actor_e",
InitCommand= cmd(zoom,2;x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y;blend,"BlendMode_Add";diffuse,color('#FFFFFF');sleep,209.5;linear,0.3;diffusealpha,0),
Texture= "badapple.avi",
}),
optional_actor(xtl_cond_a_result,
Def.Quad{
Name= "xtl_actor_f",
OnCommand= function(self)
self:queuecommand('Setup');
end,
SetupCommand= function(self)
if GAMESTATE:IsPlayerEnabled(0) then
PlayerEnabled = 1;
else
PlayerEnabled = 2;
end
-- Create Player Variable to use throughout file and position active player on left
Player = SCREENMAN:GetTopScreen():GetChild('PlayerP' .. PlayerEnabled);
Player:x((SCREEN_WIDTH-640)/2 + 160);
end,
}),
optional_actor(xtl_cond_a_result,
Def.Quad{
Name= "xtl_actor_g",
BeatOffCommand= function(self)
GAMESTATE:ApplyGameCommand('mod, *'..(100000*rateMod)..' no beat', PlayerEnabled);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
GAMESTATE:ApplyGameCommand('mod, *'..(100000*rateMod)..' no beat', 2);
end
beatCount = beatCount + 1;
if beatCount ~= 15 then
self:sleep(beat*2);
self:queuecommand('BeatOn');
end
end,
BeatOnCommand= function(self)
GAMESTATE:ApplyGameCommand('mod, *'..(100000*rateMod)..' 2000% beat', PlayerEnabled);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
GAMESTATE:ApplyGameCommand('mod, *'..(100000*rateMod)..' 2000% beat', 2);
end
self:sleep(beat*2);
self:queuecommand('BeatOff');
end,
OnCommand= function(self)
self:sleep(beat*192.5);
self:queuecommand('BeatOn');
end,
}),
optional_actor(xtl_cond_a_result,
Def.Quad{
Name= "xtl_actor_h",
MiniFiveCommand= function(self)
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' -50% mini', PlayerEnabled);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' -50% mini', 2);
end
self:sleep(beat/3);
self:queuecommand('MiniSix');
end,
MiniFourCommand= function(self)
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' -100% mini', PlayerEnabled);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' -100% mini', 2);
end
self:sleep(beat/3);
self:queuecommand('MiniFive');
end,
MiniOneCommand= function(self)
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' -200% mini', PlayerEnabled);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' -200% mini', 2);
end
self:sleep(beat/3);
self:queuecommand('MiniTwo');
end,
MiniSixCommand= function(self)
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' 15% mini', PlayerEnabled);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' 15% mini', 2);
end
miniCount = miniCount + 1;
self:sleep(beat/3);
if miniCount ~= 7 then
self:queuecommand('Start');
end
end,
MiniThreeCommand= function(self)
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' 100% mini', PlayerEnabled);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' 100% mini', 2);
end
self:sleep(beat/3);
self:queuecommand('MiniFour');
end,
MiniTwoCommand= function(self)
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' -100% mini', PlayerEnabled);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' -100% mini', 2);
end
self:sleep(beat/3);
self:queuecommand('MiniThree');
end,
OnCommand= function(self)
self:sleep(beat*62);
self:queuecommand('Start');
end,
StartCommand= function(self)
-- beat 62 + 2
if miniCount == 0 then
self:queuecommand('MiniOne');
-- beat 94 + 2
elseif miniCount == 1 then
self:sleep(beat*30);
self:queuecommand('MiniOne');
-- beat 158 + 2
elseif miniCount == 2 then
self:sleep(beat*62);
self:queuecommand('MiniOne');
-- beat 190 + 2
elseif miniCount == 3 then
self:sleep(beat*30);
self:queuecommand('MiniOne');
-- beat 254 + 2
elseif miniCount == 4 then
self:sleep(beat*94);
self:queuecommand('MiniOne');
-- beat 286 + 2
elseif miniCount == 5 then
self:sleep(beat*30);
self:queuecommand('MiniOne');
-- beat 350 + 2
else
self:sleep(beat*62);
self:queuecommand('MiniOne');
end
end,
}),
optional_actor(xtl_cond_a_result,
Def.Quad{
Name= "xtl_actor_i",
AfterBreakCommand= function(self)
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
score1 = get_score(PLAYER_1)
score2 = get_score(PLAYER_2)
if score1 >= score2 then
if Player:GetZ() < 4 then
cur1zless = 3;
cur2zless = 2;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 6;
cur2zmore = 5;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
else
if Player:GetZ() < 4 then
cur1zless = 2;
cur2zless = 3;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 5;
cur2zmore = 6;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
end
end
-- SPINNEHHHH!; 25 Beats
Player:linear(beat*2);
Player:y(SCREEN_CENTER_Y);
Player:x(SCREEN_CENTER_X);
Player:rotationz(0);
Player:vibrate();
Player:effectmagnitude(30,30,0);
Player:linear(beat*4);
Player:rotationx(60);
Player:rotationy(-960);
Player:stopeffect();
Player:linear(beat*2);
Player:rotationy(-1440);
Player:rotationx(0);
Player:zoom(1);
Player:sleep(0);
Player:rotationy(0);
Player:sleep(beat*5);
Player:linear(beat*1);
Player:addx(240);
Player:addy(-80);
Player:zoom(0.5);
Player:sleep(beat*1);
Player:accelerate(beat*1);
Player:addx(-480);
Player:addy(80);
Player:decelerate(beat*1);
Player:addx(240);
Player:accelerate(beat*1);
Player:addx(240);
Player:decelerate(beat*1);
Player:addx(-160);
Player:addy(-30);
Player:zoom(0.8);
Player:sleep(beat*1);
Player:linear(beat*2);
Player:rotationy(-40);
Player:sleep(beat*1);
-- 2 Beats
Player:linear(beat*2);
Player:rotationy(-360);
Player:addy(100);
Player:x(SCREEN_CENTER_X);
Player:sleep(0);
Player:rotationy(0);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
-- SPINNEHHHH!; 25 Beats
OtherPlayer:linear(beat*2);
OtherPlayer:y(SCREEN_CENTER_Y);
OtherPlayer:x(SCREEN_CENTER_X);
OtherPlayer:rotationz(0);
OtherPlayer:vibrate();
OtherPlayer:effectmagnitude(30,30,0);
OtherPlayer:linear(beat*4);
OtherPlayer:rotationx(60);
OtherPlayer:rotationy(-960);
OtherPlayer:stopeffect();
OtherPlayer:linear(beat*2);
OtherPlayer:rotationy(-1440);
OtherPlayer:rotationx(0);
OtherPlayer:zoom(1);
OtherPlayer:sleep(0);
OtherPlayer:rotationy(0);
OtherPlayer:sleep(beat*5);
OtherPlayer:linear(beat*1);
OtherPlayer:addx(240);
OtherPlayer:addy(-80);
OtherPlayer:zoom(0.5);
OtherPlayer:sleep(beat*1);
OtherPlayer:accelerate(beat*1);
OtherPlayer:addx(-480);
OtherPlayer:addy(80);
OtherPlayer:decelerate(beat*1);
OtherPlayer:addx(240);
OtherPlayer:accelerate(beat*1);
OtherPlayer:addx(240);
OtherPlayer:decelerate(beat*1);
OtherPlayer:addx(-160);
OtherPlayer:addy(-30);
OtherPlayer:zoom(0.8);
OtherPlayer:sleep(beat*1);
OtherPlayer:linear(beat*2);
OtherPlayer:rotationy(-40);
OtherPlayer:sleep(beat*1);
-- 2 Beats
OtherPlayer:linear(beat*2);
OtherPlayer:rotationy(-360);
OtherPlayer:addy(100);
OtherPlayer:x(SCREEN_CENTER_X);
OtherPlayer:sleep(0);
OtherPlayer:rotationy(0);
end
self:sleep(beat*27);
self:queuecommand('SplitOn1');
end,
Break2Command= function(self)
GAMESTATE:ApplyGameCommand('mod, *'..(1*rateMod)..' no alternate', PlayerEnabled);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
GAMESTATE:ApplyGameCommand('mod, *'..(1*rateMod)..' no alternate', 2);
end
self:queuecommand('AfterBreak');
end,
BreakCommand= function(self)
Player:decelerate(beat*0.75);
Player:addy(150);
Player:addx(-30);
Player:sleep(beat*0.25);
GAMESTATE:ApplyGameCommand('mod, *'..(1*rateMod)..' 100% alternate', PlayerEnabled);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
OtherPlayer:decelerate(beat*0.75);
OtherPlayer:addy(150);
OtherPlayer:addx(-30);
OtherPlayer:sleep(beat*0.25);
GAMESTATE:ApplyGameCommand('mod, *'..(1*rateMod)..' 100% alternate', 2);
end
self:sleep(beat*1);
self:queuecommand('Break2');
end,
FifthCommand= function(self)
-- For some reason this one kept saying the z value was less than 4 when it shouldn't be so I hardcoded this :/
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
score1 = get_score(PLAYER_1)
score2 = get_score(PLAYER_2)
if score1 >= score2 then
cur1zmore = 6;
cur2zmore = 5;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
else
cur1zmore = 5;
cur2zmore = 6;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
end
Player:decelerate(beat*1);
Player:x(SCREEN_CENTER_X + 30);
Player:y(SCREEN_CENTER_Y);
Player:zoom(0.7);
Player:sleep(beat*0.6);
Player:decelerate(beat*0.45);
Player:rotationy(-180);
Player:addx(-20);
Player:accelerate(beat*0.45);
Player:rotationy(-360);
Player:addx(20);
Player:sleep(0);
Player:rotationy(0);
Player:rotationz(0);
Player:sleep(beat*1);
Player:accelerate(beat*1);
Player:x(SCREEN_CENTER_X-20);
Player:y(SCREEN_CENTER_Y);
Player:decelerate(beat*1);
Player:rotationz(-15);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
OtherPlayer:decelerate(beat*1);
OtherPlayer:x(SCREEN_CENTER_X + 30);
OtherPlayer:y(SCREEN_CENTER_Y);
OtherPlayer:zoom(0.7);
OtherPlayer:sleep(beat*0.6);
OtherPlayer:decelerate(beat*0.45);
OtherPlayer:rotationy(-180);
OtherPlayer:addx(-20);
OtherPlayer:accelerate(beat*0.45);
OtherPlayer:rotationy(-360);
OtherPlayer:addx(20);
OtherPlayer:sleep(0);
OtherPlayer:rotationy(0);
OtherPlayer:rotationz(0);
OtherPlayer:sleep(beat*1);
OtherPlayer:accelerate(beat*1);
OtherPlayer:x(SCREEN_CENTER_X-20);
OtherPlayer:y(SCREEN_CENTER_Y);
OtherPlayer:decelerate(beat*1);
OtherPlayer:rotationz(-15);
end
self:sleep(beat*7.5);
self:queuecommand('ThirdSplitOn');
end,
FourthCommand= function(self)
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
score1 = get_score(PLAYER_1)
score2 = get_score(PLAYER_2)
if score1 >= score2 then
if Player:GetZ() < 4 then
cur1zless = 3;
cur2zless = 2;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 6;
cur2zmore = 5;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
else
if Player:GetZ() < 4 then
cur1zless = 2;
cur2zless = 3;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 5;
cur2zmore = 6;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
end
end
Player:sleep(beat*3);
Player:rotationz(0);
Player:decelerate(beat*2);
Player:x(SCREEN_CENTER_X + 160);
Player:z(cur1zmore);
Player:sleep(beat*3);
Player:z(cur1zless);
Player:sleep(beat*6);
Player:decelerate(beat*2);
Player:addx(-60);
Player:decelerate(beat*2);
Player:addx(-100);
Player:decelerate(beat*3);
Player:addx(200);
Player:z(cur1zmore);
Player:decelerate(beat*4);
Player:zoom(0.5);
Player:x(SCREEN_CENTER_X);
Player:y(SCREEN_CENTER_Y/(1.5));
Player:rotationy(30);
Player:z(cur1zless);
Player:sleep(beat*3);
Player:addy(70);
Player:sleep(0.5);
Player:decelerate(beat*2)
Player:rotationy(-30);
Player:sleep(beat*1);
Player:addy(-30);
Player:decelerate(beat*2);
Player:rotationy(0);
Player:accelerate(beat*5.5);
Player:zoom(1.4);
Player:y(SCREEN_CENTER_Y);
Player:decelerate(0.5);
Player:zoom(1);
Player:x(SCREEN_CENTER_X + 160);
Player:sleep(beat*3);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
OtherPlayer:sleep(beat*3);
OtherPlayer:rotationz(0);
OtherPlayer:decelerate(beat*2);
OtherPlayer:x(SCREEN_CENTER_X + 160);
OtherPlayer:z(cur2zmore);
OtherPlayer:sleep(beat*3);
OtherPlayer:z(cur2zless);
OtherPlayer:sleep(beat*6);
OtherPlayer:decelerate(beat*2);
OtherPlayer:addx(-60);
OtherPlayer:decelerate(beat*2);
OtherPlayer:addx(-100);
OtherPlayer:decelerate(beat*3);
OtherPlayer:addx(200);
OtherPlayer:z(cur2zmore);
OtherPlayer:decelerate(beat*4);
OtherPlayer:zoom(0.5);
OtherPlayer:x(SCREEN_CENTER_X);
OtherPlayer:y(SCREEN_CENTER_Y/(1.5));
OtherPlayer:rotationy(30);
OtherPlayer:z(cur2zless);
OtherPlayer:sleep(beat*3);
OtherPlayer:addy(70);
OtherPlayer:sleep(0.5);
OtherPlayer:decelerate(beat*2)
OtherPlayer:rotationy(-30);
OtherPlayer:sleep(beat*1);
OtherPlayer:addy(-30);
OtherPlayer:decelerate(beat*2);
OtherPlayer:rotationy(0);
OtherPlayer:accelerate(beat*5.5);
OtherPlayer:zoom(1.4);
OtherPlayer:y(SCREEN_CENTER_Y);
OtherPlayer:decelerate(0.5);
OtherPlayer:zoom(1);
OtherPlayer:x(SCREEN_CENTER_X + 160);
OtherPlayer:sleep(beat*3);
end
self:sleep(beat*45);
self:queuecommand('SecondSplitOn1');
end,
FourthSplitOffCommand= function(self)
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
score1 = get_score(PLAYER_1)
score2 = get_score(PLAYER_2)
if score1 >= score2 then
if Player:GetZ() < 4 then
cur1zless = 3;
cur2zless = 2;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 6;
cur2zmore = 5;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
else
if Player:GetZ() < 4 then
cur1zless = 2;
cur2zless = 3;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 5;
cur2zmore = 6;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
end
end
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no flip', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no invert', PlayerEnabled);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no flip', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no invert', 2);
end
Player:sleep(0);
Player:rotationz(150);
Player:addy(-70);
Player:addx(-160);
Player:linear(beat*2);
Player:rotationz(0);
Player:linear(beat*1.5);
Player:addx(200);
Player:addy(70);
Player:sleep(beat*5);
Player:linear(beat*1);
Player:zoom(0.4);
Player:rotationz(160);
Player:linear(beat*0.50);
Player:rotationz(80);
Player:addx(-200);
Player:addy(-240)
Player:linear(beat*0.50);
Player:rotationz(0);
Player:addx(50);
Player:addy(70);
Player:linear(beat*1.5);
Player:rotationz(-405);
Player:zoom(1);
Player:x(SCREEN_CENTER_X+60);
Player:y(SCREEN_CENTER_Y+60);
Player:linear(beat*1);
Player:addx(-60);
Player:addy(-60);
Player:zoom(0.8);
Player:accelerate(beat*1);
Player:rotationz(-525);
Player:zoom(0.4);
Player:x(SCREEN_CENTER_X-140);
Player:y(410);
Player:linear(beat*1);
Player:rotationz(-490);
Player:y(380);
Player:linear(beat*2);
Player:rotationz(-425);
Player:y(150);
Player:sleep(beat*1);
Player:decelerate(beat*1);
Player:rotationz(-420);
Player:addx(5);
Player:y(130);
Player:sleep(beat*1);
Player:decelerate(beat*1);
Player:rotationz(-410);
Player:addx(20);
Player:y(120);
Player:sleep(beat*1);
Player:decelerate(beat*1);
Player:rotationz(-405);
Player:y(100);
Player:decelerate(beat*1);
Player:rotationz(-375);
Player:addx(70);
Player:y(75);
Player:sleep(beat*1);
Player:decelerate(beat*1);
Player:rotationz(-360);
Player:x(SCREEN_CENTER_X);
Player:linear(beat*3);
Player:zoom(2);
Player:y(SCREEN_CENTER_Y+20);
Player:sleep(0);
Player:rotationx(80);
Player:rotationy(-150);
Player:rotationz(0);
Player:zoom(0.7);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
OtherPlayer:sleep(0);
OtherPlayer:rotationz(150);
OtherPlayer:addy(-70);
OtherPlayer:addx(-160);
OtherPlayer:linear(beat*2);
OtherPlayer:rotationz(0);
OtherPlayer:linear(beat*1.5);
OtherPlayer:addx(200);
OtherPlayer:addy(70);
OtherPlayer:sleep(beat*5);
OtherPlayer:linear(beat*1);
OtherPlayer:zoom(0.4);
OtherPlayer:rotationz(160);
OtherPlayer:linear(beat*0.50);
OtherPlayer:rotationz(80);
OtherPlayer:addx(-200);
OtherPlayer:addy(-240)
OtherPlayer:linear(beat*0.50);
OtherPlayer:rotationz(0);
OtherPlayer:addx(50);
OtherPlayer:addy(70);
OtherPlayer:linear(beat*1.5);
OtherPlayer:rotationz(-405);
OtherPlayer:zoom(1);
OtherPlayer:x(SCREEN_CENTER_X+60);
OtherPlayer:y(SCREEN_CENTER_Y+60);
OtherPlayer:linear(beat*1);
OtherPlayer:addx(-60);
OtherPlayer:addy(-60);
OtherPlayer:zoom(0.8);
OtherPlayer:accelerate(beat*1);
OtherPlayer:rotationz(-525);
OtherPlayer:zoom(0.4);
OtherPlayer:x(SCREEN_CENTER_X-140);
OtherPlayer:y(410);
OtherPlayer:linear(beat*1);
OtherPlayer:rotationz(-490);
OtherPlayer:y(380);
OtherPlayer:linear(beat*2);
OtherPlayer:rotationz(-425);
OtherPlayer:y(150);
OtherPlayer:sleep(beat*1);
OtherPlayer:decelerate(beat*1);
OtherPlayer:rotationz(-420);
OtherPlayer:addx(5);
OtherPlayer:y(130);
OtherPlayer:sleep(beat*1);
OtherPlayer:decelerate(beat*1);
OtherPlayer:rotationz(-410);
OtherPlayer:addx(20);
OtherPlayer:y(120);
OtherPlayer:sleep(beat*1);
OtherPlayer:decelerate(beat*1);
OtherPlayer:rotationz(-405);
OtherPlayer:y(100);
OtherPlayer:decelerate(beat*1);
OtherPlayer:rotationz(-375);
OtherPlayer:addx(70);
OtherPlayer:y(75);
OtherPlayer:sleep(beat*1);
OtherPlayer:decelerate(beat*1);
OtherPlayer:rotationz(-360);
OtherPlayer:x(SCREEN_CENTER_X);
OtherPlayer:linear(beat*3);
OtherPlayer:zoom(2);
OtherPlayer:y(SCREEN_CENTER_Y+20);
OtherPlayer:sleep(0);
OtherPlayer:rotationx(80);
OtherPlayer:rotationy(-150);
OtherPlayer:rotationz(0);
OtherPlayer:zoom(0.7);
end
self:sleep(beat*29);
self:queuecommand('Stuff6');
end,
FourthSplitOn1Command= function(self)
Player:sleep(0);
Player:rotationy(0);
Player:x(SCREEN_CENTER_X);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' -225% flip', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' 225% invert', PlayerEnabled);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
OtherPlayer:sleep(0);
OtherPlayer:rotationy(0);
OtherPlayer:x(SCREEN_CENTER_X);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' -225% flip', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' 225% invert', 2);
end
self:sleep(beat*1);
self:queuecommand('FourthSplitOn2');
end,
FourthSplitOn2Command= function(self)
GAMESTATE:ApplyGameCommand('mod, *'..(3*rateMod)..' -180% flip', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(3*rateMod)..' 180% invert', PlayerEnabled);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
GAMESTATE:ApplyGameCommand('mod, *'..(3*rateMod)..' -180% flip', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(3*rateMod)..' 180% invert', 2);
end
self:sleep(beat*1.5);
self:queuecommand('FourthSplitOff');
end,
ModCommand= function(self)
-- Force Mods for Main Player (will be P1 in 2P mode)
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no boost', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no brake', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no wave', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no expand', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no boomerang', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no drunk', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no dizzy', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no mini', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no flip', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no tornado', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no tipsy', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no hidden', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no sudden', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no stealth', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no blink', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no randomvanish', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no turn', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no little', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no wide', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no big', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no quick', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no skippy', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no echo', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no stomp', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no reverse', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no split', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no alternate', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no cross', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no noholds', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no planted', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no twister', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no nojumps', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no nohands', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no nomines', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no mines', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no dark', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no beat', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' blind', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' 15% mini', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' 3.5x', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' overhead', PlayerEnabled);
-- Force mods for P2 if in 2P mode
if GAMESTATE:IsPlayerEnabled(PLAYER_1) and GAMESTATE:IsPlayerEnabled(PLAYER_2) then
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no boost', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no brake', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no wave', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no expand', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no boomerang', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no drunk', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no dizzy', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no mini', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no flip', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no tornado', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no tipsy', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no hidden', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no sudden', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no stealth', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no blink', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no randomvanish', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no turn', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no little', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no wide', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no big', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no quick', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no skippy', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no echo', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no stomp', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no reverse', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no split', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no alternate', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no cross', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no noholds', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no planted', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no twister', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no nojumps', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no nohands', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no nomines', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no mines', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no dark', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no beat', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' blind', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' 15% mini', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' 3.5x', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' overhead', 2);
end
end,
OnCommand= function(self)
self:queuecommand('Some');
end,
SecondCommand= function(self)
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
score1 = get_score(PLAYER_1)
score2 = get_score(PLAYER_2)
if score1 >= score2 then
if Player:GetZ() < 4 then
cur1zless = 3;
cur2zless = 2;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 6;
cur2zmore = 5;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
else
if Player:GetZ() < 4 then
cur1zless = 2;
cur2zless = 3;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 5;
cur2zmore = 6;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
end
end
-- Waagggg; 7.75 Beats
Player:sleep(beat*1.75);
Player:linear(beat*1);
Player:rotationz(-15);
Player:linear(beat*0.5);
Player:rotationz(15);
Player:linear(beat*0.5);
Player:rotationz(-15);
Player:linear(beat*0.5);
Player:rotationz(15);
Player:linear(beat*0.5);
Player:rotationz(-15);
Player:linear(beat*0.5);
Player:rotationz(15);
Player:linear(beat*0.5);
Player:rotationz(-15);
Player:linear(beat*0.5);
Player:rotationz(15);
Player:linear(beat*0.5);
Player:rotationz(-15);
Player:linear(beat*0.5);
Player:rotationz(15);
Player:linear(beat*0.5);
Player:rotationz(-15);
-- Center and Bounce; 6.5 Beats
Player:linear(beat*1.5);
Player:rotationz(0);
Player:zoom(0.6);
Player:addx(160);
Player:linear(beat*1);
Player:zoom(1);
Player:z(cur1zmore);
Player:decelerate(beat*0.5);
Player:addy(20);
Player:addx(-5);
Player:rotationy(-5);
Player:accelerate(beat*0.5);
Player:addy(-20);
Player:addx(-5);
Player:rotationy(-10);
Player:decelerate(beat*0.5);
Player:addy(20);
Player:addx(-5);
Player:rotationy(-15);
Player:accelerate(beat*0.5);
Player:addy(-20);
Player:addx(-5);
Player:rotationy(-20);
Player:decelerate(beat*0.5);
Player:addy(20);
Player:addx(25);
Player:rotationy(5);
Player:accelerate(beat*0.5);
Player:addy(-20);
Player:addx(5);
Player:rotationy(10);
Player:decelerate(beat*0.5);
Player:addy(20);
Player:addx(5);
Player:rotationy(15);
Player:accelerate(beat*0.5);
Player:addy(5);
Player:rotationy(20);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
OtherPlayer:sleep(beat*1.75);
OtherPlayer:linear(beat*1);
OtherPlayer:rotationz(-15);
OtherPlayer:linear(beat*0.5);
OtherPlayer:rotationz(15);
OtherPlayer:linear(beat*0.5);
OtherPlayer:rotationz(-15);
OtherPlayer:linear(beat*0.5);
OtherPlayer:rotationz(15);
OtherPlayer:linear(beat*0.5);
OtherPlayer:rotationz(-15);
OtherPlayer:linear(beat*0.5);
OtherPlayer:rotationz(15);
OtherPlayer:linear(beat*0.5);
OtherPlayer:rotationz(-15);
OtherPlayer:linear(beat*0.5);
OtherPlayer:rotationz(15);
OtherPlayer:linear(beat*0.5);
OtherPlayer:rotationz(-15);
OtherPlayer:linear(beat*0.5);
OtherPlayer:rotationz(15);
OtherPlayer:linear(beat*0.5);
OtherPlayer:rotationz(-15);
-- Center and Bounce; 6.5 Beats
OtherPlayer:linear(beat*1.5);
OtherPlayer:rotationz(0);
OtherPlayer:zoom(0.6);
OtherPlayer:addx(160);
OtherPlayer:linear(beat*1);
OtherPlayer:zoom(1);
OtherPlayer:z(cur2zmore);
OtherPlayer:decelerate(beat*0.5);
OtherPlayer:addy(20);
OtherPlayer:addx(-5);
OtherPlayer:rotationy(-5);
OtherPlayer:accelerate(beat*0.5);
OtherPlayer:addy(-20);
OtherPlayer:addx(-5);
OtherPlayer:rotationy(-10);
OtherPlayer:decelerate(beat*0.5);
OtherPlayer:addy(20);
OtherPlayer:addx(-5);
OtherPlayer:rotationy(-15);
OtherPlayer:accelerate(beat*0.5);
OtherPlayer:addy(-20);
OtherPlayer:addx(-5);
OtherPlayer:rotationy(-20);
OtherPlayer:decelerate(beat*0.5);
OtherPlayer:addy(20);
OtherPlayer:addx(25);
OtherPlayer:rotationy(5);
OtherPlayer:accelerate(beat*0.5);
OtherPlayer:addy(-20);
OtherPlayer:addx(5);
OtherPlayer:rotationy(10);
OtherPlayer:decelerate(beat*0.5);
OtherPlayer:addy(20);
OtherPlayer:addx(5);
OtherPlayer:rotationy(15);
OtherPlayer:accelerate(beat*0.5);
OtherPlayer:addy(5);
OtherPlayer:rotationy(20);
end
self:sleep(beat*14.25);
self:queuecommand('Stuff2');
end,
SecondSplitOffCommand= function(self)
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
score1 = get_score(PLAYER_1)
score2 = get_score(PLAYER_2)
if score1 >= score2 then
if Player:GetZ() < 4 then
cur1zless = 3;
cur2zless = 2;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 6;
cur2zmore = 5;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
else
if Player:GetZ() < 4 then
cur1zless = 2;
cur2zless = 3;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 5;
cur2zmore = 6;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
end
end
GAMESTATE:ApplyGameCommand('mod, *0.5'..(1*rateMod)..' no flip', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(1*rateMod)..' no invert', PlayerEnabled);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
GAMESTATE:ApplyGameCommand('mod, *0.5'..(1*rateMod)..' no flip', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(1*rateMod)..' no invert', 2);
end
Player:accelerate(beat*3);
Player:rotationz(180);
Player:decelerate(beat*3);
Player:zoom(0.3);
Player:rotationz(360);
Player:x(SCREEN_CENTER_X-240);
Player:y(90);
Player:sleep(beat*11);
Player:linear(beat*3);
Player:addx(520)
Player:sleep(beat*2);
Player:x(SCREEN_CENTER_X);
Player:y(SCREEN_CENTER_Y);
Player:zoom(0.35);
Player:linear(beat*3);
Player:zoom(0.65);
Player:addx(25);
Player:sleep(beat*2);
Player:decelerate(beat*2);
Player:rotationy(-360);
Player:zoom(0.8);
Player:z(cur1zmore);
Player:sleep(0);
Player:rotationy(0);
Player:accelerate(beat*2);
Player:zoom(0.65);
Player:z(cur1zless);
Player:addy(100);
Player:sleep(beat*3);
Player:addy(-75);
Player:sleep(beat*2);
Player:decelerate(beat*2);
Player:addy(-75);
Player:z(cur1zmore);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
OtherPlayer:accelerate(beat*3);
OtherPlayer:rotationz(180);
OtherPlayer:decelerate(beat*3);
OtherPlayer:zoom(0.3);
OtherPlayer:rotationz(360);
OtherPlayer:x(SCREEN_CENTER_X-240);
OtherPlayer:y(90);
OtherPlayer:sleep(beat*11);
OtherPlayer:linear(beat*3);
OtherPlayer:addx(520)
OtherPlayer:sleep(beat*2);
OtherPlayer:x(SCREEN_CENTER_X);
OtherPlayer:y(SCREEN_CENTER_Y);
OtherPlayer:zoom(0.35);
OtherPlayer:linear(beat*3);
OtherPlayer:zoom(0.65);
OtherPlayer:addx(25);
OtherPlayer:sleep(beat*2);
OtherPlayer:decelerate(beat*2);
OtherPlayer:rotationy(-360);
OtherPlayer:zoom(0.8);
OtherPlayer:z(cur2zmore);
OtherPlayer:sleep(0);
OtherPlayer:rotationy(0);
OtherPlayer:accelerate(beat*2);
OtherPlayer:zoom(0.65);
OtherPlayer:z(cur2zless);
OtherPlayer:addy(100);
OtherPlayer:sleep(beat*3);
OtherPlayer:addy(-75);
OtherPlayer:sleep(beat*2);
OtherPlayer:decelerate(beat*2);
OtherPlayer:addy(-75);
OtherPlayer:z(cur2zmore);
end
self:sleep(beat*38);
self:queuecommand('Stuff4');
end,
SecondSplitOn1Command= function(self)
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' -160% flip', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' 160% invert', PlayerEnabled);
Player:x(SCREEN_CENTER_X)
Player:zoom(0.75);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' -160% flip', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' 160% invert', 2);
OtherPlayer:x(SCREEN_CENTER_X)
OtherPlayer:zoom(0.75);
end
self:sleep(beat*1);
self:queuecommand('SecondSplitOn2');
end,
SecondSplitOn2Command= function(self)
GAMESTATE:ApplyGameCommand('mod, *'..(1*rateMod)..' -75% flip', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(1*rateMod)..' 75% invert', PlayerEnabled);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
GAMESTATE:ApplyGameCommand('mod, *'..(1*rateMod)..' -75% flip', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(1*rateMod)..' 75% invert', 2);
end
self:sleep(beat*3);
self:queuecommand('SecondSplitOn3');
end,
SecondSplitOn3Command= function(self)
GAMESTATE:ApplyGameCommand('mod, *'..(1*rateMod)..' -30% flip', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(1*rateMod)..' 30% invert', PlayerEnabled);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
GAMESTATE:ApplyGameCommand('mod, *'..(1*rateMod)..' -30% flip', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(1*rateMod)..' 30% invert', 2);
end
self:sleep(beat*2);
self:queuecommand('SecondSplitOff');
end,
SeventhCommand= function(self)
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
score1 = get_score(PLAYER_1)
score2 = get_score(PLAYER_2)
if score1 >= score2 then
if Player:GetZ() < 4 then
cur1zless = 3;
cur2zless = 2;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 6;
cur2zmore = 5;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
else
if Player:GetZ() < 4 then
cur1zless = 2;
cur2zless = 3;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 5;
cur2zmore = 6;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
end
end
Player:sleep(beat*5);
Player:x(SCREEN_CENTER_X-280);
Player:y(SCREEN_CENTER_Y);
Player:decelerate(beat*2);
Player:z(cur1zmore);
Player:rotationy(-30);
Player:addx(170);
Player:linear(beat*1);
Player:rotationy(0);
Player:linear(beat*2);
Player:x(SCREEN_CENTER_X-40);
Player:linear(beat*3);
Player:addx(20);
Player:linear(beat*1);
Player:addx(100);
Player:rotationy(-45);
Player:linear(beat*2);
Player:rotationy(-60);
Player:addx(-30);
Player:zoom(1);
Player:decelerate(beat*1);
Player:rotationy(0);
Player:zoom(0.6);
Player:addx(120);
Player:addy(-50);
Player:decelerate(beat*1.5);
Player:addx(40);
Player:sleep(0);
Player:x(SCREEN_CENTER_X);
Player:y(SCREEN_CENTER_Y-50);
Player:zoom(2);
Player:linear(beat*1);
Player:zoom(1.4);
Player:linear(beat*3);
Player:zoom(0.6);
Player:addx(150);
Player:addy(50);
Player:sleep(0);
Player:z(cur1zless);
Player:accelerate(beat*1);
Player:addx(-90);
Player:addy(-25);
Player:decelerate(beat*1.5);
Player:addx(-75);
Player:addy(25);
Player:linear(beat*3);
Player:zoom(0.8);
Player:addx(-35);
Player:addy(-20);
Player:sleep(beat*1.5);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
OtherPlayer:sleep(beat*5);
OtherPlayer:x(SCREEN_CENTER_X-280);
OtherPlayer:y(SCREEN_CENTER_Y);
OtherPlayer:decelerate(beat*2);
OtherPlayer:z(cur2zmore);
OtherPlayer:rotationy(-30);
OtherPlayer:addx(170);
OtherPlayer:linear(beat*1);
OtherPlayer:rotationy(0);
OtherPlayer:linear(beat*2);
OtherPlayer:x(SCREEN_CENTER_X-40);
OtherPlayer:linear(beat*3);
OtherPlayer:addx(20);
OtherPlayer:linear(beat*1);
OtherPlayer:addx(100);
OtherPlayer:rotationy(-45);
OtherPlayer:linear(beat*2);
OtherPlayer:rotationy(-60);
OtherPlayer:addx(-30);
OtherPlayer:zoom(1);
OtherPlayer:decelerate(beat*1);
OtherPlayer:rotationy(0);
OtherPlayer:zoom(0.6);
OtherPlayer:addx(120);
OtherPlayer:addy(-50);
OtherPlayer:decelerate(beat*1.5);
OtherPlayer:addx(40);
OtherPlayer:sleep(0);
OtherPlayer:x(SCREEN_CENTER_X);
OtherPlayer:y(SCREEN_CENTER_Y-50);
OtherPlayer:zoom(2);
OtherPlayer:linear(beat*1);
OtherPlayer:zoom(1.4);
OtherPlayer:linear(beat*3);
OtherPlayer:zoom(0.6);
OtherPlayer:addx(150);
OtherPlayer:addy(50);
OtherPlayer:sleep(0);
OtherPlayer:z(cur2zless);
OtherPlayer:accelerate(beat*1);
OtherPlayer:addx(-90);
OtherPlayer:addy(-25);
OtherPlayer:decelerate(beat*1.5);
OtherPlayer:addx(-75);
OtherPlayer:addy(25);
OtherPlayer:linear(beat*3);
OtherPlayer:zoom(0.8);
OtherPlayer:addx(-35);
OtherPlayer:addy(-20);
OtherPlayer:sleep(beat*1.5);
end
self:sleep(beat*29.5);
self:queuecommand('Stuff7');
end,
SixthCommand= function(self)
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
score1 = get_score(PLAYER_1)
score2 = get_score(PLAYER_2)
if score1 >= score2 then
if Player:GetZ() < 4 then
cur1zless = 3;
cur2zless = 2;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 6;
cur2zmore = 5;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
else
if Player:GetZ() < 4 then
cur1zless = 2;
cur2zless = 3;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 5;
cur2zmore = 6;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
end
end
Player:sleep(0);
Player:x(SCREEN_CENTER_X);
Player:rotationy(-50);
Player:zoom(0.65);
Player:linear(beat*2);
Player:zoom(0.65);
Player:decelerate(beat*1);
Player:rotationy(-30);
Player:addx(30);
Player:zoom(0.8);
Player:sleep(beat*1.50);
Player:linear(beat*2);
Player:rotationy(390);
Player:addx(-80);
Player:accelerate(beat*1);
Player:addx(80);
Player:rotationy(360);
Player:sleep(0);
Player:rotationy(0);
Player:sleep(beat*3.75);
Player:decelerate(beat*0.5);
Player:addx(-270);
Player:sleep(0);
Player:x(SCREEN_CENTER_X);
Player:sleep(beat*1.5);
Player:decelerate(beat*0.5);
Player:addx(-270);
Player:sleep(0);
Player:x(SCREEN_CENTER_X);
Player:sleep(beat*2.25);
Player:linear(beat*0.5);
Player:addx(-200);
Player:rotationy(-45);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
OtherPlayer:sleep(0);
OtherPlayer:x(SCREEN_CENTER_X);
OtherPlayer:rotationy(-50);
OtherPlayer:zoom(0.65);
OtherPlayer:linear(beat*2);
OtherPlayer:zoom(0.65);
OtherPlayer:decelerate(beat*1);
OtherPlayer:rotationy(-30);
OtherPlayer:addx(30);
OtherPlayer:zoom(0.8);
OtherPlayer:sleep(beat*1.50);
OtherPlayer:linear(beat*2);
OtherPlayer:rotationy(390);
OtherPlayer:addx(-80);
OtherPlayer:accelerate(beat*1);
OtherPlayer:addx(80);
OtherPlayer:rotationy(360);
OtherPlayer:sleep(0);
OtherPlayer:rotationy(0);
OtherPlayer:sleep(beat*3.75);
OtherPlayer:decelerate(beat*0.5);
OtherPlayer:addx(-270);
OtherPlayer:sleep(0);
OtherPlayer:x(SCREEN_CENTER_X);
OtherPlayer:sleep(beat*1.5);
OtherPlayer:decelerate(beat*0.5);
OtherPlayer:addx(-270);
OtherPlayer:sleep(0);
OtherPlayer:x(SCREEN_CENTER_X);
OtherPlayer:sleep(beat*2.25);
OtherPlayer:linear(beat*0.5);
OtherPlayer:addx(-200);
OtherPlayer:rotationy(-45);
end
self:sleep(beat*16.5)
self:queuecommand('FourthSplitOn1')
end,
SomeCommand= function(self)
cur1zless = 3;
cur2zless = 2;
cur1zmore = 6;
cur2zmore = 5;
-- Rearrange Layers
SCREENMAN:GetTopScreen():SetDrawByZPosition(true);
SCREENMAN:GetTopScreen():GetChild('SongBackground'):z(0);
SCREENMAN:GetTopScreen():GetChild('SongForeground'):z(4);
Player:z(cur1zless);
-- WHO NEEDS AN OVERLAY WHEN YOU CAN HAVE A BLACK BACKGROUND!
SCREENMAN:GetTopScreen():GetChild('Overlay'):z(1);
SCREENMAN:GetTopScreen():GetChild('Overlay'):diffuse(0,0,0,1);
SCREENMAN:GetTopScreen():GetChild('Overlay'):zoomto(640,480);
SCREENMAN:GetTopScreen():GetChild('Overlay'):x(0);
SCREENMAN:GetTopScreen():GetChild('Overlay'):y(0);
-- Play Normal until Apple Catch, do stuff if Both Players are enabled
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
-- Make Player 2 on top for fairness
SCREENMAN:GetTopScreen():GetChild('PlayerP2'):z(5);
SCREENMAN:GetTopScreen():GetChild('PlayerP2'):x((SCREEN_WIDTH-640)/2 + 480);
SCREENMAN:GetTopScreen():GetChild('PlayerP2'):sleep(beat*30.75);
SCREENMAN:GetTopScreen():GetChild('PlayerP2'):z(0);
OtherPlayer = SCREENMAN:GetTopScreen():GetChild('PlayerP2');
end
-- Display Single Playfield from Now On
Player:sleep(beat*30.75);
self:sleep(beat*30.75);
-- 15% Mini, 1.5x, Overhead
self:queuecommand('Mod');
-- Center Playfield
Player:z(cur1zmore);
Player:x(SCREEN_CENTER_X);
-- Left+Right; 5 Beats
Player:sleep(beat*1);
Player:decelerate(beat*1);
Player:addx(-170);
Player:addy(-20);
Player:decelerate(beat*3);
Player:addx(360);
Player:addy(20);
Player:z(cur1zless);
-- Small; 4 Beats
Player:decelerate(beat*4);
Player:zoom(0.3);
Player:addx(-170);
Player:addy(-60);
--Player:z(0);
-- Tilt; 8 Beats
Player:sleep(beat*6);
Player:decelerate(beat*2);
Player:addx(83);
Player:rotationy(30);
--Big; 9 Beats
Player:sleep(beat*6);
Player:decelerate(beat*3);
Player:zoom(1.2);
Player:addx(57);
Player:addy(60);
Player:rotationy(0);
--Player:sleep(0);
Player:z(cur1zmore);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
-- Center Playfield
OtherPlayer:z(cur2zmore);
OtherPlayer:x(SCREEN_CENTER_X);
-- Left+Right; 5 Beats
OtherPlayer:sleep(beat*1);
OtherPlayer:decelerate(beat*1);
OtherPlayer:addx(-170);
OtherPlayer:addy(-20);
OtherPlayer:decelerate(beat*3);
OtherPlayer:addx(360);
OtherPlayer:addy(20);
OtherPlayer:z(cur2zless);
-- Small; 4 Beats
OtherPlayer:decelerate(beat*4);
OtherPlayer:zoom(0.3);
OtherPlayer:addx(-170);
OtherPlayer:addy(-60);
--OtherPlayer:z(0);
-- Tilt; 8 Beats
OtherPlayer:sleep(beat*6);
OtherPlayer:decelerate(beat*2);
OtherPlayer:addx(83);
OtherPlayer:rotationy(30);
--Big; 9 Beats
OtherPlayer:sleep(beat*6);
OtherPlayer:decelerate(beat*3);
OtherPlayer:zoom(1.2);
OtherPlayer:addx(57);
OtherPlayer:addy(60);
OtherPlayer:rotationy(0);
--OtherPlayer:sleep(0);
OtherPlayer:z(cur2zmore);
end
self:sleep(beat*26);
self:queuecommand('Stuff1');
end,
SplitOffCommand= function(self)
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
score1 = get_score(PLAYER_1)
score2 = get_score(PLAYER_2)
if score1 >= score2 then
if Player:GetZ() < 4 then
cur1zless = 3;
cur2zless = 2;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 6;
cur2zmore = 5;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
else
if Player:GetZ() < 4 then
cur1zless = 2;
cur2zless = 3;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 5;
cur2zmore = 6;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
end
end
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no flip', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no invert', PlayerEnabled);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no flip', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' no invert', 2);
end
--Swords and Stuff; 18 Beats
Player:linear(beat*5.5);
Player:zoom(2);
Player:sleep(0);
Player:zoom(0.6);
Player:addy(40);
Player:addx(240);
Player:decelerate(beat*2.5);
Player:addy(40);
Player:addx(-200);
Player:decelerate(beat*1);
Player:addx(-40);
Player:addy(-40);
Player:decelerate(beat*1);
Player:addx(-80);
Player:addy(-80);
Player:decelerate(beat*1);
Player:addx(240);
Player:addy(240);
Player:decelerate(beat*1);
Player:addx(-40);
Player:addy(-220);
Player:rotationz(405);
Player:sleep(0);
Player:rotationz(45);
Player:sleep(beat*0.5);
Player:decelerate(beat*1.5);
Player:addx(-120);
Player:addy(120);
Player:sleep(beat*1);
Player:decelerate(beat*0.5);
Player:rotationz(-10);
Player:zoom(0.5);
Player:addx(100);
Player:addy(-100);
Player:accelerate(beat*1);
Player:rotationz(0);
Player:zoom(1.2);
Player:addx(-100);
Player:accelerate(beat*1);
Player:zoom(1);
Player:addx(-200);
Player:decelerate(beat*0.5);
Player:zoom(0.8);
Player:addx(40)
Player:z(cur1zless);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
OtherPlayer:linear(beat*5.5);
OtherPlayer:zoom(2);
OtherPlayer:sleep(0);
OtherPlayer:zoom(0.6);
OtherPlayer:addy(40);
OtherPlayer:addx(240);
OtherPlayer:decelerate(beat*2.5);
OtherPlayer:addy(40);
OtherPlayer:addx(-200);
OtherPlayer:decelerate(beat*1);
OtherPlayer:addx(-40);
OtherPlayer:addy(-40);
OtherPlayer:decelerate(beat*1);
OtherPlayer:addx(-80);
OtherPlayer:addy(-80);
OtherPlayer:decelerate(beat*1);
OtherPlayer:addx(240);
OtherPlayer:addy(240);
OtherPlayer:decelerate(beat*1);
OtherPlayer:addx(-40);
OtherPlayer:addy(-220);
OtherPlayer:rotationz(405);
OtherPlayer:sleep(0);
OtherPlayer:rotationz(45);
OtherPlayer:sleep(beat*0.5);
OtherPlayer:decelerate(beat*1.5);
OtherPlayer:addx(-120);
OtherPlayer:addy(120);
OtherPlayer:sleep(beat*1);
OtherPlayer:decelerate(beat*0.5);
OtherPlayer:rotationz(-10);
OtherPlayer:zoom(0.5);
OtherPlayer:addx(100);
OtherPlayer:addy(-100);
OtherPlayer:accelerate(beat*1);
OtherPlayer:rotationz(0);
OtherPlayer:zoom(1.2);
OtherPlayer:addx(-100);
OtherPlayer:accelerate(beat*1);
OtherPlayer:zoom(1);
OtherPlayer:addx(-200);
OtherPlayer:decelerate(beat*0.5);
OtherPlayer:zoom(0.8);
OtherPlayer:addx(40)
OtherPlayer:z(cur2zless);
end
self:sleep(beat*18);
self:queuecommand('Stuff3');
end,
SplitOn1Command= function(self)
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' -25% flip', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' 25% invert', PlayerEnabled);
Player:addx(-50);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' -25% flip', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' 25% invert', 2);
OtherPlayer:addx(-50);
end
self:sleep(beat*2);
self:queuecommand('SplitOn2');
end,
SplitOn2Command= function(self)
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' -75% flip', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' 75% invert', PlayerEnabled);
Player:addx(50);
Player:sleep(beat*2);
Player:addy(-100);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' -75% flip', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(10000*rateMod)..' 75% invert', 2);
OtherPlayer:addx(50);
OtherPlayer:sleep(beat*2);
OtherPlayer:addy(-100);
end
self:sleep(beat*4);
self:queuecommand('SplitOff');
end,
Stuff1Command= function(self)
-- Check which player is winning and change draworder/z position she that player is on top
-- I should probably figure out how to make functions in Lua Embedded XML... Oh well :)
-- It's also kinda cool because if people choose different noteskins you can tell who's winning :D
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
score1= get_score(PLAYER_1)
score2= get_score(PLAYER_2)
if score1 >= score2 then
if Player:GetZ() < 4 then
cur1zless = 3;
cur2zless = 2;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 6;
cur2zmore = 5;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
else
if Player:GetZ() < 4 then
cur1zless = 2;
cur2zless = 3;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 5;
cur2zmore = 6;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
end
end
-- Left+Drop; 6.25 Beats
Player:sleep(beat*0.5);
Player:accelerate(beat*4);
Player:zoom(1);
Player:addx(-220);
Player:linear(beat*0.45);
Player:addy(30);
Player:zoom(0.7);
Player:linear(beat*0.3);
Player:addy(-30);
Player:zoom(1);
Player:accelerate(beat*1);
Player:addx(-100);
Player:z(cur1zless);
Player:sleep(0);
Player:rotationz(0);
-- Round and Round; 8.75 Beats
Player:sleep(beat*0.75);
Player:accelerate(beat*1);
Player:zoom(0.85);
Player:addx(160);
Player:decelerate(beat*1);
Player:zoom(1);
Player:addx(160);
Player:sleep(0);
Player:z(cur1zmore);
-- (cont.)
Player:accelerate(beat*1);
Player:zoom(1.15);
Player:addx(-160);
Player:decelerate(beat*1);
Player:zoom(1);
Player:addx(-160);
Player:z(cur1zless);
-- (cont.)
Player:accelerate(beat*1);
Player:zoom(0.85);
Player:addx(160);
Player:decelerate(beat*1);
Player:zoom(1);
Player:addx(160);
Player:sleep(0);
Player:z(cur1zmore);
-- (cont.)
Player:accelerate(beat*1);
Player:zoom(1.15);
Player:addx(-160);
Player:decelerate(beat*1);
Player:zoom(1);
Player:addx(-160);
Player:z(cur1zless);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
-- Left+Drop; 6.25 Beats
OtherPlayer:sleep(beat*0.5);
OtherPlayer:accelerate(beat*4);
OtherPlayer:zoom(1);
OtherPlayer:addx(-220);
OtherPlayer:linear(beat*0.45);
OtherPlayer:addy(30);
OtherPlayer:zoom(0.7);
OtherPlayer:linear(beat*0.3);
OtherPlayer:addy(-30);
OtherPlayer:zoom(1);
OtherPlayer:accelerate(beat*1);
OtherPlayer:addx(-100);
OtherPlayer:z(cur2zless);
OtherPlayer:sleep(0);
OtherPlayer:rotationz(0);
-- Round and Round; 8.75 Beats
OtherPlayer:sleep(beat*0.75);
OtherPlayer:accelerate(beat*1);
OtherPlayer:zoom(0.85);
OtherPlayer:addx(160);
OtherPlayer:decelerate(beat*1);
OtherPlayer:zoom(1);
OtherPlayer:addx(160);
OtherPlayer:sleep(0);
OtherPlayer:z(cur2zmore);
-- (cont.)
OtherPlayer:accelerate(beat*1);
OtherPlayer:zoom(1.15);
OtherPlayer:addx(-160);
OtherPlayer:decelerate(beat*1);
OtherPlayer:zoom(1);
OtherPlayer:addx(-160);
OtherPlayer:z(cur2zless);
-- (cont.)
OtherPlayer:accelerate(beat*1);
OtherPlayer:zoom(0.85);
OtherPlayer:addx(160);
OtherPlayer:decelerate(beat*1);
OtherPlayer:zoom(1);
OtherPlayer:addx(160);
OtherPlayer:sleep(0);
OtherPlayer:z(cur2zmore);
-- (cont.)
OtherPlayer:accelerate(beat*1);
OtherPlayer:zoom(1.15);
OtherPlayer:addx(-160);
OtherPlayer:decelerate(beat*1);
OtherPlayer:zoom(1);
OtherPlayer:addx(-160);
OtherPlayer:z(cur2zless);
end
self:sleep(beat*13.75);
self:queuecommand('Second');
end,
Stuff2Command= function(self)
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
score1 = get_score(PLAYER_1)
score2 = get_score(PLAYER_2)
if score1 >= score2 then
if Player:GetZ() < 4 then
cur1zless = 3;
cur2zless = 2;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 6;
cur2zmore = 5;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
else
if Player:GetZ() < 4 then
cur1zless = 2;
cur2zless = 3;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 5;
cur2zmore = 6;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
end
end
-- I'M A LITTLE TEACUP!; 8 Beats
Player:linear(beat*1.5);
Player:rotationy(60);
Player:zoom(1.2);
Player:addx(160);
Player:addy(-20);
Player:linear(beat*0.5);
Player:addy(130);
Player:linear(beat*0.5);
Player:rotationy(0);
Player:zoom(0.8);
Player:addx(-80);
Player:addy(50);
Player:linear(beat*0.5);
Player:zoom(0.6);
Player:addx(-100);
Player:addy(-100);
Player:linear(beat*0.5);
Player:zoom(0.5);
Player:addx(-30);
Player:addy(-60);
Player:linear(beat*0.5);
Player:addy(50);
Player:addx(-30);
Player:decelerate(beat*1);
Player:addy(90);
Player:decelerate(beat*2);
Player:addy(-240);
Player:addx(30);
Player:rotationz(15);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
OtherPlayer:linear(beat*1.5);
OtherPlayer:rotationy(60);
OtherPlayer:zoom(1.2);
OtherPlayer:addx(160);
OtherPlayer:addy(-20);
OtherPlayer:linear(beat*0.5);
OtherPlayer:addy(130);
OtherPlayer:linear(beat*0.5);
OtherPlayer:rotationy(0);
OtherPlayer:zoom(0.8);
OtherPlayer:addx(-80);
OtherPlayer:addy(50);
OtherPlayer:linear(beat*0.5);
OtherPlayer:zoom(0.6);
OtherPlayer:addx(-100);
OtherPlayer:addy(-100);
OtherPlayer:linear(beat*0.5);
OtherPlayer:zoom(0.5);
OtherPlayer:addx(-30);
OtherPlayer:addy(-60);
OtherPlayer:linear(beat*0.5);
OtherPlayer:addy(50);
OtherPlayer:addx(-30);
OtherPlayer:decelerate(beat*1);
OtherPlayer:addy(90);
OtherPlayer:decelerate(beat*2);
OtherPlayer:addy(-240);
OtherPlayer:addx(30);
OtherPlayer:rotationz(15);
end
self:sleep(beat*7);
self:queuecommand('Break');
end,
Stuff3Command= function(self)
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
score1 = get_score(PLAYER_1)
score2 = get_score(PLAYER_2)
if score1 >= score2 then
if Player:GetZ() < 4 then
cur1zless = 3;
cur2zless = 2;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 6;
cur2zmore = 5;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
else
if Player:GetZ() < 4 then
cur1zless = 2;
cur2zless = 3;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 5;
cur2zmore = 6;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
end
end
--BOUNCE; 13 Beats
Player:decelerate(beat*0.5);
Player:addy(-20);
Player:addx(-15);
Player:accelerate(beat*0.5);
Player:addy(20);
Player:addx(-15);
Player:decelerate(beat*0.5);
Player:addy(-20);
Player:addx(30);
Player:accelerate(beat*0.5);
Player:addy(20);
Player:addx(30);
Player:decelerate(beat*0.5);
Player:addy(-20);
Player:addx(30);
Player:accelerate(beat*0.5);
Player:addy(20);
Player:addx(30);
Player:decelerate(beat*0.5);
Player:addy(-20);
Player:addx(-30);
Player:accelerate(beat*0.5);
Player:addy(20);
Player:addx(-30);
Player:decelerate(beat*0.5);
Player:addy(-20);
Player:addx(-30);
Player:accelerate(beat*0.5);
Player:addy(20);
Player:addx(-30);
Player:decelerate(beat*0.5);
Player:addy(-20);
Player:addx(30);
Player:accelerate(beat*0.5);
Player:addy(20);
Player:addx(30);
Player:decelerate(beat*0.5);
Player:addy(-20);
Player:addx(30);
Player:accelerate(beat*0.5);
Player:addy(20);
Player:addx(30);
Player:decelerate(beat*0.5);
Player:addy(-20);
Player:addx(-30);
Player:accelerate(beat*0.5);
Player:addy(20);
Player:addx(-30);
Player:decelerate(beat*0.5);
Player:addy(-20);
Player:addx(-30);
Player:rotationy(-4);
Player:accelerate(beat*0.5);
Player:addy(20);
Player:addx(-30);
Player:rotationy(-8);
Player:decelerate(beat*0.5);
Player:addy(-20);
Player:addx(30);
Player:rotationy(-12);
Player:accelerate(beat*0.5);
Player:addy(20);
Player:addx(30);
Player:rotationy(-16);
Player:decelerate(beat*0.5);
Player:addy(-20);
Player:addx(30);
Player:rotationy(-20);
Player:accelerate(beat*0.5);
Player:addy(20);
Player:addx(30);
Player:rotationy(-24);
Player:decelerate(beat*0.5);
Player:addy(-20);
Player:addx(-30);
Player:rotationy(-28);
Player:accelerate(beat*0.5);
Player:addy(20);
Player:addx(-30);
Player:rotationy(-32);
Player:decelerate(beat*0.5);
Player:addy(-20);
Player:addx(-30);
Player:rotationy(-36);
Player:accelerate(beat*0.5);
Player:addy(20);
Player:addx(-30);
Player:rotationy(-40);
Player:z(cur1zmore);
--Boat Spin; 12 Beats
Player:accelerate(beat*3);
Player:addx(160);
Player:zoom(0.7);
Player:rotationy(0);
Player:linear(beat*2.5);
Player:rotationz(-135);
Player:rotationx(60);
Player:linear(beat*2.5);
Player:rotationz(-270);
Player:linear(beat*2);
Player:rotationx(0);
Player:rotationz(-360);
Player:addy(-150);
Player:addx(60);
Player:zoom(1.2);
Player:linear(beat*3);
Player:zoom(1);
Player:y(SCREEN_CENTER_Y);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
--BOUNCE; 13 Beats
OtherPlayer:decelerate(beat*0.5);
OtherPlayer:addy(-20);
OtherPlayer:addx(-15);
OtherPlayer:accelerate(beat*0.5);
OtherPlayer:addy(20);
OtherPlayer:addx(-15);
OtherPlayer:decelerate(beat*0.5);
OtherPlayer:addy(-20);
OtherPlayer:addx(30);
OtherPlayer:accelerate(beat*0.5);
OtherPlayer:addy(20);
OtherPlayer:addx(30);
OtherPlayer:decelerate(beat*0.5);
OtherPlayer:addy(-20);
OtherPlayer:addx(30);
OtherPlayer:accelerate(beat*0.5);
OtherPlayer:addy(20);
OtherPlayer:addx(30);
OtherPlayer:decelerate(beat*0.5);
OtherPlayer:addy(-20);
OtherPlayer:addx(-30);
OtherPlayer:accelerate(beat*0.5);
OtherPlayer:addy(20);
OtherPlayer:addx(-30);
OtherPlayer:decelerate(beat*0.5);
OtherPlayer:addy(-20);
OtherPlayer:addx(-30);
OtherPlayer:accelerate(beat*0.5);
OtherPlayer:addy(20);
OtherPlayer:addx(-30);
OtherPlayer:decelerate(beat*0.5);
OtherPlayer:addy(-20);
OtherPlayer:addx(30);
OtherPlayer:accelerate(beat*0.5);
OtherPlayer:addy(20);
OtherPlayer:addx(30);
OtherPlayer:decelerate(beat*0.5);
OtherPlayer:addy(-20);
OtherPlayer:addx(30);
OtherPlayer:accelerate(beat*0.5);
OtherPlayer:addy(20);
OtherPlayer:addx(30);
OtherPlayer:decelerate(beat*0.5);
OtherPlayer:addy(-20);
OtherPlayer:addx(-30);
OtherPlayer:accelerate(beat*0.5);
OtherPlayer:addy(20);
OtherPlayer:addx(-30);
OtherPlayer:decelerate(beat*0.5);
OtherPlayer:addy(-20);
OtherPlayer:addx(-30);
OtherPlayer:rotationy(-4);
OtherPlayer:accelerate(beat*0.5);
OtherPlayer:addy(20);
OtherPlayer:addx(-30);
OtherPlayer:rotationy(-8);
OtherPlayer:decelerate(beat*0.5);
OtherPlayer:addy(-20);
OtherPlayer:addx(30);
OtherPlayer:rotationy(-12);
OtherPlayer:accelerate(beat*0.5);
OtherPlayer:addy(20);
OtherPlayer:addx(30);
OtherPlayer:rotationy(-16);
OtherPlayer:decelerate(beat*0.5);
OtherPlayer:addy(-20);
OtherPlayer:addx(30);
OtherPlayer:rotationy(-20);
OtherPlayer:accelerate(beat*0.5);
OtherPlayer:addy(20);
OtherPlayer:addx(30);
OtherPlayer:rotationy(-24);
OtherPlayer:decelerate(beat*0.5);
OtherPlayer:addy(-20);
OtherPlayer:addx(-30);
OtherPlayer:rotationy(-28);
OtherPlayer:accelerate(beat*0.5);
OtherPlayer:addy(20);
OtherPlayer:addx(-30);
OtherPlayer:rotationy(-32);
OtherPlayer:decelerate(beat*0.5);
OtherPlayer:addy(-20);
OtherPlayer:addx(-30);
OtherPlayer:rotationy(-36);
OtherPlayer:accelerate(beat*0.5);
OtherPlayer:addy(20);
OtherPlayer:addx(-30);
OtherPlayer:rotationy(-40);
OtherPlayer:z(cur2zmore);
--Boat Spin; 12 Beats
OtherPlayer:accelerate(beat*3);
OtherPlayer:addx(160);
OtherPlayer:zoom(0.7);
OtherPlayer:rotationy(0);
OtherPlayer:linear(beat*2.5);
OtherPlayer:rotationz(-135);
OtherPlayer:rotationx(60);
OtherPlayer:linear(beat*2.5);
OtherPlayer:rotationz(-270);
OtherPlayer:linear(beat*2);
OtherPlayer:rotationx(0);
OtherPlayer:rotationz(-360);
OtherPlayer:addy(-150);
OtherPlayer:addx(60);
OtherPlayer:zoom(1.2);
OtherPlayer:linear(beat*3);
OtherPlayer:zoom(1);
OtherPlayer:y(SCREEN_CENTER_Y);
end
self:sleep(beat*25);
self:queuecommand('Fourth');
end,
Stuff4Command= function(self)
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
score1 = get_score(PLAYER_1)
score2 = get_score(PLAYER_2)
if score1 >= score2 then
if Player:GetZ() < 4 then
cur1zless = 3;
cur2zless = 2;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 6;
cur2zmore = 5;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
else
if Player:GetZ() < 4 then
cur1zless = 2;
cur2zless = 3;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 5;
cur2zmore = 6;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
end
end
Player:sleep(beat*3);
Player:accelerate(beat*3);
Player:x(SCREEN_CENTER_X + 160);
Player:y(SCREEN_CENTER_Y);
Player:zoom(1);
Player:accelerate(beat*1.25);
Player:addx(-100);
Player:zoom(1.2);
Player:decelerate(beat*1.25);
Player:zoom(0.8);
Player:sleep(0);
Player:z(cur1zless);
Player:accelerate(beat*1.25);
Player:addx(40);
Player:decelerate(beat*1.25);
Player:addx(60);
Player:zoom(1);
Player:sleep(0);
Player:z(cur1zmore);
Player:accelerate(beat*2);
Player:x(SCREEN_CENTER_X);
Player:addy(160);
Player:sleep(beat*1);
Player:decelerate(beat*2);
Player:addy(-80);
Player:sleep(0);
Player:z(cur1zless);
Player:addy(80);
Player:zoom(0.7);
Player:accelerate(beat*1.5);
Player:addy(-60);
Player:zoom(1);
Player:decelerate(beat*0.5);
Player:addy(60);
Player:z(cur1zmore)
Player:accelerate(beat*1.5);
Player:addy(-60);
Player:zoom(1.3);
Player:decelerate(beat*0.5);
Player:z(cur1zless);
Player:addy(60);
Player:zoom(1);
Player:decelerate(beat*2);
Player:z(cur1zmore);
Player:zoom(1);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
OtherPlayer:sleep(beat*3);
OtherPlayer:accelerate(beat*3);
OtherPlayer:x(SCREEN_CENTER_X + 160);
OtherPlayer:y(SCREEN_CENTER_Y);
OtherPlayer:zoom(1);
OtherPlayer:accelerate(beat*1.25);
OtherPlayer:addx(-100);
OtherPlayer:zoom(1.2);
OtherPlayer:decelerate(beat*1.25);
OtherPlayer:zoom(0.8);
OtherPlayer:sleep(0);
OtherPlayer:z(cur2zless);
OtherPlayer:accelerate(beat*1.25);
OtherPlayer:addx(40);
OtherPlayer:decelerate(beat*1.25);
OtherPlayer:addx(60);
OtherPlayer:zoom(1);
OtherPlayer:sleep(0);
OtherPlayer:z(cur2zmore);
OtherPlayer:accelerate(beat*2);
OtherPlayer:x(SCREEN_CENTER_X);
OtherPlayer:addy(160);
OtherPlayer:sleep(beat*1);
OtherPlayer:decelerate(beat*2);
OtherPlayer:addy(-80);
OtherPlayer:sleep(0);
OtherPlayer:z(cur2zless);
OtherPlayer:addy(80);
OtherPlayer:zoom(0.7);
OtherPlayer:accelerate(beat*1.5);
OtherPlayer:addy(-60);
OtherPlayer:zoom(1);
OtherPlayer:decelerate(beat*0.5);
OtherPlayer:addy(60);
OtherPlayer:z(cur2zmore)
OtherPlayer:accelerate(beat*1.5);
OtherPlayer:addy(-60);
OtherPlayer:zoom(1.3);
OtherPlayer:decelerate(beat*0.5);
OtherPlayer:z(cur2zless);
OtherPlayer:addy(60);
OtherPlayer:zoom(1);
OtherPlayer:decelerate(beat*2);
OtherPlayer:z(cur2zmore);
OtherPlayer:zoom(1);
end
self:sleep(beat*20);
self:queuecommand('Fifth');
end,
Stuff5Command= function(self)
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
score1 = get_score(PLAYER_1)
score2 = get_score(PLAYER_2)
if score1 >= score2 then
if Player:GetZ() < 4 then
cur1zless = 3;
cur2zless = 2;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 6;
cur2zmore = 5;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
else
if Player:GetZ() < 4 then
cur1zless = 2;
cur2zless = 3;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 5;
cur2zmore = 6;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
end
end
Player:linear(beat*1.5);
Player:zoom(1);
Player:x(SCREEN_CENTER_X);
Player:y(SCREEN_CENTER_Y);
Player:sleep(beat*10);
Player:linear(beat*1);
Player:zoom(1.20);
Player:sleep(beat*1.5)
Player:decelerate(beat*1);
Player:zoomy(0);
Player:sleep(beat*1);
Player:decelerate(beat*1);
Player:zoom(0.5);
Player:sleep(beat*1.5);
Player:linear(beat*1);
Player:rotationx(-45);
Player:linear(beat*3);
Player:rotationz(-360);
Player:addy(-40);
Player:sleep(0);
Player:linear(beat*3);
Player:addy(40);
Player:rotationx(0);
Player:sleep(0);
Player:rotationz(0);
Player:rotationy(0);
Player:sleep(beat*1.5);
Player:decelerate(beat*1);
Player:x(SCREEN_CENTER_X+75);
Player:y(SCREEN_CENTER_Y);
Player:rotationy(25);
Player:zoom(0.65);
Player:z(cur1zless);
Player:accelerate(beat*1);
Player:zoom(0.8);
Player:sleep(beat*1.5);
Player:linear(beat*1);
Player:rotationy(0);
Player:addx(160);
Player:z(cur1zmore);
Player:sleep(beat*1);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
OtherPlayer:linear(beat*1.5);
OtherPlayer:zoom(1);
OtherPlayer:x(SCREEN_CENTER_X);
OtherPlayer:y(SCREEN_CENTER_Y);
OtherPlayer:sleep(beat*10);
OtherPlayer:linear(beat*1);
OtherPlayer:zoom(1.20);
OtherPlayer:sleep(beat*1.5)
OtherPlayer:decelerate(beat*1);
OtherPlayer:zoomy(0);
OtherPlayer:sleep(beat*1);
OtherPlayer:decelerate(beat*1);
OtherPlayer:zoom(0.5);
OtherPlayer:sleep(beat*1.5);
OtherPlayer:linear(beat*1);
OtherPlayer:rotationx(-45);
OtherPlayer:linear(beat*3);
OtherPlayer:rotationz(-360);
OtherPlayer:addy(-40);
OtherPlayer:sleep(0);
OtherPlayer:linear(beat*3);
OtherPlayer:addy(40);
OtherPlayer:rotationx(0);
OtherPlayer:sleep(0);
OtherPlayer:rotationz(0);
OtherPlayer:rotationy(0);
OtherPlayer:sleep(beat*1.5);
OtherPlayer:decelerate(beat*1);
OtherPlayer:x(SCREEN_CENTER_X+75);
OtherPlayer:y(SCREEN_CENTER_Y);
OtherPlayer:rotationy(25);
OtherPlayer:zoom(0.65);
OtherPlayer:z(cur2zless);
OtherPlayer:accelerate(beat*1);
OtherPlayer:zoom(0.8);
OtherPlayer:sleep(beat*1.5);
OtherPlayer:linear(beat*1);
OtherPlayer:rotationy(0);
OtherPlayer:addx(160);
OtherPlayer:z(cur2zmore);
OtherPlayer:sleep(beat*1);
end
self:sleep(beat*32.5);
self:queuecommand('Sixth');
end,
Stuff6Command= function(self)
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
score1 = get_score(PLAYER_1)
score2 = get_score(PLAYER_2)
if score1 >= score2 then
if Player:GetZ() < 4 then
cur1zless = 3;
cur2zless = 2;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 6;
cur2zmore = 5;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
else
if Player:GetZ() < 4 then
cur1zless = 2;
cur2zless = 3;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 5;
cur2zmore = 6;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
end
end
Player:linear(beat*2);
Player:rotationx(20);
Player:addy(-20);
Player:linear(beat*3);
Player:rotationx(8);
Player:rotationy(-60);
Player:decelerate(beat*2);
Player:rotationx(0);
Player:rotationy(0);
Player:zoom(0.5);
Player:x(SCREEN_CENTER_X-30);
Player:y(SCREEN_CENTER_Y+50);
Player:linear(beat*4);
Player:zoom(0.7);
Player:addx(-30);
Player:addy(100);
Player:decelerate(beat*1.5);
Player:rotationz(-30);
Player:addx(100);
Player:addy(-60);
Player:accelerate(beat*2.5);
Player:rotationz(-60);
Player:x(SCREEN_CENTER_X-30);
Player:y(SCREEN_CENTER_Y+50);
Player:linear(beat*4);
Player:rotationz(0);
Player:rotationy(-40);
Player:addx(80);
Player:addy(-120);
Player:linear(beat*2);
Player:rotationy(0);
Player:decelerate(beat*0.5);
Player:addy(-20);
Player:addx(30);
Player:zoom(0.75);
Player:accelerate(beat*0.5);
Player:addy(20);
Player:addx(25);
Player:zoom(0.8);
Player:decelerate(beat*0.5);
Player:addy(-20);
Player:addx(25);
Player:zoom(0.85);
Player:accelerate(beat*0.5);
Player:addy(20);
Player:addx(25);
Player:zoom(0.9);
Player:decelerate(beat*0.5);
Player:addy(-20);
Player:addx(25);
Player:zoom(0.95);
Player:accelerate(beat*0.5);
Player:addy(20);
Player:addx(25);
Player:zoom(1);
Player:linear(beat*0.25);
Player:rotationz(50);
Player:zoom(0.7);
Player:addx(-15);
Player:addy(-15);
Player:linear(beat*0.25);
Player:rotationz(100);
Player:zoom(0.4);
Player:addx(-15);
Player:addy(30);
Player:linear(beat*0.5);
Player:rotationz(0);
Player:x(SCREEN_CENTER_X);
Player:y(SCREEN_CENTER_Y-180);
Player:zoom(0.6);
Player:accelerate(beat*3.5);
Player:addy(350);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
OtherPlayer:linear(beat*2);
OtherPlayer:rotationx(20);
OtherPlayer:addy(-20);
OtherPlayer:linear(beat*3);
OtherPlayer:rotationx(8);
OtherPlayer:rotationy(-60);
OtherPlayer:decelerate(beat*2);
OtherPlayer:rotationx(0);
OtherPlayer:rotationy(0);
OtherPlayer:zoom(0.5);
OtherPlayer:x(SCREEN_CENTER_X-30);
OtherPlayer:y(SCREEN_CENTER_Y+50);
OtherPlayer:linear(beat*4);
OtherPlayer:zoom(0.7);
OtherPlayer:addx(-30);
OtherPlayer:addy(100);
OtherPlayer:decelerate(beat*1.5);
OtherPlayer:rotationz(-30);
OtherPlayer:addx(100);
OtherPlayer:addy(-60);
OtherPlayer:accelerate(beat*2.5);
OtherPlayer:rotationz(-60);
OtherPlayer:x(SCREEN_CENTER_X-30);
OtherPlayer:y(SCREEN_CENTER_Y+50);
OtherPlayer:linear(beat*4);
OtherPlayer:rotationz(0);
OtherPlayer:rotationy(-40);
OtherPlayer:addx(80);
OtherPlayer:addy(-120);
OtherPlayer:linear(beat*2);
OtherPlayer:rotationy(0);
OtherPlayer:decelerate(beat*0.5);
OtherPlayer:addy(-20);
OtherPlayer:addx(30);
OtherPlayer:zoom(0.75);
OtherPlayer:accelerate(beat*0.5);
OtherPlayer:addy(20);
OtherPlayer:addx(25);
OtherPlayer:zoom(0.8);
OtherPlayer:decelerate(beat*0.5);
OtherPlayer:addy(-20);
OtherPlayer:addx(25);
OtherPlayer:zoom(0.85);
OtherPlayer:accelerate(beat*0.5);
OtherPlayer:addy(20);
OtherPlayer:addx(25);
OtherPlayer:zoom(0.9);
OtherPlayer:decelerate(beat*0.5);
OtherPlayer:addy(-20);
OtherPlayer:addx(25);
OtherPlayer:zoom(0.95);
OtherPlayer:accelerate(beat*0.5);
OtherPlayer:addy(20);
OtherPlayer:addx(25);
OtherPlayer:zoom(1);
OtherPlayer:linear(beat*0.25);
OtherPlayer:rotationz(50);
OtherPlayer:zoom(0.7);
OtherPlayer:addx(-15);
OtherPlayer:addy(-15);
OtherPlayer:linear(beat*0.25);
OtherPlayer:rotationz(100);
OtherPlayer:zoom(0.4);
OtherPlayer:addx(-15);
OtherPlayer:addy(30);
OtherPlayer:linear(beat*0.5);
OtherPlayer:rotationz(0);
OtherPlayer:x(SCREEN_CENTER_X);
OtherPlayer:y(SCREEN_CENTER_Y-180);
OtherPlayer:zoom(0.6);
OtherPlayer:accelerate(beat*3.5);
OtherPlayer:addy(350);
end
self:sleep(beat*28.5)
self:queuecommand('Seventh');
end,
Stuff7Command= function(self)
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
score1 = get_score(PLAYER_1)
score2 = get_score(PLAYER_2)
if score1 >= score2 then
if Player:GetZ() < 4 then
cur1zless = 3;
cur2zless = 2;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 6;
cur2zmore = 5;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
else
if Player:GetZ() < 4 then
cur1zless = 2;
cur2zless = 3;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 5;
cur2zmore = 6;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
end
end
Player:linear(beat*4);
Player:zoom(1);
Player:x(SCREEN_CENTER_X+240);
Player:sleep(0);
Player:zoom(0.2);
Player:x(SCREEN_CENTER_X-240);
Player:y(SCREEN_CENTER_Y+160);
Player:z(cur1zmore);
Player:linear(beat*2);
Player:x(SCREEN_CENTER_X);
Player:y(SCREEN_CENTER_Y);
Player:sleep(beat*0.5);
Player:decelerate(beat*1);
Player:addy(200);
Player:decelerate(beat*2);
Player:addy(-370);
Player:decelerate(beat*0.5);
Player:addy(180);
Player:decelerate(beat*0.5);
Player:zoom(0.6);
Player:addy(-40);
Player:decelerate(beat*0.5);
Player:addy(40);
Player:linear(beat*1.5);
Player:zoom(0.3);
Player:addy(120);
Player:sleep(beat*2);
Player:z(cur1zless);
Player:linear(beat*2);
Player:x(SCREEN_CENTER_X);
Player:y(SCREEN_CENTER_Y+70);
Player:rotationy(-30);
Player:linear(beat*6);
Player:zoom(0.6);
Player:addx(-40);
Player:addy(-70);
Player:rotationy(30);
Player:linear(beat*1);
Player:y(SCREEN_CENTER_Y);
Player:x(SCREEN_CENTER_X+90);
Player:zoom(0.7);
Player:sleep(0);
Player:x(SCREEN_CENTER_X);
Player:y(SCREEN_CENTER_Y+70);
Player:rotationy(0);
Player:zoom(0.6);
Player:linear(beat*2);
Player:zoom(0.8);
Player:decelerate(beat*1);
Player:zoom(1);
Player:decelerate(beat*1);
Player:y(SCREEN_CENTER_Y);
Player:x(SCREEN_CENTER_X+160);
Player:accelerate(beat*1);
Player:x(SCREEN_CENTER_X);
Player:decelerate(beat*1);
Player:x(SCREEN_CENTER_X-160);
Player:sleep(beat*7);
Player:linear(beat*3);
Player:zoom(0);
Player:rotationz(180);
Player:x(SCREEN_CENTER_X);
Player:y(SCREEN_CENTER_Y);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
OtherPlayer:linear(beat*4);
OtherPlayer:zoom(1);
OtherPlayer:x(SCREEN_CENTER_X+240);
OtherPlayer:sleep(0);
OtherPlayer:zoom(0.2);
OtherPlayer:x(SCREEN_CENTER_X-240);
OtherPlayer:y(SCREEN_CENTER_Y+160);
OtherPlayer:z(cur2zmore);
OtherPlayer:linear(beat*2);
OtherPlayer:x(SCREEN_CENTER_X);
OtherPlayer:y(SCREEN_CENTER_Y);
OtherPlayer:sleep(beat*0.5);
OtherPlayer:decelerate(beat*1);
OtherPlayer:addy(200);
OtherPlayer:decelerate(beat*2);
OtherPlayer:addy(-370);
OtherPlayer:decelerate(beat*0.5);
OtherPlayer:addy(180);
OtherPlayer:decelerate(beat*0.5);
OtherPlayer:zoom(0.6);
OtherPlayer:addy(-40);
OtherPlayer:decelerate(beat*0.5);
OtherPlayer:addy(40);
OtherPlayer:linear(beat*1.5);
OtherPlayer:zoom(0.3);
OtherPlayer:addy(120);
OtherPlayer:sleep(beat*2);
OtherPlayer:z(cur2zless);
OtherPlayer:linear(beat*2);
OtherPlayer:x(SCREEN_CENTER_X);
OtherPlayer:y(SCREEN_CENTER_Y+70);
OtherPlayer:rotationy(-30);
OtherPlayer:linear(beat*6);
OtherPlayer:zoom(0.6);
OtherPlayer:addx(-40);
OtherPlayer:addy(-70);
OtherPlayer:rotationy(30);
OtherPlayer:linear(beat*1);
OtherPlayer:y(SCREEN_CENTER_Y);
OtherPlayer:x(SCREEN_CENTER_X+90);
OtherPlayer:zoom(0.7);
OtherPlayer:sleep(0);
OtherPlayer:x(SCREEN_CENTER_X);
OtherPlayer:y(SCREEN_CENTER_Y+70);
OtherPlayer:rotationy(0);
OtherPlayer:zoom(0.6);
OtherPlayer:linear(beat*2);
OtherPlayer:zoom(0.8);
OtherPlayer:decelerate(beat*1);
OtherPlayer:zoom(1);
OtherPlayer:decelerate(beat*1);
OtherPlayer:y(SCREEN_CENTER_Y);
OtherPlayer:x(SCREEN_CENTER_X+160);
OtherPlayer:accelerate(beat*1);
OtherPlayer:x(SCREEN_CENTER_X);
OtherPlayer:decelerate(beat*1)
OtherPlayer:z(cur2zmore);
OtherPlayer:x(SCREEN_CENTER_X+160);
OtherPlayer:sleep(beat*7);
OtherPlayer:linear(beat*3);
OtherPlayer:zoom(0);
OtherPlayer:rotationz(-180);
OtherPlayer:x(SCREEN_CENTER_X);
OtherPlayer:y(SCREEN_CENTER_Y);
end
end,
ThirdSplitOffCommand= function(self)
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
score1 = get_score(PLAYER_1)
score2 = get_score(PLAYER_2)
if score1 >= score2 then
if Player:GetZ() < 4 then
cur1zless = 3;
cur2zless = 2;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 6;
cur2zmore = 5;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
else
if Player:GetZ() < 4 then
cur1zless = 2;
cur2zless = 3;
Player:z(cur1zless);
OtherPlayer:z(cur2zless);
else
cur1zmore = 5;
cur2zmore = 6;
Player:z(cur1zmore);
OtherPlayer:z(cur2zmore);
end
end
end
GAMESTATE:ApplyGameCommand('mod, *0.5'..(1*rateMod)..' no flip', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(1*rateMod)..' no invert', PlayerEnabled);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
GAMESTATE:ApplyGameCommand('mod, *0.5'..(1*rateMod)..' no flip', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(1*rateMod)..' no invert', 2);
end
Player:linear(beat*1.5);
Player:rotationz(0);
Player:zoom(1);
Player:x(SCREEN_CENTER_X);
Player:y(SCREEN_CENTER_Y+160);
Player:linear(beat*2);
Player:rotationz(-20);
Player:addy(-160);
Player:zoom(0.8);
-- Sweep
Player:linear(beat*1);
Player:rotationz(-5);
Player:accelerate(beat*1);
Player:rotationz(-20);
Player:addx(60);
Player:linear(beat*1);
Player:rotationz(-5);
Player:addx(-60);
Player:accelerate(beat*1);
Player:rotationz(5);
Player:addx(-10);
Player:linear(beat*1);
Player:addy(10);
Player:accelerate(beat*3);
Player:x(SCREEN_CENTER_X-200);
Player:y(SCREEN_CENTER_Y);
Player:rotationz(0);
-- Spin
Player:linear(beat*0.5);
Player:zoom(0.97);
Player:addx(50);
Player:rotationy(-180);
Player:linear(beat*0.5);
Player:zoom(0.94);
Player:addx(50);
Player:rotationy(-360);
Player:linear(beat*0.5);
Player:zoom(0.91);
Player:addx(50);
Player:rotationy(-540);
Player:linear(beat*0.5);
Player:zoom(0.88);
Player:addx(50);
Player:rotationy(-720);
Player:linear(beat*0.5);
Player:zoom(0.85);
Player:addx(50);
Player:rotationy(-900);
Player:linear(beat*0.5);
Player:zoom(0.82);
Player:addx(50);
Player:rotationy(-1080);
Player:sleep(0);
Player:rotationy(0);
Player:sleep(beat*1);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
OtherPlayer:linear(beat*1.5);
OtherPlayer:rotationz(0);
OtherPlayer:zoom(1);
OtherPlayer:x(SCREEN_CENTER_X);
OtherPlayer:y(SCREEN_CENTER_Y+160);
OtherPlayer:linear(beat*2);
OtherPlayer:rotationz(-20);
OtherPlayer:addy(-160);
OtherPlayer:zoom(0.8);
-- Sweep
OtherPlayer:linear(beat*1);
OtherPlayer:rotationz(-5);
OtherPlayer:accelerate(beat*1);
OtherPlayer:rotationz(-20);
OtherPlayer:addx(60);
OtherPlayer:linear(beat*1);
OtherPlayer:rotationz(-5);
OtherPlayer:addx(-60);
OtherPlayer:accelerate(beat*1);
OtherPlayer:rotationz(5);
OtherPlayer:addx(-10);
OtherPlayer:linear(beat*1);
OtherPlayer:addy(10);
OtherPlayer:accelerate(beat*3);
OtherPlayer:x(SCREEN_CENTER_X-200);
OtherPlayer:y(SCREEN_CENTER_Y);
OtherPlayer:rotationz(0);
-- Spin
OtherPlayer:linear(beat*0.5);
OtherPlayer:zoom(0.97);
OtherPlayer:addx(50);
OtherPlayer:rotationy(-180);
OtherPlayer:linear(beat*0.5);
OtherPlayer:zoom(0.94);
OtherPlayer:addx(50);
OtherPlayer:rotationy(-360);
OtherPlayer:linear(beat*0.5);
OtherPlayer:zoom(0.91);
OtherPlayer:addx(50);
OtherPlayer:rotationy(-540);
OtherPlayer:linear(beat*0.5);
OtherPlayer:zoom(0.88);
OtherPlayer:addx(50);
OtherPlayer:rotationy(-720);
OtherPlayer:linear(beat*0.5);
OtherPlayer:zoom(0.85);
OtherPlayer:addx(50);
OtherPlayer:rotationy(-900);
OtherPlayer:linear(beat*0.5);
OtherPlayer:zoom(0.82);
OtherPlayer:addx(50);
OtherPlayer:rotationy(-1080);
OtherPlayer:sleep(0);
OtherPlayer:rotationy(0);
OtherPlayer:sleep(beat*1);
end
self:sleep(beat*15.5);
self:queuecommand('Stuff5');
end,
ThirdSplitOnCommand= function(self)
GAMESTATE:ApplyGameCommand('mod, *'..(1*rateMod)..' -30% flip', PlayerEnabled);
GAMESTATE:ApplyGameCommand('mod, *'..(1*rateMod)..' 30% invert', PlayerEnabled);
if GAMESTATE:IsPlayerEnabled(0) and GAMESTATE:IsPlayerEnabled(1) then
GAMESTATE:ApplyGameCommand('mod, *'..(1*rateMod)..' -30% flip', 2);
GAMESTATE:ApplyGameCommand('mod, *'..(1*rateMod)..' 30% invert', 2);
end
self:sleep(beat*2);
self:queuecommand('ThirdSplitOff');
end,
}),
}
@ianklatzco
Copy link

heyo, how do i run this?

@ianklatzco
Copy link

for anyone stumbling on this later:
rename file to default.lua
put in same directory as default.xml (animation folder iirc)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment