新增玩家排版函数,不再需要生成玩家同时指定坐标,添加动画位移方法;玩家task升级为同task模块
This commit is contained in:
@@ -118,7 +118,7 @@ return{--返回一个table,你也可以在之前定义一些常量或者函数
|
|||||||
bg="bg2",bgm="race",
|
bg="bg2",bgm="race",
|
||||||
},
|
},
|
||||||
load=function()--生成玩家
|
load=function()--生成玩家
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)--1是玩家编号,默认用户控制1号玩家
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)--40行模式需要显示的信息
|
mesDisp=function(P)--40行模式需要显示的信息
|
||||||
setFont(55)
|
setFont(55)
|
||||||
|
|||||||
@@ -462,6 +462,33 @@ function loadGame(M,ifQuickPlay)
|
|||||||
SFX.play("enter")
|
SFX.play("enter")
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
function resetPlayerPosition()
|
||||||
|
local l=#PLAYERS
|
||||||
|
PLAYERS[1]:setPosition(340,15)
|
||||||
|
if l==2 then
|
||||||
|
PLAYERS[2]:setPosition(965,360,.5)
|
||||||
|
elseif l==49 then
|
||||||
|
local n=2
|
||||||
|
for i=1,4 do for j=1,6 do
|
||||||
|
PLAYERS[n]:setPosition(78*i-54,115*j-98,.09)
|
||||||
|
n=n+1
|
||||||
|
end end
|
||||||
|
for i=9,12 do for j=1,6 do
|
||||||
|
PLAYERS[n]:setPosition(78*i+267,115*j-98,.09)
|
||||||
|
n=n+1
|
||||||
|
end end
|
||||||
|
elseif l==99 then
|
||||||
|
local n=2
|
||||||
|
for i=1,7 do for j=1,7 do
|
||||||
|
PLAYERS[n]:setPosition(46*i-36,97*j-72,.068)
|
||||||
|
n=n+1
|
||||||
|
end end
|
||||||
|
for i=15,21 do for j=1,7 do
|
||||||
|
PLAYERS[n]:setPosition(46*i+264,97*j-72,.068)
|
||||||
|
n=n+1
|
||||||
|
end end
|
||||||
|
end
|
||||||
|
end
|
||||||
local function tick_showMods()
|
local function tick_showMods()
|
||||||
local time=0
|
local time=0
|
||||||
while true do
|
while true do
|
||||||
@@ -506,6 +533,7 @@ function resetGameData(replaying)
|
|||||||
|
|
||||||
destroyPlayers()
|
destroyPlayers()
|
||||||
GAME.curMode.load()
|
GAME.curMode.load()
|
||||||
|
resetPlayerPosition()
|
||||||
restoreVirtualKey()
|
restoreVirtualKey()
|
||||||
if GAME.modeEnv.task then
|
if GAME.modeEnv.task then
|
||||||
for i=1,#PLAYERS do
|
for i=1,#PLAYERS do
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ return{
|
|||||||
},
|
},
|
||||||
slowMark=true,
|
slowMark=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
PLAYERS[1].modeData.event="M7"
|
PLAYERS[1].modeData.event="M7"
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(55)
|
setFont(55)
|
||||||
|
|||||||
@@ -46,7 +46,7 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(55)
|
setFont(55)
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
score=function(P)return{P.modeData.event,P.stat.finesseRate*25/P.stat.piece}end,
|
score=function(P)return{P.modeData.event,P.stat.finesseRate*25/P.stat.piece}end,
|
||||||
scoreDisp=function(D)return D[1].."Stage "..format("%.2f",D[2]).."%"end,
|
scoreDisp=function(D)return D[1].."Stage "..format("%.2f",D[2]).."%"end,
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
mText(drawableText.line,69,370)
|
mText(drawableText.line,69,370)
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
mText(drawableText.line,69,370)
|
mText(drawableText.line,69,370)
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
mText(drawableText.line,69,370)
|
mText(drawableText.line,69,370)
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
mText(drawableText.line,69,370)
|
mText(drawableText.line,69,370)
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
mText(drawableText.line,69,370)
|
mText(drawableText.line,69,370)
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
if SETTING.spawn==0 then
|
if SETTING.spawn==0 then
|
||||||
LOG.print(text.switchSpawnSFX,COLOR.yellow)
|
LOG.print(text.switchSpawnSFX,COLOR.yellow)
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
local P=PLAYERS[1]
|
local P=PLAYERS[1]
|
||||||
local F=P.field
|
local F=P.field
|
||||||
for i=1,24 do
|
for i=1,24 do
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
local P=PLAYERS[1]
|
local P=PLAYERS[1]
|
||||||
local F=P.field
|
local F=P.field
|
||||||
for i=1,24 do
|
for i=1,24 do
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ return{
|
|||||||
},
|
},
|
||||||
slowMark=true,
|
slowMark=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(75)
|
setFont(75)
|
||||||
|
|||||||
@@ -70,14 +70,14 @@ return{
|
|||||||
break
|
break
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
local L=GAME.modeEnv.opponent
|
local L=GAME.modeEnv.opponent
|
||||||
if L~=0 then
|
if L~=0 then
|
||||||
GAME.modeEnv.target=nil
|
GAME.modeEnv.target=nil
|
||||||
if L<6 then
|
if L<6 then
|
||||||
PLY.newAIPlayer(2,965,360,.5,AIBUILDER("9S",2*L))
|
PLY.newAIPlayer(2,AIBUILDER("9S",2*L))
|
||||||
else
|
else
|
||||||
PLY.newAIPlayer(2,965,360,.5,AIBUILDER("CC",2*L-11,int(L*.5-1.5),true,4000*L))
|
PLY.newAIPlayer(2,AIBUILDER("CC",2*L-11,int(L*.5-1.5),true,4000*L))
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
for _,P in next,PLAYERS.alive do
|
for _,P in next,PLAYERS.alive do
|
||||||
|
|||||||
@@ -51,14 +51,14 @@ return{
|
|||||||
else
|
else
|
||||||
GAME.modeEnv.mission=nil
|
GAME.modeEnv.mission=nil
|
||||||
end
|
end
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
local L=GAME.modeEnv.opponent
|
local L=GAME.modeEnv.opponent
|
||||||
if L~=0 then
|
if L~=0 then
|
||||||
GAME.modeEnv.target=nil
|
GAME.modeEnv.target=nil
|
||||||
if L<6 then
|
if L<6 then
|
||||||
PLY.newAIPlayer(2,965,360,.5,AIBUILDER("9S",2*L))
|
PLY.newAIPlayer(2,AIBUILDER("9S",2*L))
|
||||||
else
|
else
|
||||||
PLY.newAIPlayer(2,965,360,.5,AIBUILDER("CC",2*L-11,int(L*.5-1.5),true,4000*L))
|
PLY.newAIPlayer(2,AIBUILDER("CC",2*L-11,int(L*.5-1.5),true,4000*L))
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
GAME.modeEnv.bg=CUSTOMENV.bg
|
GAME.modeEnv.bg=CUSTOMENV.bg
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(55)
|
setFont(55)
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(55)
|
setFont(55)
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ return{
|
|||||||
bg="bg1",bgm="way",
|
bg="bg1",bgm="way",
|
||||||
},
|
},
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
local P=PLAYERS[1]
|
local P=PLAYERS[1]
|
||||||
for _=1,10 do
|
for _=1,10 do
|
||||||
P:garbageRise(21,1,P:getHolePos())
|
P:garbageRise(21,1,P:getHolePos())
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ return{
|
|||||||
bg="bg2",bgm="way",
|
bg="bg2",bgm="way",
|
||||||
},
|
},
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
local P=PLAYERS[1]
|
local P=PLAYERS[1]
|
||||||
for _=1,10 do
|
for _=1,10 do
|
||||||
P:garbageRise(21,1,P:getHolePos())
|
P:garbageRise(21,1,P:getHolePos())
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ return{
|
|||||||
bg="bg1",bgm="way",
|
bg="bg1",bgm="way",
|
||||||
},
|
},
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
local P=PLAYERS[1]
|
local P=PLAYERS[1]
|
||||||
for _=1,10 do
|
for _=1,10 do
|
||||||
P:garbageRise(21,1,P:getHolePos())
|
P:garbageRise(21,1,P:getHolePos())
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ return{
|
|||||||
bg="bg2",bgm="way",
|
bg="bg2",bgm="way",
|
||||||
},
|
},
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
local P=PLAYERS[1]
|
local P=PLAYERS[1]
|
||||||
for _=1,10 do
|
for _=1,10 do
|
||||||
P:garbageRise(21,1,P:getHolePos())
|
P:garbageRise(21,1,P:getHolePos())
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(65)
|
setFont(65)
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(65)
|
setFont(65)
|
||||||
|
|||||||
@@ -99,7 +99,7 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(70)
|
setFont(70)
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(70)
|
setFont(70)
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ return{
|
|||||||
bg="glow",bgm="infinite",
|
bg="glow",bgm="infinite",
|
||||||
},
|
},
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(45)
|
setFont(45)
|
||||||
|
|||||||
@@ -36,7 +36,7 @@ return{
|
|||||||
bg="wing",bgm="infinite",
|
bg="wing",bgm="infinite",
|
||||||
},
|
},
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
local P=PLAYERS[1]
|
local P=PLAYERS[1]
|
||||||
for _=1,8 do
|
for _=1,8 do
|
||||||
P:garbageRise(13,1,P:RND(10))
|
P:garbageRise(13,1,P:RND(10))
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ return{
|
|||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
slowMark=true,
|
slowMark=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(45)
|
setFont(45)
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ return{
|
|||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
slowMark=true,
|
slowMark=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(45)
|
setFont(45)
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ return{
|
|||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
slowMark=true,
|
slowMark=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(45)
|
setFont(45)
|
||||||
|
|||||||
@@ -54,7 +54,7 @@ return{
|
|||||||
},
|
},
|
||||||
slowMark=true,
|
slowMark=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(45)
|
setFont(45)
|
||||||
|
|||||||
@@ -56,7 +56,7 @@ return{
|
|||||||
},
|
},
|
||||||
slowMark=true,
|
slowMark=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(45)
|
setFont(45)
|
||||||
|
|||||||
@@ -53,7 +53,7 @@ return{
|
|||||||
},
|
},
|
||||||
slowMark=true,
|
slowMark=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(45)
|
setFont(45)
|
||||||
|
|||||||
@@ -146,7 +146,7 @@ return{
|
|||||||
},
|
},
|
||||||
slowMark=true,
|
slowMark=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(45)
|
setFont(45)
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(45)
|
setFont(45)
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(45)
|
setFont(45)
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(45)
|
setFont(45)
|
||||||
|
|||||||
@@ -65,7 +65,7 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
check(PLAYERS[1])
|
check(PLAYERS[1])
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
|
|||||||
@@ -57,7 +57,7 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
check(PLAYERS[1])
|
check(PLAYERS[1])
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
|
|||||||
@@ -19,8 +19,8 @@ return{
|
|||||||
bg="rainbow",bgm="push",
|
bg="rainbow",bgm="push",
|
||||||
},
|
},
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
PLY.newAIPlayer(2,965,360,.5,AIBUILDER("CC",10,1,true,10000))
|
PLY.newAIPlayer(2,AIBUILDER("CC",10,1,true,10000))
|
||||||
GAME.garbageSpeed=1e99
|
GAME.garbageSpeed=1e99
|
||||||
end,
|
end,
|
||||||
score=function(P)return{P.stat.piece,P.stat.frame/60}end,
|
score=function(P)return{P.stat.piece,P.stat.frame/60}end,
|
||||||
|
|||||||
@@ -19,8 +19,8 @@ return{
|
|||||||
bg="rainbow",bgm="push",
|
bg="rainbow",bgm="push",
|
||||||
},
|
},
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
PLY.newAIPlayer(2,965,360,.5,AIBUILDER("CC",10,1,true,13000))
|
PLY.newAIPlayer(2,AIBUILDER("CC",10,1,true,13000))
|
||||||
GAME.garbageSpeed=1e99
|
GAME.garbageSpeed=1e99
|
||||||
end,
|
end,
|
||||||
score=function(P)return{P.stat.piece,P.stat.frame/60}end,
|
score=function(P)return{P.stat.piece,P.stat.frame/60}end,
|
||||||
|
|||||||
@@ -19,8 +19,8 @@ return{
|
|||||||
bg="rainbow",bgm="push",
|
bg="rainbow",bgm="push",
|
||||||
},
|
},
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
PLY.newAIPlayer(2,965,360,.5,AIBUILDER("CC",10,2,true,16000))
|
PLY.newAIPlayer(2,AIBUILDER("CC",10,2,true,16000))
|
||||||
GAME.garbageSpeed=1e99
|
GAME.garbageSpeed=1e99
|
||||||
end,
|
end,
|
||||||
score=function(P)return{P.stat.piece,P.stat.frame/60}end,
|
score=function(P)return{P.stat.piece,P.stat.frame/60}end,
|
||||||
|
|||||||
@@ -19,8 +19,8 @@ return{
|
|||||||
bg="rainbow",bgm="push",
|
bg="rainbow",bgm="push",
|
||||||
},
|
},
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
PLY.newAIPlayer(2,965,360,.5,AIBUILDER("CC",10,3,true,26000))
|
PLY.newAIPlayer(2,AIBUILDER("CC",10,3,true,26000))
|
||||||
GAME.garbageSpeed=1e99
|
GAME.garbageSpeed=1e99
|
||||||
end,
|
end,
|
||||||
score=function(P)return{P.stat.piece,P.stat.frame/60}end,
|
score=function(P)return{P.stat.piece,P.stat.frame/60}end,
|
||||||
|
|||||||
@@ -19,8 +19,8 @@ return{
|
|||||||
bg="rainbow",bgm="push",
|
bg="rainbow",bgm="push",
|
||||||
},
|
},
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
PLY.newAIPlayer(2,965,360,.5,AIBUILDER("CC",10,3,true,40000))
|
PLY.newAIPlayer(2,AIBUILDER("CC",10,3,true,40000))
|
||||||
GAME.garbageSpeed=1e99
|
GAME.garbageSpeed=1e99
|
||||||
end,
|
end,
|
||||||
score=function(P)return{P.stat.piece,P.stat.frame/60}end,
|
score=function(P)return{P.stat.piece,P.stat.frame/60}end,
|
||||||
|
|||||||
@@ -8,8 +8,8 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
PLY.newAIPlayer(2,965,360,.5,AIBUILDER("9S",4))
|
PLY.newAIPlayer(2,AIBUILDER("9S",4))
|
||||||
end,
|
end,
|
||||||
score=function(P)return{P.stat.frame/60}end,
|
score=function(P)return{P.stat.frame/60}end,
|
||||||
scoreDisp=function(D)return toTime(D[1])end,
|
scoreDisp=function(D)return toTime(D[1])end,
|
||||||
|
|||||||
@@ -8,8 +8,8 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
PLY.newAIPlayer(2,965,360,.5,AIBUILDER("9S",5))
|
PLY.newAIPlayer(2,AIBUILDER("9S",5))
|
||||||
end,
|
end,
|
||||||
score=function(P)return{P.stat.frame/60}end,
|
score=function(P)return{P.stat.frame/60}end,
|
||||||
scoreDisp=function(D)return toTime(D[1])end,
|
scoreDisp=function(D)return toTime(D[1])end,
|
||||||
|
|||||||
@@ -8,8 +8,8 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
PLY.newAIPlayer(2,965,360,.5,AIBUILDER("9S",6))
|
PLY.newAIPlayer(2,AIBUILDER("9S",6))
|
||||||
end,
|
end,
|
||||||
score=function(P)return{P.stat.frame/60}end,
|
score=function(P)return{P.stat.frame/60}end,
|
||||||
scoreDisp=function(D)return toTime(D[1])end,
|
scoreDisp=function(D)return toTime(D[1])end,
|
||||||
|
|||||||
@@ -8,8 +8,8 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
PLY.newAIPlayer(2,965,360,.5,AIBUILDER("CC",6,2,true,30000))
|
PLY.newAIPlayer(2,AIBUILDER("CC",6,2,true,30000))
|
||||||
end,
|
end,
|
||||||
score=function(P)return{P.stat.frame/60}end,
|
score=function(P)return{P.stat.frame/60}end,
|
||||||
scoreDisp=function(D)return toTime(D[1])end,
|
scoreDisp=function(D)return toTime(D[1])end,
|
||||||
|
|||||||
@@ -8,8 +8,8 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
PLY.newAIPlayer(2,965,360,.5,AIBUILDER("CC",7,3,true,50000))
|
PLY.newAIPlayer(2,AIBUILDER("CC",7,3,true,50000))
|
||||||
end,
|
end,
|
||||||
score=function(P)return{P.stat.frame/60}end,
|
score=function(P)return{P.stat.frame/60}end,
|
||||||
scoreDisp=function(D)return toTime(D[1])end,
|
scoreDisp=function(D)return toTime(D[1])end,
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ return{
|
|||||||
bg="aura",bgm="waterfall",
|
bg="aura",bgm="waterfall",
|
||||||
},
|
},
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(55)
|
setFont(55)
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ return{
|
|||||||
bg="aura",bgm="waterfall",
|
bg="aura",bgm="waterfall",
|
||||||
},
|
},
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(55)
|
setFont(55)
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ return{
|
|||||||
bg="aura",bgm="waterfall",
|
bg="aura",bgm="waterfall",
|
||||||
},
|
},
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(55)
|
setFont(55)
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ return{
|
|||||||
bg="aura",bgm="waterfall",
|
bg="aura",bgm="waterfall",
|
||||||
},
|
},
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(55)
|
setFont(55)
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ return{
|
|||||||
bg="bg2",bgm="race",
|
bg="bg2",bgm="race",
|
||||||
},
|
},
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(55)
|
setFont(55)
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ return{
|
|||||||
bg="bg2",bgm="race",
|
bg="bg2",bgm="race",
|
||||||
},
|
},
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(55)
|
setFont(55)
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ return{
|
|||||||
bg="rainbow",bgm="push",
|
bg="rainbow",bgm="push",
|
||||||
},
|
},
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(55)
|
setFont(55)
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ return{
|
|||||||
bg="bg2",bgm="race",
|
bg="bg2",bgm="race",
|
||||||
},
|
},
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(55)
|
setFont(55)
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ return{
|
|||||||
bg="bg2",bgm="race",
|
bg="bg2",bgm="race",
|
||||||
},
|
},
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(55)
|
setFont(55)
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ return{
|
|||||||
bg="rainbow",bgm="push",
|
bg="rainbow",bgm="push",
|
||||||
},
|
},
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(55)
|
setFont(55)
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(65)
|
setFont(65)
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(65)
|
setFont(65)
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(65)
|
setFont(65)
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(65)
|
setFont(65)
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(65)
|
setFont(65)
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ return{
|
|||||||
},
|
},
|
||||||
slowMark=true,
|
slowMark=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(45)
|
setFont(45)
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ return{
|
|||||||
},
|
},
|
||||||
slowMark=true,
|
slowMark=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(45)
|
setFont(45)
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ return{
|
|||||||
bg="matrix",bgm="down",
|
bg="matrix",bgm="down",
|
||||||
},
|
},
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(45)
|
setFont(45)
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ return{
|
|||||||
bg="matrix",bgm="down",
|
bg="matrix",bgm="down",
|
||||||
},
|
},
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(45)
|
setFont(45)
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ return{
|
|||||||
bg="matrix",bgm="down",
|
bg="matrix",bgm="down",
|
||||||
},
|
},
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(45)
|
setFont(45)
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ return{
|
|||||||
bg="matrix",bgm="down",
|
bg="matrix",bgm="down",
|
||||||
},
|
},
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(45)
|
setFont(45)
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ return{
|
|||||||
bg="matrix",bgm="new era",
|
bg="matrix",bgm="new era",
|
||||||
},
|
},
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(45)
|
setFont(45)
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ return{
|
|||||||
bg="matrix",bgm="new era",
|
bg="matrix",bgm="new era",
|
||||||
},
|
},
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(45)
|
setFont(45)
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ return{
|
|||||||
powerUp={2,5,10,20},
|
powerUp={2,5,10,20},
|
||||||
stage={30,20,15,10,5},
|
stage={30,20,15,10,5},
|
||||||
}
|
}
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
local L={}for i=1,49 do L[i]=true end
|
local L={}for i=1,49 do L[i]=true end
|
||||||
local t=CC and 2 or 0
|
local t=CC and 2 or 0
|
||||||
while t>0 do
|
while t>0 do
|
||||||
@@ -39,19 +39,19 @@ return{
|
|||||||
if L[r]then L[r],t=false,t-1 end
|
if L[r]then L[r],t=false,t-1 end
|
||||||
end
|
end
|
||||||
local n=2
|
local n=2
|
||||||
for i=1,4 do for j=1,6 do
|
for _=1,4 do for _=1,6 do
|
||||||
if L[n]then
|
if L[n]then
|
||||||
PLY.newAIPlayer(n,78*i-54,115*j-98,.09,AIBUILDER("9S",rnd(4,6)))
|
PLY.newAIPlayer(n,AIBUILDER("9S",rnd(4,6)),true)
|
||||||
else
|
else
|
||||||
PLY.newAIPlayer(n,78*i-54,115*j-98,.09,AIBUILDER("CC",rnd(2,4),2,true,20000))
|
PLY.newAIPlayer(n,AIBUILDER("CC",rnd(2,4),2,true,20000),true)
|
||||||
end
|
end
|
||||||
n=n+1
|
n=n+1
|
||||||
end end
|
end end
|
||||||
for i=9,12 do for j=1,6 do
|
for _=9,12 do for _=1,6 do
|
||||||
if L[n]then
|
if L[n]then
|
||||||
PLY.newAIPlayer(n,78*i+267,115*j-98,.09,AIBUILDER("9S",rnd(4,5)))
|
PLY.newAIPlayer(n,AIBUILDER("9S",rnd(4,5)),true)
|
||||||
else
|
else
|
||||||
PLY.newAIPlayer(n,78*i+267,115*j-98,.09,AIBUILDER("CC",rnd(3,5),2,true,20000))
|
PLY.newAIPlayer(n,AIBUILDER("CC",rnd(3,5),2,true,20000),true)
|
||||||
end
|
end
|
||||||
n=n+1
|
n=n+1
|
||||||
end end
|
end end
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ return{
|
|||||||
powerUp={2,5,10,20},
|
powerUp={2,5,10,20},
|
||||||
stage={30,20,15,10,5},
|
stage={30,20,15,10,5},
|
||||||
}
|
}
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
local L={}for i=1,49 do L[i]=true end
|
local L={}for i=1,49 do L[i]=true end
|
||||||
local t=CC and 4 or 0
|
local t=CC and 4 or 0
|
||||||
while t>0 do
|
while t>0 do
|
||||||
@@ -39,19 +39,19 @@ return{
|
|||||||
if L[r]then L[r],t=false,t-1 end
|
if L[r]then L[r],t=false,t-1 end
|
||||||
end
|
end
|
||||||
local n=2
|
local n=2
|
||||||
for i=1,4 do for j=1,6 do
|
for _=1,4 do for _=1,6 do
|
||||||
if L[n]then
|
if L[n]then
|
||||||
PLY.newAIPlayer(n,78*i-54,115*j-98,.09,AIBUILDER("9S",rnd(4,8)))
|
PLY.newAIPlayer(n,AIBUILDER("9S",rnd(4,8)),true)
|
||||||
else
|
else
|
||||||
PLY.newAIPlayer(n,78*i-54,115*j-98,.09,AIBUILDER("CC",rnd(3,6),3,true,30000))
|
PLY.newAIPlayer(n,AIBUILDER("CC",rnd(3,6),3,true,30000),true)
|
||||||
end
|
end
|
||||||
n=n+1
|
n=n+1
|
||||||
end end
|
end end
|
||||||
for i=9,12 do for j=1,6 do
|
for _=9,12 do for _=1,6 do
|
||||||
if L[n]then
|
if L[n]then
|
||||||
PLY.newAIPlayer(n,78*i+267,115*j-98,.09,AIBUILDER("9S",rnd(4,7)))
|
PLY.newAIPlayer(n,AIBUILDER("9S",rnd(4,7)),true)
|
||||||
else
|
else
|
||||||
PLY.newAIPlayer(n,78*i+267,115*j-98,.09,AIBUILDER("CC",rnd(4,6),3,true,30000))
|
PLY.newAIPlayer(n,AIBUILDER("CC",rnd(4,6),3,true,30000),true)
|
||||||
end
|
end
|
||||||
n=n+1
|
n=n+1
|
||||||
end end
|
end end
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ return{
|
|||||||
powerUp={2,5,10,20},
|
powerUp={2,5,10,20},
|
||||||
stage={30,20,15,10,5},
|
stage={30,20,15,10,5},
|
||||||
}
|
}
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
local L={}for i=1,49 do L[i]=true end
|
local L={}for i=1,49 do L[i]=true end
|
||||||
local t=CC and 6 or 0
|
local t=CC and 6 or 0
|
||||||
while t>0 do
|
while t>0 do
|
||||||
@@ -39,19 +39,19 @@ return{
|
|||||||
if L[r]then L[r],t=false,t-1 end
|
if L[r]then L[r],t=false,t-1 end
|
||||||
end
|
end
|
||||||
local n=2
|
local n=2
|
||||||
for i=1,4 do for j=1,6 do
|
for _=1,4 do for _=1,6 do
|
||||||
if L[n]then
|
if L[n]then
|
||||||
PLY.newAIPlayer(n,78*i-54,115*j-98,.09,AIBUILDER("9S",rnd(8,10)))
|
PLY.newAIPlayer(n,AIBUILDER("9S",rnd(8,10)),true)
|
||||||
else
|
else
|
||||||
PLY.newAIPlayer(n,78*i-54,115*j-98,.09,AIBUILDER("CC",rnd(4,7),3,true,40000))
|
PLY.newAIPlayer(n,AIBUILDER("CC",rnd(4,7),3,true,40000),true)
|
||||||
end
|
end
|
||||||
n=n+1
|
n=n+1
|
||||||
end end
|
end end
|
||||||
for i=9,12 do for j=1,6 do
|
for _=9,12 do for _=1,6 do
|
||||||
if L[n]then
|
if L[n]then
|
||||||
PLY.newAIPlayer(n,78*i+267,115*j-98,.09,AIBUILDER("9S",rnd(8,9)))
|
PLY.newAIPlayer(n,AIBUILDER("9S",rnd(8,9)),true)
|
||||||
else
|
else
|
||||||
PLY.newAIPlayer(n,78*i+267,115*j-98,.09,AIBUILDER("CC",rnd(5,8),3,true,40000))
|
PLY.newAIPlayer(n,AIBUILDER("CC",rnd(5,8),3,true,40000),true)
|
||||||
end
|
end
|
||||||
n=n+1
|
n=n+1
|
||||||
end end
|
end end
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ return{
|
|||||||
powerUp={2,6,14,30},
|
powerUp={2,6,14,30},
|
||||||
stage={75,50,35,20,10},
|
stage={75,50,35,20,10},
|
||||||
}
|
}
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
local L={}for i=1,100 do L[i]=true end
|
local L={}for i=1,100 do L[i]=true end
|
||||||
local t=CC and 4 or 0
|
local t=CC and 4 or 0
|
||||||
while t>0 do
|
while t>0 do
|
||||||
@@ -39,19 +39,19 @@ return{
|
|||||||
if L[r]then L[r],t=false,t-1 end
|
if L[r]then L[r],t=false,t-1 end
|
||||||
end
|
end
|
||||||
local n=2
|
local n=2
|
||||||
for i=1,7 do for j=1,7 do
|
for _=1,7 do for _=1,7 do
|
||||||
if L[n]then
|
if L[n]then
|
||||||
PLY.newAIPlayer(n,46*i-36,97*j-72,.068,AIBUILDER("9S",rnd(4,6)))
|
PLY.newAIPlayer(n,AIBUILDER("9S",rnd(4,6)),true)
|
||||||
else
|
else
|
||||||
PLY.newAIPlayer(n,46*i-36,97*j-72,.068,AIBUILDER("CC",rnd(2,4),2,true,20000))
|
PLY.newAIPlayer(n,AIBUILDER("CC",rnd(2,4),2,true,20000),true)
|
||||||
end
|
end
|
||||||
n=n+1
|
n=n+1
|
||||||
end end
|
end end
|
||||||
for i=15,21 do for j=1,7 do
|
for _=15,21 do for _=1,7 do
|
||||||
if L[n]then
|
if L[n]then
|
||||||
PLY.newAIPlayer(n,46*i+264,97*j-72,.068,AIBUILDER("9S",rnd(4,5)))
|
PLY.newAIPlayer(n,AIBUILDER("9S",rnd(4,5)),true)
|
||||||
else
|
else
|
||||||
PLY.newAIPlayer(n,46*i+264,97*j-72,.068,AIBUILDER("CC",rnd(3,5),2,true,20000))
|
PLY.newAIPlayer(n,AIBUILDER("CC",rnd(3,5),2,true,20000),true)
|
||||||
end
|
end
|
||||||
n=n+1
|
n=n+1
|
||||||
end end
|
end end
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ return{
|
|||||||
powerUp={2,6,14,30},
|
powerUp={2,6,14,30},
|
||||||
stage={75,50,35,20,10},
|
stage={75,50,35,20,10},
|
||||||
}
|
}
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
local L={}for i=1,100 do L[i]=true end
|
local L={}for i=1,100 do L[i]=true end
|
||||||
local t=CC and 4 or 0
|
local t=CC and 4 or 0
|
||||||
while t>0 do
|
while t>0 do
|
||||||
@@ -39,19 +39,19 @@ return{
|
|||||||
if L[r]then L[r],t=false,t-1 end
|
if L[r]then L[r],t=false,t-1 end
|
||||||
end
|
end
|
||||||
local n=2
|
local n=2
|
||||||
for i=1,7 do for j=1,7 do
|
for _=1,7 do for _=1,7 do
|
||||||
if L[n]then
|
if L[n]then
|
||||||
PLY.newAIPlayer(n,46*i-36,97*j-72,.068,AIBUILDER("9S",rnd(4,8)))
|
PLY.newAIPlayer(n,AIBUILDER("9S",rnd(4,8)),true)
|
||||||
else
|
else
|
||||||
PLY.newAIPlayer(n,46*i-36,97*j-72,.068,AIBUILDER("CC",rnd(3,6),3,true,30000))
|
PLY.newAIPlayer(n,AIBUILDER("CC",rnd(3,6),3,true,30000),true)
|
||||||
end
|
end
|
||||||
n=n+1
|
n=n+1
|
||||||
end end
|
end end
|
||||||
for i=15,21 do for j=1,7 do
|
for _=15,21 do for _=1,7 do
|
||||||
if L[n]then
|
if L[n]then
|
||||||
PLY.newAIPlayer(n,46*i+264,97*j-72,.068,AIBUILDER("9S",rnd(4,7)))
|
PLY.newAIPlayer(n,AIBUILDER("9S",rnd(4,7)),true)
|
||||||
else
|
else
|
||||||
PLY.newAIPlayer(n,46*i+264,97*j-72,.068,AIBUILDER("CC",rnd(4,6),3,true,30000))
|
PLY.newAIPlayer(n,AIBUILDER("CC",rnd(4,6),3,true,30000),true)
|
||||||
end
|
end
|
||||||
n=n+1
|
n=n+1
|
||||||
end end
|
end end
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ return{
|
|||||||
powerUp={2,6,14,30},
|
powerUp={2,6,14,30},
|
||||||
stage={75,50,35,20,10},
|
stage={75,50,35,20,10},
|
||||||
}
|
}
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
local L={}for i=1,100 do L[i]=true end
|
local L={}for i=1,100 do L[i]=true end
|
||||||
local t=CC and 4 or 0
|
local t=CC and 4 or 0
|
||||||
while t>0 do
|
while t>0 do
|
||||||
@@ -39,19 +39,19 @@ return{
|
|||||||
if L[r]then L[r],t=false,t-1 end
|
if L[r]then L[r],t=false,t-1 end
|
||||||
end
|
end
|
||||||
local n=2
|
local n=2
|
||||||
for i=1,7 do for j=1,7 do
|
for _=1,7 do for _=1,7 do
|
||||||
if L[n]then
|
if L[n]then
|
||||||
PLY.newAIPlayer(n,46*i-36,97*j-72,.068,AIBUILDER("9S",rnd(8,10)))
|
PLY.newAIPlayer(n,AIBUILDER("9S",rnd(8,10)),true)
|
||||||
else
|
else
|
||||||
PLY.newAIPlayer(n,46*i-36,97*j-72,.068,AIBUILDER("CC",rnd(4,7),3,true,40000))
|
PLY.newAIPlayer(n,AIBUILDER("CC",rnd(4,7),3,true,40000),true)
|
||||||
end
|
end
|
||||||
n=n+1
|
n=n+1
|
||||||
end end
|
end end
|
||||||
for i=15,21 do for j=1,7 do
|
for _=15,21 do for _=1,7 do
|
||||||
if L[n]then
|
if L[n]then
|
||||||
PLY.newAIPlayer(n,46*i+264,97*j-72,.068,AIBUILDER("9S",rnd(8,9)))
|
PLY.newAIPlayer(n,AIBUILDER("9S",rnd(8,9)),true)
|
||||||
else
|
else
|
||||||
PLY.newAIPlayer(n,46*i+264,97*j-72,.068,AIBUILDER("CC",rnd(5,8),3,true,40000))
|
PLY.newAIPlayer(n,AIBUILDER("CC",rnd(5,8),3,true,40000),true)
|
||||||
end
|
end
|
||||||
n=n+1
|
n=n+1
|
||||||
end end
|
end end
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ return{
|
|||||||
bg="matrix",bgm="push",
|
bg="matrix",bgm="push",
|
||||||
},
|
},
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(65)
|
setFont(65)
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(65)
|
setFont(65)
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ return{
|
|||||||
},
|
},
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(65)
|
setFont(65)
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ return{
|
|||||||
slowMark=true,
|
slowMark=true,
|
||||||
pauseLimit=true,
|
pauseLimit=true,
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
gc.setLineWidth(2)
|
gc.setLineWidth(2)
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ return{
|
|||||||
bg="bg2",bgm="infinite",
|
bg="bg2",bgm="infinite",
|
||||||
},
|
},
|
||||||
load=function()
|
load=function()
|
||||||
PLY.newPlayer(1,340,15)
|
PLY.newPlayer(1)
|
||||||
end,
|
end,
|
||||||
mesDisp=function(P)
|
mesDisp=function(P)
|
||||||
setFont(70)
|
setFont(70)
|
||||||
|
|||||||
@@ -72,7 +72,7 @@ local function releaseKey_Rec(P,keyID)
|
|||||||
end
|
end
|
||||||
P.keyPressing[keyID]=false
|
P.keyPressing[keyID]=false
|
||||||
end
|
end
|
||||||
local function newEmptyPlayer(id,x,y,size)
|
local function newEmptyPlayer(id,mini)
|
||||||
local P={id=id}
|
local P={id=id}
|
||||||
PLAYERS[id]=P
|
PLAYERS[id]=P
|
||||||
PLAYERS.alive[id]=P
|
PLAYERS.alive[id]=P
|
||||||
@@ -90,23 +90,23 @@ local function newEmptyPlayer(id,x,y,size)
|
|||||||
P.update=PLY.update.alive
|
P.update=PLY.update.alive
|
||||||
|
|
||||||
P.fieldOff={x=0,y=0,vx=0,vy=0}--For shake FX
|
P.fieldOff={x=0,y=0,vx=0,vy=0}--For shake FX
|
||||||
P.x,P.y,P.size=x,y,size or 1
|
P.x,P.y,P.size=0,0,1
|
||||||
P.frameColor=0
|
P.frameColor=0
|
||||||
|
|
||||||
P.small=P.size<.1--If draw in small mode
|
P.mini=mini--If draw in small mode
|
||||||
if P.small then
|
|
||||||
P.fieldX,P.fieldY=P.x,P.y
|
--Set these at Player:setPosition()
|
||||||
P.centerX,P.centerY=P.x+300*P.size,P.y+600*P.size
|
-- P.fieldX,P.fieldY=...
|
||||||
|
-- P.centerX,P.centerY=...
|
||||||
|
-- P.absFieldX,P.absFieldY=...
|
||||||
|
|
||||||
|
if P.mini then
|
||||||
P.canvas=love.graphics.newCanvas(60,120)
|
P.canvas=love.graphics.newCanvas(60,120)
|
||||||
P.frameWait=rnd(30,120)
|
P.frameWait=rnd(30,120)
|
||||||
P.draw=PLY.draw.small
|
P.draw=PLY.draw.small
|
||||||
else
|
else
|
||||||
P.keyRec=true--If calculate keySpeed
|
P.keyRec=true--If calculate keySpeed
|
||||||
P.fieldX,P.fieldY=P.x+150*P.size,P.y+70*P.size
|
|
||||||
P.centerX,P.centerY=P.x+300*P.size,P.y+370*P.size
|
|
||||||
P.absFieldX,P.absFieldY=P.x+150*P.size,P.y+60*P.size
|
|
||||||
P.draw=PLY.draw.norm
|
P.draw=PLY.draw.norm
|
||||||
P.bonus={}--Text objects
|
|
||||||
end
|
end
|
||||||
P.randGen=mt.newRandomGenerator(GAME.seed)
|
P.randGen=mt.newRandomGenerator(GAME.seed)
|
||||||
|
|
||||||
@@ -182,7 +182,7 @@ local function newEmptyPlayer(id,x,y,size)
|
|||||||
P.finesseComboTime=0
|
P.finesseComboTime=0
|
||||||
P.dropFX,P.moveFX,P.lockFX,P.clearFX={},{},{},{}
|
P.dropFX,P.moveFX,P.lockFX,P.clearFX={},{},{},{}
|
||||||
P.tasks={}--Tasks
|
P.tasks={}--Tasks
|
||||||
P.bonus={}--Texts
|
P.bonus={}--Text objects
|
||||||
|
|
||||||
P.endCounter=0--Used after gameover
|
P.endCounter=0--Used after gameover
|
||||||
P.result=nil--String:"WIN"/"K.O."
|
P.result=nil--String:"WIN"/"K.O."
|
||||||
@@ -278,13 +278,14 @@ local function applyGameEnv(P)--Finish gameEnv processing
|
|||||||
|
|
||||||
if ENV.nextCount==0 then ENV.nextPos=false end
|
if ENV.nextCount==0 then ENV.nextPos=false end
|
||||||
|
|
||||||
if P.small then
|
if P.mini then
|
||||||
ENV.lockFX=nil
|
ENV.lockFX=nil
|
||||||
ENV.dropFX=nil
|
ENV.dropFX=nil
|
||||||
ENV.moveFX=nil
|
ENV.moveFX=nil
|
||||||
ENV.clearFX=nil
|
ENV.clearFX=nil
|
||||||
ENV.splashFX=nil
|
ENV.splashFX=nil
|
||||||
ENV.shakeFX=nil
|
ENV.shakeFX=nil
|
||||||
|
ENV.text=nil
|
||||||
else
|
else
|
||||||
if ENV.lockFX==0 then ENV.lockFX=nil end
|
if ENV.lockFX==0 then ENV.lockFX=nil end
|
||||||
if ENV.dropFX==0 then ENV.dropFX=nil end
|
if ENV.dropFX==0 then ENV.dropFX=nil end
|
||||||
@@ -319,14 +320,11 @@ local DemoEnv={
|
|||||||
life=1e99,
|
life=1e99,
|
||||||
noMod=true,
|
noMod=true,
|
||||||
}
|
}
|
||||||
function PLY.newDemoPlayer(id,x,y,size)
|
function PLY.newDemoPlayer(id)
|
||||||
local P=newEmptyPlayer(id,x,y,size)
|
local P=newEmptyPlayer(id)
|
||||||
P.sound=true
|
P.sound=true
|
||||||
|
P.demo=true
|
||||||
|
|
||||||
-- rewrite some args
|
|
||||||
P.fieldX,P.fieldY=P.x,P.y
|
|
||||||
P.centerX,P.centerY=P.x+300*P.size,P.y+600*P.size
|
|
||||||
P.absFieldX,P.absFieldY=P.x+150*P.size,P.y+60*P.size
|
|
||||||
P.draw=PLY.draw.demo
|
P.draw=PLY.draw.demo
|
||||||
P.control=true
|
P.control=true
|
||||||
GAME.modeEnv=DemoEnv
|
GAME.modeEnv=DemoEnv
|
||||||
@@ -344,8 +342,8 @@ function PLY.newDemoPlayer(id,x,y,size)
|
|||||||
}
|
}
|
||||||
P:popNext()
|
P:popNext()
|
||||||
end
|
end
|
||||||
function PLY.newRemotePlayer(id,x,y,size)
|
function PLY.newRemotePlayer(id,mini)
|
||||||
local P=newEmptyPlayer(id,x,y,size)
|
local P=newEmptyPlayer(id,mini)
|
||||||
P.remote=true
|
P.remote=true
|
||||||
|
|
||||||
-- P.updateAction=buildActionFunctionFromActions(P, actions)
|
-- P.updateAction=buildActionFunctionFromActions(P, actions)
|
||||||
@@ -355,8 +353,8 @@ function PLY.newRemotePlayer(id,x,y,size)
|
|||||||
prepareSequence(P)
|
prepareSequence(P)
|
||||||
end
|
end
|
||||||
|
|
||||||
function PLY.newAIPlayer(id,x,y,size,AIdata)
|
function PLY.newAIPlayer(id,AIdata,mini)
|
||||||
local P=newEmptyPlayer(id,x,y,size)
|
local P=newEmptyPlayer(id,mini)
|
||||||
|
|
||||||
loadGameEnv(P)
|
loadGameEnv(P)
|
||||||
local ENV=P.gameEnv
|
local ENV=P.gameEnv
|
||||||
@@ -366,8 +364,8 @@ function PLY.newAIPlayer(id,x,y,size,AIdata)
|
|||||||
prepareSequence(P)
|
prepareSequence(P)
|
||||||
P:loadAI(AIdata)
|
P:loadAI(AIdata)
|
||||||
end
|
end
|
||||||
function PLY.newPlayer(id,x,y,size)
|
function PLY.newPlayer(id,mini)
|
||||||
local P=newEmptyPlayer(id,x,y,size)
|
local P=newEmptyPlayer(id,mini)
|
||||||
P.human=true
|
P.human=true
|
||||||
P.sound=true
|
P.sound=true
|
||||||
|
|
||||||
|
|||||||
@@ -104,7 +104,7 @@ function Player.createClearingFX(P,y,spd)
|
|||||||
end
|
end
|
||||||
function Player.createBeam(P,R,send,color)
|
function Player.createBeam(P,R,send,color)
|
||||||
local x1,y1,x2,y2
|
local x1,y1,x2,y2
|
||||||
if P.small then x1,y1=P.centerX,P.centerY
|
if P.mini then x1,y1=P.centerX,P.centerY
|
||||||
else x1,y1=P.x+(30*(P.curX+P.sc[2])-30+15+150)*P.size,P.y+(600-30*(P.curY+P.sc[1])+15+70)*P.size
|
else x1,y1=P.x+(30*(P.curX+P.sc[2])-30+15+150)*P.size,P.y+(600-30*(P.curY+P.sc[1])+15+70)*P.size
|
||||||
end
|
end
|
||||||
if R.small then x2,y2=R.centerX,R.centerY
|
if R.small then x2,y2=R.centerX,R.centerY
|
||||||
@@ -125,11 +125,47 @@ function Player.RND(P,a,b)
|
|||||||
local R=P.randGen
|
local R=P.randGen
|
||||||
return R:random(a,b)
|
return R:random(a,b)
|
||||||
end
|
end
|
||||||
function Player.newTask(P,code)
|
function Player.newTask(P,code,...)
|
||||||
local L=P.tasks
|
|
||||||
local thread=ct.create(code)
|
local thread=ct.create(code)
|
||||||
ct.resume(thread,P)
|
ct.resume(thread,P,...)
|
||||||
L[#L+1]=thread
|
if ct.status(thread)~="dead"then
|
||||||
|
P.tasks[#P.tasks+1]={
|
||||||
|
thread=thread,
|
||||||
|
code=code,
|
||||||
|
args={...},
|
||||||
|
}
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function Player.setPosition(P,x,y,size)
|
||||||
|
size=size or 1
|
||||||
|
P.x,P.y,P.size=x,y,size
|
||||||
|
if P.mini or P.demo then
|
||||||
|
P.fieldX,P.fieldY=x,y
|
||||||
|
P.centerX,P.centerY=x+300*size,y+600*size
|
||||||
|
else
|
||||||
|
P.fieldX,P.fieldY=x+150*size,y+70*size
|
||||||
|
P.centerX,P.centerY=x+300*size,y+370*size
|
||||||
|
P.absFieldX,P.absFieldY=x+150*size,y+60*size
|
||||||
|
end
|
||||||
|
end
|
||||||
|
local function task_movePosition(P,x,y,size)
|
||||||
|
local x1,y1,size1=P.x,P.y,P.size
|
||||||
|
while true do
|
||||||
|
coroutine.yield()
|
||||||
|
x1=x1*.93+x*.07
|
||||||
|
y1=y1*.93+y*.07
|
||||||
|
size1=size1*.93+size*.07
|
||||||
|
if(x1-x)^2+(y1-y)^2<6.26 then
|
||||||
|
P:setPosition(x,y,size)
|
||||||
|
return true
|
||||||
|
else
|
||||||
|
P:setPosition(x1,y1,size1)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
function Player.movePosition(P,x,y,size)
|
||||||
|
P:newTask(task_movePosition,x,y,size or P.size)
|
||||||
end
|
end
|
||||||
|
|
||||||
function Player.set20G(P,if20g,init)--Only set init=true when initialize CC, do not use it
|
function Player.set20G(P,if20g,init)--Only set init=true when initialize CC, do not use it
|
||||||
|
|||||||
@@ -97,8 +97,9 @@ end
|
|||||||
local function updateTasks(P)
|
local function updateTasks(P)
|
||||||
local L=P.tasks
|
local L=P.tasks
|
||||||
for i=#L,1,-1 do
|
for i=#L,1,-1 do
|
||||||
assert(ct.resume(L[i]))
|
local tr=L[i].thread
|
||||||
if ct.status(L[i])=="dead"then
|
assert(ct.resume(tr))
|
||||||
|
if ct.status(tr)=="dead"then
|
||||||
rem(L,i)
|
rem(L,i)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -52,7 +52,8 @@ function scene.sceneInit()
|
|||||||
destroyPlayers()
|
destroyPlayers()
|
||||||
GAME.frame=0
|
GAME.frame=0
|
||||||
GAME.seed=math.random(2e6)
|
GAME.seed=math.random(2e6)
|
||||||
PLY.newDemoPlayer(1,900,35,1.1)
|
PLY.newDemoPlayer(1)
|
||||||
|
PLAYERS[1]:setPosition(900,30,1.1)
|
||||||
end
|
end
|
||||||
|
|
||||||
function scene.update(dt)
|
function scene.update(dt)
|
||||||
|
|||||||
Reference in New Issue
Block a user