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

Project1

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

帮我处理下BUG

 关闭 [复制链接]

Lv2.观梦者

傻♂逼

梦石
0
星屑
374
在线时间
1606 小时
注册时间
2007-3-13
帖子
6562

烫烫烫开拓者

跳转到指定楼层
1
发表于 2009-6-12 08:00:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
不管有没有原料都会失败!

  1. $food = {}
  2. $food["火鸡"] = [1,2,3,4]
  3. $food["紫菜"] = [5,6,7,8]
  4. $food["你好"] = [5,6,7,8]
  5. $fod = ["火鸡","紫菜","你好"]
  6. $help = ["圣诞节的必须品,超级好吃哦!","紫菜,酸酸甜甜!","你好"]
  7. class Scene_Cook
  8.   def main
  9.      @halp_window = Window_Help.new
  10.      @tmp = []
  11.      @command_window = Window_Command.new(640,$fod)
  12.      @halp_window.x = 1
  13.      @halp_window.y = 2 * 32
  14.      @command_window.x = 1
  15.      @command_window.y = 4 * 32
  16.      Audio.me_stop
  17.      Audio.bgs_stop
  18.      # 执行过渡
  19.      Graphics.transition
  20.      @pic = Sprite.new
  21.      @picindex = RPG::Cache.picture($fod[@command_window.index])
  22.      @pic.bitmap = @picindex
  23.          @pic.y =  @command_window.y + @command_window.height
  24.    #  $index = @command_window.index
  25.      # 主循环
  26.      loop do
  27.        # 刷新游戏画面
  28.        Graphics.update
  29.        # 刷新输入信息
  30.        Input.update
  31.        # 刷新画面
  32.        update
  33.        # 如果画面被切换就中断循环
  34.        if $scene != self
  35.          break
  36.        end
  37.      end
  38.      @pic.bitmap.dispose
  39.      @pic.dispose
  40.      @halp_window.dispose
  41.      @command_window.dispose
  42.    end
  43.      def update
  44.        @command_window.update
  45.            if Input.trigger?(Input::B)
  46.              $scene = Scene_Map.new
  47.            end
  48.        if $index != @command_window.index
  49.          #刷新图片\HELP
  50.                  for i in 0...$fod.size
  51.            if i == @command_window.index
  52.              @halp_window.set_text($help[i])
  53.            end
  54.          end

  55.          $index = @command_window.index
  56.          @pic.bitmap.dispose
  57.          @picindex = RPG::Cache.picture($fod[@command_window.index])
  58.      @pic.bitmap = @picindex
  59.          @pic.y = @command_window.y + @command_window.height
  60.        end
  61.        if Input.trigger?(Input::C)
  62.          for i in 0...$fod.size
  63.            if i == @command_window.index
  64.              cook(i)
  65.            end
  66.          end
  67.        end
  68.      end
  69.      def cook(index)
  70.        @ok = true
  71.        x = $fod[index]
  72.        liao = $food[x]
  73.        for i in liao
  74.          if $game_party.item_number(liao) == 0
  75.            @ok = false
  76.          end
  77.        end
  78.        if @ok
  79.        for i in liao
  80.          $game_party.lose_item(i,1)
  81.        end
  82.            for i in $data_items.size
  83.             if $data_items[i].name == x
  84.               q = $data_items[i].name == x
  85.             end
  86.           end
  87.          $game_party.gain_armor(q,1)
  88.          @halp_window.set_text(x + "制作完成!")
  89.        else
  90.          @halp_window.set_text(x + "原料不足,制作失败!!!")
  91.       end
  92.      end
  93.    end
复制代码

版务信息:本贴由楼主自主结贴~
哎呀,蛋疼什么的最有爱了

Lv2.观梦者

傻♂逼

梦石
0
星屑
374
在线时间
1606 小时
注册时间
2007-3-13
帖子
6562

烫烫烫开拓者

2
 楼主| 发表于 2009-6-12 08:00:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
不管有没有原料都会失败!

  1. $food = {}
  2. $food["火鸡"] = [1,2,3,4]
  3. $food["紫菜"] = [5,6,7,8]
  4. $food["你好"] = [5,6,7,8]
  5. $fod = ["火鸡","紫菜","你好"]
  6. $help = ["圣诞节的必须品,超级好吃哦!","紫菜,酸酸甜甜!","你好"]
  7. class Scene_Cook
  8.   def main
  9.      @halp_window = Window_Help.new
  10.      @tmp = []
  11.      @command_window = Window_Command.new(640,$fod)
  12.      @halp_window.x = 1
  13.      @halp_window.y = 2 * 32
  14.      @command_window.x = 1
  15.      @command_window.y = 4 * 32
  16.      Audio.me_stop
  17.      Audio.bgs_stop
  18.      # 执行过渡
  19.      Graphics.transition
  20.      @pic = Sprite.new
  21.      @picindex = RPG::Cache.picture($fod[@command_window.index])
  22.      @pic.bitmap = @picindex
  23.          @pic.y =  @command_window.y + @command_window.height
  24.    #  $index = @command_window.index
  25.      # 主循环
  26.      loop do
  27.        # 刷新游戏画面
  28.        Graphics.update
  29.        # 刷新输入信息
  30.        Input.update
  31.        # 刷新画面
  32.        update
  33.        # 如果画面被切换就中断循环
  34.        if $scene != self
  35.          break
  36.        end
  37.      end
  38.      @pic.bitmap.dispose
  39.      @pic.dispose
  40.      @halp_window.dispose
  41.      @command_window.dispose
  42.    end
  43.      def update
  44.        @command_window.update
  45.            if Input.trigger?(Input::B)
  46.              $scene = Scene_Map.new
  47.            end
  48.        if $index != @command_window.index
  49.          #刷新图片\HELP
  50.                  for i in 0...$fod.size
  51.            if i == @command_window.index
  52.              @halp_window.set_text($help[i])
  53.            end
  54.          end

  55.          $index = @command_window.index
  56.          @pic.bitmap.dispose
  57.          @picindex = RPG::Cache.picture($fod[@command_window.index])
  58.      @pic.bitmap = @picindex
  59.          @pic.y = @command_window.y + @command_window.height
  60.        end
  61.        if Input.trigger?(Input::C)
  62.          for i in 0...$fod.size
  63.            if i == @command_window.index
  64.              cook(i)
  65.            end
  66.          end
  67.        end
  68.      end
  69.      def cook(index)
  70.        @ok = true
  71.        x = $fod[index]
  72.        liao = $food[x]
  73.        for i in liao
  74.          if $game_party.item_number(liao) == 0
  75.            @ok = false
  76.          end
  77.        end
  78.        if @ok
  79.        for i in liao
  80.          $game_party.lose_item(i,1)
  81.        end
  82.            for i in $data_items.size
  83.             if $data_items[i].name == x
  84.               q = $data_items[i].name == x
  85.             end
  86.           end
  87.          $game_party.gain_armor(q,1)
  88.          @halp_window.set_text(x + "制作完成!")
  89.        else
  90.          @halp_window.set_text(x + "原料不足,制作失败!!!")
  91.       end
  92.      end
  93.    end
复制代码

版务信息:本贴由楼主自主结贴~
哎呀,蛋疼什么的最有爱了

Lv2.观梦者

傻♂逼

梦石
0
星屑
374
在线时间
1606 小时
注册时间
2007-3-13
帖子
6562

烫烫烫开拓者

3
 楼主| 发表于 2007-12-21 21:37:45 | 只看该作者
看来烹饪系统没人想用
版主对此帖的评论:『36小时内不得自顶帖子,详情请看版规。』,积分『-10』。这些被扣积分的一半会用于对本帖正确答案的悬赏。
哎呀,蛋疼什么的最有爱了
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
7986
在线时间
1184 小时
注册时间
2007-7-29
帖子
2055
4
发表于 2007-12-21 21:55:14 | 只看该作者
脚本写得很乱,也没有说明,所以我也懒得看了。
看到几个错误,说一说好了。
       for i in liao
         if $game_party.item_number(liao) == 0
           @ok = false
         end
       end

要获取数值,必须:
for i in 0...liao.size
  if $game_party.item_nmuber(liao) == 0
    @ok = false
  end
end

for i in $data_items.size

这个要是不报錯,那真的是神了。理论上是
for i in 0...$data_items.size

或者
for i in $data_items

还有很奇怪的一句:
q = $data_items.name == x

建议楼主下次写脚本时现拟好草稿,那些变量乱七八糟,叫人很难下手。
系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
回复 支持 反对

使用道具 举报

Lv1.梦旅人

v

梦石
0
星屑
50
在线时间
55 小时
注册时间
2007-12-19
帖子
99
5
发表于 2007-12-22 09:38:40 | 只看该作者
might try this:
       for i in liao
         if $game_party.item_number(liao) == 0
           @ok = false
         end
       end

=>
       for i in liao
         if $game_party.item_number(i) == 0
           @ok = false
         end
       end


The index checking is really redundant..

But I'm also wondering why there isn't an error when you send an array as an index number.. Maybe the "cook" method is never invoked o.o
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-1-13 07:26

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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