CR的代码文本

all for learning about the world
  订阅 订阅  :: 管理

Lingo使用Tips

Posted on 2011-11-08 13:40  mumuliang  阅读(518)  评论(0编辑  收藏  举报

用verbose语法赋值

Lingo中的逻辑运算符使用的是单等号"=",编码中使用形如

set param to value

put value into param

的verbose语法进行赋值较为清晰。

 

关心case-insensitive

由于大小写不敏感case-insensitive,要注意字符串的比较。

put "A" = "a"

 -- 1

 

关心case-sensitive

Lingo绝大部分时候是大小不敏感的。只有一种情况,就是property list的property用字符串时,大小写是敏感的。

pl = ["m": 1, "M": 720] 

 

同一语句中Verbose语法和Dot语法不能混用

听起来像废话,但保不齐就会这么写,然后怎么都找不到语法错误原因。

set sprite(1).visible to true              -- 错的!

set the visible of sprite 1 to true       -- 对了

 

Case的特殊特点

Lingo的Case后可以用“,”分割多个表达式。另外最末的otherwise可加:也可不加。推荐加,好看。-_-b

-- Lingo syntax

case (_key.keyof

"a" :  _movie.go("Apple")

"b""c":

  _movie.puppetTransition(99)

  _movie.go("Oranges")

otherwise_sound.beep()

end case

 

Repeat的特殊特点

有个 repeat with ... in .. 实用,in后可以是list和对象。

 

系统事件stepFrame

Frame系的系统事件有prepareFrame, stepFrame, enterFrame, exitFrame, 就只有这个stepFrame不是frame behavior的system event,它是parent script的event。

 

movie script中的property

property是behavior或parent script的局部变量。非要写的话,在movie script中写property aa也并不会引起语法错误之类,但由于movie没有me概念,movie script中的property实际上是谁都够不着的死物。