Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local sButton = Var "Button";
- local sPlayer = Var "Player";
- local Position = {
- --dance
- Up = {2.5,0},
- Down = {-2.5,0},
- Left = {-7.5,-5.5},
- Right = {7.5,-5.5},
- --pump
- DownLeft = {-7.5,-5.5},
- DownRight = {7.5,-5.5},
- UpLeft = {-2.5,0},
- UpRight = {2.5,0},
- Center = {0,0},
- };
- local Colour2 = {
- --dance
- Up = "#0000FF",
- Down = "#FFFF00",
- Left = "#FF0000",
- Right = "#00FF00",
- --pump
- DownLeft = "#FF0000",
- DownRight = "#00FF00",
- UpLeft = "#FFFF00",
- UpRight = "#0000FF",
- Center = "#FFA500",
- };
- local Colour = {
- --dance
- Up = "Blue",
- Down = "Yellow",
- Left = "Red",
- Right = "Green",
- --pump
- DownLeft = "Red",
- DownRight = "Green",
- UpLeft = "Yellow",
- UpRight = "Blue",
- Center = nil,
- };
- local RotSide = {
- [1] = 0,
- [2] = 180,
- };
- local Location = {};
- local rBack = {};
- if GAMESTATE:GetCurrentGame():GetName() == "dance" then
- if string.find(GAMESTATE:GetCurrentStyle(pn):GetStepsType() ,"Double") then
- Location = {
- --dance
- [1] = 224,
- [2] = 128,
- [3] = 128,
- [4] = 128,
- [5] = -128,
- [6] = -128,
- [7] = -128,
- [8] = -128,
- };
- rBack = {
- [1] = {0.8,256},
- [2] = {0,0},
- [3] = {0,0},
- [4] = {0,0},
- [5] = {0,0},
- [6] = {0,0},
- [7] = {0,0},
- [8] = {0,0},
- };
- else
- Location = {
- --dance
- [1] = 0,
- [2] = 0,
- [3] = 0,
- [4] = 0,
- };
- rBack = {
- [1] = {0.8,64},
- [2] = {0.8,64},
- [3] = {0.8,64},
- [4] = {0.8,64},
- };
- end
- else
- Location = {
- --pump
- [1] = 0,
- [2] = 16,
- [3] = 0,
- [4] = -16,
- [5] = 0,
- };
- rBack = {
- [1] = {0.8,64},
- [2] = {0.8,64},
- [3] = {0,0},
- [4] = {0.8,64},
- [5] = {0.8,64},
- };
- end;
- if rButton then
- if rButton[sPlayer] then
- rButton[sPlayer] = rButton[sPlayer] + 1;
- else
- rButton = {};
- rButton[sPlayer] = 1;
- end;
- else
- rButton = {};
- rButton[sPlayer] = 1;
- end;
- local t = Def.ActorFrame {};
- if sButton == "Center" or (rButton[sPlayer] == 1 and string.find(GAMESTATE:GetCurrentStyle(pn):GetStepsType() ,"Double") )then
- t = Def.ActorFrame {
- Def.Quad {
- InitCommand=cmd(diffuse,color("0,0,0,0.4");diffusealpha,rBack[rButton[sPlayer]][1];scaletoclipped,rBack[rButton[sPlayer]][2],9001);
- };
- };
- else
- t = Def.ActorFrame {
- InitCommand=cmd(sleep,0.1;queuecommand,"Reset");
- ResetCommand=function(self)
- rButton[sPlayer] = 0;
- end;
- Def.Quad {
- InitCommand=cmd(diffuse,color("0,0,0,0.4");diffusealpha,rBack[rButton[sPlayer]][1];scaletoclipped,rBack[rButton[sPlayer]][2],9001);
- };
- Def.ActorFrame {
- OnCommand=cmd(rotationx,90;rotationz,Position[sButton][1];z,Position[sButton][2]);
- Def.Model {
- Meshes=NOTESKIN:GetPath("","Tex/_Receptor "..Colour[sButton]);
- Materials=NOTESKIN:GetPath("","Tex/_Receptor "..Colour[sButton]);
- Bones=NOTESKIN:GetPath("","Tex/_Receptor "..Colour[sButton]);
- PressCommand=cmd(stoptweening;bounceend,0.05;y,-6;bounceend,0.05;y,0);
- };
- };
- --LoadFont("Common Normal") .. { Text=rButton[sPlayer] };
- };
- end;
- local play = 1;
- t[#t+1] = Def.ActorFrame {
- OnCommand=function()
- local getc = SCREENMAN:GetTopScreen():GetChild("Player"..ToEnumShortString(sPlayer)):GetChild("NoteField"):get_column_actors()
- for i2 in pairs(getc) do
- getc[i2]:x(Location[i2]);
- getc[i2]:rotationx(-60)
- end;
- end;
- W1Command=cmd(queuecommand,"Move");
- W2Command=cmd(queuecommand,"Move");
- W3Command=cmd(queuecommand,"Move");
- MoveCommand=function(self)
- play = play + 1
- if play > 15 then play = 1; end;
- end;
- };
- if sButton == "Center" or (rButton[sPlayer] == 1 and string.find(GAMESTATE:GetCurrentStyle(pn):GetStepsType() ,"Double") )then
- else
- for i=1,2 do
- for i2=1,15 do
- t[#t+1] = Def.ActorFrame {
- OnCommand=cmd(rotationx,90;rotationz,Position[sButton][1];z,Position[sButton][2]);
- Def.Model {
- Meshes=NOTESKIN:GetPath("","Tex/_Explosion Side");
- Materials=NOTESKIN:GetPath("","Tex/_Explosion Side");
- Bones=NOTESKIN:GetPath("","Tex/_Explosion Side");
- InitCommand=cmd(diffusealpha,0;rotationy,RotSide[i]);
- W1Command=cmd(queuecommand,"Move");
- W2Command=cmd(queuecommand,"Move");
- W3Command=cmd(queuecommand,"Move");
- W4Command=cmd(diffusealpha,0);
- W5Command=cmd(diffusealpha,0);
- MoveCommand=function(self)
- if play == i2 then
- self:finishtweening();
- self:diffusealpha(1);
- self:rotationz(15*math.random(0,6));
- self:z(0);
- self:linear(1);
- self:rotationz(15*math.random(0,6));
- self:z(45*math.random(6,12));
- self:linear(0.1);
- self:diffusealpha(0);
- end;
- end;
- };
- };
- t[#t+1] = LoadActor (NOTESKIN:GetPath( "_Hold", "Explosion Part" ))..{
- InitCommand=cmd(diffuse,color(Colour2[sButton]);diffusealpha,0);
- W1Command=cmd(queuecommand,"Move");
- W2Command=cmd(queuecommand,"Move");
- W3Command=cmd(queuecommand,"Move");
- W4Command=cmd(diffusealpha,0);
- W5Command=cmd(diffusealpha,0);
- MoveCommand=function(self)
- if play == i2 then
- self:finishtweening();
- self:diffusealpha(1);
- self:x(5*math.random(-4,4));
- self:y(0);
- self:bounceend(1);
- self:x(5*math.random(-4,4));
- self:y(45*math.random(6,12));
- self:diffusealpha(0);
- end;
- end;
- };
- end;
- end;
- end;
- return t;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement