UNPKG

novaparse

Version:
58 lines 2.52 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 Animation_1 = require("novadatainterface/Animation"); function ExplosionParse(boom, notFoundFunction) { return __awaiter(this, void 0, void 0, function* () { var base = yield BaseParse_1.BaseParse(boom, notFoundFunction); var spin = boom.idSpace.spïn[boom.graphic]; var animationImage; if (spin) { var rled = spin.idSpace.rlëD[spin.spriteID]; if (rled) { animationImage = { id: rled.globalID, imagePurposes: { normal: { start: 0, length: rled.numberOfFrames } } }; } else { notFoundFunction("Missing rled " + spin.spriteID + " for bööm " + base.id); animationImage = Animation_1.DefaultAnimationImage; } } else { notFoundFunction("Missing spin " + boom.graphic + " for bööm " + base.id); animationImage = Animation_1.DefaultAnimationImage; } var animation = Object.assign({ images: { baseImage: animationImage }, exitPoints: Animation_1.DefaultExitPoints }, base); var soundID = null; /* // Sound parsing is broken for some reason if (boom.sound) { let sound = boom.idSpace["snd "][boom.sound]; if (sound) { soundID = sound.globalID; } else { notFoundFunction("Missing snd " + boom.sound + " for bööm " + base.id); } } */ return Object.assign({}, base, { animation, sound: soundID, rate: boom.animationRate / 100 }); }); } exports.ExplosionParse = ExplosionParse; ; //# sourceMappingURL=ExplosionParse.js.map