Ykkrosh
16a4eb36dd
Enable SpiderMonkey method JIT in Release mode. Add Engine.ProfileStart/Engine.ProfileStop functions for scripts. Fix AI to clone initial entity data and shared metadata. This was SVN commit r9003.
33 lines
565 B
JavaScript
33 lines
565 B
JavaScript
function VectorDistance(a, b)
|
|
{
|
|
var dx = a[0] - b[0];
|
|
var dz = a[1] - b[1];
|
|
return Math.sqrt(dx*dx + dz*dz);
|
|
}
|
|
|
|
function MemoizeInit(obj)
|
|
{
|
|
obj._memoizeCache = {};
|
|
}
|
|
|
|
function Memoize(funcname, func)
|
|
{
|
|
return function() {
|
|
var args = funcname + '|' + Array.prototype.join.call(arguments, '|');
|
|
if (args in this._memoizeCache)
|
|
return this._memoizeCache[args];
|
|
|
|
var ret = func.apply(this, arguments);
|
|
this._memoizeCache[args] = ret;
|
|
return ret;
|
|
};
|
|
}
|
|
|
|
function ShallowClone(obj)
|
|
{
|
|
var ret = {};
|
|
for (var k in obj)
|
|
ret[k] = obj[k];
|
|
return ret;
|
|
}
|