Files
Techmino/modes/techmino99_ultimate.lua
MrZ_26 4da080c6f5 0.8.7
2020-02-14 19:26:57 +08:00

102 lines
2.1 KiB
Lua

local gc=love.graphics
local int,rnd=math.floor,math.random
local powerUp={[0]="000%UP","025%UP","050%UP","075%UP","100%UP",}
local function selectTarget(P)
if setting.swap then
for i=1,#P.keyPressing do
if P.keyPressing[i]then
P.keyPressing[i]=false
end
end
P.keyPressing[9]=true
else
P:changeAtkMode(P.atkMode<3 and P.atkMode+2 or 5-P.atkMode)
P.swappingAtkMode=30
end
end
return{
name={
"99人混战",
"99人混战",
"Techmino99",
},
level={
"极限",
"极限",
"ULTIMATE",
},
info={
"99人混战,活到最后",
"99人混战,活到最后",
"99P melee fight",
},
color=color.lightYellow,
env={
drop=15,lock=60,
fall=20,
royaleMode=true,
Fkey=selectTarget,
pushSpeed=2,
freshLimit=15,
bg="game3",bgm="rockblock",
},
load=function()
royaleData={
powerUp={2,6,14,30},
stage={75,50,35,20,10},
}
newPlayer(1,340,15)
local L={}for i=1,100 do L[i]=true end
local t=system~="Windows"and 0 or 4
while t>0 do
local r=rnd(2,99)
if L[r]then L[r],t=false,t-1 end
end
local n=2
for i=1,7 do for j=1,7 do
if L[n]then
newPlayer(n,46*i-36,97*j-72,.068,AITemplate("9S",rnd(4,6)))
else
newPlayer(n,46*i-36,97*j-72,.068,AITemplate("CC",rnd(4,6)-1,LV+1,true,LV*10000))
end
n=n+1
end end
for i=15,21 do for j=1,7 do
if L[n]then
newPlayer(n,46*i+264,97*j-72,.068,AITemplate("9S",rnd(4,6)))
else
newPlayer(n,46*i+264,97*j-72,.068,AITemplate("CC",rnd(4,6)-1,LV+1,true,LV*10000))
end
n=n+1
end end
end,
mesDisp=function(P,dx,dy)
setFont(35)
mStr(#players.alive.."/99",-82,175)
mStr(P.ko,-70,215)
gc.draw(drawableText.ko,-127,225)
setFont(20)
gc.setColor(1,.5,0,.6)
gc.print(P.badge,-47,227)
gc.setColor(1,1,1)
setFont(25)
gc.print(powerUp[P.strength],-132,290)
for i=1,P.strength do
gc.draw(badgeIcon,16*i-138,260)
end
end,
score=function(P)return{P.rank,P.ko}end,
scoreDisp=function(D)return"NO."..D[1].." KO:"..D[2]end,
comp=function(a,b)return a[1]<b[1]or a[1]==b[1]and a[2]>b[2]end,
getRank=function(P)
local R=P.rank
return
R==1 and 5 or
R==2 and 4 or
R==3 and 3 or
R<=5 and 2 or
R<=7 and 1 or
R<=90 and 0
end,
}