// createDeferredAssets.js
(function () {
/* global adventurejs A */
var p = adventurejs.Game.prototype;
/**
* Create assets - mainly exits - that were defined
* within other unclassed generic objects.
* <br><br>
* Assets created here also need to be validated,
* since they were added to the deferred list during
* the initial validation pass and therefore missed validation.
* @method adventurejs.Game#createDeferredAssets
* @memberOf adventurejs.Game
*/
p.createDeferredAssets = function Game_createDeferredAssets() {
for (var i = 0; i < this.deferred_assets.length; i++) {
var asset = this.game.createAsset(this.deferred_assets[i]);
if (false === asset) {
const msg = `createDeferredAssets received a bad value.`;
this.game.log("L1638", "error", 0, msg, "Game");
return false;
}
if (false === asset.validate(this)) {
const msg = `createDeferredAssets failed to validate asset.`;
this.game.log("L1639", "error", 0, msg, "Game");
return false;
}
// @TODO any special handling for platonics?
asset.is.validated = true;
}
this.deferred_assets = [];
return true;
};
})();