@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,443 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* NiceScreenshot - Screenshot & Media Capture System
|
|
3
|
-
*
|
|
4
|
-
* Comprehensive screenshot system for capturing, processing, and sharing
|
|
5
|
-
* in-game screenshots with various effects and options.
|
|
6
|
-
*
|
|
7
|
-
* Features:
|
|
8
|
-
* - Screenshot capture
|
|
9
|
-
* - Video recording
|
|
10
|
-
* - GIF creation
|
|
11
|
-
* - Image processing/filters
|
|
12
|
-
* - Watermarking
|
|
13
|
-
* - Metadata embedding
|
|
14
|
-
* - Gallery management
|
|
15
|
-
* - Screenshot mode (hide UI)
|
|
16
|
-
* - Camera positioning
|
|
17
|
-
* - Resolution selection
|
|
18
|
-
* - Format options
|
|
19
|
-
* - Sharing integration
|
|
20
|
-
* - Auto-capture (achievements, kills, etc.)
|
|
21
|
-
*
|
|
22
|
-
* @packageDocumentation
|
|
23
|
-
*/
|
|
24
|
-
import { EventEmitter } from 'events';
|
|
25
|
-
/** Unique screenshot ID */
|
|
26
|
-
export type ScreenshotId = string;
|
|
27
|
-
/** Unique recording ID */
|
|
28
|
-
export type RecordingId = string;
|
|
29
|
-
/** Image format */
|
|
30
|
-
export type ImageFormat = 'png' | 'jpg' | 'webp' | 'gif';
|
|
31
|
-
/** Video format */
|
|
32
|
-
export type VideoFormat = 'webm' | 'mp4' | 'gif';
|
|
33
|
-
/** Screenshot state */
|
|
34
|
-
export type CaptureState = 'idle' | 'capturing' | 'processing' | 'saving' | 'error';
|
|
35
|
-
/** Recording state */
|
|
36
|
-
export type RecordingState = 'idle' | 'recording' | 'paused' | 'processing' | 'saved' | 'error';
|
|
37
|
-
/** Filter type */
|
|
38
|
-
export type FilterType = 'none' | 'grayscale' | 'sepia' | 'vintage' | 'blur' | 'sharpen' | 'brightness' | 'contrast' | 'saturate' | 'hue_rotate' | 'invert' | 'custom';
|
|
39
|
-
/** Resolution preset */
|
|
40
|
-
export type ResolutionPreset = 'native' | '720p' | '1080p' | '1440p' | '4k' | 'ultrawide' | 'custom';
|
|
41
|
-
/** Resolution settings */
|
|
42
|
-
export interface Resolution {
|
|
43
|
-
width: number;
|
|
44
|
-
height: number;
|
|
45
|
-
aspectRatio?: string;
|
|
46
|
-
}
|
|
47
|
-
/** Resolution presets map */
|
|
48
|
-
export declare const RESOLUTION_PRESETS: Record<ResolutionPreset, Resolution | null>;
|
|
49
|
-
/** Capture options */
|
|
50
|
-
export interface CaptureOptions {
|
|
51
|
-
format?: ImageFormat;
|
|
52
|
-
quality?: number;
|
|
53
|
-
resolution?: ResolutionPreset | Resolution;
|
|
54
|
-
hideUI?: boolean;
|
|
55
|
-
hideHUD?: boolean;
|
|
56
|
-
hidePlayers?: boolean;
|
|
57
|
-
hideEffects?: boolean;
|
|
58
|
-
delay?: number;
|
|
59
|
-
filters?: FilterSettings[];
|
|
60
|
-
watermark?: WatermarkSettings;
|
|
61
|
-
metadata?: ScreenshotMetadata;
|
|
62
|
-
filename?: string;
|
|
63
|
-
autoSave?: boolean;
|
|
64
|
-
}
|
|
65
|
-
/** Filter settings */
|
|
66
|
-
export interface FilterSettings {
|
|
67
|
-
type: FilterType;
|
|
68
|
-
intensity?: number;
|
|
69
|
-
params?: Record<string, number>;
|
|
70
|
-
}
|
|
71
|
-
/** Watermark settings */
|
|
72
|
-
export interface WatermarkSettings {
|
|
73
|
-
enabled: boolean;
|
|
74
|
-
text?: string;
|
|
75
|
-
image?: string;
|
|
76
|
-
position: 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right' | 'center';
|
|
77
|
-
opacity: number;
|
|
78
|
-
size: number;
|
|
79
|
-
margin: number;
|
|
80
|
-
}
|
|
81
|
-
/** Screenshot metadata */
|
|
82
|
-
export interface ScreenshotMetadata {
|
|
83
|
-
title?: string;
|
|
84
|
-
description?: string;
|
|
85
|
-
tags?: string[];
|
|
86
|
-
location?: string;
|
|
87
|
-
character?: string;
|
|
88
|
-
gameMode?: string;
|
|
89
|
-
timestamp?: number;
|
|
90
|
-
gameVersion?: string;
|
|
91
|
-
playerName?: string;
|
|
92
|
-
customData?: Record<string, unknown>;
|
|
93
|
-
}
|
|
94
|
-
/** Screenshot data */
|
|
95
|
-
export interface Screenshot {
|
|
96
|
-
id: ScreenshotId;
|
|
97
|
-
dataUrl: string;
|
|
98
|
-
blob?: Blob;
|
|
99
|
-
width: number;
|
|
100
|
-
height: number;
|
|
101
|
-
format: ImageFormat;
|
|
102
|
-
size: number;
|
|
103
|
-
metadata: ScreenshotMetadata;
|
|
104
|
-
capturedAt: number;
|
|
105
|
-
filters: FilterSettings[];
|
|
106
|
-
isFavorite: boolean;
|
|
107
|
-
isShared: boolean;
|
|
108
|
-
filePath?: string;
|
|
109
|
-
}
|
|
110
|
-
/** Recording options */
|
|
111
|
-
export interface RecordingOptions {
|
|
112
|
-
format?: VideoFormat;
|
|
113
|
-
quality?: 'low' | 'medium' | 'high' | 'ultra';
|
|
114
|
-
fps?: number;
|
|
115
|
-
resolution?: ResolutionPreset | Resolution;
|
|
116
|
-
maxDuration?: number;
|
|
117
|
-
includeAudio?: boolean;
|
|
118
|
-
hideUI?: boolean;
|
|
119
|
-
bitrate?: number;
|
|
120
|
-
}
|
|
121
|
-
/** Recording data */
|
|
122
|
-
export interface Recording {
|
|
123
|
-
id: RecordingId;
|
|
124
|
-
state: RecordingState;
|
|
125
|
-
format: VideoFormat;
|
|
126
|
-
duration: number;
|
|
127
|
-
width: number;
|
|
128
|
-
height: number;
|
|
129
|
-
fps: number;
|
|
130
|
-
size: number;
|
|
131
|
-
startedAt: number;
|
|
132
|
-
endedAt?: number;
|
|
133
|
-
blob?: Blob;
|
|
134
|
-
dataUrl?: string;
|
|
135
|
-
filePath?: string;
|
|
136
|
-
metadata?: ScreenshotMetadata;
|
|
137
|
-
}
|
|
138
|
-
/** Gallery item */
|
|
139
|
-
export interface GalleryItem {
|
|
140
|
-
id: string;
|
|
141
|
-
type: 'screenshot' | 'recording' | 'gif';
|
|
142
|
-
thumbnailUrl: string;
|
|
143
|
-
fullUrl?: string;
|
|
144
|
-
width: number;
|
|
145
|
-
height: number;
|
|
146
|
-
size: number;
|
|
147
|
-
createdAt: number;
|
|
148
|
-
metadata?: ScreenshotMetadata;
|
|
149
|
-
isFavorite: boolean;
|
|
150
|
-
}
|
|
151
|
-
/** Screenshot mode settings */
|
|
152
|
-
export interface ScreenshotModeSettings {
|
|
153
|
-
enabled: boolean;
|
|
154
|
-
hideUI: boolean;
|
|
155
|
-
hideHUD: boolean;
|
|
156
|
-
hidePlayers: boolean;
|
|
157
|
-
hideEffects: boolean;
|
|
158
|
-
hideNames: boolean;
|
|
159
|
-
customFOV?: number;
|
|
160
|
-
depthOfField?: DepthOfFieldSettings;
|
|
161
|
-
freeCam?: FreeCamSettings;
|
|
162
|
-
}
|
|
163
|
-
/** Depth of field settings */
|
|
164
|
-
export interface DepthOfFieldSettings {
|
|
165
|
-
enabled: boolean;
|
|
166
|
-
focusDistance: number;
|
|
167
|
-
aperture: number;
|
|
168
|
-
focalLength: number;
|
|
169
|
-
}
|
|
170
|
-
/** Free camera settings */
|
|
171
|
-
export interface FreeCamSettings {
|
|
172
|
-
enabled: boolean;
|
|
173
|
-
moveSpeed: number;
|
|
174
|
-
rotateSpeed: number;
|
|
175
|
-
position: {
|
|
176
|
-
x: number;
|
|
177
|
-
y: number;
|
|
178
|
-
z: number;
|
|
179
|
-
};
|
|
180
|
-
rotation: {
|
|
181
|
-
pitch: number;
|
|
182
|
-
yaw: number;
|
|
183
|
-
roll: number;
|
|
184
|
-
};
|
|
185
|
-
}
|
|
186
|
-
/** Auto-capture trigger */
|
|
187
|
-
export interface AutoCaptureTrigger {
|
|
188
|
-
id: string;
|
|
189
|
-
name: string;
|
|
190
|
-
eventType: string;
|
|
191
|
-
enabled: boolean;
|
|
192
|
-
delay?: number;
|
|
193
|
-
options?: Partial<CaptureOptions>;
|
|
194
|
-
}
|
|
195
|
-
/** Share target */
|
|
196
|
-
export interface ShareTarget {
|
|
197
|
-
id: string;
|
|
198
|
-
name: string;
|
|
199
|
-
icon?: string;
|
|
200
|
-
type: 'social' | 'cloud' | 'local' | 'clipboard';
|
|
201
|
-
}
|
|
202
|
-
/** Share result */
|
|
203
|
-
export interface ShareResult {
|
|
204
|
-
success: boolean;
|
|
205
|
-
target: string;
|
|
206
|
-
url?: string;
|
|
207
|
-
error?: string;
|
|
208
|
-
}
|
|
209
|
-
/** Screenshot statistics */
|
|
210
|
-
export interface ScreenshotStatistics {
|
|
211
|
-
totalCaptures: number;
|
|
212
|
-
totalRecordings: number;
|
|
213
|
-
totalSize: number;
|
|
214
|
-
favoriteCount: number;
|
|
215
|
-
sharedCount: number;
|
|
216
|
-
averageSize: number;
|
|
217
|
-
formatCounts: Record<ImageFormat, number>;
|
|
218
|
-
}
|
|
219
|
-
/** Screenshot event types */
|
|
220
|
-
export type ScreenshotEventType = 'capture_started' | 'capture_completed' | 'capture_failed' | 'recording_started' | 'recording_stopped' | 'recording_paused' | 'recording_resumed' | 'recording_completed' | 'recording_failed' | 'screenshot_saved' | 'screenshot_deleted' | 'screenshot_shared' | 'mode_entered' | 'mode_exited' | 'filter_applied' | 'gallery_updated';
|
|
221
|
-
/** Screenshot event data */
|
|
222
|
-
export interface ScreenshotEvent {
|
|
223
|
-
type: ScreenshotEventType;
|
|
224
|
-
timestamp: number;
|
|
225
|
-
screenshotId?: ScreenshotId;
|
|
226
|
-
recordingId?: RecordingId;
|
|
227
|
-
data?: unknown;
|
|
228
|
-
error?: string;
|
|
229
|
-
}
|
|
230
|
-
/** Screenshot event callback */
|
|
231
|
-
export type ScreenshotEventCallback = (event: ScreenshotEvent) => void;
|
|
232
|
-
/** Screenshot system configuration */
|
|
233
|
-
export interface ScreenshotConfig {
|
|
234
|
-
defaultFormat: ImageFormat;
|
|
235
|
-
defaultQuality: number;
|
|
236
|
-
defaultResolution: ResolutionPreset;
|
|
237
|
-
screenshotsDirectory: string;
|
|
238
|
-
recordingsDirectory: string;
|
|
239
|
-
maxGallerySize: number;
|
|
240
|
-
generateThumbnails: boolean;
|
|
241
|
-
thumbnailSize: number;
|
|
242
|
-
autoSaveEnabled: boolean;
|
|
243
|
-
captureSound: string | null;
|
|
244
|
-
maxRecordingDuration: number;
|
|
245
|
-
recordingFps: number;
|
|
246
|
-
watermarkEnabled: boolean;
|
|
247
|
-
defaultWatermark: WatermarkSettings;
|
|
248
|
-
}
|
|
249
|
-
/** Default configuration */
|
|
250
|
-
export declare const DEFAULT_SCREENSHOT_CONFIG: ScreenshotConfig;
|
|
251
|
-
/**
|
|
252
|
-
* Screenshot and media capture system
|
|
253
|
-
*/
|
|
254
|
-
export declare class NiceScreenshot extends EventEmitter {
|
|
255
|
-
private config;
|
|
256
|
-
private screenshots;
|
|
257
|
-
private recordings;
|
|
258
|
-
private gallery;
|
|
259
|
-
private captureState;
|
|
260
|
-
private recordingState;
|
|
261
|
-
private currentRecording?;
|
|
262
|
-
private modeSettings;
|
|
263
|
-
private autoCaptureTriggers;
|
|
264
|
-
private idCounter;
|
|
265
|
-
private recordingStartTime;
|
|
266
|
-
private mediaRecorder?;
|
|
267
|
-
private recordedChunks;
|
|
268
|
-
private statistics;
|
|
269
|
-
constructor(config?: Partial<ScreenshotConfig>);
|
|
270
|
-
/**
|
|
271
|
-
* Generate unique ID
|
|
272
|
-
*/
|
|
273
|
-
private generateId;
|
|
274
|
-
/**
|
|
275
|
-
* Emit screenshot event
|
|
276
|
-
*/
|
|
277
|
-
private emitEvent;
|
|
278
|
-
/**
|
|
279
|
-
* Capture screenshot
|
|
280
|
-
*/
|
|
281
|
-
capture(source: HTMLCanvasElement | HTMLElement | string, options?: CaptureOptions): Promise<Screenshot | undefined>;
|
|
282
|
-
/**
|
|
283
|
-
* Apply filters to context
|
|
284
|
-
*/
|
|
285
|
-
private applyFilters;
|
|
286
|
-
/**
|
|
287
|
-
* Apply watermark
|
|
288
|
-
*/
|
|
289
|
-
private applyWatermark;
|
|
290
|
-
/**
|
|
291
|
-
* Load image
|
|
292
|
-
*/
|
|
293
|
-
private loadImage;
|
|
294
|
-
/**
|
|
295
|
-
* Generate thumbnail
|
|
296
|
-
*/
|
|
297
|
-
private generateThumbnail;
|
|
298
|
-
/**
|
|
299
|
-
* Get MIME type for format
|
|
300
|
-
*/
|
|
301
|
-
private getMimeType;
|
|
302
|
-
/**
|
|
303
|
-
* Convert data URL to blob
|
|
304
|
-
*/
|
|
305
|
-
private dataUrlToBlob;
|
|
306
|
-
/**
|
|
307
|
-
* Delay helper
|
|
308
|
-
*/
|
|
309
|
-
private delay;
|
|
310
|
-
/**
|
|
311
|
-
* Start recording
|
|
312
|
-
*/
|
|
313
|
-
startRecording(source: HTMLCanvasElement | MediaStream, options?: RecordingOptions): Promise<RecordingId | undefined>;
|
|
314
|
-
/**
|
|
315
|
-
* Get video MIME type
|
|
316
|
-
*/
|
|
317
|
-
private getVideoMimeType;
|
|
318
|
-
/**
|
|
319
|
-
* Stop recording
|
|
320
|
-
*/
|
|
321
|
-
stopRecording(): void;
|
|
322
|
-
/**
|
|
323
|
-
* Pause recording
|
|
324
|
-
*/
|
|
325
|
-
pauseRecording(): void;
|
|
326
|
-
/**
|
|
327
|
-
* Resume recording
|
|
328
|
-
*/
|
|
329
|
-
resumeRecording(): void;
|
|
330
|
-
/**
|
|
331
|
-
* Process completed recording
|
|
332
|
-
*/
|
|
333
|
-
private processRecording;
|
|
334
|
-
/**
|
|
335
|
-
* Get recording state
|
|
336
|
-
*/
|
|
337
|
-
getRecordingState(): RecordingState;
|
|
338
|
-
/**
|
|
339
|
-
* Get current recording
|
|
340
|
-
*/
|
|
341
|
-
getCurrentRecording(): Recording | undefined;
|
|
342
|
-
/**
|
|
343
|
-
* Get recording duration
|
|
344
|
-
*/
|
|
345
|
-
getRecordingDuration(): number;
|
|
346
|
-
/**
|
|
347
|
-
* Add item to gallery
|
|
348
|
-
*/
|
|
349
|
-
private addToGallery;
|
|
350
|
-
/**
|
|
351
|
-
* Get gallery items
|
|
352
|
-
*/
|
|
353
|
-
getGallery(type?: 'screenshot' | 'recording' | 'gif', limit?: number): GalleryItem[];
|
|
354
|
-
/**
|
|
355
|
-
* Get screenshot by ID
|
|
356
|
-
*/
|
|
357
|
-
getScreenshot(id: ScreenshotId): Screenshot | undefined;
|
|
358
|
-
/**
|
|
359
|
-
* Get recording by ID
|
|
360
|
-
*/
|
|
361
|
-
getRecording(id: RecordingId): Recording | undefined;
|
|
362
|
-
/**
|
|
363
|
-
* Delete screenshot
|
|
364
|
-
*/
|
|
365
|
-
deleteScreenshot(id: ScreenshotId): boolean;
|
|
366
|
-
/**
|
|
367
|
-
* Toggle favorite
|
|
368
|
-
*/
|
|
369
|
-
toggleFavorite(id: string): boolean;
|
|
370
|
-
/**
|
|
371
|
-
* Get favorites
|
|
372
|
-
*/
|
|
373
|
-
getFavorites(): GalleryItem[];
|
|
374
|
-
/**
|
|
375
|
-
* Enter screenshot mode
|
|
376
|
-
*/
|
|
377
|
-
enterScreenshotMode(settings?: Partial<ScreenshotModeSettings>): void;
|
|
378
|
-
/**
|
|
379
|
-
* Exit screenshot mode
|
|
380
|
-
*/
|
|
381
|
-
exitScreenshotMode(): void;
|
|
382
|
-
/**
|
|
383
|
-
* Get mode settings
|
|
384
|
-
*/
|
|
385
|
-
getModeSettings(): ScreenshotModeSettings;
|
|
386
|
-
/**
|
|
387
|
-
* Update mode settings
|
|
388
|
-
*/
|
|
389
|
-
updateModeSettings(settings: Partial<ScreenshotModeSettings>): void;
|
|
390
|
-
/**
|
|
391
|
-
* Is in screenshot mode
|
|
392
|
-
*/
|
|
393
|
-
isInScreenshotMode(): boolean;
|
|
394
|
-
/**
|
|
395
|
-
* Register auto-capture trigger
|
|
396
|
-
*/
|
|
397
|
-
registerAutoCapture(trigger: AutoCaptureTrigger): void;
|
|
398
|
-
/**
|
|
399
|
-
* Unregister auto-capture trigger
|
|
400
|
-
*/
|
|
401
|
-
unregisterAutoCapture(triggerId: string): boolean;
|
|
402
|
-
/**
|
|
403
|
-
* Get auto-capture triggers
|
|
404
|
-
*/
|
|
405
|
-
getAutoCaptureTriggers(): AutoCaptureTrigger[];
|
|
406
|
-
/**
|
|
407
|
-
* Trigger auto-capture
|
|
408
|
-
*/
|
|
409
|
-
triggerAutoCapture(eventType: string, source: HTMLCanvasElement): Promise<Screenshot | undefined>;
|
|
410
|
-
/**
|
|
411
|
-
* Save screenshot to file
|
|
412
|
-
*/
|
|
413
|
-
saveScreenshot(id: ScreenshotId, filename?: string): Promise<boolean>;
|
|
414
|
-
/**
|
|
415
|
-
* Share screenshot
|
|
416
|
-
*/
|
|
417
|
-
shareScreenshot(id: ScreenshotId, target: ShareTarget): Promise<ShareResult>;
|
|
418
|
-
/**
|
|
419
|
-
* Copy to clipboard
|
|
420
|
-
*/
|
|
421
|
-
copyToClipboard(id: ScreenshotId): Promise<boolean>;
|
|
422
|
-
/**
|
|
423
|
-
* Get statistics
|
|
424
|
-
*/
|
|
425
|
-
getStatistics(): ScreenshotStatistics;
|
|
426
|
-
/**
|
|
427
|
-
* Update average size
|
|
428
|
-
*/
|
|
429
|
-
private updateAverageSize;
|
|
430
|
-
/**
|
|
431
|
-
* Clear gallery
|
|
432
|
-
*/
|
|
433
|
-
clearGallery(): void;
|
|
434
|
-
/**
|
|
435
|
-
* Destroy screenshot system
|
|
436
|
-
*/
|
|
437
|
-
destroy(): void;
|
|
438
|
-
}
|
|
439
|
-
/**
|
|
440
|
-
* Create screenshot system instance
|
|
441
|
-
*/
|
|
442
|
-
export declare function createScreenshotSystem(config?: Partial<ScreenshotConfig>): NiceScreenshot;
|
|
443
|
-
export default NiceScreenshot;
|
|
@@ -1,239 +0,0 @@
|
|
|
1
|
-
export type ScrollId = string;
|
|
2
|
-
export type TomeId = string;
|
|
3
|
-
export type LanguageId = string;
|
|
4
|
-
export type InkId = string;
|
|
5
|
-
export type PaperId = string;
|
|
6
|
-
export type ScrollType = 'spell' | 'portal' | 'summon' | 'buff' | 'utility' | 'quest' | 'map' | 'recipe';
|
|
7
|
-
export type TomeType = 'spellbook' | 'lore' | 'skill' | 'bestiary' | 'herbarium' | 'atlas' | 'collection';
|
|
8
|
-
export interface ScrollDefinition {
|
|
9
|
-
id: ScrollId;
|
|
10
|
-
name: string;
|
|
11
|
-
description: string;
|
|
12
|
-
type: ScrollType;
|
|
13
|
-
tier: number;
|
|
14
|
-
languageRequired?: LanguageId;
|
|
15
|
-
scribeLevelRequired: number;
|
|
16
|
-
inkRequired: InkId;
|
|
17
|
-
inkAmount: number;
|
|
18
|
-
paperRequired: PaperId;
|
|
19
|
-
craftTime: number;
|
|
20
|
-
effect: ScrollEffect;
|
|
21
|
-
charges: number;
|
|
22
|
-
sellValue: number;
|
|
23
|
-
tradeable: boolean;
|
|
24
|
-
icon: string;
|
|
25
|
-
rarity: 'common' | 'uncommon' | 'rare' | 'epic' | 'legendary';
|
|
26
|
-
}
|
|
27
|
-
export interface ScrollEffect {
|
|
28
|
-
type: 'cast_spell' | 'teleport' | 'summon' | 'buff' | 'reveal' | 'learn' | 'custom';
|
|
29
|
-
spellId?: string;
|
|
30
|
-
spellPower?: number;
|
|
31
|
-
destination?: string;
|
|
32
|
-
creatureId?: string;
|
|
33
|
-
duration?: number;
|
|
34
|
-
buffId?: string;
|
|
35
|
-
buffDuration?: number;
|
|
36
|
-
recipeId?: string;
|
|
37
|
-
abilityId?: string;
|
|
38
|
-
effectData?: Record<string, unknown>;
|
|
39
|
-
}
|
|
40
|
-
export interface TomeDefinition {
|
|
41
|
-
id: TomeId;
|
|
42
|
-
name: string;
|
|
43
|
-
description: string;
|
|
44
|
-
type: TomeType;
|
|
45
|
-
pages: TomePage[];
|
|
46
|
-
maxPages: number;
|
|
47
|
-
tier: number;
|
|
48
|
-
languageRequired?: LanguageId;
|
|
49
|
-
boundToPlayer: boolean;
|
|
50
|
-
expandable: boolean;
|
|
51
|
-
passiveBonuses?: TomeBonus[];
|
|
52
|
-
icon: string;
|
|
53
|
-
rarity: 'common' | 'uncommon' | 'rare' | 'epic' | 'legendary';
|
|
54
|
-
}
|
|
55
|
-
export interface TomePage {
|
|
56
|
-
index: number;
|
|
57
|
-
title: string;
|
|
58
|
-
content: string;
|
|
59
|
-
linkedSpell?: string;
|
|
60
|
-
linkedLore?: string;
|
|
61
|
-
linkedCreature?: string;
|
|
62
|
-
linkedLocation?: string;
|
|
63
|
-
unlockCondition?: string;
|
|
64
|
-
unlocked: boolean;
|
|
65
|
-
}
|
|
66
|
-
export interface TomeBonus {
|
|
67
|
-
stat: string;
|
|
68
|
-
value: number;
|
|
69
|
-
isPercentage: boolean;
|
|
70
|
-
condition?: string;
|
|
71
|
-
}
|
|
72
|
-
export interface LanguageDefinition {
|
|
73
|
-
id: LanguageId;
|
|
74
|
-
name: string;
|
|
75
|
-
description: string;
|
|
76
|
-
difficulty: number;
|
|
77
|
-
learningMethod: 'study' | 'immersion' | 'magical' | 'artifact';
|
|
78
|
-
prerequisiteLanguages?: LanguageId[];
|
|
79
|
-
scribeLevelRequired: number;
|
|
80
|
-
unlocksScrolls: ScrollId[];
|
|
81
|
-
unlocksTomes: TomeId[];
|
|
82
|
-
origin: string;
|
|
83
|
-
speakers: string[];
|
|
84
|
-
}
|
|
85
|
-
export interface InkDefinition {
|
|
86
|
-
id: InkId;
|
|
87
|
-
name: string;
|
|
88
|
-
description: string;
|
|
89
|
-
tier: number;
|
|
90
|
-
color: string;
|
|
91
|
-
magical: boolean;
|
|
92
|
-
ingredients: Record<string, number>;
|
|
93
|
-
craftTime: number;
|
|
94
|
-
sellValue: number;
|
|
95
|
-
}
|
|
96
|
-
export interface PaperDefinition {
|
|
97
|
-
id: PaperId;
|
|
98
|
-
name: string;
|
|
99
|
-
description: string;
|
|
100
|
-
tier: number;
|
|
101
|
-
material: 'parchment' | 'vellum' | 'papyrus' | 'silk' | 'magical' | 'dragon';
|
|
102
|
-
durability: number;
|
|
103
|
-
enchantSlots: number;
|
|
104
|
-
sellValue: number;
|
|
105
|
-
}
|
|
106
|
-
export interface PlayerScribeData {
|
|
107
|
-
playerId: string;
|
|
108
|
-
scribeLevel: number;
|
|
109
|
-
scribeXP: number;
|
|
110
|
-
inks: Map<InkId, number>;
|
|
111
|
-
papers: Map<PaperId, number>;
|
|
112
|
-
scrolls: Map<ScrollId, PlayerScroll[]>;
|
|
113
|
-
tomes: Map<TomeId, PlayerTome>;
|
|
114
|
-
equippedTome?: TomeId;
|
|
115
|
-
knownLanguages: Set<LanguageId>;
|
|
116
|
-
languageProgress: Map<LanguageId, number>;
|
|
117
|
-
scrollsCrafted: number;
|
|
118
|
-
scrollsUsed: number;
|
|
119
|
-
tomesCollected: number;
|
|
120
|
-
pagesUnlocked: number;
|
|
121
|
-
}
|
|
122
|
-
export interface PlayerScroll {
|
|
123
|
-
id: string;
|
|
124
|
-
scrollId: ScrollId;
|
|
125
|
-
charges: number;
|
|
126
|
-
maxCharges: number;
|
|
127
|
-
enchantments?: string[];
|
|
128
|
-
createdAt: number;
|
|
129
|
-
}
|
|
130
|
-
export interface PlayerTome {
|
|
131
|
-
tomeId: TomeId;
|
|
132
|
-
unlockedPages: Set<number>;
|
|
133
|
-
notes: Map<number, string>;
|
|
134
|
-
bookmarks: Set<number>;
|
|
135
|
-
completionPercent: number;
|
|
136
|
-
acquiredAt: number;
|
|
137
|
-
}
|
|
138
|
-
export interface ScribeCraftResult {
|
|
139
|
-
success: boolean;
|
|
140
|
-
scroll?: PlayerScroll;
|
|
141
|
-
xpGained: number;
|
|
142
|
-
qualityBonus?: number;
|
|
143
|
-
criticalSuccess?: boolean;
|
|
144
|
-
}
|
|
145
|
-
export type ScribeEventType = 'scroll-crafted' | 'scroll-used' | 'scroll-enchanted' | 'tome-acquired' | 'page-unlocked' | 'tome-equipped' | 'language-learned' | 'language-progress' | 'scribe-level-up' | 'ink-crafted';
|
|
146
|
-
export interface ScribeEvent {
|
|
147
|
-
type: ScribeEventType;
|
|
148
|
-
timestamp: number;
|
|
149
|
-
data?: unknown;
|
|
150
|
-
}
|
|
151
|
-
export type ScribeEventCallback = (event: ScribeEvent) => void;
|
|
152
|
-
export interface ScribeConfig {
|
|
153
|
-
maxScrollsPerType: number;
|
|
154
|
-
maxTomes: number;
|
|
155
|
-
maxLanguages: number;
|
|
156
|
-
xpPerLevel: number;
|
|
157
|
-
maxLevel: number;
|
|
158
|
-
languageXPRequired: number;
|
|
159
|
-
storageKey: string;
|
|
160
|
-
}
|
|
161
|
-
export declare const DEFAULT_SCRIBE_CONFIG: ScribeConfig;
|
|
162
|
-
export declare class NiceScribe {
|
|
163
|
-
private config;
|
|
164
|
-
private scrolls;
|
|
165
|
-
private tomes;
|
|
166
|
-
private languages;
|
|
167
|
-
private inks;
|
|
168
|
-
private papers;
|
|
169
|
-
private players;
|
|
170
|
-
private eventListeners;
|
|
171
|
-
constructor(config?: Partial<ScribeConfig>);
|
|
172
|
-
on(event: ScribeEventType, callback: ScribeEventCallback): () => void;
|
|
173
|
-
private emit;
|
|
174
|
-
registerScroll(scroll: ScrollDefinition): void;
|
|
175
|
-
registerTome(tome: TomeDefinition): void;
|
|
176
|
-
registerLanguage(language: LanguageDefinition): void;
|
|
177
|
-
registerInk(ink: InkDefinition): void;
|
|
178
|
-
registerPaper(paper: PaperDefinition): void;
|
|
179
|
-
getPlayer(playerId: string): PlayerScribeData;
|
|
180
|
-
private createPlayerData;
|
|
181
|
-
addInk(playerId: string, inkId: InkId, count?: number): boolean;
|
|
182
|
-
removeInk(playerId: string, inkId: InkId, count?: number): boolean;
|
|
183
|
-
addPaper(playerId: string, paperId: PaperId, count?: number): boolean;
|
|
184
|
-
removePaper(playerId: string, paperId: PaperId, count?: number): boolean;
|
|
185
|
-
getInkCount(playerId: string, inkId: InkId): number;
|
|
186
|
-
getPaperCount(playerId: string, paperId: PaperId): number;
|
|
187
|
-
canCraftScroll(playerId: string, scrollId: ScrollId): boolean;
|
|
188
|
-
craftScroll(playerId: string, scrollId: ScrollId): ScribeCraftResult;
|
|
189
|
-
useScroll(playerId: string, scrollInstanceId: string): ScrollEffect | null;
|
|
190
|
-
getPlayerScrolls(playerId: string, scrollId?: ScrollId): PlayerScroll[];
|
|
191
|
-
acquireTome(playerId: string, tomeId: TomeId): boolean;
|
|
192
|
-
private updateTomeCompletion;
|
|
193
|
-
equipTome(playerId: string, tomeId: TomeId | undefined): boolean;
|
|
194
|
-
unlockPage(playerId: string, tomeId: TomeId, pageIndex: number): boolean;
|
|
195
|
-
addBookmark(playerId: string, tomeId: TomeId, pageIndex: number): boolean;
|
|
196
|
-
removeBookmark(playerId: string, tomeId: TomeId, pageIndex: number): boolean;
|
|
197
|
-
addNote(playerId: string, tomeId: TomeId, pageIndex: number, note: string): boolean;
|
|
198
|
-
getPlayerTome(playerId: string, tomeId: TomeId): {
|
|
199
|
-
playerTome: PlayerTome;
|
|
200
|
-
definition: TomeDefinition;
|
|
201
|
-
} | null;
|
|
202
|
-
getEquippedTomeBonuses(playerId: string): TomeBonus[];
|
|
203
|
-
knowsLanguage(playerId: string, languageId: LanguageId): boolean;
|
|
204
|
-
canLearnLanguage(playerId: string, languageId: LanguageId): boolean;
|
|
205
|
-
addLanguageProgress(playerId: string, languageId: LanguageId, amount: number): boolean;
|
|
206
|
-
getLanguageProgress(playerId: string, languageId: LanguageId): {
|
|
207
|
-
progress: number;
|
|
208
|
-
required: number;
|
|
209
|
-
percent: number;
|
|
210
|
-
};
|
|
211
|
-
getKnownLanguages(playerId: string): LanguageDefinition[];
|
|
212
|
-
addScribeXP(playerId: string, xp: number): void;
|
|
213
|
-
getXPForLevel(level: number): number;
|
|
214
|
-
getScroll(id: ScrollId): ScrollDefinition | undefined;
|
|
215
|
-
getAllScrolls(): ScrollDefinition[];
|
|
216
|
-
getAvailableScrolls(playerId: string): ScrollDefinition[];
|
|
217
|
-
getTome(id: TomeId): TomeDefinition | undefined;
|
|
218
|
-
getAllTomes(): TomeDefinition[];
|
|
219
|
-
getLanguage(id: LanguageId): LanguageDefinition | undefined;
|
|
220
|
-
getAllLanguages(): LanguageDefinition[];
|
|
221
|
-
getInk(id: InkId): InkDefinition | undefined;
|
|
222
|
-
getPaper(id: PaperId): PaperDefinition | undefined;
|
|
223
|
-
getStats(playerId: string): {
|
|
224
|
-
level: number;
|
|
225
|
-
xp: number;
|
|
226
|
-
xpNeeded: number;
|
|
227
|
-
scrollsCrafted: number;
|
|
228
|
-
scrollsUsed: number;
|
|
229
|
-
tomesCollected: number;
|
|
230
|
-
tomeCompletion: number;
|
|
231
|
-
languagesKnown: number;
|
|
232
|
-
pagesUnlocked: number;
|
|
233
|
-
};
|
|
234
|
-
save(): void;
|
|
235
|
-
load(): void;
|
|
236
|
-
reset(): void;
|
|
237
|
-
destroy(): void;
|
|
238
|
-
}
|
|
239
|
-
export declare function createScribeSystem(config?: Partial<ScribeConfig>): NiceScribe;
|