@zerospacegg/iolin
Version:
Pure TypeScript implementation of ZeroSpace game data processing (PKL-free)
54 lines • 2.22 kB
JavaScript
/**
* Marran Badger - T2 heavy defensive unit with anti-air capabilities
* Foundational defensive unit that embodies Marran isolationist philosophy
*/
import { MarranMercUnit } from "../../../../defaults/marran.js";
import { Attack } from "../../../../engine/ability.js";
export class MarranBadger extends MarranMercUnit {
constructor() {
super();
// Auto-generated fixes from dev data comparison
this.hexiteCost = 200;
this.fluxCost = 150;
this.buildCount = 3;
this.name = "Marran Badger";
this.tier = "T2";
this.internalId = "Troop_Marran_Badger_C";
this.internalPath = "/Game/Nova/Archetypes_Troops/Troop_Marran_Badger.Default__Troop_Marran_Badger_C";
this.internalTags = ["Attackable.Unit.Troop", "Attackable.ArmorType.Heavy"];
this.internalSecondaryTags = ["Vehicle"];
this.uuid = "bd14c4a6-d658-4de0-9020-5e806f6ddd08";
this.description =
"Medium tank which deals bonus area damage after attacking a target 6 times. Attacks ground and air units.";
// Set short name
this.shortName = "Badger";
// Mutable properties - heavy defensive platform with dual-layer protection
this.supply = 3;
this.hp = 175;
this.shields = 175; // Dual-layer protection system
this.armorType = "heavy";
this.speed = 450;
this.turnSpeed = 1000;
this.pushability = 0.45;
// Relationships
this.createdBy = ["mercenary/marran/building/marran-merc-outpost"];
this.unlockedBy = ["mercenary/marran/building/marran-merc-outpost"];
// Anti-air capable attack system
this.attacks.attack = new Attack({
name: "Attack",
damage: 16,
cooldown: 1.7,
cooldownBetweenShots: 1.7,
armorPenetration: 0,
delay: 0.1,
range: 1300,
targets: ["air", "ground"],
parentId: this.id,
parentUUID: this.uuid,
});
}
}
// Static property for source path
MarranBadger.src = "src/zerospace/mercenary/marran/unit/marran-badger.ts";
export default MarranBadger;
//# sourceMappingURL=marran-badger.js.map