Commit Graph
34 Commits
Author SHA1 Message Date
KamandClaude Opus 4.6 0311dc5806 Merge upstream dev: name-based storage, UUID/DisplayName, toggle system
Resolved conflicts in AbstractDataAbilities, DataAbilities, PlayerAbilityData
to integrate both toggle system (upstream) and chain delay tracking (local).
ChainedAbility now has UUID and DisplayName fields matching Ability pattern.
ChainedAbilityController rewritten: saves in abilities/chained/, dual-index
by name and UUID, legacy migration from chained_abilities/ directory.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 23:27:49 -05:00
KamandClaude Opus 4.6 2f814c1903 IAbilityAction interface, AbilityAction unified slot, and bug fixes
- Added IAbilityAction interface (internal + API) for unified Ability/ChainedAbility handling
- Created AbilityAction (replaces AbilitySlot) with 3 modes: INLINE_ABILITY, ABILITY_REFERENCE, CHAIN_REFERENCE
- Unified DataAbilities storage from dual lists to single List<AbilityAction>
- Added ChainedAbility, ChainedAbilityEntry, ChainedAbilityController
- Updated PlayerAbilityData with resolveActionKey() for chain: prefix resolution
- Added resolveAction/canResolveAction to AbilityController
- Fixed unsafe cast in DataAbilities.onDamage()
- Fixed NPE in GuiNPCAbilities for chain reference slots
- Fixed NPC chain interrupt double cooldown
- Fixed removeAbility() incorrectly removing chain references

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 23:22:03 -05:00
Kam 6514b217b9 Abilities are now Stored by Name not UUID. Refactor Built In and Toggleable Abilities 2026-02-17 23:08:12 -05:00
Kam c7956a24a6 Abilities are now Stored by Name not UUID 2026-02-17 20:44:27 -05:00
Vidal 52269705b5 Merge remote-tracking branch 'origin/dev' into dev 2026-02-17 19:38:52 -03:00
Vidal 55149ab5d1 Fixed the check that prevented built-in types from showing up in NPC Abilities 2026-02-17 18:31:47 -03:00
Kam c07e9e7006 Create Barrier Abilities + Heavy Refactoring 2026-02-17 14:32:13 -05:00
Claude 0ebdfafccd Add Energy Barrier and Slicer ability system
Implements four new energy ability types:

- Energy Dome: Spherical barrier centered on caster that blocks incoming
  energy projectiles. Configurable per-projectile-type damage multipliers,
  HP/durability and duration modes. RING telegraph.

- Energy Wall: Placeable flat energy panel with configurable dimensions
  and height offset (can float above ground). Optional launching mode
  fires the wall forward with damage/knockback.

- Energy Shield: Held energy panel that follows the caster and rotates
  with their look direction. Defensive blocking ability.

- Energy Slicer: Thin wide blade projectile (JJK Cleave inspired).
  Extends AbstractEnergyProjectileAbility. Piercing by default.

Architecture:
- EnergyBarrierData: HP, duration, per-type damage multiplier map
- EnergyPanelData: Panel dimensions, height offset, launch properties
- AbstractEnergyBarrierAbility: Shared base for Dome/Wall/Shield
- EntityEnergyDome, EntityEnergyPanel, EntityEnergySlicer entities
- RenderEnergyDome, RenderEnergyPanel, RenderEnergySlicer renderers
  with translucent inner/outer layers (voxel-blocky aesthetic)
- Projectile-barrier collision system in EntityAbilityProjectile

https://claude.ai/code/session_01EV9KpiykvW4rASz7ju5iTG
2026-02-16 08:54:55 +00:00
Kam f4ad421c2e Player Ability Checking
Enhance ability validation: add method to check if an ability can be resolved without deep copy and prune invalid unlocked abilities during load
2026-02-16 01:40:51 -05:00
Kam cd28f69a0e Enhance ability validation: add method to check if an ability can be resolved without deep copy and prune invalid unlocked abilities during load 2026-02-16 01:39:14 -05:00
Kam 21b1571868 Add flight checker to prevent abilities from affecting flying players 2026-02-16 01:15:52 -05:00
Kam ce24c0a4ff Enhance ability selection and display: add toggleable ability handling, improve ability name color coding, and update ability selection messaging 2026-02-15 19:21:30 -05:00
Kam ff9f9b9660 Enhance ability variant selection: inject a default "Base" variant when no built-in variants are available 2026-02-15 18:05:07 -05:00
Kam 0f774a68fc Refactor ability handling: replace damage handler with ability extenders for improved lifecycle management and damage routing 2026-02-14 21:06:12 -05:00
Kam da4ee2e20d Refactor ability management: enhance deep copy functionality, streamline custom ability handling, and update versioning logic 2026-02-14 14:43:25 -05:00
Kam 2c00ecae9e feat: add built-in ability handling and UI updates for ability management 2026-02-12 20:30:12 -05:00
Kam 74cae17ebd Burst and Dual Mode + Variant Ability Support 2026-02-06 20:25:52 -05:00
Kam 095709b9d2 Add ability wheel and toggle abilities for enhanced gameplay 2026-02-05 22:49:40 -05:00
Kam a13791c610 Add DBC ability damage handling and GUI integration with new Damage Handler Registry Systems 2026-02-04 17:45:02 -05:00
Vidal 2d47aa00d8 - Added standalone min max methods to FieldDef
- Increased lightning density and radius minmax on all energy abilities
- Made AbilityOrbBarrage interruptible during active state
- Renamed AbilityEnergyBeam to AbilityBeam
- Updated imports
2026-02-03 12:32:30 -03:00
Vidal 60b846b35e - Added onDamageTaken to Ability
- Reworked AbilityGuard
- Added AbilityOrbBarrage
- Updated translation
- Updated onDamageTaken method calls
2026-02-03 05:43:50 -03:00
Vidal f4db57875a Changed dual ability names 2026-02-01 06:45:29 -03:00
Vidal 71065fc520 Added Dual Disc Ability 2026-01-31 22:36:12 -03:00
Vidal e9f22dab2a Added Dual Orb Ability 2026-01-31 21:56:14 -03:00
Vidal 245e8f8162 Added Dual Beam Ability 2026-01-31 21:55:39 -03:00
Kam 1b8ad4dd90 Player Abilities 2026-01-30 05:01:54 -05:00
Vidal 0484596a91 Updated imports and fields 2026-01-27 01:51:49 -03:00
Vidal 246baa9f55 Removed static class from AbilityController and made animations built into the enum 2026-01-27 01:49:08 -03:00
Vidal 39b6304bed Updated imports 2026-01-27 01:34:34 -03:00
Vidal c858f24e67 Implemented built in animations for abilities 2026-01-27 01:33:12 -03:00
Kam de043f4a25 Ability Changes 2026-01-25 20:39:01 -05:00
Kam a9b602713c Large Cleanup to Code Imports and Formatting 2026-01-22 23:07:38 -05:00
Kam fdb2ff98d8 Large Ability changes, cleanup, langs, fixes. 2026-01-10 23:06:13 -05:00
Kam 166c8aa228 Ability Push 2026-01-09 15:29:00 -05:00