基础
语法相关的基本规则
- 下列的规则是Kontakt脚本语言的基本规则,符合这些规则的脚本才能被正确执行:
- 指令只能在一行内书写
- 指令之间的空行可以有无限多个
- 单词之间的空格可以有无限多个
- Kontakt脚本语言区分大小写,因此程序不会将Play_Note()识别为play_note()
- 指令太长不便在一行内写完时,在行末加入“…”可以另起一行续写
例如下面的的两段代码:
on note if($EVENT_VELOCITY > 100) message ("Script message: key struck HARD") else message("Script message: key struck SOFT") end if end on
等价于:
on note if( $EVENT_VELOCITY > 100) message(... "Script message: key struck HARD") else message("Script message: key struck SOFT") end... if end on
- 状态栏用于输出语法错误。有错误的代码行显示为红色。
- 脚本运行时产生的错误显示在Kontakt浏览器下方的状态栏中。
回调函数
回调函数即被执行若干次的程序。按住音符出发的是音符回调函数,释放音符触发的是释放回调函数,等等。
下面是五中不同类型的函数:
on init … end on | 初始化回调函数,脚本正确解析后执行 |
on note … end on | 音符回调函数,程序接收到音符输入消息时执行 |
on release … end on | 释放回调函数,程序接收到音符释放消息时执行 |
on ui_control () … end on | UI回调函数,用户操作UI元素时执行 |
on controller … end on | 控制器回调函数,程序接收到CC或弯音消息时执行 |
exit | 立即停止回调函数 |
还有两个分配给rpn/nrpn消息的回调函数,但这两者可以视为特殊的控制器回调函数。