UNPKG

@zerospacegg/iolin

Version:

Pure TypeScript implementation of ZeroSpace game data processing (PKL-free)

87 lines 3.35 kB
/** * Mera - Protectorate Hero * Weapon-switching warrior with sword and pulse rifle combat modes */ import { ProtectorateHeroUnit } from "../../../../defaults/protectorate.js"; import { Attack, Spell, WeaponSwitch } from "../../../../engine/ability.js"; export class Mera extends ProtectorateHeroUnit { constructor() { super(); // Auto-generated fixes from dev data comparison this.hexiteCost = 220; this.fluxCost = 0; this.buildTime = 45; this.name = "Mera"; this.internalId = "Troop_MPHero_Mera_C"; this.internalPath = "/Game/Nova/Archetypes_Heroes/Troop_MPHero_Mera.Default__Troop_MPHero_Mera_C"; this.internalTags = [ "Attackable.Unit.Hero", "Logic.SpawnAtOldestSpawner", "Attackable.Biological", "Logic.NoVeterancy", ]; this.internalSecondaryTags = ["Infantry"]; this.uuid = "d729732c-6042-4155-8963-11fe8b06e132"; this.description = "Melee hero that gets stronger with each attack (lasts 10s). Can Dash through enemies gaining armor, or create a Shield bubble increasing armor."; // Mutable properties (can be modified by upgrades) this.hp = 175; this.speed = 500; this.vision = 1800; this.turnSpeed = 6000; this.healthRegen = 6; this.pushability = 0.1; // Sword Attack - Melee weapon mode this.attacks.swordAttack = new Attack({ name: "Sword Attack", damage: 23, cooldown: 1.2, cooldownBetweenShots: 1.2, armorPenetration: 0, delay: 0.27, range: 150, targets: ["ground"], parentId: this.id, parentUUID: this.uuid, }); // Pulse Rifle - Ranged weapon mode this.attacks.pulseRifle = new Attack({ name: "Pulse Rifle", damage: 24, cooldown: 1.15, range: 1200, targets: ["air", "ground"], parentId: this.id, parentUUID: this.uuid, }); // Weapon Switch - Toggle between sword and rifle this.weaponSwitches.weaponSwitch = new WeaponSwitch({ name: "Weapon Switch", description: "Mera switches between a Sword and a Blaster. Gains +30% attack speed for 5s.", hotkey: "E", cooldown: 10, switchBetween: ["Sword Attack", "Pulse Rifle"], }); // Dash - Mobility ability this.spells.dash = new Spell({ name: "Dash", hotkey: "Q", cooldown: 13, description: "Dash while dealing 40 damage to enemy units and gaining +1 armor for each hit. 10s duration.", parentId: this.id, parentUUID: this.uuid, }); // Protective Barrier - Defensive ability this.spells.protectiveBarrier = new Spell({ name: "Protective Barrier", hotkey: "W", cooldown: 40, description: "All friendly units and structures under the barrier have +3 armor. Lasts 20s.", parentId: this.id, parentUUID: this.uuid, }); } } Mera.src = "src/zerospace/faction/protectorate/hero/mera.ts"; export default Mera; //# sourceMappingURL=mera.js.map