当前位置:文档之家› 学习游戏脚本制作:按键精灵里的if语句教程

学习游戏脚本制作:按键精灵里的if语句教程

学习游戏脚本制作:按键精灵里的if语句教程
来源:按键学院【按键精灵】万万没有想到……有一天居然会栽在if语句手里。

First—小编的凄惨经历
小编今早写脚本,由于无意间将if语句中的end if错删了,弹出了这样的错误提示:
“(错误码0)没有找到合法的符号。


看到这个提示,小编以为是哪个逗号不小心写成中文逗号,没成想丢了个end if也是出现这样的提示。

好在代码不多,所以错误点容易找到,那……如果,代码多达几百上千条的时候呢?眼泪马上掉出来~
今天在这里和童鞋们一起来了解下,按键里的夫妻组合,看看这些夫妻被分开之后都会出现什么样的可怕情况:
Second—一夫一妻制
If……end if判断语句
If判断语句,有分为两种:
1、 if语句条(条模式)
当判断完之后,要执行的语句只有一条的时候,使用if语句条
例如:
If 1 > 0 Then MessageBox"Hello~"
// If语句条,不需要添加end if
//条模式的时候,if语句还是单身,不是夫妻组合
2、 if语句块(块模式)
当判断完之后,要执行的语句有很多条的时候,使用if语句块
例如:
If 1 > 0Then
MessageBox"Hello~"
MessageBox"Hello~"
End If
//块模式的时候,if语句是已婚状态,夫妻组合。

如果这个时候缺少了end if
就会出现下面的错误提示:
拓展:if语句块中then 可以省略
例如:
If 1 >0
MessageBox"Hello~"
MessageBox"Hello~"
End If
For……next循环语句
例子:
For i=1 To 10
//这里的脚本可以循环10次
Next
拓展:如果,循环体里不需要用到循环次数值,例如,需要打开十个记事本,可以这样写:
For 10
RunApp "Notepad.exe"
Next
当for循环语句缺少next的时候,会出现下面的错误提示:
Do……Loop 循环语句
Do……Loop循环语句分为两种情况:
1、前判断
Do While条件
Loop
在执行循环体之前判断条件,满足则进入循环不满足则不进入
例如:
i=1
Do While i>1
i = i - 1
TracePrint 1
Loop
//一次也不执行
2、后判断
Do
Loop While条件
在执行循环体之后判断条件,先进入一次循环,执行完一次循环之后再开始判断是否满足条件
例如:
i=1
Do
i= i - 1
TracePrint 1
Loop While i>1
//执行一次TracePrint1
当do……loop循环语句缺少loop的时候,会出现下面的错误提示:
VBS执行块
语法:
VBSBegin
'需要插入的VBS代码
VBSEnd
VBSBegin 缺少VBSEnd 会出现的提示:
LogStart 开始记录日志
语法:
LogStart 文件名
LogStop
Logstart缺少logstop 不会出现错误提示,如果忘记了logstop,蛋疼的点就是它会把你后面不需要记录的东西也记录。

注释符号/* 和*/
小编习惯用的注释符号是// ,如果喜欢使用/* */作为注释符的童鞋,需要注意一下:/* */注释符不支持嵌套使用
例如:
/* /* */ */
/* 缺少*/ 会出现的提示:
Third—一夫二妻制
Select Case选择语句语法:
Select Case 选择条件
Case 0
//情况1
Case 1
//情况2
Case Else
//否则
End Select
例子1:
x=1
Select Case x
Case 1
MessageBox"1"
Case 2
MessageBox"2"
End Select
例子2:
x="Hello"
Select Case x
Case "Hello"
MessageBox"Hello"
Case "Yes"
MessageBox"Yes"
End Select
Select Case选择语句它是一夫二妻制度,少了Case和End Select都不行Select Case选择语句缺少case 会出现的错误提示:
Select Case选择语句缺少End Select会出现的错误提示:
Function 函数
Function函数也是一夫二妻制:
老公 Function 函数(参数列表)
老婆1号End Function
老婆2号call 语句
语法:
Function 函数(参数列表)
//我是一个函数,被你调用了
End Function
Function函数分为两种情况:
1、有参数传递
例子:
x = "成功调用"
call 输出(x) //带入参数x调用function函数
Function 输出(x) //参数为x
MessageBox x
End Function
// X是字符串变量,值为"成功调用" 将x作为参数调用function函数,x值传入function函数。

拓展:
call 输出(x)
当我们传入function函数的值是变量的时候,我们称之为形参,也就是说这个参数是可以变化的,它根据变量值的变化而变化
call 输出(5)
当我们传入function函数的值是常量数值,我们称之为实参,也就是说这个参数是不能变化的,写了5就是5。

2、没有参数传递
例子:
call 输出()
Function 输出()
MessageBox "成功调用"
End Function
当function函数缺少End Function 会出现的提示:
Sub 子程序
语法:
Sub 子程序()
//我是一个过程,被你调用了
End Sub
//它和function函数像是两兄弟,兄弟俩感情好到不分彼此,这不,哥哥function有个老婆叫call语句,弟弟sub也有个老婆叫call语句:
老公:sub()
老婆1号:End sub
老婆2号:call 语句
Sub和function两兄弟,我们是经常使用的,他们的作用极其相似,sub也和function 一样分为两种情况,有参数和没参数,详见上面funcation的说明,这里就不细说了。

我们主要关注下他们不一样的地方,哪里不一样呢?Function支持返回值,而sub不支持。

Function返回值使用例子:
x = "成功调用"
返回值= 输出(x) //带入参数x调用function函数
Function 输出(x)
x="改变"
输出=x
End Function
//Funcation的函数名称是用来存放返回值的。

Sub缺少end sub会出现的提示:(错误码0)没有找到合法的符号。

缺少call语句的情况参见上面的funcation,毕竟他们是兄弟~很多东西都是一样样的。

Fourth—(包办婚姻)我情你不愿
Goto跳转和Rem 标记/注释
说到Rem和Goto 就感觉到淡淡的忧伤
童鞋们都知道,跳转和标记是一对的,要一起使用对吗?
可是,Rem标记它还有另外的身份,那就是注释,它并不是只钟情于Goto而已。

所以Rem没有了Goto是可以的,
而Goto却不能没有Rem。

那句伤感的话怎么说来着:没有了我,你还有其他人,而我只有你。

可怜的Goto……
Goto缺少Rem会出现的提示:
Last—如何排错呢?
排错
例如do……loop这样的,出现错误之后会直接提示你缺少了loop,如果都是这样提示那就好办了,可是如果提示的是没有找到合法符号这样的呢?
乱到了一种境界……
按下F4吧,按下之后你就解脱了。

(F4键是按键精灵里规范代码的快捷键,按下之后,代码立马自动排列整齐,快得很轻松的很)
下面拿if语句做个例子,一个六个if语句嵌套着:
少了一个end if ,肉眼想要看出来很费劲。

按下F4之后:。

相关主题