UNPKG

@zerospacegg/iolin

Version:

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

85 lines 4.08 kB
/** * Valkaru Mercenary Faction * Pro-war species that has elevated internal conflict to an art form * * Mercenary faction structure: * - Two talents (Merc Cooldown, Heavy Plating) * - Five units (Beast, Flame Walker, Hound, Shock Trooper, Tow Bot) * - One building (Valkaru Merc Outpost) * - One twin hero (Torq & Mondar) * - One beast summoning topbar */ import { ValkaruFaction, ValkaruTalent, ValkaruTopbar } from "../../defaults/valkaru.js"; import Mondar from "./valkaru/hero/mondar.js"; // Import Valkaru twin heroes // Import Valkaru units // Import Valkaru buildings // Talents will be created using Grell-style factory pattern in constructor class SummonValkaruBeastTopbar extends ValkaruTopbar { constructor() { super(); this.description = "Summons a valkaru beast"; this.name = "Valkaru Beast"; this.uuid = "3e35de25-a772-4bae-9118-cbaa610d676c"; this.topbarType = "special"; this.slot = 5; this.energyCost = 20; } } // Create Valkaru faction topbars export const summonValkaruBeast = new SummonValkaruBeastTopbar(); // Create concrete Valkaru faction class export class Valkaru extends ValkaruFaction { constructor() { super(); this.uuid = "9a3f7e2b-8d5c-4f1a-9e6b-7c4d8f2a5b3e"; this.name = "Valkaru"; // Mercenary faction settings this.mercHeroesAllowed = true; // Set talents using Grell-style factory pattern this.talents.mercCooldown = new ValkaruTalent({ uuid: "1CC179BC-99A3-4925-B8BB-A376D8BF02F8", name: "Merc Cooldown", level: 2, description: "+100% faster mercenary charges", }); this.talents.heavyPlating = new ValkaruTalent({ uuid: "13492853-757E-4A53-B4A1-8CB7F805F271", name: "Heavy Plating", level: 4, description: "All units +1 Armor & +25% HP", }); this.talents.valkaruRage = new ValkaruTalent({ uuid: "4d5e6f7a-8b9c-0d1e-2f3a-4b5c6d7e8f9a", name: "Valkaru Rage", level: 6, description: "When friendly unit dies within range 20: Valkaru units gain 15% attack speed. Valkaru beast gains pulverize (500 damage on attack-based energy cooldown)", }); // Set topbars this.topbars.summonValkaruBeast = summonValkaruBeast; // Set heroes - Torq & Mondar spawn as inseparable twin duo (PKL treats as single combined hero) this.heroes = ["mercenary/valkaru/hero/torq"]; // Set units this.units = [ "mercenary/valkaru/unit/valkaru-beast", // Massive bio-enhanced war beast "mercenary/valkaru/unit/valkaru-flame-walker", // Fire-based assault trooper "mercenary/valkaru/unit/valkaru-hound", // Fast scout and harassment specialist "mercenary/valkaru/unit/valkaru-shock-trooper", // Elite heavy infantry with electrical weapons "mercenary/valkaru/unit/valkaru-tow-bot", // Utility and support mechanical unit ]; // Set outpost buildings this.buildings = ["mercenary/valkaru/building/valkaru-merc-outpost"]; this.description = ` Pro-war mercenary species that has elevated internal conflict to an art form. The Valkaru split into perpetually warring sides to test their strength, producing legendary warriors like the twin brothers Torq and Mondar who spawn together as an inseparable warrior duo. With their electrifying hammer passed between them, switching roles mid-battle between devastating melee and precision ranged combat. Their advanced military technology, accelerated construction, and bio-enhanced war beasts make them formidable mercenaries who view every conflict as an opportunity to grow stronger through combat. `; } } // Static property for source path Valkaru.src = "src/zerospace/mercenary/valkaru.ts"; // Export the faction as default export default Valkaru; // Named exports for all faction contents export { // Heroes Mondar, }; //# sourceMappingURL=valkaru.js.map