@nice2dev/game-engine 1.3.13 → 1.3.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (253) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/package.json +2 -2
  3. package/dist/types/accessibility/index.d.ts +0 -1
  4. package/dist/types/ai/index.d.ts +0 -1
  5. package/dist/types/animation/index.d.ts +0 -1
  6. package/dist/types/audio/HRTFAudio.d.ts +0 -180
  7. package/dist/types/audio/index.d.ts +0 -2
  8. package/dist/types/community/Community.d.ts +0 -112
  9. package/dist/types/community/index.d.ts +0 -1
  10. package/dist/types/core/TypeSafety.d.ts +0 -190
  11. package/dist/types/core/index.d.ts +0 -7
  12. package/dist/types/devtools/AssetStore.d.ts +0 -133
  13. package/dist/types/devtools/index.d.ts +0 -3
  14. package/dist/types/dialogue/index.d.ts +0 -2
  15. package/dist/types/docs/APIPlayground.d.ts +0 -26
  16. package/dist/types/docs/Cookbook.d.ts +0 -18
  17. package/dist/types/docs/Guides.d.ts +0 -18
  18. package/dist/types/docs/index.d.ts +0 -4
  19. package/dist/types/ecs/ECSOptimized.d.ts +0 -131
  20. package/dist/types/ecs/index.d.ts +0 -2
  21. package/dist/types/editor/NiceAnimationTimeline.d.ts +0 -114
  22. package/dist/types/editor/NiceLevelEditor.d.ts +0 -232
  23. package/dist/types/editor/NiceMaterialEditor.d.ts +0 -105
  24. package/dist/types/editor/NiceNodeGraph.d.ts +0 -87
  25. package/dist/types/editor/NiceParticleEditor.d.ts +0 -127
  26. package/dist/types/editor/behavior-tree/BTDebugPanel.d.ts +0 -102
  27. package/dist/types/editor/behavior-tree/BTEditorCanvas.d.ts +0 -79
  28. package/dist/types/editor/behavior-tree/BTEditorNode.d.ts +0 -58
  29. package/dist/types/editor/behavior-tree/BTEditorToolbar.d.ts +0 -75
  30. package/dist/types/editor/behavior-tree/BTNodePalette.d.ts +0 -72
  31. package/dist/types/editor/behavior-tree/BTPropertyPanel.d.ts +0 -66
  32. package/dist/types/editor/behavior-tree/BehaviorTreeEditor.d.ts +0 -186
  33. package/dist/types/editor/behavior-tree/index.d.ts +0 -14
  34. package/dist/types/editor/behavior-tree/serialization.d.ts +0 -30
  35. package/dist/types/editor/behavior-tree/types.d.ts +0 -299
  36. package/dist/types/editor/index.d.ts +0 -20
  37. package/dist/types/editor/state-machine/SMEditorCanvas.d.ts +0 -61
  38. package/dist/types/editor/state-machine/StateMachineEditor.d.ts +0 -139
  39. package/dist/types/editor/state-machine/index.d.ts +0 -11
  40. package/dist/types/editor/state-machine/serialization.d.ts +0 -23
  41. package/dist/types/editor/state-machine/types.d.ts +0 -241
  42. package/dist/types/engine/index.d.ts +0 -2
  43. package/dist/types/enterprise/index.d.ts +0 -1
  44. package/dist/types/epic/index.d.ts +0 -10
  45. package/dist/types/i18n/index.d.ts +0 -2
  46. package/dist/types/input/index.d.ts +0 -3
  47. package/dist/types/kids/index.d.ts +0 -2
  48. package/dist/types/legendary/index.d.ts +0 -57
  49. package/dist/types/monetization/index.d.ts +0 -1
  50. package/dist/types/multiplayer/NiceNetcode.d.ts +0 -434
  51. package/dist/types/multiplayer/index.d.ts +0 -5
  52. package/dist/types/network/index.d.ts +0 -2
  53. package/dist/types/pathfinding/index.d.ts +0 -1
  54. package/dist/types/performance/AssetCompression.d.ts +0 -137
  55. package/dist/types/performance/WASMModules.d.ts +0 -65
  56. package/dist/types/performance/WebGPUCompute.d.ts +0 -71
  57. package/dist/types/performance/index.d.ts +0 -1
  58. package/dist/types/physics/RapierIntegration.d.ts +0 -404
  59. package/dist/types/physics/index.d.ts +0 -2
  60. package/dist/types/plugins/index.d.ts +0 -2
  61. package/dist/types/procedural/index.d.ts +0 -2
  62. package/dist/types/release/index.d.ts +0 -1
  63. package/dist/types/rendering/WebGPUv2.d.ts +0 -173
  64. package/dist/types/rendering/index.d.ts +0 -3
  65. package/dist/types/runtime3d/index.d.ts +0 -2
  66. package/dist/types/scene/index.d.ts +0 -2
  67. package/dist/types/scripting/WasmCompiler.d.ts +0 -182
  68. package/dist/types/scripting/index.d.ts +0 -19
  69. package/dist/types/social/index.d.ts +0 -1
  70. package/dist/types/systems/NiceAI.d.ts +0 -637
  71. package/dist/types/systems/NiceAbility.d.ts +0 -225
  72. package/dist/types/systems/NiceAccessibility.d.ts +0 -230
  73. package/dist/types/systems/NiceAchievement.d.ts +0 -153
  74. package/dist/types/systems/NiceAchievementUI.d.ts +0 -196
  75. package/dist/types/systems/NiceAchievements.d.ts +0 -230
  76. package/dist/types/systems/NiceAction.d.ts +0 -81
  77. package/dist/types/systems/NiceAlchemy.d.ts +0 -195
  78. package/dist/types/systems/NiceAnalytics.d.ts +0 -493
  79. package/dist/types/systems/NiceAnimation.d.ts +0 -350
  80. package/dist/types/systems/NiceArena.d.ts +0 -215
  81. package/dist/types/systems/NiceAssetLoader.d.ts +0 -136
  82. package/dist/types/systems/NiceAuction.d.ts +0 -157
  83. package/dist/types/systems/NiceAudio.d.ts +0 -224
  84. package/dist/types/systems/NiceAugment.d.ts +0 -187
  85. package/dist/types/systems/NiceAura.d.ts +0 -193
  86. package/dist/types/systems/NiceBank.d.ts +0 -158
  87. package/dist/types/systems/NiceBattlePass.d.ts +0 -150
  88. package/dist/types/systems/NiceBehavior.d.ts +0 -160
  89. package/dist/types/systems/NiceBinding.d.ts +0 -96
  90. package/dist/types/systems/NiceBlacksmith.d.ts +0 -221
  91. package/dist/types/systems/NiceBuff.d.ts +0 -177
  92. package/dist/types/systems/NiceBuilding.d.ts +0 -207
  93. package/dist/types/systems/NiceBullet.d.ts +0 -167
  94. package/dist/types/systems/NiceCamera.d.ts +0 -252
  95. package/dist/types/systems/NiceCard.d.ts +0 -171
  96. package/dist/types/systems/NiceChat.d.ts +0 -148
  97. package/dist/types/systems/NiceCheat.d.ts +0 -375
  98. package/dist/types/systems/NiceClimbing.d.ts +0 -186
  99. package/dist/types/systems/NiceCloud.d.ts +0 -422
  100. package/dist/types/systems/NiceCollision.d.ts +0 -238
  101. package/dist/types/systems/NiceCombo.d.ts +0 -131
  102. package/dist/types/systems/NiceCommand.d.ts +0 -112
  103. package/dist/types/systems/NiceCompanion.d.ts +0 -182
  104. package/dist/types/systems/NiceController.d.ts +0 -144
  105. package/dist/types/systems/NiceCooking.d.ts +0 -193
  106. package/dist/types/systems/NiceCoroutine.d.ts +0 -101
  107. package/dist/types/systems/NiceCrafting.d.ts +0 -228
  108. package/dist/types/systems/NiceCutscene.d.ts +0 -437
  109. package/dist/types/systems/NiceDaily.d.ts +0 -133
  110. package/dist/types/systems/NiceDamage.d.ts +0 -271
  111. package/dist/types/systems/NiceDayNight.d.ts +0 -126
  112. package/dist/types/systems/NiceDebug.d.ts +0 -255
  113. package/dist/types/systems/NiceDestructible.d.ts +0 -150
  114. package/dist/types/systems/NiceDialogue.d.ts +0 -629
  115. package/dist/types/systems/NiceDungeon.d.ts +0 -202
  116. package/dist/types/systems/NiceECS.d.ts +0 -151
  117. package/dist/types/systems/NiceEnchant.d.ts +0 -148
  118. package/dist/types/systems/NiceEntityPool.d.ts +0 -127
  119. package/dist/types/systems/NiceEquipment.d.ts +0 -137
  120. package/dist/types/systems/NiceEvent.d.ts +0 -202
  121. package/dist/types/systems/NiceEventBus.d.ts +0 -164
  122. package/dist/types/systems/NiceFaction.d.ts +0 -173
  123. package/dist/types/systems/NiceFarming.d.ts +0 -163
  124. package/dist/types/systems/NiceFishing.d.ts +0 -196
  125. package/dist/types/systems/NiceFlocking.d.ts +0 -156
  126. package/dist/types/systems/NiceFog.d.ts +0 -137
  127. package/dist/types/systems/NiceFormation.d.ts +0 -140
  128. package/dist/types/systems/NiceGacha.d.ts +0 -134
  129. package/dist/types/systems/NiceGambling.d.ts +0 -175
  130. package/dist/types/systems/NiceGem.d.ts +0 -165
  131. package/dist/types/systems/NiceGesture.d.ts +0 -502
  132. package/dist/types/systems/NiceGrappling.d.ts +0 -154
  133. package/dist/types/systems/NiceGrid.d.ts +0 -142
  134. package/dist/types/systems/NiceGuild.d.ts +0 -162
  135. package/dist/types/systems/NiceHaptics.d.ts +0 -112
  136. package/dist/types/systems/NiceHousing.d.ts +0 -197
  137. package/dist/types/systems/NiceInput.d.ts +0 -280
  138. package/dist/types/systems/NiceInventory.d.ts +0 -534
  139. package/dist/types/systems/NiceLOD.d.ts +0 -144
  140. package/dist/types/systems/NiceLeaderboard.d.ts +0 -191
  141. package/dist/types/systems/NiceLevel.d.ts +0 -304
  142. package/dist/types/systems/NiceLighting.d.ts +0 -214
  143. package/dist/types/systems/NiceLocalization.d.ts +0 -148
  144. package/dist/types/systems/NiceLocomotion.d.ts +0 -398
  145. package/dist/types/systems/NiceLogger.d.ts +0 -117
  146. package/dist/types/systems/NiceLoot.d.ts +0 -176
  147. package/dist/types/systems/NiceMail.d.ts +0 -164
  148. package/dist/types/systems/NiceMap.d.ts +0 -234
  149. package/dist/types/systems/NiceMarriage.d.ts +0 -150
  150. package/dist/types/systems/NiceMastery.d.ts +0 -171
  151. package/dist/types/systems/NiceMatch.d.ts +0 -196
  152. package/dist/types/systems/NiceMatch3.d.ts +0 -118
  153. package/dist/types/systems/NiceMessageBus.d.ts +0 -115
  154. package/dist/types/systems/NiceMinimap.d.ts +0 -258
  155. package/dist/types/systems/NiceMining.d.ts +0 -175
  156. package/dist/types/systems/NiceModding.d.ts +0 -452
  157. package/dist/types/systems/NiceMount.d.ts +0 -152
  158. package/dist/types/systems/NiceNavigation.d.ts +0 -307
  159. package/dist/types/systems/NiceNetwork.d.ts +0 -568
  160. package/dist/types/systems/NiceNotification.d.ts +0 -438
  161. package/dist/types/systems/NiceObjective.d.ts +0 -395
  162. package/dist/types/systems/NiceParticle.d.ts +0 -639
  163. package/dist/types/systems/NiceParty.d.ts +0 -168
  164. package/dist/types/systems/NicePerformance.d.ts +0 -144
  165. package/dist/types/systems/NicePet.d.ts +0 -167
  166. package/dist/types/systems/NicePhotoMode.d.ts +0 -270
  167. package/dist/types/systems/NicePhysics.d.ts +0 -326
  168. package/dist/types/systems/NicePlatformer.d.ts +0 -158
  169. package/dist/types/systems/NicePool.d.ts +0 -128
  170. package/dist/types/systems/NicePortal.d.ts +0 -178
  171. package/dist/types/systems/NicePostProcess.d.ts +0 -254
  172. package/dist/types/systems/NiceProcedural.d.ts +0 -202
  173. package/dist/types/systems/NiceProfile.d.ts +0 -223
  174. package/dist/types/systems/NiceProjectile.d.ts +0 -157
  175. package/dist/types/systems/NicePvP.d.ts +0 -199
  176. package/dist/types/systems/NiceQTE.d.ts +0 -160
  177. package/dist/types/systems/NiceQuest.d.ts +0 -620
  178. package/dist/types/systems/NiceRaid.d.ts +0 -215
  179. package/dist/types/systems/NiceRanking.d.ts +0 -399
  180. package/dist/types/systems/NiceReplay.d.ts +0 -180
  181. package/dist/types/systems/NiceReputation.d.ts +0 -151
  182. package/dist/types/systems/NiceResource.d.ts +0 -200
  183. package/dist/types/systems/NiceRhythm.d.ts +0 -148
  184. package/dist/types/systems/NiceRoguelike.d.ts +0 -276
  185. package/dist/types/systems/NiceRune.d.ts +0 -202
  186. package/dist/types/systems/NiceSaveSystem.d.ts +0 -194
  187. package/dist/types/systems/NiceSceneManager.d.ts +0 -112
  188. package/dist/types/systems/NiceScore.d.ts +0 -186
  189. package/dist/types/systems/NiceScreenFX.d.ts +0 -235
  190. package/dist/types/systems/NiceScreenshot.d.ts +0 -443
  191. package/dist/types/systems/NiceScribe.d.ts +0 -239
  192. package/dist/types/systems/NiceSeason.d.ts +0 -176
  193. package/dist/types/systems/NiceSerialization.d.ts +0 -89
  194. package/dist/types/systems/NiceServiceLocator.d.ts +0 -94
  195. package/dist/types/systems/NiceShop.d.ts +0 -528
  196. package/dist/types/systems/NiceSignal.d.ts +0 -112
  197. package/dist/types/systems/NiceSkillTree.d.ts +0 -237
  198. package/dist/types/systems/NiceSocial.d.ts +0 -580
  199. package/dist/types/systems/NiceSpawner.d.ts +0 -237
  200. package/dist/types/systems/NiceSpell.d.ts +0 -216
  201. package/dist/types/systems/NiceState.d.ts +0 -224
  202. package/dist/types/systems/NiceStateMachine.d.ts +0 -108
  203. package/dist/types/systems/NiceStatus.d.ts +0 -116
  204. package/dist/types/systems/NiceStealth.d.ts +0 -204
  205. package/dist/types/systems/NiceSteam.d.ts +0 -255
  206. package/dist/types/systems/NiceStreaming.d.ts +0 -173
  207. package/dist/types/systems/NiceSwimming.d.ts +0 -166
  208. package/dist/types/systems/NiceTalent.d.ts +0 -154
  209. package/dist/types/systems/NiceTarget.d.ts +0 -121
  210. package/dist/types/systems/NiceTerrain.d.ts +0 -143
  211. package/dist/types/systems/NiceTilemap.d.ts +0 -218
  212. package/dist/types/systems/NiceTimer.d.ts +0 -153
  213. package/dist/types/systems/NiceTournament.d.ts +0 -190
  214. package/dist/types/systems/NiceTrading.d.ts +0 -238
  215. package/dist/types/systems/NiceTransmog.d.ts +0 -142
  216. package/dist/types/systems/NiceTutorial.d.ts +0 -248
  217. package/dist/types/systems/NiceTween.d.ts +0 -164
  218. package/dist/types/systems/NiceUI.d.ts +0 -364
  219. package/dist/types/systems/NiceVFX.d.ts +0 -333
  220. package/dist/types/systems/NiceVehicle.d.ts +0 -176
  221. package/dist/types/systems/NiceVoice.d.ts +0 -502
  222. package/dist/types/systems/NiceWater.d.ts +0 -162
  223. package/dist/types/systems/NiceWave.d.ts +0 -174
  224. package/dist/types/systems/NiceWaypoint.d.ts +0 -165
  225. package/dist/types/systems/NiceWeather.d.ts +0 -225
  226. package/dist/types/systems/NiceXR.d.ts +0 -187
  227. package/dist/types/systems/index.d.ts +0 -182
  228. package/dist/types/templates/index.d.ts +0 -2
  229. package/dist/types/tilemap/index.d.ts +0 -1
  230. package/dist/types/tutorials/TutorialEditor.d.ts +0 -43
  231. package/dist/types/tutorials/VoiceNarration.d.ts +0 -75
  232. package/dist/types/tutorials/content/Tutorials_T04.d.ts +0 -3
  233. package/dist/types/tutorials/content/UITutorials.d.ts +0 -14
  234. package/dist/types/tutorials/content/index.d.ts +0 -5
  235. package/dist/types/tutorials/index.d.ts +0 -6
  236. package/dist/types/ui/index.d.ts +0 -2
  237. package/dist/types/visual-scripting/VisualScriptDebugger.d.ts +0 -145
  238. package/dist/types/visual-scripting/VisualScriptExecutor.d.ts +0 -100
  239. package/dist/types/visual-scripting/VisualScriptGraph.d.ts +0 -173
  240. package/dist/types/visual-scripting/VisualScriptNode.d.ts +0 -157
  241. package/dist/types/visual-scripting/index.d.ts +0 -6
  242. package/dist/types/visual-scripting/nodes/ActionNodes.d.ts +0 -152
  243. package/dist/types/visual-scripting/nodes/EventNodes.d.ts +0 -95
  244. package/dist/types/visual-scripting/nodes/FlowControlNodes.d.ts +0 -134
  245. package/dist/types/visual-scripting/nodes/LogicNodes.d.ts +0 -122
  246. package/dist/types/visual-scripting/nodes/MathNodes.d.ts +0 -170
  247. package/dist/types/visual-scripting/nodes/UtilityNodes.d.ts +0 -131
  248. package/dist/types/visual-scripting/nodes/VariableNodes.d.ts +0 -107
  249. package/dist/types/visual-scripting/nodes/index.d.ts +0 -21
  250. package/dist/types/visual-scripting/nodes/registerNodes.d.ts +0 -29
  251. package/dist/types/visual-scripting/types.d.ts +0 -402
  252. package/dist/types/xr/WebXRLayers.d.ts +0 -319
  253. package/dist/types/xr/index.d.ts +0 -2
@@ -1,87 +0,0 @@
1
- import React from 'react';
2
- import { VisualScriptGraph } from '../visual-scripting/VisualScriptGraph';
3
- export interface NodePosition {
4
- x: number;
5
- y: number;
6
- }
7
- export interface NodeGraphTheme {
8
- background: string;
9
- gridColor: string;
10
- gridMajorColor: string;
11
- nodeBackground: string;
12
- nodeBorder: string;
13
- nodeSelectedBorder: string;
14
- nodeHeaderBackground: string;
15
- pinExecution: string;
16
- pinBoolean: string;
17
- pinNumber: string;
18
- pinString: string;
19
- pinVector: string;
20
- pinObject: string;
21
- pinArray: string;
22
- pinAny: string;
23
- connectionLine: string;
24
- connectionLineExecution: string;
25
- textPrimary: string;
26
- textSecondary: string;
27
- groupBackground: string;
28
- groupBorder: string;
29
- breakpointColor: string;
30
- executionHighlight: string;
31
- }
32
- export interface NodeCategory {
33
- id: string;
34
- name: string;
35
- icon: string;
36
- color: string;
37
- }
38
- export interface NodeGraphState {
39
- zoom: number;
40
- panOffset: NodePosition;
41
- selectedNodes: string[];
42
- hoveredNode: string | null;
43
- hoveredPin: {
44
- nodeId: string;
45
- pinId: string;
46
- isOutput: boolean;
47
- } | null;
48
- draggingNode: string | null;
49
- connecting: {
50
- sourceNodeId: string;
51
- sourcePinId: string;
52
- isOutput: boolean;
53
- mousePos: NodePosition;
54
- } | null;
55
- selectionBox: {
56
- start: NodePosition;
57
- end: NodePosition;
58
- } | null;
59
- contextMenu: {
60
- x: number;
61
- y: number;
62
- type: 'canvas' | 'node' | 'connection';
63
- targetId?: string;
64
- } | null;
65
- searchQuery: string;
66
- showLibrary: boolean;
67
- showVariables: boolean;
68
- showCodePreview: boolean;
69
- activeBreakpoints: Set<string>;
70
- executingNode: string | null;
71
- }
72
- export interface NiceNodeGraphProps {
73
- graph?: VisualScriptGraph;
74
- theme?: Partial<NodeGraphTheme>;
75
- readOnly?: boolean;
76
- onGraphChange?: (graph: VisualScriptGraph) => void;
77
- className?: string;
78
- style?: React.CSSProperties;
79
- }
80
- export interface NiceNodeGraphRef {
81
- getGraph: () => VisualScriptGraph;
82
- addNode: (typeId: string, position: NodePosition) => void;
83
- zoomToFit: () => void;
84
- clearSelection: () => void;
85
- }
86
- export declare const NiceNodeGraph: React.ForwardRefExoticComponent<NiceNodeGraphProps & React.RefAttributes<NiceNodeGraphRef>>;
87
- export default NiceNodeGraph;
@@ -1,127 +0,0 @@
1
- import { type NiceComponentTutorial } from '@nice2dev/ui';
2
- import React from 'react';
3
- export interface ParticleCurve {
4
- type: 'constant' | 'linear' | 'curve' | 'randomBetweenCurves';
5
- value?: number;
6
- min?: number;
7
- max?: number;
8
- keys?: Array<{
9
- time: number;
10
- value: number;
11
- inTangent?: number;
12
- outTangent?: number;
13
- }>;
14
- keys2?: Array<{
15
- time: number;
16
- value: number;
17
- inTangent?: number;
18
- outTangent?: number;
19
- }>;
20
- }
21
- export interface ParticleGradient {
22
- type: 'constant' | 'gradient' | 'randomBetweenGradients';
23
- color?: {
24
- r: number;
25
- g: number;
26
- b: number;
27
- a: number;
28
- };
29
- keys?: Array<{
30
- time: number;
31
- color: {
32
- r: number;
33
- g: number;
34
- b: number;
35
- a: number;
36
- };
37
- }>;
38
- keys2?: Array<{
39
- time: number;
40
- color: {
41
- r: number;
42
- g: number;
43
- b: number;
44
- a: number;
45
- };
46
- }>;
47
- }
48
- export interface EmitterShape {
49
- type: 'sphere' | 'hemisphere' | 'cone' | 'box' | 'circle' | 'edge' | 'mesh';
50
- radius?: number;
51
- angle?: number;
52
- arc?: number;
53
- length?: number;
54
- boxSize?: {
55
- x: number;
56
- y: number;
57
- z: number;
58
- };
59
- emitFromShell?: boolean;
60
- randomDirection?: boolean;
61
- }
62
- export interface ParticleModule {
63
- id: string;
64
- type: ParticleModuleType;
65
- enabled: boolean;
66
- properties: Record<string, unknown>;
67
- }
68
- export type ParticleModuleType = 'emission' | 'shape' | 'velocity' | 'lifetime' | 'speed' | 'size' | 'rotation' | 'color' | 'gravity' | 'noise' | 'collision' | 'subEmitters' | 'textureSheet' | 'trails' | 'lights' | 'customData';
69
- export interface ParticleSystemData {
70
- id: string;
71
- name: string;
72
- duration: number;
73
- looping: boolean;
74
- prewarm: boolean;
75
- startDelay: ParticleCurve;
76
- startLifetime: ParticleCurve;
77
- startSpeed: ParticleCurve;
78
- startSize: ParticleCurve;
79
- startRotation: ParticleCurve;
80
- startColor: ParticleGradient;
81
- gravityModifier: ParticleCurve;
82
- simulationSpace: 'local' | 'world';
83
- simulationSpeed: number;
84
- maxParticles: number;
85
- playOnAwake: boolean;
86
- modules: ParticleModule[];
87
- renderMode: 'billboard' | 'stretchedBillboard' | 'horizontalBillboard' | 'verticalBillboard' | 'mesh';
88
- material?: string;
89
- mesh?: string;
90
- sortMode: 'none' | 'distance' | 'oldestFirst' | 'youngestFirst';
91
- blendMode: 'additive' | 'alpha' | 'multiply' | 'premultiply';
92
- }
93
- export interface ParticleEditorTheme {
94
- background: string;
95
- panelBackground: string;
96
- headerBackground: string;
97
- moduleBackground: string;
98
- moduleBackgroundAlt: string;
99
- moduleHeader: string;
100
- previewBackground: string;
101
- gridColor: string;
102
- curveColor: string;
103
- curveHandle: string;
104
- gradientTrack: string;
105
- textPrimary: string;
106
- textSecondary: string;
107
- accent: string;
108
- danger: string;
109
- }
110
- export interface NiceParticleEditorProps {
111
- system?: ParticleSystemData;
112
- theme?: Partial<ParticleEditorTheme>;
113
- readOnly?: boolean;
114
- onSystemChange?: (system: ParticleSystemData) => void;
115
- className?: string;
116
- style?: React.CSSProperties;
117
- /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
118
- tutorial?: NiceComponentTutorial;
119
- }
120
- export interface NiceParticleEditorRef {
121
- getSystem: () => ParticleSystemData;
122
- play: () => void;
123
- pause: () => void;
124
- restart: () => void;
125
- }
126
- export declare const NiceParticleEditor: React.ForwardRefExoticComponent<NiceParticleEditorProps & React.RefAttributes<NiceParticleEditorRef>>;
127
- export default NiceParticleEditor;
@@ -1,102 +0,0 @@
1
- /**
2
- * @file Behavior Tree Editor - Debug Panel
3
- * @description Debug panel for runtime inspection and debugging
4
- * PRO-1.4: Professional Editor Features
5
- */
6
- import type { BTStatus } from '../../ai/BehaviorTree';
7
- import type { BTDebugState, BTWatchExpression, BTExecutionStep, BTDebugStatistics } from './types';
8
- export declare class BTDebugPanel {
9
- private state;
10
- private listeners;
11
- onStartDebug?: () => void;
12
- onStopDebug?: () => void;
13
- onStepDebug?: () => void;
14
- onPauseDebug?: () => void;
15
- onResumeDebug?: () => void;
16
- onAddBreakpoint?: (nodeId: string) => void;
17
- onRemoveBreakpoint?: (nodeId: string) => void;
18
- constructor();
19
- private createInitialState;
20
- /** Start debugging */
21
- start(): void;
22
- /** Stop debugging */
23
- stop(): void;
24
- /** Step one tick */
25
- step(): void;
26
- /** Pause execution */
27
- pause(): void;
28
- /** Resume execution */
29
- resume(): void;
30
- /** Toggle pause state */
31
- togglePause(): void;
32
- /** Update debug state from runtime */
33
- updateState(updates: Partial<BTDebugState>): void;
34
- /** Set current node being executed */
35
- setCurrentNode(nodeId: string | undefined): void;
36
- /** Update blackboard snapshot */
37
- updateBlackboard(snapshot: Record<string, unknown>): void;
38
- /** Record execution step */
39
- recordStep(step: BTExecutionStep): void;
40
- /** Update statistics */
41
- updateStatistics(updates: Partial<BTDebugStatistics>): void;
42
- /** Add breakpoint */
43
- addBreakpoint(nodeId: string): void;
44
- /** Remove breakpoint */
45
- removeBreakpoint(nodeId: string): void;
46
- /** Toggle breakpoint */
47
- toggleBreakpoint(nodeId: string): void;
48
- /** Clear all breakpoints */
49
- clearBreakpoints(): void;
50
- /** Check if node has breakpoint */
51
- hasBreakpoint(nodeId: string): boolean;
52
- /** Add watch expression */
53
- addWatch(expression: string): BTWatchExpression;
54
- /** Remove watch expression */
55
- removeWatch(watchId: string): void;
56
- /** Update watch expression */
57
- updateWatch(watchId: string, expression: string): void;
58
- /** Clear all watches */
59
- clearWatches(): void;
60
- /** Evaluate a watch expression */
61
- private evaluateWatch;
62
- /** Re-evaluate all watches */
63
- evaluateWatches(): void;
64
- /** Get execution history */
65
- getHistory(): BTExecutionStep[];
66
- /** Clear execution history */
67
- clearHistory(): void;
68
- /** Get history for specific node */
69
- getNodeHistory(nodeId: string): BTExecutionStep[];
70
- /** Get last N steps */
71
- getRecentHistory(count?: number): BTExecutionStep[];
72
- /** Get statistics */
73
- getStatistics(): BTDebugStatistics;
74
- /** Get node execution count */
75
- getNodeExecutionCount(nodeId: string): number;
76
- /** Get node failure count */
77
- getNodeFailureCount(nodeId: string): number;
78
- /** Get node success rate */
79
- getNodeSuccessRate(nodeId: string): number;
80
- /** Get full state */
81
- getState(): BTDebugState;
82
- /** Check if debugging */
83
- isDebugging(): boolean;
84
- /** Check if paused */
85
- isPaused(): boolean;
86
- /** Get current node */
87
- getCurrentNodeId(): string | undefined;
88
- /** Subscribe to state changes */
89
- subscribe(listener: () => void): () => void;
90
- private notifyListeners;
91
- }
92
- export declare function createBTDebugPanel(): BTDebugPanel;
93
- /** Get status display info */
94
- export declare function getStatusInfo(status: BTStatus): {
95
- label: string;
96
- color: string;
97
- icon: string;
98
- };
99
- /** Format execution time */
100
- export declare function formatExecutionTime(ms: number): string;
101
- /** Format blackboard value for display */
102
- export declare function formatBlackboardValue(value: unknown): string;
@@ -1,79 +0,0 @@
1
- /**
2
- * @file Behavior Tree Editor - Canvas
3
- * @description Canvas component for visual editing of behavior trees
4
- * PRO-1.4: Professional Editor Features
5
- */
6
- import type { Vec2 } from '../../core/types';
7
- import type { BehaviorTreeEditor } from './BehaviorTreeEditor';
8
- import { BTEditorNodeRenderer, BTConnectionRenderer } from './BTEditorNode';
9
- import type { BTEditorConfig } from './types';
10
- export interface BTEditorCanvasState {
11
- isDragging: boolean;
12
- isPanning: boolean;
13
- isBoxSelecting: boolean;
14
- dragStartPosition: Vec2 | null;
15
- dragStartNodePositions: Map<string, Vec2>;
16
- boxSelectStart: Vec2 | null;
17
- boxSelectEnd: Vec2 | null;
18
- hoveredNodeId: string | null;
19
- hoveredConnectionId: string | null;
20
- contextMenuPosition: Vec2 | null;
21
- }
22
- export declare class BTEditorCanvas {
23
- private canvas;
24
- private ctx;
25
- private editor;
26
- private config;
27
- private nodeRenderer;
28
- private connectionRenderer;
29
- private state;
30
- private animationFrameId;
31
- private resizeObserver;
32
- onNodeClick?: (nodeId: string, event: MouseEvent) => void;
33
- onNodeDoubleClick?: (nodeId: string, event: MouseEvent) => void;
34
- onNodeContextMenu?: (nodeId: string, position: Vec2, event: MouseEvent) => void;
35
- onConnectionContextMenu?: (connectionId: string, position: Vec2, event: MouseEvent) => void;
36
- onCanvasContextMenu?: (position: Vec2, event: MouseEvent) => void;
37
- onDrop?: (dataTransfer: DataTransfer, position: Vec2) => void;
38
- constructor(canvas: HTMLCanvasElement, editor: BehaviorTreeEditor, config?: Partial<BTEditorConfig>);
39
- /** Clean up resources */
40
- dispose(): void;
41
- private setupEventListeners;
42
- private removeEventListeners;
43
- private handleMouseDown;
44
- private handleMouseMove;
45
- private handleMouseUp;
46
- private handleMouseLeave;
47
- private handleWheel;
48
- private handleDoubleClick;
49
- private handleContextMenu;
50
- private handleDragOver;
51
- private handleDrop;
52
- private handleKeyDown;
53
- private startConnection;
54
- private completeConnection;
55
- private findNodeAtPosition;
56
- private findConnectionAtPosition;
57
- private updateHoverState;
58
- private setupResizeObserver;
59
- private resizeCanvas;
60
- private startRenderLoop;
61
- private render;
62
- private renderGrid;
63
- private renderBoxSelection;
64
- private renderMinimap;
65
- private getCanvasPosition;
66
- private snapToGrid;
67
- private normalizeRect;
68
- /** Force redraw */
69
- redraw(): void;
70
- /** Get canvas element */
71
- getCanvas(): HTMLCanvasElement;
72
- /** Update configuration */
73
- updateConfig(config: Partial<BTEditorConfig>): void;
74
- /** Set custom node renderer */
75
- setNodeRenderer(renderer: BTEditorNodeRenderer): void;
76
- /** Set custom connection renderer */
77
- setConnectionRenderer(renderer: BTConnectionRenderer): void;
78
- }
79
- export declare function createBTEditorCanvas(canvas: HTMLCanvasElement, editor: BehaviorTreeEditor, config?: Partial<BTEditorConfig>): BTEditorCanvas;
@@ -1,58 +0,0 @@
1
- /**
2
- * @file Behavior Tree Editor - Editor Node
3
- * @description Visual representation of a behavior tree node in the editor
4
- * PRO-1.4: Professional Editor Features
5
- */
6
- import type { Vec2 } from '../../core/types';
7
- import type { BTEditorNodeData, BTEditorConfig } from './types';
8
- import { BT_NODE_COLORS, BT_STATUS_COLORS } from './types';
9
- export interface BTEditorNodeRenderer {
10
- /** Render the node to a canvas context */
11
- render(ctx: CanvasRenderingContext2D, node: BTEditorNodeData, config: BTEditorConfig): void;
12
- /** Check if point is inside node */
13
- hitTest(point: Vec2, node: BTEditorNodeData): boolean;
14
- /** Check if point is on input connector */
15
- hitTestInput(point: Vec2, node: BTEditorNodeData, config: BTEditorConfig): boolean;
16
- /** Check if point is on output connector */
17
- hitTestOutput(point: Vec2, node: BTEditorNodeData, config: BTEditorConfig): boolean;
18
- /** Get input connector position */
19
- getInputPosition(node: BTEditorNodeData, config: BTEditorConfig): Vec2;
20
- /** Get output connector position */
21
- getOutputPosition(node: BTEditorNodeData, config: BTEditorConfig): Vec2;
22
- }
23
- export declare class DefaultBTNodeRenderer implements BTEditorNodeRenderer {
24
- private connectorRadius;
25
- private connectorHitRadius;
26
- render(ctx: CanvasRenderingContext2D, node: BTEditorNodeData, config: BTEditorConfig): void;
27
- hitTest(point: Vec2, node: BTEditorNodeData): boolean;
28
- hitTestInput(point: Vec2, node: BTEditorNodeData, config: BTEditorConfig): boolean;
29
- hitTestOutput(point: Vec2, node: BTEditorNodeData, config: BTEditorConfig): boolean;
30
- getInputPosition(node: BTEditorNodeData, config: BTEditorConfig): Vec2;
31
- getOutputPosition(node: BTEditorNodeData, _config: BTEditorConfig): Vec2;
32
- private drawConnector;
33
- private drawBadge;
34
- private roundRect;
35
- private truncateText;
36
- /** Small category marker drawn as a shape (no glyph fonts on the canvas). */
37
- private drawCategoryMarker;
38
- }
39
- export interface BTConnectionRenderer {
40
- /** Render connection */
41
- render(ctx: CanvasRenderingContext2D, startPos: Vec2, endPos: Vec2, selected: boolean, active: boolean, config: BTEditorConfig): void;
42
- /** Hit test connection */
43
- hitTest(point: Vec2, startPos: Vec2, endPos: Vec2, config: BTEditorConfig): boolean;
44
- }
45
- export declare class DefaultBTConnectionRenderer implements BTConnectionRenderer {
46
- render(ctx: CanvasRenderingContext2D, startPos: Vec2, endPos: Vec2, selected: boolean, active: boolean, config: BTEditorConfig): void;
47
- hitTest(point: Vec2, startPos: Vec2, endPos: Vec2, config: BTEditorConfig): boolean;
48
- private getBezierPoint;
49
- }
50
- export interface BTNodeTheme {
51
- name: string;
52
- colors: typeof BT_NODE_COLORS;
53
- statusColors: typeof BT_STATUS_COLORS;
54
- }
55
- export declare const defaultTheme: BTNodeTheme;
56
- export declare const lightTheme: BTNodeTheme;
57
- export declare function createNodeRenderer(): BTEditorNodeRenderer;
58
- export declare function createConnectionRenderer(): BTConnectionRenderer;
@@ -1,75 +0,0 @@
1
- /**
2
- * @file Behavior Tree Editor - Toolbar
3
- * @description Toolbar component for editor actions
4
- * PRO-1.4: Professional Editor Features
5
- */
6
- import type { BehaviorTreeEditor } from './BehaviorTreeEditor';
7
- import type { BTEditorMode } from './types';
8
- export interface BTToolbarAction {
9
- id: string;
10
- label: string;
11
- icon: string;
12
- shortcut?: string;
13
- tooltip?: string;
14
- disabled?: boolean;
15
- active?: boolean;
16
- group?: string;
17
- execute: () => void;
18
- }
19
- export interface BTToolbarGroup {
20
- id: string;
21
- label?: string;
22
- actions: BTToolbarAction[];
23
- }
24
- export declare class BTEditorToolbar {
25
- private editor;
26
- private customActions;
27
- private listeners;
28
- constructor(editor: BehaviorTreeEditor);
29
- /** Get all toolbar groups */
30
- getGroups(): BTToolbarGroup[];
31
- private getFileGroup;
32
- private getEditGroup;
33
- private getViewGroup;
34
- private getLayoutGroup;
35
- private getDebugGroup;
36
- private getCustomGroups;
37
- private handleDelete;
38
- onSave?: () => void;
39
- onExport?: () => void;
40
- onImport?: () => void;
41
- onValidate?: (result: {
42
- valid: boolean;
43
- errors: string[];
44
- warnings: string[];
45
- }) => void;
46
- private triggerSave;
47
- private triggerExport;
48
- private triggerImport;
49
- private triggerValidation;
50
- /** Add custom toolbar action */
51
- addAction(action: BTToolbarAction): void;
52
- /** Remove custom toolbar action */
53
- removeAction(actionId: string): void;
54
- /** Get action by ID */
55
- getAction(actionId: string): BTToolbarAction | undefined;
56
- /** Execute action by ID */
57
- executeAction(actionId: string): void;
58
- /** Get all keyboard shortcuts */
59
- getShortcuts(): Map<string, BTToolbarAction>;
60
- /** Handle keyboard shortcut */
61
- handleShortcut(event: KeyboardEvent): boolean;
62
- private formatShortcut;
63
- /** Update toolbar state */
64
- update(): void;
65
- /** Get current mode */
66
- getMode(): BTEditorMode;
67
- /** Check if modified */
68
- isModified(): boolean;
69
- /** Subscribe to state changes */
70
- subscribe(listener: () => void): () => void;
71
- private notifyListeners;
72
- }
73
- export declare function createBTEditorToolbar(editor: BehaviorTreeEditor): BTEditorToolbar;
74
- /** Toolbar icon id -> NiceIcon builtin name (render with `<NiceIcon name={…} />`). */
75
- export declare const TOOLBAR_ICONS: Record<string, string>;
@@ -1,72 +0,0 @@
1
- /**
2
- * @file Behavior Tree Editor - Node Palette
3
- * @description Node palette for selecting and adding nodes to the behavior tree
4
- * PRO-1.4: Professional Editor Features
5
- */
6
- import type { BTNodeDefinition, BTNodeType } from '../../ai/BehaviorTree';
7
- import type { BTPaletteCategory, BTPaletteNode } from './types';
8
- export interface BTNodePaletteState {
9
- searchQuery: string;
10
- expandedCategories: Set<BTNodeType>;
11
- favorites: Set<string>;
12
- recentlyUsed: string[];
13
- maxRecentlyUsed: number;
14
- }
15
- export declare class BTNodePalette {
16
- private definitions;
17
- private state;
18
- private listeners;
19
- onNodeDragStart?: (definition: BTNodeDefinition, event: DragEvent) => void;
20
- onNodeAdd?: (definition: BTNodeDefinition) => void;
21
- constructor();
22
- /** Set available node definitions */
23
- setDefinitions(definitions: BTNodeDefinition[]): void;
24
- /** Get all definitions */
25
- getDefinitions(): BTNodeDefinition[];
26
- /** Get definition by type */
27
- getDefinition(type: string): BTNodeDefinition | undefined;
28
- /** Get categories with filtered nodes */
29
- getCategories(): BTPaletteCategory[];
30
- private createCategory;
31
- private toPaletteNode;
32
- private generateSearchTerms;
33
- /** Update search query */
34
- setSearchQuery(query: string): void;
35
- /** Get current search query */
36
- getSearchQuery(): string;
37
- /** Check if definition matches search */
38
- private matchesSearch;
39
- /** Get filtered nodes across all categories */
40
- getFilteredNodes(): BTPaletteNode[];
41
- /** Toggle category expansion */
42
- toggleCategory(category: BTNodeType): void;
43
- /** Expand all categories */
44
- expandAll(): void;
45
- /** Collapse all categories */
46
- collapseAll(): void;
47
- /** Toggle favorite status */
48
- toggleFavorite(type: string): void;
49
- /** Check if node is favorite */
50
- isFavorite(type: string): boolean;
51
- /** Get favorite nodes */
52
- getFavorites(): BTPaletteNode[];
53
- private loadFavorites;
54
- private saveFavorites;
55
- /** Add to recently used */
56
- addRecentlyUsed(type: string): void;
57
- /** Get recently used nodes */
58
- getRecentlyUsed(): BTPaletteNode[];
59
- /** Clear recently used */
60
- clearRecentlyUsed(): void;
61
- private loadRecentlyUsed;
62
- private saveRecentlyUsed;
63
- /** Handle node drag start */
64
- handleDragStart(type: string, event: DragEvent): void;
65
- /** Handle node click (add node) */
66
- handleNodeClick(type: string): void;
67
- /** Subscribe to state changes */
68
- subscribe(listener: () => void): () => void;
69
- private notifyListeners;
70
- }
71
- export declare function createBTNodePalette(): BTNodePalette;
72
- export declare function getBuiltInNodeDefinitions(): Partial<BTNodeDefinition>[];
@@ -1,66 +0,0 @@
1
- /**
2
- * @file Behavior Tree Editor - Property Panel
3
- * @description Property panel for editing selected node properties
4
- * PRO-1.4: Professional Editor Features
5
- */
6
- import type { BTNodeDefinition, BTPropertyDef } from '../../ai/BehaviorTree';
7
- import type { BTEditorNodeData, BTBlackboardKeyDef } from './types';
8
- export interface BTPropertyValue {
9
- name: string;
10
- value: unknown;
11
- definition?: BTPropertyDef;
12
- error?: string;
13
- modified: boolean;
14
- }
15
- export interface BTPropertyPanelState {
16
- selectedNode: BTEditorNodeData | null;
17
- nodeDefinition: BTNodeDefinition | null;
18
- properties: BTPropertyValue[];
19
- blackboardKeys: BTBlackboardKeyDef[];
20
- collapsed: boolean;
21
- }
22
- export declare class BTPropertyPanel {
23
- private state;
24
- private listeners;
25
- onPropertyChange?: (nodeId: string, property: string, value: unknown) => void;
26
- onNameChange?: (nodeId: string, name: string) => void;
27
- onCommentChange?: (nodeId: string, comment: string) => void;
28
- constructor();
29
- /** Set the selected node */
30
- setSelectedNode(node: BTEditorNodeData | null, definition: BTNodeDefinition | null): void;
31
- /** Get selected node */
32
- getSelectedNode(): BTEditorNodeData | null;
33
- /** Set blackboard keys for key selection */
34
- setBlackboardKeys(keys: BTBlackboardKeyDef[]): void;
35
- private buildProperties;
36
- /** Update property value */
37
- setProperty(name: string, value: unknown): void;
38
- /** Reset property to default */
39
- resetProperty(name: string): void;
40
- /** Set node name */
41
- setName(name: string): void;
42
- /** Set node comment */
43
- setComment(comment: string): void;
44
- private validateProperty;
45
- /** Validate all properties */
46
- validateAll(): boolean;
47
- /** Get current state */
48
- getState(): BTPropertyPanelState;
49
- /** Toggle collapsed state */
50
- toggleCollapsed(): void;
51
- /** Subscribe to state changes */
52
- subscribe(listener: () => void): () => void;
53
- private notifyListeners;
54
- }
55
- export interface BTPropertyEditorProps<T = unknown> {
56
- value: T;
57
- definition: BTPropertyDef;
58
- onChange: (value: T) => void;
59
- error?: string;
60
- disabled?: boolean;
61
- }
62
- /** Get editor type for property */
63
- export declare function getPropertyEditorType(definition: BTPropertyDef): string;
64
- export declare function createBTPropertyPanel(): BTPropertyPanel;
65
- export declare function formatPropertyValue(value: unknown, definition?: BTPropertyDef): string;
66
- export declare function parsePropertyValue(input: string, definition: BTPropertyDef): unknown;