From 950a6b42c26ff4cb259eb06858fbeb843cad0cb2 Mon Sep 17 00:00:00 2001 From: MrZ626 <1046101471@qq.com> Date: Thu, 11 Feb 2021 00:50:55 +0800 Subject: [PATCH] =?UTF-8?q?=E5=89=8A=E5=BC=B1PC=E6=94=BB=E5=87=BB=E5=8A=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- parts/language/manual_en.lua | 2 +- parts/language/manual_zh.lua | 2 +- parts/player/player.lua | 50 ++++++++++++++++++------------------ 3 files changed, 27 insertions(+), 27 deletions(-) diff --git a/parts/language/manual_en.lua b/parts/language/manual_en.lua index b594e78b..2b779280 100644 --- a/parts/language/manual_en.lua +++ b/parts/language/manual_en.lua @@ -36,7 +36,7 @@ Attack system: Attack +2, Extra Blocking +2 Perfect Clear (aka All Clear): - half the sum of the damage above, plus additional 8 to 20 attack (increasing by 2 in a single round for each PC) + take the greater of 8 to 20 attack (increasing by 2 in a single round for each PC) and the sum of the damage above then +2 extra blocking.(note: if lines cleared in this round >4, then B2B gauge will be filled) Combos: All damage above will be given a (combo x25%) bonus, or (combo x15% for Single clear) (capped at 12 combo), diff --git a/parts/language/manual_zh.lua b/parts/language/manual_zh.lua index f723926d..c4a5a0b4 100644 --- a/parts/language/manual_zh.lua +++ b/parts/language/manual_zh.lua @@ -28,7 +28,7 @@ spin判定: B3B攻击+50%,+1额外抵挡 特殊消除会增加B2B点数,让之后的特殊消除获得B2B(B3B)增益(详细说明见下文) 半全消("下方有剩余方块"的全消,如果是I消1行则必须不剩余玩家放置的方块):伤害+2,额外抵挡+2 - 全消:将上述伤害之和减半,再+8~20(本局内递增2),+2额外抵挡(注:本局消行数>4时会将B2B点数拉满) + 全消:全消伤害为8~16(本局内递增2),和上述其他伤害取大,然后+2额外抵挡(注:本局消行数>4时会将B2B点数拉满) 连击:每次连击给予上述攻击[连击数*25%(上限12连)(如果只消一行就是15%)]的加成,>=3次时再额外加1攻击 根据上述规则计算后,向下取整,攻击打出 diff --git a/parts/player/player.lua b/parts/player/player.lua index b357c509..04c934af 100644 --- a/parts/player/player.lua +++ b/parts/player/player.lua @@ -1170,10 +1170,33 @@ do--Player.drop(P)--Place piece VOC.play(clearVoice[cc],CHN) end - --PC/HPC bonus + --Normal clear, reduce B2B point + if not piece.special then + P.b2b=max(P.b2b-250,0) + if P.b2b<50 and ENV.b2bKill then + finish=true + end + P:showText(text.clear[cc],0,-30,35,"appear",(8-cc)*.3) + atk=cc-.5 + sendTime=20+int(atk*20) + cscore=cscore+clearSCR[cc] + end + + --Combo bonus + sendTime=sendTime+25*cmb + if cmb>1 then + atk=atk*(1+(cc==1 and .15 or .25)*min(cmb-1,12)) + if cmb>=3 then + atk=atk+1 + end + P:showText(text.cmb[min(cmb,21)],0,25,15+min(cmb,15)*5,cmb<10 and"appear"or"flicker") + cscore=cscore+min(50*cmb,500)*(2*cc-1) + end + + --PC/HPC if clear and #P.field==0 then P:showText(text.PC,0,-80,50,"flicker") - atk=atk*.5+min(8+STAT.pc*2,20) + atk=max(atk,min(8+STAT.pc*2,16)) exblock=exblock+2 sendTime=sendTime+120 if STAT.row+cc>4 then @@ -1204,29 +1227,6 @@ do--Player.drop(P)--Place piece piece.special=true end - --Normal clear, reduce B2B point - if not piece.special then - P.b2b=max(P.b2b-250,0) - if P.b2b<50 and ENV.b2bKill then - finish=true - end - P:showText(text.clear[cc],0,-30,35,"appear",(8-cc)*.3) - atk=cc-.5 - sendTime=20+int(atk*20) - cscore=cscore+clearSCR[cc] - end - - --Combo bonus - sendTime=sendTime+25*cmb - if cmb>1 then - atk=atk*(1+(cc==1 and .15 or .25)*min(cmb-1,12)) - if cmb>=3 then - atk=atk+1 - end - P:showText(text.cmb[min(cmb,21)],0,25,15+min(cmb,15)*5,cmb<10 and"appear"or"flicker") - cscore=cscore+min(50*cmb,500)*(2*cc-1) - end - if P.b2b>1000 then P.b2b=1000 end --Bonus atk/def when focused