垃圾行缓冲总数改为单独变量
This commit is contained in:
@@ -505,7 +505,7 @@ do--function checkWarning()
|
||||
end
|
||||
end
|
||||
end
|
||||
GAME.warnLVL0=math.log(height-(P1.gameEnv.fieldH-5)+P1.atkBuffer.sum*.8)
|
||||
GAME.warnLVL0=math.log(height-(P1.gameEnv.fieldH-5)+P1.atkBufferSum*.8)
|
||||
end
|
||||
local _=GAME.warnLVL
|
||||
if _<GAME.warnLVL0 then
|
||||
|
||||
@@ -8,20 +8,18 @@ return{
|
||||
task=function(P)
|
||||
while true do
|
||||
YIELD()
|
||||
if P.control and P.atkBuffer.sum==0 then
|
||||
local p=#P.atkBuffer+1
|
||||
local B,D=P.atkBuffer,P.modeData
|
||||
local t
|
||||
if P.control and P.atkBufferSum==0 then
|
||||
local D=P.modeData
|
||||
if D.wave<20 then
|
||||
t=1500-30*D.wave--1500~900
|
||||
B[p]= {line=generateLine(P:RND(4,7)),amount=12,countdown=t,cd0=t,time=0,sent=false,lv=3}
|
||||
B[p+1]= {line=generateLine(P:RND(3,8)),amount=10,countdown=t,cd0=t,time=0,sent=false,lv=4}
|
||||
local t=1500-30*D.wave--1500~900
|
||||
table.insert(P.atkBuffer,{line=generateLine(P:RND(4,7)),amount=12,countdown=t,cd0=t,time=0,sent=false,lv=3})
|
||||
table.insert(P.atkBuffer,{line=generateLine(P:RND(3,8)),amount=10,countdown=t,cd0=t,time=0,sent=false,lv=4})
|
||||
else
|
||||
t=900-10*(D.wave-20)--900~600
|
||||
B[p]= {line=generateLine(P:RND(10)),amount=14,countdown=t,cd0=t,time=0,sent=false,lv=4}
|
||||
B[p+1]= {line=generateLine(P:RND(4,7)),amount=8,countdown=t,cd0=t,time=0,sent=false,lv=5}
|
||||
local t=900-10*(D.wave-20)--900~600
|
||||
table.insert(P.atkBuffer,{line=generateLine(P:RND(10)),amount=14,countdown=t,cd0=t,time=0,sent=false,lv=4})
|
||||
table.insert(P.atkBuffer,{line=generateLine(P:RND(4,7)),amount=8,countdown=t,cd0=t,time=0,sent=false,lv=5})
|
||||
end
|
||||
B.sum=B.sum+22
|
||||
P.atkBufferSum=P.atkBufferSum+22
|
||||
P.stat.recv=P.stat.recv+22
|
||||
D.wave=D.wave+1
|
||||
if D.wave%10==0 then
|
||||
|
||||
@@ -7,25 +7,24 @@ return{
|
||||
task=function(P)
|
||||
while true do
|
||||
YIELD()
|
||||
if P.control and P.atkBuffer.sum<4 then
|
||||
local p=#P.atkBuffer+1
|
||||
local B,D=P.atkBuffer,P.modeData
|
||||
if P.control and P.atkBufferSum<4 then
|
||||
local D=P.modeData
|
||||
local s
|
||||
local t=800-10*D.wave--800~700~600~500
|
||||
if D.wave<10 then
|
||||
B[p]= {line=generateLine(P:RND(5,6)),amount=9,countdown=t,cd0=t,time=0,sent=false,lv=3}
|
||||
B[p+1]= {line=generateLine(P:RND(4,7)),amount=11,countdown=t,cd0=t+62,time=0,sent=false,lv=4}
|
||||
table.insert(P.atkBuffer,{line=generateLine(P:RND(5,6)),amount=9,countdown=t,cd0=t,time=0,sent=false,lv=3})
|
||||
table.insert(P.atkBuffer,{line=generateLine(P:RND(4,7)),amount=11,countdown=t,cd0=t+62,time=0,sent=false,lv=4})
|
||||
s=20
|
||||
elseif D.wave<20 then
|
||||
B[p]= {line=generateLine(P:RND(3,8)),amount=11,countdown=t,cd0=t,time=0,sent=false,lv=4}
|
||||
B[p+1]= {line=generateLine(P:RND(4,7)),amount=13,countdown=t,cd0=t+62,time=0,sent=false,lv=5}
|
||||
table.insert(P.atkBuffer,{line=generateLine(P:RND(3,8)),amount=11,countdown=t,cd0=t,time=0,sent=false,lv=4})
|
||||
table.insert(P.atkBuffer,{line=generateLine(P:RND(4,7)),amount=13,countdown=t,cd0=t+62,time=0,sent=false,lv=5})
|
||||
s=24
|
||||
else
|
||||
B[p]= {line=generateLine(P:RND(2)*9-8),amount=14,countdown=t,cd0=t,time=0,sent=false,lv=5}
|
||||
B[p+1]= {line=generateLine(P:RND(3,8)),amount=14,countdown=t+62,cd0=t,time=0,sent=false,lv=5}
|
||||
table.insert(P.atkBuffer,{line=generateLine(P:RND(2)*9-8),amount=14,countdown=t,cd0=t,time=0,sent=false,lv=5})
|
||||
table.insert(P.atkBuffer,{line=generateLine(P:RND(3,8)),amount=14,countdown=t+62,cd0=t,time=0,sent=false,lv=5})
|
||||
s=28
|
||||
end
|
||||
B.sum=B.sum+s
|
||||
P.atkBufferSum=P.atkBufferSum+s
|
||||
P.stat.recv=P.stat.recv+s
|
||||
D.wave=D.wave+1
|
||||
if D.wave%10==0 then
|
||||
|
||||
@@ -16,9 +16,9 @@ return{
|
||||
if D.counter>=t then
|
||||
D.counter=0
|
||||
for _=1,4 do
|
||||
P.atkBuffer[#P.atkBuffer+1]={line=generateLine(P:RND(10)),amount=1,countdown=5*t,cd0=5*t,time=0,sent=false,lv=2}
|
||||
table.insert(P.atkBuffer,{line=generateLine(P:RND(10)),amount=1,countdown=5*t,cd0=5*t,time=0,sent=false,lv=2})
|
||||
end
|
||||
P.atkBuffer.sum=P.atkBuffer.sum+4
|
||||
P.atkBufferSum=P.atkBufferSum+4
|
||||
P.stat.recv=P.stat.recv+4
|
||||
D.wave=D.wave+1
|
||||
if D.wave<=75 then
|
||||
|
||||
@@ -16,9 +16,9 @@ return{
|
||||
if D.counter>=t then
|
||||
D.counter=0
|
||||
for _=1,3 do
|
||||
P.atkBuffer[#P.atkBuffer+1]={line=generateLine(P:RND(10)),amount=1,countdown=2*t,cd0=2*t,time=0,sent=false,lv=1}
|
||||
table.insert(P.atkBuffer,{line=generateLine(P:RND(10)),amount=1,countdown=2*t,cd0=2*t,time=0,sent=false,lv=1})
|
||||
end
|
||||
P.atkBuffer.sum=P.atkBuffer.sum+3
|
||||
P.atkBufferSum=P.atkBufferSum+3
|
||||
P.stat.recv=P.stat.recv+3
|
||||
D.wave=D.wave+1
|
||||
if D.wave<=90 then
|
||||
|
||||
@@ -9,9 +9,9 @@ return{
|
||||
if P.control then
|
||||
local D=P.modeData
|
||||
D.timer=D.timer+1
|
||||
if D.timer>=math.max(60,150-2*D.wave)and P.atkBuffer.sum<4 then
|
||||
P.atkBuffer[#P.atkBuffer+1]={line=generateLine(P:RND(10)),amount=1,countdown=30,cd0=30,time=0,sent=false,lv=1}
|
||||
P.atkBuffer.sum=P.atkBuffer.sum+1
|
||||
if D.timer>=math.max(60,150-2*D.wave)and P.atkBufferSum<4 then
|
||||
table.insert(P.atkBuffer,{line=generateLine(P:RND(10)),amount=1,countdown=30,cd0=30,time=0,sent=false,lv=1})
|
||||
P.atkBufferSum=P.atkBufferSum+1
|
||||
P.stat.recv=P.stat.recv+1
|
||||
if D.wave==45 then P:showTextF(text.maxspeed,0,-140,100,'appear',.6)end
|
||||
D.timer=0
|
||||
|
||||
@@ -9,16 +9,17 @@ return{
|
||||
if P.control then
|
||||
local D=P.modeData
|
||||
D.timer=D.timer+1
|
||||
local B=P.atkBuffer
|
||||
if D.timer>=math.max(60,180-2*D.wave)and B.sum<15 then
|
||||
B[#B+1]=
|
||||
D.wave%3<2 and
|
||||
{line=generateLine(P:RND(10)),amount=1,countdown=0,cd0=0,time=0,sent=false,lv=1}
|
||||
or
|
||||
{line=generateLine(P:RND(10)),amount=3,countdown=60,cd0=60,time=0,sent=false,lv=2}
|
||||
local R=(D.wave%3<2 and 1 or 3)
|
||||
B.sum=B.sum+R
|
||||
P.stat.recv=P.stat.recv+R
|
||||
if D.timer>=math.max(60,180-2*D.wave)and P.atkBufferSum<15 then
|
||||
local s
|
||||
if D.wave%3<2 then
|
||||
table.insert(P.atkBuffer,{line=generateLine(P:RND(10)),amount=1,countdown=0,cd0=0,time=0,sent=false,lv=1})
|
||||
s=1
|
||||
else
|
||||
table.insert(P.atkBuffer,{line=generateLine(P:RND(10)),amount=3,countdown=60,cd0=60,time=0,sent=false,lv=2})
|
||||
s=3
|
||||
end
|
||||
P.atkBufferSum=P.atkBufferSum+s
|
||||
P.stat.recv=P.stat.recv+s
|
||||
if D.wave==60 then P:showTextF(text.maxspeed,0,-140,100,'appear',.6)end
|
||||
D.timer=0
|
||||
D.wave=D.wave+1
|
||||
|
||||
@@ -9,10 +9,10 @@ return{
|
||||
if P.control then
|
||||
local D=P.modeData
|
||||
D.timer=D.timer+1
|
||||
if D.timer>=math.max(60,150-D.wave)and P.atkBuffer.sum<20 then
|
||||
if D.timer>=math.max(60,150-D.wave)and P.atkBufferSum<20 then
|
||||
local t=math.max(60,90-D.wave)
|
||||
P.atkBuffer[#P.atkBuffer+1]={line=generateLine(P:RND(10)),amount=4,countdown=t,cd0=t,time=0,sent=false,lv=3}
|
||||
P.atkBuffer.sum=P.atkBuffer.sum+4
|
||||
table.insert(P.atkBuffer,{line=generateLine(P:RND(10)),amount=4,countdown=t,cd0=t,time=0,sent=false,lv=3})
|
||||
P.atkBufferSum=P.atkBufferSum+4
|
||||
P.stat.recv=P.stat.recv+4
|
||||
if D.wave==60 then P:showTextF(text.maxspeed,0,-140,100,'appear',.6)end
|
||||
D.timer=0
|
||||
|
||||
@@ -9,14 +9,15 @@ return{
|
||||
if P.control then
|
||||
local D=P.modeData
|
||||
D.timer=D.timer+1
|
||||
if D.timer>=math.max(90,180-2*D.wave)and P.atkBuffer.sum<8 then
|
||||
if D.timer>=math.max(90,180-2*D.wave)and P.atkBufferSum<8 then
|
||||
local d=D.wave+1
|
||||
P.atkBuffer[#P.atkBuffer+1]=
|
||||
table.insert(P.atkBuffer,
|
||||
d%4==0 and{line=generateLine(P:RND(10)),amount=1,countdown=60,cd0=60,time=0,sent=false,lv=1}or
|
||||
d%4==1 and{line=generateLine(P:RND(10)),amount=2,countdown=70,cd0=70,time=0,sent=false,lv=1}or
|
||||
d%4==2 and{line=generateLine(P:RND(10)),amount=3,countdown=80,cd0=80,time=0,sent=false,lv=2}or
|
||||
d%4==3 and{line=generateLine(P:RND(10)),amount=4,countdown=90,cd0=90,time=0,sent=false,lv=3}
|
||||
P.atkBuffer.sum=P.atkBuffer.sum+d%4+1
|
||||
)
|
||||
P.atkBufferSum=P.atkBufferSum+d%4+1
|
||||
P.stat.recv=P.stat.recv+d%4+1
|
||||
if D.wave==45 then P:showTextF(text.maxspeed,0,-140,100,'appear',.6)end
|
||||
D.timer=0
|
||||
|
||||
@@ -11,14 +11,13 @@ return{
|
||||
if P.control then
|
||||
local D=P.modeData
|
||||
D.timer=D.timer+1
|
||||
if D.timer>=math.max(300,600-10*D.wave)and P.atkBuffer.sum<20 then
|
||||
if D.timer>=math.max(300,600-10*D.wave)and P.atkBufferSum<20 then
|
||||
local t=math.max(300,480-12*D.wave)
|
||||
local p=#P.atkBuffer+1
|
||||
P.atkBuffer[p] ={line=generateLine(P:RND(10)),amount=4,countdown=t,cd0=t,time=0,sent=false,lv=2}
|
||||
P.atkBuffer[p+1]={line=generateLine(P:RND(10)),amount=4,countdown=t,cd0=t,time=0,sent=false,lv=3}
|
||||
P.atkBuffer[p+2]={line=generateLine(P:RND(10)),amount=6,countdown=1.2*t,cd0=1.2*t,time=0,sent=false,lv=4}
|
||||
P.atkBuffer[p+3]={line=generateLine(P:RND(10)),amount=6,countdown=1.5*t,cd0=1.5*t,time=0,sent=false,lv=5}
|
||||
P.atkBuffer.sum=P.atkBuffer.sum+20
|
||||
table.insert(P.atkBuffer,{line=generateLine(P:RND(10)),amount=4,countdown=t,cd0=t,time=0,sent=false,lv=2})
|
||||
table.insert(P.atkBuffer,{line=generateLine(P:RND(10)),amount=4,countdown=t,cd0=t,time=0,sent=false,lv=3})
|
||||
table.insert(P.atkBuffer,{line=generateLine(P:RND(10)),amount=6,countdown=1.2*t,cd0=1.2*t,time=0,sent=false,lv=4})
|
||||
table.insert(P.atkBuffer,{line=generateLine(P:RND(10)),amount=6,countdown=1.5*t,cd0=1.5*t,time=0,sent=false,lv=5})
|
||||
P.atkBufferSum=P.atkBufferSum+20
|
||||
P.stat.recv=P.stat.recv+20
|
||||
if D.wave==31 then P:showTextF(text.maxspeed,0,-140,100,'appear',.6)end
|
||||
D.timer=0
|
||||
|
||||
@@ -127,7 +127,8 @@ local function newEmptyPlayer(id,mini)
|
||||
for i=1,10 do P.dropTime[i]=-1e99 end
|
||||
|
||||
P.field,P.visTime={},{}
|
||||
P.atkBuffer={sum=0}
|
||||
P.atkBuffer={}
|
||||
P.atkBufferSum=0
|
||||
|
||||
--Royale-related
|
||||
P.badge,P.strength=0,0
|
||||
|
||||
@@ -242,7 +242,7 @@ function Player:garbageRelease()--Check garbage buffer and try to release them
|
||||
local A=self.atkBuffer[n]
|
||||
if A and A.countdown<=0 and not A.sent then
|
||||
self:garbageRise(19+A.lv,A.amount,A.line)
|
||||
self.atkBuffer.sum=self.atkBuffer.sum-A.amount
|
||||
self.atkBufferSum=self.atkBufferSum-A.amount
|
||||
A.sent,A.time=true,0
|
||||
self.stat.pend=self.stat.pend+A.amount
|
||||
n=n+1
|
||||
@@ -371,14 +371,11 @@ end
|
||||
function Player:receive(A,send,time,line)
|
||||
self.lastRecv=A
|
||||
local B=self.atkBuffer
|
||||
if send+B.sum>self.gameEnv.bufferLimit then send=self.gameEnv.bufferLimit-B.sum end
|
||||
if send+self.atkBufferSum>self.gameEnv.bufferLimit then send=self.gameEnv.bufferLimit-self.atkBufferSum end
|
||||
if send>0 then
|
||||
local m,k=#B,1
|
||||
while k<=m and time>B[k].countdown do k=k+1 end
|
||||
for i=m,k,-1 do
|
||||
B[i+1]=B[i]
|
||||
end
|
||||
B[k]={
|
||||
ins(B,k,{
|
||||
line=line,
|
||||
amount=send,
|
||||
countdown=time,
|
||||
@@ -386,8 +383,8 @@ function Player:receive(A,send,time,line)
|
||||
time=0,
|
||||
sent=false,
|
||||
lv=min(int(send^.69),5),
|
||||
}--Sorted insert(by time)
|
||||
B.sum=B.sum+send
|
||||
})--Sorted insert(by time)
|
||||
self.atkBufferSum=self.atkBufferSum+send
|
||||
self.stat.recv=self.stat.recv+send
|
||||
if self.sound then
|
||||
SFX.play(send<4 and'blip_1'or'blip_2',min(send+1,5)*.1)
|
||||
@@ -812,7 +809,7 @@ function Player:cancel(N)--Cancel Garbage
|
||||
local off=0--Lines offseted
|
||||
local bf=self.atkBuffer
|
||||
for i=1,#bf do
|
||||
if bf.sum==0 or N==0 then break end
|
||||
if self.atkBufferSum==0 or N==0 then break end
|
||||
local A=bf[i]
|
||||
if not A.sent then
|
||||
local O=min(A.amount,N)--Cur Offset
|
||||
@@ -822,7 +819,7 @@ function Player:cancel(N)--Cancel Garbage
|
||||
A.sent,A.time=true,0
|
||||
end
|
||||
off=off+O
|
||||
bf.sum=bf.sum-O
|
||||
self.atkBufferSum=self.atkBufferSum-O
|
||||
N=N-O
|
||||
end
|
||||
end
|
||||
@@ -1699,7 +1696,7 @@ function Player:lose(force)
|
||||
A.time=0
|
||||
end
|
||||
end
|
||||
self.atkBuffer.sum=0
|
||||
self.atkBufferSum=0
|
||||
|
||||
for i=1,h do
|
||||
self:createClearingFX(i,1.5)
|
||||
|
||||
Reference in New Issue
Block a user