本帖最后由 taroxd 于 2014-7-7 14:18 编辑
有一点点区别。方法的定义都写在F1里面了,你看了就明白:
class RPG::BGM < RPG::AudioFile @@last = RPG::BGM.new def play(pos = 0) if @name.empty? Audio.bgm_stop @@last = RPG::BGM.new else Audio.bgm_play('Audio/BGM/' + @name, @volume, @pitch, pos) @@last = self.clone end end def replay play(@pos) end def self.stop Audio.bgm_stop @@last = RPG::BGM.new end def self.fade(time) Audio.bgm_fade(time) @@last = RPG::BGM.new end def self.last @@last.pos = Audio.bgm_pos @@last end attr_accessor :pos end
class RPG::BGM < RPG::AudioFile
@@last = RPG::BGM.new
def play(pos = 0)
if @name.empty?
Audio.bgm_stop
@@last = RPG::BGM.new
else
Audio.bgm_play('Audio/BGM/' + @name, @volume, @pitch, pos)
@@last = self.clone
end
end
def replay
play(@pos)
end
def self.stop
Audio.bgm_stop
@@last = RPG::BGM.new
end
def self.fade(time)
Audio.bgm_fade(time)
@@last = RPG::BGM.new
end
def self.last
@@last.pos = Audio.bgm_pos
@@last
end
attr_accessor :pos
end
这只是普通的Ruby定义而已,因此不需要释放。
@熊喵酱 结贴 |