Commit Graph
3938 Commits
Author SHA1 Message Date
Kam c07e9e7006 Create Barrier Abilities + Heavy Refactoring 2026-02-17 14:32:13 -05:00
Claude d1f2c9695c Fix panel directional check to only block incoming projectiles
The dot product was being computed but not used - panels were blocking
projectiles from both sides. Now correctly checks which side the
projectile approaches from and only blocks if it's moving toward
the panel surface.

https://claude.ai/code/session_01EV9KpiykvW4rASz7ju5iTG
2026-02-16 13:27:29 +00: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 01e18e0221 Beta 3 2026-02-16 01:49:57 -05:00
Kam 6c8e15c014 Update api 2026-02-16 01:40:53 -05: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 e722279009 Update API hash to reflect recent changes 2026-02-16 01:03:35 -05:00
Kam 071d89cc15 Add energy projectile types and events: implement IEnergyOrb, IEnergyBeam, IEnergyDisc, and IEnergyLaser interfaces, along with their respective script handlers and event hooks 2026-02-16 01:03:05 -05:00
Kam 1ed012331b Enhance ability input handling: block movement during ability locks, ensure proper input suppression, and cancel abilities on logout, dimension change, death, and respawn 2026-02-15 23:15:50 -05:00
Kam 121563ba24 Enhance knockback mechanics: add methods for applying and forcefully applying knockback, respecting or ignoring knockback resistance 2026-02-15 23:07:57 -05:00
Kam 19e2882c4a Merge remote-tracking branch 'origin/dev' into dev 2026-02-15 22:04:55 -05:00
Kam 1fb52a4ae9 Refactor movement abilities: extract shared logic into AbilityMovement class for Charge and Dash abilities 2026-02-15 22:04:47 -05:00
Kam 248dbf66da Enhance ability animation handling: track ability animation state, clear orphaned animations on login, and ensure proper animation continuation 2026-02-15 22:03:32 -05:00
Kam 3beaf68815 Update GuiNPCAbilities.java 2026-02-15 21:44:36 -05:00
Kam eda8931b5f Refactor entity owner checks and enhance FULL_MODEL rotation support in ability entities 2026-02-15 21:29:26 -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 45d05b9157 Add trap presets & trigger-reveal visuals
Introduce client-side trap presets and a visual "trigger reveal" for traps, plus related entity/renderer changes.

- AbilityTrap: add TrapPreset enum and applyTrapPresetDefaults; wire a SubGuiTrapPresetSelector hook to apply presets from the GUI; pass visibility into created trap entities.
- EntityAbilityZone: add visible flag, TRIGGER_FLASH_STATUS state, setEntityState usage to notify clients of triggers, handleHealthUpdate to start client-side flash, and adjust construction/serialization accordingly.
- RenderAbilityZone: implement trigger-reveal visuals (revealFade, triggerReveal) that briefly show a burst when traps trigger, skip rendering for invisible traps unless revealing, and tweak flash/timing logic.
- Minor cleanup: remove/condense comment blocks and refactor noisy helpers across AbilityZone/AbilityHazard, plus language entry update and new SubGuiTrapPresetSelector GUI class.

These changes enable preset application for traps and improve client-side feedback when traps trigger.
2026-02-15 19:19:57 -05:00
Kam 89464ce6c0 Merge branch 'dev' of https://github.com/KAMKEEL/CustomNPC-Plus into dev 2026-02-15 18:16:01 -05:00
Kam 2dfdfb19d1 Client-side trade validation and stock update
Perform more complete client-side checks before predicting currency deductions in GuiNPCTrader.handleMouseClick. The method now verifies that the item can be given to the player (canGivePlayerClient), that the slot is enabled, and that stock is available, mirroring server-side checks. When a client-side purchase is accepted, availableStock is decremented if applicable. Added a private canGivePlayerClient(ItemStack) helper to check cursor-stack compatibility and max stack size. These changes prevent the UI from showing incorrect balances for trades the server would reject.
2026-02-15 18:15:56 -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 8c2ef1084a Fix Burst Refire 2026-02-15 17:47:44 -05:00
KamandClaude Opus 4.6 e466ef6771 Remove Ki Cost from base Ability - DBC-specific concern
Ki Cost belongs in the DBC Addon's DBCAbilityStats system,
not in the base ability infrastructure.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 04:47:19 -05:00
Vidal 61405add97 Added Ki Cost to Ability 2026-02-15 00:40:43 -03: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 f8c75dd79b Fix Burst Refiring 2026-02-14 20:08:56 -05:00
Vidal f03d93d6a8 Oopsie i swapped commits, last commit was changing min values on anchor offset fields 2026-02-14 19:43:34 -03:00
Vidal 3be9104ec3 Made min and max double neg/pos infinity 2026-02-14 19:43:03 -03:00
Kam a23b199e7e Refactoring for Code Cleanup and Projectile Abstract Class Handling 2026-02-14 15:21:56 -05:00
Vidal a1f3f5184b Changed anchor offsets min values 2026-02-14 17:05:17 -03:00
Vidal 331361f21e Merge remote-tracking branch 'origin/dev' into dev 2026-02-14 17:04:21 -03:00
Vidal 19fb0ff5b7 Changed how float text fields handle negative values 2026-02-14 17:03:59 -03: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
Vidal e1eda3ce19 Added an option to register multiple animations under one common name 2026-02-14 16:22:53 -03:00
Vidal 7009bddc20 Merge remote-tracking branch 'origin/dev' into dev 2026-02-14 15:01:24 -03:00
Vidal 41d3361209 Added dazed animation 2026-02-14 11:26:02 -03:00
Kam 2a1a5643d3 Potion Effect System + Manual and Remove Bulk 2026-02-14 04:04:13 -05:00
Kam 85db3df355 feat: implement player ability state management with rotation and position locking 2026-02-14 04:02:01 -05:00
Kam befebdb9f7 refactor: enhance collision detection for ability movement 2026-02-14 04:02:01 -05:00
Kam 910f3b3744 Add NPC inline edit support and adjust ability launch mechanics 2026-02-13 15:01:28 -05:00
Vidal d4100c61dc Merge remote-tracking branch 'origin/dev' into dev 2026-02-13 12:56:15 -03:00
bigguy345 ac223cbb53 IAction exceptions now report to script console 2026-02-13 04:06:59 +02:00
Kam 5d682962be feat: add BuiltInAbilityGetPacket for requesting built-in abilities by name 2026-02-12 20:30:45 -05:00
Kam 0cb5a993c7 Merge remote-tracking branch 'origin/dev' into dev 2026-02-12 20:30:27 -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 356ae65b69 Fix Dialog and Quest Category Bug 2026-02-12 20:28:50 -05:00
Vidal 68cd3cd812 Merge remote-tracking branch 'origin/dev' into dev 2026-02-12 21:21:43 -03:00
Kam 9dae4bae55 feat: enhance damage handling for abilities and implement guard counter mechanics 2026-02-12 18:53:40 -05:00
Vidal 0e7a6c9fe1 Merge remote-tracking branch 'origin/dev' into dev 2026-02-12 20:39:50 -03:00