Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #==========================================================================
- # TileViewer 1.0 -
- # DARK SKY -
- # PERFECT TOOL FOR DARK'S HOUSE DECORATING SYSTEM -
- #==========================================================================
- # Put this Below Dark's House Decorating System Script.
- #--------------------------------------------------------------------------
- # F8 : Open Scene
- #==========================================================================
- class Scene_TileViewer < Scene_Base
- include Dark_HouseDecorate
- TILE_PAGE = ["B","C","D","E"]
- #--------------------------------------------------------------------------
- # * Create Tilemap
- #--------------------------------------------------------------------------
- def create_tilemap
- @viewport1 = Viewport.new
- @tilemap = Tilemap.new(@viewport1)
- @map = load_data(sprintf("Data/Map%03d.rvdata2", $game_map.map_id))
- @tilemap.map_data = @map.data
- load_tileset
- end
- #--------------------------------------------------------------------------
- # * Load Tileset
- #--------------------------------------------------------------------------
- def load_tileset
- @tileset = $game_map.tileset
- @tileset.tileset_names.each_with_index do |name, i|
- @tilemap.bitmaps[i] = Cache.tileset(name)
- end
- @tilemap.flags = @tileset.flags
- end
- #--------------------------------------------------------------------------
- # * Terminate
- #--------------------------------------------------------------------------
- def terminate
- super
- @tilemap.dispose
- @sprite.bitmap.dispose
- @sprite.dispose
- @contents.dispose
- end
- #--------------------------------------------------------------------------
- # * Change key
- #--------------------------------------------------------------------------
- def change_key
- if @sprite
- @sprite.dispose
- end
- if @contents
- @contents.dispose
- end
- @key = @key = TILE_PAGE[@index]
- @sprite = Sprite.new
- bitmap = @tilemap.bitmaps[TableH[@key]]
- rect = Rect.new(0,0,32*8,32*18)
- rect2 = Rect.new(32*8,0,32*9,32*18)
- bitmap2 = Bitmap.new(600,2000)
- bitmap2.blt(0,0,bitmap,rect)
- bitmap2.blt(0,32*(9+7),bitmap,rect2)
- bitmap2.font.size = 20
- counter = @key == "B"? 0 : 1
- for j in 0..((9+7)*2 - 1)
- for i in 0..(7)
- bitmap2.draw_text(i*32+5,j*32,32,32,"#{counter}")
- counter += 1
- end
- end
- @sprite.bitmap = bitmap2
- @sprite.x = 544.0 / 2 - 32*7 / 2 + 100
- @sprite.z = 999
- @contents = Sprite.new
- @contents.viewport = @viewport1
- @contents.bitmap = Bitmap.new(544,416)
- @contents.bitmap.font.size = 17
- @contents.bitmap.font.name = ["SP3 - Hero",Font.default_name]
- @contents.bitmap.font.bold = true
- @contents.bitmap.fill_rect(0,0,544,416,Color.new(0,0,0,200))
- @contents.bitmap.fill_rect(255,0,264,416,Color.new(0,0,0,230))
- @contents.bitmap.draw_text(10,0,500,32,"TileViewer 1.0 by Dark Sky")
- @contents.bitmap.fill_rect(10,22,50*4,1,Color.new(255,255,255,200))
- @contents.bitmap.font.size = 16
- @contents.bitmap.font.bold = false
- y = 14
- @contents.bitmap.draw_text(10,y,500,32,"Current Tile Page: #{@key}")
- y += 12
- @help_txt = ["Map_ID : #{$game_map.map_id}","UP/DOWN Key: Move Up/Down","X: Back","LEFT/RIGHT: Change TILE Page","SHIFT: Speed Up!"]
- @help_txt.each do |text|
- @contents.bitmap.draw_text(10,y,500,32,text)
- y += 12
- end
- end
- #--------------------------------------------------------------------------
- # * Start
- #--------------------------------------------------------------------------
- def start
- super
- create_tilemap
- @index = 0
- @key = TILE_PAGE[@index]
- @speed = 1
- change_key
- end
- #--------------------------------------------------------------------------
- # * Update
- #--------------------------------------------------------------------------
- def update
- super
- if Input.press?(:A)
- @speed = 5
- else
- @speed = 1
- end
- if Input.trigger?(:RIGHT)
- @index += 1
- if @index > TILE_PAGE.size - 1
- @index = 0
- end
- change_key
- end
- if Input.trigger?(:LEFT)
- @index -= 1
- if @index < 0
- @index = TILE_PAGE.size - 1
- end
- change_key
- end
- if Input.press?(:UP)
- @sprite.oy -= @speed
- end
- if Input.press?(:DOWN)
- @sprite.oy += @speed
- end
- if Input.press?(:B)
- @sprite.bitmap.dispose
- @sprite.dispose
- return_scene
- end
- end
- end
- #==========================================================================
- # * Scene Map
- #==========================================================================
- class Scene_Map
- alias dark_stuff_tileviewer_update update
- def update(*args)
- dark_stuff_tileviewer_update(*args)
- if Input.trigger?(:F8) && $TEST
- SceneManager.call(Scene_TileViewer)
- end
- end
- end
Add Comment
Please, Sign In to add comment