pizzagoo 发表于 2011-9-13 09:57:13

原帖由 onlinego 于 2011-9-13 09:55 AM 发表 http://pkuxkx.com/forum/images/common/back.gif



的确是lua
语法看着像,但问题是lua不用world.Send的。
还有,那句语句不明白?不可能每条语句都给你解释一下吧?

onlinego 发表于 2011-9-13 09:58:08

原帖由 pizzagoo 于 2011-9-13 09:57 AM 发表 http://www.pkuxkx.com/forum/images/common/back.gif

语法看着像,但问题是lua不用world.Send的。
还有,那句语句不明白?不可能每条语句都给你解释一下吧?


为什么不能呢?

selfmud 发表于 2011-9-13 14:47:15

我也才学,我按照我的看法说说,不一定对

本人也新学,下面是我自己的想法,很可能不对,希望高手指点

function alias:duhe()       ---我认为这个是做了个函数alias.duhe
   wait.make(function()
---我认为这个是做了个函数wait.make
      world.Send("duhe")
---我认为这个是调用了别处的发送函数,发送的内容是duhe这个alias
       locall,w=wait.regexp("(> |)你使出「一苇渡江」渡过了.*。$|^(>|)你的修为不够!$|(> |)这里的水太深太急,你渡不过去。$|^(>|)什么?$|^(> |)你的内力修为不够,怎能支持!?",5)
---我认为这个是做触发器的描述行,定义了个局部变量l和w,其中w是那个触发的描述
       if l==nil then---我认为这个是:如果l为空值
         self:duhe()--我认为这个是:self好像是调用自身的一个什么,好像是调用渡河这个alias吧
         return--我认为这个是:返回
       end--我认为这个是:结束if语句

       if string.find(l,"你使出「一苇渡江」")then--我认为这个是:if语句,如果发现后面括号里面的
          local b--我认为这个是:定义局部变量b
         b=busy.new()--我认为这个是:定义b是个函数busy.new
         b.interval=0.3--我认为这个是:貌似b是个数组,应该有个地方定义了比如b={},其中b.interval是其中的一个数值
         b.Next=function()--我认为这个是:和上句一样。Next是数组b中的一个数值,这个数字现在定义成了函数
         self:finish()--我认为这个是:b.next定义的函数内容,其中这个self后面加冒号我不太懂,
          end--我认为这个是:结束b.next内容
          b:check()--我认为这个是:和上上行一样
          return--我认为这个是:返回
       end--我认为这个是:结束
       if string.find(l,"你的修为不够")or string.find(l,"这里的水太深太急,你渡不过去")or string.find(l,"你的内力修为不够,怎能支持")then
         self:yellboat()
          return
       end--我认为这个是:判断语句if发现你的修为不够或者水太深或者内力不够,然后执行self:yellboat,其中这个self;yellboat应该是别处定义的
      if string.find(l,"什么")then
      print("出现异常")
      self:finish()
       end--我认为这个是:判断遇见if,如果出现什么等,显示出现异常,然后执行self:finish函数
       wait.time(5) --我认为这个是:别处定义的等待函数,估计是等5秒吧
    end)
end--我认为这个是:结束

[ 本帖最后由 selfmud 于 2011-9-13 02:54 PM 编辑 ]

mygame 发表于 2011-9-13 19:06:14

不说话,围观,学习

selfmud 发表于 2011-9-13 19:12:16

我说的都是对是错,也没人给提醒一下啊

pizzagoo 发表于 2011-9-14 09:03:01

原帖由 selfmud 于 2011-9-13 07:12 PM 发表 http://pkuxkx.com/forum/images/common/back.gif
我说的都是对是错,也没人给提醒一下啊
景仰。。。

whuan 发表于 2011-9-14 09:27:45

lua我不懂,没有发言权

onlinego 发表于 2011-9-14 12:18:17

那个能来讲讲面对对象,结合这个列子

selfmud 发表于 2011-9-14 14:51:51

我也想学习。。。
我学mush才几天时间。。。

littleknife 发表于 2011-9-15 09:39:38

这里面一个是冒号“:”的理解:其实就是a.name=function()。
另外,就是过程的理解,渡河的过程中考虑等待的问题。
wait.lua的使用必须调用系统的wait.lua函数。前置必须有require wait才可。
其作用是用wait.time来实现系统线程停顿。用wait.make来制作主体。用wait.regexp来制作相关触发。
根据wait.regexp触发的返回值来觉得用什么函数或命令。
wait.regexp返回两个值:l其实作用是有没有出现这个触发;w是出现后的参数。
先判断有没有这个触发,即l是否为空。为空就是没有渡河,不空就是处在渡河状态。
在依次判断渡河过程中是处于什么状态。
轻功,修为,异常等等。。
页: 1 [2] 3
查看完整版本: 高手来帮我批注一下每一句都是啥意思,有点看不明白