Import wng-daemonhunters-0.6.4.2.zip do wg-greyknights (2025-08-22T17:26:07Z)

This commit is contained in:
2025-08-22 17:26:07 +00:00
parent e164cb6ed4
commit 45b2d0d3b7
3 changed files with 21 additions and 17 deletions
+2 -1
View File
@@ -1,7 +1,8 @@
{
"id": "wng-daemonhunters",
"title": "Wrath & Glory: Daemonhunters (Grey Knights)",
"version": "0.6.4.1",
"description": "Grey Knights add-on for Wrath & Glory. Restored GK Archetype in compendium; GK items; Aegis/Brotherhood abilities; Sanctic powers; single-dialog autoload.",
"version": "0.6.4.2",
"compatibility": {
"minimum": "11",
"verified": "13"
File diff suppressed because one or more lines are too long
+9 -9
View File
@@ -1,4 +1,4 @@
// WNG-Daemonhunters 0.6.4.1single dialog GK autoload (no clashes)
// WNG-Daemonhunters 0.6.4.2GK autoload (single dialog, restored Archetype in pack)
Hooks.once('ready', () => console.log("WNG-Daemonhunters | Auto-loadout ready"));
async function addFromPackByName(actor, packKey, name, equip=false) {
@@ -27,14 +27,14 @@ Hooks.on('createItem', async (item, options, userId) => {
const actor = item.parent;
if (!actor || item.type !== 'archetype' || item.name !== 'Grey Knight') return;
if (game.userId !== userId) return;
if (actor.getFlag('wng-daemonhunters','gkLoaded')) return; // prevent double-run
if (actor.getFlag('wng-daemonhunters','gkLoaded')) return;
const content = `<p>Select initial loadout for <strong>Grey Knight</strong>:</p>
<div class="form-group"><label>Loadout</label>
<select id="gk-loadout">
<option value="incog">Incognito — Pilgrim Astartes Plate + Astartes Combat Knife + Bolt Pistol</option>
<option value="power" selected>WarPlate — Aegis Power Armour + Nemesis Force Halberd + Integrated Storm Bolter</option>
<option value="termi">Terminator — Terminator Aegis + Nemesis Force Halberd + Integrated Storm Bolter</option>
<option value="incog">Incognito — Pilgrim Astartes Plate (Disguise Armour) + Astartes Combat Knife + Bolt Pistol</option>
<option value="power" selected>WarPlate — Aegis Power Armour + Nemesis Force Halberd + Grey Knight Armour Integrated Storm Bolter</option>
<option value="termi">Terminator — Terminator Aegis (Grey Knights) + Nemesis Force Halberd + Grey Knight Armour Integrated Storm Bolter</option>
</select>
</div>`;
@@ -46,23 +46,23 @@ Hooks.on('createItem', async (item, options, userId) => {
const choice = html.find('#gk-loadout').val();
const PACK = "wng-daemonhunters.daemonhunters";
// Base abilities always
// Core abilities
await addFromPackByName(actor, PACK, "Aegis of Titan");
await addFromPackByName(actor, PACK, "Brotherhood of Psykers");
await addFromPackByName(actor, PACK, "Might of Heroes");
if (choice === 'incog') {
await addFromPackByName(actor, PACK, "Pilgrim Astartes Power Armour", true);
await addFromPackByName(actor, PACK, "Pilgrim Astartes Plate (Disguise Armour)", true);
await addFromUuid(actor, "Compendium.wng-core.items.Item.4QVBQYWXXLyvFWkj", true); // Knife
await addFromUuid(actor, "Compendium.wng-core.items.Item.7b2xcPWBB7up65PM", true); // Bolt Pistol
} else if (choice === 'power') {
await addFromPackByName(actor, PACK, "Aegis Power Armour", true);
await addFromPackByName(actor, PACK, "Grey Knight Armour Integrated Storm Bolter", true);
await addFromPackByName(actor, PACK, "Nemesis Force Halberd", true);
await addFromPackByName(actor, PACK, "Grey Knight Armour Integrated Storm Bolter", true);
} else if (choice === 'termi') {
await addFromPackByName(actor, PACK, "Terminator Aegis (Grey Knights)", true);
await addFromPackByName(actor, PACK, "Grey Knight Armour Integrated Storm Bolter", true);
await addFromPackByName(actor, PACK, "Nemesis Force Halberd", true);
await addFromPackByName(actor, PACK, "Grey Knight Armour Integrated Storm Bolter", true);
}
await actor.setFlag('wng-daemonhunters','gkLoaded', true);