好了,我们回头看看事件页写的那行” Say_Something.new” ,注意到了吗, 它前面没有写对象, 我们可以试着改为” my_object = Say_Something.new” , 效果是一样的,不过心里舒坦了点吧…….这是为什么呢??? 这里我们创建了一个新的目标对象叫”my_object” ,它应该是在”Say_Something”这个class里的,但是我们开头那个”Say_Something “,除了一条信息外空空如也..所以我们没必要在事件那里多一个对象.
那么,我们来给这个空空如也的”Say_Something “类多点什么吧! 重新替换开头那行脚本为: class Say_Something attr_accessor :greeting attr_accessor :name def initialize(greeting, name) @greeting=greeting @name=name end def say print @greeting + “ “ + @name end end 然后在那个npc事件脚本里重新写为: message1=Say_Something.new(“Hello”, “Alex”) message2=Say_Something.new(“Hello”, “Peter”) print message1.name print message2.name message1.say message2.say
执行看,是不是华丽多了?我们看到4个冒出来的窗口.分别显示”Alex”,”Peter”,”Hello Alex”和”Hello Peter” 这里我们创建了两个目标”message1”和”message2”他们都依靠”Say_Something”类,就像第一讲里那个汽车厂的例子一样,改变一个是不会影响另一个的. 那么他是如何运行的呢?请看第三讲.
|