RedScript 的类型系统有一个非常鲜明的特点:它不是为了抽象而抽象,而是为了把高级语言安全地压到 Minecraft datapack 的 scoreboards、NBT storage 和 execute 语义里。所以理解 RedScript 类型,不能只看语法名词,还要看“它最后在运行时会变成什么”。
基础类型:int、double、fixed、string、bool
int 仍然是最核心的运行时值,绝大多数控制流、计时器、枚举 tag、scoreboard 计算都以它为中心。fixed 和 double 则体现了 RedScript 对数值语义的区分:fixed 是定点数,适合 scoreboard 体系里的可控算术;double 是另一条更重的运行时通路,适合需要真实浮点语义的场景。类型检查器已经把它们视为不同数值族,int -> fixed、int -> double 都不能隐式转换。
