@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,108 +0,0 @@
|
|
|
1
|
-
import { EventEmitter } from 'events';
|
|
2
|
-
export type StateId = string;
|
|
3
|
-
export type ActionType = string;
|
|
4
|
-
export interface StateConfig<TContext = Record<string, unknown>> {
|
|
5
|
-
id: StateId;
|
|
6
|
-
onEnter?: (context: TContext, previousState?: StateId) => void | Promise<void>;
|
|
7
|
-
onExit?: (context: TContext, nextState?: StateId) => void | Promise<void>;
|
|
8
|
-
onUpdate?: (context: TContext, deltaTime: number) => void;
|
|
9
|
-
transitions?: TransitionConfig<TContext>[];
|
|
10
|
-
parent?: StateId;
|
|
11
|
-
initial?: boolean;
|
|
12
|
-
}
|
|
13
|
-
export interface TransitionConfig<TContext = Record<string, unknown>> {
|
|
14
|
-
target: StateId;
|
|
15
|
-
action?: ActionType;
|
|
16
|
-
guard?: (context: TContext) => boolean;
|
|
17
|
-
onTransition?: (context: TContext) => void | Promise<void>;
|
|
18
|
-
}
|
|
19
|
-
export declare class State<TContext = Record<string, unknown>> {
|
|
20
|
-
readonly id: StateId;
|
|
21
|
-
readonly parent?: StateId;
|
|
22
|
-
readonly initial: boolean;
|
|
23
|
-
private transitions;
|
|
24
|
-
private onEnterFn?;
|
|
25
|
-
private onExitFn?;
|
|
26
|
-
private onUpdateFn?;
|
|
27
|
-
constructor(config: StateConfig<TContext>);
|
|
28
|
-
enter(context: TContext, previousState?: StateId): Promise<void>;
|
|
29
|
-
exit(context: TContext, nextState?: StateId): Promise<void>;
|
|
30
|
-
update(context: TContext, deltaTime: number): void;
|
|
31
|
-
getTransitions(): TransitionConfig<TContext>[];
|
|
32
|
-
findTransition(action: ActionType, context: TContext): TransitionConfig<TContext> | undefined;
|
|
33
|
-
}
|
|
34
|
-
export type StateMachineEventType = 'state-enter' | 'state-exit' | 'transition-start' | 'transition-end' | 'action-dispatched';
|
|
35
|
-
export interface StateMachineEvent {
|
|
36
|
-
type: StateMachineEventType;
|
|
37
|
-
state?: StateId;
|
|
38
|
-
previousState?: StateId;
|
|
39
|
-
nextState?: StateId;
|
|
40
|
-
action?: ActionType;
|
|
41
|
-
}
|
|
42
|
-
export interface StateMachineConfig<TContext = Record<string, unknown>> {
|
|
43
|
-
id: string;
|
|
44
|
-
initial: StateId;
|
|
45
|
-
context: TContext;
|
|
46
|
-
states: StateConfig<TContext>[];
|
|
47
|
-
onTransition?: (from: StateId, to: StateId, context: TContext) => void;
|
|
48
|
-
}
|
|
49
|
-
export declare class NiceStateMachine<TContext = Record<string, unknown>> extends EventEmitter {
|
|
50
|
-
readonly id: string;
|
|
51
|
-
private states;
|
|
52
|
-
private currentStateId;
|
|
53
|
-
private context;
|
|
54
|
-
private history;
|
|
55
|
-
private isTransitioning;
|
|
56
|
-
private onTransitionFn?;
|
|
57
|
-
constructor(config: StateMachineConfig<TContext>);
|
|
58
|
-
getCurrentState(): StateId;
|
|
59
|
-
getState(id: StateId): State<TContext> | undefined;
|
|
60
|
-
isInState(id: StateId): boolean;
|
|
61
|
-
getContext(): TContext;
|
|
62
|
-
setContext(context: Partial<TContext>): void;
|
|
63
|
-
updateContext(updater: (ctx: TContext) => TContext): void;
|
|
64
|
-
dispatch(action: ActionType): Promise<boolean>;
|
|
65
|
-
transitionTo(targetState: StateId): Promise<boolean>;
|
|
66
|
-
private transition;
|
|
67
|
-
getHistory(): StateId[];
|
|
68
|
-
getPreviousState(): StateId | undefined;
|
|
69
|
-
goBack(): Promise<boolean>;
|
|
70
|
-
clearHistory(): void;
|
|
71
|
-
update(deltaTime: number): void;
|
|
72
|
-
reset(initialState?: StateId): Promise<void>;
|
|
73
|
-
}
|
|
74
|
-
export declare class HierarchicalStateMachine<TContext = Record<string, unknown>> extends NiceStateMachine<TContext> {
|
|
75
|
-
private childMachines;
|
|
76
|
-
registerChildMachine(parentState: StateId, machine: NiceStateMachine<TContext>): void;
|
|
77
|
-
update(deltaTime: number): void;
|
|
78
|
-
dispatchToChild(action: ActionType): Promise<boolean>;
|
|
79
|
-
getChildMachine(): NiceStateMachine<TContext> | undefined;
|
|
80
|
-
}
|
|
81
|
-
export declare class PushdownStateMachine<TContext = Record<string, unknown>> extends EventEmitter {
|
|
82
|
-
private states;
|
|
83
|
-
private stateStack;
|
|
84
|
-
private context;
|
|
85
|
-
private isTransitioning;
|
|
86
|
-
constructor(config: {
|
|
87
|
-
context: TContext;
|
|
88
|
-
states: StateConfig<TContext>[];
|
|
89
|
-
initial: StateId;
|
|
90
|
-
});
|
|
91
|
-
getCurrentState(): StateId | undefined;
|
|
92
|
-
getStackDepth(): number;
|
|
93
|
-
getStack(): StateId[];
|
|
94
|
-
push(stateId: StateId): Promise<boolean>;
|
|
95
|
-
pop(): Promise<StateId | undefined>;
|
|
96
|
-
replace(stateId: StateId): Promise<boolean>;
|
|
97
|
-
update(deltaTime: number): void;
|
|
98
|
-
getContext(): TContext;
|
|
99
|
-
setContext(ctx: Partial<TContext>): void;
|
|
100
|
-
}
|
|
101
|
-
export declare function createStateMachine<TContext = Record<string, unknown>>(config: StateMachineConfig<TContext>): NiceStateMachine<TContext>;
|
|
102
|
-
export declare function createHierarchicalStateMachine<TContext = Record<string, unknown>>(config: StateMachineConfig<TContext>): HierarchicalStateMachine<TContext>;
|
|
103
|
-
export declare function createPushdownStateMachine<TContext = Record<string, unknown>>(config: {
|
|
104
|
-
context: TContext;
|
|
105
|
-
states: StateConfig<TContext>[];
|
|
106
|
-
initial: StateId;
|
|
107
|
-
}): PushdownStateMachine<TContext>;
|
|
108
|
-
export default NiceStateMachine;
|
|
@@ -1,116 +0,0 @@
|
|
|
1
|
-
import { EventEmitter } from 'events';
|
|
2
|
-
export type StatusId = string;
|
|
3
|
-
export type StatusInstanceId = string;
|
|
4
|
-
export type EntityId = string;
|
|
5
|
-
export type StatId = string;
|
|
6
|
-
export type StatusType = 'buff' | 'debuff' | 'neutral';
|
|
7
|
-
export type StatusCategory = 'physical' | 'magical' | 'poison' | 'disease' | 'curse' | 'bleed' | 'burn' | 'freeze' | 'stun' | 'silence' | 'slow' | 'haste' | 'shield' | 'heal' | 'damage' | 'control' | 'other';
|
|
8
|
-
export type StackingBehavior = 'none' | 'duration' | 'intensity' | 'separate' | 'refresh';
|
|
9
|
-
export interface StatusDefinition {
|
|
10
|
-
id: StatusId;
|
|
11
|
-
name: string;
|
|
12
|
-
description: string;
|
|
13
|
-
type: StatusType;
|
|
14
|
-
category: StatusCategory;
|
|
15
|
-
duration: number;
|
|
16
|
-
maxStacks: number;
|
|
17
|
-
stackingBehavior: StackingBehavior;
|
|
18
|
-
statModifiers?: StatModifier[];
|
|
19
|
-
periodicEffect?: PeriodicEffect;
|
|
20
|
-
tags?: string[];
|
|
21
|
-
icon?: string;
|
|
22
|
-
immunities?: StatusId[];
|
|
23
|
-
dispelCategories?: StatusCategory[];
|
|
24
|
-
onApply?: (entity: EntityId, stacks: number) => void;
|
|
25
|
-
onRemove?: (entity: EntityId, stacks: number) => void;
|
|
26
|
-
onTick?: (entity: EntityId, stacks: number) => void;
|
|
27
|
-
}
|
|
28
|
-
export interface StatModifier {
|
|
29
|
-
stat: StatId;
|
|
30
|
-
value: number;
|
|
31
|
-
type: 'flat' | 'percent' | 'multiply';
|
|
32
|
-
perStack: boolean;
|
|
33
|
-
}
|
|
34
|
-
export interface PeriodicEffect {
|
|
35
|
-
interval: number;
|
|
36
|
-
damage?: number;
|
|
37
|
-
heal?: number;
|
|
38
|
-
damageType?: string;
|
|
39
|
-
scalingPerStack?: number;
|
|
40
|
-
}
|
|
41
|
-
export interface StatusInstance {
|
|
42
|
-
instanceId: StatusInstanceId;
|
|
43
|
-
statusId: StatusId;
|
|
44
|
-
entityId: EntityId;
|
|
45
|
-
sourceId?: EntityId;
|
|
46
|
-
stacks: number;
|
|
47
|
-
startTime: number;
|
|
48
|
-
expiresAt: number;
|
|
49
|
-
lastTickTime: number;
|
|
50
|
-
paused: boolean;
|
|
51
|
-
}
|
|
52
|
-
export interface EntityStatusState {
|
|
53
|
-
entityId: EntityId;
|
|
54
|
-
activeStatuses: Map<StatusInstanceId, StatusInstance>;
|
|
55
|
-
immunities: Set<StatusId>;
|
|
56
|
-
categoryImmunities: Set<StatusCategory>;
|
|
57
|
-
}
|
|
58
|
-
export type StatusEventType = 'status-applied' | 'status-stacked' | 'status-refreshed' | 'status-expired' | 'status-removed' | 'status-dispelled' | 'status-tick' | 'immunity-blocked';
|
|
59
|
-
export interface StatusEvent {
|
|
60
|
-
type: StatusEventType;
|
|
61
|
-
entityId: EntityId;
|
|
62
|
-
statusId: StatusId;
|
|
63
|
-
instanceId?: StatusInstanceId;
|
|
64
|
-
stacks?: number;
|
|
65
|
-
sourceId?: EntityId;
|
|
66
|
-
damage?: number;
|
|
67
|
-
heal?: number;
|
|
68
|
-
}
|
|
69
|
-
export interface StatusConfig {
|
|
70
|
-
maxStatusesPerEntity?: number;
|
|
71
|
-
tickInterval?: number;
|
|
72
|
-
defaultDuration?: number;
|
|
73
|
-
}
|
|
74
|
-
export declare const DEFAULT_STATUS_CONFIG: StatusConfig;
|
|
75
|
-
export declare class NiceStatus extends EventEmitter {
|
|
76
|
-
private definitions;
|
|
77
|
-
private entities;
|
|
78
|
-
private nextInstanceId;
|
|
79
|
-
private config;
|
|
80
|
-
constructor(config?: Partial<StatusConfig>);
|
|
81
|
-
register(definition: StatusDefinition): void;
|
|
82
|
-
unregister(statusId: StatusId): boolean;
|
|
83
|
-
getDefinition(statusId: StatusId): StatusDefinition | undefined;
|
|
84
|
-
registerEntity(entityId: EntityId): void;
|
|
85
|
-
unregisterEntity(entityId: EntityId): void;
|
|
86
|
-
apply(entityId: EntityId, statusId: StatusId, options?: {
|
|
87
|
-
sourceId?: EntityId;
|
|
88
|
-
stacks?: number;
|
|
89
|
-
duration?: number;
|
|
90
|
-
}): StatusInstanceId | null;
|
|
91
|
-
private findExistingInstance;
|
|
92
|
-
private handleStacking;
|
|
93
|
-
remove(entityId: EntityId, instanceId: StatusInstanceId): boolean;
|
|
94
|
-
removeByStatusId(entityId: EntityId, statusId: StatusId): number;
|
|
95
|
-
removeAll(entityId: EntityId, type?: StatusType): number;
|
|
96
|
-
dispel(entityId: EntityId, categories: StatusCategory[], maxDispel?: number): number;
|
|
97
|
-
addImmunity(entityId: EntityId, statusId: StatusId): void;
|
|
98
|
-
removeImmunity(entityId: EntityId, statusId: StatusId): void;
|
|
99
|
-
addCategoryImmunity(entityId: EntityId, category: StatusCategory): void;
|
|
100
|
-
removeCategoryImmunity(entityId: EntityId, category: StatusCategory): void;
|
|
101
|
-
isImmune(entityId: EntityId, statusId: StatusId): boolean;
|
|
102
|
-
update(_deltaTime: number): void;
|
|
103
|
-
private processTick;
|
|
104
|
-
has(entityId: EntityId, statusId: StatusId): boolean;
|
|
105
|
-
getStacks(entityId: EntityId, statusId: StatusId): number;
|
|
106
|
-
getActiveStatuses(entityId: EntityId): StatusInstance[];
|
|
107
|
-
getStatusesByType(entityId: EntityId, type: StatusType): StatusInstance[];
|
|
108
|
-
getStatusesByCategory(entityId: EntityId, category: StatusCategory): StatusInstance[];
|
|
109
|
-
getRemainingDuration(entityId: EntityId, statusId: StatusId): number;
|
|
110
|
-
getStatModifiers(entityId: EntityId): Map<StatId, number>;
|
|
111
|
-
pause(entityId: EntityId, instanceId: StatusInstanceId): void;
|
|
112
|
-
resume(entityId: EntityId, instanceId: StatusInstanceId): void;
|
|
113
|
-
}
|
|
114
|
-
export declare function createStatusSystem(config?: Partial<StatusConfig>): NiceStatus;
|
|
115
|
-
export declare function defineStatus(id: StatusId, name: string, type: StatusType, category: StatusCategory, options?: Partial<Omit<StatusDefinition, 'id' | 'name' | 'type' | 'category'>>): StatusDefinition;
|
|
116
|
-
export default NiceStatus;
|
|
@@ -1,204 +0,0 @@
|
|
|
1
|
-
import { EventEmitter } from 'events';
|
|
2
|
-
export type EntityId = string;
|
|
3
|
-
export type ZoneId = string;
|
|
4
|
-
export interface Vector3 {
|
|
5
|
-
x: number;
|
|
6
|
-
y: number;
|
|
7
|
-
z: number;
|
|
8
|
-
}
|
|
9
|
-
export type DetectionState = 'undetected' | 'suspicious' | 'alerted' | 'detected' | 'lost-contact' | 'searching';
|
|
10
|
-
export interface DetectionLevel {
|
|
11
|
-
current: number;
|
|
12
|
-
decayRate: number;
|
|
13
|
-
buildRate: number;
|
|
14
|
-
suspiciousThreshold: number;
|
|
15
|
-
alertedThreshold: number;
|
|
16
|
-
detectedThreshold: number;
|
|
17
|
-
}
|
|
18
|
-
export interface DetectionInfo {
|
|
19
|
-
detecteeId: EntityId;
|
|
20
|
-
detectorId: EntityId;
|
|
21
|
-
level: number;
|
|
22
|
-
state: DetectionState;
|
|
23
|
-
lastSeenPosition?: Vector3;
|
|
24
|
-
lastSeenTime?: number;
|
|
25
|
-
isInSight: boolean;
|
|
26
|
-
isInHearing: boolean;
|
|
27
|
-
}
|
|
28
|
-
export interface VisibilityProfile {
|
|
29
|
-
baseVisibility: number;
|
|
30
|
-
lightMultiplier: number;
|
|
31
|
-
movementMultiplier: number;
|
|
32
|
-
stanceModifiers: {
|
|
33
|
-
standing: number;
|
|
34
|
-
crouching: number;
|
|
35
|
-
prone: number;
|
|
36
|
-
};
|
|
37
|
-
coverReduction: number;
|
|
38
|
-
}
|
|
39
|
-
export interface EntityVisibility {
|
|
40
|
-
entityId: EntityId;
|
|
41
|
-
position: Vector3;
|
|
42
|
-
stance: 'standing' | 'crouching' | 'prone';
|
|
43
|
-
isMoving: boolean;
|
|
44
|
-
movementSpeed: number;
|
|
45
|
-
lightLevel: number;
|
|
46
|
-
inCover: boolean;
|
|
47
|
-
coverValue: number;
|
|
48
|
-
currentVisibility: number;
|
|
49
|
-
}
|
|
50
|
-
export interface SoundEvent {
|
|
51
|
-
id: string;
|
|
52
|
-
sourceId: EntityId;
|
|
53
|
-
position: Vector3;
|
|
54
|
-
volume: number;
|
|
55
|
-
range: number;
|
|
56
|
-
type: 'footstep' | 'voice' | 'weapon' | 'impact' | 'environment' | 'alert';
|
|
57
|
-
priority: number;
|
|
58
|
-
timestamp: number;
|
|
59
|
-
duration: number;
|
|
60
|
-
}
|
|
61
|
-
export interface HearingProfile {
|
|
62
|
-
baseRange: number;
|
|
63
|
-
sensitivity: number;
|
|
64
|
-
alertSoundThreshold: number;
|
|
65
|
-
suspiciousSoundThreshold: number;
|
|
66
|
-
}
|
|
67
|
-
export interface SightProfile {
|
|
68
|
-
viewDistance: number;
|
|
69
|
-
fovAngle: number;
|
|
70
|
-
peripheralAngle: number;
|
|
71
|
-
peripheralEfficiency: number;
|
|
72
|
-
verticalFov: number;
|
|
73
|
-
nightVision: boolean;
|
|
74
|
-
nightVisionRange?: number;
|
|
75
|
-
}
|
|
76
|
-
export interface CoverPoint {
|
|
77
|
-
id: string;
|
|
78
|
-
position: Vector3;
|
|
79
|
-
normal: Vector3;
|
|
80
|
-
height: number;
|
|
81
|
-
width: number;
|
|
82
|
-
coverValue: number;
|
|
83
|
-
type: 'soft' | 'hard';
|
|
84
|
-
}
|
|
85
|
-
export interface DetectionZone {
|
|
86
|
-
id: ZoneId;
|
|
87
|
-
name: string;
|
|
88
|
-
bounds: {
|
|
89
|
-
min: Vector3;
|
|
90
|
-
max: Vector3;
|
|
91
|
-
};
|
|
92
|
-
alertLevel: DetectionState;
|
|
93
|
-
activeDetectors: Set<EntityId>;
|
|
94
|
-
lastAlertTime?: number;
|
|
95
|
-
searchTimeRemaining?: number;
|
|
96
|
-
}
|
|
97
|
-
export interface Detector {
|
|
98
|
-
id: EntityId;
|
|
99
|
-
position: Vector3;
|
|
100
|
-
forward: Vector3;
|
|
101
|
-
sightProfile: SightProfile;
|
|
102
|
-
hearingProfile: HearingProfile;
|
|
103
|
-
detectionLevel: DetectionLevel;
|
|
104
|
-
currentState: DetectionState;
|
|
105
|
-
detections: Map<EntityId, DetectionInfo>;
|
|
106
|
-
isAlerted: boolean;
|
|
107
|
-
lastKnownPosition?: Vector3;
|
|
108
|
-
searchPattern?: Vector3[];
|
|
109
|
-
patrolRoute?: Vector3[];
|
|
110
|
-
currentPatrolIndex: number;
|
|
111
|
-
alertCooldown: number;
|
|
112
|
-
}
|
|
113
|
-
export interface StealthEntity {
|
|
114
|
-
id: EntityId;
|
|
115
|
-
position: Vector3;
|
|
116
|
-
visibility: EntityVisibility;
|
|
117
|
-
visibilityProfile: VisibilityProfile;
|
|
118
|
-
}
|
|
119
|
-
export type StealthEventType = 'detection-started' | 'detection-increased' | 'detection-decreased' | 'state-changed' | 'fully-detected' | 'lost-contact' | 'search-started' | 'search-ended' | 'sound-heard' | 'zone-alert-changed';
|
|
120
|
-
export interface StealthEvent {
|
|
121
|
-
type: StealthEventType;
|
|
122
|
-
detectorId: EntityId;
|
|
123
|
-
detecteeId?: EntityId;
|
|
124
|
-
zoneId?: ZoneId;
|
|
125
|
-
data?: Record<string, unknown>;
|
|
126
|
-
}
|
|
127
|
-
export interface StealthSystemConfig {
|
|
128
|
-
defaultDetectionThresholds?: {
|
|
129
|
-
suspicious: number;
|
|
130
|
-
alerted: number;
|
|
131
|
-
detected: number;
|
|
132
|
-
};
|
|
133
|
-
defaultDecayRate?: number;
|
|
134
|
-
defaultBuildRate?: number;
|
|
135
|
-
lostContactTimeout?: number;
|
|
136
|
-
searchDuration?: number;
|
|
137
|
-
soundPropagationSpeed?: number;
|
|
138
|
-
}
|
|
139
|
-
export declare const DEFAULT_STEALTH_CONFIG: StealthSystemConfig;
|
|
140
|
-
export declare class NiceStealth extends EventEmitter {
|
|
141
|
-
private detectors;
|
|
142
|
-
private stealthEntities;
|
|
143
|
-
private coverPoints;
|
|
144
|
-
private zones;
|
|
145
|
-
private activeSounds;
|
|
146
|
-
private nextSoundId;
|
|
147
|
-
private config;
|
|
148
|
-
constructor(config?: Partial<StealthSystemConfig>);
|
|
149
|
-
registerDetector(id: EntityId, position: Vector3, options?: {
|
|
150
|
-
sightProfile?: Partial<SightProfile>;
|
|
151
|
-
hearingProfile?: Partial<HearingProfile>;
|
|
152
|
-
detectionLevel?: Partial<DetectionLevel>;
|
|
153
|
-
}): void;
|
|
154
|
-
updateDetector(id: EntityId, position: Vector3, forward: Vector3): void;
|
|
155
|
-
removeDetector(id: EntityId): void;
|
|
156
|
-
registerStealthEntity(id: EntityId, position: Vector3, profile?: Partial<VisibilityProfile>): void;
|
|
157
|
-
updateStealthEntity(id: EntityId, updates: {
|
|
158
|
-
position?: Vector3;
|
|
159
|
-
stance?: 'standing' | 'crouching' | 'prone';
|
|
160
|
-
isMoving?: boolean;
|
|
161
|
-
movementSpeed?: number;
|
|
162
|
-
lightLevel?: number;
|
|
163
|
-
inCover?: boolean;
|
|
164
|
-
coverValue?: number;
|
|
165
|
-
}): void;
|
|
166
|
-
private calculateVisibility;
|
|
167
|
-
removeStealthEntity(id: EntityId): void;
|
|
168
|
-
addCoverPoint(cover: CoverPoint): void;
|
|
169
|
-
removeCoverPoint(id: string): void;
|
|
170
|
-
findNearbyCover(position: Vector3, radius: number): CoverPoint[];
|
|
171
|
-
createZone(zone: DetectionZone): void;
|
|
172
|
-
setZoneAlert(zoneId: ZoneId, alertLevel: DetectionState): void;
|
|
173
|
-
emitSound(sourceId: EntityId, position: Vector3, options: {
|
|
174
|
-
volume: number;
|
|
175
|
-
range: number;
|
|
176
|
-
type: SoundEvent['type'];
|
|
177
|
-
priority?: number;
|
|
178
|
-
duration?: number;
|
|
179
|
-
}): string;
|
|
180
|
-
private processSoundForDetectors;
|
|
181
|
-
private handleSoundDetection;
|
|
182
|
-
hasLineOfSight(from: Vector3, to: Vector3, checkObstacles?: (from: Vector3, to: Vector3) => boolean): boolean;
|
|
183
|
-
isInFieldOfView(detector: Detector, targetPosition: Vector3): {
|
|
184
|
-
inFov: boolean;
|
|
185
|
-
inPeripheral: boolean;
|
|
186
|
-
angle: number;
|
|
187
|
-
};
|
|
188
|
-
calculateDetection(detectorId: EntityId, detecteeId: EntityId): number;
|
|
189
|
-
update(deltaTime: number): void;
|
|
190
|
-
private updateDetector2;
|
|
191
|
-
private changeDetectorState;
|
|
192
|
-
private updateZone;
|
|
193
|
-
private getDistance;
|
|
194
|
-
private normalizeVector;
|
|
195
|
-
getDetector(id: EntityId): Detector | undefined;
|
|
196
|
-
getDetectionInfo(detectorId: EntityId, detecteeId: EntityId): DetectionInfo | undefined;
|
|
197
|
-
getVisibility(entityId: EntityId): number;
|
|
198
|
-
isDetected(detecteeId: EntityId): boolean;
|
|
199
|
-
getAlertnessLevel(detectorId: EntityId): DetectionState;
|
|
200
|
-
}
|
|
201
|
-
export declare function createStealthSystem(config?: Partial<StealthSystemConfig>): NiceStealth;
|
|
202
|
-
export declare function createVisibilityProfile(options?: Partial<VisibilityProfile>): VisibilityProfile;
|
|
203
|
-
export declare function createSightProfile(options?: Partial<SightProfile>): SightProfile;
|
|
204
|
-
export default NiceStealth;
|
|
@@ -1,255 +0,0 @@
|
|
|
1
|
-
export type PlatformType = 'steam' | 'epic' | 'gog' | 'xbox' | 'playstation' | 'switch' | 'web' | 'standalone';
|
|
2
|
-
export type AchievementId = string;
|
|
3
|
-
export type LeaderboardId = string;
|
|
4
|
-
export type StatId = string;
|
|
5
|
-
export interface PlatformAchievement {
|
|
6
|
-
id: AchievementId;
|
|
7
|
-
apiName: string;
|
|
8
|
-
name: string;
|
|
9
|
-
description: string;
|
|
10
|
-
iconUrl?: string;
|
|
11
|
-
iconLockedUrl?: string;
|
|
12
|
-
hidden: boolean;
|
|
13
|
-
unlocked: boolean;
|
|
14
|
-
unlockedAt?: number;
|
|
15
|
-
progress?: number;
|
|
16
|
-
maxProgress?: number;
|
|
17
|
-
}
|
|
18
|
-
export interface LeaderboardEntry {
|
|
19
|
-
rank: number;
|
|
20
|
-
userId: string;
|
|
21
|
-
userName: string;
|
|
22
|
-
score: number;
|
|
23
|
-
details?: number[];
|
|
24
|
-
avatarUrl?: string;
|
|
25
|
-
}
|
|
26
|
-
export interface LeaderboardConfig {
|
|
27
|
-
id: LeaderboardId;
|
|
28
|
-
apiName: string;
|
|
29
|
-
sortMethod: 'ascending' | 'descending';
|
|
30
|
-
displayType: 'numeric' | 'time_seconds' | 'time_milliseconds';
|
|
31
|
-
}
|
|
32
|
-
export interface PlatformStat {
|
|
33
|
-
id: StatId;
|
|
34
|
-
apiName: string;
|
|
35
|
-
type: 'int' | 'float';
|
|
36
|
-
value: number;
|
|
37
|
-
defaultValue: number;
|
|
38
|
-
increment?: number;
|
|
39
|
-
}
|
|
40
|
-
export interface RichPresenceData {
|
|
41
|
-
state?: string;
|
|
42
|
-
details?: string;
|
|
43
|
-
largeImageKey?: string;
|
|
44
|
-
largeImageText?: string;
|
|
45
|
-
smallImageKey?: string;
|
|
46
|
-
smallImageText?: string;
|
|
47
|
-
partyId?: string;
|
|
48
|
-
partySize?: number;
|
|
49
|
-
partyMax?: number;
|
|
50
|
-
startTimestamp?: number;
|
|
51
|
-
endTimestamp?: number;
|
|
52
|
-
}
|
|
53
|
-
export interface PlatformFriend {
|
|
54
|
-
id: string;
|
|
55
|
-
name: string;
|
|
56
|
-
avatarUrl?: string;
|
|
57
|
-
onlineStatus: 'online' | 'away' | 'busy' | 'offline';
|
|
58
|
-
inGame: boolean;
|
|
59
|
-
currentGameId?: string;
|
|
60
|
-
lastOnline?: number;
|
|
61
|
-
}
|
|
62
|
-
export interface WorkshopItem {
|
|
63
|
-
id: string;
|
|
64
|
-
title: string;
|
|
65
|
-
description: string;
|
|
66
|
-
previewUrl?: string;
|
|
67
|
-
author: string;
|
|
68
|
-
authorId: string;
|
|
69
|
-
tags: string[];
|
|
70
|
-
rating: number;
|
|
71
|
-
ratingCount: number;
|
|
72
|
-
subscriptions: number;
|
|
73
|
-
createdAt: number;
|
|
74
|
-
updatedAt: number;
|
|
75
|
-
fileSize: number;
|
|
76
|
-
installed: boolean;
|
|
77
|
-
downloadProgress?: number;
|
|
78
|
-
}
|
|
79
|
-
export interface WorkshopQuery {
|
|
80
|
-
type: 'subscribed' | 'popular' | 'recent' | 'trending' | 'search';
|
|
81
|
-
searchText?: string;
|
|
82
|
-
tags?: string[];
|
|
83
|
-
page: number;
|
|
84
|
-
perPage: number;
|
|
85
|
-
}
|
|
86
|
-
export interface CloudSaveFile {
|
|
87
|
-
name: string;
|
|
88
|
-
size: number;
|
|
89
|
-
timestamp: number;
|
|
90
|
-
syncStatus: 'synced' | 'pending' | 'error' | 'conflict';
|
|
91
|
-
}
|
|
92
|
-
export type PlatformEventType = 'initialized' | 'achievement-unlocked' | 'leaderboard-uploaded' | 'leaderboard-downloaded' | 'stat-changed' | 'cloud-conflict' | 'cloud-synced' | 'friend-status-changed' | 'overlay-activated' | 'overlay-deactivated' | 'dlc-installed' | 'screenshot-taken' | 'workshop-subscribed' | 'workshop-unsubscribed' | 'error';
|
|
93
|
-
export interface PlatformEvent {
|
|
94
|
-
type: PlatformEventType;
|
|
95
|
-
timestamp: number;
|
|
96
|
-
data: unknown;
|
|
97
|
-
}
|
|
98
|
-
export type PlatformEventCallback = (event: PlatformEvent) => void;
|
|
99
|
-
export interface SteamConfig {
|
|
100
|
-
appId: string;
|
|
101
|
-
enableOverlay: boolean;
|
|
102
|
-
enableCloudSave: boolean;
|
|
103
|
-
enableRichPresence: boolean;
|
|
104
|
-
enableWorkshop: boolean;
|
|
105
|
-
autoSyncStats: boolean;
|
|
106
|
-
debugMode: boolean;
|
|
107
|
-
}
|
|
108
|
-
export declare const DEFAULT_STEAM_CONFIG: SteamConfig;
|
|
109
|
-
export interface IPlatformAdapter {
|
|
110
|
-
platform: PlatformType;
|
|
111
|
-
initialize(): Promise<boolean>;
|
|
112
|
-
shutdown(): Promise<void>;
|
|
113
|
-
getAchievements(): Promise<PlatformAchievement[]>;
|
|
114
|
-
unlockAchievement(id: AchievementId): Promise<boolean>;
|
|
115
|
-
setAchievementProgress(id: AchievementId, progress: number, max: number): Promise<boolean>;
|
|
116
|
-
clearAchievement(id: AchievementId): Promise<boolean>;
|
|
117
|
-
getStats(): Promise<PlatformStat[]>;
|
|
118
|
-
setStat(id: StatId, value: number): Promise<boolean>;
|
|
119
|
-
incrementStat(id: StatId, amount?: number): Promise<boolean>;
|
|
120
|
-
storeStats(): Promise<boolean>;
|
|
121
|
-
downloadLeaderboard(id: LeaderboardId, start: number, count: number): Promise<LeaderboardEntry[]>;
|
|
122
|
-
downloadLeaderboardAroundUser(id: LeaderboardId, range: number): Promise<LeaderboardEntry[]>;
|
|
123
|
-
uploadLeaderboardScore(id: LeaderboardId, score: number, details?: number[]): Promise<number>;
|
|
124
|
-
cloudSaveExists(filename: string): Promise<boolean>;
|
|
125
|
-
cloudSaveRead(filename: string): Promise<ArrayBuffer | null>;
|
|
126
|
-
cloudSaveWrite(filename: string, data: ArrayBuffer): Promise<boolean>;
|
|
127
|
-
cloudSaveDelete(filename: string): Promise<boolean>;
|
|
128
|
-
cloudSaveList(): Promise<CloudSaveFile[]>;
|
|
129
|
-
setRichPresence(data: RichPresenceData): Promise<void>;
|
|
130
|
-
clearRichPresence(): Promise<void>;
|
|
131
|
-
getFriends(): Promise<PlatformFriend[]>;
|
|
132
|
-
inviteFriend(friendId: string): Promise<boolean>;
|
|
133
|
-
getSubscribedItems(): Promise<WorkshopItem[]>;
|
|
134
|
-
queryWorkshop(query: WorkshopQuery): Promise<{
|
|
135
|
-
items: WorkshopItem[];
|
|
136
|
-
total: number;
|
|
137
|
-
}>;
|
|
138
|
-
subscribeItem(itemId: string): Promise<boolean>;
|
|
139
|
-
unsubscribeItem(itemId: string): Promise<boolean>;
|
|
140
|
-
getItemInstallPath(itemId: string): Promise<string | null>;
|
|
141
|
-
openOverlayToStore(dlcId?: string): void;
|
|
142
|
-
openOverlayToUrl(url: string): void;
|
|
143
|
-
openOverlayToFriend(friendId: string): void;
|
|
144
|
-
takeScreenshot(): void;
|
|
145
|
-
isDlcInstalled(dlcId: string): boolean;
|
|
146
|
-
getInstalledDlcs(): string[];
|
|
147
|
-
getCurrentLanguage(): string;
|
|
148
|
-
getUserId(): string;
|
|
149
|
-
getUserName(): string;
|
|
150
|
-
}
|
|
151
|
-
export declare class MockPlatformAdapter implements IPlatformAdapter {
|
|
152
|
-
platform: PlatformType;
|
|
153
|
-
private achievements;
|
|
154
|
-
private stats;
|
|
155
|
-
private cloudFiles;
|
|
156
|
-
initialize(): Promise<boolean>;
|
|
157
|
-
shutdown(): Promise<void>;
|
|
158
|
-
getAchievements(): Promise<PlatformAchievement[]>;
|
|
159
|
-
unlockAchievement(id: AchievementId): Promise<boolean>;
|
|
160
|
-
setAchievementProgress(id: AchievementId, progress: number, max: number): Promise<boolean>;
|
|
161
|
-
clearAchievement(id: AchievementId): Promise<boolean>;
|
|
162
|
-
getStats(): Promise<PlatformStat[]>;
|
|
163
|
-
setStat(id: StatId, value: number): Promise<boolean>;
|
|
164
|
-
incrementStat(id: StatId, amount?: number): Promise<boolean>;
|
|
165
|
-
storeStats(): Promise<boolean>;
|
|
166
|
-
downloadLeaderboard(): Promise<LeaderboardEntry[]>;
|
|
167
|
-
downloadLeaderboardAroundUser(): Promise<LeaderboardEntry[]>;
|
|
168
|
-
uploadLeaderboardScore(): Promise<number>;
|
|
169
|
-
cloudSaveExists(filename: string): Promise<boolean>;
|
|
170
|
-
cloudSaveRead(filename: string): Promise<ArrayBuffer | null>;
|
|
171
|
-
cloudSaveWrite(filename: string, data: ArrayBuffer): Promise<boolean>;
|
|
172
|
-
cloudSaveDelete(filename: string): Promise<boolean>;
|
|
173
|
-
cloudSaveList(): Promise<CloudSaveFile[]>;
|
|
174
|
-
setRichPresence(): Promise<void>;
|
|
175
|
-
clearRichPresence(): Promise<void>;
|
|
176
|
-
getFriends(): Promise<PlatformFriend[]>;
|
|
177
|
-
inviteFriend(): Promise<boolean>;
|
|
178
|
-
getSubscribedItems(): Promise<WorkshopItem[]>;
|
|
179
|
-
queryWorkshop(): Promise<{
|
|
180
|
-
items: WorkshopItem[];
|
|
181
|
-
total: number;
|
|
182
|
-
}>;
|
|
183
|
-
subscribeItem(): Promise<boolean>;
|
|
184
|
-
unsubscribeItem(): Promise<boolean>;
|
|
185
|
-
getItemInstallPath(): Promise<string | null>;
|
|
186
|
-
openOverlayToStore(): void;
|
|
187
|
-
openOverlayToUrl(url: string): void;
|
|
188
|
-
openOverlayToFriend(): void;
|
|
189
|
-
takeScreenshot(): void;
|
|
190
|
-
isDlcInstalled(): boolean;
|
|
191
|
-
getInstalledDlcs(): string[];
|
|
192
|
-
getCurrentLanguage(): string;
|
|
193
|
-
getUserId(): string;
|
|
194
|
-
getUserName(): string;
|
|
195
|
-
}
|
|
196
|
-
export declare class NiceSteam {
|
|
197
|
-
private config;
|
|
198
|
-
private adapter;
|
|
199
|
-
private initialized;
|
|
200
|
-
private achievementCache;
|
|
201
|
-
private statCache;
|
|
202
|
-
private richPresence;
|
|
203
|
-
private eventListeners;
|
|
204
|
-
constructor(config?: Partial<SteamConfig>, adapter?: IPlatformAdapter);
|
|
205
|
-
on(event: PlatformEventType, callback: PlatformEventCallback): () => void;
|
|
206
|
-
private emit;
|
|
207
|
-
initialize(): Promise<boolean>;
|
|
208
|
-
shutdown(): Promise<void>;
|
|
209
|
-
unlockAchievement(id: AchievementId): Promise<boolean>;
|
|
210
|
-
setAchievementProgress(id: AchievementId, progress: number, max: number): Promise<boolean>;
|
|
211
|
-
isAchievementUnlocked(id: AchievementId): boolean;
|
|
212
|
-
getAchievement(id: AchievementId): PlatformAchievement | undefined;
|
|
213
|
-
getAllAchievements(): PlatformAchievement[];
|
|
214
|
-
getAchievementProgress(): {
|
|
215
|
-
unlocked: number;
|
|
216
|
-
total: number;
|
|
217
|
-
percent: number;
|
|
218
|
-
};
|
|
219
|
-
setStat(id: StatId, value: number): Promise<boolean>;
|
|
220
|
-
incrementStat(id: StatId, amount?: number): Promise<boolean>;
|
|
221
|
-
getStat(id: StatId): number;
|
|
222
|
-
storeStats(): Promise<boolean>;
|
|
223
|
-
getLeaderboard(id: LeaderboardId, start?: number, count?: number): Promise<LeaderboardEntry[]>;
|
|
224
|
-
getLeaderboardAroundUser(id: LeaderboardId, range?: number): Promise<LeaderboardEntry[]>;
|
|
225
|
-
submitScore(id: LeaderboardId, score: number, details?: number[]): Promise<number>;
|
|
226
|
-
cloudSave(filename: string, data: string | object): Promise<boolean>;
|
|
227
|
-
cloudLoad<T = string>(filename: string, parseJson?: boolean): Promise<T | null>;
|
|
228
|
-
cloudDelete(filename: string): Promise<boolean>;
|
|
229
|
-
cloudList(): Promise<CloudSaveFile[]>;
|
|
230
|
-
setRichPresence(data: Partial<RichPresenceData>): Promise<void>;
|
|
231
|
-
clearRichPresence(): Promise<void>;
|
|
232
|
-
getFriends(): Promise<PlatformFriend[]>;
|
|
233
|
-
inviteFriend(friendId: string): Promise<boolean>;
|
|
234
|
-
getSubscribedMods(): Promise<WorkshopItem[]>;
|
|
235
|
-
searchWorkshop(query: WorkshopQuery): Promise<{
|
|
236
|
-
items: WorkshopItem[];
|
|
237
|
-
total: number;
|
|
238
|
-
}>;
|
|
239
|
-
subscribeMod(itemId: string): Promise<boolean>;
|
|
240
|
-
unsubscribeMod(itemId: string): Promise<boolean>;
|
|
241
|
-
getModInstallPath(itemId: string): Promise<string | null>;
|
|
242
|
-
openStore(dlcId?: string): void;
|
|
243
|
-
openUrl(url: string): void;
|
|
244
|
-
openFriendProfile(friendId: string): void;
|
|
245
|
-
isDlcOwned(dlcId: string): boolean;
|
|
246
|
-
getOwnedDlcs(): string[];
|
|
247
|
-
getUserId(): string;
|
|
248
|
-
getUserName(): string;
|
|
249
|
-
getLanguage(): string;
|
|
250
|
-
getPlatform(): PlatformType;
|
|
251
|
-
isInitialized(): boolean;
|
|
252
|
-
takeScreenshot(): void;
|
|
253
|
-
destroy(): void;
|
|
254
|
-
}
|
|
255
|
-
export declare function createSteamSystem(config?: Partial<SteamConfig>, adapter?: IPlatformAdapter): NiceSteam;
|