@nice2dev/game-engine 1.3.13 → 1.3.15
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.
- package/CHANGELOG.md +8 -0
- package/package.json +2 -2
- package/dist/types/accessibility/index.d.ts +0 -1
- package/dist/types/ai/index.d.ts +0 -1
- package/dist/types/animation/index.d.ts +0 -1
- package/dist/types/audio/HRTFAudio.d.ts +0 -180
- package/dist/types/audio/index.d.ts +0 -2
- package/dist/types/community/Community.d.ts +0 -112
- package/dist/types/community/index.d.ts +0 -1
- package/dist/types/core/TypeSafety.d.ts +0 -190
- package/dist/types/core/index.d.ts +0 -7
- package/dist/types/devtools/AssetStore.d.ts +0 -133
- package/dist/types/devtools/index.d.ts +0 -3
- package/dist/types/dialogue/index.d.ts +0 -2
- package/dist/types/docs/APIPlayground.d.ts +0 -26
- package/dist/types/docs/Cookbook.d.ts +0 -18
- package/dist/types/docs/Guides.d.ts +0 -18
- package/dist/types/docs/index.d.ts +0 -4
- package/dist/types/ecs/ECSOptimized.d.ts +0 -131
- package/dist/types/ecs/index.d.ts +0 -2
- package/dist/types/editor/NiceAnimationTimeline.d.ts +0 -114
- package/dist/types/editor/NiceLevelEditor.d.ts +0 -232
- package/dist/types/editor/NiceMaterialEditor.d.ts +0 -105
- package/dist/types/editor/NiceNodeGraph.d.ts +0 -87
- package/dist/types/editor/NiceParticleEditor.d.ts +0 -127
- package/dist/types/editor/behavior-tree/BTDebugPanel.d.ts +0 -102
- package/dist/types/editor/behavior-tree/BTEditorCanvas.d.ts +0 -79
- package/dist/types/editor/behavior-tree/BTEditorNode.d.ts +0 -58
- package/dist/types/editor/behavior-tree/BTEditorToolbar.d.ts +0 -75
- package/dist/types/editor/behavior-tree/BTNodePalette.d.ts +0 -72
- package/dist/types/editor/behavior-tree/BTPropertyPanel.d.ts +0 -66
- package/dist/types/editor/behavior-tree/BehaviorTreeEditor.d.ts +0 -186
- package/dist/types/editor/behavior-tree/index.d.ts +0 -14
- package/dist/types/editor/behavior-tree/serialization.d.ts +0 -30
- package/dist/types/editor/behavior-tree/types.d.ts +0 -299
- package/dist/types/editor/index.d.ts +0 -20
- package/dist/types/editor/state-machine/SMEditorCanvas.d.ts +0 -61
- package/dist/types/editor/state-machine/StateMachineEditor.d.ts +0 -139
- package/dist/types/editor/state-machine/index.d.ts +0 -11
- package/dist/types/editor/state-machine/serialization.d.ts +0 -23
- package/dist/types/editor/state-machine/types.d.ts +0 -241
- package/dist/types/engine/index.d.ts +0 -2
- package/dist/types/enterprise/index.d.ts +0 -1
- package/dist/types/epic/index.d.ts +0 -10
- package/dist/types/i18n/index.d.ts +0 -2
- package/dist/types/input/index.d.ts +0 -3
- package/dist/types/kids/index.d.ts +0 -2
- package/dist/types/legendary/index.d.ts +0 -57
- package/dist/types/monetization/index.d.ts +0 -1
- package/dist/types/multiplayer/NiceNetcode.d.ts +0 -434
- package/dist/types/multiplayer/index.d.ts +0 -5
- package/dist/types/network/index.d.ts +0 -2
- package/dist/types/pathfinding/index.d.ts +0 -1
- package/dist/types/performance/AssetCompression.d.ts +0 -137
- package/dist/types/performance/WASMModules.d.ts +0 -65
- package/dist/types/performance/WebGPUCompute.d.ts +0 -71
- package/dist/types/performance/index.d.ts +0 -1
- package/dist/types/physics/RapierIntegration.d.ts +0 -404
- package/dist/types/physics/index.d.ts +0 -2
- package/dist/types/plugins/index.d.ts +0 -2
- package/dist/types/procedural/index.d.ts +0 -2
- package/dist/types/release/index.d.ts +0 -1
- package/dist/types/rendering/WebGPUv2.d.ts +0 -173
- package/dist/types/rendering/index.d.ts +0 -3
- package/dist/types/runtime3d/index.d.ts +0 -2
- package/dist/types/scene/index.d.ts +0 -2
- package/dist/types/scripting/WasmCompiler.d.ts +0 -182
- package/dist/types/scripting/index.d.ts +0 -19
- package/dist/types/social/index.d.ts +0 -1
- package/dist/types/systems/NiceAI.d.ts +0 -637
- package/dist/types/systems/NiceAbility.d.ts +0 -225
- package/dist/types/systems/NiceAccessibility.d.ts +0 -230
- package/dist/types/systems/NiceAchievement.d.ts +0 -153
- package/dist/types/systems/NiceAchievementUI.d.ts +0 -196
- package/dist/types/systems/NiceAchievements.d.ts +0 -230
- package/dist/types/systems/NiceAction.d.ts +0 -81
- package/dist/types/systems/NiceAlchemy.d.ts +0 -195
- package/dist/types/systems/NiceAnalytics.d.ts +0 -493
- package/dist/types/systems/NiceAnimation.d.ts +0 -350
- package/dist/types/systems/NiceArena.d.ts +0 -215
- package/dist/types/systems/NiceAssetLoader.d.ts +0 -136
- package/dist/types/systems/NiceAuction.d.ts +0 -157
- package/dist/types/systems/NiceAudio.d.ts +0 -224
- package/dist/types/systems/NiceAugment.d.ts +0 -187
- package/dist/types/systems/NiceAura.d.ts +0 -193
- package/dist/types/systems/NiceBank.d.ts +0 -158
- package/dist/types/systems/NiceBattlePass.d.ts +0 -150
- package/dist/types/systems/NiceBehavior.d.ts +0 -160
- package/dist/types/systems/NiceBinding.d.ts +0 -96
- package/dist/types/systems/NiceBlacksmith.d.ts +0 -221
- package/dist/types/systems/NiceBuff.d.ts +0 -177
- package/dist/types/systems/NiceBuilding.d.ts +0 -207
- package/dist/types/systems/NiceBullet.d.ts +0 -167
- package/dist/types/systems/NiceCamera.d.ts +0 -252
- package/dist/types/systems/NiceCard.d.ts +0 -171
- package/dist/types/systems/NiceChat.d.ts +0 -148
- package/dist/types/systems/NiceCheat.d.ts +0 -375
- package/dist/types/systems/NiceClimbing.d.ts +0 -186
- package/dist/types/systems/NiceCloud.d.ts +0 -422
- package/dist/types/systems/NiceCollision.d.ts +0 -238
- package/dist/types/systems/NiceCombo.d.ts +0 -131
- package/dist/types/systems/NiceCommand.d.ts +0 -112
- package/dist/types/systems/NiceCompanion.d.ts +0 -182
- package/dist/types/systems/NiceController.d.ts +0 -144
- package/dist/types/systems/NiceCooking.d.ts +0 -193
- package/dist/types/systems/NiceCoroutine.d.ts +0 -101
- package/dist/types/systems/NiceCrafting.d.ts +0 -228
- package/dist/types/systems/NiceCutscene.d.ts +0 -437
- package/dist/types/systems/NiceDaily.d.ts +0 -133
- package/dist/types/systems/NiceDamage.d.ts +0 -271
- package/dist/types/systems/NiceDayNight.d.ts +0 -126
- package/dist/types/systems/NiceDebug.d.ts +0 -255
- package/dist/types/systems/NiceDestructible.d.ts +0 -150
- package/dist/types/systems/NiceDialogue.d.ts +0 -629
- package/dist/types/systems/NiceDungeon.d.ts +0 -202
- package/dist/types/systems/NiceECS.d.ts +0 -151
- package/dist/types/systems/NiceEnchant.d.ts +0 -148
- package/dist/types/systems/NiceEntityPool.d.ts +0 -127
- package/dist/types/systems/NiceEquipment.d.ts +0 -137
- package/dist/types/systems/NiceEvent.d.ts +0 -202
- package/dist/types/systems/NiceEventBus.d.ts +0 -164
- package/dist/types/systems/NiceFaction.d.ts +0 -173
- package/dist/types/systems/NiceFarming.d.ts +0 -163
- package/dist/types/systems/NiceFishing.d.ts +0 -196
- package/dist/types/systems/NiceFlocking.d.ts +0 -156
- package/dist/types/systems/NiceFog.d.ts +0 -137
- package/dist/types/systems/NiceFormation.d.ts +0 -140
- package/dist/types/systems/NiceGacha.d.ts +0 -134
- package/dist/types/systems/NiceGambling.d.ts +0 -175
- package/dist/types/systems/NiceGem.d.ts +0 -165
- package/dist/types/systems/NiceGesture.d.ts +0 -502
- package/dist/types/systems/NiceGrappling.d.ts +0 -154
- package/dist/types/systems/NiceGrid.d.ts +0 -142
- package/dist/types/systems/NiceGuild.d.ts +0 -162
- package/dist/types/systems/NiceHaptics.d.ts +0 -112
- package/dist/types/systems/NiceHousing.d.ts +0 -197
- package/dist/types/systems/NiceInput.d.ts +0 -280
- package/dist/types/systems/NiceInventory.d.ts +0 -534
- package/dist/types/systems/NiceLOD.d.ts +0 -144
- package/dist/types/systems/NiceLeaderboard.d.ts +0 -191
- package/dist/types/systems/NiceLevel.d.ts +0 -304
- package/dist/types/systems/NiceLighting.d.ts +0 -214
- package/dist/types/systems/NiceLocalization.d.ts +0 -148
- package/dist/types/systems/NiceLocomotion.d.ts +0 -398
- package/dist/types/systems/NiceLogger.d.ts +0 -117
- package/dist/types/systems/NiceLoot.d.ts +0 -176
- package/dist/types/systems/NiceMail.d.ts +0 -164
- package/dist/types/systems/NiceMap.d.ts +0 -234
- package/dist/types/systems/NiceMarriage.d.ts +0 -150
- package/dist/types/systems/NiceMastery.d.ts +0 -171
- package/dist/types/systems/NiceMatch.d.ts +0 -196
- package/dist/types/systems/NiceMatch3.d.ts +0 -118
- package/dist/types/systems/NiceMessageBus.d.ts +0 -115
- package/dist/types/systems/NiceMinimap.d.ts +0 -258
- package/dist/types/systems/NiceMining.d.ts +0 -175
- package/dist/types/systems/NiceModding.d.ts +0 -452
- package/dist/types/systems/NiceMount.d.ts +0 -152
- package/dist/types/systems/NiceNavigation.d.ts +0 -307
- package/dist/types/systems/NiceNetwork.d.ts +0 -568
- package/dist/types/systems/NiceNotification.d.ts +0 -438
- package/dist/types/systems/NiceObjective.d.ts +0 -395
- package/dist/types/systems/NiceParticle.d.ts +0 -639
- package/dist/types/systems/NiceParty.d.ts +0 -168
- package/dist/types/systems/NicePerformance.d.ts +0 -144
- package/dist/types/systems/NicePet.d.ts +0 -167
- package/dist/types/systems/NicePhotoMode.d.ts +0 -270
- package/dist/types/systems/NicePhysics.d.ts +0 -326
- package/dist/types/systems/NicePlatformer.d.ts +0 -158
- package/dist/types/systems/NicePool.d.ts +0 -128
- package/dist/types/systems/NicePortal.d.ts +0 -178
- package/dist/types/systems/NicePostProcess.d.ts +0 -254
- package/dist/types/systems/NiceProcedural.d.ts +0 -202
- package/dist/types/systems/NiceProfile.d.ts +0 -223
- package/dist/types/systems/NiceProjectile.d.ts +0 -157
- package/dist/types/systems/NicePvP.d.ts +0 -199
- package/dist/types/systems/NiceQTE.d.ts +0 -160
- package/dist/types/systems/NiceQuest.d.ts +0 -620
- package/dist/types/systems/NiceRaid.d.ts +0 -215
- package/dist/types/systems/NiceRanking.d.ts +0 -399
- package/dist/types/systems/NiceReplay.d.ts +0 -180
- package/dist/types/systems/NiceReputation.d.ts +0 -151
- package/dist/types/systems/NiceResource.d.ts +0 -200
- package/dist/types/systems/NiceRhythm.d.ts +0 -148
- package/dist/types/systems/NiceRoguelike.d.ts +0 -276
- package/dist/types/systems/NiceRune.d.ts +0 -202
- package/dist/types/systems/NiceSaveSystem.d.ts +0 -194
- package/dist/types/systems/NiceSceneManager.d.ts +0 -112
- package/dist/types/systems/NiceScore.d.ts +0 -186
- package/dist/types/systems/NiceScreenFX.d.ts +0 -235
- package/dist/types/systems/NiceScreenshot.d.ts +0 -443
- package/dist/types/systems/NiceScribe.d.ts +0 -239
- package/dist/types/systems/NiceSeason.d.ts +0 -176
- package/dist/types/systems/NiceSerialization.d.ts +0 -89
- package/dist/types/systems/NiceServiceLocator.d.ts +0 -94
- package/dist/types/systems/NiceShop.d.ts +0 -528
- package/dist/types/systems/NiceSignal.d.ts +0 -112
- package/dist/types/systems/NiceSkillTree.d.ts +0 -237
- package/dist/types/systems/NiceSocial.d.ts +0 -580
- package/dist/types/systems/NiceSpawner.d.ts +0 -237
- package/dist/types/systems/NiceSpell.d.ts +0 -216
- package/dist/types/systems/NiceState.d.ts +0 -224
- package/dist/types/systems/NiceStateMachine.d.ts +0 -108
- package/dist/types/systems/NiceStatus.d.ts +0 -116
- package/dist/types/systems/NiceStealth.d.ts +0 -204
- package/dist/types/systems/NiceSteam.d.ts +0 -255
- package/dist/types/systems/NiceStreaming.d.ts +0 -173
- package/dist/types/systems/NiceSwimming.d.ts +0 -166
- package/dist/types/systems/NiceTalent.d.ts +0 -154
- package/dist/types/systems/NiceTarget.d.ts +0 -121
- package/dist/types/systems/NiceTerrain.d.ts +0 -143
- package/dist/types/systems/NiceTilemap.d.ts +0 -218
- package/dist/types/systems/NiceTimer.d.ts +0 -153
- package/dist/types/systems/NiceTournament.d.ts +0 -190
- package/dist/types/systems/NiceTrading.d.ts +0 -238
- package/dist/types/systems/NiceTransmog.d.ts +0 -142
- package/dist/types/systems/NiceTutorial.d.ts +0 -248
- package/dist/types/systems/NiceTween.d.ts +0 -164
- package/dist/types/systems/NiceUI.d.ts +0 -364
- package/dist/types/systems/NiceVFX.d.ts +0 -333
- package/dist/types/systems/NiceVehicle.d.ts +0 -176
- package/dist/types/systems/NiceVoice.d.ts +0 -502
- package/dist/types/systems/NiceWater.d.ts +0 -162
- package/dist/types/systems/NiceWave.d.ts +0 -174
- package/dist/types/systems/NiceWaypoint.d.ts +0 -165
- package/dist/types/systems/NiceWeather.d.ts +0 -225
- package/dist/types/systems/NiceXR.d.ts +0 -187
- package/dist/types/systems/index.d.ts +0 -182
- package/dist/types/templates/index.d.ts +0 -2
- package/dist/types/tilemap/index.d.ts +0 -1
- package/dist/types/tutorials/TutorialEditor.d.ts +0 -43
- package/dist/types/tutorials/VoiceNarration.d.ts +0 -75
- package/dist/types/tutorials/content/Tutorials_T04.d.ts +0 -3
- package/dist/types/tutorials/content/UITutorials.d.ts +0 -14
- package/dist/types/tutorials/content/index.d.ts +0 -5
- package/dist/types/tutorials/index.d.ts +0 -6
- package/dist/types/ui/index.d.ts +0 -2
- package/dist/types/visual-scripting/VisualScriptDebugger.d.ts +0 -145
- package/dist/types/visual-scripting/VisualScriptExecutor.d.ts +0 -100
- package/dist/types/visual-scripting/VisualScriptGraph.d.ts +0 -173
- package/dist/types/visual-scripting/VisualScriptNode.d.ts +0 -157
- package/dist/types/visual-scripting/index.d.ts +0 -6
- package/dist/types/visual-scripting/nodes/ActionNodes.d.ts +0 -152
- package/dist/types/visual-scripting/nodes/EventNodes.d.ts +0 -95
- package/dist/types/visual-scripting/nodes/FlowControlNodes.d.ts +0 -134
- package/dist/types/visual-scripting/nodes/LogicNodes.d.ts +0 -122
- package/dist/types/visual-scripting/nodes/MathNodes.d.ts +0 -170
- package/dist/types/visual-scripting/nodes/UtilityNodes.d.ts +0 -131
- package/dist/types/visual-scripting/nodes/VariableNodes.d.ts +0 -107
- package/dist/types/visual-scripting/nodes/index.d.ts +0 -21
- package/dist/types/visual-scripting/nodes/registerNodes.d.ts +0 -29
- package/dist/types/visual-scripting/types.d.ts +0 -402
- package/dist/types/xr/WebXRLayers.d.ts +0 -319
- package/dist/types/xr/index.d.ts +0 -2
|
@@ -1,115 +0,0 @@
|
|
|
1
|
-
/** Local emitter wrapper tolerating loose .on/.off signatures. */
|
|
2
|
-
declare class NiceMessageBusEmitter {
|
|
3
|
-
private _emitter;
|
|
4
|
-
emit(event: string, ...args: unknown[]): boolean;
|
|
5
|
-
}
|
|
6
|
-
export type MessageType = string;
|
|
7
|
-
export type ChannelId = string;
|
|
8
|
-
export type SubscriberId = string;
|
|
9
|
-
export interface Message<T = unknown> {
|
|
10
|
-
id: string;
|
|
11
|
-
type: MessageType;
|
|
12
|
-
payload: T;
|
|
13
|
-
timestamp: number;
|
|
14
|
-
sender?: string;
|
|
15
|
-
channel?: ChannelId;
|
|
16
|
-
priority?: number;
|
|
17
|
-
metadata?: Record<string, unknown>;
|
|
18
|
-
}
|
|
19
|
-
export type MessageHandler<T = unknown> = (message: Message<T>) => void | Promise<void>;
|
|
20
|
-
export type MessageFilter<T = unknown> = (message: Message<T>) => boolean;
|
|
21
|
-
export type Middleware = (message: Message, next: () => void) => void | Promise<void>;
|
|
22
|
-
export interface Subscription {
|
|
23
|
-
id: SubscriberId;
|
|
24
|
-
type: MessageType | '*';
|
|
25
|
-
channel?: ChannelId;
|
|
26
|
-
handler: MessageHandler;
|
|
27
|
-
filter?: MessageFilter;
|
|
28
|
-
priority: number;
|
|
29
|
-
once: boolean;
|
|
30
|
-
}
|
|
31
|
-
export interface Request<TReq = unknown, _TRes = unknown> extends Message<TReq> {
|
|
32
|
-
replyTo: string;
|
|
33
|
-
timeout?: number;
|
|
34
|
-
}
|
|
35
|
-
export interface Response<T = unknown> extends Message<T> {
|
|
36
|
-
requestId: string;
|
|
37
|
-
success: boolean;
|
|
38
|
-
error?: string;
|
|
39
|
-
}
|
|
40
|
-
export type MessageBusEventType = 'message-sent' | 'message-received' | 'subscriber-added' | 'subscriber-removed' | 'error';
|
|
41
|
-
export interface MessageBusEvent {
|
|
42
|
-
type: MessageBusEventType;
|
|
43
|
-
messageId?: string;
|
|
44
|
-
subscriberId?: string;
|
|
45
|
-
error?: Error;
|
|
46
|
-
}
|
|
47
|
-
export interface MessageBusConfig {
|
|
48
|
-
maxQueueSize?: number;
|
|
49
|
-
defaultTimeout?: number;
|
|
50
|
-
async?: boolean;
|
|
51
|
-
middleware?: Middleware[];
|
|
52
|
-
}
|
|
53
|
-
export declare const DEFAULT_MESSAGE_BUS_CONFIG: MessageBusConfig;
|
|
54
|
-
export declare class NiceMessageBus extends NiceMessageBusEmitter {
|
|
55
|
-
private subscriptions;
|
|
56
|
-
private typeIndex;
|
|
57
|
-
private channelIndex;
|
|
58
|
-
private wildcardSubscribers;
|
|
59
|
-
private messageQueue;
|
|
60
|
-
private pendingRequests;
|
|
61
|
-
private middleware;
|
|
62
|
-
private nextId;
|
|
63
|
-
private config;
|
|
64
|
-
private processing;
|
|
65
|
-
constructor(config?: Partial<MessageBusConfig>);
|
|
66
|
-
use(middleware: Middleware): void;
|
|
67
|
-
subscribe<T = unknown>(type: MessageType | '*', handler: MessageHandler<T>, options?: {
|
|
68
|
-
channel?: ChannelId;
|
|
69
|
-
filter?: MessageFilter<T>;
|
|
70
|
-
priority?: number;
|
|
71
|
-
once?: boolean;
|
|
72
|
-
}): SubscriberId;
|
|
73
|
-
once<T = unknown>(type: MessageType, handler: MessageHandler<T>, options?: Omit<Parameters<typeof this.subscribe>[2], 'once'>): SubscriberId;
|
|
74
|
-
unsubscribe(id: SubscriberId): boolean;
|
|
75
|
-
unsubscribeAll(channel?: ChannelId): void;
|
|
76
|
-
publish<T = unknown>(type: MessageType, payload: T, options?: {
|
|
77
|
-
channel?: ChannelId;
|
|
78
|
-
sender?: string;
|
|
79
|
-
priority?: number;
|
|
80
|
-
metadata?: Record<string, unknown>;
|
|
81
|
-
}): string;
|
|
82
|
-
private dispatchMessage;
|
|
83
|
-
private processQueue;
|
|
84
|
-
private deliverMessage;
|
|
85
|
-
private getMatchingSubscribers;
|
|
86
|
-
private matchesChannel;
|
|
87
|
-
request<TReq = unknown, TRes = unknown>(type: MessageType, payload: TReq, options?: {
|
|
88
|
-
channel?: ChannelId;
|
|
89
|
-
timeout?: number;
|
|
90
|
-
sender?: string;
|
|
91
|
-
}): Promise<TRes>;
|
|
92
|
-
respond<T>(request: Request, payload: T, success?: boolean, error?: string): void;
|
|
93
|
-
createChannel(id: ChannelId): void;
|
|
94
|
-
deleteChannel(id: ChannelId): void;
|
|
95
|
-
getChannels(): ChannelId[];
|
|
96
|
-
getSubscriberCount(): number;
|
|
97
|
-
getQueueSize(): number;
|
|
98
|
-
getPendingRequestCount(): number;
|
|
99
|
-
clear(): void;
|
|
100
|
-
}
|
|
101
|
-
export declare function createMessageBus(config?: Partial<MessageBusConfig>): NiceMessageBus;
|
|
102
|
-
export interface TypedChannel<T> {
|
|
103
|
-
publish(payload: T, options?: {
|
|
104
|
-
sender?: string;
|
|
105
|
-
priority?: number;
|
|
106
|
-
}): string;
|
|
107
|
-
subscribe(handler: MessageHandler<T>, options?: {
|
|
108
|
-
filter?: MessageFilter<T>;
|
|
109
|
-
priority?: number;
|
|
110
|
-
}): SubscriberId;
|
|
111
|
-
once(handler: MessageHandler<T>): SubscriberId;
|
|
112
|
-
unsubscribeAll(): void;
|
|
113
|
-
}
|
|
114
|
-
export declare function createTypedChannel<T>(bus: NiceMessageBus, channelId: ChannelId, messageType: MessageType): TypedChannel<T>;
|
|
115
|
-
export default NiceMessageBus;
|
|
@@ -1,258 +0,0 @@
|
|
|
1
|
-
export type EntityId = string;
|
|
2
|
-
export type MarkerId = string;
|
|
3
|
-
export type ZoneId = string;
|
|
4
|
-
export type WaypointId = string;
|
|
5
|
-
export type PingId = string;
|
|
6
|
-
export type OverlayId = string;
|
|
7
|
-
export interface Vector2 {
|
|
8
|
-
x: number;
|
|
9
|
-
y: number;
|
|
10
|
-
}
|
|
11
|
-
export interface Bounds {
|
|
12
|
-
minX: number;
|
|
13
|
-
minY: number;
|
|
14
|
-
maxX: number;
|
|
15
|
-
maxY: number;
|
|
16
|
-
}
|
|
17
|
-
export type MinimapMode = 'fixed' | 'rotating' | 'follow' | 'full';
|
|
18
|
-
export type MarkerType = 'player' | 'ally' | 'enemy' | 'neutral' | 'objective' | 'quest' | 'poi' | 'resource' | 'building' | 'vehicle' | 'custom';
|
|
19
|
-
export interface MinimapMarker {
|
|
20
|
-
id: MarkerId;
|
|
21
|
-
entityId?: EntityId;
|
|
22
|
-
type: MarkerType;
|
|
23
|
-
position: Vector2;
|
|
24
|
-
rotation?: number;
|
|
25
|
-
icon?: string;
|
|
26
|
-
color?: string;
|
|
27
|
-
size?: number;
|
|
28
|
-
label?: string;
|
|
29
|
-
priority?: number;
|
|
30
|
-
visible: boolean;
|
|
31
|
-
trackRotation?: boolean;
|
|
32
|
-
blinkRate?: number;
|
|
33
|
-
pulseEffect?: boolean;
|
|
34
|
-
/** Custom render data */
|
|
35
|
-
customData?: Record<string, unknown>;
|
|
36
|
-
}
|
|
37
|
-
export type ZoneShape = 'rectangle' | 'circle' | 'polygon';
|
|
38
|
-
export interface MinimapZone {
|
|
39
|
-
id: ZoneId;
|
|
40
|
-
name?: string;
|
|
41
|
-
shape: ZoneShape;
|
|
42
|
-
/** For rectangle */
|
|
43
|
-
bounds?: Bounds;
|
|
44
|
-
/** For circle */
|
|
45
|
-
center?: Vector2;
|
|
46
|
-
radius?: number;
|
|
47
|
-
/** For polygon */
|
|
48
|
-
points?: Vector2[];
|
|
49
|
-
color?: string;
|
|
50
|
-
fillOpacity?: number;
|
|
51
|
-
borderColor?: string;
|
|
52
|
-
borderWidth?: number;
|
|
53
|
-
visible: boolean;
|
|
54
|
-
layer?: number;
|
|
55
|
-
}
|
|
56
|
-
export interface MinimapWaypoint {
|
|
57
|
-
id: WaypointId;
|
|
58
|
-
position: Vector2;
|
|
59
|
-
targetPosition?: Vector2;
|
|
60
|
-
icon?: string;
|
|
61
|
-
color?: string;
|
|
62
|
-
label?: string;
|
|
63
|
-
showPath?: boolean;
|
|
64
|
-
pathPoints?: Vector2[];
|
|
65
|
-
showDistance?: boolean;
|
|
66
|
-
createdBy?: EntityId;
|
|
67
|
-
expires?: number;
|
|
68
|
-
visible: boolean;
|
|
69
|
-
}
|
|
70
|
-
export type PingType = 'alert' | 'attack' | 'defend' | 'help' | 'omw' | 'caution' | 'custom';
|
|
71
|
-
export interface MinimapPing {
|
|
72
|
-
id: PingId;
|
|
73
|
-
type: PingType;
|
|
74
|
-
position: Vector2;
|
|
75
|
-
color?: string;
|
|
76
|
-
icon?: string;
|
|
77
|
-
label?: string;
|
|
78
|
-
sound?: string;
|
|
79
|
-
createdBy?: EntityId;
|
|
80
|
-
createdAt: number;
|
|
81
|
-
duration: number;
|
|
82
|
-
animation?: 'pulse' | 'expand' | 'flash';
|
|
83
|
-
}
|
|
84
|
-
export interface MinimapOverlay {
|
|
85
|
-
id: OverlayId;
|
|
86
|
-
imageUrl?: string;
|
|
87
|
-
bounds: Bounds;
|
|
88
|
-
opacity?: number;
|
|
89
|
-
visible: boolean;
|
|
90
|
-
zIndex?: number;
|
|
91
|
-
}
|
|
92
|
-
export interface FogOfWarConfig {
|
|
93
|
-
enabled: boolean;
|
|
94
|
-
/** Grid cell size */
|
|
95
|
-
cellSize: number;
|
|
96
|
-
/** Fog color */
|
|
97
|
-
fogColor: string;
|
|
98
|
-
/** Explored but not visible color */
|
|
99
|
-
exploredColor: string;
|
|
100
|
-
/** Unexplored fully hidden */
|
|
101
|
-
hideUnexplored: boolean;
|
|
102
|
-
}
|
|
103
|
-
export interface FogCell {
|
|
104
|
-
x: number;
|
|
105
|
-
y: number;
|
|
106
|
-
state: 'unexplored' | 'explored' | 'visible';
|
|
107
|
-
lastVisibleTime?: number;
|
|
108
|
-
}
|
|
109
|
-
export interface MinimapView {
|
|
110
|
-
center: Vector2;
|
|
111
|
-
zoom: number;
|
|
112
|
-
rotation: number;
|
|
113
|
-
mode: MinimapMode;
|
|
114
|
-
followEntityId?: EntityId;
|
|
115
|
-
}
|
|
116
|
-
export type MinimapEventType = 'marker-added' | 'marker-removed' | 'marker-updated' | 'zone-added' | 'zone-removed' | 'waypoint-added' | 'waypoint-removed' | 'ping-created' | 'ping-expired' | 'fog-revealed' | 'view-changed' | 'click' | 'hover';
|
|
117
|
-
export interface MinimapEvent {
|
|
118
|
-
type: MinimapEventType;
|
|
119
|
-
timestamp: number;
|
|
120
|
-
data: unknown;
|
|
121
|
-
}
|
|
122
|
-
export type MinimapEventCallback = (event: MinimapEvent) => void;
|
|
123
|
-
export interface MinimapConfig {
|
|
124
|
-
/** World bounds */
|
|
125
|
-
worldBounds: Bounds;
|
|
126
|
-
/** Default minimap size */
|
|
127
|
-
size: {
|
|
128
|
-
width: number;
|
|
129
|
-
height: number;
|
|
130
|
-
};
|
|
131
|
-
/** Default zoom */
|
|
132
|
-
defaultZoom: number;
|
|
133
|
-
/** Min/max zoom */
|
|
134
|
-
minZoom: number;
|
|
135
|
-
maxZoom: number;
|
|
136
|
-
/** Default mode */
|
|
137
|
-
defaultMode: MinimapMode;
|
|
138
|
-
/** Background color */
|
|
139
|
-
backgroundColor: string;
|
|
140
|
-
/** Border color */
|
|
141
|
-
borderColor: string;
|
|
142
|
-
/** Show compass */
|
|
143
|
-
showCompass: boolean;
|
|
144
|
-
/** Show scale */
|
|
145
|
-
showScale: boolean;
|
|
146
|
-
/** Enable fog of war */
|
|
147
|
-
fogOfWar: FogOfWarConfig;
|
|
148
|
-
/** Ping duration */
|
|
149
|
-
pingDuration: number;
|
|
150
|
-
/** Max pings */
|
|
151
|
-
maxPings: number;
|
|
152
|
-
/** Click to move */
|
|
153
|
-
enableClickToMove: boolean;
|
|
154
|
-
/** Enable panning */
|
|
155
|
-
enablePanning: boolean;
|
|
156
|
-
/** Enable zooming */
|
|
157
|
-
enableZooming: boolean;
|
|
158
|
-
}
|
|
159
|
-
export declare const DEFAULT_MINIMAP_CONFIG: MinimapConfig;
|
|
160
|
-
export interface MinimapRenderData {
|
|
161
|
-
view: MinimapView;
|
|
162
|
-
size: {
|
|
163
|
-
width: number;
|
|
164
|
-
height: number;
|
|
165
|
-
};
|
|
166
|
-
markers: MinimapMarker[];
|
|
167
|
-
zones: MinimapZone[];
|
|
168
|
-
waypoints: MinimapWaypoint[];
|
|
169
|
-
pings: MinimapPing[];
|
|
170
|
-
overlays: MinimapOverlay[];
|
|
171
|
-
fogCells?: FogCell[];
|
|
172
|
-
worldToScreen: (worldPos: Vector2) => Vector2;
|
|
173
|
-
screenToWorld: (screenPos: Vector2) => Vector2;
|
|
174
|
-
}
|
|
175
|
-
export declare class NiceMinimap {
|
|
176
|
-
private config;
|
|
177
|
-
private markers;
|
|
178
|
-
private zones;
|
|
179
|
-
private waypoints;
|
|
180
|
-
private pings;
|
|
181
|
-
private overlays;
|
|
182
|
-
private fogGrid;
|
|
183
|
-
private revealedEntities;
|
|
184
|
-
private view;
|
|
185
|
-
private idCounter;
|
|
186
|
-
private eventListeners;
|
|
187
|
-
constructor(config?: Partial<MinimapConfig>);
|
|
188
|
-
private getWorldCenter;
|
|
189
|
-
private initializeFogGrid;
|
|
190
|
-
on(event: MinimapEventType, callback: MinimapEventCallback): () => void;
|
|
191
|
-
private emit;
|
|
192
|
-
addMarker(marker: Omit<MinimapMarker, 'id' | 'visible'> & {
|
|
193
|
-
id?: MarkerId;
|
|
194
|
-
visible?: boolean;
|
|
195
|
-
}): MarkerId;
|
|
196
|
-
updateMarker(id: MarkerId, updates: Partial<MinimapMarker>): void;
|
|
197
|
-
removeMarker(id: MarkerId): void;
|
|
198
|
-
getMarker(id: MarkerId): MinimapMarker | undefined;
|
|
199
|
-
getMarkersByType(type: MarkerType): MinimapMarker[];
|
|
200
|
-
getMarkerByEntityId(entityId: EntityId): MinimapMarker | undefined;
|
|
201
|
-
addZone(zone: Omit<MinimapZone, 'id' | 'visible'> & {
|
|
202
|
-
id?: ZoneId;
|
|
203
|
-
visible?: boolean;
|
|
204
|
-
}): ZoneId;
|
|
205
|
-
updateZone(id: ZoneId, updates: Partial<MinimapZone>): void;
|
|
206
|
-
removeZone(id: ZoneId): void;
|
|
207
|
-
addWaypoint(waypoint: Omit<MinimapWaypoint, 'id' | 'visible'> & {
|
|
208
|
-
id?: WaypointId;
|
|
209
|
-
visible?: boolean;
|
|
210
|
-
}): WaypointId;
|
|
211
|
-
updateWaypoint(id: WaypointId, updates: Partial<MinimapWaypoint>): void;
|
|
212
|
-
removeWaypoint(id: WaypointId): void;
|
|
213
|
-
clearWaypoints(): void;
|
|
214
|
-
createPing(ping: Omit<MinimapPing, 'id' | 'createdAt'>): PingId;
|
|
215
|
-
removePing(id: PingId): void;
|
|
216
|
-
addOverlay(overlay: Omit<MinimapOverlay, 'id' | 'visible'> & {
|
|
217
|
-
id?: OverlayId;
|
|
218
|
-
visible?: boolean;
|
|
219
|
-
}): OverlayId;
|
|
220
|
-
updateOverlay(id: OverlayId, updates: Partial<MinimapOverlay>): void;
|
|
221
|
-
removeOverlay(id: OverlayId): void;
|
|
222
|
-
revealFog(position: Vector2, radius: number): void;
|
|
223
|
-
updateFogVisibility(visiblePositions: Array<{
|
|
224
|
-
position: Vector2;
|
|
225
|
-
radius: number;
|
|
226
|
-
}>): void;
|
|
227
|
-
isFogRevealed(position: Vector2): boolean;
|
|
228
|
-
isFogVisible(position: Vector2): boolean;
|
|
229
|
-
setView(view: Partial<MinimapView>): void;
|
|
230
|
-
setCenter(center: Vector2): void;
|
|
231
|
-
setZoom(zoom: number): void;
|
|
232
|
-
setRotation(rotation: number): void;
|
|
233
|
-
setMode(mode: MinimapMode): void;
|
|
234
|
-
followEntity(entityId: EntityId): void;
|
|
235
|
-
stopFollowing(): void;
|
|
236
|
-
getView(): MinimapView;
|
|
237
|
-
worldToScreen(worldPos: Vector2): Vector2;
|
|
238
|
-
screenToWorld(screenPos: Vector2): Vector2;
|
|
239
|
-
handleClick(screenPos: Vector2): Vector2;
|
|
240
|
-
handleHover(screenPos: Vector2): {
|
|
241
|
-
marker?: MinimapMarker;
|
|
242
|
-
zone?: MinimapZone;
|
|
243
|
-
worldPos: Vector2;
|
|
244
|
-
};
|
|
245
|
-
private isPointInZone;
|
|
246
|
-
private isPointInPolygon;
|
|
247
|
-
update(_deltaTime: number): void;
|
|
248
|
-
getRenderData(): MinimapRenderData;
|
|
249
|
-
getDistance(from: Vector2, to: Vector2): number;
|
|
250
|
-
getDirection(from: Vector2, to: Vector2): number;
|
|
251
|
-
isInBounds(position: Vector2): boolean;
|
|
252
|
-
clampToBounds(position: Vector2): Vector2;
|
|
253
|
-
setConfig(config: Partial<MinimapConfig>): void;
|
|
254
|
-
getConfig(): MinimapConfig;
|
|
255
|
-
clear(): void;
|
|
256
|
-
destroy(): void;
|
|
257
|
-
}
|
|
258
|
-
export declare function createMinimapSystem(config?: Partial<MinimapConfig>): NiceMinimap;
|
|
@@ -1,175 +0,0 @@
|
|
|
1
|
-
import { EventEmitter } from 'events';
|
|
2
|
-
export type EntityId = string;
|
|
3
|
-
export type NodeId = string;
|
|
4
|
-
export type ResourceId = string;
|
|
5
|
-
export type ToolId = string;
|
|
6
|
-
export interface Vector3 {
|
|
7
|
-
x: number;
|
|
8
|
-
y: number;
|
|
9
|
-
z: number;
|
|
10
|
-
}
|
|
11
|
-
export type ResourceRarity = 'common' | 'uncommon' | 'rare' | 'epic' | 'legendary';
|
|
12
|
-
export interface ResourceType {
|
|
13
|
-
id: ResourceId;
|
|
14
|
-
name: string;
|
|
15
|
-
rarity: ResourceRarity;
|
|
16
|
-
baseValue: number;
|
|
17
|
-
weight: number;
|
|
18
|
-
stackSize: number;
|
|
19
|
-
minSkillLevel: number;
|
|
20
|
-
toolTypes: ToolType[];
|
|
21
|
-
processingTime?: number;
|
|
22
|
-
processedOutput?: ResourceId;
|
|
23
|
-
processedRatio?: number;
|
|
24
|
-
}
|
|
25
|
-
export type NodeState = 'available' | 'being-mined' | 'depleted' | 'respawning';
|
|
26
|
-
export interface MiningNode {
|
|
27
|
-
id: NodeId;
|
|
28
|
-
position: Vector3;
|
|
29
|
-
resourceType: ResourceId;
|
|
30
|
-
state: NodeState;
|
|
31
|
-
hardness: number;
|
|
32
|
-
totalResources: number;
|
|
33
|
-
remainingResources: number;
|
|
34
|
-
currentProgress: number;
|
|
35
|
-
quality: number;
|
|
36
|
-
respawnTime: number;
|
|
37
|
-
respawnTimer: number;
|
|
38
|
-
bonusLootTable?: LootEntry[];
|
|
39
|
-
requiredToolLevel: number;
|
|
40
|
-
minerId?: EntityId;
|
|
41
|
-
lastMineTime?: number;
|
|
42
|
-
}
|
|
43
|
-
export interface LootEntry {
|
|
44
|
-
resourceId: ResourceId;
|
|
45
|
-
chance: number;
|
|
46
|
-
minAmount: number;
|
|
47
|
-
maxAmount: number;
|
|
48
|
-
requiredSkill?: number;
|
|
49
|
-
}
|
|
50
|
-
export type ToolType = 'pickaxe' | 'drill' | 'explosive' | 'laser' | 'hammer';
|
|
51
|
-
export interface MiningTool {
|
|
52
|
-
id: ToolId;
|
|
53
|
-
name: string;
|
|
54
|
-
type: ToolType;
|
|
55
|
-
level: number;
|
|
56
|
-
efficiency: number;
|
|
57
|
-
power: number;
|
|
58
|
-
durabilityMax: number;
|
|
59
|
-
durabilityCurrent: number;
|
|
60
|
-
durabilityLossPerUse: number;
|
|
61
|
-
bonusYield: number;
|
|
62
|
-
bonusQuality: number;
|
|
63
|
-
aoeRadius?: number;
|
|
64
|
-
}
|
|
65
|
-
export interface MinerProfile {
|
|
66
|
-
entityId: EntityId;
|
|
67
|
-
skillLevel: number;
|
|
68
|
-
experience: number;
|
|
69
|
-
experienceToNextLevel: number;
|
|
70
|
-
equippedTool?: MiningTool;
|
|
71
|
-
bonuses: {
|
|
72
|
-
speed: number;
|
|
73
|
-
yield: number;
|
|
74
|
-
quality: number;
|
|
75
|
-
rareFind: number;
|
|
76
|
-
};
|
|
77
|
-
stats: {
|
|
78
|
-
totalMined: number;
|
|
79
|
-
nodesCleared: number;
|
|
80
|
-
rareFinds: number;
|
|
81
|
-
highestQuality: number;
|
|
82
|
-
};
|
|
83
|
-
knownDeposits: Set<NodeId>;
|
|
84
|
-
activeOperation?: MiningOperation;
|
|
85
|
-
}
|
|
86
|
-
export interface MiningOperation {
|
|
87
|
-
id: string;
|
|
88
|
-
type: 'single' | 'continuous' | 'blast';
|
|
89
|
-
nodeId: NodeId;
|
|
90
|
-
minerId: EntityId;
|
|
91
|
-
startTime: number;
|
|
92
|
-
progress: number;
|
|
93
|
-
targetProgress: number;
|
|
94
|
-
yieldAccumulated: ResourceYield[];
|
|
95
|
-
}
|
|
96
|
-
export interface ResourceYield {
|
|
97
|
-
resourceId: ResourceId;
|
|
98
|
-
amount: number;
|
|
99
|
-
quality: number;
|
|
100
|
-
}
|
|
101
|
-
export type MiningEventType = 'mining-started' | 'mining-progress' | 'mining-completed' | 'mining-cancelled' | 'resource-extracted' | 'rare-find' | 'node-depleted' | 'node-respawned' | 'tool-damaged' | 'tool-broken' | 'skill-increased' | 'deposit-discovered';
|
|
102
|
-
export interface MiningEvent {
|
|
103
|
-
type: MiningEventType;
|
|
104
|
-
entityId?: EntityId;
|
|
105
|
-
nodeId?: NodeId;
|
|
106
|
-
data?: Record<string, unknown>;
|
|
107
|
-
}
|
|
108
|
-
export interface MiningSystemConfig {
|
|
109
|
-
baseExtractionTime?: number;
|
|
110
|
-
baseMiningSpeed?: number;
|
|
111
|
-
skillLevelCap?: number;
|
|
112
|
-
experiencePerResource?: number;
|
|
113
|
-
qualityLevels?: {
|
|
114
|
-
name: string;
|
|
115
|
-
minQuality: number;
|
|
116
|
-
}[];
|
|
117
|
-
rareFindBaseChance?: number;
|
|
118
|
-
discoveryRadius?: number;
|
|
119
|
-
}
|
|
120
|
-
export declare const DEFAULT_MINING_CONFIG: MiningSystemConfig;
|
|
121
|
-
export declare class NiceMining extends EventEmitter {
|
|
122
|
-
private resourceTypes;
|
|
123
|
-
private nodes;
|
|
124
|
-
private miners;
|
|
125
|
-
private tools;
|
|
126
|
-
private nextNodeId;
|
|
127
|
-
private nextOpId;
|
|
128
|
-
private config;
|
|
129
|
-
constructor(config?: Partial<MiningSystemConfig>);
|
|
130
|
-
defineResourceType(resource: ResourceType): void;
|
|
131
|
-
getResourceType(id: ResourceId): ResourceType | undefined;
|
|
132
|
-
createNode(position: Vector3, resourceId: ResourceId, options?: {
|
|
133
|
-
totalResources?: number;
|
|
134
|
-
hardness?: number;
|
|
135
|
-
quality?: number;
|
|
136
|
-
respawnTime?: number;
|
|
137
|
-
bonusLoot?: LootEntry[];
|
|
138
|
-
}): NodeId;
|
|
139
|
-
getNode(id: NodeId): MiningNode | undefined;
|
|
140
|
-
removeNode(id: NodeId): void;
|
|
141
|
-
findNodesInRadius(position: Vector3, radius: number): MiningNode[];
|
|
142
|
-
discoverNearbyNodes(entityId: EntityId, position: Vector3): MiningNode[];
|
|
143
|
-
registerMiner(entityId: EntityId): void;
|
|
144
|
-
getMiner(entityId: EntityId): MinerProfile | undefined;
|
|
145
|
-
equipTool(entityId: EntityId, tool: MiningTool): void;
|
|
146
|
-
startMining(entityId: EntityId, nodeId: NodeId): boolean;
|
|
147
|
-
cancelMining(entityId: EntityId): void;
|
|
148
|
-
update(deltaTime: number): void;
|
|
149
|
-
private updateMiningOperation;
|
|
150
|
-
private completeMiningCycle;
|
|
151
|
-
private checkRareFind;
|
|
152
|
-
private awardExperience;
|
|
153
|
-
private damageTool;
|
|
154
|
-
private depleteNode;
|
|
155
|
-
private respawnNode;
|
|
156
|
-
createTool(options: Partial<MiningTool> & {
|
|
157
|
-
id: ToolId;
|
|
158
|
-
name: string;
|
|
159
|
-
}): MiningTool;
|
|
160
|
-
repairTool(toolId: ToolId, amount: number): void;
|
|
161
|
-
getAvailableNodes(): MiningNode[];
|
|
162
|
-
getNodesByResource(resourceId: ResourceId): MiningNode[];
|
|
163
|
-
canMine(entityId: EntityId, nodeId: NodeId): {
|
|
164
|
-
canMine: boolean;
|
|
165
|
-
reason?: string;
|
|
166
|
-
};
|
|
167
|
-
getQualityName(quality: number): string;
|
|
168
|
-
}
|
|
169
|
-
export declare function createMiningSystem(config?: Partial<MiningSystemConfig>): NiceMining;
|
|
170
|
-
export declare function defineResourceType(options: ResourceType): ResourceType;
|
|
171
|
-
export declare function createMiningTool(options: Partial<MiningTool> & {
|
|
172
|
-
id: ToolId;
|
|
173
|
-
name: string;
|
|
174
|
-
}): MiningTool;
|
|
175
|
-
export default NiceMining;
|