Commit Graph
3827 Commits
Author SHA1 Message Date
Kam 7a1b4c20cf A 2026-02-05 20:31:18 -05:00
Kam fff0bfd63b Dialog System 2026-02-05 19:35:43 -05:00
Kam e010408257 Update ModernSoundSelector.java 2026-02-05 17:27:22 -05:00
Kam 3e28c3cace Fixes 2026-02-05 17:27:13 -05:00
Kam 5417cf8126 Dialog Graph Editor 2026-02-05 17:07:47 -05:00
Kam 476c6724b9 Merge branch 'dev' into syntax-highlighter-unified
# Conflicts:
#	gradle-plugins~dev
2026-02-04 17:52:43 -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
Kam 83b86a4538 Fix Scripting Config Syncing Issues & Fixed Auction Tooltip Rendering Bugs 2026-02-04 16:16:43 -05:00
bigguy345 b63d76b6c0 Merge branch 'dev' into syntax-highlighter-unified 2026-02-04 22:50:04 +02:00
Kam 449a10711e Defaulting Language Behavior 2026-02-04 15:30:32 -05:00
Kam 326626ad8e Better Fix to Lock Movement and Rotation Locking during Abilities. Fix Interupting on Projectile Abilities 2026-02-04 14:48:54 -05:00
Kam 86055202a9 Add Missing Langs 2026-02-04 14:45:59 -05:00
Kam 918025cd2b Update ContainerNPCTrader.java 2026-02-04 14:45:53 -05:00
Kam b719856762 Balance Prediction Client Side Trader 2026-02-04 14:45:47 -05:00
Kam db7ae16ee9 Merge branch 'cloner_tabs' into dev 2026-02-04 12:55:57 -05:00
Kam 2b62b9406d Folder Saving for Cloner Add 2026-02-04 12:55:06 -05:00
Kam a325c5c618 Full Screen Directory Mode for Cloner Tab Handling 2026-02-04 12:34:26 -05:00
Vidal 75447c62a9 Hotfix 2026-02-04 06:23:03 -03:00
Vidal 2c3ca1b5ed Added a filter to browse through abilities from different mods 2026-02-04 06:18:00 -03:00
Kam 65e29e42dd Tab Handling GUI 2026-02-04 01:18:38 -05:00
bigguy345 bd9d0a3889 Merge branch 'dev' into syntax-highlighter-unified 2026-02-04 05:22:19 +02:00
Kam ab5dbc077b Fix Ability Issues 2026-02-03 20:32:00 -05:00
Vidal 96d939ce43 Added methods to trajectory 2026-02-03 22:10:33 -03:00
Kam 8ed8b55bdc Merge branch 'dev' of https://github.com/KAMKEEL/CustomNPC-Plus into dev 2026-02-03 19:30:59 -05:00
Kam 1ddb1d19f8 Update MixinItemStack.java 2026-02-03 19:30:54 -05:00
Vidal 6ea7d0ac7d More trajectory changes 2026-02-03 21:26:27 -03:00
Vidal 77325428fa Added more API methods 2026-02-03 20:03:37 -03:00
Kam 50a0dce086 Update MixinItem.java 2026-02-03 16:37:08 -05:00
Kam eee0ce128e Merge branch 'dev' of https://github.com/KAMKEEL/CustomNPC-Plus into dev 2026-02-03 16:24:49 -05:00
Kam c80dd448cb Fix GUI Tabs 2026-02-03 16:24:47 -05:00
Vidal 4eb6072a25 Added API class to EnergyTrajectoryData 2026-02-03 18:08:07 -03:00
Vidal 0e3ecb3d6e Added EnergyTrajectoryData (WIP) 2026-02-03 18:00:52 -03:00
Kam 769109d046 Fix Windup Ticks 0 not starting Abilities 2026-02-03 15:52:46 -05:00
Vidal bc4f82e55f Added API classes to Energy Projectile 2026-02-03 17:20:36 -03:00
Vidal 7ee6c8aa53 Merge remote-tracking branch 'origin/dev' into dev 2026-02-03 17:19:39 -03:00
bigguy345 7f4bc87d7a Extract overload selection to OverloadSelector helper with scoring algorithm
Problem:
- schedule("TpGainAction", function(act){...}) resolved to wrong overload
- TypeInfo.getBestMethodOverload rejected candidates when argType == null
- Fell back to arbitrary overloads.get(0) based on reflection order
- Result: selected 1-arg varargs overload instead of 2-arg fixed-arity

Solution:
- Created OverloadSelector helper class implementing scoring algorithm
- Scoring tiers (lower is better):
  * Arity mismatch: +10000 + distance penalty (hard disqualifier)
  * Varargs: +1000 penalty (fixed-arity strongly preferred)
  * Unknown arg type (null): +10 (penalty but doesn't disqualify)
  * Compatible type: +5 (modest preference for matching)
  * Exact match: +0 (best case)
- Closest arity fallback when no arity-applicable overload exists
- TypeInfo.getBestMethodOverload now delegates (4 lines vs 220)

Impact:
- Deterministic overload selection (no reflection-order dependence)
- schedule("TpGainAction", function(act){...}) now resolves correctly
- Unknown arg types no longer cause fallback to unrelated overloads
- Fixed-arity methods preferred over varargs when both viable
- Removed 220 lines of complex nested logic from TypeInfo

Testing:
- OverloadResolutionTest with 6 test cases (all passing)
- Verifies fixed-arity preference, unknown arg handling, arity fallback
2026-02-03 22:13:15 +02:00
bigguy345 6fc0bf4d6b Fix expression typing gate to route JS function/lambda expressions into ExpressionParser
Problem:
- function(act){...} expressions not reaching ExpressionParser
- resolveExpressionType only checked containsOperators() or startsWith("(")
- Function expressions went through simple resolver and returned null type

Solution:
- Added looksLikeFunctionOrLambda helper (lines 4766-4773) to detect:
  * JS functions: function(...)
  * Arrow functions: =>
  * Java lambdas: ->
- Updated gate condition at line 4144 to route these into ExpressionParser
- Function expressions now reach ExpressionTypeResolver.resolveJSFunctionType

Impact:
- SAM typing now works in pass-2 when expected type is known
- Fixes schedule("TpGainAction", function(act){...}) argument typing
- Enables proper overload resolution for function/lambda parameters
2026-02-03 22:12:43 +02:00
Kam a49df51ad9 Fixes to Ability Load, Reference Handling 2026-02-03 15:09:20 -05:00
Vidal 87d511dae1 Merge remote-tracking branch 'origin/dev' into dev 2026-02-03 16:09:12 -03:00
Kam ead3c5944c Fix Anchor Point Helper issue on NPCs 2026-02-03 14:06:30 -05:00
Vidal 75de803700 Added interfaces to energy data, refactored names 2026-02-03 15:45:45 -03:00
Vidal 87d511c38e Fixed some GUI stuff and added animation to AbilityOrbDual 2026-02-03 15:27:28 -03:00
bigguy345 ba7e4cc3b2 Merge remote-tracking branch 'origin/dev' into syntax-highlighter-unified
# Conflicts:
#	src/api
#	src/main/java/kamkeel/npcs/util/BukkitUtil.java
#	src/main/java/kamkeel/npcs/util/VaultUtil.java
#	src/main/java/noppes/npcs/CustomNpcsPermissions.java
2026-02-03 18:26:30 +02: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 1a8b8fb5f3 Made staves shoot EntityAbilityOrb 2026-02-03 11:58:39 -03:00
Vidal eb2d904bac Color-only overload to EnergyColorData 2026-02-03 11:57:47 -03:00
Vidal 4889c8b881 Added animation to shockwave 2026-02-03 11:57:19 -03:00
Vidal c5822023a0 Added modifyVisibility to FieldDef
AbilityGuard tweaks
2026-02-03 07:45:02 -03:00
Kam fd85215592 Fix Ability Def Handler 2026-02-03 05:07:54 -05:00
Kam b368871e4f Update Ability.java 2026-02-03 04:45:31 -05:00