From ff9f9b9660f0c942fe9f68cf5735af19a1b8136f Mon Sep 17 00:00:00 2001 From: Kam Date: Sun, 15 Feb 2026 18:05:07 -0500 Subject: [PATCH] Enhance ability variant selection: inject a default "Base" variant when no built-in variants are available --- .../npcs/controllers/data/ability/AbilityController.java | 5 +++++ src/main/resources/assets/customnpcs/lang/en_US.lang | 1 + 2 files changed, 6 insertions(+) diff --git a/src/main/java/kamkeel/npcs/controllers/data/ability/AbilityController.java b/src/main/java/kamkeel/npcs/controllers/data/ability/AbilityController.java index c86e3e623..992c56cd9 100644 --- a/src/main/java/kamkeel/npcs/controllers/data/ability/AbilityController.java +++ b/src/main/java/kamkeel/npcs/controllers/data/ability/AbilityController.java @@ -346,6 +346,11 @@ public class AbilityController implements IAbilityHandler { } List ext = externalVariants.get(typeId); if (ext != null) { + // If no built-in variants exist but external ones do, + // inject a "Base" variant so the user always gets a choice + if (result.isEmpty()) { + result.add(new AbilityVariant("ability.variant.base", a -> {})); + } result.addAll(ext); } return result; diff --git a/src/main/resources/assets/customnpcs/lang/en_US.lang b/src/main/resources/assets/customnpcs/lang/en_US.lang index a29759c31..f265f0fe9 100644 --- a/src/main/resources/assets/customnpcs/lang/en_US.lang +++ b/src/main/resources/assets/customnpcs/lang/en_US.lang @@ -1910,6 +1910,7 @@ ability.modifyParent=Edit Parent # Ability Variant Selection ability.selectVariant=Select Variant +ability.variant.base=Base ability.variant.single=Single ability.variant.dual=Dual ability.variant.barrage=Barrage