基本运算
前言与确认
有了变量,我们就可以往里面装值了。但游戏里的值不会一成不变——金币会变多、体力会减少、好感度会上升。要让这些“变化”发生,就需要用到运算。
先确认一下我们现有的工程文件夹结构:
root/
├─ emuera.config
├─ Emuera1824.exe
├─ CSV/
└─ ERB/
└─ System.erb其中,System.erb的代码为:
erb
@EventFirst
Print Hello World!
Quit数值运算
最常用的是四则运算,此外还有整除和取余:
erb
@EventFirst
A = 1+2 ; 3
B = 3-2 ; 1
C = 2*3 ; 6
D = 6/3 ; 2
E = 5/3 ; 1
F = 5%3 ; 2
PrintVL A
PrintVL B
PrintVL C
PrintVL D
PrintVL E
PrintVL F
Quit| 符号 | 含义 | 备注 |
|---|---|---|
+ | 加法 | |
- | 减法 | |
* | 乘法 | |
/ | 除法 | 整除,会舍去小数部分 |
% | 取余 | 也叫“取模”,返回除不尽的余数 |
注意 5 / 3 的结果是 1 而不是 1.666...,因为 EraBasic 的数值都是整数。想保留两位小数时,通常改用“先乘 100 再除”的技巧。
复合赋值
如果只是想“在原来的基础上加一点”,可以把运算符和 = 连起来写:
erb
@EventFirst
A = 5
A += 2 ; 相当于 A = A + 2,此时 A 为 7
PrintVL A
A -= 2 ; 相当于 A = A - 2,此时 A 为 5
PrintVL A
A *= 2 ; 相当于 A = A * 2,此时 A 为 10
PrintVL A
A /= 2 ; 相当于 A = A / 2,此时 A 为 5
PrintVL A
A %= 2 ; 相当于 A = A % 2,此时 A 为 1
PrintVL A
Quit+=、-=、*=、/=、%= 只是一层语法糖,用不用都不影响结果。但在数值越改越多时,它能少写很多重复的变量名,也更不容易漏改。
字符串运算
字符串不能做加减乘除,但能拼接和重复:
+:把两段文本接在一起;*:把一段文本重复若干次(文本 * 整数)。
erb
@EventFirst
#DimS A = "喵"
#DimS B = "呜"
PrintS A + B
PrintL
PrintS A * 5
PrintL
Quit输出:
喵呜
喵喵喵喵喵注意:数字和字符串不能相加,字符串也不能乘以字符串。想让数字和文本一起输出,可以用
综合练习:金币变少了
erb
@EventFirst
#Dim Money = 100
Print 你原本有
PrintV Money
PrintL 枚金币。
Money -= 30
Print 买了一瓶药水后,你还剩
PrintV Money
PrintL 枚金币。
Quit运行效果:
你原本有100枚金币。
买了一瓶药水后,你还剩70枚金币。小结
- 数值支持
+ - * / %,其中/是整除、%是取余; += -= *= /= %=是复合赋值,用于在原值上做运算;- 字符串用
+拼接、用*重复,但不能和数字混着算。
下一步,我们把这些零零散散的计算组合成真正的表达式:表达式。