620 lines
16 KiB
Lua
620 lines
16 KiB
Lua
return{
|
||
back="X",
|
||
anykey="↓□↓",
|
||
newVersion="&!!!???↓↓",
|
||
httpTimeout="e??????x",
|
||
marking="Game Author:MrZ_26\nIllegal recording if see this\nAny explanation invalid",
|
||
holdR="→→→→R",
|
||
|
||
atkModeName={"?","( )","!","←→"},
|
||
royale_remain="$1 ~",
|
||
cmb={nil,"!","!!","!!!","!!!!","!!!!!","!!!!!!","!!!!!!!","!!!!!!!!","!!!!!!!!!","!!!!!!!!!!","!!!!!!!!!!!","!!!!!!!!!!!!","!!!!!!!!!!!!!","!!!!!!!!!!!!!!","!!!!!!!!!!!!!!!","!!!!!!!!!!!!!!!!","!!!!!!!!!!!!!!!!!","!!!!!!!!!!!!!!!!!!","!!!!!!!!!!!!!!!!!!!","!!!!!!!!!!!!!!!!!!!!",},
|
||
block=nil,spin=" ~",
|
||
clear={"1","2","3","4","5"},
|
||
mini="v",b2b="^ ",b3b="^^ ",
|
||
PC="#<>#",HPC="<>",
|
||
hold="[ ]",next="→",
|
||
replaying="[Replaying]",
|
||
|
||
stage="::$1::",
|
||
great="!~",
|
||
awesome="!!~",
|
||
almost="...!",
|
||
continue="~~",
|
||
maxspeed="!!!",
|
||
speedup="~!~",
|
||
missionFailed="-X_X-",
|
||
|
||
win=": )",
|
||
finish="&",
|
||
gameover="x",
|
||
pause="=",
|
||
pauseCount="==",
|
||
finesse_ap="AP",
|
||
finesse_fc="FC",
|
||
|
||
snapLevelName={"~","10","20","40","60","80"},
|
||
page=":",
|
||
|
||
ai_fixed="X!!!",
|
||
ai_prebag="X!!!",
|
||
ai_mission="X!!!",
|
||
settingSaved="~~~",
|
||
settingSavingError="x!:",
|
||
keyMapSaved="~~~",
|
||
keyMapSavingError="x!:",
|
||
VKSaved="~~~",
|
||
VKSavingError="x!:",
|
||
statSavingError="x!:",
|
||
unlockSavingError="x!:",
|
||
recSavingError="x!:",
|
||
switchSpawnSFX="Switch on spawn SFX to play",
|
||
ranks={"D","C","B","A","S"},
|
||
|
||
needRestart="!!*#R#*!!",
|
||
copySuccess="~$~",
|
||
pasteSuccess="~v~",
|
||
dataCorrupted="XXXXX",
|
||
VKTchW="Tch↓",
|
||
VKOrgW="Org↓",
|
||
VKCurW="Cur↓",
|
||
noScore="?_____?",
|
||
highScore="__&:",
|
||
newRecord="^!!!^",
|
||
getNoticeFail="get notice failed",
|
||
getVersionFail="get newest version failed",
|
||
versionIsNew="You are now on the latest version.",
|
||
versionIsOld="Version $1 is available now!",
|
||
registerSuccessed="Register successed!",
|
||
registerFailed="Register failed",
|
||
netErrorCode="Network error code",
|
||
noUsername="Input username",
|
||
noPassword="Input password",
|
||
diffPassword="Password don't match",
|
||
errorMsg="An e??o? h@s occ^__ed @nd Techmino n__ds to r_st@rt.\n&**o* in#o h@$ b==n cre@ted, @nd y0u c@n $&nd it to the @uth0r.",
|
||
acts={
|
||
"←:","→:",
|
||
"R→:","←R:","R↑↓:",
|
||
"↓↓:","↓:","□←:","F:","R:",
|
||
"|←:","→|:","↓_:","↓1:","↓4:","↓10:",
|
||
"←↓→↓:","→↓↓:","←↓→↓:","→↓←↓:",
|
||
},
|
||
pauseStat={
|
||
"~:",
|
||
"=/''/[ ]:",
|
||
"□:",
|
||
"-/↓:",
|
||
"→/↓→:",
|
||
"←:",
|
||
"□↓:",
|
||
"~↓:",
|
||
"^^/^^^/#<>#/<>:",
|
||
"!#!X:",
|
||
},
|
||
radar={"DEF","OFF","ATK","SEND","SPD","DIG"},
|
||
radarData={
|
||
"D'PM",
|
||
"ADPM",
|
||
"APM",
|
||
"SPM",
|
||
"L'PM",
|
||
"DPM",
|
||
},
|
||
stat={
|
||
spin="~0-3",
|
||
clear="□1-4",
|
||
"@:",
|
||
"##:",
|
||
"~:",
|
||
"=/''/[ ]:",
|
||
"□/-/→.:",
|
||
"←/-↓/↑:",
|
||
"↓/↓→.:",
|
||
"^%/↓^%:",
|
||
"^/^^:",
|
||
"#<>#/<>:",
|
||
"!#!X/%:",
|
||
},
|
||
help={
|
||
"□□□□~~~, ?_?x ?",
|
||
"□!!~~~,□□□□X",
|
||
"□!!==*/*/*/*~",
|
||
"",
|
||
"bug reports/suggestions, sent to the author's testing group or email ~",
|
||
"This is a free download available only through discord.gg/f9pUvkh",
|
||
"The game downloaded from other sources may contain viruses,",
|
||
"and only vibration & networking permissions are needed for mobile versions!",
|
||
"The author is not responsible for any losses from modifying the game.",
|
||
},
|
||
staff={
|
||
"Author: MrZ E-mail: 1046101471@qq.com",
|
||
"Powered by LOVE2D",
|
||
"",
|
||
"Program: MrZ, FinnTenzor",
|
||
"Art: MrZ, (T0722, Gnyar)",
|
||
"Music: MrZ, (T0722)",
|
||
"Voice & Sound: MrZ, Miya",
|
||
"Performance: 模电, HBM Test: 思竣",
|
||
"Eng Doc: User670 Web: 渣渣120",
|
||
"",
|
||
"Special Thanks:",
|
||
"Flyz, Farter, 蕴空之灵,",
|
||
"Teatube, [All test staff]",
|
||
},
|
||
used=[[
|
||
Tools used:
|
||
Beepbox
|
||
GFIE
|
||
Goldwave
|
||
Lib used:
|
||
Cold_Clear [MinusKelvin]
|
||
json.lua [rxi]
|
||
profile.lua [itraykov]
|
||
simple-love-lights [dylhunn]
|
||
]],
|
||
support="Support author",
|
||
group="Official QQ Group(if not hacked):1127702001",
|
||
WidgetText={
|
||
main={
|
||
play="!!!",
|
||
custom="_?!",
|
||
qplay="!",
|
||
stat="=___",
|
||
help="???",
|
||
setting="_?_",
|
||
lang="言/A",
|
||
music="~~~",
|
||
account="Account",
|
||
sound="=><=",
|
||
minigame="^_^",
|
||
quit="X",
|
||
},
|
||
mode={
|
||
start="!!!",
|
||
},
|
||
play={
|
||
pause="||",
|
||
},
|
||
pause={
|
||
setting="_?_ (S)",
|
||
replay="## (P)",
|
||
resume="!! (esc)",
|
||
restart="_→_ (R)",
|
||
quit="X (Q)",
|
||
},
|
||
setting_game={
|
||
title="%~~%",
|
||
|
||
graphic="←Video",
|
||
sound="Sound→",
|
||
|
||
ctrl="=?=",
|
||
key="=?",
|
||
touch="_?",
|
||
reTime="3-2-1",
|
||
maxNext="=123",
|
||
layout="=-=-=",
|
||
autoPause="A||",
|
||
swap="=+=+=",
|
||
fine="12 X 21",
|
||
appLock="?XX(=626)",
|
||
calc="?XX",
|
||
},
|
||
setting_video={
|
||
title="{~~}",
|
||
sound="←Sound",
|
||
game="Game→",
|
||
|
||
block="==↓==",
|
||
ghost="__↓__",
|
||
center="+",
|
||
|
||
smooth="~~↓~~",
|
||
grid="#",
|
||
bagLine="123|123",
|
||
|
||
lockFX="↓_~",
|
||
dropFX="↓~",
|
||
moveFX="←→~",
|
||
clearFX="↓↓↓~",
|
||
shakeFX="~|~|~",
|
||
atkFX="→→~",
|
||
frame="|=|",
|
||
|
||
text="ABC",
|
||
score="+123",
|
||
warn="!↑↑↑!",
|
||
highCam="↑__↑",
|
||
nextPos="???←",
|
||
fullscreen="|←→|",
|
||
bg="__?__",
|
||
power="+.",
|
||
},
|
||
setting_sound={
|
||
title="(~~)",
|
||
|
||
game="←Game",
|
||
graphic="Video→",
|
||
|
||
sfx="#!#",
|
||
stereo="←~→",
|
||
spawn="#[]#",
|
||
bgm="#~#",
|
||
vib="=~=",
|
||
voc="~~~",
|
||
},
|
||
setting_control={
|
||
title="[~~]",
|
||
preview="?:",
|
||
|
||
das="x---x x x",arr="x x-x-x",
|
||
sddas="↓---↓ ↓ ↓",sdarr="↓ ↓-↓-↓",
|
||
ihs="![ ]",
|
||
irs="!''",
|
||
ims="!←→",
|
||
reset="R",
|
||
},
|
||
setting_key={
|
||
keyboard="[##]",
|
||
joystick="^-^",
|
||
help="..........................",
|
||
},
|
||
setting_skin={
|
||
title="%{~~}",
|
||
|
||
prev="←",next="→",
|
||
prev1="↑",next1="↓",spin1="R",
|
||
prev2="↑",next2="↓",spin2="R",
|
||
prev3="↑",next3="↓",spin3="R",
|
||
prev4="↑",next4="↓",spin4="R",
|
||
prev5="↑",next5="↓",spin5="R",
|
||
prev6="↑",next6="↓",spin6="R",
|
||
prev7="↑",next7="↓",spin7="R",
|
||
skinR="R @%&",
|
||
faceR="R ↑↓←→.",
|
||
},
|
||
setting_touch={
|
||
default="$0",
|
||
snap="_ _",
|
||
option="_?",
|
||
size="←→",
|
||
},
|
||
setting_touchSwitch={
|
||
b1= "←:", b2="→:", b3="R→:", b4="←R:",
|
||
b5= "R↑↓:", b6="↓↓:", b7="↓:", b8="□←:",
|
||
b9= "F:", b10="R:", b11="←←:", b12="→→:",
|
||
b13="↓_:", b14="↓1:", b15="↓4:", b16="↓10:",
|
||
b17="←↓→↓:", b18="→↓↓:", b19="←↓→↓:",b20="→↓←↓:",
|
||
norm="-",
|
||
pro="+",
|
||
hide="--?",
|
||
track="~=?",
|
||
sfx="#!#",
|
||
vib="=~=",
|
||
icon="@?",
|
||
tkset="_~=_",
|
||
alpha="+?",
|
||
},
|
||
setting_trackSetting={
|
||
VKDodge="←_→",
|
||
},
|
||
customGame={
|
||
title="!@#$%^&*",
|
||
subTitle="!!",
|
||
defSeq="0-[123]",
|
||
noMsn="-x-",
|
||
|
||
drop="↓",
|
||
lock="↓_",
|
||
wait="→=",
|
||
fall="↓=",
|
||
|
||
bg="{~}",
|
||
bgm="(~)",
|
||
|
||
copy="Copy Field+Seq+Misn",
|
||
paste="Paste Field+Seq+Misn",
|
||
clear="Start-Clear",
|
||
puzzle="Start-Puzzle",
|
||
|
||
advance="More (A)",
|
||
field="Edit Field (F)",
|
||
sequence="Edit Sequence (S)",
|
||
mission="Edit Mission (M)",
|
||
},
|
||
custom_advance={
|
||
title="!@#$%^&*",
|
||
subTitle="##",
|
||
|
||
next="→",hold="[ ]",oncehold="[ ]*1",
|
||
block="==↓==",
|
||
ghost="__↓__",
|
||
center="+",
|
||
bagLine="123|123",
|
||
highCam="↑__↑",
|
||
nextPos="???←",
|
||
bone="[]",
|
||
|
||
mindas="mDAS",
|
||
minarr="mARR",
|
||
minsdarr="msdARR",
|
||
noTele="X→→X",
|
||
ospin="O→Any",
|
||
target="&=",
|
||
visible="?=",
|
||
freshLimit="@",
|
||
easyFresh="↓_↓_↓_",
|
||
fineKill="12 XX 21",
|
||
opponent="^_^",
|
||
life="<R>",
|
||
pushSpeed="_↑_↑_",
|
||
},
|
||
custom_field={
|
||
title="!@#$%^&*",
|
||
subTitle="!@#$%^&* [##]",
|
||
|
||
b12="[ ]",
|
||
any="_",
|
||
space="×",
|
||
copy="→__",
|
||
paste="__→",
|
||
clear="XXX",
|
||
pushLine="↑↑↑↑↑(K)",
|
||
delLine="==X==(L)",
|
||
demo="X ×",
|
||
},
|
||
custom_sequence={
|
||
title="!@#$%^&*",
|
||
subTitle="Sequence",
|
||
|
||
sequence="$=",
|
||
|
||
Z="Z",S="S",J="J",L="L",T="T",O="O",I="I",
|
||
Z5="Z5",S5="S5",P="P",Q="Q",F="F",E="E",T5="T5",U="U",
|
||
V="V",W="W",X="X",J5="J5",L5="L5",R="R",Y="Y",N="N",H="H",I5="I5",
|
||
left="←",
|
||
right="→",
|
||
ten="→→",
|
||
backsp="<X",
|
||
reset="R",
|
||
copy="→__",
|
||
paste="__→",
|
||
},
|
||
custom_mission={
|
||
title="!@#$%^&*",
|
||
subTitle="(!)",
|
||
|
||
_1="1",_2="2",_3="3",_4="4",
|
||
any1="any1",any2="any2",any3="any3",any4="any4",
|
||
PC="PC",
|
||
Z1="Z1",S1="S1",J1="J1",L1="L1",T1="T1",O1="O1",I1="I1",
|
||
Z2="Z2",S2="S2",J2="J2",L2="L2",T2="T2",O2="O2",I2="I2",
|
||
Z3="Z3",S3="S3",J3="J3",L3="L3",T3="T3",O3="O3",I3="I3",
|
||
O4="O4",I4="I4",
|
||
left="←",right="→",
|
||
ten="→→",
|
||
backsp="<X",
|
||
reset="R",
|
||
copy="Copy",
|
||
paste="Paste",
|
||
mission="Force mission",
|
||
},
|
||
help={
|
||
dict="z",
|
||
staff="Orz",
|
||
his="_&_",
|
||
qq="_@_",
|
||
},
|
||
dict={
|
||
title="TetroDictionary",
|
||
keyboard="□□□",
|
||
link="~~e>>",
|
||
up="↑",
|
||
down="↓",
|
||
},
|
||
stat={
|
||
path="_$_",
|
||
},
|
||
music={
|
||
title="(~~~~)",
|
||
arrow="→",
|
||
now="~:",
|
||
|
||
bgm="#~#",
|
||
up="↑",
|
||
play="!!!",
|
||
down="↓",
|
||
},
|
||
login={
|
||
title="Log in / Sign up",
|
||
username="#",
|
||
email="@",
|
||
code="%",
|
||
password="*",
|
||
password2="*",
|
||
},
|
||
account={
|
||
title="@_@",
|
||
},
|
||
sound={
|
||
title="SE Room",
|
||
move="←→",
|
||
lock="Lock",
|
||
drop="Drop",
|
||
fall="Fall",
|
||
rotate="''",
|
||
rotatekick="''_",
|
||
hold="[ ]",
|
||
prerotate="!''",
|
||
prehold="![ ]",
|
||
|
||
_1="1",
|
||
_2="2",
|
||
_3="3",
|
||
_4="4",
|
||
spin0="~0",
|
||
spin1="~1",
|
||
spin2="~2",
|
||
spin3="~3",
|
||
|
||
z0="Z ~",
|
||
z1="Z ~ 1",
|
||
z2="Z ~ 2",
|
||
z3="Z ~ 3",
|
||
s0="S ~",
|
||
s1="S ~ 1",
|
||
s2="S ~ 2",
|
||
s3="S ~ 3",
|
||
|
||
j0="J ~",
|
||
j1="J ~ 1",
|
||
j2="J ~ 2",
|
||
j3="J ~ 3",
|
||
l0="L ~",
|
||
l1="L ~ 1",
|
||
l2="L ~ 2",
|
||
l3="L ~ 3",
|
||
|
||
t0="T ~",
|
||
t1="T ~ 1",
|
||
t2="T ~ 2",
|
||
t3="T ~ 3",
|
||
o0="O ~",
|
||
o1="O ~ 1",
|
||
o2="O ~ 2",
|
||
o3="O ~ 3",
|
||
|
||
i0="I ~",
|
||
i1="I ~ 1",
|
||
i2="I ~ 2",
|
||
i3="I ~ 3",
|
||
|
||
mini="v",
|
||
b2b="^",
|
||
b3b="^^",
|
||
pc="#<>#",
|
||
},
|
||
minigame={
|
||
p15="15 Puzzle",
|
||
schulte_G="Schulte Grid",
|
||
pong="Pong",
|
||
},
|
||
p15={
|
||
reset="!@#$%",
|
||
color="~~~",
|
||
blind="???",
|
||
slide="~_~",
|
||
pathVis="--==>",
|
||
revKB="Reverse",
|
||
},
|
||
schulte_G={
|
||
reset="!@#$%",
|
||
rank="←?→",
|
||
blind="???",
|
||
disappear="=X=",
|
||
tapFX="↓ !",
|
||
},
|
||
pong={
|
||
reset="R",
|
||
},
|
||
debug={
|
||
reset="Reset?",
|
||
reset1="Reset rank",
|
||
reset2="Reset data",
|
||
reset3="Reset ALL",
|
||
},
|
||
},
|
||
modes={
|
||
["sprint_10"]= {"Sprint", "10L", "Clear 10 lines!"},
|
||
["sprint_20"]= {"Sprint", "20L", "Clear 20 lines!"},
|
||
["sprint_40"]= {"Sprint", "40L", "Clear 40 lines!"},
|
||
["dig_10"]= {"Dig", "10L", "Dig 10 lines"},
|
||
["dig_40"]= {"Dig", "40L", "Dig 40 lines"},
|
||
["dig_100"]= {"Dig", "100L", "Dig 100 lines"},
|
||
["dig_400"]= {"Dig", "400L", "Dig 400 lines"},
|
||
["dig_1000"]= {"Dig", "1000L", "Dig 1000 lines"},
|
||
["sprint_100"]= {"Sprint", "100L", "Clear 100 lines!"},
|
||
["sprint_400"]= {"Sprint", "400L", "Clear 400 lines!"},
|
||
["sprint_1000"]= {"Sprint", "1000L", "Clear 1000 lines!"},
|
||
["drought_normal"]= {"Drought", "100L", "No I piece!"},
|
||
["drought_lunatic"]= {"Drought", "100L", "WTF"},
|
||
["marathon_normal"]= {"Marathon", "NORMAL", "200-line marathon with accelerating speed."},
|
||
["marathon_hard"]= {"Marathon", "HARD", "200-line high-speed marathon."},
|
||
["marathon_ultimate"]= {"Marathon", "Ultimate", "Regular singles without combo only"},
|
||
["solo_1"]= {"Battle", "EASY", "Defeat the AI!"},
|
||
["solo_2"]= {"Battle", "NORMAL", "Defeat the AI!"},
|
||
["solo_3"]= {"Battle", "HARD", "Defeat the AI!"},
|
||
["solo_4"]= {"Battle", "LUNATIC", "Defeat the AI!"},
|
||
["solo_5"]= {"Battle", "ULTIMATE", "Defeat the AI!"},
|
||
["techmino49_easy"]= {"Tech 49", "EASY", "49-player battle.\nThe last one standing wins."},
|
||
["techmino49_hard"]= {"Tech 49", "HARD", "49-player battle.\nThe last one standing wins."},
|
||
["techmino49_ultimate"]={"Tech 49", "ULTIMATE", "49-player battle.\nThe last one standing wins."},
|
||
["techmino99_easy"]= {"Tech 99", "EASY", "99-player battle.\nThe last one standing wins."},
|
||
["techmino99_hard"]= {"Tech 99", "HARD", "99-player battle.\nThe last one standing wins."},
|
||
["techmino99_ultimate"]={"Tech 99", "ULTIMATE", "99-player battle.\nThe last one standing wins."},
|
||
["round_1"]= {"Turn-Based", "EASY", "Chess mode"},
|
||
["round_2"]= {"Turn-Based", "NORMAL", "Chess mode"},
|
||
["round_3"]= {"Turn-Based", "HARD", "Chess mode"},
|
||
["round_4"]= {"Turn-Based", "LUNATIC", "Chess mode"},
|
||
["round_5"]= {"Turn-Based", "ULTIMATE", "Chess mode"},
|
||
["master_beginner"]= {"Master", "LUNATIC", "For 20G beginners."},
|
||
["master_advance"]= {"Master", "ULTIMATE", "Professional 20G challenge!"},
|
||
["master_final"]= {"Master", "FINAL", "20G: Unreachable end point!"},
|
||
["GM"]= {"GrandMaster", "GM", "To be Grand Master"},
|
||
["blind_easy"]= {"Blind", "HALF", "For novice players."},
|
||
["blind_normal"]= {"Blind", "ALL", "For intermediate players."},
|
||
["blind_hard"]= {"Blind", "SUDDEN", "For experienced players."},
|
||
["blind_lunatic"]= {"Blind", "SUDDEN+", "For professionals."},
|
||
["blind_ultimate"]= {"Blind", "?", "R U Ready?"},
|
||
["blind_wtf"]= {"Blind", "WTF", "i m not ready"},
|
||
["classic_fast"]= {"Classic", "CTWC", "High-speed classic mode."},
|
||
["survivor_easy"]= {"Survivor", "EASY", "How long can you survive?"},
|
||
["survivor_normal"]= {"Survivor", "NORMAL", "How long can you survive?"},
|
||
["survivor_hard"]= {"Survivor", "HARD", "How long can you survive?"},
|
||
["survivor_lunatic"]= {"Survivor", "LUNATIC", "How long can you survive?"},
|
||
["survivor_ultimate"]= {"Survivor", "ULTIMATE", "How long can you survive?"},
|
||
["attacker_hard"]= {"Attacker", "HARD", "Offensive practice!"},
|
||
["attacker_ultimate"]= {"Attacker", "ULTIMATE", "Offensive practice!"},
|
||
["defender_normal"]= {"Defender", "NORMAL", "Defensive practice!"},
|
||
["defender_lunatic"]= {"Defender", "LUNATIC", "Defensive practice!"},
|
||
["dig_hard"]= {"Driller", "HARD", "Digging practice!"},
|
||
["dig_ultimate"]= {"Driller", "ULTIMATE", "Digging practice!"},
|
||
["bigbang"]= {"Big Bang", "EASY", "All-spin tutorial!\n[Under construction]"},
|
||
["c4wtrain_normal"]= {"C4W Training", "NORMAL", "Infinite combos."},
|
||
["c4wtrain_lunatic"]= {"C4W Training", "LUNATIC", "Infinite combos."},
|
||
["pctrain_normal"]= {"PC Training", "NORMAL", "Simple Perfect Clear mode."},
|
||
["pctrain_lunatic"]= {"PC Training", "LUNATIC", "Simple Perfect Clear mode."},
|
||
["pcchallenge_normal"]= {"PC Challenge", "NORMAL", "Get PCs within 100 lines!"},
|
||
["pcchallenge_hard"]= {"PC Challenge", "HARD", "Get PCs within 100 lines!"},
|
||
["pcchallenge_lunatic"]={"PC Challenge", "LUNATIC", "Get PCs within 100 lines!"},
|
||
["tech_normal"]= {"Tech", "NORMAL", "Keep the B2B chain!"},
|
||
["tech_normal2"]= {"Tech", "NORMAL+", "Spin & PC only"},
|
||
["tech_hard"]= {"Tech", "HARD", "Keep the B2B chain!"},
|
||
["tech_hard2"]= {"Tech", "HARD+", "Spin & PC only"},
|
||
["tech_lunatic"]= {"Tech", "LUNATIC", "Keep the B2B chain!"},
|
||
["tech_lunatic2"]= {"Tech", "LUNATIC+", "Spin & PC only"},
|
||
["tech_finesse"]= {"Tech", "FINESSE", "No finesse faults!"},
|
||
["tech_finesse2"]= {"Tech", "FINESSE+", "No normal clears, no finesse faults!"},
|
||
["tsd_easy"]= {"TSD Challenge", "EASY", "T-spin-doubles only!"},
|
||
["tsd_hard"]= {"TSD Challenge", "HARD", "T-spin-doubles only!"},
|
||
["tsd_ultimate"]= {"TSD Challenge", "ULTIMATE", "T-spin-doubles only!"},
|
||
["zen"]= {"Zen", "200", "200 lines without a time limit."},
|
||
["ultra"]= {"Ultra", "EXTRA", "Get the highest score within 2 min."},
|
||
["infinite"]= {"Infinite", "", "Sandbox mode."},
|
||
["infinite_dig"]= {"Infinite: Dig", "", "Dig, dig, dig."},
|
||
["custom_clear"]= {"Custom", "NORMAL", "Draw something then clear it!!"},
|
||
["custom_puzzle"]= {"Custom", "PUZZLE", "Draw something then stack it!!"},
|
||
["sprintFix"]= {"Sprint", "NO LEFT/RIGHT","It's possible."},
|
||
["sprintLock"]= {"Sprint", "NO ROTATIONS", "It's impossible."},
|
||
["sprintPenta"]= {"Sprint", "PENTOMINO", "Clear 40 lines with 18 pentominoes."},
|
||
["sprintMPH"]= {"Sprint", "MPH", "Memoriyless\nPreviewless\nHoldless"},
|
||
},
|
||
getTip=function()
|
||
local L={'!','@','#','$','%','^','&','*','(',')','-','=','_','+','[',']','{','}','\\','|',';',':','\'','"',',','<','.','>','/','?'}
|
||
local s=""
|
||
for _=1,math.random(16,26)do
|
||
s=s..L[math.random(#L)]
|
||
end
|
||
return s
|
||
end,
|
||
} |