修正解除自定义场地绘制高度限制后出现的其他衍生问题

“自定义场地页面”使用元表实现自动补充尺寸(编辑之后需要手动清空多余空行,目前仅一处)
This commit is contained in:
MrZ626
2021-10-06 22:27:02 +08:00
parent 3060d89ed4
commit d932a0a990
5 changed files with 37 additions and 66 deletions

View File

@@ -60,32 +60,21 @@ function DATA.pasteSequence(str)
return true
end
function DATA.newBoard(f)--Generate a new board
if f then
return TABLE.shift(f)
else
local F={}
for i=1,20 do F[i]={0,0,0,0,0,0,0,0,0,0}end
return F
local fieldMeta={__index=function(self,h)
for i=#self+1,h do
self[i]={0,0,0,0,0,0,0,0,0,0}
end
return self[h]
end}
function DATA.newBoard(f)--Generate a new board
return setmetatable(f and TABLE.shift(f)or{},fieldMeta)
end
function DATA.copyBoard(page)--Copy the [page] board
local F=FIELD[page or 1]
local str=""
local H=0
for y=20,1,-1 do
for x=1,10 do
if F[y][x]~=0 then
H=y
goto BREAK_topFound
end
end
end
::BREAK_topFound::
--Encode field
for y=1,H do
for y=1,#F do
local S=""
local L=F[y]
for x=1,10 do
@@ -144,12 +133,6 @@ function DATA.pasteBoard(str,page)--Paste [str] data to [page] board
p=p+1
end
for y=fY,20 do
for x=1,10 do
F[y][x]=0
end
end
return true
end