Project1

标题: 不好意思,询问下动态怪物脚本出现的错误 [打印本页]

作者: wuming2012    时间: 2013-8-15 01:18
标题: 不好意思,询问下动态怪物脚本出现的错误
{:2_270:}明明原案测试没问题,放到我的游戏里就出现问题了。出现的是这个(错误是67位)NoMethodError,undefined method zoom_x'for nil:NilClass
原案是没问题的,为啥放到我这就有问题了,难道确实什么?
RUBY 代码复制
  1. #====================================================================#
  2. #  #*****************#           Allow you animate battlers graphics #     
  3. #  #*** By Falcao ***#           during the battle process           #         
  4. #  #*****************#                                               #
  5. #         RMVX                   Intrucciones: Copy and paste the    #
  6. # makerpalace.onlinegoo.com      script to your project              #  
  7. #====================================================================#
  8.  
  9. #--------------------------------------
  10. # Animated Battlers 1.0 Falcao script
  11. #-------------------------------------
  12.  
  13. class Game_Battler
  14.   attr_accessor :zoom_x
  15.   attr_accessor :zoom_y
  16.   alias falcaoB_zoom_ini initialize
  17.   def initialize
  18.     falcaoB_zoom_ini
  19.     @zoom_x = 1.0
  20.     @zoom_y = 1.0
  21.     @zoom_time = 0
  22.   end
  23.   def zoom(x,y)
  24.     self.zoom_x = x
  25.     self.zoom_y = y
  26.   end
  27.   def zoom_plus(x,y)
  28.     self.zoom_x += x
  29.     self.zoom_y += y
  30.   end
  31.   def zoom_less(x,y)
  32.     self.zoom_x -= x
  33.     self.zoom_y -= y
  34.   end
  35.  
  36.   def breath
  37.     @zoom_time += 1
  38.     if @zoom_time <= 50
  39.      zoom_plus(0.002,0.002)
  40.     end
  41.     if @zoom_time >= 50
  42.       zoom_less(0.002,0.002)
  43.       if self.zoom_x <= 1
  44.         zoom(1,1); @zoom_time = 0
  45.       end
  46.     end
  47.   end
  48.  
  49.   def breath_slow
  50.     @zoom_time += 1
  51.     if @zoom_time <= 50
  52.      zoom_plus(0.001,0.001)
  53.     end
  54.     if @zoom_time >= 50
  55.       zoom_less(0.001,0.001)
  56.       if self.zoom_x <= 1
  57.         zoom(1,1); @zoom_time = 0
  58.       end
  59.     end
  60.   end
  61. end
  62.  
  63. class Sprite_Battler < Sprite_Base
  64.   alias falcaoBattler_zoom_update update
  65.   def update
  66.      falcaoBattler_zoom_update
  67.      if @zoom_x != @battler.zoom_x or
  68.        @zoom_y != @battler.zoom_y
  69.        @zoom_x = @battler.zoom_x
  70.        @zoom_y = @battler.zoom_y      
  71.        self.zoom_x = @battler.zoom_x
  72.        self.zoom_y = @battler.zoom_y
  73.      end
  74.   end
  75.   alias falcaoBattler_update update_battler_bitmap
  76.   def update_battler_bitmap
  77.     falcaoBattler_update
  78.     if @height <= 200
  79.       @battler.breath
  80.     elsif @height > 200
  81.       @battler.breath_slow
  82.     end
  83.   end
  84. end

作者: wuming2012    时间: 2013-8-15 15:38
原案就是脚本资源站的那个http://www.66rpg.com/articles/4960
= =b
作者: 上贺茂润    时间: 2013-8-16 09:51
zoom_x'for nil:NilClass
缺少一个方法,传递了一个空值
-你的游戏有其他脚本不兼容
-备注栏没有标注
-这个方法zoom被占用,搜索脚本




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1