diff options
Diffstat (limited to 'common/chunk.lua')
-rw-r--r-- | common/chunk.lua | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/common/chunk.lua b/common/chunk.lua index 39fcaaf..563723e 100644 --- a/common/chunk.lua +++ b/common/chunk.lua @@ -1,6 +1,7 @@ local json = require"common.dkjson" local class = require"common.class" local coords = require"common.coords" +local rle = require"common.rle" local CHUNK_SIZE = require"common.constants".CHUNK_SIZE @@ -32,14 +33,14 @@ function Chunk.set_at(self,hoffs,tile) end function Chunk.data_packet(self) - return json.encode{t="chunk",tiles=self.tiles,u=self.cp.u,v=self.cp.v} + return json.encode{t="chunk",tiles=rle.encode(self.tiles),u=self.cp.u,v=self.cp.v} end function Chunk.from_packet_data(cls,packet) -- assuming packet has already been json.decoded -- since otherwise how would we know it's a chunk packet local cp = coords.ChunkPos:make(packet.u,packet.v) - return cls:make(cp,packet.tiles) + return cls:make(cp,rle.decode(packet.tiles)) end return { |