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

Project1

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

[RMVA发布] 把亚古的《新金庸无双1.0》中贪吃蛇小游戏修整到RMVA

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
9 小时
注册时间
2013-7-8
帖子
8
跳转到指定楼层
1
发表于 2013-7-14 08:11:56 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
亚古的《新金庸无双1.0》中贪吃蛇小游戏脚本移植到了RMVA,完善了内存释放。并做了两个版本,一个是继承Window_Base类,另一个是继承Scene_Base类。
其中用到的图片有3种,bg即整个小游戏的背景图,还有两个是30x30像素的,分别用来显示 蛇的每一节及要吃的饵食,这图片就不上传了。有兴趣的随手拿几张现成的图片都能用。
截图如下:

两个版本的脚本分别如下:
RUBY 代码复制
  1. #==============================================================================
  2. # ■ Game_Neigong
  3. #------------------------------------------------------------------------------
  4. #  真气条小游戏(贪吃蛇),继承Window_Base类来实现
  5. #       调用方法  mywnd = Game_Neigong.new
  6. #                 mywnd.close
  7. #                 mywnd.dispose
  8. #                 显示文字 :循環周天結束!已沖過的穴道數是\V[859]
  9. #==============================================================================
  10. class Game_Neigong < Window_Base
  11.   #--------------------------------------------------------------------------
  12.   # ● 初始化对像
  13.   #--------------------------------------------------------------------------
  14.   def initialize
  15.     @mySize = 30        # 界面大小(单位:图块)
  16.     @myWidth = 30 * 12  # 界面宽度(单位:像素)
  17.     @myHeight = 30 * 12 # 界面高度(单位:像素)
  18.  
  19.     # 界面背景图的位图
  20.     @bgBitmap = Bitmap.new("Graphics/Pictures/ngxl_bg.png")
  21.     # 分五行的真气的图形文件名,每次小游戏一开始会随机选定一种
  22.     @zhenqi = "Graphics/Pictures/zhenqi" + rand(5).to_s + ".png"
  23.     # 蛇身上的一节的位图,节数会越来越多,蛇也越来越长
  24.     @NeiGongBitmap = Bitmap.new("Graphics/Pictures/neigong.png")
  25.  
  26.     # 小游戏的整个外框,大小与背景图片相同
  27.     super(0, 0, @bgBitmap.width, @bgBitmap.height)
  28.     self.opacity = 32
  29.  
  30.     @score = 0                        # 初始分数
  31.     @level = 1                        # 初始化难度等级
  32.     @max_length =  35                 # 初始化真气条最大长度,即蛇身的最大长度
  33.     @array_Neigong = [[14,8],[13,8]]  # 界面划分成格子
  34.     @speed = 20                       # 初始化速度,数值越大,移动速度越慢
  35.     @direction = "left"               # 初始化方向
  36.     @run = false                      # 初始化真气条是否为运动状态
  37.     @time_count = 0                   # 计时器
  38.     @zhenqi_exist = false             # 标记真气是否存在
  39.     @bGameOver = false                # 标记游戏是否终结
  40.  
  41.     game_Neigong_Main
  42.   end
  43.  
  44.   #--------------------------------------------------------------------------
  45.   # ● 主处理
  46.   #--------------------------------------------------------------------------
  47.   def game_Neigong_Main
  48.     # 真气条背景
  49.     @sprite = Sprite.new
  50.     @sprite.bitmap = @bgBitmap
  51.  
  52.     # 初始化屏幕
  53.     @sprite_clear = Sprite.new
  54.     @sprite_clear.bitmap = Bitmap.new(@myWidth,@myHeight)
  55.     @sprite_clear.x = 254
  56.     @sprite_clear.y = 70
  57.  
  58.     # 显示得分
  59.     @sprite_score = Sprite.new
  60.     @sprite_score.bitmap = Bitmap.new(@myWidth,@myHeight)
  61.     @sprite_score.x = 254
  62.     @sprite_score.y = 440
  63.     refresh_score
  64.  
  65.     # 初始化蛇的图形
  66.     @sprite_Neigong = []
  67.     for i in [email]0...@array_Neigong.length[/email]
  68.       @sprite_Neigong[i] = Sprite.new
  69.       @sprite_Neigong[i].bitmap = @NeiGongBitmap
  70.       @sprite_Neigong[i].x = @array_Neigong[i][0] * @mySize
  71.       @sprite_Neigong[i].y = @array_Neigong[i][1] * @mySize
  72.     end
  73.  
  74.     # 描绘真气(蛇要去吃的饵食)
  75.     @sprite_zhenqi = Sprite.new
  76.     @sprite_zhenqi.bitmap = Bitmap.new(@zhenqi)
  77.     # 执行画面过渡
  78.     Graphics.transition
  79.  
  80.     # 主循环
  81.     loop do
  82.       # 刷新游戏画面
  83.       Graphics.update
  84.       # 刷新输入信息
  85.       Input.update
  86.       # 刷新画面情报
  87.       update
  88.       # 如果标记游戏终结,就中断循环
  89.       if @bGameOver
  90.         break
  91.       end
  92.     end
  93.     # 执行画面过渡
  94.     Graphics.transition
  95.   end
  96.  
  97.   #--------------------------------------------------------------------------
  98.   # ● 刷新画面
  99.   #--------------------------------------------------------------------------
  100.   def update
  101.     # 如果真气不存在则描绘真气
  102.     if @zhenqi_exist == false
  103.       # 描绘真气
  104.       draw_zhenqi
  105.       @zhenqi_exist = true
  106.     end
  107.     # 开始运动
  108.     start_move
  109.     # 如果真气条正在运动
  110.     if @run
  111.       if @time_count % @speed == 0
  112.         move1
  113.         if check_eat
  114.           @score += 1
  115.           # 刷新等级
  116.           if @score >= @level * 20
  117.             @level += 1
  118.             @speed -= 1
  119.             if @level > 6
  120.               #p "本次周天循環沖穴數量已達上限!"
  121.               exit
  122.             end
  123.           end
  124.           refresh_score
  125.           # 增加真气条长度
  126.           if @array_Neigong.length < @max_length
  127.             @array_Neigong.push([@array_Neigong[@array_Neigong.length-1][0],
  128.             @array_Neigong[@array_Neigong.length-1][1]])
  129.             @sprite_Neigong[@array_Neigong.length-1] = Sprite.new
  130.             @sprite_Neigong[@array_Neigong.length-1].bitmap = @NeiGongBitmap
  131.           end
  132.           @zhenqi_exist = false
  133.         end
  134.         # 如果撞到墙壁或自身则游戏结束
  135.         if check_collision
  136.           game_over
  137.         end
  138.       end
  139.     end
  140.     @time_count += 1
  141.   end
  142.  
  143.   #--------------------------------------------------------------------------
  144.   # 开始运动
  145.   def start_move
  146.     # 前后按下两个不同的方向键后开始运动
  147.     if Input.trigger?(Input::UP)
  148.       unless @direction == "down"
  149.         @run = true
  150.         @direction = "up"
  151.       end
  152.     end
  153.     if Input.trigger?(Input::DOWN)
  154.       unless @direction == "up"
  155.         @run = true
  156.         @direction = "down"
  157.       end
  158.     end
  159.     if Input.trigger?(Input::LEFT)
  160.       unless @direction == "right"
  161.         @run = true
  162.         @direction = "left"
  163.       end
  164.     end
  165.     if Input.trigger?(Input::RIGHT)
  166.       unless @direction == "left"
  167.         @run = true
  168.         @direction = "right"
  169.       end
  170.     end
  171.   end
  172.  
  173.   #--------------------------------------------------------------------------
  174.   # 真气条移动
  175.   def move1
  176.     case @direction
  177.       when "up"
  178.         for i in [email]1...@array_Neigong.length[/email]
  179.           @array_Neigong[@array_Neigong.length-i][0] = @array_Neigong[@array_Neigong.length-i-1][0]
  180.           @array_Neigong[@array_Neigong.length-i][1] = @array_Neigong[@array_Neigong.length-i-1][1]
  181.         end
  182.         @array_Neigong[0][1] -= 1
  183.       when "down"
  184.         for i in [email]1...@array_Neigong.length[/email]
  185.           @array_Neigong[@array_Neigong.length-i][0] = @array_Neigong[@array_Neigong.length-i-1][0]
  186.           @array_Neigong[@array_Neigong.length-i][1] = @array_Neigong[@array_Neigong.length-i-1][1]
  187.         end
  188.         @array_Neigong[0][1] += 1
  189.       when "left"
  190.         for i in [email]1...@array_Neigong.length[/email]
  191.           @array_Neigong[@array_Neigong.length-i][0] = @array_Neigong[@array_Neigong.length-i-1][0]
  192.           @array_Neigong[@array_Neigong.length-i][1] = @array_Neigong[@array_Neigong.length-i-1][1]
  193.         end
  194.         @array_Neigong[0][0] -= 1
  195.       when "right"
  196.         for i in [email]1...@array_Neigong.length[/email]
  197.           @array_Neigong[@array_Neigong.length-i][0] = @array_Neigong[@array_Neigong.length-i-1][0]
  198.           @array_Neigong[@array_Neigong.length-i][1] = @array_Neigong[@array_Neigong.length-i-1][1]
  199.         end
  200.         @array_Neigong[0][0] += 1
  201.     end
  202.     draw_Neigong # 描绘真气条
  203.   end
  204.  
  205.   #--------------------------------------------------------------------------
  206.   # 刷新得分
  207.   def refresh_score
  208.     @sprite_score.bitmap.clear
  209.     @sprite_score.bitmap.font.size = 18
  210.     @sprite_score.bitmap.font.color.set(255,255,255)
  211.     @sprite_score.bitmap.draw_text(10, 0, 160, 32, "本次循經穴道:" + @score.to_s)
  212.     @sprite_score.bitmap.draw_text(10, 32, 160, 32, "當前循環周天:" + @array_Neigong.length.to_s)
  213.     @sprite_score.bitmap.draw_text(10, 64, 160, 32, "當前循環度為:" + @level.to_s)
  214.   end
  215.  
  216.   #--------------------------------------------------------------------------
  217.   # 生成真气坐标
  218.   def creat_zhenqi
  219.     loop do
  220.       zhenqi_x = rand(11) + 8
  221.       zhenqi_y = rand(11) + 3
  222.       creat_succes = true # 标记是否成功生成的开关
  223.       for i in [email]0...@array_Neigong.length[/email]
  224.         if zhenqi_x == @array_Neigong[i][0] and zhenqi_y == @array_Neigong[i][1]
  225.           creat_succes = false
  226.         end
  227.       end
  228.       # 如果成功生成真气则中断循环
  229.       if creat_succes
  230.         return zhenqi_x * @mySize,zhenqi_y * @mySize
  231.         break
  232.       end
  233.     end
  234.   end
  235.  
  236.   #--------------------------------------------------------------------------
  237.   # 描绘真气
  238.   def draw_zhenqi
  239.     @zhenqi_x,@zhenqi_y = creat_zhenqi
  240.     @sprite_zhenqi.x = @zhenqi_x
  241.     @sprite_zhenqi.y = @zhenqi_y
  242.   end
  243.  
  244.   #--------------------------------------------------------------------------
  245.   # 描绘蛇的图形
  246.   def draw_Neigong
  247.     for i in [email]0...@array_Neigong.length[/email]
  248.       @sprite_Neigong[i].x = @array_Neigong[i][0] * @mySize
  249.       @sprite_Neigong[i].y = @array_Neigong[i][1] * @mySize
  250.     end
  251.   end
  252.  
  253.   #--------------------------------------------------------------------------
  254.   # 检测真气条是否撞到墙壁或自身
  255.   def check_collision
  256.     if @array_Neigong[0][0] < 8 or @array_Neigong[0][0] > 18 or
  257.       @array_Neigong[0][1] < 3 or @array_Neigong[0][1] > 13
  258.       return true
  259.     end
  260.     for i in [email]1...@array_Neigong.length[/email]
  261.       if @array_Neigong[0][0] == @array_Neigong[i][0] and
  262.         @array_Neigong[0][1] == @array_Neigong[i][1]
  263.         return true
  264.       end
  265.     end
  266.     return false
  267.   end
  268.  
  269.   #--------------------------------------------------------------------------
  270.   # 检测是否吃到真气
  271.   def check_eat
  272.     if @array_Neigong[0][0] == @zhenqi_x / @mySize and
  273.       @array_Neigong[0][1] == @zhenqi_y / @mySize
  274.       return true
  275.     end
  276.   end
  277.  
  278.   #--------------------------------------------------------------------------
  279.   # 游戏结束的处理
  280.   def game_over
  281.     #print "循環周天結束!本次沖過的穴道數:#{@score}"
  282.     # 第859号系统变量中存放:累计冲穴的穴道总数
  283.     $game_variables[859] += @score
  284.     @bGameOver=true
  285.  
  286.     # 释放初始化、主程序和增加真气条长度时动态分配的内存
  287.     @NeiGongBitmap.dispose
  288.     for i in [email]0...@array_Neigong.length[/email]
  289.       @sprite_Neigong[i].dispose
  290.     end
  291.     @sprite_zhenqi.bitmap.dispose
  292.     @sprite_zhenqi.dispose
  293.     @sprite_score.bitmap.dispose
  294.     @sprite_score.dispose
  295.     @sprite_clear.bitmap.dispose
  296.     @sprite_clear.dispose
  297.     @bgBitmap.dispose
  298.     @sprite.dispose
  299.   end
  300. end


RUBY 代码复制
  1. #==============================================================================
  2. # ■ Scene_Neigong
  3. #------------------------------------------------------------------------------
  4. #  真气条小游戏(贪吃蛇),继承Scene_Base类来实现
  5. #       调用方法  SceneManager.call(Game_Neigong)
  6. #                 SceneManager.return
  7. #                 显示文字 :循環周天結束!已沖過的穴道數是\V[859]
  8. #==============================================================================
  9. class Scene_Neigong < Scene_Base
  10.   #--------------------------------------------------------------------------
  11.   # ● 初始化对像
  12.   #--------------------------------------------------------------------------
  13.   def initialize
  14.     @mySize = 30        # 界面大小(单位:图块)
  15.     @myWidth = 30 * 12  # 界面宽度(单位:像素)
  16.     @myHeight = 30 * 12 # 界面高度(单位:像素)
  17.  
  18.     # 界面背景图的位图
  19.     @bgBitmap = Bitmap.new("Graphics/Pictures/ngxl_bg.png")
  20.     # 分五行的真气的图形文件名,每次小游戏一开始会随机选定一种
  21.     @zhenqi = "Graphics/Pictures/zhenqi" + rand(5).to_s + ".png"
  22.     # 蛇身上的一节的位图,节数会越来越多,蛇也越来越长
  23.     @NeiGongBitmap = Bitmap.new("Graphics/Pictures/neigong.png")
  24.  
  25.     @score = 0                        # 初始分数
  26.     @level = 1                        # 初始化难度等级
  27.     @max_length =  35                 # 初始化真气条最大长度,即蛇身的最大长度
  28.     @array_Neigong = [[14,8],[13,8]]  # 界面划分成格子
  29.     @speed = 20                       # 初始化速度,数值越大,移动速度越慢
  30.     @direction = "left"               # 初始化方向
  31.     @run = false                      # 初始化真气条是否为运动状态
  32.     @time_count = 0                   # 计时器
  33.     @zhenqi_exist = false             # 标记真气是否存在
  34.     @bGameOver = false                # 标记游戏是否终结
  35.  
  36.     game_Neigong_Main
  37.   end
  38.  
  39.   #--------------------------------------------------------------------------
  40.   # ● 主处理
  41.   #--------------------------------------------------------------------------
  42.   def game_Neigong_Main
  43.     # 真气条背景
  44.     @sprite = Sprite.new
  45.     @sprite.bitmap = @bgBitmap
  46.  
  47.     # 初始化屏幕
  48.     @sprite_clear = Sprite.new
  49.     @sprite_clear.bitmap = Bitmap.new(@myWidth,@myHeight)
  50.     @sprite_clear.x = 254
  51.     @sprite_clear.y = 70
  52.  
  53.     # 显示得分
  54.     @sprite_score = Sprite.new
  55.     @sprite_score.bitmap = Bitmap.new(@myWidth,@myHeight)
  56.     @sprite_score.x = 254
  57.     @sprite_score.y = 440
  58.     refresh_score
  59.  
  60.     # 初始化蛇的图形
  61.     @sprite_Neigong = []
  62.     for i in [email]0...@array_Neigong.length[/email]
  63.       @sprite_Neigong[i] = Sprite.new
  64.       @sprite_Neigong[i].bitmap = @NeiGongBitmap
  65.       @sprite_Neigong[i].x = @array_Neigong[i][0] * @mySize
  66.       @sprite_Neigong[i].y = @array_Neigong[i][1] * @mySize
  67.     end
  68.  
  69.     # 描绘真气(蛇要去吃的饵食)
  70.     @sprite_zhenqi = Sprite.new
  71.     @sprite_zhenqi.bitmap = Bitmap.new(@zhenqi)
  72.     # 执行画面过渡
  73.     Graphics.transition
  74.  
  75.     # 主循环
  76.     loop do
  77.       # 刷新游戏画面
  78.       Graphics.update
  79.       # 刷新输入信息
  80.       Input.update
  81.       # 刷新画面情报
  82.       update
  83.       # 如果标记游戏终结,就中断循环
  84.       if @bGameOver
  85.         break
  86.       end
  87.     end
  88.     # 执行画面过渡
  89.     Graphics.transition
  90.   end
  91.  
  92.   #--------------------------------------------------------------------------
  93.   # ● 刷新画面
  94.   #--------------------------------------------------------------------------
  95.   def update
  96.     # 如果真气不存在则描绘真气
  97.     if @zhenqi_exist == false
  98.       # 描绘真气
  99.       draw_zhenqi
  100.       @zhenqi_exist = true
  101.     end
  102.     # 开始运动
  103.     start_move
  104.     # 如果真气条正在运动
  105.     if @run
  106.       if @time_count % @speed == 0
  107.         move1
  108.         if check_eat
  109.           @score += 1
  110.           # 刷新等级
  111.           if @score >= @level * 20
  112.             @level += 1
  113.             @speed -= 1
  114.             if @level > 6
  115.               #p "本次周天循環沖穴數量已達上限!"
  116.               exit
  117.             end
  118.           end
  119.           refresh_score
  120.           # 增加真气条长度
  121.           if @array_Neigong.length < @max_length
  122.             @array_Neigong.push([@array_Neigong[@array_Neigong.length-1][0],
  123.             @array_Neigong[@array_Neigong.length-1][1]])
  124.             @sprite_Neigong[@array_Neigong.length-1] = Sprite.new
  125.             @sprite_Neigong[@array_Neigong.length-1].bitmap = @NeiGongBitmap
  126.           end
  127.           @zhenqi_exist = false
  128.         end
  129.         # 如果撞到墙壁或自身则游戏结束
  130.         if check_collision
  131.           game_over
  132.         end
  133.       end
  134.     end
  135.     @time_count += 1
  136.   end
  137.  
  138.   #--------------------------------------------------------------------------
  139.   # 开始运动
  140.   def start_move
  141.     # 前后按下两个不同的方向键后开始运动
  142.     if Input.trigger?(Input::UP)
  143.       unless @direction == "down"
  144.         @run = true
  145.         @direction = "up"
  146.       end
  147.     end
  148.     if Input.trigger?(Input::DOWN)
  149.       unless @direction == "up"
  150.         @run = true
  151.         @direction = "down"
  152.       end
  153.     end
  154.     if Input.trigger?(Input::LEFT)
  155.       unless @direction == "right"
  156.         @run = true
  157.         @direction = "left"
  158.       end
  159.     end
  160.     if Input.trigger?(Input::RIGHT)
  161.       unless @direction == "left"
  162.         @run = true
  163.         @direction = "right"
  164.       end
  165.     end
  166.   end
  167.  
  168.   #--------------------------------------------------------------------------
  169.   # 真气条移动
  170.   def move1
  171.     case @direction
  172.       when "up"
  173.         for i in [email]1...@array_Neigong.length[/email]
  174.           @array_Neigong[@array_Neigong.length-i][0] = @array_Neigong[@array_Neigong.length-i-1][0]
  175.           @array_Neigong[@array_Neigong.length-i][1] = @array_Neigong[@array_Neigong.length-i-1][1]
  176.         end
  177.         @array_Neigong[0][1] -= 1
  178.       when "down"
  179.         for i in [email]1...@array_Neigong.length[/email]
  180.           @array_Neigong[@array_Neigong.length-i][0] = @array_Neigong[@array_Neigong.length-i-1][0]
  181.           @array_Neigong[@array_Neigong.length-i][1] = @array_Neigong[@array_Neigong.length-i-1][1]
  182.         end
  183.         @array_Neigong[0][1] += 1
  184.       when "left"
  185.         for i in [email]1...@array_Neigong.length[/email]
  186.           @array_Neigong[@array_Neigong.length-i][0] = @array_Neigong[@array_Neigong.length-i-1][0]
  187.           @array_Neigong[@array_Neigong.length-i][1] = @array_Neigong[@array_Neigong.length-i-1][1]
  188.         end
  189.         @array_Neigong[0][0] -= 1
  190.       when "right"
  191.         for i in [email]1...@array_Neigong.length[/email]
  192.           @array_Neigong[@array_Neigong.length-i][0] = @array_Neigong[@array_Neigong.length-i-1][0]
  193.           @array_Neigong[@array_Neigong.length-i][1] = @array_Neigong[@array_Neigong.length-i-1][1]
  194.         end
  195.         @array_Neigong[0][0] += 1
  196.     end
  197.     draw_Neigong # 描绘真气条
  198.   end
  199.  
  200.   #--------------------------------------------------------------------------
  201.   # 刷新得分
  202.   def refresh_score
  203.     @sprite_score.bitmap.clear
  204.     @sprite_score.bitmap.font.size = 18
  205.     @sprite_score.bitmap.font.color.set(255,255,255)
  206.     @sprite_score.bitmap.draw_text(10, 0, 160, 32, "本次循經穴道:" + @score.to_s)
  207.     @sprite_score.bitmap.draw_text(10, 32, 160, 32, "當前循環周天:" + @array_Neigong.length.to_s)
  208.     @sprite_score.bitmap.draw_text(10, 64, 160, 32, "當前循環度為:" + @level.to_s)
  209.   end
  210.  
  211.   #--------------------------------------------------------------------------
  212.   # 生成真气坐标
  213.   def creat_zhenqi
  214.     loop do
  215.       zhenqi_x = rand(11) + 8
  216.       zhenqi_y = rand(11) + 3
  217.       creat_succes = true # 标记是否成功生成的开关
  218.       for i in [email]0...@array_Neigong.length[/email]
  219.         if zhenqi_x == @array_Neigong[i][0] and zhenqi_y == @array_Neigong[i][1]
  220.           creat_succes = false
  221.         end
  222.       end
  223.       # 如果成功生成真气则中断循环
  224.       if creat_succes
  225.         return zhenqi_x * @mySize,zhenqi_y * @mySize
  226.         break
  227.       end
  228.     end
  229.   end
  230.  
  231.   #--------------------------------------------------------------------------
  232.   # 描绘真气
  233.   def draw_zhenqi
  234.     @zhenqi_x,@zhenqi_y = creat_zhenqi
  235.     @sprite_zhenqi.x = @zhenqi_x
  236.     @sprite_zhenqi.y = @zhenqi_y
  237.   end
  238.  
  239.   #--------------------------------------------------------------------------
  240.   # 描绘蛇的图形
  241.   def draw_Neigong
  242.     for i in [email]0...@array_Neigong.length[/email]
  243.       @sprite_Neigong[i].x = @array_Neigong[i][0] * @mySize
  244.       @sprite_Neigong[i].y = @array_Neigong[i][1] * @mySize
  245.     end
  246.   end
  247.  
  248.   #--------------------------------------------------------------------------
  249.   # 检测真气条是否撞到墙壁或自身
  250.   def check_collision
  251.     if @array_Neigong[0][0] < 8 or @array_Neigong[0][0] > 18 or
  252.       @array_Neigong[0][1] < 3 or @array_Neigong[0][1] > 13
  253.       return true
  254.     end
  255.     for i in [email]1...@array_Neigong.length[/email]
  256.       if @array_Neigong[0][0] == @array_Neigong[i][0] and
  257.         @array_Neigong[0][1] == @array_Neigong[i][1]
  258.         return true
  259.       end
  260.     end
  261.     return false
  262.   end
  263.  
  264.   #--------------------------------------------------------------------------
  265.   # 检测是否吃到真气
  266.   def check_eat
  267.     if @array_Neigong[0][0] == @zhenqi_x / @mySize and
  268.       @array_Neigong[0][1] == @zhenqi_y / @mySize
  269.       return true
  270.     end
  271.   end
  272.  
  273.   #--------------------------------------------------------------------------
  274.   # 游戏结束的处理
  275.   def game_over
  276.     #print "循環周天結束!本次沖過的穴道數:#{@score}"
  277.     # 第859号系统变量中存放:累计冲穴的穴道总数
  278.     $game_variables[859] += @score
  279.     @bGameOver=true
  280.  
  281.     # 释放初始化、主程序和增加真气条长度时动态分配的内存
  282.     @NeiGongBitmap.dispose
  283.     for i in [email]0...@array_Neigong.length[/email]
  284.       @sprite_Neigong[i].dispose
  285.     end
  286.     @sprite_zhenqi.bitmap.dispose
  287.     @sprite_zhenqi.dispose
  288.     @sprite_score.bitmap.dispose
  289.     @sprite_score.dispose
  290.     @sprite_clear.bitmap.dispose
  291.     @sprite_clear.dispose
  292.     @bgBitmap.dispose
  293.     @sprite.dispose
  294.   end
  295. end

Lv3.寻梦者

梦石
0
星屑
1272
在线时间
68 小时
注册时间
2021-7-14
帖子
9
2
发表于 2021-7-21 08:57:25 | 只看该作者
厉害!!!1
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-13 14:47

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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