Class: Spriteset_Map
- Inherits:
-
Object
- Object
- Spriteset_Map
- Defined in:
- lib/rgss3_default_scripts/Spriteset_Map.rb
Overview
** Spriteset_Map
This class brings together map screen sprites, tilemaps, etc. It's used
within the Scene_Map class.
Instance Method Summary collapse
-
#create_characters ⇒ Object
————————————————————————– * Create Character Sprite ————————————————————————–.
-
#create_parallax ⇒ Object
————————————————————————– * Create Parallax ————————————————————————–.
-
#create_pictures ⇒ Object
————————————————————————– * Create Picture Sprite ————————————————————————–.
-
#create_shadow ⇒ Object
————————————————————————– * Create Airship Shadow Sprite ————————————————————————–.
-
#create_tilemap ⇒ Object
————————————————————————– * Create Tilemap ————————————————————————–.
-
#create_timer ⇒ Object
————————————————————————– * Create Timer Sprite ————————————————————————–.
-
#create_viewports ⇒ Object
————————————————————————– * Create Viewport ————————————————————————–.
-
#create_weather ⇒ Object
————————————————————————– * Create Weather ————————————————————————–.
-
#dispose ⇒ Object
————————————————————————– * Free ————————————————————————–.
-
#dispose_characters ⇒ Object
————————————————————————– * Free Character Sprite ————————————————————————–.
-
#dispose_parallax ⇒ Object
————————————————————————– * Free Parallax ————————————————————————–.
-
#dispose_pictures ⇒ Object
————————————————————————– * Free Picture Sprite ————————————————————————–.
-
#dispose_shadow ⇒ Object
————————————————————————– * Free Airship Shadow Sprite ————————————————————————–.
-
#dispose_tilemap ⇒ Object
————————————————————————– * Free Tilemap ————————————————————————–.
-
#dispose_timer ⇒ Object
————————————————————————– * Free Timer Sprite ————————————————————————–.
-
#dispose_viewports ⇒ Object
————————————————————————– * Free Viewport ————————————————————————–.
-
#dispose_weather ⇒ Object
————————————————————————– * Free Weather ————————————————————————–.
-
#initialize ⇒ Spriteset_Map
constructor
————————————————————————– * Object Initialization ————————————————————————–.
-
#load_tileset ⇒ Object
————————————————————————– * Load Tileset ————————————————————————–.
-
#refresh_characters ⇒ Object
————————————————————————– * Refresh Characters ————————————————————————–.
-
#update ⇒ Object
————————————————————————– * Frame Update ————————————————————————–.
-
#update_characters ⇒ Object
————————————————————————– * Update Character Sprite ————————————————————————–.
-
#update_parallax ⇒ Object
————————————————————————– * Update Parallax ————————————————————————–.
-
#update_pictures ⇒ Object
————————————————————————– *Update Picture Sprite ————————————————————————–.
-
#update_shadow ⇒ Object
————————————————————————– * Update Airship Shadow Sprite ————————————————————————–.
-
#update_tilemap ⇒ Object
————————————————————————– * Update Tilemap ————————————————————————–.
-
#update_tileset ⇒ Object
————————————————————————– * Update Tileset ————————————————————————–.
-
#update_timer ⇒ Object
————————————————————————– * Update Timer Sprite ————————————————————————–.
-
#update_viewports ⇒ Object
————————————————————————– * Update Viewport ————————————————————————–.
-
#update_weather ⇒ Object
————————————————————————– * Update Weather ————————————————————————–.
Constructor Details
#initialize ⇒ Spriteset_Map
-
Object Initialization
12 13 14 15 16 17 18 19 20 21 22 |
# File 'lib/rgss3_default_scripts/Spriteset_Map.rb', line 12 def initialize create_tilemap create_parallax create_characters create_shadow create_weather create_pictures create_timer update end |
Instance Method Details
#create_characters ⇒ Object
-
Create Character Sprite
61 62 63 64 65 66 67 68 69 70 71 72 73 74 |
# File 'lib/rgss3_default_scripts/Spriteset_Map.rb', line 61 def create_characters @character_sprites = [] $game_map.events.values.each do |event| @character_sprites.push(Sprite_Character.new(@viewport1, event)) end $game_map.vehicles.each do |vehicle| @character_sprites.push(Sprite_Character.new(@viewport1, vehicle)) end $game_player.followers.reverse_each do |follower| @character_sprites.push(Sprite_Character.new(@viewport1, follower)) end @character_sprites.push(Sprite_Character.new(@viewport1, $game_player)) @map_id = $game_map.map_id end |
#create_parallax ⇒ Object
-
Create Parallax
54 55 56 57 |
# File 'lib/rgss3_default_scripts/Spriteset_Map.rb', line 54 def create_parallax @parallax = Plane.new(@viewport1) @parallax.z = -100 end |
#create_pictures ⇒ Object
-
Create Picture Sprite
94 95 96 |
# File 'lib/rgss3_default_scripts/Spriteset_Map.rb', line 94 def create_pictures @picture_sprites = [] end |
#create_shadow ⇒ Object
-
Create Airship Shadow Sprite
78 79 80 81 82 83 84 |
# File 'lib/rgss3_default_scripts/Spriteset_Map.rb', line 78 def create_shadow @shadow_sprite = Sprite.new(@viewport1) @shadow_sprite.bitmap = Cache.system("Shadow") @shadow_sprite.ox = @shadow_sprite.bitmap.width / 2 @shadow_sprite.oy = @shadow_sprite.bitmap.height @shadow_sprite.z = 180 end |
#create_tilemap ⇒ Object
-
Create Tilemap
36 37 38 39 40 |
# File 'lib/rgss3_default_scripts/Spriteset_Map.rb', line 36 def create_tilemap @tilemap = Tilemap.new(@viewport1) @tilemap.map_data = $game_map.data load_tileset end |
#create_timer ⇒ Object
-
Create Timer Sprite
100 101 102 |
# File 'lib/rgss3_default_scripts/Spriteset_Map.rb', line 100 def create_timer @timer_sprite = Sprite_Timer.new(@viewport2) end |
#create_viewports ⇒ Object
-
Create Viewport
26 27 28 29 30 31 32 |
# File 'lib/rgss3_default_scripts/Spriteset_Map.rb', line 26 def @viewport1 = Viewport.new @viewport2 = Viewport.new @viewport3 = Viewport.new @viewport2.z = 50 @viewport3.z = 100 end |
#create_weather ⇒ Object
-
Create Weather
88 89 90 |
# File 'lib/rgss3_default_scripts/Spriteset_Map.rb', line 88 def create_weather @weather = Spriteset_Weather.new(@viewport2) end |
#dispose ⇒ Object
-
Free
106 107 108 109 110 111 112 113 114 115 |
# File 'lib/rgss3_default_scripts/Spriteset_Map.rb', line 106 def dispose dispose_tilemap dispose_parallax dispose_characters dispose_shadow dispose_weather dispose_pictures dispose_timer end |
#dispose_characters ⇒ Object
-
Free Character Sprite
132 133 134 |
# File 'lib/rgss3_default_scripts/Spriteset_Map.rb', line 132 def dispose_characters @character_sprites.each {|sprite| sprite.dispose } end |
#dispose_parallax ⇒ Object
-
Free Parallax
125 126 127 128 |
# File 'lib/rgss3_default_scripts/Spriteset_Map.rb', line 125 def dispose_parallax @parallax.bitmap.dispose if @parallax.bitmap @parallax.dispose end |
#dispose_pictures ⇒ Object
-
Free Picture Sprite
150 151 152 |
# File 'lib/rgss3_default_scripts/Spriteset_Map.rb', line 150 def dispose_pictures @picture_sprites.compact.each {|sprite| sprite.dispose } end |
#dispose_shadow ⇒ Object
-
Free Airship Shadow Sprite
138 139 140 |
# File 'lib/rgss3_default_scripts/Spriteset_Map.rb', line 138 def dispose_shadow @shadow_sprite.dispose end |
#dispose_tilemap ⇒ Object
-
Free Tilemap
119 120 121 |
# File 'lib/rgss3_default_scripts/Spriteset_Map.rb', line 119 def dispose_tilemap @tilemap.dispose end |
#dispose_timer ⇒ Object
-
Free Timer Sprite
156 157 158 |
# File 'lib/rgss3_default_scripts/Spriteset_Map.rb', line 156 def dispose_timer @timer_sprite.dispose end |
#dispose_viewports ⇒ Object
-
Free Viewport
162 163 164 165 166 |
# File 'lib/rgss3_default_scripts/Spriteset_Map.rb', line 162 def @viewport1.dispose @viewport2.dispose @viewport3.dispose end |
#dispose_weather ⇒ Object
-
Free Weather
144 145 146 |
# File 'lib/rgss3_default_scripts/Spriteset_Map.rb', line 144 def dispose_weather @weather.dispose end |
#load_tileset ⇒ Object
-
Load Tileset
44 45 46 47 48 49 50 |
# File 'lib/rgss3_default_scripts/Spriteset_Map.rb', line 44 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 |
#refresh_characters ⇒ Object
-
Refresh Characters
170 171 172 173 |
# File 'lib/rgss3_default_scripts/Spriteset_Map.rb', line 170 def refresh_characters dispose_characters create_characters end |
#update ⇒ Object
-
Frame Update
177 178 179 180 181 182 183 184 185 186 187 |
# File 'lib/rgss3_default_scripts/Spriteset_Map.rb', line 177 def update update_tileset update_tilemap update_parallax update_characters update_shadow update_weather update_pictures update_timer end |
#update_characters ⇒ Object
-
Update Character Sprite
222 223 224 225 |
# File 'lib/rgss3_default_scripts/Spriteset_Map.rb', line 222 def update_characters refresh_characters if @map_id != $game_map.map_id @character_sprites.each {|sprite| sprite.update } end |
#update_parallax ⇒ Object
-
Update Parallax
209 210 211 212 213 214 215 216 217 218 |
# File 'lib/rgss3_default_scripts/Spriteset_Map.rb', line 209 def update_parallax if @parallax_name != $game_map.parallax_name @parallax_name = $game_map.parallax_name @parallax.bitmap.dispose if @parallax.bitmap @parallax.bitmap = Cache.parallax(@parallax_name) Graphics.frame_reset end @parallax.ox = $game_map.parallax_ox(@parallax.bitmap) @parallax.oy = $game_map.parallax_oy(@parallax.bitmap) end |
#update_pictures ⇒ Object
*Update Picture Sprite
249 250 251 252 253 254 |
# File 'lib/rgss3_default_scripts/Spriteset_Map.rb', line 249 def update_pictures $game_map.screen.pictures.each do |pic| @picture_sprites[pic.number] ||= Sprite_Picture.new(@viewport2, pic) @picture_sprites[pic.number].update end end |
#update_shadow ⇒ Object
-
Update Airship Shadow Sprite
229 230 231 232 233 234 235 |
# File 'lib/rgss3_default_scripts/Spriteset_Map.rb', line 229 def update_shadow airship = $game_map.airship @shadow_sprite.x = airship.screen_x @shadow_sprite.y = airship.screen_y + airship.altitude @shadow_sprite.opacity = airship.altitude * 8 @shadow_sprite.update end |
#update_tilemap ⇒ Object
-
Update Tilemap
200 201 202 203 204 205 |
# File 'lib/rgss3_default_scripts/Spriteset_Map.rb', line 200 def update_tilemap @tilemap.map_data = $game_map.data @tilemap.ox = $game_map.display_x * 32 @tilemap.oy = $game_map.display_y * 32 @tilemap.update end |
#update_tileset ⇒ Object
-
Update Tileset
191 192 193 194 195 196 |
# File 'lib/rgss3_default_scripts/Spriteset_Map.rb', line 191 def update_tileset if @tileset != $game_map.tileset load_tileset refresh_characters end end |
#update_timer ⇒ Object
-
Update Timer Sprite
258 259 260 |
# File 'lib/rgss3_default_scripts/Spriteset_Map.rb', line 258 def update_timer @timer_sprite.update end |
#update_viewports ⇒ Object
-
Update Viewport
264 265 266 267 268 269 270 271 272 |
# File 'lib/rgss3_default_scripts/Spriteset_Map.rb', line 264 def @viewport1.tone.set($game_map.screen.tone) @viewport1.ox = $game_map.screen.shake @viewport2.color.set($game_map.screen.flash_color) @viewport3.color.set(0, 0, 0, 255 - $game_map.screen.brightness) @viewport1.update @viewport2.update @viewport3.update end |
#update_weather ⇒ Object
-
Update Weather
239 240 241 242 243 244 245 |
# File 'lib/rgss3_default_scripts/Spriteset_Map.rb', line 239 def update_weather @weather.type = $game_map.screen.weather_type @weather.power = $game_map.screen.weather_power @weather.ox = $game_map.display_x * 32 @weather.oy = $game_map.display_y * 32 @weather.update end |