class Core::Tileset
Attributes
filename[R]
first[R]
name[R]
props[R]
tiles[R]
Public Class Methods
new(fgid, name, filename, props)
click to toggle source
# File lib/tileset.rb, line 8 def initialize(fgid, name, filename, props) @first = fgid @name = name if !@@tilesets[filename] @@tilesets[filename] = Gosu::Image.load_tiles(Core.window, "#{Core::LIBRARY_PATH}/#{filename}", 32, 32, true) end @tiles = @@tilesets[filename].dup @props = props @props.default = {} @filename = filename @filled = [] end
Public Instance Methods
create_tiles()
click to toggle source
# File lib/tileset.rb, line 20 def create_tiles @filled = [] i = 0 @tiles.each { |tile| @filled.push(Core::Game::Tile.new(tile, 0, 0, 0, @props[i])) i += 1 } return @filled end
tile(gid, x, y, z)
click to toggle source
# File lib/tileset.rb, line 29 def tile(gid, x, y, z) if gid < 0 return nil end if @filled.empty? create_tiles end tile = @filled[gid].dup tile.x, tile.y = x, y tile.z = z return tile end