Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local sprite = require "sprite"
- local character = {}
- character.spriteSet = setmetatable({},
- {
- __index = function(t, size)
- local new = setmetatable({},
- {
- __index = function(t, name)
- local set = sprite.newSpriteSet(
- sprite.newSpriteSheet("visuals/character_" .. name .. ".png", size, size),
- 1, 12)
- sprite.add(character.Set, "Stationary", 1, 2, 500)
- sprite.add(character.Set, "Selected", 3, 2, 500)
- sprite.add(character.Set, "MoveUp", 5, 2, 500)
- sprite.add(character.Set, "MoveDown", 7, 2, 500)
- sprite.add(character.Set, "MoveLeft", 9, 2, 500)
- sprite.add(character.Set, "MoveRight", 11, 2, 500)
- t[name] = set
- return set
- end
- }
- )
- t[size] = new
- return new
- end
- }
- )
- function character.Move(self, size, xTile, yTile)
- self.x, self.y = xTile * size, yTile * size + 20
- self.xTile, self.yTile = xTile, yTile
- end
- function character.Create(spritesheet, size, health, move, attack, defense, xTile, yTile)
- local self = sprite.newSprite(character.spriteSet[size][spritesheet])
- self:setReferencePoint(display.TopLeftReferencePoint)
- function self:Move(...)
- return character.Move(self, size, ...)
- end
- self:Move(xTile, yTile)
- self:prepare("Stationary")
- self:play()
- return self
- end
- return character
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement