UNPKG

@skullandbonestools/snbdata

Version:

Inofficial data package for the Skull and Bones game by Ubisoft.

33 lines 1.53 kB
import modificationsData from '../../data/modifications.json'; export class Modification { constructor(id, effectType, damageType, // Determines if the modification can only be applied to a weapon that includes the specific damage type. requiredDamageType, variants, dropOnly, repairAccess, grade, dateAdded, lastUpdated) { this.id = id; this.effectType = effectType; this.damageType = damageType; this.requiredDamageType = requiredDamageType; this.variants = variants; this.dropOnly = dropOnly; this.repairAccess = repairAccess; this.grade = grade; this.dateAdded = dateAdded; this.lastUpdated = lastUpdated; } static fromRawData(rawData) { const variants = rawData.variants.map((variant) => ({ itemType: variant.itemType, range: variant.range, })); return new Modification(rawData.id, rawData.effectType ?? undefined, rawData.damageType ?? undefined, rawData.requiredDamageType ?? undefined, variants, rawData.dropOnly, rawData.repairAccess, rawData.grade, new Date(rawData.dateAdded), new Date(rawData.lastUpdated)); } static loadModifications() { const modifications = {}; for (const [key, value] of Object.entries(modificationsData)) { modifications[key] = Modification.fromRawData(value); } return modifications; } } export const Modifications = Modification.loadModifications(); //# sourceMappingURL=modifications.js.map