脚本语法

- 变量:var

 

英文 中文    
var 变量    

 

作用:创建变量,给变量赋值,修改变量。

 

对象:变量(Variable)

 

格式

 

 

var 变量名=表达式

 

//或

 

var 变量名="字符串"

 

 

* 与其他语言不同,这里的var并不指代定义变量。

 

* 使用表达式的值只能为数字(包括整数和小数)

 

* 字符串类型不能参与逻辑运算

 

 

定义变量可以理解为定义一个代号,该代号表示了一个数值。

 

如定义敏民的好感度,然后更具剧情的分支选择来加减好感度。

 

 

* 变量名可以使用数字(但不能以数字作为开头),英文(大小写有区别),中文,部分符号(如_和$)

 

直接使用指令便可创建自己的变量,比如:

 

 

var 好感度_敏民=0

 

var 角色名="敏民"

 

 

修改也是如此,比如

 

 

var 好感度_敏民=1

 

var 角色名="敏明"

 

 

 

对话框中使用[@变量名]来输出变量的值,比如

 

 

var 好感度=0

 

var 角色名="敏民"

 

:"[@角色名]当前的好感度是[@好感度]"

 

//会输出:敏民当前的好感度是0

 

 

 

也有不能作为变量名的保留字

 

以下保留字不能作为自定义变量名出现

 

sin cos tan asin acos
atan sqrt log abs ceil
floor round random fac min
max pyt E PI  

 

 

 

GAo的变量表达式提供了各种强大的运算操作和运算函数,表达式中也可以引入其他的变量

* 改写自Raphael Graf(r@undefined.ch) 的表达式解析类

 

 

例:混合运算,计算3*((11*3)/(1+2*3-4)),值保存在变量result

 

 

var result=3*((11*3)/(1+2*3-4))

 

 

例:a=2222,b=33,计算 a/b 并使用四舍五入函数取值,再乘以11

 

var a=2222

var b=33

var result=11*round(a/b)

 

 

同时支持逻辑运算,1代表真,0代表假

 

运算符列表:

 

运算符 格式 例子 说明
算数运算
+ a+b 1+1=2 加运算
- a-b 2-1=1 减运算
* a*b 2*2=4 乘运算
/ a/b 4/2=2 除运算
^ a^b 2^4=16 乘方运算
% a%b 100%22=12 取余运算
逻辑运算
|| a||b 1||0=1 逻辑或
&& a&&b 1&&0=0 逻辑与
! !a !1=0 逻辑非
== a==b a=1,b=2,(a==b)=0 逻辑相等
!= a!=b a=1,b=2,(a!=b)=1 逻辑不等
> a>b 2>2=0 大于
>= a>=b 2>=2=1 大于或等于
< a<b 2<3=1 小于
<= a<=b 2<=3=1 小于或等于

 

 

常用的函数列表:(部分诸如三角函数什么的基本用不上就不列出来了)

 

函数名 格式 例子 说明
floor floor(a) floor(1.8)=1 返回小于或者等于指定表达式的最大整数
round round(a) round(1.6)=2 对指定表达式进行四舍五入求整
ceil ceil(a) ceil(1.4)=2 返回大于或者等于指定表达式的最大整数
random random(a) random(100)=38.49 产生0~数值的随机小数
max max(a,b) max(2,33)=33 取a,b中较大的值
min min(a,b) max(2,33)=2 取a,b中较小的值
abs abs(a) abs(-39)=39 取a的绝对值

 

 

 

同时变量也可以修改很多系统参数的数值

 

比如控制切换特效默认时间的 SYS_SHOWTIME 值 (默认为369,所以切换特效的默认时间均为369)。

 

 

 

以下是可供修改的系统变量:

 

变量名 默认值 作用
SYS_OPOTION 0 由选项自动填值,后面章节会有说明,一般不需修改.
SYS_SHOWTIME 396 表示切换特效默认动画时间的毫秒数。
SYS_BGSHOWTIME 1000 表示背景切换特效默认动画时间的毫秒数。
SYS_TEXTDELAY 33 表示默认文字输出的间隔毫秒数。
SYS_WAITSKIP 0 等待一段时间的命令是否可点击跳过
SYS_SHOWSKIP 0 切换特效动画(包括背景)是否可点击跳过
SYS_TEXTSKIP 0 文字输出过程是否可点击直接跳过
SYS_CTRLSKIP 1 CTRL键的快速跳过是否可用,默认为可用