我正在使用 Haxe/Kha 开发游戏。
我只需要一种可用于游戏的脚本语言。它必须支持变量和循环之类的东西。我正在制作一个 JRPG,其中我有很多交互能力(想想战利品箱、NPC 等),所以我想编写脚本而不是硬编码。
希望用类JS的语言来实现。我希望每张 map 有 1 个文件,并采用这种格式。
5, 10 {
movement(WALK_RANDOM);
function interact() {
textBox("Hello World!");
giveItem(RUBBER_DUCK);
}
}
其中 5 和 10 是可交互的 x 和 y。
当我运行它时,我真正想做的是(在 Haxe 中)
Interactable int = new Interactable(5,10);
int.movement = WALK_RANDOM;
int.interact = function () {textBox("Hello World!"); giveItem(RUBBER_DUCK);} // Can you even do this sort of thing in Haxe?
每张 map 将有一个脚本文件,该文件中有许多可交互的子句。
长话短说: 我想使用 JS 风格(也许实际上是 JS?)脚本语言在我的游戏中放置内容。我应该如何将它放入我的游戏中,它是用 Haxe 编写的?
正如您可能已经看到的,我真的很迷茫,不知道自己到底想做什么。如果有任何问题或我可以详细说明的部分,请指出。
最佳答案
您考虑过 HScript 吗?
https://github.com/HaxeFoundation/hscript
这是 Haxe 的官方脚本解决方案。您可以使用 Haxe 本身(而是它的一个子集)作为嵌入式脚本语言。函数和变量可以暴露给脚本,以便与之交互。
可以在此处找到更详细的描述(尽管某些部分有点特定于 Luxe):
http://snowkit.org/2015/06/20/using-hscript-to-program-entity-behaviors-in-luxe-with-auto-reload/
关于javascript - 用 Haxe 编写的游戏类 JS 脚本语言?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52333836/