From 4d3ccfdd00bdbcd144dd8d283e1d0d4e150bd9f1 Mon Sep 17 00:00:00 2001 From: Aki Date: Fri, 20 Jan 2017 13:09:32 +0100 Subject: Metatable of Animated for Decoration and Ground --- decoration.lua | 3 +-- ground.lua | 17 ++++++----------- 2 files changed, 7 insertions(+), 13 deletions(-) diff --git a/decoration.lua b/decoration.lua index 9552b09..609983a 100644 --- a/decoration.lua +++ b/decoration.lua @@ -28,6 +28,5 @@ function Decoration:draw(offset_x, offset_y, scale) local draw_x = (math.floor(x) + offset_x) * scale local draw_y = (math.floor(y) + offset_y) * scale -- draw - love.graphics.setColor(255,255,255,255) - love.graphics.draw(self.sprite, draw_x, draw_y, 0, scale, scale) + Animated.draw(self, draw_x, draw_y, 0, scale, scale) end \ No newline at end of file diff --git a/ground.lua b/ground.lua index cd2b607..50ded4f 100644 --- a/ground.lua +++ b/ground.lua @@ -3,6 +3,7 @@ -- Collision category: [1] -- WHOLE CODE HAS FLAG OF "need a cleanup" +require "animated" -- Metatable of `Ground` -- nils initialized in constructor @@ -11,13 +12,14 @@ Ground = { shape = nil, fixture = nil, world = nil, - sprite = nil } +Ground.__index = Ground +setmetatable(Ground, Animated) + -- Constructor of `Ground` function Ground:new (game, world, x, y, shape, sprite) local o = {} setmetatable(o, self) - self.__index = self o.body = love.physics.newBody(world, x, y) -- MULTIPLE SHAPES NEED TO BE REWRITED! o.shape = {} @@ -37,17 +39,11 @@ function Ground:new (game, world, x, y, shape, sprite) end end -- END HERE - o.sprite = love.graphics.newImage(sprite) + o:setSprite(love.graphics.newImage(sprite)) o.world = game return o end --- Destructor of `Ground` -function Ground:delete () - -- body deletion is handled by world deletion - self.sprite = nil -end - -- Position function Ground:getPosition() return self.body:getPosition() @@ -65,8 +61,7 @@ function Ground:draw (offset_x, offset_y, scale, debug) local draw_x = (math.floor(x) + offset_x) * scale local draw_y = (math.floor(y) + offset_y) * scale -- sprite draw - love.graphics.setColor(255,255,255,255) - love.graphics.draw(self.sprite, draw_x, draw_y, 0, scale, scale) + Animated.draw(self, draw_x, draw_y, 0, scale, scale) -- debug draw if debug then love.graphics.setColor(255, 69, 0, 140) -- cgit v1.1