Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #===============================================================================
- #
- # Pacman Advanced Creative (PAC) Engine - Weather
- # 5/6/2011
- # Type: System
- # Installation: Optional values, script calls.
- # Level: Average, Difficult, Insane
- # With: Ccoa
- #
- #===============================================================================
- #
- # Description:
- # VX offers only three weather effects. I'll take some of the burden off of you
- # by giving you this handy comprehensive weather script.
- #
- #===============================================================================
- #
- # Instructions:
- # INSTALLATION
- # Paste above main, below materials, remember to save.
- # SCRIPT CALLS
- # To change the weather, use the following script call:
- # screen.weather(type, power, hue)
- # The types are:
- # 1 - rain
- # 2 - storm
- # 3 - snow
- # 4 - hail
- # 5 - rain with thunder and lightning
- # 6 - falling leaves
- # 7 - blowing leaves
- # 8 - swirling leaves
- # 9 - falling green leaves
- # 10 - cherry blossom petals
- # 11 - rose petals
- # 12 - feathers
- # 13 - blood rain
- # 14 - sparkles
- # 15 - user defined
- # Power is an integer from 0-40. 0 = no weather, 40 = 400 sprites.
- # Hue, of course, is the hue of the weather.
- #
- # VALUES
- # For usage of user-defined weather, look at the following values:
- #
- #===============================================================================
- #===============================================================================
- # BEGIN EDITING
- #===============================================================================
- $WEATHER_UPDATE = false # If true, updates the WEATHER_IMAGES array.
- module PAC # Don't touch the below line.
- module SYSTEM # Don't touch the above line.
- WEATHER_IMAGES = [] # Array of images to use. Place in ""s, use commas.
- WEATHER_X = 0 # The number of pixels the image moves horizontally.
- WEATHER_Y = 0 # The number of pixels the image moves vertically.
- WEATHER_FADE = 0 # How much (0-255) the image should fade per update.
- WEATHER_ANIMATED = false # Cycle through all the images in the array?
- #===============================================================================
- # CEASE EDITING
- #===============================================================================
- end
- end
- #==============================================================================
- # ** Spriteset_Weather
- #------------------------------------------------------------------------------
- # Weather effect (rain, storm, snow) class. This class is used within the
- # Spriteset_Map class.
- #==============================================================================
- class Spriteset_Weather
- #--------------------------------------------------------------------------
- # * Public Instance Variables
- #--------------------------------------------------------------------------
- attr_reader :type
- attr_reader :max
- attr_reader :ox
- attr_reader :oy
- #--------------------------------------------------------------------------
- # * Object Initialization
- #--------------------------------------------------------------------------
- def initialize(viewport = nil)
- @type = 0; @max = 0; @ox = 0; @oy = 0; @count = 0; @current_pose = []
- @info = []; @countarray = []; make_bitmaps; @sprites = []
- for i in 1..500
- sprite = Sprite.new(viewport); sprite.visible = false; sprite.opacity = 0
- @sprites.push(sprite); @current_pose.push(0); @info.push(rand(50))
- @countarray.push(rand(15))
- end
- end
- #--------------------------------------------------------------------------
- # * Dispose
- #--------------------------------------------------------------------------
- def dispose
- for sprite in @sprites; sprite.dispose; end
- @rain_bitmap.dispose; @storm_bitmap.dispose; @snow_bitmap.dispose
- @hail_bitmap.dispose; @petal_bitmap.dispose; @blood_rain_bitmap.dispose
- for image in @autumn_leaf_bitmaps; image.dispose; end
- for image in @green_leaf_bitmaps; image.dispose; end
- for image in @rose_bitmaps; image.dispose; end
- for image in @feather_bitmaps; image.dispose; end
- for image in @sparkle_bitmaps;image.dispose; end
- for image in @user_bitmaps; image.dispose; end
- $WEATHER_UPDATE = true
- end
- #--------------------------------------------------------------------------
- # * Set weather type
- # type : new weather type
- #--------------------------------------------------------------------------
- def type=(type)
- return if @type == type
- @type = type
- case @type
- when 1 # Rain
- bitmap = @rain_bitmap
- when 2 # Storm
- bitmap = @storm_bitmap
- when 3 # Snow
- bitmap = @snow_bitmap
- when 4 # Hail
- bitmap = @hail_bitmap
- when 5 # Rain, thunder, lightning
- bitmap = @rain_bitmap; @thunder = true
- when 6,7,8 # Falling, blowing, swirling autumn leaves
- bitmap = @autumn_leaf_bitmaps[0]
- when 9 # Falling green leaves
- bitmap = @green_leaf_bitmaps[0]
- when 10 # Cherry Blossoms
- bitmap = @petal_bitmap
- when 11 # Roses
- bitmap = @rose_bitmaps[0]
- when 12 # Feathers
- bitmap = @feather_bitmaps[0]
- when 13 # Blood Rain
- bitmap = @blood_rain_bitmap
- when 14,21 # Sparkles
- bitmap = @sparkle_bitmaps[0]
- when 15 # User.
- bitmap = @user_bitmaps[rand(@user_bitmaps.size)]
- when 16 # Snow
- bitmap = @snow_bitmap
- when 17 # Meteors
- bitmap = @meteor_bitmap
- when 18 # Ash
- bitmap = @ash_bitmaps[rand(@ash_bitmaps.size)]
- when 19 # BUBBLES
- bitmap = @bubble_bitmaps[rand(@bubble_bitmaps.size)]
- else; bitmap = nil; end
- if @type != 5; @thunder = false; end
- for i in 0...@sprites.size
- sprite = @sprites[i]; sprite.visible = (i <= @max)
- if @type == 19
- sprite.bitmap = @bubble_bitmaps[rand(@bubble_bitmaps.size)]
- elsif @type == 20
- sprite.bitmap = @bubble2_bitmaps[rand(@bubble2_bitmaps.size)]
- elsif @type == 3
- r = rand(@snow_bitmaps.size); @info[i] = r
- sprite.bitmap = @snow_bitmaps[r]
- else
- sprite.bitmap = bitmap
- end
- end
- end
- #--------------------------------------------------------------------------
- # * Set starting point X coordinate
- # ox : starting point X coordinate
- #--------------------------------------------------------------------------
- def ox=(ox)
- return if @ox == ox
- @ox = ox
- for sprite in @sprites; sprite.ox = @ox; end
- end
- #--------------------------------------------------------------------------
- # * Set starting point Y coordinate
- # oy : starting point Y coordinate
- #--------------------------------------------------------------------------
- def oy=(oy)
- return if @oy == oy;
- @oy = oy
- for sprite in @sprites; sprite.oy = @oy; end
- end
- #--------------------------------------------------------------------------
- # * Set maximum number of sprites
- # max : maximum number of sprites
- #--------------------------------------------------------------------------
- def max=(max)
- return if @max == max;
- @max = [[max, 0].max, 40].min
- for i in 1..40
- sprite = @sprites[i]; sprite.visible = (i <= @max) if sprite != nil
- if @type == 19
- sprite.bitmap = @bubble_bitmaps[rand(@bubble_bitmaps.size)]
- elsif @type == 20
- sprite.bitmap = @bubble2_bitmaps[rand(@bubble2_bitmaps.size)]
- elsif @type == 3
- r = rand(@snow_bitmaps.size); @info[i] = r
- sprite.bitmap = @snow_bitmaps[r]
- end
- end
- end
- #--------------------------------------------------------------------------
- # * Frame Update
- #--------------------------------------------------------------------------
- def update
- return if @type == 0
- for i in 1..@max
- sprite = @sprites[i]
- if @type == 1 or @type == 5 or @type == 13 # rain
- if sprite.opacity <= 150
- if @current_pose[i] == 0
- sprite.y += @rain_bitmap.height
- sprite.x -= @rain_bitmap.width
- if @type == 1 or @type == 5
- sprite.bitmap = @rain_splash
- else
- sprite.bitmap = @blood_rain_splash
- end
- @current_pose[i] = 1
- end
- else
- if @current_pose[i] == 1
- if @type == 1 or @type == 5
- sprite.bitmap = @rain_bitmap
- else
- sprite.bitmap = @blood_rain_bitmap
- end
- @current_pose[i] = 0
- end
- sprite.x -= 2
- sprite.y += 16
- if @thunder and (rand(8000 - @max) == 0)
- $game_map.screen.start_flash(Color.new(255, 255, 255, 255), 5)
- Audio.se_play("Audio/SE/Thunder1")
- end
- end
- sprite.opacity -= 8
- end
- if @type == 2 # storm
- sprite.x -= 8
- sprite.y += 16
- sprite.opacity -= 12
- end
- if @type == 3 # snow
- case @info[i]
- when 0 # smallest flake, fall the slowest
- sprite.y += 1
- when 1
- sprite.y += 3
- when 2
- sprite.y += 5
- when 3
- sprite.y += 7
- end
- sprite.opacity -= 3
- end
- if @type == 4 # hail
- sprite.x -= 1
- sprite.y += 18
- sprite.opacity -= 15
- end
- if @type == 6 # falling autumn leaves
- @count = rand(20)
- if @count == 0
- sprite.bitmap = @autumn_leaf_bitmaps[@current_pose[i]]
- @current_pose[i] = (@current_pose[i] + 1) % @autumn_leaf_bitmaps.size
- end
- sprite.x -= 1
- sprite.y += 1
- end
- if @type == 7 # blowing autumn leaves
- @count = rand(20)
- if @count == 0
- sprite.bitmap = @autumn_leaf_bitmaps[@current_pose[i]]
- @current_pose[i] = (@current_pose[i] + 1) % @autumn_leaf_bitmaps.size
- end
- sprite.x -= 10
- sprite.y += (rand(4) - 2)
- end
- if @type == 8 # swirling autumn leaves
- @count = rand(20)
- if @count == 0
- sprite.bitmap = @autumn_leaf_bitmaps[@current_pose[i]]
- @current_pose[i] = (@current_pose[i] + 1) % @autumn_leaf_bitmaps.size
- end
- if @info[i] != 0
- if @info[i] >= 1 and @info[i] <= 10
- sprite.x -= 3
- sprite.y -= 1
- elsif @info[i] >= 11 and @info[i] <= 16
- sprite.x -= 1
- sprite.y -= 2
- elsif @info[i] >= 17 and @info[i] <= 20
- sprite.y -= 3
- elsif @info[i] >= 21 and @info[i] <= 30
- sprite.y -= 2
- sprite.x += 1
- elsif @info[i] >= 31 and @info[i] <= 36
- sprite.y -= 1
- sprite.x += 3
- elsif @info[i] >= 37 and @info[i] <= 40
- sprite.x += 5
- elsif @info[i] >= 41 and @info[i] <= 46
- sprite.y += 1
- sprite.x += 3
- elsif @info[i] >= 47 and @info[i] <= 58
- sprite.y += 2
- sprite.x += 1
- elsif @info[i] >= 59 and @info[i] <= 64
- sprite.y += 3
- elsif @info[i] >= 65 and @info[i] <= 70
- sprite.x -= 1
- sprite.y += 2
- elsif @info[i] >= 71 and @info[i] <= 81
- sprite.x -= 3
- sprite.y += 1
- elsif @info[i] >= 82 and @info[i] <= 87
- sprite.x -= 5
- end
- @info[i] = (@info[i] + 1) % 88
- else
- if rand(200) == 0
- @info[i] = 1
- end
- sprite.x -= 5
- sprite.y += 1
- end
- end
- if @type == 9 # falling green leaves
- if @countarray[i] == 0
- @current_pose[i] = (@current_pose[i] + 1) % @green_leaf_bitmaps.size
- sprite.bitmap = @green_leaf_bitmaps[@current_pose[i]]
- @countarray[i] = rand(15)
- end
- @countarray[i] = (@countarray[i] + 1) % 15
- sprite.y += 1
- end
- if @type == 10 # sakura petals
- if @info[i] < 25
- sprite.x -= 1
- else
- sprite.x += 1
- end
- @info[i] = (@info[i] + 1) % 50
- sprite.y += 1
- end
- if @type == 11 # rose petals
- @count = rand(20)
- if @count == 0
- sprite.bitmap = @rose_bitmaps[@current_pose[i]]
- @current_pose[i] = (@current_pose[i] + 1) % @rose_bitmaps.size
- end
- if @info[i] % 2 == 0
- if @info[i] < 10
- sprite.x -= 1
- elsif
- sprite.x += 1
- end
- end
- sprite.y += 1
- end
- if @type == 12 # feathers
- if @countarray[i] == 0
- @current_pose[i] = (@current_pose[i] + 1) % @feather_bitmaps.size
- sprite.bitmap = @feather_bitmaps[@current_pose[i]]
- end
- @countarray[i] = (@countarray[i] + 1) % 15
- if rand(100) == 0
- sprite.x -= 1
- end
- if rand(100) == 0
- sprite.y -= 1
- end
- if @info[i] < 50
- if rand(2) == 0
- sprite.x -= 1
- else
- sprite.y -= 1
- end
- else
- if rand(2) == 0
- sprite.x += 1
- else
- sprite.y += 1
- end
- end
- @info[i] = (@info[i] + 1) % 100
- end
- if @type == 14 # sparkles
- if @countarray[i] == 0
- @current_pose[i] = (@current_pose[i] + 1) % @sparkle_bitmaps.size
- sprite.bitmap = @sparkle_bitmaps[@current_pose[i]]
- end
- @countarray[i] = (@countarray[i] + 1) % 15
- sprite.y += 1
- sprite.opacity -= 1
- end
- if @type == 15 # user-defined
- if $WEATHER_UPDATE
- update_user_defined
- $WEATHER_UPDATE = false
- end
- if PAC::SYSTEM::WEATHER_ANIMATED and @countarray[i] == 0
- @current_pose[i] = (@current_pose[i] + 1) % @user_bitmaps.size
- sprite.bitmap = @user_bitmaps[@current_pose[i]]
- end
- sprite.x += PAC::SYSTEM::WEATHER_X
- sprite.y += PAC::SYSTEM::WEATHER_Y
- sprite.opacity -= PAC::SYSTEM::WEATHER_FADE
- end
- if @type == 16 # blowing snow
- sprite.x -= 10
- sprite.y += 6
- sprite.opacity -= 4
- end
- if @type == 17 # meteors
- if @countarray[i] > 0
- if rand(20) == 0
- sprite.bitmap = @impact_bitmap
- @countarray[i] = -5
- else
- sprite.x -= 6
- sprite.y += 10
- end
- else
- @countarray[i] += 1
- if @countarray[i] == 0
- sprite.bitmap = @meteor_bitmap
- sprite.opacity = 0
- @count_array = 1
- end
- end
- end
- if @type == 18 # ash
- sprite.y += 2
- case @countarray[i] % 3
- when 0
- sprite.x -= 1
- when 1
- sprite.x += 1
- end
- end
- if @type == 19 or @type == 20 # bubbles
- switch = rand(75) + rand(75) + 1
- if @info[i] < switch / 2
- sprite.x -= 1
- else
- sprite.x += 1
- end
- @info[i] = (@info[i] + 1) % switch
- sprite.y -= 1
- if switch % 2 == 0
- sprite.opacity -= 1
- end
- end
- if @type == 21 # sparkles up
- if @countarray[i] == 0
- @current_pose[i] = (@current_pose[i] + 1) % @sparkle_bitmaps.size
- sprite.bitmap = @sparkle_bitmaps[@current_pose[i]]
- end
- @countarray[i] = (@countarray[i] + 1) % 15
- sprite.y -= 1
- sprite.opacity -= 1
- end
- x = sprite.x - @ox
- y = sprite.y - @oy
- if sprite.opacity < 64 or sprite.x > Graphics.width or sprite.x < 0 or sprite.y > Graphics.height or sprite.y < 0
- sprite.x = rand(800) - 100 + @ox
- sprite.y = rand(600) - 200 + @oy
- if [13, 14, 16, 5, 2, 1].include?(@type)
- sprite.opacity = rand(100) + 155
- else
- sprite.opacity = 255
- end
- end
- end
- end
- def make_bitmaps
- color1 = Color.new(255, 255, 255, 255)
- color2 = Color.new(255, 255, 255, 128)
- @rain_bitmap = Bitmap.new(7, 56)
- for i in 0..6
- @rain_bitmap.fill_rect(6-i, i*8, 1, 8, color1)
- end
- @rain_splash = Bitmap.new(8, 5)
- @rain_splash.fill_rect(1, 0, 6, 1, color2)
- @rain_splash.fill_rect(1, 4, 6, 1, color2)
- @rain_splash.fill_rect(0, 1, 1, 3, color2)
- @rain_splash.fill_rect(7, 1, 1, 3, color2)
- @rain_splash.set_pixel(1, 0, color1)
- @rain_splash.set_pixel(0, 1, color1)
- @storm_bitmap = Bitmap.new(34, 64)
- for i in 0..31
- @storm_bitmap.fill_rect(33-i, i*2, 1, 2, color2)
- @storm_bitmap.fill_rect(32-i, i*2, 1, 2, color1)
- @storm_bitmap.fill_rect(31-i, i*2, 1, 2, color2)
- end
- @snow_bitmap = Bitmap.new(6, 6)
- @snow_bitmap.fill_rect(0, 1, 6, 4, color2)
- @snow_bitmap.fill_rect(1, 0, 4, 6, color2)
- @snow_bitmap.fill_rect(1, 2, 4, 2, color1)
- @snow_bitmap.fill_rect(2, 1, 2, 4, color1)
- @sprites = []
- @snow_bitmaps = []
- color3 = Color.new(255, 255, 255, 204)
- @snow_bitmaps[0] = Bitmap.new(3, 3)
- @snow_bitmaps[0].fill_rect(0, 0, 3, 3, color2)
- @snow_bitmaps[0].fill_rect(0, 1, 3, 1, color3)
- @snow_bitmaps[0].fill_rect(1, 0, 1, 3, color3)
- @snow_bitmaps[0].set_pixel(1, 1, color1)
- @snow_bitmaps[1] = Bitmap.new(4, 4)
- @snow_bitmaps[1].fill_rect(0, 1, 4, 2, color2)
- @snow_bitmaps[1].fill_rect(1, 0, 2, 4, color2)
- @snow_bitmaps[1].fill_rect(1, 1, 2, 2, color1)
- @snow_bitmaps[2] = Bitmap.new(5, 5)
- @snow_bitmaps[1].fill_rect(0, 1, 5, 3, color3)
- @snow_bitmaps[1].fill_rect(1, 0, 3, 5, color3)
- @snow_bitmaps[1].fill_rect(1, 1, 3, 3, color2)
- @snow_bitmaps[1].fill_rect(2, 1, 3, 1, color1)
- @snow_bitmaps[1].fill_rect(1, 2, 1, 3, color1)
- @snow_bitmaps[3] = Bitmap.new(7, 7)
- @snow_bitmaps[1].fill_rect(1, 1, 5, 5, color3)
- @snow_bitmaps[1].fill_rect(2, 0, 7, 3, color3)
- @snow_bitmaps[1].fill_rect(0, 2, 3, 7, color3)
- @snow_bitmaps[1].fill_rect(2, 1, 5, 3, color2)
- @snow_bitmaps[1].fill_rect(1, 2, 3, 5, color2)
- @snow_bitmaps[1].fill_rect(2, 2, 3, 3, color1)
- @snow_bitmaps[1].fill_rect(3, 1, 5, 1, color1)
- @snow_bitmaps[1].fill_rect(1, 3, 1, 5, color1)
- blueGrey = Color.new(215, 227, 227, 150)
- grey = Color.new(214, 217, 217, 150)
- lightGrey = Color.new(233, 233, 233, 250)
- lightBlue = Color.new(222, 239, 243, 250)
- @hail_bitmap = Bitmap.new(4, 4)
- @hail_bitmap.fill_rect(1, 0, 2, 1, blueGrey)
- @hail_bitmap.fill_rect(0, 1, 1, 2, blueGrey)
- @hail_bitmap.fill_rect(3, 1, 1, 2, grey)
- @hail_bitmap.fill_rect(1, 3, 2, 1, grey)
- @hail_bitmap.fill_rect(1, 1, 2, 2, lightGrey)
- @hail_bitmap.set_pixel(1, 1, lightBlue)
- color3 = Color.new(255, 167, 192, 255) # light pink
- color4 = Color.new(213, 106, 136, 255) # dark pink
- @petal_bitmap = Bitmap.new(4, 4) #This creates a new bitmap that is 4 x 4 pixels
- @petal_bitmap.fill_rect(0, 3, 1, 1, color3)
- @petal_bitmap.fill_rect(1, 2, 1, 1, color3)
- @petal_bitmap.fill_rect(2, 1, 1, 1, color3)
- @petal_bitmap.fill_rect(3, 0, 1, 1, color3)
- @petal_bitmap.fill_rect(1, 3, 1, 1, color4)
- @petal_bitmap.fill_rect(2, 2, 1, 1, color4)
- @petal_bitmap.fill_rect(3, 1, 1, 1, color4)
- brightOrange = Color.new(248, 88, 0, 255)
- orangeBrown = Color.new(144, 80, 56, 255)
- burntRed = Color.new(152, 0, 0, 255)
- paleOrange = Color.new(232, 160, 128, 255)
- darkBrown = Color.new(72, 40, 0, 255)
- @autumn_leaf_bitmaps = []
- @autumn_leaf_bitmaps.push(Bitmap.new(8, 8))
- # draw the first of the leaf1 bitmaps
- @autumn_leaf_bitmaps[0].set_pixel(5, 1, orangeBrown)
- @autumn_leaf_bitmaps[0].set_pixel(6, 1, brightOrange)
- @autumn_leaf_bitmaps[0].set_pixel(7, 1, paleOrange)
- @autumn_leaf_bitmaps[0].set_pixel(3, 2, orangeBrown)
- @autumn_leaf_bitmaps[0].fill_rect(4, 2, 2, 1, brightOrange)
- @autumn_leaf_bitmaps[0].set_pixel(6, 2, paleOrange)
- @autumn_leaf_bitmaps[0].set_pixel(2, 3, orangeBrown)
- @autumn_leaf_bitmaps[0].set_pixel(3, 3, brightOrange)
- @autumn_leaf_bitmaps[0].fill_rect(4, 3, 2, 1, paleOrange)
- @autumn_leaf_bitmaps[0].set_pixel(1, 4, orangeBrown)
- @autumn_leaf_bitmaps[0].set_pixel(2, 4, brightOrange)
- @autumn_leaf_bitmaps[0].set_pixel(3, 4, paleOrange)
- @autumn_leaf_bitmaps[0].set_pixel(1, 5, brightOrange)
- @autumn_leaf_bitmaps[0].set_pixel(2, 5, paleOrange)
- @autumn_leaf_bitmaps[0].set_pixel(0, 6, orangeBrown)
- @autumn_leaf_bitmaps[0].set_pixel(1, 6, paleOrange)
- @autumn_leaf_bitmaps[0].set_pixel(0, 7, paleOrange)
- # draw the 2nd of the leaf1 bitmaps
- @autumn_leaf_bitmaps.push(Bitmap.new(8, 8))
- @autumn_leaf_bitmaps[1].set_pixel(3, 0, brightOrange)
- @autumn_leaf_bitmaps[1].set_pixel(7, 0, brightOrange)
- @autumn_leaf_bitmaps[1].set_pixel(3, 1, orangeBrown)
- @autumn_leaf_bitmaps[1].set_pixel(4, 1, burntRed)
- @autumn_leaf_bitmaps[1].set_pixel(6, 1, brightOrange)
- @autumn_leaf_bitmaps[1].set_pixel(0, 2, paleOrange)
- @autumn_leaf_bitmaps[1].set_pixel(1, 2, brightOrange)
- @autumn_leaf_bitmaps[1].set_pixel(2, 2, orangeBrown)
- @autumn_leaf_bitmaps[1].set_pixel(3, 2, burntRed)
- @autumn_leaf_bitmaps[1].set_pixel(4, 2, orangeBrown)
- @autumn_leaf_bitmaps[1].set_pixel(5, 2, brightOrange)
- @autumn_leaf_bitmaps[1].fill_rect(1, 3, 3, 1, orangeBrown)
- @autumn_leaf_bitmaps[1].fill_rect(4, 3, 2, 1, brightOrange)
- @autumn_leaf_bitmaps[1].set_pixel(6, 3, orangeBrown)
- @autumn_leaf_bitmaps[1].set_pixel(2, 4, burntRed)
- @autumn_leaf_bitmaps[1].fill_rect(3, 4, 3, 1, brightOrange)
- @autumn_leaf_bitmaps[1].set_pixel(6, 4, burntRed)
- @autumn_leaf_bitmaps[1].set_pixel(7, 4, darkBrown)
- @autumn_leaf_bitmaps[1].set_pixel(1, 5, orangeBrown)
- @autumn_leaf_bitmaps[1].fill_rect(2, 5, 2, 1, brightOrange)
- @autumn_leaf_bitmaps[1].set_pixel(4, 5, orangeBrown)
- @autumn_leaf_bitmaps[1].set_pixel(5, 5, burntRed)
- @autumn_leaf_bitmaps[1].fill_rect(1, 6, 2, 1, brightOrange)
- @autumn_leaf_bitmaps[1].fill_rect(4, 6, 2, 1, burntRed)
- @autumn_leaf_bitmaps[1].set_pixel(0, 7, brightOrange)
- @autumn_leaf_bitmaps[1].set_pixel(5, 7, darkBrown)
- # draw the 3rd of the leaf1 bitmaps
- @autumn_leaf_bitmaps.push(Bitmap.new(8, 8))
- @autumn_leaf_bitmaps[2].set_pixel(7, 1, paleOrange)
- @autumn_leaf_bitmaps[2].set_pixel(6, 2, paleOrange)
- @autumn_leaf_bitmaps[2].set_pixel(7, 2, orangeBrown)
- @autumn_leaf_bitmaps[2].set_pixel(5, 3, paleOrange)
- @autumn_leaf_bitmaps[2].set_pixel(6, 3, brightOrange)
- @autumn_leaf_bitmaps[2].set_pixel(4, 4, paleOrange)
- @autumn_leaf_bitmaps[2].set_pixel(5, 4, brightOrange)
- @autumn_leaf_bitmaps[2].set_pixel(6, 4, orangeBrown)
- @autumn_leaf_bitmaps[2].fill_rect(2, 5, 2, 1, paleOrange)
- @autumn_leaf_bitmaps[2].set_pixel(4, 5, brightOrange)
- @autumn_leaf_bitmaps[2].set_pixel(5, 5, orangeBrown)
- @autumn_leaf_bitmaps[2].set_pixel(1, 6, paleOrange)
- @autumn_leaf_bitmaps[2].fill_rect(2, 6, 2, 1, brightOrange)
- @autumn_leaf_bitmaps[2].set_pixel(4, 6, orangeBrown)
- @autumn_leaf_bitmaps[2].set_pixel(0, 7, paleOrange)
- @autumn_leaf_bitmaps[2].set_pixel(1, 7, brightOrange)
- @autumn_leaf_bitmaps[2].set_pixel(2, 7, orangeBrown)
- # draw the 4th of the leaf1 bitmaps
- @autumn_leaf_bitmaps.push(Bitmap.new(8, 8))
- @autumn_leaf_bitmaps[3].set_pixel(3, 0, brightOrange)
- @autumn_leaf_bitmaps[3].set_pixel(7, 0, brightOrange)
- @autumn_leaf_bitmaps[3].set_pixel(3, 1, orangeBrown)
- @autumn_leaf_bitmaps[3].set_pixel(4, 1, burntRed)
- @autumn_leaf_bitmaps[3].set_pixel(6, 1, brightOrange)
- @autumn_leaf_bitmaps[3].set_pixel(0, 2, paleOrange)
- @autumn_leaf_bitmaps[3].set_pixel(1, 2, brightOrange)
- @autumn_leaf_bitmaps[3].set_pixel(2, 2, orangeBrown)
- @autumn_leaf_bitmaps[3].set_pixel(3, 2, burntRed)
- @autumn_leaf_bitmaps[3].set_pixel(4, 2, orangeBrown)
- @autumn_leaf_bitmaps[3].set_pixel(5, 2, brightOrange)
- @autumn_leaf_bitmaps[3].fill_rect(1, 3, 3, 1, orangeBrown)
- @autumn_leaf_bitmaps[3].fill_rect(4, 3, 2, 1, brightOrange)
- @autumn_leaf_bitmaps[3].set_pixel(6, 3, orangeBrown)
- @autumn_leaf_bitmaps[3].set_pixel(2, 4, burntRed)
- @autumn_leaf_bitmaps[3].fill_rect(3, 4, 3, 1, brightOrange)
- @autumn_leaf_bitmaps[3].set_pixel(6, 4, burntRed)
- @autumn_leaf_bitmaps[3].set_pixel(7, 4, darkBrown)
- @autumn_leaf_bitmaps[3].set_pixel(1, 5, orangeBrown)
- @autumn_leaf_bitmaps[3].fill_rect(2, 5, 2, 1, brightOrange)
- @autumn_leaf_bitmaps[3].set_pixel(4, 5, orangeBrown)
- @autumn_leaf_bitmaps[3].set_pixel(5, 5, burntRed)
- @autumn_leaf_bitmaps[3].fill_rect(1, 6, 2, 1, brightOrange)
- @autumn_leaf_bitmaps[3].fill_rect(4, 6, 2, 1, burntRed)
- @autumn_leaf_bitmaps[3].set_pixel(0, 7, brightOrange)
- @autumn_leaf_bitmaps[3].set_pixel(5, 7, darkBrown)
- @green_leaf_bitmaps = []
- darkGreen = Color.new(62, 76, 31, 255)
- midGreen = Color.new(76, 91, 43, 255)
- khaki = Color.new(105, 114, 66, 255)
- lightGreen = Color.new(128, 136, 88, 255)
- mint = Color.new(146, 154, 106, 255)
- # 1st leaf bitmap
- @green_leaf_bitmaps[0] = Bitmap.new(8, 8)
- @green_leaf_bitmaps[0].set_pixel(1, 0, darkGreen)
- @green_leaf_bitmaps[0].set_pixel(1, 1, midGreen)
- @green_leaf_bitmaps[0].set_pixel(2, 1, darkGreen)
- @green_leaf_bitmaps[0].set_pixel(2, 2, khaki)
- @green_leaf_bitmaps[0].set_pixel(3, 2, darkGreen)
- @green_leaf_bitmaps[0].set_pixel(4, 2, khaki)
- @green_leaf_bitmaps[0].fill_rect(2, 3, 3, 1, midGreen)
- @green_leaf_bitmaps[0].set_pixel(5, 3, khaki)
- @green_leaf_bitmaps[0].fill_rect(2, 4, 2, 1, midGreen)
- @green_leaf_bitmaps[0].set_pixel(4, 4, darkGreen)
- @green_leaf_bitmaps[0].set_pixel(5, 4, lightGreen)
- @green_leaf_bitmaps[0].set_pixel(6, 4, khaki)
- @green_leaf_bitmaps[0].set_pixel(3, 5, midGreen)
- @green_leaf_bitmaps[0].set_pixel(4, 5, darkGreen)
- @green_leaf_bitmaps[0].set_pixel(5, 5, khaki)
- @green_leaf_bitmaps[0].set_pixel(6, 5, lightGreen)
- @green_leaf_bitmaps[0].set_pixel(4, 6, midGreen)
- @green_leaf_bitmaps[0].set_pixel(5, 6, darkGreen)
- @green_leaf_bitmaps[0].set_pixel(6, 6, lightGreen)
- @green_leaf_bitmaps[0].set_pixel(6, 7, khaki)
- # 2nd leaf bitmap
- @green_leaf_bitmaps[1] = Bitmap.new(8, 8)
- @green_leaf_bitmaps[1].fill_rect(1, 1, 1, 2, midGreen)
- @green_leaf_bitmaps[1].fill_rect(2, 2, 2, 1, khaki)
- @green_leaf_bitmaps[1].set_pixel(4, 2, lightGreen)
- @green_leaf_bitmaps[1].fill_rect(2, 3, 2, 1, darkGreen)
- @green_leaf_bitmaps[1].fill_rect(4, 3, 2, 1, lightGreen)
- @green_leaf_bitmaps[1].set_pixel(2, 4, midGreen)
- @green_leaf_bitmaps[1].set_pixel(3, 4, darkGreen)
- @green_leaf_bitmaps[1].set_pixel(4, 4, khaki)
- @green_leaf_bitmaps[1].fill_rect(5, 4, 2, 1, lightGreen)
- @green_leaf_bitmaps[1].set_pixel(3, 5, midGreen)
- @green_leaf_bitmaps[1].set_pixel(4, 5, darkGreen)
- @green_leaf_bitmaps[1].set_pixel(5, 5, khaki)
- @green_leaf_bitmaps[1].set_pixel(6, 5, lightGreen)
- @green_leaf_bitmaps[1].set_pixel(5, 6, darkGreen)
- @green_leaf_bitmaps[1].fill_rect(6, 6, 2, 1, khaki)
- # 3rd leaf bitmap
- @green_leaf_bitmaps[2] = Bitmap.new(8, 8)
- @green_leaf_bitmaps[2].set_pixel(1, 1, darkGreen)
- @green_leaf_bitmaps[2].fill_rect(1, 2, 2, 1, midGreen)
- @green_leaf_bitmaps[2].set_pixel(2, 3, midGreen)
- @green_leaf_bitmaps[2].set_pixel(3, 3, darkGreen)
- @green_leaf_bitmaps[2].set_pixel(4, 3, midGreen)
- @green_leaf_bitmaps[2].fill_rect(2, 4, 2, 1, midGreen)
- @green_leaf_bitmaps[2].set_pixel(4, 4, darkGreen)
- @green_leaf_bitmaps[2].set_pixel(5, 4, lightGreen)
- @green_leaf_bitmaps[2].set_pixel(3, 5, midGreen)
- @green_leaf_bitmaps[2].set_pixel(4, 5, darkGreen)
- @green_leaf_bitmaps[2].fill_rect(5, 5, 2, 1, khaki)
- @green_leaf_bitmaps[2].fill_rect(4, 6, 2, 1, midGreen)
- @green_leaf_bitmaps[2].set_pixel(6, 6, lightGreen)
- @green_leaf_bitmaps[2].set_pixel(6, 7, khaki)
- # 4th leaf bitmap
- @green_leaf_bitmaps[3] = Bitmap.new(8, 8)
- @green_leaf_bitmaps[3].fill_rect(0, 3, 1, 2, darkGreen)
- @green_leaf_bitmaps[3].set_pixel(1, 4, midGreen)
- @green_leaf_bitmaps[3].set_pixel(2, 4, khaki)
- @green_leaf_bitmaps[3].set_pixel(3, 4, lightGreen)
- @green_leaf_bitmaps[3].set_pixel(4, 4, darkGreen)
- @green_leaf_bitmaps[3].set_pixel(7, 4, midGreen)
- @green_leaf_bitmaps[3].set_pixel(1, 5, darkGreen)
- @green_leaf_bitmaps[3].set_pixel(2, 5, midGreen)
- @green_leaf_bitmaps[3].set_pixel(3, 5, lightGreen)
- @green_leaf_bitmaps[3].set_pixel(4, 5, mint)
- @green_leaf_bitmaps[3].set_pixel(5, 5, lightGreen)
- @green_leaf_bitmaps[3].set_pixel(6, 5, khaki)
- @green_leaf_bitmaps[3].set_pixel(7, 5, midGreen)
- @green_leaf_bitmaps[3].fill_rect(2, 6, 2, 1, midGreen)
- @green_leaf_bitmaps[3].set_pixel(4, 6, lightGreen)
- @green_leaf_bitmaps[3].set_pixel(5, 6, khaki)
- @green_leaf_bitmaps[3].set_pixel(6, 6, midGreen)
- # 5th leaf bitmap
- @green_leaf_bitmaps[4] = Bitmap.new(8, 8)
- @green_leaf_bitmaps[4].set_pixel(6, 2, midGreen)
- @green_leaf_bitmaps[4].set_pixel(7, 2, darkGreen)
- @green_leaf_bitmaps[4].fill_rect(4, 3, 2, 1, midGreen)
- @green_leaf_bitmaps[4].set_pixel(6, 3, khaki)
- @green_leaf_bitmaps[4].set_pixel(2, 4, darkGreen)
- @green_leaf_bitmaps[4].fill_rect(3, 4, 2, 1, khaki)
- @green_leaf_bitmaps[4].set_pixel(5, 4, lightGreen)
- @green_leaf_bitmaps[4].set_pixel(6, 4, khaki)
- @green_leaf_bitmaps[4].set_pixel(1, 5, midGreen)
- @green_leaf_bitmaps[4].set_pixel(2, 5, khaki)
- @green_leaf_bitmaps[4].set_pixel(3, 5, lightGreen)
- @green_leaf_bitmaps[4].set_pixel(4, 5, mint)
- @green_leaf_bitmaps[4].set_pixel(5, 5, midGreen)
- @green_leaf_bitmaps[4].set_pixel(2, 6, darkGreen)
- @green_leaf_bitmaps[4].fill_rect(3, 6, 2, 1, midGreen)
- # 6th leaf bitmap
- @green_leaf_bitmaps[5] = Bitmap.new(8, 8)
- @green_leaf_bitmaps[5].fill_rect(6, 2, 2, 1, midGreen)
- @green_leaf_bitmaps[5].fill_rect(4, 3, 2, 1, midGreen)
- @green_leaf_bitmaps[5].set_pixel(6, 3, khaki)
- @green_leaf_bitmaps[5].set_pixel(3, 4, midGreen)
- @green_leaf_bitmaps[5].set_pixel(4, 4, khaki)
- @green_leaf_bitmaps[5].set_pixel(5, 4, lightGreen)
- @green_leaf_bitmaps[5].set_pixel(6, 4, mint)
- @green_leaf_bitmaps[5].set_pixel(1, 5, midGreen)
- @green_leaf_bitmaps[5].set_pixel(2, 5, khaki)
- @green_leaf_bitmaps[5].fill_rect(3, 5, 2, 1, mint)
- @green_leaf_bitmaps[5].set_pixel(5, 5, lightGreen)
- @green_leaf_bitmaps[5].set_pixel(2, 6, midGreen)
- @green_leaf_bitmaps[5].set_pixel(3, 6, khaki)
- @green_leaf_bitmaps[5].set_pixel(4, 6, lightGreen)
- # 7th leaf bitmap
- @green_leaf_bitmaps[6] = Bitmap.new(8, 8)
- @green_leaf_bitmaps[6].fill_rect(6, 1, 1, 2, midGreen)
- @green_leaf_bitmaps[6].fill_rect(4, 2, 2, 1, midGreen)
- @green_leaf_bitmaps[6].fill_rect(6, 2, 1, 2, darkGreen)
- @green_leaf_bitmaps[6].fill_rect(3, 3, 2, 1, midGreen)
- @green_leaf_bitmaps[6].set_pixel(5, 3, khaki)
- @green_leaf_bitmaps[6].set_pixel(2, 4, midGreen)
- @green_leaf_bitmaps[6].set_pixel(3, 4, khaki)
- @green_leaf_bitmaps[6].set_pixel(4, 4, lightGreen)
- @green_leaf_bitmaps[6].set_pixel(5, 4, midGreen)
- @green_leaf_bitmaps[6].set_pixel(1, 5, midGreen)
- @green_leaf_bitmaps[6].set_pixel(2, 5, khaki)
- @green_leaf_bitmaps[6].fill_rect(3, 5, 2, 1, midGreen)
- @green_leaf_bitmaps[6].set_pixel(1, 6, darkGreen)
- @green_leaf_bitmaps[6].set_pixel(2, 6, midGreen)
- # 8th leaf bitmap
- @green_leaf_bitmaps[7] = Bitmap.new(8, 8)
- @green_leaf_bitmaps[7].set_pixel(6, 1, midGreen)
- @green_leaf_bitmaps[7].fill_rect(4, 2, 3, 2, midGreen)
- @green_leaf_bitmaps[7].set_pixel(3, 3, darkGreen)
- @green_leaf_bitmaps[7].set_pixel(2, 4, darkGreen)
- @green_leaf_bitmaps[7].set_pixel(3, 4, midGreen)
- @green_leaf_bitmaps[7].fill_rect(4, 4, 2, 1, khaki)
- @green_leaf_bitmaps[7].set_pixel(1, 5, darkGreen)
- @green_leaf_bitmaps[7].set_pixel(2, 5, midGreen)
- @green_leaf_bitmaps[7].fill_rect(3, 5, 2, 1, lightGreen)
- @green_leaf_bitmaps[7].set_pixel(2, 6, midGreen)
- @green_leaf_bitmaps[7].set_pixel(3, 6, lightGreen)
- # 9th leaf bitmap
- @green_leaf_bitmaps[8] = Bitmap.new(8, 8)
- @green_leaf_bitmaps[8].fill_rect(6, 1, 1, 2, midGreen)
- @green_leaf_bitmaps[8].fill_rect(4, 2, 2, 1, midGreen)
- @green_leaf_bitmaps[8].fill_rect(6, 2, 1, 2, darkGreen)
- @green_leaf_bitmaps[8].fill_rect(3, 3, 2, 1, midGreen)
- @green_leaf_bitmaps[8].set_pixel(5, 3, khaki)
- @green_leaf_bitmaps[8].set_pixel(2, 4, midGreen)
- @green_leaf_bitmaps[8].set_pixel(3, 4, khaki)
- @green_leaf_bitmaps[8].set_pixel(4, 4, lightGreen)
- @green_leaf_bitmaps[8].set_pixel(5, 4, midGreen)
- @green_leaf_bitmaps[8].set_pixel(1, 5, midGreen)
- @green_leaf_bitmaps[8].set_pixel(2, 5, khaki)
- @green_leaf_bitmaps[8].fill_rect(3, 5, 2, 1, midGreen)
- @green_leaf_bitmaps[8].set_pixel(1, 6, darkGreen)
- @green_leaf_bitmaps[8].set_pixel(2, 6, midGreen)
- # 10th leaf bitmap
- @green_leaf_bitmaps[9] = Bitmap.new(8, 8)
- @green_leaf_bitmaps[9].fill_rect(6, 2, 2, 1, midGreen)
- @green_leaf_bitmaps[9].fill_rect(4, 3, 2, 1, midGreen)
- @green_leaf_bitmaps[9].set_pixel(6, 3, khaki)
- @green_leaf_bitmaps[9].set_pixel(3, 4, midGreen)
- @green_leaf_bitmaps[9].set_pixel(4, 4, khaki)
- @green_leaf_bitmaps[9].set_pixel(5, 4, lightGreen)
- @green_leaf_bitmaps[9].set_pixel(6, 4, mint)
- @green_leaf_bitmaps[9].set_pixel(1, 5, midGreen)
- @green_leaf_bitmaps[9].set_pixel(2, 5, khaki)
- @green_leaf_bitmaps[9].fill_rect(3, 5, 2, 1, mint)
- @green_leaf_bitmaps[9].set_pixel(5, 5, lightGreen)
- @green_leaf_bitmaps[9].set_pixel(2, 6, midGreen)
- @green_leaf_bitmaps[9].set_pixel(3, 6, khaki)
- @green_leaf_bitmaps[9].set_pixel(4, 6, lightGreen)
- # 11th leaf bitmap
- @green_leaf_bitmaps[10] = Bitmap.new(8, 8)
- @green_leaf_bitmaps[10].set_pixel(6, 2, midGreen)
- @green_leaf_bitmaps[10].set_pixel(7, 2, darkGreen)
- @green_leaf_bitmaps[10].fill_rect(4, 3, 2, 1, midGreen)
- @green_leaf_bitmaps[10].set_pixel(6, 3, khaki)
- @green_leaf_bitmaps[10].set_pixel(2, 4, darkGreen)
- @green_leaf_bitmaps[10].fill_rect(3, 4, 2, 1, khaki)
- @green_leaf_bitmaps[10].set_pixel(5, 4, lightGreen)
- @green_leaf_bitmaps[10].set_pixel(6, 4, khaki)
- @green_leaf_bitmaps[10].set_pixel(1, 5, midGreen)
- @green_leaf_bitmaps[10].set_pixel(2, 5, khaki)
- @green_leaf_bitmaps[10].set_pixel(3, 5, lightGreen)
- @green_leaf_bitmaps[10].set_pixel(4, 5, mint)
- @green_leaf_bitmaps[10].set_pixel(5, 5, midGreen)
- @green_leaf_bitmaps[10].set_pixel(2, 6, darkGreen)
- @green_leaf_bitmaps[10].fill_rect(3, 6, 2, 1, midGreen)
- # 12th leaf bitmap
- @green_leaf_bitmaps[11] = Bitmap.new(8, 8)
- @green_leaf_bitmaps[11].fill_rect(0, 3, 1, 2, darkGreen)
- @green_leaf_bitmaps[11].set_pixel(1, 4, midGreen)
- @green_leaf_bitmaps[11].set_pixel(2, 4, khaki)
- @green_leaf_bitmaps[11].set_pixel(3, 4, lightGreen)
- @green_leaf_bitmaps[11].set_pixel(4, 4, darkGreen)
- @green_leaf_bitmaps[11].set_pixel(7, 4, midGreen)
- @green_leaf_bitmaps[11].set_pixel(1, 5, darkGreen)
- @green_leaf_bitmaps[11].set_pixel(2, 5, midGreen)
- @green_leaf_bitmaps[11].set_pixel(3, 5, lightGreen)
- @green_leaf_bitmaps[11].set_pixel(4, 5, mint)
- @green_leaf_bitmaps[11].set_pixel(5, 5, lightGreen)
- @green_leaf_bitmaps[11].set_pixel(6, 5, khaki)
- @green_leaf_bitmaps[11].set_pixel(7, 5, midGreen)
- @green_leaf_bitmaps[11].fill_rect(2, 6, 2, 1, midGreen)
- @green_leaf_bitmaps[11].set_pixel(4, 6, lightGreen)
- @green_leaf_bitmaps[11].set_pixel(5, 6, khaki)
- @green_leaf_bitmaps[11].set_pixel(6, 6, midGreen)
- # 13th leaf bitmap
- @green_leaf_bitmaps[12] = Bitmap.new(8, 8)
- @green_leaf_bitmaps[12].set_pixel(1, 1, darkGreen)
- @green_leaf_bitmaps[12].fill_rect(1, 2, 2, 1, midGreen)
- @green_leaf_bitmaps[12].set_pixel(2, 3, midGreen)
- @green_leaf_bitmaps[12].set_pixel(3, 3, darkGreen)
- @green_leaf_bitmaps[12].set_pixel(4, 3, midGreen)
- @green_leaf_bitmaps[12].fill_rect(2, 4, 2, 1, midGreen)
- @green_leaf_bitmaps[12].set_pixel(4, 4, darkGreen)
- @green_leaf_bitmaps[12].set_pixel(5, 4, lightGreen)
- @green_leaf_bitmaps[12].set_pixel(3, 5, midGreen)
- @green_leaf_bitmaps[12].set_pixel(4, 5, darkGreen)
- @green_leaf_bitmaps[12].fill_rect(5, 5, 2, 1, khaki)
- @green_leaf_bitmaps[12].fill_rect(4, 6, 2, 1, midGreen)
- @green_leaf_bitmaps[12].set_pixel(6, 6, lightGreen)
- @green_leaf_bitmaps[12].set_pixel(6, 7, khaki)
- @rose_bitmaps = []
- brightRed = Color.new(255, 0, 0, 255)
- midRed = Color.new(179, 17, 17, 255)
- darkRed = Color.new(141, 9, 9, 255)
- # 1st rose petal bitmap
- @rose_bitmaps[0] = Bitmap.new(3, 3)
- @rose_bitmaps[0].fill_rect(1, 0, 2, 1, brightRed)
- @rose_bitmaps[0].fill_rect(0, 1, 1, 2, brightRed)
- @rose_bitmaps[0].fill_rect(1, 1, 2, 2, midRed)
- @rose_bitmaps[0].set_pixel(2, 2, darkRed)
- # 2nd rose petal bitmap
- @rose_bitmaps[1] = Bitmap.new(3, 3)
- @rose_bitmaps[1].set_pixel(0, 1, midRed)
- @rose_bitmaps[1].set_pixel(1, 1, brightRed)
- @rose_bitmaps[1].fill_rect(1, 2, 1, 2, midRed)
- @feather_bitmaps = []
- white = Color.new(255, 255, 255, 255)
- # 1st feather bitmap
- @feather_bitmaps[0] = Bitmap.new(3, 3)
- @feather_bitmaps[0].set_pixel(0, 2, white)
- @feather_bitmaps[0].set_pixel(1, 2, grey)
- @feather_bitmaps[0].set_pixel(2, 1, grey)
- # 2nd feather bitmap
- @feather_bitmaps[0] = Bitmap.new(3, 3)
- @feather_bitmaps[0].set_pixel(0, 0, white)
- @feather_bitmaps[0].set_pixel(0, 1, grey)
- @feather_bitmaps[0].set_pixel(1, 2, grey)
- # 3rd feather bitmap
- @feather_bitmaps[0] = Bitmap.new(3, 3)
- @feather_bitmaps[0].set_pixel(2, 0, white)
- @feather_bitmaps[0].set_pixel(1, 0, grey)
- @feather_bitmaps[0].set_pixel(0, 1, grey)
- # 4th feather bitmap
- @feather_bitmaps[0] = Bitmap.new(3, 3)
- @feather_bitmaps[0].set_pixel(2, 2, white)
- @feather_bitmaps[0].set_pixel(2, 1, grey)
- @feather_bitmaps[0].set_pixel(1, 0, grey)
- @blood_rain_bitmap = Bitmap.new(7, 56)
- for i in 0..6
- @blood_rain_bitmap.fill_rect(6-i, i*8, 1, 8, darkRed)
- end
- @blood_rain_splash = Bitmap.new(8, 5)
- @blood_rain_splash.fill_rect(1, 0, 6, 1, darkRed)
- @blood_rain_splash.fill_rect(1, 4, 6, 1, darkRed)
- @blood_rain_splash.fill_rect(0, 1, 1, 3, darkRed)
- @blood_rain_splash.fill_rect(7, 1, 1, 3, darkRed)
- @sparkle_bitmaps = []
- lightBlue = Color.new(181, 244, 255, 255)
- midBlue = Color.new(126, 197, 235, 255)
- darkBlue = Color.new(77, 136, 225, 255)
- # 1st sparkle bitmap
- @sparkle_bitmaps[0] = Bitmap.new(7, 7)
- @sparkle_bitmaps[0].set_pixel(3, 3, darkBlue)
- # 2nd sparkle bitmap
- @sparkle_bitmaps[1] = Bitmap.new(7, 7)
- @sparkle_bitmaps[1].fill_rect(3, 2, 1, 3, darkBlue)
- @sparkle_bitmaps[1].fill_rect(2, 3, 3, 1, darkBlue)
- @sparkle_bitmaps[1].set_pixel(3, 3, midBlue)
- # 3rd sparkle bitmap
- @sparkle_bitmaps[2] = Bitmap.new(7, 7)
- @sparkle_bitmaps[2].set_pixel(1, 1, darkBlue)
- @sparkle_bitmaps[2].set_pixel(5, 1, darkBlue)
- @sparkle_bitmaps[2].set_pixel(2, 2, midBlue)
- @sparkle_bitmaps[2].set_pixel(4, 2, midBlue)
- @sparkle_bitmaps[2].set_pixel(3, 3, lightBlue)
- @sparkle_bitmaps[2].set_pixel(2, 4, midBlue)
- @sparkle_bitmaps[2].set_pixel(4, 4, midBlue)
- @sparkle_bitmaps[2].set_pixel(1, 5, darkBlue)
- @sparkle_bitmaps[2].set_pixel(5, 5, darkBlue)
- # 4th sparkle bitmap
- @sparkle_bitmaps[3] = Bitmap.new(7, 7)
- @sparkle_bitmaps[3].fill_rect(3, 1, 1, 5, darkBlue)
- @sparkle_bitmaps[3].fill_rect(1, 3, 5, 1, darkBlue)
- @sparkle_bitmaps[3].fill_rect(3, 2, 1, 3, midBlue)
- @sparkle_bitmaps[3].fill_rect(2, 3, 3, 1, midBlue)
- @sparkle_bitmaps[3].set_pixel(3, 3, lightBlue)
- # 5th sparkle bitmap
- @sparkle_bitmaps[4] = Bitmap.new(7, 7)
- @sparkle_bitmaps[4].fill_rect(2, 2, 3, 3, midBlue)
- @sparkle_bitmaps[4].fill_rect(3, 2, 1, 3, darkBlue)
- @sparkle_bitmaps[4].fill_rect(2, 3, 3, 1, darkBlue)
- @sparkle_bitmaps[4].set_pixel(3, 3, lightBlue)
- @sparkle_bitmaps[4].set_pixel(1, 1, darkBlue)
- @sparkle_bitmaps[4].set_pixel(5, 1, darkBlue)
- @sparkle_bitmaps[4].set_pixel(1, 5, darkBlue)
- @sparkle_bitmaps[4].set_pixel(5, 1, darkBlue)
- # 6th sparkle bitmap
- @sparkle_bitmaps[5] = Bitmap.new(7, 7)
- @sparkle_bitmaps[5].fill_rect(2, 1, 3, 5, darkBlue)
- @sparkle_bitmaps[5].fill_rect(1, 2, 5, 3, darkBlue)
- @sparkle_bitmaps[5].fill_rect(2, 2, 3, 3, midBlue)
- @sparkle_bitmaps[5].fill_rect(3, 1, 1, 5, midBlue)
- @sparkle_bitmaps[5].fill_rect(1, 3, 5, 1, midBlue)
- @sparkle_bitmaps[5].fill_rect(3, 2, 1, 3, lightBlue)
- @sparkle_bitmaps[5].fill_rect(2, 3, 3, 1, lightBlue)
- @sparkle_bitmaps[5].set_pixel(3, 3, white)
- # 7th sparkle bitmap
- @sparkle_bitmaps[6] = Bitmap.new(7, 7)
- @sparkle_bitmaps[6].fill_rect(2, 1, 3, 5, midBlue)
- @sparkle_bitmaps[6].fill_rect(1, 2, 5, 3, midBlue)
- @sparkle_bitmaps[6].fill_rect(3, 0, 1, 7, darkBlue)
- @sparkle_bitmaps[6].fill_rect(0, 3, 7, 1, darkBlue)
- @sparkle_bitmaps[6].fill_rect(2, 2, 3, 3, lightBlue)
- @sparkle_bitmaps[6].fill_rect(3, 2, 1, 3, midBlue)
- @sparkle_bitmaps[6].fill_rect(2, 3, 3, 1, midBlue)
- @sparkle_bitmaps[6].set_pixel(3, 3, white)
- # Meteor bitmap
- @meteor_bitmap = Bitmap.new(14, 12)
- @meteor_bitmap.fill_rect(0, 8, 5, 4, paleOrange)
- @meteor_bitmap.fill_rect(1, 7, 6, 4, paleOrange)
- @meteor_bitmap.set_pixel(7, 8, paleOrange)
- @meteor_bitmap.fill_rect(1, 8, 2, 2, brightOrange)
- @meteor_bitmap.set_pixel(2, 7, brightOrange)
- @meteor_bitmap.fill_rect(3, 6, 2, 1, brightOrange)
- @meteor_bitmap.set_pixel(3, 8, brightOrange)
- @meteor_bitmap.set_pixel(3, 10, brightOrange)
- @meteor_bitmap.set_pixel(4, 9, brightOrange)
- @meteor_bitmap.fill_rect(5, 5, 1, 5, brightOrange)
- @meteor_bitmap.fill_rect(6, 4, 1, 5, brightOrange)
- @meteor_bitmap.fill_rect(7, 3, 1, 5, brightOrange)
- @meteor_bitmap.fill_rect(8, 6, 1, 2, brightOrange)
- @meteor_bitmap.set_pixel(9, 5, brightOrange)
- @meteor_bitmap.set_pixel(3, 8, midRed)
- @meteor_bitmap.fill_rect(4, 7, 1, 2, midRed)
- @meteor_bitmap.set_pixel(4, 5, midRed)
- @meteor_bitmap.set_pixel(5, 4, midRed)
- @meteor_bitmap.set_pixel(5, 6, midRed)
- @meteor_bitmap.set_pixel(6, 5, midRed)
- @meteor_bitmap.set_pixel(6, 7, midRed)
- @meteor_bitmap.fill_rect(7, 4, 1, 3, midRed)
- @meteor_bitmap.fill_rect(8, 3, 1, 3, midRed)
- @meteor_bitmap.fill_rect(9, 2, 1, 3, midRed)
- @meteor_bitmap.fill_rect(10, 1, 1, 3, midRed)
- @meteor_bitmap.fill_rect(11, 0, 1, 3, midRed)
- @meteor_bitmap.fill_rect(12, 0, 1, 2, midRed)
- @meteor_bitmap.set_pixel(13, 0, midRed)
- # impact bitmap
- @impact_bitmap = Bitmap.new(22, 11)
- @impact_bitmap.fill_rect(0, 5, 1, 2, brightOrange)
- @impact_bitmap.set_pixel(1, 4, brightOrange)
- @impact_bitmap.set_pixel(1, 6, brightOrange)
- @impact_bitmap.set_pixel(2, 3, brightOrange)
- @impact_bitmap.set_pixel(2, 7, brightOrange)
- @impact_bitmap.set_pixel(3, 2, midRed)
- @impact_bitmap.set_pixel(3, 7, midRed)
- @impact_bitmap.set_pixel(4, 2, brightOrange)
- @impact_bitmap.set_pixel(4, 8, brightOrange)
- @impact_bitmap.set_pixel(5, 2, midRed)
- @impact_bitmap.fill_rect(5, 8, 3, 1, brightOrange)
- @impact_bitmap.set_pixel(6, 1, midRed)
- @impact_bitmap.fill_rect(7, 1, 8, 1, brightOrange)
- @impact_bitmap.fill_rect(7, 9, 8, 1, midRed)
- # Ash bitmaps
- @ash_bitmaps = []
- @ash_bitmaps[0] = Bitmap.new(3, 3)
- @ash_bitmaps[0].fill_rect(0, 1, 1, 3, lightGrey)
- @ash_bitmaps[0].fill_rect(1, 0, 3, 1, lightGrey)
- @ash_bitmaps[0].set_pixel(1, 1, white)
- @ash_bitmaps[1] = Bitmap.new(3, 3)
- @ash_bitmaps[1].fill_rect(0, 1, 1, 3, grey)
- @ash_bitmaps[1].fill_rect(1, 0, 3, 1, grey)
- @ash_bitmaps[1].set_pixel(1, 1, lightGrey)
- # Bubble bitmaps
- @bubble_bitmaps = []
- darkBlue = Color.new(77, 136, 225, 160)
- aqua = Color.new(197, 253, 254, 160)
- lavender = Color.new(225, 190, 244, 160)
- # first bubble bitmap
- @bubble_bitmaps[0] = Bitmap.new(24, 24)
- @bubble_bitmaps[0].fill_rect(0, 9, 24, 5, darkBlue)
- @bubble_bitmaps[0].fill_rect(1, 6, 22, 11, darkBlue)
- @bubble_bitmaps[0].fill_rect(2, 5, 20, 13, darkBlue)
- @bubble_bitmaps[0].fill_rect(3, 4, 18, 15, darkBlue)
- @bubble_bitmaps[0].fill_rect(4, 3, 16, 17, darkBlue)
- @bubble_bitmaps[0].fill_rect(5, 2, 14, 19, darkBlue)
- @bubble_bitmaps[0].fill_rect(6, 1, 12, 21, darkBlue)
- @bubble_bitmaps[0].fill_rect(9, 0, 5, 24, darkBlue)
- @bubble_bitmaps[0].fill_rect(2, 11, 20, 4, aqua)
- @bubble_bitmaps[0].fill_rect(3, 7, 18, 10, aqua)
- @bubble_bitmaps[0].fill_rect(4, 6, 16, 12, aqua)
- @bubble_bitmaps[0].fill_rect(5, 5, 14, 14, aqua)
- @bubble_bitmaps[0].fill_rect(6, 4, 12, 16, aqua)
- @bubble_bitmaps[0].fill_rect(9, 2, 4, 20, aqua)
- @bubble_bitmaps[0].fill_rect(5, 10, 1, 7, lavender)
- @bubble_bitmaps[0].fill_rect(6, 14, 1, 5, lavender)
- @bubble_bitmaps[0].fill_rect(7, 15, 1, 4, lavender)
- @bubble_bitmaps[0].fill_rect(8, 16, 1, 4, lavender)
- @bubble_bitmaps[0].fill_rect(9, 17, 1, 3, lavender)
- @bubble_bitmaps[0].fill_rect(10, 18, 4, 3, lavender)
- @bubble_bitmaps[0].fill_rect(14, 18, 1, 2, lavender)
- @bubble_bitmaps[0].fill_rect(13, 5, 4, 4, white)
- @bubble_bitmaps[0].fill_rect(14, 4, 2, 1, white)
- @bubble_bitmaps[0].set_pixel(17, 6, white)
- # second bubble bitmap
- @bubble_bitmaps[1] = Bitmap.new(14, 15)
- @bubble_bitmaps[1].fill_rect(0, 4, 14, 7, darkBlue)
- @bubble_bitmaps[1].fill_rect(1, 3, 12, 9, darkBlue)
- @bubble_bitmaps[1].fill_rect(2, 2, 10, 11, darkBlue)
- @bubble_bitmaps[1].fill_rect(3, 1, 8, 13, darkBlue)
- @bubble_bitmaps[1].fill_rect(5, 0, 4, 15, darkBlue)
- @bubble_bitmaps[1].fill_rect(1, 5, 12, 4, aqua)
- @bubble_bitmaps[1].fill_rect(2, 4, 10, 6, aqua)
- @bubble_bitmaps[1].fill_rect(3, 3, 8, 8, aqua)
- @bubble_bitmaps[1].fill_rect(4, 2, 6, 10, aqua)
- @bubble_bitmaps[1].fill_rect(1, 5, 12, 4, aqua)
- @bubble_bitmaps[1].fill_rect(3, 9, 1, 2, lavender)
- @bubble_bitmaps[1].fill_rect(4, 10, 1, 2, lavender)
- @bubble_bitmaps[1].fill_rect(5, 11, 4, 1, lavender)
- @bubble_bitmaps[1].fill_rect(6, 12, 2, 1, white)
- @bubble_bitmaps[1].fill_rect(8, 3, 2, 2, white)
- @bubble_bitmaps[1].set_pixel(7, 4, white)
- @bubble_bitmaps[1].set_pixel(8, 5, white)
- # Other option for bubbles
- @bubble2_bitmaps = Array.new
- darkSteelGray = Color.new(145, 150, 155, 160)
- midSteelGray = Color.new(180, 180, 185, 160)
- lightSteelGray = Color.new(225, 225, 235, 160)
- steelBlue = Color.new(145, 145, 165, 160)
- lightSteelBlue = Color.new(165, 170, 180, 160)
- transparentWhite = Color.new(255, 255, 255, 160)
- # first bubble 2 bitmap
- @bubble2_bitmaps[0] = Bitmap.new(6, 6)
- @bubble2_bitmaps[0].fill_rect(0, 0, 6, 6, darkSteelGray)
- @bubble2_bitmaps[0].fill_rect(0, 2, 6, 2, midSteelGray)
- @bubble2_bitmaps[0].fill_rect(2, 0, 2, 6, midSteelGray)
- @bubble2_bitmaps[0].fill_rect(2, 2, 2, 2, lightSteelGray)
- # second bubble 2 bitmap
- @bubble2_bitmaps[1] = Bitmap.new(8, 8)
- @bubble2_bitmaps[1].fill_rect(0, 2, 2, 4, steelBlue)
- @bubble2_bitmaps[1].fill_rect(2, 0, 4, 2, darkSteelGray)
- @bubble2_bitmaps[1].fill_rect(6, 2, 2, 2, darkSteelGray)
- @bubble2_bitmaps[1].fill_rect(2, 6, 2, 2, darkSteelGray)
- @bubble2_bitmaps[1].fill_rect(6, 4, 2, 2, midSteelGray)
- @bubble2_bitmaps[1].fill_rect(4, 6, 2, 2, midSteelGray)
- @bubble2_bitmaps[1].fill_rect(4, 4, 2, 2, lightSteelBlue)
- @bubble2_bitmaps[1].fill_rect(2, 4, 2, 2, lightSteelGray)
- @bubble2_bitmaps[1].fill_rect(4, 2, 2, 2, lightSteelGray)
- @bubble2_bitmaps[1].fill_rect(2, 2, 2, 2, transparentWhite)
- # third bubble 2 bitmap
- @bubble2_bitmaps[2] = Bitmap.new(8, 10)
- @bubble2_bitmaps[2].fill_rect(8, 2, 2, 4, steelBlue)
- @bubble2_bitmaps[2].fill_rect(2, 0, 8, 2, darkSteelGray)
- @bubble2_bitmaps[2].fill_rect(2, 6, 8, 2, darkSteelGray)
- @bubble2_bitmaps[2].fill_rect(4, 0, 2, 2, midSteelGray)
- @bubble2_bitmaps[2].fill_rect(4, 6, 2, 2, midSteelGray)
- @bubble2_bitmaps[2].fill_rect(0, 2, 2, 2, midSteelGray)
- @bubble2_bitmaps[2].fill_rect(0, 4, 2, 2, lightSteelBlue)
- @bubble2_bitmaps[2].fill_rect(2, 2, 6, 4, lightSteelGray)
- @bubble2_bitmaps[2].fill_rect(2, 2, 4, 2, transparentWhite)
- @bubble2_bitmaps[2].fill_rect(4, 4, 2, 2, transparentWhite)
- # fourth bubble 2 bitmap
- @bubble2_bitmaps[3] = Bitmap.new(14, 14)
- @bubble2_bitmaps[3].fill_rect(4, 0, 4, 2, steelBlue)
- @bubble2_bitmaps[3].fill_rect(0, 4, 2, 4, steelBlue)
- @bubble2_bitmaps[3].fill_rect(12, 4, 2, 4, steelBlue)
- @bubble2_bitmaps[3].fill_rect(8, 0, 2, 2, darkSteelGray)
- @bubble2_bitmaps[3].fill_rect(0, 6, 2, 2, darkSteelGray)
- @bubble2_bitmaps[3].fill_rect(12, 6, 2, 2, darkSteelGray)
- @bubble2_bitmaps[3].fill_rect(4, 12, 6, 2, darkSteelGray)
- @bubble2_bitmaps[3].fill_rect(8, 0, 2, 2, darkSteelGray)
- @bubble2_bitmaps[3].fill_rect(2, 2, 10, 10, midSteelGray)
- @bubble2_bitmaps[3].fill_rect(6, 12, 2, 2, midSteelGray)
- @bubble2_bitmaps[3].fill_rect(2, 4, 10, 6, lightSteelGray)
- @bubble2_bitmaps[3].fill_rect(4, 2, 2, 2, lightSteelGray)
- @bubble2_bitmaps[3].fill_rect(6, 10, 4, 2, lightSteelGray)
- @bubble2_bitmaps[3].fill_rect(6, 4, 2, 2, transparentWhite)
- @bubble2_bitmaps[3].fill_rect(4, 6, 2, 2, transparentWhite)
- @user_bitmaps = []
- update_user_defined
- end
- def update_user_defined
- for image in @user_bitmaps
- image.dispose
- end
- for name in PAC::SYSTEM::WEATHER_IMAGES
- @user_bitmaps.push(RPG::Cache.picture(name))
- end
- for sprite in @sprites
- sprite.bitmap = @user_bitmaps[rand(@user_bitmaps.size)]
- end
- end
- end
- #===============================================================================
- #
- # END OF SCRIPT
- #
- #===============================================================================
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement