@zerospacegg/iolin
Version:
Pure TypeScript implementation of ZeroSpace game data processing (PKL-free)
58 lines • 2.21 kB
JavaScript
"use strict";
/**
* Guardian Obelisk - Temporary defensive structure
* Sacred defensive turret that provides protection for a limited time
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.GuardianObelisk = void 0;
const legion_js_1 = require("../../../../defaults/legion.cjs");
const ability_js_1 = require("../../../../engine/ability.cjs");
class GuardianObelisk extends legion_js_1.LegionSpecialBuilding {
// Readonly properties
constructor() {
super();
// Auto-generated fixes from dev data comparison
this.hexiteCost = 190;
this.fluxCost = 0;
this.buildTime = 10;
this.buildCount = 1;
this.timedLife = 150;
this.name = "Guardian Obelisk";
this.tier = "";
this.internalId = "Building_Legion_Obelisk_Defensive_C";
this.internalPath =
"/Game/Nova/Archetypes_Buildings/Building_Legion_Obelisk_Defensive.Default__Building_Legion_Obelisk_Defensive_C";
this.internalTags = [
"Attackable.Building.Anorganic",
"Building.NoContructionCompleteSound",
"Building.Legion.Obelisk",
];
this.uuid = "3135ef12-8504-4ca5-b20a-6cd651a7d4a7";
// Temporary defensive structure stats
this.hp = 500;
this.armor = 0;
this.armorType = "building";
this.speed = 0;
// Defensive turret attack
this.attacks.cannon = new ability_js_1.Attack({
name: "Attack",
damage: 50,
cooldown: 1.5,
cooldownBetweenShots: 1.5,
armorPenetration: 0,
delay: 0,
range: 1600,
targets: ["air", "ground"],
parentId: this.id,
parentUUID: this.uuid,
});
// Relationships
this.createdBy = ["faction/legion/unit/legion-build-drone"];
this.unlockedBy = ["faction/legion/building/legion-barracks"];
// Lore - temporary sacred fortification
}
}
exports.GuardianObelisk = GuardianObelisk;
GuardianObelisk.src = "src/zerospace/faction/legion/building/guardian-obelisk.ts";
exports.default = GuardianObelisk;
//# sourceMappingURL=guardian-obelisk.js.map