@kbve/laser 0.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/README.md +11 -0
  2. package/package.json +43 -0
  3. package/src/index.d.ts +17 -0
  4. package/src/index.js +34 -0
  5. package/src/index.js.map +1 -0
  6. package/src/lib/animations/TypewriterComponent.d.ts +8 -0
  7. package/src/lib/animations/TypewriterComponent.js +53 -0
  8. package/src/lib/animations/TypewriterComponent.js.map +1 -0
  9. package/src/lib/eventhandler.d.ts +31 -0
  10. package/src/lib/eventhandler.js +45 -0
  11. package/src/lib/eventhandler.js.map +1 -0
  12. package/src/lib/icon/CollapseIcon.d.ts +4 -0
  13. package/src/lib/icon/CollapseIcon.js +10 -0
  14. package/src/lib/icon/CollapseIcon.js.map +1 -0
  15. package/src/lib/icon/ExpandIcon.d.ts +4 -0
  16. package/src/lib/icon/ExpandIcon.js +10 -0
  17. package/src/lib/icon/ExpandIcon.js.map +1 -0
  18. package/src/lib/laser.d.ts +1 -0
  19. package/src/lib/laser.js +8 -0
  20. package/src/lib/laser.js.map +1 -0
  21. package/src/lib/localdb.d.ts +55 -0
  22. package/src/lib/localdb.js +591 -0
  23. package/src/lib/localdb.js.map +1 -0
  24. package/src/lib/minigame/dice/MinigameDice.d.ts +4 -0
  25. package/src/lib/minigame/dice/MinigameDice.js +85 -0
  26. package/src/lib/minigame/dice/MinigameDice.js.map +1 -0
  27. package/src/lib/phaser/monster/bird.d.ts +7 -0
  28. package/src/lib/phaser/monster/bird.js +44 -0
  29. package/src/lib/phaser/monster/bird.js.map +1 -0
  30. package/src/lib/phaser/npc/chatbubble.d.ts +10 -0
  31. package/src/lib/phaser/npc/chatbubble.js +78 -0
  32. package/src/lib/phaser/npc/chatbubble.js.map +1 -0
  33. package/src/lib/phaser/npc/npcdatabase.d.ts +56 -0
  34. package/src/lib/phaser/npc/npcdatabase.js +497 -0
  35. package/src/lib/phaser/npc/npcdatabase.js.map +1 -0
  36. package/src/lib/phaser/npc/npchandler.d.ts +20 -0
  37. package/src/lib/phaser/npc/npchandler.js +114 -0
  38. package/src/lib/phaser/npc/npchandler.js.map +1 -0
  39. package/src/lib/phaser/npc/tooltipmenu.d.ts +17 -0
  40. package/src/lib/phaser/npc/tooltipmenu.js +68 -0
  41. package/src/lib/phaser/npc/tooltipmenu.js.map +1 -0
  42. package/src/lib/phaser/player/playercontroller.d.ts +24 -0
  43. package/src/lib/phaser/player/playercontroller.js +219 -0
  44. package/src/lib/phaser/player/playercontroller.js.map +1 -0
  45. package/src/lib/quadtree.d.ts +37 -0
  46. package/src/lib/quadtree.js +123 -0
  47. package/src/lib/quadtree.js.map +1 -0
  48. package/src/lib/utils/debug.d.ts +8 -0
  49. package/src/lib/utils/debug.js +46 -0
  50. package/src/lib/utils/debug.js.map +1 -0
  51. package/src/lib/utils/ulid.d.ts +1 -0
  52. package/src/lib/utils/ulid.js +38 -0
  53. package/src/lib/utils/ulid.js.map +1 -0
  54. package/src/types.d.ts +355 -0
  55. package/src/types.js +9 -0
  56. package/src/types.js.map +1 -0
@@ -0,0 +1,591 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.setGameMode = exports.updateMinigameState = exports.notificationType = exports.getActionEvents = exports.applyConsumableEffects = exports.handleBoostExpiry = exports.getEffectiveStats = exports.removeStatBoost = exports.addStatBoost = exports.applyImmediateEffects = exports.increasePlayerEnergy = exports.decreasePlayerEnergy = exports.increasePlayerMana = exports.decreasePlayerMana = exports.increasePlayerHealth = exports.decreasePlayerHealth = exports.setPlayerStat = exports.updatePlayerStats = exports.isPlayerResting = exports.isPlayerDead = exports.isPlayerInCombat = exports.updatePlayerState = exports.removeItemFromBackpack = exports.unequipItem = exports.equipItem = exports.createAndAddItemToBackpack = exports.getItemDetails = exports.addItemToBackpack = exports.queryItemDB = exports.reloadItemDB = exports.setUserSetting = exports.getUserSetting = exports.minigameState = exports.settings = exports.itemDB = exports.notificationsStore = exports.itemStore = exports.quest = exports.playerData = exports.createPersistentAtom = exports.removeItemFromStore = exports.addItemToStore = exports.removeJournal = exports.updateJournal = exports.addJournal = exports.removeTask = exports.updateTask = exports.addTask = exports.completeTask = exports.initialMinigameState = void 0;
4
+ exports.setRollingStatus = exports.updateDiceValues = exports.setTextures = exports.setAction = void 0;
5
+ const tslib_1 = require("tslib");
6
+ const persistent_1 = require("@nanostores/persistent");
7
+ const nanostores_1 = require("nanostores");
8
+ const eventhandler_1 = require("./eventhandler");
9
+ const axios_1 = tslib_1.__importDefault(require("axios"));
10
+ const ulid_1 = require("./utils/ulid");
11
+ const _IQuest = {
12
+ id: '',
13
+ title: '',
14
+ description: '',
15
+ journals: [],
16
+ isComplete: false,
17
+ reward: '',
18
+ };
19
+ const _IPlayerInventory = {
20
+ backpack: [],
21
+ equipment: {
22
+ head: null,
23
+ body: null,
24
+ legs: null,
25
+ feet: null,
26
+ hands: null,
27
+ weapon: null,
28
+ shield: null,
29
+ accessory: null,
30
+ },
31
+ };
32
+ const _initialItems = {};
33
+ const _IPlayerState = {
34
+ inCombat: false,
35
+ isDead: false,
36
+ isResting: false,
37
+ activeBoosts: {},
38
+ };
39
+ const _IPlayerStats = {
40
+ username: 'Guest',
41
+ health: '100',
42
+ mana: '100',
43
+ energy: '100',
44
+ maxHealth: '100',
45
+ maxMana: '100',
46
+ maxEnergy: '100',
47
+ armour: '0',
48
+ agility: '0',
49
+ strength: '0',
50
+ intelligence: '0',
51
+ experience: '0',
52
+ reputation: '0',
53
+ faith: '0',
54
+ };
55
+ const _IPlayerData = {
56
+ stats: _IPlayerStats,
57
+ inventory: _IPlayerInventory,
58
+ state: _IPlayerState,
59
+ };
60
+ const defaultSettings = {
61
+ tooltipItem: { id: null, position: { x: 0, y: 0 } },
62
+ submenuItem: { id: null, position: { x: 0, y: 0 } },
63
+ tooltipNPC: { id: null, position: { x: 0, y: 0 } },
64
+ isStatsMenuCollapsed: false,
65
+ isSettingsMenuCollapsed: false,
66
+ debugMode: false,
67
+ };
68
+ exports.initialMinigameState = {
69
+ gamemode: 'Idle',
70
+ action: {
71
+ type: 'ROLL_DICE',
72
+ diceValues: [],
73
+ isRolling: false,
74
+ },
75
+ textures: {
76
+ side1: '',
77
+ side2: '',
78
+ side3: '',
79
+ side4: '',
80
+ side5: '',
81
+ side6: '',
82
+ },
83
+ };
84
+ function completeTask(quest, journalId, taskId) {
85
+ const updatedJournals = quest.journals.map((journal) => {
86
+ if (journal.id === journalId) {
87
+ const updatedTasks = journal.tasks.map((task) => task.id === taskId ? Object.assign(Object.assign({}, task), { isComplete: true }) : task);
88
+ const isJournalComplete = updatedTasks.every((task) => task.isComplete);
89
+ eventhandler_1.EventEmitter.emit('taskCompletion', { taskId, isComplete: true });
90
+ return Object.assign(Object.assign({}, journal), { tasks: updatedTasks, isComplete: isJournalComplete });
91
+ }
92
+ return journal;
93
+ });
94
+ const isQuestComplete = updatedJournals.every((journal) => journal.isComplete);
95
+ return Object.assign(Object.assign({}, quest), { journals: updatedJournals, isComplete: isQuestComplete });
96
+ }
97
+ exports.completeTask = completeTask;
98
+ function addTask(journal, task) {
99
+ const updatedTasks = [...journal.tasks, task];
100
+ return Object.assign(Object.assign({}, journal), { tasks: updatedTasks });
101
+ }
102
+ exports.addTask = addTask;
103
+ function updateTask(journal, taskId, updatedTask) {
104
+ const updatedTasks = journal.tasks.map((task) => task.id === taskId ? Object.assign(Object.assign({}, task), updatedTask) : task);
105
+ return Object.assign(Object.assign({}, journal), { tasks: updatedTasks });
106
+ }
107
+ exports.updateTask = updateTask;
108
+ function removeTask(journal, taskId) {
109
+ const updatedTasks = journal.tasks.filter((task) => task.id !== taskId);
110
+ return Object.assign(Object.assign({}, journal), { tasks: updatedTasks });
111
+ }
112
+ exports.removeTask = removeTask;
113
+ function addJournal(quest, journal) {
114
+ const updatedJournals = [...quest.journals, journal];
115
+ return Object.assign(Object.assign({}, quest), { journals: updatedJournals });
116
+ }
117
+ exports.addJournal = addJournal;
118
+ function updateJournal(quest, journalId, updatedJournal) {
119
+ const updatedJournals = quest.journals.map((journal) => journal.id === journalId ? Object.assign(Object.assign({}, journal), updatedJournal) : journal);
120
+ return Object.assign(Object.assign({}, quest), { journals: updatedJournals });
121
+ }
122
+ exports.updateJournal = updateJournal;
123
+ function removeJournal(quest, journalId) {
124
+ const updatedJournals = quest.journals.filter((journal) => journal.id !== journalId);
125
+ return Object.assign(Object.assign({}, quest), { journals: updatedJournals });
126
+ }
127
+ exports.removeJournal = removeJournal;
128
+ const addItemToStore = (item) => {
129
+ (0, nanostores_1.task)(() => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
130
+ exports.itemStore.set(Object.assign(Object.assign({}, exports.itemStore.get()), { [item.id]: item }));
131
+ }));
132
+ };
133
+ exports.addItemToStore = addItemToStore;
134
+ const removeItemFromStore = (itemId) => {
135
+ (0, nanostores_1.task)(() => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
136
+ const currentStore = exports.itemStore.get();
137
+ const _a = currentStore, _b = itemId, _ = _a[_b], remainingItems = tslib_1.__rest(_a, [typeof _b === "symbol" ? _b : _b + ""]);
138
+ exports.itemStore.set(remainingItems);
139
+ }));
140
+ };
141
+ exports.removeItemFromStore = removeItemFromStore;
142
+ function createPersistentAtom(key, defaultValue) {
143
+ return (0, persistent_1.persistentAtom)(key, defaultValue, {
144
+ encode(value) {
145
+ return JSON.stringify(value);
146
+ },
147
+ decode(value) {
148
+ try {
149
+ return JSON.parse(value);
150
+ }
151
+ catch (_a) {
152
+ return defaultValue;
153
+ }
154
+ },
155
+ });
156
+ }
157
+ exports.createPersistentAtom = createPersistentAtom;
158
+ // Stores
159
+ exports.playerData = createPersistentAtom('playerData', _IPlayerData);
160
+ exports.quest = createPersistentAtom('quest', _IQuest);
161
+ exports.itemStore = createPersistentAtom('items', _initialItems);
162
+ exports.notificationsStore = createPersistentAtom('notifications', []);
163
+ exports.itemDB = createPersistentAtom('itemDB', _initialItems);
164
+ exports.settings = createPersistentAtom('settings', defaultSettings);
165
+ exports.minigameState = createPersistentAtom('minigameState', exports.initialMinigameState);
166
+ const getUserSetting = (key) => {
167
+ return exports.settings.get()[key];
168
+ };
169
+ exports.getUserSetting = getUserSetting;
170
+ const setUserSetting = (key, value) => {
171
+ (0, nanostores_1.task)(() => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
172
+ const currentSettings = exports.settings.get();
173
+ exports.settings.set(Object.assign(Object.assign({}, currentSettings), { [key]: value }));
174
+ }));
175
+ };
176
+ exports.setUserSetting = setUserSetting;
177
+ const reloadItemDB = () => {
178
+ (0, nanostores_1.task)(() => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
179
+ try {
180
+ const response = yield axios_1.default.get('https://kbve.com/api/itemdb.json');
181
+ const items = response.data;
182
+ const flattenedItems = {};
183
+ Object.keys(items['key']).forEach((key) => {
184
+ const item = items['key'][key];
185
+ flattenedItems[item.id] = item;
186
+ flattenedItems[item.name] = item;
187
+ });
188
+ exports.itemDB.set(flattenedItems);
189
+ }
190
+ catch (error) {
191
+ console.error('Failed to reload item database:', error);
192
+ }
193
+ }));
194
+ };
195
+ exports.reloadItemDB = reloadItemDB;
196
+ const queryItemDB = (itemId) => {
197
+ const items = exports.itemDB.get();
198
+ return items[itemId];
199
+ };
200
+ exports.queryItemDB = queryItemDB;
201
+ const addItemToBackpack = (itemId) => {
202
+ (0, nanostores_1.task)(() => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
203
+ const player = exports.playerData.get();
204
+ player.inventory.backpack.push(itemId);
205
+ exports.playerData.set(Object.assign({}, player));
206
+ }));
207
+ };
208
+ exports.addItemToBackpack = addItemToBackpack;
209
+ const getItemDetails = (itemId) => {
210
+ const items = exports.itemStore.get();
211
+ const item = items[itemId];
212
+ if (item) {
213
+ return item;
214
+ }
215
+ else {
216
+ console.warn(`Item with ID ${itemId} not found.`);
217
+ return undefined;
218
+ }
219
+ };
220
+ exports.getItemDetails = getItemDetails;
221
+ const createAndAddItemToBackpack = (item) => {
222
+ (0, nanostores_1.task)(() => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
223
+ const id = (0, ulid_1.createULID)();
224
+ const newItem = Object.assign(Object.assign({}, item), { id });
225
+ (0, exports.addItemToStore)(newItem);
226
+ (0, exports.addItemToBackpack)(newItem.id);
227
+ eventhandler_1.EventEmitter.emit('notification', {
228
+ title: 'Success',
229
+ message: `You got a ${newItem.name}, verified by E Corp ID ${newItem.id}`,
230
+ notificationType: exports.notificationType['success'],
231
+ });
232
+ }));
233
+ };
234
+ exports.createAndAddItemToBackpack = createAndAddItemToBackpack;
235
+ const equipItem = (slot, itemId) => {
236
+ (0, nanostores_1.task)(() => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
237
+ const player = exports.playerData.get();
238
+ const item = exports.itemStore.get()[itemId];
239
+ if (item) {
240
+ const currentItemId = player.inventory.equipment[slot];
241
+ if (currentItemId) {
242
+ const currentItem = exports.itemStore.get()[currentItemId];
243
+ currentItem.equipped = false;
244
+ exports.itemStore.set(Object.assign(Object.assign({}, exports.itemStore.get()), { [currentItem.id]: currentItem }));
245
+ }
246
+ item.equipped = true;
247
+ exports.itemStore.set(Object.assign(Object.assign({}, exports.itemStore.get()), { [item.id]: item }));
248
+ player.inventory.equipment[slot] = itemId;
249
+ exports.playerData.set(Object.assign({}, player));
250
+ }
251
+ }));
252
+ };
253
+ exports.equipItem = equipItem;
254
+ const unequipItem = (slot) => {
255
+ (0, nanostores_1.task)(() => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
256
+ const player = exports.playerData.get();
257
+ const itemId = player.inventory.equipment[slot];
258
+ if (itemId) {
259
+ const item = exports.itemStore.get()[itemId];
260
+ if (item) {
261
+ item.equipped = false;
262
+ exports.itemStore.set(Object.assign(Object.assign({}, exports.itemStore.get()), { [item.id]: item }));
263
+ player.inventory.equipment[slot] = null;
264
+ exports.playerData.set(Object.assign({}, player));
265
+ }
266
+ }
267
+ }));
268
+ };
269
+ exports.unequipItem = unequipItem;
270
+ const removeItemFromBackpack = (itemId) => {
271
+ (0, nanostores_1.task)(() => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
272
+ const player = exports.playerData.get();
273
+ const item = exports.itemStore.get()[itemId];
274
+ if (item && !item.equipped) {
275
+ player.inventory.backpack = player.inventory.backpack.filter((id) => id !== itemId);
276
+ exports.playerData.set(Object.assign({}, player));
277
+ (0, exports.removeItemFromStore)(itemId);
278
+ }
279
+ else {
280
+ eventhandler_1.EventEmitter.emit('notification', {
281
+ title: 'Warning',
282
+ message: `Cannot remove item that is currently equipped.`,
283
+ notificationType: exports.notificationType['warning'],
284
+ });
285
+ }
286
+ }));
287
+ };
288
+ exports.removeItemFromBackpack = removeItemFromBackpack;
289
+ const updatePlayerState = (updates) => {
290
+ (0, nanostores_1.task)(() => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
291
+ const player = exports.playerData.get();
292
+ player.state = Object.assign(Object.assign({}, player.state), updates);
293
+ exports.playerData.set(Object.assign({}, player));
294
+ }));
295
+ };
296
+ exports.updatePlayerState = updatePlayerState;
297
+ function isPlayerInCombat() {
298
+ return exports.playerData.get().state.inCombat;
299
+ }
300
+ exports.isPlayerInCombat = isPlayerInCombat;
301
+ function isPlayerDead() {
302
+ return exports.playerData.get().state.isDead;
303
+ }
304
+ exports.isPlayerDead = isPlayerDead;
305
+ function isPlayerResting() {
306
+ return exports.playerData.get().state.isResting;
307
+ }
308
+ exports.isPlayerResting = isPlayerResting;
309
+ const updatePlayerStats = (updates) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
310
+ (0, nanostores_1.task)(() => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
311
+ const player = exports.playerData.get();
312
+ const updatedStats = Object.assign(Object.assign({}, player.stats), updates);
313
+ // Ensure all stats are strings
314
+ Object.keys(updatedStats).forEach((key) => {
315
+ const value = updatedStats[key];
316
+ updatedStats[key] = value === null || value === void 0 ? void 0 : value.toString();
317
+ });
318
+ player.stats = updatedStats;
319
+ exports.playerData.set(Object.assign({}, player));
320
+ }));
321
+ });
322
+ exports.updatePlayerStats = updatePlayerStats;
323
+ const setPlayerStat = (stat, value) => {
324
+ (0, nanostores_1.task)(() => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
325
+ const player = exports.playerData.get();
326
+ player.stats = Object.assign(Object.assign({}, player.stats), { [stat]: value });
327
+ exports.playerData.set(Object.assign({}, player));
328
+ }));
329
+ };
330
+ exports.setPlayerStat = setPlayerStat;
331
+ const decreasePlayerHealth = (amount) => {
332
+ (0, nanostores_1.task)(() => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
333
+ const player = exports.playerData.get();
334
+ const currentHealth = parseInt(player.stats.health, 10);
335
+ const newHealth = Math.max(currentHealth - amount, 0);
336
+ player.stats = Object.assign(Object.assign({}, player.stats), { health: newHealth.toString() });
337
+ exports.playerData.set(Object.assign({}, player));
338
+ }));
339
+ };
340
+ exports.decreasePlayerHealth = decreasePlayerHealth;
341
+ const increasePlayerHealth = (amount) => {
342
+ (0, nanostores_1.task)(() => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
343
+ const player = exports.playerData.get();
344
+ const currentHealth = parseInt(player.stats.health, 10);
345
+ const maxHealth = parseInt(player.stats.maxHealth, 10);
346
+ const newHealth = Math.min(currentHealth + amount, maxHealth);
347
+ player.stats = Object.assign(Object.assign({}, player.stats), { health: newHealth.toString() });
348
+ exports.playerData.set(Object.assign({}, player));
349
+ }));
350
+ };
351
+ exports.increasePlayerHealth = increasePlayerHealth;
352
+ const decreasePlayerMana = (amount) => {
353
+ (0, nanostores_1.task)(() => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
354
+ const player = exports.playerData.get();
355
+ const currentMana = parseInt(player.stats.mana, 10);
356
+ const newMana = Math.max(currentMana - amount, 0);
357
+ player.stats = Object.assign(Object.assign({}, player.stats), { mana: newMana.toString() });
358
+ exports.playerData.set(Object.assign({}, player));
359
+ }));
360
+ };
361
+ exports.decreasePlayerMana = decreasePlayerMana;
362
+ const increasePlayerMana = (amount) => {
363
+ (0, nanostores_1.task)(() => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
364
+ const player = exports.playerData.get();
365
+ const currentMana = parseInt(player.stats.mana, 10);
366
+ const maxMana = parseInt(player.stats.maxMana, 10);
367
+ const newMana = Math.min(currentMana + amount, maxMana);
368
+ player.stats = Object.assign(Object.assign({}, player.stats), { mana: newMana.toString() });
369
+ exports.playerData.set(Object.assign({}, player));
370
+ }));
371
+ };
372
+ exports.increasePlayerMana = increasePlayerMana;
373
+ const decreasePlayerEnergy = (amount) => {
374
+ (0, nanostores_1.task)(() => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
375
+ const player = exports.playerData.get();
376
+ const currentEnergy = parseInt(player.stats.energy, 10);
377
+ const newEnergy = Math.max(currentEnergy - amount, 0);
378
+ player.stats = Object.assign(Object.assign({}, player.stats), { energy: newEnergy.toString() });
379
+ exports.playerData.set(Object.assign({}, player));
380
+ }));
381
+ };
382
+ exports.decreasePlayerEnergy = decreasePlayerEnergy;
383
+ const increasePlayerEnergy = (amount) => {
384
+ (0, nanostores_1.task)(() => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
385
+ const player = exports.playerData.get();
386
+ const currentEnergy = parseInt(player.stats.energy, 10);
387
+ const maxEnergy = parseInt(player.stats.maxEnergy, 10);
388
+ const newEnergy = Math.min(currentEnergy + amount, maxEnergy);
389
+ player.stats = Object.assign(Object.assign({}, player.stats), { energy: newEnergy.toString() });
390
+ exports.playerData.set(Object.assign({}, player));
391
+ }));
392
+ };
393
+ exports.increasePlayerEnergy = increasePlayerEnergy;
394
+ const applyImmediateEffects = (effects) => {
395
+ if (effects.health !== undefined) {
396
+ const healthAmount = parseInt(effects.health, 10);
397
+ if (healthAmount > 0) {
398
+ (0, exports.increasePlayerHealth)(healthAmount);
399
+ }
400
+ else {
401
+ (0, exports.decreasePlayerHealth)(Math.abs(healthAmount));
402
+ }
403
+ }
404
+ if (effects.mana !== undefined) {
405
+ const manaAmount = parseInt(effects.mana, 10);
406
+ if (manaAmount > 0) {
407
+ (0, exports.increasePlayerMana)(manaAmount);
408
+ }
409
+ else {
410
+ (0, exports.decreasePlayerMana)(Math.abs(manaAmount));
411
+ }
412
+ }
413
+ if (effects.energy !== undefined) {
414
+ const energyAmount = parseInt(effects.energy, 10);
415
+ if (energyAmount > 0) {
416
+ (0, exports.increasePlayerEnergy)(energyAmount);
417
+ }
418
+ else {
419
+ (0, exports.decreasePlayerEnergy)(Math.abs(energyAmount));
420
+ }
421
+ }
422
+ };
423
+ exports.applyImmediateEffects = applyImmediateEffects;
424
+ const addStatBoost = (boost) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
425
+ const boostId = (0, ulid_1.createULID)();
426
+ (0, nanostores_1.task)(() => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
427
+ const player = exports.playerData.get();
428
+ player.state.activeBoosts[boostId] = Object.assign(Object.assign({}, boost), { expiry: Date.now() + boost.duration * 1000 });
429
+ exports.playerData.set(Object.assign({}, player));
430
+ }));
431
+ });
432
+ exports.addStatBoost = addStatBoost;
433
+ const removeStatBoost = (boostId) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
434
+ (0, nanostores_1.task)(() => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
435
+ const player = exports.playerData.get();
436
+ if (player.state.activeBoosts[boostId]) {
437
+ delete player.state.activeBoosts[boostId];
438
+ exports.playerData.set(Object.assign({}, player));
439
+ }
440
+ }));
441
+ });
442
+ exports.removeStatBoost = removeStatBoost;
443
+ const getEffectiveStats = () => {
444
+ const player = exports.playerData.get();
445
+ const effectiveStats = Object.assign({}, player.stats);
446
+ Object.values(player.state.activeBoosts).forEach((boost) => {
447
+ Object.keys(boost).forEach((key) => {
448
+ if (key !== 'duration' && key !== 'expiry') {
449
+ const statKey = key;
450
+ const boostValue = parseInt(boost[statKey], 10) || 0;
451
+ effectiveStats[statKey] = (parseInt(effectiveStats[statKey], 10) + boostValue).toString();
452
+ }
453
+ });
454
+ });
455
+ return effectiveStats;
456
+ };
457
+ exports.getEffectiveStats = getEffectiveStats;
458
+ const handleBoostExpiry = () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
459
+ (0, nanostores_1.task)(() => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
460
+ const player = exports.playerData.get();
461
+ const now = Date.now();
462
+ let stateChanged = false;
463
+ Object.keys(player.state.activeBoosts).forEach((boostId) => {
464
+ const boost = player.state.activeBoosts[boostId];
465
+ if (boost.expiry && now >= boost.expiry) {
466
+ delete player.state.activeBoosts[boostId];
467
+ stateChanged = true;
468
+ }
469
+ });
470
+ if (stateChanged) {
471
+ exports.playerData.set(Object.assign({}, player));
472
+ }
473
+ }));
474
+ });
475
+ exports.handleBoostExpiry = handleBoostExpiry;
476
+ const applyConsumableEffects = (item) => {
477
+ (0, nanostores_1.task)(() => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
478
+ const player = exports.playerData.get();
479
+ // const effects = item.effects;
480
+ // const effectsAsStrings: Partial<IPlayerStats> = {
481
+ // health: effects.health !== undefined ? effects.health.toString() : undefined,
482
+ // mana: effects.mana !== undefined ? effects.mana.toString() : undefined,
483
+ // energy: effects.energy !== undefined ? effects.energy.toString() : undefined
484
+ // };
485
+ const bonuses = item.bonuses;
486
+ const bonusesAsStrings = {
487
+ health: (bonuses === null || bonuses === void 0 ? void 0 : bonuses.health) !== undefined ? bonuses.health.toString() : undefined,
488
+ mana: (bonuses === null || bonuses === void 0 ? void 0 : bonuses.mana) !== undefined ? bonuses.mana.toString() : undefined,
489
+ energy: (bonuses === null || bonuses === void 0 ? void 0 : bonuses.energy) !== undefined ? bonuses.energy.toString() : undefined,
490
+ };
491
+ (0, exports.applyImmediateEffects)(bonusesAsStrings);
492
+ //applyImmediateEffects(effectsAsStrings);
493
+ if (item.boost) {
494
+ (0, exports.addStatBoost)(item.boost);
495
+ }
496
+ if (item.action) {
497
+ console.log(`Action: ${item.action}`);
498
+ }
499
+ exports.playerData.set(Object.assign({}, player));
500
+ }));
501
+ };
502
+ exports.applyConsumableEffects = applyConsumableEffects;
503
+ const getActionEvents = (itemId) => {
504
+ const item = (0, exports.getItemDetails)(itemId);
505
+ if (!item) {
506
+ return [];
507
+ }
508
+ const actions = ['view', 'discard'];
509
+ if (item.consumable) {
510
+ actions.push('consume');
511
+ }
512
+ if (item.equipped) {
513
+ actions.push('unequip');
514
+ }
515
+ else if (!item.consumable) {
516
+ actions.push('equip');
517
+ }
518
+ return actions;
519
+ };
520
+ exports.getActionEvents = getActionEvents;
521
+ exports.notificationType = {
522
+ caution: {
523
+ type: 'caution',
524
+ color: 'bg-yellow-200 border-yellow-300 text-yellow-700',
525
+ imgUrl: '/assets/icons/notification.svg',
526
+ },
527
+ warning: {
528
+ type: 'warning',
529
+ color: 'bg-orange-200 border-orange-300 text-orange-700',
530
+ imgUrl: '/assets/icons/notification.svg',
531
+ },
532
+ danger: {
533
+ type: 'danger',
534
+ color: 'bg-red-200 border-red-300 text-red-700',
535
+ imgUrl: '/assets/icons/notification.svg',
536
+ },
537
+ success: {
538
+ type: 'success',
539
+ color: 'bg-green-200 border-green-300 text-green-700',
540
+ imgUrl: '/assets/icons/notification.svg',
541
+ },
542
+ info: {
543
+ type: 'info',
544
+ color: 'bg-blue-200 border-blue-300 text-blue-700',
545
+ imgUrl: '/assets/icons/notification.svg',
546
+ },
547
+ };
548
+ //** MiniGames */
549
+ function updateMinigameState(updates) {
550
+ try {
551
+ (0, nanostores_1.task)(() => tslib_1.__awaiter(this, void 0, void 0, function* () {
552
+ const state = exports.minigameState.get();
553
+ exports.minigameState.set(Object.assign(Object.assign({}, state), updates));
554
+ }));
555
+ }
556
+ catch (error) {
557
+ console.error('Error updating minigame state:', error);
558
+ }
559
+ }
560
+ exports.updateMinigameState = updateMinigameState;
561
+ function setGameMode(gamemode) {
562
+ updateMinigameState({ gamemode });
563
+ }
564
+ exports.setGameMode = setGameMode;
565
+ function setAction(action) {
566
+ updateMinigameState({ action });
567
+ }
568
+ exports.setAction = setAction;
569
+ function setTextures(textures) {
570
+ updateMinigameState({ textures });
571
+ }
572
+ exports.setTextures = setTextures;
573
+ function updateDiceValues(diceValues) {
574
+ const state = exports.minigameState.get();
575
+ if (state.gamemode === 'Dice' && state.action.type === 'ROLL_DICE') {
576
+ updateMinigameState({
577
+ action: Object.assign(Object.assign({}, state.action), { diceValues }),
578
+ });
579
+ }
580
+ }
581
+ exports.updateDiceValues = updateDiceValues;
582
+ function setRollingStatus(isRolling) {
583
+ const state = exports.minigameState.get();
584
+ if (state.gamemode === 'Dice' && state.action.type === 'ROLL_DICE') {
585
+ updateMinigameState({
586
+ action: Object.assign(Object.assign({}, state.action), { isRolling }),
587
+ });
588
+ }
589
+ }
590
+ exports.setRollingStatus = setRollingStatus;
591
+ //# sourceMappingURL=localdb.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"localdb.js","sourceRoot":"","sources":["../../../../../packages/laser/src/lib/localdb.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { MinigameDiceProps } from '../../../types';
3
+ declare const MinigameDice: React.FC<MinigameDiceProps>;
4
+ export default MinigameDice;