点击这里给我发消息

MKScript 帮助


MKScript 是一种强类型的脚本语言,其中关键词、变量名都是区分大小写的。

 

变量类型

类型 描述 示例
char 字符型 char c = 'a'
int 整型 int m = 1, n = 2
double 浮点型 double x = 3.14
string 字符串 string t = "你好"
ArrayList<T> 动态数组 ArrayList<int> list = {1, 2, 3}
Bmp 位图对象 Bmp bmp = screen_get_bmp(64, 32, 128, 16)

说明:
MKScript 脚本中的变量无论在什么位置定义的都是【全局变量】,作用范围都是全局性的。
<T> 中的 T 表示数据的基本类型, 可以是:char, int, double, string, Bmp中的任意一种。

 

静态数组

类型 描述 示例
char v[3] 字符型数组 char v[3] = {'a', 'b', 'c'}
int v[3] 整型数组 int v[3]
double v[3] 浮点型数组 double v[3] = {1.0, 2.0, 3.0}
string v[3] 字符串数组 string v[3] = {"a", "b", "c"}
Bmp v[3] 位图对象数组 Bmp v[3]

 

算术运算符

符号 描述 示例
+ int m = 5 + 3
- int m = 6 - 5
* int m = (3 + 2) * 6
/ int m = 6 / 3
% 余数(取模) int m = 6 % 2

 

比较运算符

符号 描述 示例
> 大于  
>= 大于或等于  
== 等于  
< 小于  
<= 小于或等于  
!= 不等于  

 

逻辑运算符

符号 描述 示例
&& 与运算 (and) a && b, 如果 a 与 b 都为 true, 结果为 true
|| 或运算 (or) a || b, 如果 a 或 b 任一为 true, 结果为 true

说明:&& 的优化级高于 ||

 

条件语句

语法样式 1 语法样式 2 语法样式 3

if a > b

 代码块...

endif

if a > b

 代码块...

elseif a < b

 代码块...

else

 代码块...

endif

if screen_get_color_at(x, y) == color

 代码块...

elseif screen_get_color_at(x, y) == color_2

 代码块...

else

 代码块...

endif

说明:ifendif 必须成对出现。

 

循环语句

语法样式 1 语法样式 2 语法样式 3

loop 3

 代码块...

endloop

loop a > b

 代码块...

endloop

for [int] i = 1 to 5 [step 1]

 代码块...

next

说明:

loopendloop 必须成对出现。

fornext 必须成对出现。

loop 3 表示: 循环执行代码块 3 次 。

loop -1 表示: 无限循环执行代码块 。

loop a > b 表示: 当 a > b 将一直循环执行代码块。

for 循环: For…Next 循环的语法中使用初值、终值、步长以及循环变量来完成循环操作的过程。
当进入循环第一次执行时,循环变量便由初值开始累加一次步长,一直到超过终值为止。

for 循环的中括号部分[...] 属于可选项。

关键词 描述
break 跳出循环,跳出循环会继续执行该循环之后的代码。
continue 中断循环中的当前迭代,如果出现了指定的条件,然后继续循环中的下一个迭代。

 

代码注释

注释符号 描述
# 单行注释符号。如果需要注释,# 必须写在行首位置。

 

函数

函数类型 描述 示列
鼠标 标操作相关的函数以 mouse_ 开头。 mouse_move_to(30, 20)
键盘 键盘操作相关的函数以 key_ 开头。 key_char('a', 1)
字符串 字符串的查找、替换、转换。 lcase("AbcD")
数学 提供一些与数字处理相关的函数。 floor(1.23), ceil(1.23)
日期时间 获取当前的日期、时间等。 time(), get_now()
屏幕颜色 获取屏幕尺寸、像素颜色、屏幕位图相关的函数,以 screen_开头。 screen_get_color_at(6, 9)
窗口 MKScript窗口设置大小、隐藏窗口等。 window_hide()
文件 文件操作相关的函数。 file_read("d:\\a.txt", "", t)
类型转换 数据类型转换相关的函数。 itos(3), stoi("5")
动态数组 动态数组相关的函数以 arraylist_ 开头。 arraylist_add(list, 3)
其他   sleep(1000)

>> 查看详细的函数说明