summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid McMackins II <contact@mcmackins.org>2017-08-02 07:00:55 -0500
committerDavid McMackins II <contact@mcmackins.org>2017-08-02 07:00:55 -0500
commit70c59da35ac6fd95b39284a0bd41c3725ed688f8 (patch)
tree0d7909061c85f9d7b8dacea9c90ba15abc233b3a
parentda8ba2d274e7475f22695deaae7bc5a8e8dc326d (diff)
Simplify adding new pieces
-rw-r--r--serverthread.lua26
1 files changed, 15 insertions, 11 deletions
diff --git a/serverthread.lua b/serverthread.lua
index 2602ce9..e55cded 100644
--- a/serverthread.lua
+++ b/serverthread.lua
@@ -53,10 +53,23 @@ function Server:_cleanup()
self._srv:close()
end
+function Server:_updateall(lines)
+ for _,queue in ipairs(self._updatequeue) do
+ for __,line in ipairs(lines) do
+ table.insert(queue, line)
+ end
+ end
+end
+
function Server:_addpiece(new)
for i,piece in ipairs(self._pieces) do
if not piece then
+ new.id = i
self._pieces[i] = new
+ self:_updateall({'PIECE ' .. i,
+ 'SIZE ' .. i .. ' ' .. new.size,
+ 'TEAM ' .. i .. ' ' .. new.team,
+ 'MOVE ' .. i .. ' ' .. new.x .. ' ' .. new.y})
return
end
end
@@ -77,21 +90,12 @@ function Server:_resetgame()
table.insert(self._pieces, nil)
end
+ self._updatequeue[1] = { 'CLEARBOARD' }
+ self._updatequeue[2] = { 'CLEARBOARD' }
self:_initrow(2, 1)
self:_initrow(1, 2)
self:_initrow(2, 3)
- self._updatequeue[1] = { 'CLEARBOARD' }
- self._updatequeue[2] = { 'CLEARBOARD' }
- for i,piece in ipairs(self._pieces) do
- piece.id = i
-
- for _,queue in ipairs(self._updatequeue) do
- table.insert(queue, 'PIECE ' .. i .. ' ' .. piece.x .. ' ' .. piece.y
- .. ' ' .. piece.team)
- end
- end
-
self._turn = 1
self._selected = nil
self._targetspace = nil