warframe-worldstate-parser
Version:
An Open parser for Warframe's Worldstate in Javascript
75 lines (74 loc) • 2.18 kB
JavaScript
import { n as __decorateMetadata, t as __decorate } from "../../decorate-BCC26nnB.mjs";
import { IsInt, IsOptional, IsString, Min } from "class-validator";
import { languageString } from "warframe-worldstate-data/utilities";
//#region lib/models/ChallengeInstance.ts
/**
* Describes a world challenge instance
*/
var ChallengeInstance = class {
/**
* Type of challenge
*/
type;
/**
* Minimum enemy level to fulfill challenge
*/
minEnemyLevel;
/**
* Required number of units to complete challenge
*/
requiredAmount;
/**
* Waypoint for amount of units between progression updates
*/
progressAmount;
/**
* Required damage type
*/
damageType;
/**
* Target to fulfill challenge
*/
target;
/**
* @param data The challenge instance data
* @param deps The dependencies object
* @param deps.locale Locale to use for translations
*/
constructor(data, { locale = "en" } = { locale: "en" }) {
this.type = languageString(data.Type, locale);
this.minEnemyLevel = Number(data.MinimumEnemyLevel);
this.requiredAmount = Number(data.RequiredCount);
this.progressAmount = Number(data.ProgressIndicatorFreq);
this.damageType = data.DamageType ? languageString(data.DamageType, locale) : void 0;
this.target = data.VictimType?.[0] ? languageString(data.VictimType[0], locale) : data.Script?._faction;
}
};
__decorate([IsString(), __decorateMetadata("design:type", String)], ChallengeInstance.prototype, "type", void 0);
__decorate([
IsInt(),
Min(0),
__decorateMetadata("design:type", Number)
], ChallengeInstance.prototype, "minEnemyLevel", void 0);
__decorate([
IsInt(),
Min(0),
__decorateMetadata("design:type", Number)
], ChallengeInstance.prototype, "requiredAmount", void 0);
__decorate([
IsInt(),
Min(0),
__decorateMetadata("design:type", Number)
], ChallengeInstance.prototype, "progressAmount", void 0);
__decorate([
IsOptional(),
IsString(),
__decorateMetadata("design:type", String)
], ChallengeInstance.prototype, "damageType", void 0);
__decorate([
IsOptional(),
IsString(),
__decorateMetadata("design:type", String)
], ChallengeInstance.prototype, "target", void 0);
//#endregion
export { ChallengeInstance };