所以,让我们在这里想大一点。假设你有一个完整的 MMO 想要组合在一起。自然,这涉及到来自生物、物品、精灵表、瓷砖地图、对话、角色等的大量资源。在典型的游戏引擎中,您会根据一些任意指示符加载或卸载这些资源,例如地图或“区”。
有这个的Javascript版本吗?例如,当游戏循环运行时,您是否能够做到。
(伪代码)
If playerPosition = theRightPlace {
Load Resources for Next Zone
Unload Resources for Previous Zone
}
这样做有性能提升吗?还是应该只加载游戏的所有资源并完成它?假设在某些区域我有一个类 UglyMonster,而在另一个区域我有 UglierMonster。
我可以通过 John Resig 的经典继承类结构实例化这两个类(在我点击这个对话启动器之前我一直在使用它,这对于这种程序很方便)
var UglyMonster = Monster.extend({
Stuff why it is ugly;
Make a position!
Attack player!!!
});
var Monster1 = new UglyMonster();
或功能
function UglyMonster(name, position) {
Create Ugly Monster!!!! Attack player!
Stuff why it is ugly
}
var Monster1 = new UglyMonster('Fred', 100);
如果我将它们都声明为变量,那么游戏中的所有怪物都坐在全局变量中,不是吗?有没有办法在不实际构造变量的情况下声明变量?我是 Javascript 中整个继承游戏的新手,所以也许我遗漏了一些明显的东西。
处理这些浮动的类的最佳方法是什么?离开他们?删除它们?通过函数实例化?它有明显的不同吗?
我希望我已经足够清楚地说明了我希望实现的目标。谢谢!