UNPKG

novaparse

Version:
75 lines 3.02 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); const BaseParse_1 = require("./BaseParse"); const PictData_1 = require("novadatainterface/PictData"); const Animation_1 = require("novadatainterface/Animation"); function PlanetParse(spob, notFoundFunction) { return __awaiter(this, void 0, void 0, function* () { var base = yield BaseParse_1.BaseParse(spob, notFoundFunction); var desc; var descResource = spob.idSpace.dësc[spob.landingDescID]; if (descResource) { desc = descResource.text; } else { desc = "No matching dësc for spöb of id " + base.id; notFoundFunction(desc); } var pictID; var pict = spob.idSpace.PICT[spob.landingPictID]; if (pict) { pictID = pict.globalID; } else { notFoundFunction("No matching PICT for spöb of id " + base.id); pictID = PictData_1.DefaultPictData.id; } var rledResource = spob.idSpace.rlëD[spob.graphic]; var rledID; if (rledResource) { rledID = rledResource.globalID; } else { notFoundFunction("No matching rlëd id " + spob.graphic + " for spöb of id " + base.id); rledID = Animation_1.DefaultAnimationImage.id; } var animation = { exitPoints: Animation_1.DefaultExitPoints, id: base.id, name: base.name, prefix: base.prefix, images: { baseImage: { id: rledID, imagePurposes: { normal: { start: 0, length: 1 } } } } }; return Object.assign({}, base, { landingDesc: desc, landingPict: pictID, animation, vulnerableTo: ["planetBuster"], physics: { shield: 1000, shieldRecharge: 1000, armor: 1000, armorRecharge: 1000, acceleration: 0, speed: 0, deionize: 0, energy: 0, energyRecharge: 0, ionization: 0, mass: 0, turnRate: 0, }, position: [spob.position[0], spob.position[1]] }); }); } exports.PlanetParse = PlanetParse; //# sourceMappingURL=PlanetParse.js.map