Project1

标题: 下面这两段脚本能合并在一起么? [打印本页]

作者: 幻耶    时间: 2011-10-12 14:38
标题: 下面这两段脚本能合并在一起么?
  1.   def initialize(viewport, battler = nil)
  2.     super(viewport)
  3.     @battler = battler
  4.     @battler_visible = false
  5.     @flash_shake_switch = true
  6.   end
复制代码
  1.   alias hzhj_old_initialize initialize
  2.   def initialize(*args)
  3.     hzhj_old_initialize(*args)
  4.     if not @battler.nil?
  5.       self.x = @battler.screen_x
  6.       self.y = @battler.screen_y
  7.       self.z = @battler.screen_y
  8.       @hzhj_play_jump = true
  9.     end
  10.     @hzhj_x = self.x
  11.     @hzhj_y = self.y
  12.   end
复制代码
dsu_plus_rewardpost_czw
作者: 各种压力的猫君    时间: 2011-10-12 17:15
本帖最后由 各种压力的猫君 于 2011-10-12 18:14 编辑

第一个放在第二个上面就行 - -
第二个用了alias而且没有重复定义的部分所以不用担心。
具体alias是什么用法麻烦自己翻F1


抱歉我错了
作者: fux2    时间: 2011-10-12 17:58
各种压力的猫君 发表于 2011-10-12 17:15
第一个放在第二个上面就行 - -
第二个用了alias而且没有重复定义的部分所以不用担心。
具体alias是什么用法 ...

行个妹子,没看见传入参数是*arg么.
作者: darkscout3000    时间: 2011-10-12 21:42
这个⋯⋯如果都是同一个类里头的方法的话,那就把第二段放在第一段后面
大概是这种感觉
  1. def initialize(viewport, battler = nil)
  2.     super(viewport)
  3.     @battler = battler
  4.     @battler_visible = false
  5.     @flash_shake_switch = true
  6.     if not @battler.nil?
  7.       self.x = @battler.screen_x
  8.       self.y = @battler.screen_y
  9.       self.z = @battler.screen_y
  10.       @hzhj_play_jump = true
  11.     end
  12.     @hzhj_x = self.x
  13.     @hzhj_y = self.y
  14. end
复制代码
虽然第二段用的参数是*args,但是并没有特地读取任何参数,所以无视了⋯⋯
作者: 幻耶    时间: 2011-10-13 08:32
fux2 发表于 2011-10-12 17:58
行个妹子,没看见传入参数是*arg么.

那么如果是并在一个脚本里,先后的放置有没有问题?




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