From ae71968909c597a6ad11b3e5d599fd7b91c140e2 Mon Sep 17 00:00:00 2001 From: MrZ626 <1046101471@qq.com> Date: Sat, 14 Nov 2020 22:35:53 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=A4=E4=B8=AAC2=E8=B8=A2=E5=A2=99=E8=A1=A8?= =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- parts/kickList.lua | 48 ++++++++++++++++++++++++++++++++++------------ 1 file changed, 36 insertions(+), 12 deletions(-) diff --git a/parts/kickList.lua b/parts/kickList.lua index 7cf55dd0..0937cd1e 100644 --- a/parts/kickList.lua +++ b/parts/kickList.lua @@ -1,7 +1,9 @@ local zero={0,0} -local Zero={zero} -local ZERO={[01]=Zero,[10]=Zero,[03]=Zero,[30]=Zero,[12]=Zero,[21]=Zero,[32]=Zero,[23]=Zero} -local ZERO_180={[01]=Zero,[10]=Zero,[03]=Zero,[30]=Zero,[12]=Zero,[21]=Zero,[32]=Zero,[23]=Zero,[02]=Zero,[20]=Zero,[13]=Zero,[31]=Zero} +local ZERO,ZERO_180 do + local Zero={zero} + ZERO={[01]=Zero,[10]=Zero,[03]=Zero,[30]=Zero,[12]=Zero,[21]=Zero,[32]=Zero,[23]=Zero} + ZERO_180={[01]=Zero,[10]=Zero,[03]=Zero,[30]=Zero,[12]=Zero,[21]=Zero,[32]=Zero,[23]=Zero,[02]=Zero,[20]=Zero,[13]=Zero,[31]=Zero} +end local map={} for x=-3,3 do map[x]={}for y=-3,3 do map[x][y]={x,y}end end @@ -56,8 +58,8 @@ end local TRS do local OspinList={ - {111,5,2, 0,-1,0},{111,5,2,-1,-1,0},{111,5,0,-1, 0,0},--t - {333,5,2,-1,-1,0},{333,5,2, 0,-1,0},{333,5,0, 0, 0,0},--t + {111,5,2, 0,-1,0},{111,5,2,-1,-1,0},{111,5,0,-1, 0,0},--T + {333,5,2,-1,-1,0},{333,5,2, 0,-1,0},{333,5,0, 0, 0,0},--T {313,1,2,-1, 0,0},{313,1,2, 0,-1,0},{313,1,2, 0, 0,0},--Z {131,2,2, 0, 0,0},{131,2,2,-1,-1,0},{131,2,2,-1, 0,0},--S {331,3,2, 0,-1,0},{113,3,0, 0, 0,0},{113,3,2,-1, 0,0},--J @@ -115,7 +117,7 @@ do [20]={{ 1, 0},{-1, 0},{ 0,-1}}, [13]={{ 0,-1},{ 0, 1},{ 1, 0},{ 0,-2},{ 0, 2}}, [31]={{ 0,-1},{ 0, 1},{-1, 0},{ 0,-2},{ 0, 2}}, - },--t + },--T function(P,d) if P.human then SFX.fieldPlay("rotate",nil,P)end if not P.gameEnv.ospin then return end @@ -383,7 +385,7 @@ end local C2 do - local L={{0,0},{-1,0},{1,0},{0,-1},{-1,-1},{1,-1}} + local L={{0,0},{-1,0},{1,0},{0,-1},{-1,-1},{1,-1},{0,-2},{0,2}} C2={{[01]=L,[10]=L,[12]=L,[21]=L,[23]=L,[32]=L,[30]=L,[03]=L}} collect(C2[1]) for i=2,25 do C2[i]=C2[1]end @@ -391,11 +393,33 @@ end local C2sym do - local L1={{0,0},{-1,0},{1,0},{0,-1},{-1,-1},{1,-1}} - local L2={{0,0},{-1,0},{1,0},{0,-1},{-1,-1},{1,-1}} - C2sym={{[01]=L1,[10]=L2,[12]=L1,[21]=L2,[23]=L1,[32]=L2,[30]=L1,[03]=L2,[02]=L1,[20]=L1,[13]=L1,[31]=L2}} - collect(C2sym[1]) - for i=2,25 do C2sym[i]=C2sym[1]end + local L={{0,0},{-1,0},{1,0},{0,-1},{-1,-1},{1,-1},{0,-2},{0,2}} + local R={{0,0},{-1,0},{1,0},{0,-1},{-1,-1},{1,-1},{0,2},{0,-2}} + + local Z={ + [01]=R,[10]=L,[03]=L,[30]=R, + [12]=R,[21]=L,[32]=L,[23]=R, + [02]=R,[20]=L,[13]=L,[31]=R, + } + collect(Z) + local S=reflect(Z) + collect(S) + + C2sym={ + Z,S,--Z,S + Z,S,--JL + Z,--T + ZERO,--O + Z,--I + Z,S,--Z5,S5 + Z,S,--P,Q + Z,S,--F,E + Z,Z,Z,Z,--T5,U,V,W + ZERO,--X + Z,S,--J5,L5 + Z,S,--R,Y + Z,S,--N,H + } end local None={}