设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2116|回复: 2
打印 上一主题 下一主题

[已经过期] 天气系统怎么结束

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
420 小时
注册时间
2011-3-13
帖子
251
跳转到指定楼层
1
发表于 2012-8-8 23:43:14 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式
  1. #
  2. # 项目名称:Global Weather System Script 全球天气系统脚本.
  3. # 创建时间: 2009-12-9, 18:53:27
  4. # 项目类型:RGSS Develop template
  5. # 开发工具:Aptana RadRails 1.0
  6. # 源文件名:Global weather system Script.rb
  7. # 版本:1.0
  8. # by Goldencolor .
  9. #  
  10. #==============================================================================
  11. #  ▲Global Weather System Script   全球天气系统脚本.
  12. #------------------------------------------------------------------------------
  13. #
  14. #  by Kitty and Mr.DJ With Goldencolor(GDC)
  15. #  RPGXP适用。
  16. #==============================================================================
  17. # 使用方法:
  18. #     $game_screen.weather(type, power, transition)
  19. # 天气类型(type):
  20. #      1- 雨                                          
  21. #      2- 暴风雨                                       
  22. #      3- 雪                                          
  23. #      4- 冰雹                                             
  24. #      5- 雨+雷+闪电               
  25. #      6- 落下的树叶 (秋天)                           
  26. #      7- 吹制留下 (秋天)
  27. #      8- 摇晃树叶 (秋天)
  28. #      9- 树叶 (绿色的)
  29. #      10- 樱花花瓣(日本)
  30. #      11- 玫瑰花瓣
  31. #      12- 羽毛
  32. #      13- 血雨
  33. #      14- 闪耀
  34. #      15- 自定义(用户)
  35. #      16- 吹制雪
  36. #      17- 流星雨
  37. #      18- 灰烬
  38. #      19- 泡沫
  39. # 天气强度(power):  
  40. #  标准(0..40)  每一点强度等于10个精灵 40=400。超过40以后后果很严重- -!!b
  41. # 过渡帧(Transition):
  42. #   帧数.(0..50)
  43. #
  44. #------------------------------------------------------------------------------
  45. $Goldencolor ={} if $GDCRGSS.nil?
  46. $Goldencolor['Weather'] = true
  47. #==============================================================================
  48. #  用户自定义天气配置:
  49. #==============================================================================
  50. module ConfigWeather
  51.   $WEATHER_UPDATE = false   # $WEATHER_IMAGES图片如果改变,是否更新
  52.   $WEATHER_IMAGES =[]   # 用户自定义天气图片
  53.   $WEATHER_X = 0            # 图像Y方向移动(positive = right, negative = left)
  54.   $WEATHER_Y = 0            # 图像Y方向移动(positive = down, negative = up)
  55.   $WEATHER_FADE = 0         # 褪色(0..255)
  56.   $WEATHER_ANIMATED = false # 是否循环一直自定义图片
  57. end
  58. #定义

  59. module RPG
  60.   #==============================================================================
  61.   #  ■ Weather
  62.   #------------------------------------------------------------------------------
  63.   #  处理天气的类。
  64.   #==============================================================================  
  65.   class Weather
  66.     include ConfigWeather
  67.     #--------------------------------------------------------------------------
  68.     # ● 初始化对象
  69.     #--------------------------------------------------------------------------   
  70.     def initialize(viewport = nil)
  71.       @type = 0
  72.       @max = 0
  73.       @ox = 0
  74.       @oy = 0
  75.       @count = 0
  76.       @current_pose = []
  77.       @info = []
  78.       @countarray = []
  79.       #创造位图
  80.       make_bitmaps
  81.       #循环精灵
  82.       for i in 1..500
  83.         sprite = Sprite.new(viewport)
  84.         sprite.z = 1000
  85.         sprite.visible = false
  86.         sprite.opacity = 0
  87.         @sprites.push(sprite)
  88.         @current_pose.push(0)
  89.         @info.push(rand(50))
  90.         @countarray.push(rand(15))
  91.       end
  92.     end
  93.     #===========================================================================
  94.     # ● 释放
  95.     #===========================================================================
  96.     def dispose
  97.       for sprite in @sprites
  98.         sprite.dispose
  99.       end
  100.       @rain_bitmap.dispose
  101.       @storm_bitmap.dispose
  102.       @snow_bitmap.dispose
  103.       @hail_bitmap.dispose
  104.       @petal_bitmap.dispose
  105.       @blood_rain_bitmap.dispose
  106.       for image in @autumn_leaf_bitmaps
  107.         image.dispose
  108.       end
  109.       for image in @green_leaf_bitmaps
  110.         image.dispose
  111.       end
  112.       for image in @rose_bitmaps
  113.         image.dispose
  114.       end
  115.       for image in @feather_bitmaps
  116.         image.dispose
  117.       end
  118.       for image in @sparkle_bitmaps
  119.         image.dispose
  120.       end
  121.       for image in @user_bitmaps
  122.         image.dispose
  123.       end
  124.       $WEATHER_UPDATE = true
  125.     end
  126.   #--------------------------------------------------------------------------
  127.   # ● 分歧类型
  128.   #--------------------------------------------------------------------------
  129.     def type=(type)
  130.       return if @type == type
  131.       @type = type
  132.       case @type
  133.         when 1 # 雨
  134.         bitmap = @rain_bitmap
  135.         when 2 # 暴风雨
  136.         bitmap = @storm_bitmap
  137.         when 3 # 雪
  138.         bitmap = @snow_bitmap
  139.         when 4 # 冰雹
  140.         bitmap = @hail_bitmap
  141.         when 5 # 雨+雷+闪电
  142.         bitmap = @rain_bitmap
  143.         @thunder = true
  144.         when 6 # 落下的树叶 (秋天)
  145.         bitmap = @autumn_leaf_bitmaps[0]
  146.         when 7 # 吹花瓣(秋天)
  147.         bitmap = @autumn_leaf_bitmaps[0]
  148.         when 8 #摇晃树叶 (秋天)
  149.         bitmap = @autumn_leaf_bitmaps[0]
  150.         when 9 #树叶 (绿色的)
  151.         bitmap = @green_leaf_bitmaps[0]
  152.         when 10 # 樱花花瓣(日本)
  153.         bitmap = @petal_bitmap
  154.         when 11 # 玫瑰花瓣
  155.         bitmap = @rose_bitmaps[0]
  156.         when 12 # 羽毛
  157.         bitmap = @feather_bitmaps[0]
  158.         when 13 # 血雨
  159.         bitmap = @blood_rain_bitmap
  160.         when 14 # 闪耀
  161.         bitmap = @sparkle_bitmaps[0]
  162.         when 15 # 自定义(用户)
  163.         bitmap = @user_bitmaps[rand(@user_bitmaps.size)]
  164.         when 16 # 吹制雪
  165.         bitmap = @snow_bitmap
  166.         when 17 # 流星雨
  167.         bitmap = @meteor_bitmap
  168.         when 18 # 落下灰
  169.         bitmap = @ash_bitmaps[rand(@ash_bitmaps.size)]
  170.         when 19 # 泡沫
  171.         bitmap = @bubble_bitmaps[rand(@bubble_bitmaps.size)]
  172.       else
  173.         bitmap = nil
  174.       end
  175.       if @type != 5
  176.         @thunder = false
  177.       end
  178.       for i in 1..500
  179.         sprite = @sprites[i]
  180.         if sprite != nil
  181.           sprite.visible = (i <= @max)
  182.           if @type == 19
  183.             sprite.bitmap = @bubble_bitmaps[rand(@bubble_bitmaps.size)]
  184.           else
  185.             sprite.bitmap = bitmap
  186.           end
  187.         end
  188.       end
  189.     end
  190.     def ox=(ox)
  191.       return if @ox == ox;
  192.       @ox = ox
  193.       for sprite in @sprites
  194.         sprite.ox = @ox
  195.       end
  196.     end
  197.     def oy=(oy)
  198.       return if @oy == oy;
  199.       @oy = oy
  200.       for sprite in @sprites
  201.         sprite.oy = @oy
  202.       end
  203.     end
  204.     def max=(max)
  205.       return if @max == max;
  206.       @max = [[max, 0].max, 500].min
  207.       for i in 1..500
  208.         sprite = @sprites[i]
  209.         if sprite != nil
  210.           sprite.visible = (i <= @max)
  211.         end
  212.       end
  213.     end
  214.     #--------------------------------------------------------------------------
  215.     # ● 刷新
  216.     #--------------------------------------------------------------------------
  217.     def update
  218.       return if @type == 0
  219.       for i in 1..@max
  220.         sprite = @sprites[i]
  221.         if sprite == nil
  222.           break
  223.         end
  224.         if @type == 1 or @type == 5 or @type == 13 # 雨
  225.           sprite.x -= 2
  226.           sprite.y += 16
  227.           sprite.opacity -= 8
  228.           if @thunder and (rand(8000 - @max) == 0)
  229.             $game_screen.start_flash(Color.new(255, 255, 255, 255), 5)
  230.             Audio.se_play("Audio/SE/061-Thunderclap01")
  231.           end
  232.         end
  233.         if @type == 2 # 暴风雨
  234.           sprite.x -= 8
  235.           sprite.y += 16
  236.           sprite.opacity -= 12
  237.         end
  238.         if @type == 3 # 雪
  239.           sprite.x -= 2
  240.           sprite.y += 8
  241.           sprite.opacity -= 8
  242.         end
  243.         if @type == 4 # 冰雹
  244.           sprite.x -= 1
  245.           sprite.y += 18
  246.           sprite.opacity -= 15
  247.         end
  248.         if @type == 6 # 落下的树叶 (秋天)
  249.           @count = rand(20)
  250.           if @count == 0
  251.             sprite.bitmap = @autumn_leaf_bitmaps[@current_pose[i]]
  252.             @current_pose[i] = (@current_pose[i] + 1) % @autumn_leaf_bitmaps.size
  253.           end
  254.           sprite.x -= 1
  255.           sprite.y += 1
  256.         end
  257.         if @type == 7 # 吹花瓣(秋天)
  258.           @count = rand(20)
  259.           if @count == 0
  260.             sprite.bitmap = @autumn_leaf_bitmaps[@current_pose[i]]
  261.             @current_pose[i] = (@current_pose[i] + 1) % @autumn_leaf_bitmaps.size
  262.           end
  263.           sprite.x -= 10
  264.           sprite.y += (rand(4) - 2)
  265.         end
  266.         if @type == 8 #摇晃树叶 (秋天)
  267.           @count = rand(20)
  268.           if @count == 0
  269.             sprite.bitmap = @autumn_leaf_bitmaps[@current_pose[i]]
  270.             @current_pose[i] = (@current_pose[i] + 1) % @autumn_leaf_bitmaps.size
  271.           end
  272.           if @info[i] != 0
  273.             if @info[i] >= 1 and @info[i] <= 10
  274.               sprite.x -= 3
  275.               sprite.y -= 1
  276.             elsif @info[i] >= 11 and @info[i] <= 16
  277.               sprite.x -= 1
  278.               sprite.y -= 2
  279.             elsif @info[i] >= 17 and @info[i] <= 20
  280.               sprite.y -= 3
  281.             elsif @info[i] >= 21 and @info[i] <= 30
  282.               sprite.y -= 2
  283.               sprite.x += 1
  284.             elsif @info[i] >= 31 and @info[i] <= 36
  285.               sprite.y -= 1
  286.               sprite.x += 3
  287.             elsif @info[i] >= 37 and @info[i] <= 40
  288.               sprite.x += 5
  289.             elsif @info[i] >= 41 and @info[i] <= 46
  290.               sprite.y += 1
  291.               sprite.x += 3
  292.             elsif @info[i] >= 47 and @info[i] <= 58
  293.               sprite.y += 2
  294.               sprite.x += 1
  295.             elsif @info[i] >= 59 and @info[i] <= 64
  296.               sprite.y += 3
  297.             elsif @info[i] >= 65 and @info[i] <= 70
  298.               sprite.x -= 1
  299.               sprite.y += 2
  300.             elsif @info[i] >= 71 and @info[i] <= 81
  301.               sprite.x -= 3
  302.               sprite.y += 1
  303.             elsif @info[i] >= 82 and @info[i] <= 87
  304.               sprite.x -= 5
  305.             end
  306.             @info[i] = (@info[i] + 1) % 88
  307.           else
  308.             if rand(200) == 0
  309.               @info[i] = 1
  310.             end
  311.             sprite.x -= 5
  312.             sprite.y += 1
  313.           end
  314.         end
  315.         if @type == 9 # 落下的树叶 (绿色的)
  316.           if @countarray[i] == 0
  317.             @current_pose[i] = (@current_pose[i] + 1) % @green_leaf_bitmaps.size
  318.             sprite.bitmap = @green_leaf_bitmaps[@current_pose[i]]
  319.             @countarray[i] = rand(15)
  320.           end
  321.           @countarray[i] = (@countarray[i] + 1) % 15
  322.           sprite.y += 1
  323.         end
  324.         if @type == 10 # 樱桃花 (sakura) 花瓣
  325.           if @info[i] < 25
  326.             sprite.x -= 1
  327.           else
  328.             sprite.x += 1
  329.           end
  330.           @info[i] = (@info[i] + 1) % 50
  331.           sprite.y += 1
  332.         end
  333.         if @type == 11 # 玫瑰花的花瓣
  334.           @count = rand(20)
  335.           if @count == 0
  336.             sprite.bitmap = @rose_bitmaps[@current_pose[i]]
  337.             @current_pose[i] = (@current_pose[i] + 1) % @rose_bitmaps.size
  338.           end
  339.           if @info[i] % 2 == 0
  340.             if @info[i] < 10
  341.               sprite.x -= 1
  342.             elsif
  343.               sprite.x += 1
  344.             end
  345.           end
  346.           sprite.y += 1
  347.         end
  348.         if @type == 12 # 羽毛
  349.           if @countarray[i] == 0
  350.             @current_pose[i] = (@current_pose[i] + 1) % @feather_bitmaps.size
  351.             sprite.bitmap = @feather_bitmaps[@current_pose[i]]
  352.           end
  353.           @countarray[i] = (@countarray[i] + 1) % 15
  354.           if rand(100) == 0
  355.             sprite.x -= 1
  356.           end
  357.           if rand(100) == 0
  358.             sprite.y -= 1
  359.           end
  360.           if @info[i] < 50
  361.             if rand(2) == 0
  362.               sprite.x -= 1
  363.             else
  364.               sprite.y -= 1
  365.             end
  366.           else
  367.             if rand(2) == 0
  368.               sprite.x += 1
  369.             else
  370.               sprite.y += 1
  371.             end
  372.           end
  373.           @info[i] = (@info[i] + 1) % 100
  374.         end
  375.         if @type == 14 # 闪耀(火花)
  376.           if @countarray[i] == 0
  377.             @current_pose[i] = (@current_pose[i] + 1) % @sparkle_bitmaps.size
  378.             sprite.bitmap = @sparkle_bitmaps[@current_pose[i]]
  379.           end
  380.           @countarray[i] = (@countarray[i] + 1) % 15
  381.           sprite.y += 1
  382.           sprite.opacity -= 1
  383.         end
  384.         if @type == 15 # 自定义(用户)
  385.           if $WEATHER_UPDATE
  386.             update_user_defined
  387.             $WEATHER_UPDATE = false
  388.           end
  389.           if $WEATHER_ANIMATED and @countarray[i] == 0
  390.             @current_pose[i] = (@current_pose[i] + 1) % @user_bitmaps.size
  391.             sprite.bitmap = @user_bitmaps[@current_pose[i]]
  392.           end
  393.           sprite.x += $WEATHER_X
  394.           sprite.y += $WEATHER_Y
  395.           sprite.opacity -= $WEATHER_FADE
  396.         end
  397.         if @type == 16 #吹制雪
  398.           sprite.x -= 10
  399.           sprite.y += 6
  400.           sprite.opacity -= 4
  401.         end
  402.         if @type == 17 # 流星雨
  403.           if @countarray[i] > 0
  404.             if rand(20) == 0
  405.               sprite.bitmap = @impact_bitmap
  406.               @countarray[i] = -5
  407.             else
  408.               sprite.x -= 6
  409.               sprite.y += 10
  410.             end
  411.           else
  412.             @countarray[i] += 1
  413.             if @countarray[i] == 0
  414.               sprite.bitmap = @meteor_bitmap
  415.               sprite.opacity = 0
  416.               @count_array = 1
  417.             end
  418.           end
  419.         end
  420.         if @type == 18 # 灰
  421.           sprite.y += 2
  422.           case @countarray[i] % 3
  423.             when 0
  424.             sprite.x -= 1
  425.             when 1
  426.             sprite.x += 1
  427.           end
  428.         end
  429.         if @type == 19 # 泡沫
  430.           switch = rand(75) + rand(75) + 1
  431.           if @info[i] < switch / 2
  432.             sprite.x -= 1
  433.           else
  434.             sprite.x += 1
  435.           end
  436.           @info[i] = (@info[i] + 1) % switch
  437.           sprite.y -= 1
  438.           if switch % 2 == 0
  439.             sprite.opacity -= 1
  440.           end
  441.         end
  442.         x = sprite.x - @ox
  443.         y = sprite.y - @oy
  444.         if sprite.opacity < 64 or x < -50 or x > 750 or y < -300 or y > 500
  445.           sprite.x = rand(800) - 50 + @ox
  446.           sprite.y = rand(800) - 200 + @oy
  447.           sprite.opacity = 255
  448.         end
  449.       end
  450.     end
  451.     #创造位图
  452.     def make_bitmaps
  453.       #定义颜色
  454.       color1 = Color.new(255, 255, 255, 255)
  455.       color2 = Color.new(255, 255, 255, 128)
  456.       @rain_bitmap = Bitmap.new(7, 56)
  457.       for i in 0..6
  458.         @rain_bitmap.fill_rect(6-i, i*8, 1, 8, color1)
  459.       end
  460.       @storm_bitmap = Bitmap.new(34, 64)
  461.       for i in 0..31
  462.         @storm_bitmap.fill_rect(33-i, i*2, 1, 2, color2)
  463.         @storm_bitmap.fill_rect(32-i, i*2, 1, 2, color1)
  464.         @storm_bitmap.fill_rect(31-i, i*2, 1, 2, color2)
  465.       end
  466.       @snow_bitmap = Bitmap.new(6, 6)
  467.       @snow_bitmap.fill_rect(0, 1, 6, 4, color2)
  468.       @snow_bitmap.fill_rect(1, 0, 4, 6, color2)
  469.       @snow_bitmap.fill_rect(1, 2, 4, 2, color1)
  470.       @snow_bitmap.fill_rect(2, 1, 2, 4, color1)
  471.       @sprites = []
  472.       blueGrey  = Color.new(215, 227, 227, 150)
  473.       grey      = Color.new(214, 217, 217, 150)
  474.       lightGrey = Color.new(233, 233, 233, 250)
  475.       lightBlue = Color.new(222, 239, 243, 250)
  476.       @hail_bitmap = Bitmap.new(4, 4)
  477.       @hail_bitmap.fill_rect(1, 0, 2, 1, blueGrey)
  478.       @hail_bitmap.fill_rect(0, 1, 1, 2, blueGrey)
  479.       @hail_bitmap.fill_rect(3, 1, 1, 2, grey)
  480.       @hail_bitmap.fill_rect(1, 3, 2, 1, grey)
  481.       @hail_bitmap.fill_rect(1, 1, 2, 2, lightGrey)
  482.       @hail_bitmap.set_pixel(1, 1, lightBlue)
  483.       color3 = Color.new(255, 167, 192, 255)  
  484.       color4 = Color.new(213, 106, 136, 255)
  485.       @petal_bitmap = Bitmap.new(4, 4)
  486.       @petal_bitmap.fill_rect(0, 3, 1, 1, color3)
  487.       @petal_bitmap.fill_rect(1, 2, 1, 1, color3)
  488.       @petal_bitmap.fill_rect(2, 1, 1, 1, color3)
  489.       @petal_bitmap.fill_rect(3, 0, 1, 1, color3)
  490.       @petal_bitmap.fill_rect(1, 3, 1, 1, color4)
  491.       @petal_bitmap.fill_rect(2, 2, 1, 1, color4)
  492.       @petal_bitmap.fill_rect(3, 1, 1, 1, color4)
  493.       #定义部分颜色
  494.       brightOrange = Color.new(248, 88, 0, 255)   
  495.       orangeBrown  = Color.new(144, 80, 56, 255)
  496.       burntRed     = Color.new(152, 0, 0, 255)
  497.       paleOrange   = Color.new(232, 160, 128, 255)
  498.       darkBrown    = Color.new(72, 40, 0, 255)
  499.       @autumn_leaf_bitmaps = []
  500.       @autumn_leaf_bitmaps.push(Bitmap.new(8, 8))
  501.       @autumn_leaf_bitmaps[0].set_pixel(5, 1, orangeBrown)
  502.       @autumn_leaf_bitmaps[0].set_pixel(6, 1, brightOrange)
  503.       @autumn_leaf_bitmaps[0].set_pixel(7, 1, paleOrange)
  504.       @autumn_leaf_bitmaps[0].set_pixel(3, 2, orangeBrown)
  505.       @autumn_leaf_bitmaps[0].fill_rect(4, 2, 2, 1, brightOrange)
  506.       @autumn_leaf_bitmaps[0].set_pixel(6, 2, paleOrange)
  507.       @autumn_leaf_bitmaps[0].set_pixel(2, 3, orangeBrown)
  508.       @autumn_leaf_bitmaps[0].set_pixel(3, 3, brightOrange)
  509.       @autumn_leaf_bitmaps[0].fill_rect(4, 3, 2, 1, paleOrange)
  510.       @autumn_leaf_bitmaps[0].set_pixel(1, 4, orangeBrown)
  511.       @autumn_leaf_bitmaps[0].set_pixel(2, 4, brightOrange)
  512.       @autumn_leaf_bitmaps[0].set_pixel(3, 4, paleOrange)
  513.       @autumn_leaf_bitmaps[0].set_pixel(1, 5, brightOrange)
  514.       @autumn_leaf_bitmaps[0].set_pixel(2, 5, paleOrange)
  515.       @autumn_leaf_bitmaps[0].set_pixel(0, 6, orangeBrown)
  516.       @autumn_leaf_bitmaps[0].set_pixel(1, 6, paleOrange)
  517.       @autumn_leaf_bitmaps[0].set_pixel(0, 7, paleOrange)
  518.       @autumn_leaf_bitmaps.push(Bitmap.new(8, 8))
  519.       @autumn_leaf_bitmaps[1].set_pixel(3, 0, brightOrange)
  520.       @autumn_leaf_bitmaps[1].set_pixel(7, 0, brightOrange)
  521.       @autumn_leaf_bitmaps[1].set_pixel(3, 1, orangeBrown)
  522.       @autumn_leaf_bitmaps[1].set_pixel(4, 1, burntRed)
  523.       @autumn_leaf_bitmaps[1].set_pixel(6, 1, brightOrange)
  524.       @autumn_leaf_bitmaps[1].set_pixel(0, 2, paleOrange)
  525.       @autumn_leaf_bitmaps[1].set_pixel(1, 2, brightOrange)
  526.       @autumn_leaf_bitmaps[1].set_pixel(2, 2, orangeBrown)
  527.       @autumn_leaf_bitmaps[1].set_pixel(3, 2, burntRed)
  528.       @autumn_leaf_bitmaps[1].set_pixel(4, 2, orangeBrown)
  529.       @autumn_leaf_bitmaps[1].set_pixel(5, 2, brightOrange)
  530.       @autumn_leaf_bitmaps[1].fill_rect(1, 3, 3, 1, orangeBrown)
  531.       @autumn_leaf_bitmaps[1].fill_rect(4, 3, 2, 1, brightOrange)
  532.       @autumn_leaf_bitmaps[1].set_pixel(6, 3, orangeBrown)
  533.       @autumn_leaf_bitmaps[1].set_pixel(2, 4, burntRed)
  534.       @autumn_leaf_bitmaps[1].fill_rect(3, 4, 3, 1, brightOrange)
  535.       @autumn_leaf_bitmaps[1].set_pixel(6, 4, burntRed)
  536.       @autumn_leaf_bitmaps[1].set_pixel(7, 4, darkBrown)
  537.       @autumn_leaf_bitmaps[1].set_pixel(1, 5, orangeBrown)
  538.       @autumn_leaf_bitmaps[1].fill_rect(2, 5, 2, 1, brightOrange)
  539.       @autumn_leaf_bitmaps[1].set_pixel(4, 5, orangeBrown)
  540.       @autumn_leaf_bitmaps[1].set_pixel(5, 5, burntRed)
  541.       @autumn_leaf_bitmaps[1].fill_rect(1, 6, 2, 1, brightOrange)
  542.       @autumn_leaf_bitmaps[1].fill_rect(4, 6, 2, 1, burntRed)
  543.       @autumn_leaf_bitmaps[1].set_pixel(0, 7, brightOrange)
  544.       @autumn_leaf_bitmaps[1].set_pixel(5, 7, darkBrown)
  545.       @autumn_leaf_bitmaps.push(Bitmap.new(8, 8))
  546.       @autumn_leaf_bitmaps[2].set_pixel(7, 1, paleOrange)
  547.       @autumn_leaf_bitmaps[2].set_pixel(6, 2, paleOrange)
  548.       @autumn_leaf_bitmaps[2].set_pixel(7, 2, orangeBrown)
  549.       @autumn_leaf_bitmaps[2].set_pixel(5, 3, paleOrange)
  550.       @autumn_leaf_bitmaps[2].set_pixel(6, 3, brightOrange)
  551.       @autumn_leaf_bitmaps[2].set_pixel(4, 4, paleOrange)
  552.       @autumn_leaf_bitmaps[2].set_pixel(5, 4, brightOrange)
  553.       @autumn_leaf_bitmaps[2].set_pixel(6, 4, orangeBrown)
  554.       @autumn_leaf_bitmaps[2].fill_rect(2, 5, 2, 1, paleOrange)
  555.       @autumn_leaf_bitmaps[2].set_pixel(4, 5, brightOrange)
  556.       @autumn_leaf_bitmaps[2].set_pixel(5, 5, orangeBrown)
  557.       @autumn_leaf_bitmaps[2].set_pixel(1, 6, paleOrange)
  558.       @autumn_leaf_bitmaps[2].fill_rect(2, 6, 2, 1, brightOrange)
  559.       @autumn_leaf_bitmaps[2].set_pixel(4, 6, orangeBrown)
  560.       @autumn_leaf_bitmaps[2].set_pixel(0, 7, paleOrange)
  561.       @autumn_leaf_bitmaps[2].set_pixel(1, 7, brightOrange)
  562.       @autumn_leaf_bitmaps[2].set_pixel(2, 7, orangeBrown)
  563.       @autumn_leaf_bitmaps.push(Bitmap.new(8, 8))
  564.       @autumn_leaf_bitmaps[3].set_pixel(3, 0, brightOrange)
  565.       @autumn_leaf_bitmaps[3].set_pixel(7, 0, brightOrange)
  566.       @autumn_leaf_bitmaps[3].set_pixel(3, 1, orangeBrown)
  567.       @autumn_leaf_bitmaps[3].set_pixel(4, 1, burntRed)
  568.       @autumn_leaf_bitmaps[3].set_pixel(6, 1, brightOrange)
  569.       @autumn_leaf_bitmaps[3].set_pixel(0, 2, paleOrange)
  570.       @autumn_leaf_bitmaps[3].set_pixel(1, 2, brightOrange)
  571.       @autumn_leaf_bitmaps[3].set_pixel(2, 2, orangeBrown)
  572.       @autumn_leaf_bitmaps[3].set_pixel(3, 2, burntRed)
  573.       @autumn_leaf_bitmaps[3].set_pixel(4, 2, orangeBrown)
  574.       @autumn_leaf_bitmaps[3].set_pixel(5, 2, brightOrange)
  575.       @autumn_leaf_bitmaps[3].fill_rect(1, 3, 3, 1, orangeBrown)
  576.       @autumn_leaf_bitmaps[3].fill_rect(4, 3, 2, 1, brightOrange)
  577.       @autumn_leaf_bitmaps[3].set_pixel(6, 3, orangeBrown)
  578.       @autumn_leaf_bitmaps[3].set_pixel(2, 4, burntRed)
  579.       @autumn_leaf_bitmaps[3].fill_rect(3, 4, 3, 1, brightOrange)
  580.       @autumn_leaf_bitmaps[3].set_pixel(6, 4, burntRed)
  581.       @autumn_leaf_bitmaps[3].set_pixel(7, 4, darkBrown)
  582.       @autumn_leaf_bitmaps[3].set_pixel(1, 5, orangeBrown)
  583.       @autumn_leaf_bitmaps[3].fill_rect(2, 5, 2, 1, brightOrange)
  584.       @autumn_leaf_bitmaps[3].set_pixel(4, 5, orangeBrown)
  585.       @autumn_leaf_bitmaps[3].set_pixel(5, 5, burntRed)
  586.       @autumn_leaf_bitmaps[3].fill_rect(1, 6, 2, 1, brightOrange)
  587.       @autumn_leaf_bitmaps[3].fill_rect(4, 6, 2, 1, burntRed)
  588.       @autumn_leaf_bitmaps[3].set_pixel(0, 7, brightOrange)
  589.       @autumn_leaf_bitmaps[3].set_pixel(5, 7, darkBrown)
  590.       @green_leaf_bitmaps = []
  591.       darkGreen  = Color.new(62, 76, 31, 255)
  592.       midGreen   = Color.new(76, 91, 43, 255)
  593.       khaki      = Color.new(105, 114, 66, 255)
  594.       lightGreen = Color.new(128, 136, 88, 255)
  595.       mint       = Color.new(146, 154, 106, 255)
  596.       @green_leaf_bitmaps[0] = Bitmap.new(8, 8)
  597.       @green_leaf_bitmaps[0].set_pixel(1, 0, darkGreen)
  598.       @green_leaf_bitmaps[0].set_pixel(1, 1, midGreen)
  599.       @green_leaf_bitmaps[0].set_pixel(2, 1, darkGreen)
  600.       @green_leaf_bitmaps[0].set_pixel(2, 2, khaki)
  601.       @green_leaf_bitmaps[0].set_pixel(3, 2, darkGreen)
  602.       @green_leaf_bitmaps[0].set_pixel(4, 2, khaki)
  603.       @green_leaf_bitmaps[0].fill_rect(2, 3, 3, 1, midGreen)
  604.       @green_leaf_bitmaps[0].set_pixel(5, 3, khaki)
  605.       @green_leaf_bitmaps[0].fill_rect(2, 4, 2, 1, midGreen)
  606.       @green_leaf_bitmaps[0].set_pixel(4, 4, darkGreen)
  607.       @green_leaf_bitmaps[0].set_pixel(5, 4, lightGreen)
  608.       @green_leaf_bitmaps[0].set_pixel(6, 4, khaki)
  609.       @green_leaf_bitmaps[0].set_pixel(3, 5, midGreen)
  610.       @green_leaf_bitmaps[0].set_pixel(4, 5, darkGreen)
  611.       @green_leaf_bitmaps[0].set_pixel(5, 5, khaki)
  612.       @green_leaf_bitmaps[0].set_pixel(6, 5, lightGreen)
  613.       @green_leaf_bitmaps[0].set_pixel(4, 6, midGreen)
  614.       @green_leaf_bitmaps[0].set_pixel(5, 6, darkGreen)
  615.       @green_leaf_bitmaps[0].set_pixel(6, 6, lightGreen)
  616.       @green_leaf_bitmaps[0].set_pixel(6, 7, khaki)
  617.       @green_leaf_bitmaps[1] = Bitmap.new(8, 8)
  618.       @green_leaf_bitmaps[1].fill_rect(1, 1, 1, 2, midGreen)
  619.       @green_leaf_bitmaps[1].fill_rect(2, 2, 2, 1, khaki)
  620.       @green_leaf_bitmaps[1].set_pixel(4, 2, lightGreen)
  621.       @green_leaf_bitmaps[1].fill_rect(2, 3, 2, 1, darkGreen)
  622.       @green_leaf_bitmaps[1].fill_rect(4, 3, 2, 1, lightGreen)
  623.       @green_leaf_bitmaps[1].set_pixel(2, 4, midGreen)
  624.       @green_leaf_bitmaps[1].set_pixel(3, 4, darkGreen)
  625.       @green_leaf_bitmaps[1].set_pixel(4, 4, khaki)
  626.       @green_leaf_bitmaps[1].fill_rect(5, 4, 2, 1, lightGreen)
  627.       @green_leaf_bitmaps[1].set_pixel(3, 5, midGreen)
  628.       @green_leaf_bitmaps[1].set_pixel(4, 5, darkGreen)
  629.       @green_leaf_bitmaps[1].set_pixel(5, 5, khaki)
  630.       @green_leaf_bitmaps[1].set_pixel(6, 5, lightGreen)
  631.       @green_leaf_bitmaps[1].set_pixel(5, 6, darkGreen)
  632.       @green_leaf_bitmaps[1].fill_rect(6, 6, 2, 1, khaki)
  633.       @green_leaf_bitmaps[2] = Bitmap.new(8, 8)
  634.       @green_leaf_bitmaps[2].set_pixel(1, 1, darkGreen)
  635.       @green_leaf_bitmaps[2].fill_rect(1, 2, 2, 1, midGreen)
  636.       @green_leaf_bitmaps[2].set_pixel(2, 3, midGreen)
  637.       @green_leaf_bitmaps[2].set_pixel(3, 3, darkGreen)
  638.       @green_leaf_bitmaps[2].set_pixel(4, 3, midGreen)
  639.       @green_leaf_bitmaps[2].fill_rect(2, 4, 2, 1, midGreen)
  640.       @green_leaf_bitmaps[2].set_pixel(4, 4, darkGreen)
  641.       @green_leaf_bitmaps[2].set_pixel(5, 4, lightGreen)
  642.       @green_leaf_bitmaps[2].set_pixel(3, 5, midGreen)
  643.       @green_leaf_bitmaps[2].set_pixel(4, 5, darkGreen)
  644.       @green_leaf_bitmaps[2].fill_rect(5, 5, 2, 1, khaki)
  645.       @green_leaf_bitmaps[2].fill_rect(4, 6, 2, 1, midGreen)
  646.       @green_leaf_bitmaps[2].set_pixel(6, 6, lightGreen)
  647.       @green_leaf_bitmaps[2].set_pixel(6, 7, khaki)
  648.       @green_leaf_bitmaps[3] = Bitmap.new(8, 8)
  649.       @green_leaf_bitmaps[3].fill_rect(0, 3, 1, 2, darkGreen)
  650.       @green_leaf_bitmaps[3].set_pixel(1, 4, midGreen)
  651.       @green_leaf_bitmaps[3].set_pixel(2, 4, khaki)
  652.       @green_leaf_bitmaps[3].set_pixel(3, 4, lightGreen)
  653.       @green_leaf_bitmaps[3].set_pixel(4, 4, darkGreen)
  654.       @green_leaf_bitmaps[3].set_pixel(7, 4, midGreen)
  655.       @green_leaf_bitmaps[3].set_pixel(1, 5, darkGreen)
  656.       @green_leaf_bitmaps[3].set_pixel(2, 5, midGreen)
  657.       @green_leaf_bitmaps[3].set_pixel(3, 5, lightGreen)
  658.       @green_leaf_bitmaps[3].set_pixel(4, 5, mint)
  659.       @green_leaf_bitmaps[3].set_pixel(5, 5, lightGreen)
  660.       @green_leaf_bitmaps[3].set_pixel(6, 5, khaki)
  661.       @green_leaf_bitmaps[3].set_pixel(7, 5, midGreen)
  662.       @green_leaf_bitmaps[3].fill_rect(2, 6, 2, 1, midGreen)
  663.       @green_leaf_bitmaps[3].set_pixel(4, 6, lightGreen)
  664.       @green_leaf_bitmaps[3].set_pixel(5, 6, khaki)
  665.       @green_leaf_bitmaps[3].set_pixel(6, 6, midGreen)
  666.       @green_leaf_bitmaps[4] = Bitmap.new(8, 8)
  667.       @green_leaf_bitmaps[4].set_pixel(6, 2, midGreen)
  668.       @green_leaf_bitmaps[4].set_pixel(7, 2, darkGreen)
  669.       @green_leaf_bitmaps[4].fill_rect(4, 3, 2, 1, midGreen)
  670.       @green_leaf_bitmaps[4].set_pixel(6, 3, khaki)
  671.       @green_leaf_bitmaps[4].set_pixel(2, 4, darkGreen)
  672.       @green_leaf_bitmaps[4].fill_rect(3, 4, 2, 1, khaki)
  673.       @green_leaf_bitmaps[4].set_pixel(5, 4, lightGreen)
  674.       @green_leaf_bitmaps[4].set_pixel(6, 4, khaki)
  675.       @green_leaf_bitmaps[4].set_pixel(1, 5, midGreen)
  676.       @green_leaf_bitmaps[4].set_pixel(2, 5, khaki)
  677.       @green_leaf_bitmaps[4].set_pixel(3, 5, lightGreen)
  678.       @green_leaf_bitmaps[4].set_pixel(4, 5, mint)
  679.       @green_leaf_bitmaps[4].set_pixel(5, 5, midGreen)
  680.       @green_leaf_bitmaps[4].set_pixel(2, 6, darkGreen)
  681.       @green_leaf_bitmaps[4].fill_rect(3, 6, 2, 1, midGreen)
  682.       @green_leaf_bitmaps[5] = Bitmap.new(8, 8)
  683.       @green_leaf_bitmaps[5].fill_rect(6, 2, 2, 1, midGreen)
  684.       @green_leaf_bitmaps[5].fill_rect(4, 3, 2, 1, midGreen)
  685.       @green_leaf_bitmaps[5].set_pixel(6, 3, khaki)
  686.       @green_leaf_bitmaps[5].set_pixel(3, 4, midGreen)
  687.       @green_leaf_bitmaps[5].set_pixel(4, 4, khaki)
  688.       @green_leaf_bitmaps[5].set_pixel(5, 4, lightGreen)
  689.       @green_leaf_bitmaps[5].set_pixel(6, 4, mint)
  690.       @green_leaf_bitmaps[5].set_pixel(1, 5, midGreen)
  691.       @green_leaf_bitmaps[5].set_pixel(2, 5, khaki)
  692.       @green_leaf_bitmaps[5].fill_rect(3, 5, 2, 1, mint)
  693.       @green_leaf_bitmaps[5].set_pixel(5, 5, lightGreen)
  694.       @green_leaf_bitmaps[5].set_pixel(2, 6, midGreen)
  695.       @green_leaf_bitmaps[5].set_pixel(3, 6, khaki)
  696.       @green_leaf_bitmaps[5].set_pixel(4, 6, lightGreen)
  697.       @green_leaf_bitmaps[6] = Bitmap.new(8, 8)
  698.       @green_leaf_bitmaps[6].fill_rect(6, 1, 1, 2, midGreen)
  699.       @green_leaf_bitmaps[6].fill_rect(4, 2, 2, 1, midGreen)
  700.       @green_leaf_bitmaps[6].fill_rect(6, 2, 1, 2, darkGreen)
  701.       @green_leaf_bitmaps[6].fill_rect(3, 3, 2, 1, midGreen)
  702.       @green_leaf_bitmaps[6].set_pixel(5, 3, khaki)
  703.       @green_leaf_bitmaps[6].set_pixel(2, 4, midGreen)
  704.       @green_leaf_bitmaps[6].set_pixel(3, 4, khaki)
  705.       @green_leaf_bitmaps[6].set_pixel(4, 4, lightGreen)
  706.       @green_leaf_bitmaps[6].set_pixel(5, 4, midGreen)
  707.       @green_leaf_bitmaps[6].set_pixel(1, 5, midGreen)
  708.       @green_leaf_bitmaps[6].set_pixel(2, 5, khaki)
  709.       @green_leaf_bitmaps[6].fill_rect(3, 5, 2, 1, midGreen)
  710.       @green_leaf_bitmaps[6].set_pixel(1, 6, darkGreen)
  711.       @green_leaf_bitmaps[6].set_pixel(2, 6, midGreen)
  712.       @green_leaf_bitmaps[7] = Bitmap.new(8, 8)
  713.       @green_leaf_bitmaps[7].set_pixel(6, 1, midGreen)
  714.       @green_leaf_bitmaps[7].fill_rect(4, 2, 3, 2, midGreen)
  715.       @green_leaf_bitmaps[7].set_pixel(3, 3, darkGreen)
  716.       @green_leaf_bitmaps[7].set_pixel(2, 4, darkGreen)
  717.       @green_leaf_bitmaps[7].set_pixel(3, 4, midGreen)
  718.       @green_leaf_bitmaps[7].fill_rect(4, 4, 2, 1, khaki)
  719.       @green_leaf_bitmaps[7].set_pixel(1, 5, darkGreen)
  720.       @green_leaf_bitmaps[7].set_pixel(2, 5, midGreen)
  721.       @green_leaf_bitmaps[7].fill_rect(3, 5, 2, 1, lightGreen)
  722.       @green_leaf_bitmaps[7].set_pixel(2, 6, midGreen)
  723.       @green_leaf_bitmaps[7].set_pixel(3, 6, lightGreen)
  724.       @green_leaf_bitmaps[8] = Bitmap.new(8, 8)
  725.       @green_leaf_bitmaps[8].fill_rect(6, 1, 1, 2, midGreen)
  726.       @green_leaf_bitmaps[8].fill_rect(4, 2, 2, 1, midGreen)
  727.       @green_leaf_bitmaps[8].fill_rect(6, 2, 1, 2, darkGreen)
  728.       @green_leaf_bitmaps[8].fill_rect(3, 3, 2, 1, midGreen)
  729.       @green_leaf_bitmaps[8].set_pixel(5, 3, khaki)
  730.       @green_leaf_bitmaps[8].set_pixel(2, 4, midGreen)
  731.       @green_leaf_bitmaps[8].set_pixel(3, 4, khaki)
  732.       @green_leaf_bitmaps[8].set_pixel(4, 4, lightGreen)
  733.       @green_leaf_bitmaps[8].set_pixel(5, 4, midGreen)
  734.       @green_leaf_bitmaps[8].set_pixel(1, 5, midGreen)
  735.       @green_leaf_bitmaps[8].set_pixel(2, 5, khaki)
  736.       @green_leaf_bitmaps[8].fill_rect(3, 5, 2, 1, midGreen)
  737.       @green_leaf_bitmaps[8].set_pixel(1, 6, darkGreen)
  738.       @green_leaf_bitmaps[8].set_pixel(2, 6, midGreen)
  739.       @green_leaf_bitmaps[9] = Bitmap.new(8, 8)
  740.       @green_leaf_bitmaps[9].fill_rect(6, 2, 2, 1, midGreen)
  741.       @green_leaf_bitmaps[9].fill_rect(4, 3, 2, 1, midGreen)
  742.       @green_leaf_bitmaps[9].set_pixel(6, 3, khaki)
  743.       @green_leaf_bitmaps[9].set_pixel(3, 4, midGreen)
  744.       @green_leaf_bitmaps[9].set_pixel(4, 4, khaki)
  745.       @green_leaf_bitmaps[9].set_pixel(5, 4, lightGreen)
  746.       @green_leaf_bitmaps[9].set_pixel(6, 4, mint)
  747.       @green_leaf_bitmaps[9].set_pixel(1, 5, midGreen)
  748.       @green_leaf_bitmaps[9].set_pixel(2, 5, khaki)
  749.       @green_leaf_bitmaps[9].fill_rect(3, 5, 2, 1, mint)
  750.       @green_leaf_bitmaps[9].set_pixel(5, 5, lightGreen)
  751.       @green_leaf_bitmaps[9].set_pixel(2, 6, midGreen)
  752.       @green_leaf_bitmaps[9].set_pixel(3, 6, khaki)
  753.       @green_leaf_bitmaps[9].set_pixel(4, 6, lightGreen)
  754.       @green_leaf_bitmaps[10] = Bitmap.new(8, 8)
  755.       @green_leaf_bitmaps[10].set_pixel(6, 2, midGreen)
  756.       @green_leaf_bitmaps[10].set_pixel(7, 2, darkGreen)
  757.       @green_leaf_bitmaps[10].fill_rect(4, 3, 2, 1, midGreen)
  758.       @green_leaf_bitmaps[10].set_pixel(6, 3, khaki)
  759.       @green_leaf_bitmaps[10].set_pixel(2, 4, darkGreen)
  760.       @green_leaf_bitmaps[10].fill_rect(3, 4, 2, 1, khaki)
  761.       @green_leaf_bitmaps[10].set_pixel(5, 4, lightGreen)
  762.       @green_leaf_bitmaps[10].set_pixel(6, 4, khaki)
  763.       @green_leaf_bitmaps[10].set_pixel(1, 5, midGreen)
  764.       @green_leaf_bitmaps[10].set_pixel(2, 5, khaki)
  765.       @green_leaf_bitmaps[10].set_pixel(3, 5, lightGreen)
  766.       @green_leaf_bitmaps[10].set_pixel(4, 5, mint)
  767.       @green_leaf_bitmaps[10].set_pixel(5, 5, midGreen)
  768.       @green_leaf_bitmaps[10].set_pixel(2, 6, darkGreen)
  769.       @green_leaf_bitmaps[10].fill_rect(3, 6, 2, 1, midGreen)
  770.       @green_leaf_bitmaps[11] = Bitmap.new(8, 8)
  771.       @green_leaf_bitmaps[11].fill_rect(0, 3, 1, 2, darkGreen)
  772.       @green_leaf_bitmaps[11].set_pixel(1, 4, midGreen)
  773.       @green_leaf_bitmaps[11].set_pixel(2, 4, khaki)
  774.       @green_leaf_bitmaps[11].set_pixel(3, 4, lightGreen)
  775.       @green_leaf_bitmaps[11].set_pixel(4, 4, darkGreen)
  776.       @green_leaf_bitmaps[11].set_pixel(7, 4, midGreen)
  777.       @green_leaf_bitmaps[11].set_pixel(1, 5, darkGreen)
  778.       @green_leaf_bitmaps[11].set_pixel(2, 5, midGreen)
  779.       @green_leaf_bitmaps[11].set_pixel(3, 5, lightGreen)
  780.       @green_leaf_bitmaps[11].set_pixel(4, 5, mint)
  781.       @green_leaf_bitmaps[11].set_pixel(5, 5, lightGreen)
  782.       @green_leaf_bitmaps[11].set_pixel(6, 5, khaki)
  783.       @green_leaf_bitmaps[11].set_pixel(7, 5, midGreen)
  784.       @green_leaf_bitmaps[11].fill_rect(2, 6, 2, 1, midGreen)
  785.       @green_leaf_bitmaps[11].set_pixel(4, 6, lightGreen)
  786.       @green_leaf_bitmaps[11].set_pixel(5, 6, khaki)
  787.       @green_leaf_bitmaps[11].set_pixel(6, 6, midGreen)
  788.       @green_leaf_bitmaps[12] = Bitmap.new(8, 8)
  789.       @green_leaf_bitmaps[12].set_pixel(1, 1, darkGreen)
  790.       @green_leaf_bitmaps[12].fill_rect(1, 2, 2, 1, midGreen)
  791.       @green_leaf_bitmaps[12].set_pixel(2, 3, midGreen)
  792.       @green_leaf_bitmaps[12].set_pixel(3, 3, darkGreen)
  793.       @green_leaf_bitmaps[12].set_pixel(4, 3, midGreen)
  794.       @green_leaf_bitmaps[12].fill_rect(2, 4, 2, 1, midGreen)
  795.       @green_leaf_bitmaps[12].set_pixel(4, 4, darkGreen)
  796.       @green_leaf_bitmaps[12].set_pixel(5, 4, lightGreen)
  797.       @green_leaf_bitmaps[12].set_pixel(3, 5, midGreen)
  798.       @green_leaf_bitmaps[12].set_pixel(4, 5, darkGreen)
  799.       @green_leaf_bitmaps[12].fill_rect(5, 5, 2, 1, khaki)
  800.       @green_leaf_bitmaps[12].fill_rect(4, 6, 2, 1, midGreen)
  801.       @green_leaf_bitmaps[12].set_pixel(6, 6, lightGreen)
  802.       @green_leaf_bitmaps[12].set_pixel(6, 7, khaki)
  803.       @rose_bitmaps = []
  804.       brightRed = Color.new(255, 0, 0, 255)
  805.       midRed    = Color.new(179, 17, 17, 255)
  806.       darkRed   = Color.new(141, 9, 9, 255)
  807.       @rose_bitmaps[0] = Bitmap.new(3, 3)
  808.       @rose_bitmaps[0].fill_rect(1, 0, 2, 1, brightRed)
  809.       @rose_bitmaps[0].fill_rect(0, 1, 1, 2, brightRed)
  810.       @rose_bitmaps[0].fill_rect(1, 1, 2, 2, midRed)
  811.       @rose_bitmaps[0].set_pixel(2, 2, darkRed)
  812.       @rose_bitmaps[1] = Bitmap.new(3, 3)
  813.       @rose_bitmaps[1].set_pixel(0, 1, midRed)
  814.       @rose_bitmaps[1].set_pixel(1, 1, brightRed)
  815.       @rose_bitmaps[1].fill_rect(1, 2, 1, 2, midRed)
  816.       @feather_bitmaps = []
  817.       white = Color.new(255, 255, 255, 255)
  818.       @feather_bitmaps[0] = Bitmap.new(3, 3)
  819.       @feather_bitmaps[0].set_pixel(0, 2, white)
  820.       @feather_bitmaps[0].set_pixel(1, 2, grey)
  821.       @feather_bitmaps[0].set_pixel(2, 1, grey)
  822.       @feather_bitmaps[0] = Bitmap.new(3, 3)
  823.       @feather_bitmaps[0].set_pixel(0, 0, white)
  824.       @feather_bitmaps[0].set_pixel(0, 1, grey)
  825.       @feather_bitmaps[0].set_pixel(1, 2, grey)
  826.       @feather_bitmaps[0] = Bitmap.new(3, 3)
  827.       @feather_bitmaps[0].set_pixel(2, 0, white)
  828.       @feather_bitmaps[0].set_pixel(1, 0, grey)
  829.       @feather_bitmaps[0].set_pixel(0, 1, grey)
  830.       @feather_bitmaps[0] = Bitmap.new(3, 3)
  831.       @feather_bitmaps[0].set_pixel(2, 2, white)
  832.       @feather_bitmaps[0].set_pixel(2, 1, grey)
  833.       @feather_bitmaps[0].set_pixel(1, 0, grey)
  834.       @blood_rain_bitmap = Bitmap.new(7, 56)
  835.       for i in 0..6
  836.         @blood_rain_bitmap.fill_rect(6-i, i*8, 1, 8, darkRed)
  837.       end
  838.       @sparkle_bitmaps = []
  839.       lightBlue = Color.new(181, 244, 255, 255)
  840.       midBlue   = Color.new(126, 197, 235, 255)
  841.       darkBlue  = Color.new(77, 136, 225, 255)
  842.       @sparkle_bitmaps[0] = Bitmap.new(7, 7)
  843.       @sparkle_bitmaps[0].set_pixel(3, 3, darkBlue)
  844.       @sparkle_bitmaps[1] = Bitmap.new(7, 7)
  845.       @sparkle_bitmaps[1].fill_rect(3, 2, 1, 3, darkBlue)
  846.       @sparkle_bitmaps[1].fill_rect(2, 3, 3, 1, darkBlue)
  847.       @sparkle_bitmaps[1].set_pixel(3, 3, midBlue)
  848.       @sparkle_bitmaps[2] = Bitmap.new(7, 7)
  849.       @sparkle_bitmaps[2].set_pixel(1, 1, darkBlue)
  850.       @sparkle_bitmaps[2].set_pixel(5, 1, darkBlue)
  851.       @sparkle_bitmaps[2].set_pixel(2, 2, midBlue)
  852.       @sparkle_bitmaps[2].set_pixel(4, 2, midBlue)
  853.       @sparkle_bitmaps[2].set_pixel(3, 3, lightBlue)
  854.       @sparkle_bitmaps[2].set_pixel(2, 4, midBlue)
  855.       @sparkle_bitmaps[2].set_pixel(4, 4, midBlue)
  856.       @sparkle_bitmaps[2].set_pixel(1, 5, darkBlue)
  857.       @sparkle_bitmaps[2].set_pixel(5, 5, darkBlue)
  858.       @sparkle_bitmaps[3] = Bitmap.new(7, 7)
  859.       @sparkle_bitmaps[3].fill_rect(3, 1, 1, 5, darkBlue)
  860.       @sparkle_bitmaps[3].fill_rect(1, 3, 5, 1, darkBlue)
  861.       @sparkle_bitmaps[3].fill_rect(3, 2, 1, 3, midBlue)
  862.       @sparkle_bitmaps[3].fill_rect(2, 3, 3, 1, midBlue)
  863.       @sparkle_bitmaps[3].set_pixel(3, 3, lightBlue)
  864.       @sparkle_bitmaps[4] = Bitmap.new(7, 7)
  865.       @sparkle_bitmaps[4].fill_rect(2, 2, 3, 3, midBlue)
  866.       @sparkle_bitmaps[4].fill_rect(3, 2, 1, 3, darkBlue)
  867.       @sparkle_bitmaps[4].fill_rect(2, 3, 3, 1, darkBlue)
  868.       @sparkle_bitmaps[4].set_pixel(3, 3, lightBlue)
  869.       @sparkle_bitmaps[4].set_pixel(1, 1, darkBlue)
  870.       @sparkle_bitmaps[4].set_pixel(5, 1, darkBlue)
  871.       @sparkle_bitmaps[4].set_pixel(1, 5, darkBlue)
  872.       @sparkle_bitmaps[4].set_pixel(5, 1, darkBlue)
  873.       @sparkle_bitmaps[5] = Bitmap.new(7, 7)
  874.       @sparkle_bitmaps[5].fill_rect(2, 1, 3, 5, darkBlue)
  875.       @sparkle_bitmaps[5].fill_rect(1, 2, 5, 3, darkBlue)
  876.       @sparkle_bitmaps[5].fill_rect(2, 2, 3, 3, midBlue)
  877.       @sparkle_bitmaps[5].fill_rect(3, 1, 1, 5, midBlue)
  878.       @sparkle_bitmaps[5].fill_rect(1, 3, 5, 1, midBlue)
  879.       @sparkle_bitmaps[5].fill_rect(3, 2, 1, 3, lightBlue)
  880.       @sparkle_bitmaps[5].fill_rect(2, 3, 3, 1, lightBlue)
  881.       @sparkle_bitmaps[5].set_pixel(3, 3, white)
  882.       @sparkle_bitmaps[6] = Bitmap.new(7, 7)
  883.       @sparkle_bitmaps[6].fill_rect(2, 1, 3, 5, midBlue)
  884.       @sparkle_bitmaps[6].fill_rect(1, 2, 5, 3, midBlue)
  885.       @sparkle_bitmaps[6].fill_rect(3, 0, 1, 7, darkBlue)
  886.       @sparkle_bitmaps[6].fill_rect(0, 3, 7, 1, darkBlue)
  887.       @sparkle_bitmaps[6].fill_rect(2, 2, 3, 3, lightBlue)
  888.       @sparkle_bitmaps[6].fill_rect(3, 2, 1, 3, midBlue)
  889.       @sparkle_bitmaps[6].fill_rect(2, 3, 3, 1, midBlue)
  890.       @sparkle_bitmaps[6].set_pixel(3, 3, white)
  891.       @meteor_bitmap = Bitmap.new(14, 12)
  892.       @meteor_bitmap.fill_rect(0, 8, 5, 4, paleOrange)
  893.       @meteor_bitmap.fill_rect(1, 7, 6, 4, paleOrange)
  894.       @meteor_bitmap.set_pixel(7, 8, paleOrange)
  895.       @meteor_bitmap.fill_rect(1, 8, 2, 2, brightOrange)
  896.       @meteor_bitmap.set_pixel(2, 7, brightOrange)
  897.       @meteor_bitmap.fill_rect(3, 6, 2, 1, brightOrange)
  898.       @meteor_bitmap.set_pixel(3, 8, brightOrange)
  899.       @meteor_bitmap.set_pixel(3, 10, brightOrange)
  900.       @meteor_bitmap.set_pixel(4, 9, brightOrange)
  901.       @meteor_bitmap.fill_rect(5, 5, 1, 5, brightOrange)
  902.       @meteor_bitmap.fill_rect(6, 4, 1, 5, brightOrange)
  903.       @meteor_bitmap.fill_rect(7, 3, 1, 5, brightOrange)
  904.       @meteor_bitmap.fill_rect(8, 6, 1, 2, brightOrange)
  905.       @meteor_bitmap.set_pixel(9, 5, brightOrange)
  906.       @meteor_bitmap.set_pixel(3, 8, midRed)
  907.       @meteor_bitmap.fill_rect(4, 7, 1, 2, midRed)
  908.       @meteor_bitmap.set_pixel(4, 5, midRed)
  909.       @meteor_bitmap.set_pixel(5, 4, midRed)
  910.       @meteor_bitmap.set_pixel(5, 6, midRed)
  911.       @meteor_bitmap.set_pixel(6, 5, midRed)
  912.       @meteor_bitmap.set_pixel(6, 7, midRed)
  913.       @meteor_bitmap.fill_rect(7, 4, 1, 3, midRed)
  914.       @meteor_bitmap.fill_rect(8, 3, 1, 3, midRed)
  915.       @meteor_bitmap.fill_rect(9, 2, 1, 3, midRed)
  916.       @meteor_bitmap.fill_rect(10, 1, 1, 3, midRed)
  917.       @meteor_bitmap.fill_rect(11, 0, 1, 3, midRed)
  918.       @meteor_bitmap.fill_rect(12, 0, 1, 2, midRed)
  919.       @meteor_bitmap.set_pixel(13, 0, midRed)
  920.       @impact_bitmap = Bitmap.new(22, 11)
  921.       @impact_bitmap.fill_rect(0, 5, 1, 2, brightOrange)
  922.       @impact_bitmap.set_pixel(1, 4, brightOrange)
  923.       @impact_bitmap.set_pixel(1, 6, brightOrange)
  924.       @impact_bitmap.set_pixel(2, 3, brightOrange)
  925.       @impact_bitmap.set_pixel(2, 7, brightOrange)
  926.       @impact_bitmap.set_pixel(3, 2, midRed)
  927.       @impact_bitmap.set_pixel(3, 7, midRed)
  928.       @impact_bitmap.set_pixel(4, 2, brightOrange)
  929.       @impact_bitmap.set_pixel(4, 8, brightOrange)
  930.       @impact_bitmap.set_pixel(5, 2, midRed)
  931.       @impact_bitmap.fill_rect(5, 8, 3, 1, brightOrange)
  932.       @impact_bitmap.set_pixel(6, 1, midRed)
  933.       @impact_bitmap.fill_rect(7, 1, 8, 1, brightOrange)
  934.       @impact_bitmap.fill_rect(7, 9, 8, 1, midRed)
  935.       # 灰
  936.       @ash_bitmaps = []
  937.       @ash_bitmaps[0] = Bitmap.new(3, 3)
  938.       @ash_bitmaps[0].fill_rect(0, 1, 1, 3, lightGrey)
  939.       @ash_bitmaps[0].fill_rect(1, 0, 3, 1, lightGrey)
  940.       @ash_bitmaps[0].set_pixel(1, 1, white)
  941.       @ash_bitmaps[1] = Bitmap.new(3, 3)
  942.       @ash_bitmaps[1].fill_rect(0, 1, 1, 3, grey)
  943.       @ash_bitmaps[1].fill_rect(1, 0, 3, 1, grey)
  944.       @ash_bitmaps[1].set_pixel(1, 1, lightGrey)
  945.       # 泡沫位图
  946.       @bubble_bitmaps = []
  947.       darkBlue  = Color.new(77, 136, 225, 160)
  948.       aqua = Color.new(197, 253, 254, 160)
  949.       lavender = Color.new(225, 190, 244, 160)
  950.       # 第一泡沫
  951.       @bubble_bitmaps[0] = Bitmap.new(24, 24)
  952.       @bubble_bitmaps[0].fill_rect(0, 9, 24, 5, darkBlue)
  953.       @bubble_bitmaps[0].fill_rect(1, 6, 22, 11, darkBlue)
  954.       @bubble_bitmaps[0].fill_rect(2, 5, 20, 13, darkBlue)
  955.       @bubble_bitmaps[0].fill_rect(3, 4, 18, 15, darkBlue)
  956.       @bubble_bitmaps[0].fill_rect(4, 3, 16, 17, darkBlue)
  957.       @bubble_bitmaps[0].fill_rect(5, 2, 14, 19, darkBlue)
  958.       @bubble_bitmaps[0].fill_rect(6, 1, 12, 21, darkBlue)
  959.       @bubble_bitmaps[0].fill_rect(9, 0, 5, 24, darkBlue)
  960.       @bubble_bitmaps[0].fill_rect(2, 11, 20, 4, aqua)
  961.       @bubble_bitmaps[0].fill_rect(3, 7, 18, 10, aqua)
  962.       @bubble_bitmaps[0].fill_rect(4, 6, 16, 12, aqua)
  963.       @bubble_bitmaps[0].fill_rect(5, 5, 14, 14, aqua)
  964.       @bubble_bitmaps[0].fill_rect(6, 4, 12, 16, aqua)
  965.       @bubble_bitmaps[0].fill_rect(9, 2, 4, 20, aqua)
  966.       @bubble_bitmaps[0].fill_rect(5, 10, 1, 7, lavender)
  967.       @bubble_bitmaps[0].fill_rect(6, 14, 1, 5, lavender)
  968.       @bubble_bitmaps[0].fill_rect(7, 15, 1, 4, lavender)
  969.       @bubble_bitmaps[0].fill_rect(8, 16, 1, 4, lavender)
  970.       @bubble_bitmaps[0].fill_rect(9, 17, 1, 3, lavender)
  971.       @bubble_bitmaps[0].fill_rect(10, 18, 4, 3, lavender)
  972.       @bubble_bitmaps[0].fill_rect(14, 18, 1, 2, lavender)
  973.       @bubble_bitmaps[0].fill_rect(13, 5, 4, 4, white)
  974.       @bubble_bitmaps[0].fill_rect(14, 4, 2, 1, white)
  975.       @bubble_bitmaps[0].set_pixel(17, 6, white)
  976.       # 第二泡沫
  977.       @bubble_bitmaps[1] = Bitmap.new(14, 15)
  978.       @bubble_bitmaps[1].fill_rect(0, 4, 14, 7, darkBlue)
  979.       @bubble_bitmaps[1].fill_rect(1, 3, 12, 9, darkBlue)
  980.       @bubble_bitmaps[1].fill_rect(2, 2, 10, 11, darkBlue)
  981.       @bubble_bitmaps[1].fill_rect(3, 1, 8, 13, darkBlue)
  982.       @bubble_bitmaps[1].fill_rect(5, 0, 4, 15, darkBlue)
  983.       @bubble_bitmaps[1].fill_rect(1, 5, 12, 4, aqua)
  984.       @bubble_bitmaps[1].fill_rect(2, 4, 10, 6, aqua)
  985.       @bubble_bitmaps[1].fill_rect(3, 3, 8, 8, aqua)
  986.       @bubble_bitmaps[1].fill_rect(4, 2, 6, 10, aqua)
  987.       @bubble_bitmaps[1].fill_rect(1, 5, 12, 4, aqua)
  988.       @bubble_bitmaps[1].fill_rect(3, 9, 1, 2, lavender)
  989.       @bubble_bitmaps[1].fill_rect(4, 10, 1, 2, lavender)
  990.       @bubble_bitmaps[1].fill_rect(5, 11, 4, 1, lavender)
  991.       @bubble_bitmaps[1].fill_rect(6, 12, 2, 1, white)
  992.       @bubble_bitmaps[1].fill_rect(8, 3, 2, 2, white)
  993.       @bubble_bitmaps[1].set_pixel(7, 4, white)
  994.       @bubble_bitmaps[1].set_pixel(8, 5, white)
  995.       #用户位图
  996.       @user_bitmaps = []
  997.       update_user_defined
  998.     end
  999.     #刷新自定义(用户)
  1000.     def update_user_defined
  1001.       for image in @user_bitmaps
  1002.         #释放位图
  1003.         image.dispose
  1004.       end
  1005.       #用户自定义位图
  1006.       for name in $WEATHER_IMAGES
  1007.         @user_bitmaps.push(RPG::Cache.picture(name))
  1008.       end
  1009.       #循环精灵
  1010.       for sprite in @sprites
  1011.         sprite.bitmap = @user_bitmaps[rand(@user_bitmaps.size)]
  1012.       end
  1013.     end
  1014.     #属性
  1015.     attr_reader :type
  1016.     attr_reader :max
  1017.     attr_reader :ox
  1018.     attr_reader :oy
  1019.   end
  1020. end
复制代码
这个天气效果开启我会,关闭我就不会了。

Lv1.梦旅人

梦石
0
星屑
50
在线时间
47 小时
注册时间
2012-8-6
帖子
60
3
发表于 2012-8-9 04:51:16 | 只看该作者
其實很簡單
在事件頁內執行天氣設置,設置為無就可以了。

或者使用事件腳本
  1. $game_screen.weather(0, 0, 0)
复制代码
也可以達到停止天氣的效果

点评

不是一般的天气哦。  发表于 2012-8-9 21:33

评分

参与人数 1星屑 +20 收起 理由
hcm + 20 感谢回答

查看全部评分

回复

使用道具 举报

Lv3.寻梦者

永久的旅行者

梦石
1
星屑
110
在线时间
404 小时
注册时间
2006-12-13
帖子
3091

开拓者贵宾第3届短篇游戏大赛主流游戏组季军第5届短篇游戏比赛季军

2
发表于 2012-8-9 01:56:55 | 只看该作者
手上没工程测试不到...就随便撞运气了...

当要关闭天气时,尝试
  1. $game_screen.weather(type, power, transition)
复制代码
在“type”一览里面,填上“0”或者“20”试试看...
如果行不通或者bug的话,就在“power”一览内填上“0”。

以上两种方法都不行的话,就请耐心等待高手进来吧...

评分

参与人数 1星屑 +40 收起 理由
hcm + 40 感谢回答

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-27 08:27

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表