Ogłoszenie 

Uwaga! To forum jest w trybie offline.
Wszelką pomoc uzyskasz pod adresem
forum.ultimateam.pl


Administracja Forum


Poprzedni temat «» Następny temat
Skrypt pogody [XP]
Autor Wiadomość
Ayene 




Ranga RM:
4 gry

Pomogła: 232 razy
Dołączyła: 18 Wrz 2007
Posty: 2424
Wysłany: Pią 07 Maj, 2010 09:08
Skrypt pogody [XP]
~ Skrypt pogody [XP] ~

Krótki opis
Skrypt dodaje nowe zjawiska pogodowe, m.in. grad, płatki róż, a nawet deszcz krwi i meteorów.

Autor skryptu
Ccoa

Tłumaczenie
Ayene

Kompatybilność
Tylko XP

Skrypt
Spoiler:

Kod:
# Skrypt pogody XP
# Autor: Ccoa
# Tłumaczenie: Ayene [www.ultimateam.pl]
#
#  Typ zjawiska pogodowego:
#    1 - deszcz
#    2 - burza
#    3 - śnieg
#    4 - grad
#    5 - deszcz z grzmotami i błyskawicami
#    6 - spadające liście (jesień)
#    7 - zawierucha z liści (jesień)
#    8 - wirujące liście (jesień)
#    9 - spadające liście (zielone)
#   10 - płatki wiśni (sakura)
#   11 - płatki róży
#   12 - pióra
#   13 - deszcz z krwi
#   14 - iskry
#   15 - zdefiniowane przez użytkownika
#   16 - śnieżna zawierucha
#   17 - deszcz meteorów
#   18 - spadający popiół
#   19 - bańki
#   20 - bańki 2
#   21 - unoszące się iskry
#
#  Siła (moc) zjawiska pogodowego:
#    Liczba w przedziale 0-50.  0 = brak zjawiska, 50 = 500 obrazków
#
#  Zanik:
#    Liczba klatek animacji, by pogoda zanikała
#
#  Użycie:
#    Wpisz korzystając z polecenia "Skrypt' / 'Script' w edycji zdarzeń:
#       $game_screen.weather(typ, siła, zanik)
#
#  Uzycie zjawisk zdefiniowanych przez użytkownika:
#    Przyjrzyj się zmiennym globalnym:

$WEATHER_UPDATE = false   # 'true' - jeżeli zmieniono $WEATHER_IMAGES
$WEATHER_IMAGES = []      # tablica użytych obrazków
$WEATHER_X = 0            # przesunięcie obrazka w poziomie w pikselach (dodatnie = prawo, ujemne = lewo)
$WEATHER_Y = 0            # przesunięcie obrazka w pionie w pikselach (dodatnie = dół, ujemne = góra)
$WEATHER_FADE = 0         # zanikanie przy każdym odświeżaniu (0 = brak zaniku, 255 = automatyczne zniknięcie)
$WEATHER_ANIMATED = false # animacja zjawiska pogodowego

module RPG
  class Weather
    def initialize(viewport = nil)
      @type = 0
      @max = 0
      @ox = 0
      @oy = 0
      @count = 0
      @current_pose = []
      @info = []
      @countarray = []
 
      make_bitmaps
 
      # **** ccoa ****
      for i in 1..500
        sprite = Sprite.new(viewport)
        sprite.z = 1000
        sprite.visible = false
        sprite.opacity = 0
        @sprites.push(sprite)
        @current_pose.push(0)
        @info.push(rand(50))
        @countarray.push(rand(15))
      end
    end
   
    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
   
    def type=(type)
      return if @type == type
      @type = type
      case @type
      when 1 # deszcz
        bitmap = @rain_bitmap
      when 2 # burza
        bitmap = @storm_bitmap
      when 3 # śnieg
        bitmap = @snow_bitmap
      when 4 # grad
        bitmap = @hail_bitmap
      when 5 # deszcz z grzmotami i błyskawicami
        bitmap = @rain_bitmap
        @thunder = true
      when 6 # spadające liście (jesień)
        bitmap = @autumn_leaf_bitmaps[0]
      when 7 # zawierucha z liści (jesień)
        bitmap = @autumn_leaf_bitmaps[0]
      when 8 # wirujące liście (jesień)
        bitmap = @autumn_leaf_bitmaps[0]
      when 9 # spadające liście (zielone)
        bitmap = @green_leaf_bitmaps[0]
      when 10 # płatki wiśni (sakura)
        bitmap = @petal_bitmap
      when 11 # płatki róży
        bitmap = @rose_bitmaps[0]
      when 12 # pióra
        bitmap = @feather_bitmaps[0]
      when 13 # deszcz z krwi
        bitmap = @blood_rain_bitmap
      when 14 # iskry
        bitmap = @sparkle_bitmaps[0]
      when 15 # zdefiniowane przez użytkownika
          bitmap = @user_bitmaps[rand(@user_bitmaps.size)]
      when 16 # śnieżna zawierucha
        bitmap = @snow_bitmap
      when 17 # deszcz meteorów
        bitmap = @meteor_bitmap
      when 18 # spadający popiół
        bitmap = @ash_bitmaps[rand(@ash_bitmaps.size)]
      when 19 # bańki
        bitmap = @bubble_bitmaps[rand(@bubble_bitmaps.size)]
      when 21 # unoszące się iskry
        bitmap = @sparkle_bitmaps[0]
      else
        bitmap = nil
      end
      if @type != 5
        @thunder = false
      end     
      for i in 1..500
        sprite = @sprites[i]
        if sprite != nil
          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
    end
   
    def ox=(ox)
      return if @ox == ox;
      @ox = ox
      for sprite in @sprites
        sprite.ox = @ox
      end
    end
   
    def oy=(oy)
      return if @oy == oy;
      @oy = oy
      for sprite in @sprites
        sprite.oy = @oy
      end
    end
   
    def max=(max)
      return if @max == max;     
      @max = [[max, 0].max, 500].min
      for i in 1..500
        sprite = @sprites[i]
        if sprite != nil
          sprite.visible = (i <= @max)
        end
      end
    end
   
    def update
      return if @type == 0
      for i in 1..@max
        sprite = @sprites[i]
        if sprite == nil
          break
        end
        if @type == 1 or @type == 5 or @type == 13 # deszcz
          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_screen.start_flash(Color.new(255, 255, 255, 255), 5)
              Audio.se_play("Audio/SE/061-Thunderclap01")
            end
          end
          sprite.opacity -= 8
        end
        if @type == 2 # burza
          sprite.x -= 8
          sprite.y += 16
          sprite.opacity -= 12
        end
        if @type == 3 # śnieg
          case @info[i]
          when 0
            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 # grad
          sprite.x -= 1
          sprite.y += 18
          sprite.opacity -= 15
        end
        if @type == 6 # spadające liście (jesień)
          @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 # zawierucha z liści (jesień)
          @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 # wirujące liście (jesień)
          @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 # spadające liście (zielone)
          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 # płatki wiśni (sakura)
          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 # płatki róży
          @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 # pióra
          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 # iskry
          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 # zdefiniowane przez użytkownika
          if $WEATHER_UPDATE
            update_user_defined
            $WEATHER_UPDATE = false
          end
          if $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 += $WEATHER_X
          sprite.y += $WEATHER_Y
          sprite.opacity -= $WEATHER_FADE
        end
        if @type == 16 # śnieżna zawierucha
          sprite.x -= 10
          sprite.y += 6
          sprite.opacity -= 4
        end
        if @type == 17 # deszcz meteorów
          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 # spadający popiół
          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 # bańki
          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 # unoszące się iskry
          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 x < -50 or x > 750 or y < -300 or y > 500
          sprite.x = rand(800) - 50 + @ox
          sprite.y = rand(800) - 200 + @oy
          sprite.opacity = 255
        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)
      color4 = Color.new(213, 106, 136, 255)
      @petal_bitmap = Bitmap.new(4, 4)
      @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))
     
      @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)
           
      @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)
           
      @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)
           
      @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)
           
      @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)
           
      @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)
           
      @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)
           
      @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)
           
      @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)
           
      @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)
           
      @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)
           
      @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)
           
      @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)
           
      @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)
           
      @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)
           
      @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)
           
      @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)
           
      @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)
           
      @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)
           
      @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)
           
      @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)
           
      @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)
           
      @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)
           
      @sparkle_bitmaps[0] = Bitmap.new(7, 7)
      @sparkle_bitmaps[0].set_pixel(3, 3, darkBlue)
           
      @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)
           
      @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)
           
      @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)
           
      @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)
           
      @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)
           
      @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 = 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 = 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[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 = []
      darkBlue  = Color.new(77, 136, 225, 160)
      aqua = Color.new(197, 253, 254, 160)
      lavender = Color.new(225, 190, 244, 160)
           
      @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)
           
      @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)
           
      @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)
           
      @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)
         
      @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)
           
      @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)
           
      @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 $WEATHER_IMAGES
        @user_bitmaps.push(RPG::Cache.picture(name))
      end
      for sprite in @sprites
        sprite.bitmap = @user_bitmaps[rand(@user_bitmaps.size)]
      end
    end
   
    attr_reader :type
    attr_reader :max
    attr_reader :ox
    attr_reader :oy
  end
end


Demo



Screenshot
Spoiler:




Instrukcja
1. Wklej skrypt nad "Main" w Edytorze Skryptu.
2. Reszta instrukcji znajduje się w treści skryptu i w demie.

Piszcie w razie problemów.
________________________


 
 
 
spino333 



Preferowany:
RPG Maker VX

Pomógł: 1 raz
Dołączył: 21 Gru 2009
Posty: 85
Skąd: Nie pamiętam
Wysłany: Nie 14 Lis, 2010 02:50
Te efekty świetne :-D , ale mi się nie podoba ten "Deszcz Meteorów" moim zdaniem to straszna poraszka. :-/
________________________
_________________
_________________
Jak kraść to milinony...
Jak ruchać to księżniczki...
_________________
_________________
_________________
 
 
 
matitus09 




Preferowany:
RPG Maker XP

Dołączył: 01 Wrz 2010
Posty: 53
Wysłany: Pon 15 Lis, 2010 19:40
Mógłby mi ktoś powiedzieć jak dodać te zjawiska pogodowe?
:mrgreen:
 
 
Ayene 




Ranga RM:
4 gry

Pomogła: 232 razy
Dołączyła: 18 Wrz 2007
Posty: 2424
Wysłany: Pon 15 Lis, 2010 20:31
matitus09, ściągnij demo, wejdź w projekt i podejrzyj zdarzenia. Na pewno dojdziesz do tego, jak się uruchamia poszczególne zjawiska pogodowe ;-)
________________________


 
 
 
Kumpel 




Preferowany:
RPG Maker XP

Pomógł: 12 razy
Dołączył: 12 Lip 2010
Posty: 78
Skąd: Ziemia
Wysłany: Wto 16 Lis, 2010 09:21
Niezły skrypt! Na pewno przyda sie w moim projekcie ;D
________________________
Już wkrótce Legend of Korra
 
 
 
Arcanius 




Preferowany:
RPG Maker XP

Dołączył: 17 Cze 2010
Posty: 27
Skąd: Polska, Warszawa
Wysłany: Sob 26 Lut, 2011 22:09
A można zrobić tak że się bierze pory roku które się po dłuższym czasie zmieniają i wtedy akurat jest jakiś efekt pogodowy?
________________________
Powrót z zaświatów!
Nowy projekt na VX! Świat Agrodii: Tajemnica Smoczej Magii!
 
 
 
Nikoś 



Preferowany:
RPG Maker XP

Dołączył: 22 Kwi 2010
Posty: 28
Wysłany: Pon 28 Lut, 2011 13:18
Pobierzcie se Zer0 Advanced Weather!
 
 
Xevo 




Preferowany:
RPG Maker XP

Pomógł: 2 razy
Dołączył: 20 Lut 2011
Posty: 43
Skąd: no ide
Wysłany: Sro 02 Mar, 2011 14:48
Mam podobny tylko w różne strony animacja leci
i skryptach pisze że jest ich kilka, ale jest dużo opcji na
każdą pogodę :-D .
________________________

Best game ever!    
http://signup.leagueofleg...a947f1268417346
 
 
 
 
Mikołaj 



Pomógł: 7 razy
Dołączył: 11 Lut 2011
Posty: 84
Wysłany: Sro 02 Mar, 2011 14:57
Fajny skrypt.Kiedyś użyję.
 
 
superbaton 



Preferowany:
RPG Maker XP

Dołączył: 11 Sty 2011
Posty: 20
Wysłany: Sro 02 Mar, 2011 18:37
thx uzyje go w moim projekcie
________________________
http://grawbank.tk/451/baton Kliknijcie zbieram na rpgmakera:):D
 
 
Azzerro 




Preferowany:
RPG Maker VX

Dołączył: 29 Lip 2011
Posty: 1
Skąd: Szombry
Wysłany: Pią 29 Lip, 2011 22:07
Jest moze w wersji na VX?
________________________
 
 
Ayene 




Ranga RM:
4 gry

Pomogła: 232 razy
Dołączyła: 18 Wrz 2007
Posty: 2424
Wysłany: Sob 30 Lip, 2011 00:49
Hmm... może spróbuj tego :arrow: http://forum.chaos-projec...hp?topic=5812.0
________________________


 
 
 
anemone 




Preferowany:
RPG Maker XP

Dołączył: 20 Mar 2011
Posty: 55
Skąd: Z brzuszka mamusi.
Wysłany: Wto 21 Lut, 2012 19:31
Świetny skrypt ! Płatki wiśni sakura światnie pasują do mojego nowego projektu :>
No i pięknie się komponuje z tym tilesetem :)
http://untamed.wild-refug...neseVillage.png by Titan and Barret
 
 
 
MrBoomGood 




Preferowany:
RPG Maker VX

Pomógł: 3 razy
Dołączył: 07 Kwi 2011
Posty: 292
Skąd: Katowice
Wysłany: Czw 23 Lut, 2012 17:46
Świetne! Dałoby rade na VX albo na VX Ace?
 
 
 
spartanPAGE 




Pomógł: 12 razy
Dołączył: 07 Gru 2011
Posty: 103
Skąd: Hellada
Wysłany: Czw 23 Lut, 2012 18:41
Ayene napisał/a:
Hmm... może spróbuj tego :arrow: http://forum.chaos-projec...hp?topic=5812.0
...
________________________


Programowanie jest moją pasją. Programuję w C, C++, C#, Javie i Delphi. Jeśli czegoś porzebujesz (związanego z tymi językami), śmiało możesz pisać na PW.
 
 
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  

Powered by phpBB modified by Przemo © 2003 phpBB Group | Template Klam by Ayene