【发布时间】:2013-12-06 09:51:51
【问题描述】:
我正在为 JS 游戏创建 AI 引擎,它由有限状态机组成。我正在从 XML 加载状态数及其变量值。我还想加载行为,由于我没有时间创建脚本语言,我认为在外部文件(XML 节点内)上“插入”JS 代码并执行它是个好主意需求。
类似的东西
<evilguy1>
<behaviour>
this.x++;
</behaviour>
<behaviour>
this.y++;
</behaviour>
</evilguy1>
类似的事情:
function behaviour_1(){
this.x++;
}
function behaviour_2(){
this.y++;
}
我的问题是,现在我已经加载了代码,我该如何执行它?我想为每个代码“节点”创建一个具有唯一名称的函数,然后从游戏逻辑中调用它们,但我不知道这是否可能(因为你可以从 HTML 加载更多的 JS 代码,你应该也可以从 JS 代码中做到这一点,不是吗?)。如果没有,有没有类似的解决方案?提前致谢!
(PS:外部库依赖越少越好)
编辑 1:
好的,现在我知道如何创建包含代码的函数了
window[classname] = function() { ... };
【问题讨论】:
-
我认为您需要详细说明并可能显示一些代码......
-
eval,但要小心,因为它是邪恶的。 -
@Triode 非常感谢命名问题。现在我只需要弄清楚如何处理代码加载。
标签: javascript