From 7ab64992a420077de87a40c24ccdea32d1aab887 Mon Sep 17 00:00:00 2001 From: Robert MacRae Date: Thu, 2 Apr 2026 10:07:38 -0300 Subject: [PATCH 1/8] Fixed the stats system for the hostiles --- .../data/enemies/hostiles/pirates/black_mark_cruiser.json | 6 +++--- .../data/enemies/hostiles/pirates/raider_frigate.json | 6 +++--- .../original/data/enemies/hostiles/pirates/scout_drone.json | 6 +++--- .../enemies/hostiles/tutorial/tutorial_boss_hostile.json | 6 +++--- .../data/enemies/hostiles/tutorial/tutorial_hostile.json | 6 +++--- 5 files changed, 15 insertions(+), 15 deletions(-) diff --git a/game-server/datapacks/original/data/enemies/hostiles/pirates/black_mark_cruiser.json b/game-server/datapacks/original/data/enemies/hostiles/pirates/black_mark_cruiser.json index 20ea9f6..7b94bf4 100644 --- a/game-server/datapacks/original/data/enemies/hostiles/pirates/black_mark_cruiser.json +++ b/game-server/datapacks/original/data/enemies/hostiles/pirates/black_mark_cruiser.json @@ -2,12 +2,12 @@ "hostile": { "id": "original:pirates/black_mark_cruiser", "displayName": "Black Mark Heavy Cruiser", - "meta": { + "stats": { "health": 850, "defense": 5.0, "damage": 18.0, - "criticalChance": 0.15, - "attackRate": 0.6 + "critical.chance": 0.15, + "attack.rate": 0.6 } } } diff --git a/game-server/datapacks/original/data/enemies/hostiles/pirates/raider_frigate.json b/game-server/datapacks/original/data/enemies/hostiles/pirates/raider_frigate.json index 6f24464..63553bb 100644 --- a/game-server/datapacks/original/data/enemies/hostiles/pirates/raider_frigate.json +++ b/game-server/datapacks/original/data/enemies/hostiles/pirates/raider_frigate.json @@ -2,12 +2,12 @@ "hostile": { "id": "original:pirates/raider_frigate", "displayName": "Raider Frigate", - "meta": { + "stats": { "health": 110, "defense": 1.5, "damage": 6.5, - "criticalChance": 0.2, - "attackRate": 1.0 + "critical.chance": 0.2, + "attack.rate": 1.0 } } } diff --git a/game-server/datapacks/original/data/enemies/hostiles/pirates/scout_drone.json b/game-server/datapacks/original/data/enemies/hostiles/pirates/scout_drone.json index 4c51b7c..57c3c69 100644 --- a/game-server/datapacks/original/data/enemies/hostiles/pirates/scout_drone.json +++ b/game-server/datapacks/original/data/enemies/hostiles/pirates/scout_drone.json @@ -2,12 +2,12 @@ "hostile": { "id": "original:pirates/scout_drone", "displayName": "Pirate Scout Drone", - "meta": { + "stats": { "health": 25, "defense": 0.2, "damage": 1.8, - "criticalChance": 0.1, - "attackRate": 3.0 + "critical.chance": 0.1, + "attack.rate": 3.0 } } } diff --git a/game-server/datapacks/original/data/enemies/hostiles/tutorial/tutorial_boss_hostile.json b/game-server/datapacks/original/data/enemies/hostiles/tutorial/tutorial_boss_hostile.json index c659d33..1e76af4 100644 --- a/game-server/datapacks/original/data/enemies/hostiles/tutorial/tutorial_boss_hostile.json +++ b/game-server/datapacks/original/data/enemies/hostiles/tutorial/tutorial_boss_hostile.json @@ -2,12 +2,12 @@ "hostile": { "id": "original:tutorial/tutorial_boss_hostile", "displayName": "enemies.original.tutorial.tutorial_boss_hostile", - "meta": { + "stats": { "health": 90, "defense": 1.3, "damage": 4.1, - "criticalChance": 0.3, - "attackRate": 2 + "critical.chance": 0.3, + "attack.rate": 2 } } } diff --git a/game-server/datapacks/original/data/enemies/hostiles/tutorial/tutorial_hostile.json b/game-server/datapacks/original/data/enemies/hostiles/tutorial/tutorial_hostile.json index fc718a0..8b57d26 100644 --- a/game-server/datapacks/original/data/enemies/hostiles/tutorial/tutorial_hostile.json +++ b/game-server/datapacks/original/data/enemies/hostiles/tutorial/tutorial_hostile.json @@ -2,12 +2,12 @@ "hostile": { "id": "original:tutorial/tutorial_hostile", "displayName": "enemies.original.tutorial.tutorial_hostile", - "meta": { + "stats": { "health": 30, "defense": 0.3, "damage": 2.1, - "criticalChance": 0.3, - "attackRate": 2 + "critical,chance": 0.3, + "attack.rate": 2 } } } From 2c61c8c05c2d33f2a95a4fefb671f2974588ba74 Mon Sep 17 00:00:00 2001 From: Robert MacRae Date: Thu, 2 Apr 2026 10:27:49 -0300 Subject: [PATCH 2/8] added derus textures and fixed naming --- .../textures/materials/alloy/chronotanium.png | Bin 0 -> 11333 bytes .../textures/materials/alloy/titaniumweave.png | Bin 0 -> 8785 bytes .../textures/materials/alloy/voidsteel.png | Bin 0 -> 11983 bytes .../materials/crystal/dimentionalcrystal.gif | Bin 0 -> 78532 bytes .../textures/materials/crystal/fluxcrystal.png | Bin 0 -> 39569 bytes .../textures/materials/crystal/voidcrystal.png | Bin 0 -> 46857 bytes .../items/materials/alloys/titanium_weave.json | 2 +- .../data/items/materials/alloys/void_steel.json | 2 +- .../crystals/{flux_core.json => core_flux.json} | 0 .../{void crystal.json => crystal._void.json} | 2 +- ...al_crystal.json => crystal_dimentional.json} | 2 +- .../{flux_crystal.json => crystal_flux.json} | 2 +- 12 files changed, 5 insertions(+), 5 deletions(-) create mode 100644 game-server/datapacks/original/assets/textures/materials/alloy/chronotanium.png create mode 100644 game-server/datapacks/original/assets/textures/materials/alloy/titaniumweave.png create mode 100644 game-server/datapacks/original/assets/textures/materials/alloy/voidsteel.png create mode 100644 game-server/datapacks/original/assets/textures/materials/crystal/dimentionalcrystal.gif create mode 100644 game-server/datapacks/original/assets/textures/materials/crystal/fluxcrystal.png create mode 100644 game-server/datapacks/original/assets/textures/materials/crystal/voidcrystal.png rename game-server/datapacks/original/data/items/materials/crystals/{flux_core.json => core_flux.json} (100%) rename game-server/datapacks/original/data/items/materials/crystals/{void crystal.json => crystal._void.json} (76%) rename game-server/datapacks/original/data/items/materials/crystals/{dimentional_crystal.json => crystal_dimentional.json} (76%) rename game-server/datapacks/original/data/items/materials/crystals/{flux_crystal.json => crystal_flux.json} (76%) diff --git a/game-server/datapacks/original/assets/textures/materials/alloy/chronotanium.png b/game-server/datapacks/original/assets/textures/materials/alloy/chronotanium.png new file mode 100644 index 0000000000000000000000000000000000000000..8948848cb4c5a2aedb9ae114475ad356c45a8045 GIT binary patch literal 11333 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 H?85&a);C4l literal 0 HcmV?d00001 diff --git a/game-server/datapacks/original/assets/textures/materials/alloy/titaniumweave.png b/game-server/datapacks/original/assets/textures/materials/alloy/titaniumweave.png new file mode 100644 index 0000000000000000000000000000000000000000..710fc3f10f3ef4dc32ff43f739b3753b043ad129 GIT binary patch literal 8785 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 D{L+pY literal 0 HcmV?d00001 diff --git a/game-server/datapacks/original/assets/textures/materials/crystal/dimentionalcrystal.gif b/game-server/datapacks/original/assets/textures/materials/crystal/dimentionalcrystal.gif new file mode 100644 index 0000000000000000000000000000000000000000..9dfcbb55d2db4bfadd86bb2562b28d874c4da51a GIT binary patch literal 78532 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 JitpNl{vTcd>X`rl literal 0 HcmV?d00001 diff --git a/game-server/datapacks/original/assets/textures/materials/crystal/voidcrystal.png b/game-server/datapacks/original/assets/textures/materials/crystal/voidcrystal.png new file mode 100644 index 0000000000000000000000000000000000000000..274be5bcdd22fa1aefeb5e654fef38a2746bacc0 GIT binary patch literal 46857 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 literal 0 HcmV?d00001 diff --git a/game-server/datapacks/original/data/items/materials/alloys/titanium_weave.json b/game-server/datapacks/original/data/items/materials/alloys/titanium_weave.json index cc88028..7584d8f 100644 --- a/game-server/datapacks/original/data/items/materials/alloys/titanium_weave.json +++ b/game-server/datapacks/original/data/items/materials/alloys/titanium_weave.json @@ -1,7 +1,7 @@ { "materials": { "id": "original:alloy_titanium_weave", - "texture": "original/assets/textures/materials/alloy/titanium_weave.png", + "texture": "original/assets/textures/materials/alloy/titaniumweave.png", "displayName": "items.materials.original.alloys.titanium_weave", "description": "items.materials.original.alloys.titanium_weave.desc", "meta": { diff --git a/game-server/datapacks/original/data/items/materials/alloys/void_steel.json b/game-server/datapacks/original/data/items/materials/alloys/void_steel.json index 5f56fd2..b277384 100644 --- a/game-server/datapacks/original/data/items/materials/alloys/void_steel.json +++ b/game-server/datapacks/original/data/items/materials/alloys/void_steel.json @@ -1,7 +1,7 @@ { "materials": { "id": "original:alloy_void_steel", - "texture": "original/assets/textures/materials/alloy/void_steel.png", + "texture": "original/assets/textures/materials/alloy/voidsteel.png", "displayName": "items.materials.original.alloys.void_steel", "description": "items.materials.original.alloys.void_steel.desc", "meta": { diff --git a/game-server/datapacks/original/data/items/materials/crystals/flux_core.json b/game-server/datapacks/original/data/items/materials/crystals/core_flux.json similarity index 100% rename from game-server/datapacks/original/data/items/materials/crystals/flux_core.json rename to game-server/datapacks/original/data/items/materials/crystals/core_flux.json diff --git a/game-server/datapacks/original/data/items/materials/crystals/void crystal.json b/game-server/datapacks/original/data/items/materials/crystals/crystal._void.json similarity index 76% rename from game-server/datapacks/original/data/items/materials/crystals/void crystal.json rename to game-server/datapacks/original/data/items/materials/crystals/crystal._void.json index 0c40fd8..3f96e78 100644 --- a/game-server/datapacks/original/data/items/materials/crystals/void crystal.json +++ b/game-server/datapacks/original/data/items/materials/crystals/crystal._void.json @@ -1,7 +1,7 @@ { "materials": { "id": "original:crystal_void", - "texture": "original/assets/textures/materials/ingot/crystal_void.png", + "texture": "original/assets/textures/materials/ingot/voidcrystal.png", "displayName": "items.materials.original.crystal.void", "description": "items.materials.original.crystal.void.desc", "meta": { diff --git a/game-server/datapacks/original/data/items/materials/crystals/dimentional_crystal.json b/game-server/datapacks/original/data/items/materials/crystals/crystal_dimentional.json similarity index 76% rename from game-server/datapacks/original/data/items/materials/crystals/dimentional_crystal.json rename to game-server/datapacks/original/data/items/materials/crystals/crystal_dimentional.json index eaf76d3..7a0833e 100644 --- a/game-server/datapacks/original/data/items/materials/crystals/dimentional_crystal.json +++ b/game-server/datapacks/original/data/items/materials/crystals/crystal_dimentional.json @@ -1,7 +1,7 @@ { "materials": { "id": "original:crystal_dimentional", - "texture": "original/assets/textures/materials/ingot/crystal_dimentional.png", + "texture": "original/assets/textures/materials/ingot/dimentionalcrystal.png", "displayName": "items.materials.original.crystal.dimentional", "description": "items.materials.original.crystal.dimentional.desc", "meta": { diff --git a/game-server/datapacks/original/data/items/materials/crystals/flux_crystal.json b/game-server/datapacks/original/data/items/materials/crystals/crystal_flux.json similarity index 76% rename from game-server/datapacks/original/data/items/materials/crystals/flux_crystal.json rename to game-server/datapacks/original/data/items/materials/crystals/crystal_flux.json index 13778c6..2b9a920 100644 --- a/game-server/datapacks/original/data/items/materials/crystals/flux_crystal.json +++ b/game-server/datapacks/original/data/items/materials/crystals/crystal_flux.json @@ -1,7 +1,7 @@ { "materials": { "id": "original:crystal_flux", - "texture": "original/assets/textures/materials/ingot/crystal_flux.png", + "texture": "original/assets/textures/materials/ingot/fluxcrystal.png", "displayName": "items.materials.original.crystal.flux", "description": "items.materials.original.crystal.flux.desc", "meta": { From 1de6fc980dddd5b7ad04252ce8be55e1e3f4cd5f Mon Sep 17 00:00:00 2001 From: MaksSlyzar Date: Thu, 2 Apr 2026 22:28:06 +0300 Subject: [PATCH 3/8] Added AdminManager. Updated NotificationManager --- .../src/views/GameInterface/tabs/ChatTab.jsx | 3 +- .../GameInterface/tabs/NotificationTab.jsx | 16 +++- game-server/src/game/AdminManager.js | 91 +++++++++++++++++++ game-server/src/game/NotificationManager.js | 76 ++++++++++++++-- game-server/src/index.js | 4 + .../src/sockets/handlers/adminHandler.js | 71 +++------------ .../src/sockets/handlers/chatHandler.js | 1 + .../src/sockets/handlers/friendHandler.js | 2 +- .../sockets/handlers/notificationHandler.js | 4 +- 9 files changed, 195 insertions(+), 73 deletions(-) create mode 100644 game-server/src/game/AdminManager.js diff --git a/client/src/views/GameInterface/tabs/ChatTab.jsx b/client/src/views/GameInterface/tabs/ChatTab.jsx index 75ada32..76a728d 100644 --- a/client/src/views/GameInterface/tabs/ChatTab.jsx +++ b/client/src/views/GameInterface/tabs/ChatTab.jsx @@ -28,7 +28,6 @@ const ChatTab = () => { useEffect(() => { if (!socket) return; - // Початкові запити socket.emit("friend:get_list"); if (activeChat === "global") { socket.emit("chat:get_global_history"); @@ -89,6 +88,8 @@ const ChatTab = () => { receiverId: activeChat === "global" ? null : activeChat, }); setInputValue(""); + + console.log(activeChat === "global" ? null : activeChat); }; const selectChat = (id) => { diff --git a/client/src/views/GameInterface/tabs/NotificationTab.jsx b/client/src/views/GameInterface/tabs/NotificationTab.jsx index c29b5b1..e57fe3c 100644 --- a/client/src/views/GameInterface/tabs/NotificationTab.jsx +++ b/client/src/views/GameInterface/tabs/NotificationTab.jsx @@ -12,7 +12,6 @@ const NotificationsTab = () => { socket.emit("notifications:get_all"); const handleNewNotify = (notify) => { - console.log(notify); setNotifications((prev) => [notify, ...prev]); }; @@ -31,9 +30,14 @@ const NotificationsTab = () => { const handleAction = (id, action, data) => { if (action === "accept_friend") { - socket.emit("friend:add", { friendId: data.fromId }); + socket.emit("friend:accept", { friendId: data.fromId }); + socket.emit("notification:read", { id }); + } else if (action === "dismiss") { + socket.emit("notification:dismiss", { id }); + } else { + socket.emit("notification:read", { id }); } - socket.emit("notification:read", { id }); + setNotifications((prev) => prev.filter((n) => n.id !== id)); }; @@ -45,6 +49,10 @@ const NotificationsTab = () => { return "fas fa-hammer"; case "system": return "fas fa-robot"; + case "item_received": + return "fas fa-box-open"; + case "inventory_clear": + return "fas fa-trash-alt"; default: return "fas fa-bell"; } @@ -66,7 +74,7 @@ const NotificationsTab = () => { )} {notifications.map((n) => ( -
+
diff --git a/game-server/src/game/AdminManager.js b/game-server/src/game/AdminManager.js new file mode 100644 index 0000000..452112d --- /dev/null +++ b/game-server/src/game/AdminManager.js @@ -0,0 +1,91 @@ +const { Player, Inventory } = require("../models"); +const DatapackLoader = require("../game/DatapackLoader"); +const notificationManager = require("./NotificationManager"); + +class AdminManager { + constructor() { + this.io = null; + } + + init(io) { + this.io = io; + } + + async giveItem(targetName, itemId, amount) { + const targetPlayer = await Player.findOne({ + where: { username: targetName }, + }); + if (!targetPlayer) throw new Error(`Player '${targetName}' not found.`); + + const itemData = DatapackLoader.getItem(itemId); + if (!itemData) throw new Error(`Item ID '${itemId}' does not exist.`); + + const [inventoryItem, created] = await Inventory.findOrCreate({ + where: { playerId: targetPlayer.id, itemId: itemId }, + defaults: { quantity: amount }, + }); + + if (!created) { + await inventoryItem.increment("quantity", { by: amount }); + } + + await notificationManager.send({ + playerId: targetPlayer.id, + type: "item_received", + title: "Items Received", + message: `Admin granted you ${amount}x ${itemData.name || itemId}.`, + data: { itemId, amount }, + priority: "normal", + }); + + this._updatePlayerInventory(targetPlayer.id); + return { targetName, itemId, amount }; + } + + async clearInventory(targetName) { + const targetPlayer = await Player.findOne({ + where: { username: targetName }, + }); + if (!targetPlayer) throw new Error(`Player '${targetName}' not found.`); + + await Inventory.destroy({ where: { playerId: targetPlayer.id } }); + + await notificationManager.send({ + playerId: targetPlayer.id, + type: "inventory_clear", + title: "Inventory Wiped", + message: "Your inventory has been cleared by an administrator.", + priority: "high", + }); + + this._updatePlayerInventory(targetPlayer.id, true); + return targetName; + } + + async reloadData() { + DatapackLoader.loadAll(); + if (this.io) { + this.io.emit("admin:log", "System: Datapacks reloaded by admin."); + } + } + + async _updatePlayerInventory(playerId, isEmpty = false) { + if (!this.io) return; + + const targetSocket = [...this.io.sockets.sockets.values()].find( + (s) => s.user?.id === playerId, + ); + + if (targetSocket) { + const items = isEmpty + ? [] + : await Inventory.findAll({ + where: { playerId }, + attributes: ["itemId", "quantity"], + }); + targetSocket.emit("player:inventory_data", items); + } + } +} + +module.exports = new AdminManager(); diff --git a/game-server/src/game/NotificationManager.js b/game-server/src/game/NotificationManager.js index 62e3da4..9a97e09 100644 --- a/game-server/src/game/NotificationManager.js +++ b/game-server/src/game/NotificationManager.js @@ -1,33 +1,93 @@ const Notification = require("../models/Notification"); class NotificationManager { - async createNotification({ playerId, type, title, message, data = {} }) { + constructor() { + this.io = null; + } + + init(io) { + this.io = io; + console.log("[NotificationManager] Initialized with Socket.io"); + } + + async send({ + playerId, + type = "info", + title, + message, + data = {}, + priority = "normal", + }) { try { - return await Notification.create({ + const notification = await Notification.create({ playerId, type, title, message, data, + priority, + isRead: false, }); + + const targetSocket = this._getSocketByPlayerId(playerId); + + if (targetSocket) { + targetSocket.emit("notification:new", notification); + + const unreadCount = await this.getUnreadCount(playerId); + targetSocket.emit("notifications:unread_count", unreadCount); + } + + return notification; } catch (error) { - console.error("Notify Error:", error); + console.error( + `[NotificationManager] Error sending to ${playerId}:`, + error, + ); } } - async getPlayerNotifications(playerId) { + _getSocketByPlayerId(playerId) { + if (!this.io) return null; + return [...this.io.sockets.sockets.values()].find( + (s) => s.user?.id === playerId, + ); + } + async getPlayerHistory(playerId, limit = 50) { return await Notification.findAll({ where: { playerId }, order: [["createdAt", "DESC"]], - limit: 20, + limit, }); } - async markAsRead(notificationId) { - return await Notification.update( + async getUnreadCount(playerId) { + return await Notification.count({ + where: { playerId, isRead: false }, + }); + } + + async markAsRead(notificationId, playerId) { + await Notification.update( { isRead: true }, - { where: { id: notificationId } }, + { where: { id: notificationId, playerId } }, ); + return await this.getUnreadCount(playerId); + } + + async markAllAsRead(playerId) { + await Notification.update( + { isRead: true }, + { where: { playerId, isRead: false } }, + ); + return 0; + } + + async delete(notificationId, playerId) { + await Notification.destroy({ + where: { id: notificationId, playerId }, + }); + return await this.getUnreadCount(playerId); } } diff --git a/game-server/src/index.js b/game-server/src/index.js index 36759da..f311579 100644 --- a/game-server/src/index.js +++ b/game-server/src/index.js @@ -10,6 +10,8 @@ const DatapackLoader = require("./game/DatapackLoader.js"); const path = require("path"); const app = express(); const economyService = require("./game/EconomyService.js"); +const NotificationManager = require("./game/NotificationManager.js"); +const AdminManager = require("./game/AdminManager.js"); app.use( cors({ @@ -80,6 +82,8 @@ server.listen(config.port, async () => { DatapackLoader.init(datapacksPath, io); await sequelize.initDatabase(); initSockets(io); + NotificationManager.init(io); + AdminManager.init(io); economyService.init(io); await registerInApi(); setInterval(sendHeartbeat, HEARTBEAT_INTERVAL); diff --git a/game-server/src/sockets/handlers/adminHandler.js b/game-server/src/sockets/handlers/adminHandler.js index 716199a..9ab1fbe 100644 --- a/game-server/src/sockets/handlers/adminHandler.js +++ b/game-server/src/sockets/handlers/adminHandler.js @@ -1,7 +1,8 @@ -const { Player, Inventory } = require("../../models"); -const DatapackLoader = require("../../game/DatapackLoader"); +const adminManager = require("../../game/AdminManager"); module.exports = (io, socket) => { + if (!adminManager.io) adminManager.init(io); + const handleAdminCommand = async ({ command }) => { const args = command.trim().split(/\s+/); const cmd = args[0].toLowerCase(); @@ -13,76 +14,33 @@ module.exports = (io, socket) => { const amount = parseInt(amountStr) || 1; if (!targetName || !itemId) { - throw new Error("Usage: /give [player_name] [item_id] [amount]"); - } - - const targetPlayer = await Player.findOne({ - where: { username: targetName }, - }); - if (!targetPlayer) - throw new Error(`Player '${targetName}' not found in database.`); - - const itemData = DatapackLoader.getItem(itemId); - if (!itemData) - throw new Error(`Item ID '${itemId}' does not exist in datapacks.`); - - const [inventoryItem, created] = await Inventory.findOrCreate({ - where: { playerId: targetPlayer.id, itemId: itemId }, - defaults: { quantity: amount }, - }); - - if (!created) { - await inventoryItem.increment("quantity", { by: amount }); + throw new Error("Usage: /give [player] [item] [amount]"); } + const result = await adminManager.giveItem( + targetName, + itemId, + amount, + ); socket.emit( "admin:log", - `Successfully gave ${amount}x [${itemId}] to ${targetName}.`, + `Successfully gave ${result.amount}x [${result.itemId}] to ${result.targetName}.`, ); - - const targetSocket = [...io.sockets.sockets.values()].find( - (s) => s.user?.id === targetPlayer.id, - ); - - if (targetSocket) { - const updatedItems = await Inventory.findAll({ - where: { playerId: targetPlayer.id }, - attributes: ["itemId", "quantity"], - }); - targetSocket.emit("player:inventory_data", updatedItems); - targetSocket.emit( - "admin:log", - `Admin gave you ${amount}x ${itemId}`, - ); - } break; } case "/clear": { const [_, targetName] = args; - const targetPlayer = await Player.findOne({ - where: { username: targetName }, - }); - if (!targetPlayer) throw new Error("Player not found."); + if (!targetName) throw new Error("Usage: /clear [player]"); - await Inventory.destroy({ where: { playerId: targetPlayer.id } }); - - socket.emit( - "admin:log", - `Inventory for ${targetName} has been wiped.`, - ); - - const targetSocket = [...io.sockets.sockets.values()].find( - (s) => s.user?.id === targetPlayer.id, - ); - if (targetSocket) targetSocket.emit("player:inventory_data", []); + const target = await adminManager.clearInventory(targetName); + socket.emit("admin:log", `Inventory for ${target} has been wiped.`); break; } case "/reload_data": { socket.emit("admin:log", "Reloading all datapacks..."); - DatapackLoader.loadAll(); - io.emit("admin:log", "System: Datapacks reloaded by admin."); + await adminManager.reloadData(); break; } @@ -90,7 +48,6 @@ module.exports = (io, socket) => { socket.emit("admin:log", `Unknown admin command: ${cmd}`); } } catch (err) { - console.error("Admin Command Error:", err.message); socket.emit("admin:log", `Error: ${err.message}`); } }; diff --git a/game-server/src/sockets/handlers/chatHandler.js b/game-server/src/sockets/handlers/chatHandler.js index d9cb627..1cdc2b4 100644 --- a/game-server/src/sockets/handlers/chatHandler.js +++ b/game-server/src/sockets/handlers/chatHandler.js @@ -42,6 +42,7 @@ module.exports = (io, socket) => { if (messageData.type === "global") { io.emit("chat:new_message", messageData); } else { + console.log(payload.receiverId); socket .to(`user_${payload.receiverId}`) .emit("chat:new_message", messageData); diff --git a/game-server/src/sockets/handlers/friendHandler.js b/game-server/src/sockets/handlers/friendHandler.js index 6065315..00d2ab3 100644 --- a/game-server/src/sockets/handlers/friendHandler.js +++ b/game-server/src/sockets/handlers/friendHandler.js @@ -51,7 +51,7 @@ module.exports = (io, socket) => { const exists = await Friend.findOne({ where: { playerId: myId, friendId: friendId }, }); - + console.log(myId, friendId); if (!exists) { await Friend.bulkCreate([ { playerId: myId, friendId: friendId }, diff --git a/game-server/src/sockets/handlers/notificationHandler.js b/game-server/src/sockets/handlers/notificationHandler.js index 0f0e1e0..d1d190f 100644 --- a/game-server/src/sockets/handlers/notificationHandler.js +++ b/game-server/src/sockets/handlers/notificationHandler.js @@ -37,11 +37,11 @@ module.exports = (io, socket) => { socket.on("notification:dismiss", async ({ id }) => { try { await Notification.destroy({ - where: { id, playerId: socket.player.id }, + where: { id, playerId: socket.user.id }, }); const unreadCount = await Notification.count({ - where: { playerId: socket.player.id, isRead: false }, + where: { playerId: socket.user.id, isRead: false }, }); socket.emit("notifications:unread_count", unreadCount); } catch (e) { From 69f552345425218e92c3b8ead1493c19ad8b579f Mon Sep 17 00:00:00 2001 From: MaksSlyzar Date: Thu, 2 Apr 2026 22:41:25 +0300 Subject: [PATCH 4/8] Added SocialManager, Updated Chat. --- .../src/views/GameInterface/tabs/ChatTab.jsx | 61 ++- .../GameInterface/tabs/styles/ChatTab.css | 425 ++++++++++++++---- game-server/src/game/SocialManager.js | 84 ++++ game-server/src/index.js | 2 + .../src/sockets/handlers/socialHandler.js | 44 ++ game-server/src/sockets/socket.js | 4 +- 6 files changed, 513 insertions(+), 107 deletions(-) create mode 100644 game-server/src/game/SocialManager.js create mode 100644 game-server/src/sockets/handlers/socialHandler.js diff --git a/client/src/views/GameInterface/tabs/ChatTab.jsx b/client/src/views/GameInterface/tabs/ChatTab.jsx index 76a728d..fcbe52e 100644 --- a/client/src/views/GameInterface/tabs/ChatTab.jsx +++ b/client/src/views/GameInterface/tabs/ChatTab.jsx @@ -12,6 +12,7 @@ const ChatTab = () => { const [inputValue, setInputValue] = useState(""); const [showSidebar, setShowSidebar] = useState(true); const [isMobile, setIsMobile] = useState(window.innerWidth <= 768); + const [confirmUnfriend, setConfirmUnfriend] = useState(null); const messagesEndRef = useRef(null); @@ -80,6 +81,14 @@ const ChatTab = () => { setSearchResults([]); }; + const removeFriend = () => { + if (confirmUnfriend) { + socket.emit("friend:remove", { friendId: confirmUnfriend.id }); + if (activeChat === confirmUnfriend.id) setActiveChat("global"); + setConfirmUnfriend(null); + } + }; + const sendMessage = () => { if (!inputValue.trim() || !socket) return; socket.emit("chat:send_message", { @@ -88,8 +97,6 @@ const ChatTab = () => { receiverId: activeChat === "global" ? null : activeChat, }); setInputValue(""); - - console.log(activeChat === "global" ? null : activeChat); }; const selectChat = (id) => { @@ -105,6 +112,29 @@ const ChatTab = () => { return (
+ {confirmUnfriend && ( +
+
+

TERMINATE_CONTACT

+

+ Are you sure you want to remove {confirmUnfriend.username} from + your contacts? +

+
+ + +
+
+
+ )} +
@@ -156,12 +188,25 @@ const ChatTab = () => {
selectChat(friend.id)} >
- {friend.username} + className="chat-item-main" + onClick={() => selectChat(friend.id)} + > +
+ {friend.username} +
+
))}
diff --git a/client/src/views/GameInterface/tabs/styles/ChatTab.css b/client/src/views/GameInterface/tabs/styles/ChatTab.css index 702639a..cea5596 100644 --- a/client/src/views/GameInterface/tabs/styles/ChatTab.css +++ b/client/src/views/GameInterface/tabs/styles/ChatTab.css @@ -14,6 +14,7 @@ flex-direction: column; transition: all 0.3s ease; z-index: 2; + background: rgba(10, 15, 24, 0.6); } .chat-main { @@ -21,9 +22,303 @@ display: flex; flex-direction: column; background: rgba(0, 0, 0, 0.2); + position: relative; } -/* МОБІЛЬНА ВЕРСІЯ */ +/* SEARCH SECTION */ +.search-section { + padding: 20px 15px 15px; + border-bottom: 1px solid var(--border-color); + position: relative; + z-index: 10; +} + +.search-input-wrapper { + display: flex; + gap: 5px; + margin-top: 10px; +} + +.search-input-wrapper input { + flex: 1; + background: #05080c; + border: 1px solid var(--border-color); + color: #fff; + padding: 8px; + font-size: 12px; + font-family: "Geologica", sans-serif; +} + +.search-results-dropdown { + position: absolute; + top: 100%; + left: 15px; + right: 15px; + background: #0a0f18; + border: 1px solid var(--primary-color); + border-top: none; + max-height: 200px; + overflow-y: auto; + box-shadow: 0 5px 15px rgba(0, 0, 0, 0.8); +} + +.search-result-item { + padding: 10px; + display: flex; + justify-content: space-between; + align-items: center; + cursor: pointer; + font-size: 12px; + border-bottom: 1px solid rgba(255, 255, 255, 0.05); +} + +.search-result-item:hover { + background: rgba(0, 212, 255, 0.1); +} + +/* CHAT LIST & ITEMS */ +.chats-list { + flex: 1; + overflow-y: auto; +} + +.friends-section-label { + padding: 20px 15px 10px; + display: flex; + align-items: center; + gap: 10px; + opacity: 0.4; +} + +.label-text { + font-size: 10px; + letter-spacing: 2px; + font-weight: bold; +} + +.label-line { + flex: 1; + height: 1px; + background: var(--border-color); +} + +.chat-item { + padding: 12px 15px; + display: flex; + align-items: center; + justify-content: space-between; + cursor: pointer; + border-bottom: 1px solid rgba(255, 255, 255, 0.02); + transition: all 0.2s; +} + +.chat-item:hover { + background: rgba(255, 255, 255, 0.03); +} + +.chat-item.active { + background: rgba(0, 212, 255, 0.1); + box-shadow: inset 4px 0 0 var(--primary-color); +} + +.chat-item-main { + display: flex; + align-items: center; + gap: 12px; + flex: 1; +} + +.status-dot { + width: 8px; + height: 8px; + border-radius: 50%; + flex-shrink: 0; +} + +.status-dot.online { + background: #00ff88; + box-shadow: 0 0 5px #00ff88; +} + +.status-dot.offline { + background: #444; +} + +.unfriend-btn { + background: transparent; + border: none; + color: rgba(255, 255, 255, 0.2); + padding: 8px; + cursor: pointer; + transition: all 0.2s; + opacity: 0; +} + +.chat-item:hover .unfriend-btn { + opacity: 1; +} + +.unfriend-btn:hover { + color: #ff3e3e; + text-shadow: 0 0 8px rgba(255, 62, 62, 0.4); +} + +/* CHAT MAIN AREA */ +.chat-header { + padding: 15px; + display: flex; + align-items: center; + border-bottom: 1px solid var(--border-color); + background: rgba(10, 15, 24, 0.8); +} + +.active-chat-info { + display: flex; + align-items: center; + gap: 10px; +} + +.active-chat-info i { + color: var(--primary-color); +} + +.chat-messages { + flex: 1; + padding: 15px; + overflow-y: auto; + display: flex; + flex-direction: column; + gap: 8px; +} + +.message { + font-size: 13px; + line-height: 1.4; +} + +.msg-time { + color: rgba(255, 255, 255, 0.3); + margin-right: 8px; + font-family: monospace; +} + +.msg-author { + color: var(--primary-color); + font-weight: bold; + margin-right: 8px; +} + +.message.system .msg-author { + color: #ff3e3e; +} + +.message.system .msg-text { + color: #888; + font-style: italic; +} + +.chat-input-area { + padding: 15px; + background: #05080c; + display: flex; + gap: 10px; + border-top: 1px solid var(--border-color); +} + +.chat-input-area input { + flex: 1; + background: rgba(255, 255, 255, 0.05); + border: 1px solid var(--border-color); + color: #fff; + padding: 10px 15px; + outline: none; +} + +.send-btn { + background: transparent; + border: 1px solid var(--primary-color); + color: var(--primary-color); + padding: 0 20px; + cursor: pointer; + transition: all 0.2s; +} + +.send-btn:hover { + background: var(--primary-color); + color: #000; +} + +/* MODAL STYLES */ +.modal-overlay { + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + background: rgba(0, 0, 0, 0.85); + display: flex; + align-items: center; + justify-content: center; + z-index: 100; + backdrop-filter: blur(4px); +} + +.modal-content { + background: #0a0f18; + border: 1px solid #ff3e3e; + padding: 25px; + width: 90%; + max-width: 350px; + text-align: center; + box-shadow: 0 0 30px rgba(255, 62, 62, 0.15); +} + +.modal-content h3 { + color: #ff3e3e; + margin-bottom: 15px; + font-size: 14px; + letter-spacing: 2px; +} + +.modal-content p { + color: #aaa; + font-size: 13px; + margin-bottom: 25px; +} + +.modal-actions { + display: flex; + gap: 10px; +} + +.confirm-btn, +.cancel-btn { + flex: 1; + padding: 10px; + font-size: 11px; + font-weight: bold; + cursor: pointer; + transition: all 0.2s; +} + +.confirm-btn { + background: rgba(255, 62, 62, 0.1); + border: 1px solid #ff3e3e; + color: #ff3e3e; +} + +.confirm-btn:hover { + background: #ff3e3e; + color: #fff; +} + +.cancel-btn { + background: rgba(255, 255, 255, 0.05); + border: 1px solid var(--border-color); + color: #fff; +} + +/* MOBILE RESPONSIVENESS */ @media (max-width: 768px) { .chat-sidebar { width: 100%; @@ -57,41 +352,19 @@ } } -/* Стилі заголовків та вводу */ -.search-section { - padding: 20px 15px 15px; - border-bottom: 1px solid var(--border-color); -} - -.search-input-wrapper { - display: flex; - gap: 5px; - margin-top: 10px; -} - -.search-input-wrapper input { - flex: 1; - background: #05080c; - border: 1px solid var(--border-color); - color: #fff; - padding: 8px; - font-size: 12px; -} - -.add-friend-btn { - background: var(--primary-color); - border: none; - width: 35px; - cursor: pointer; -} - +/* Контейнер елемента списку */ .chat-item { - padding: 15px 20px; + padding: 12px 15px; display: flex; align-items: center; - gap: 12px; + justify-content: space-between; cursor: pointer; border-bottom: 1px solid rgba(255, 255, 255, 0.02); + transition: all 0.2s; +} + +.chat-item:hover { + background: rgba(255, 255, 255, 0.03); } .chat-item.active { @@ -99,84 +372,42 @@ box-shadow: inset 4px 0 0 var(--primary-color); } -.chat-header { - padding: 15px; +.chat-item-main { display: flex; align-items: center; - border-bottom: 1px solid var(--border-color); - background: rgba(10, 15, 24, 0.8); -} - -.chat-messages { + gap: 12px; flex: 1; - padding: 15px; - overflow-y: auto; } -.chat-input-area { - padding: 15px; - background: #05080c; - display: flex; - gap: 10px; -} - -.chat-input-area input { - flex: 1; - background: rgba(255, 255, 255, 0.05); - border: 1px solid var(--border-color); - color: #fff; - padding: 10px; -} - -.send-btn { +.unfriend-btn { background: transparent; - border: 1px solid var(--primary-color); - color: var(--primary-color); - padding: 0 15px; -} - -.search-section { - position: relative; - z-index: 10; -} - -.search-results-dropdown { - position: absolute; - top: 100%; - left: 15px; - right: 15px; - background: #0a0f18; - border: 1px solid var(--primary-color); - border-top: none; - max-height: 200px; - overflow-y: auto; - box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); -} - -.search-result-item { - padding: 10px; - display: flex; - justify-content: space-between; - align-items: center; + border: none; + color: rgba(255, 255, 255, 0.3); + padding: 8px; cursor: pointer; - font-size: 12px; - color: #fff; - border-bottom: 1px solid rgba(255, 255, 255, 0.05); + transition: all 0.2s; + opacity: 0; } -.search-result-item:hover { - background: rgba(0, 212, 255, 0.1); +@media (min-width: 769px) { + .chat-item:hover .unfriend-btn { + opacity: 1; + } } -.search-result-item i { - color: var(--primary-color); +@media (max-width: 768px) { + .unfriend-btn { + opacity: 1; + color: rgba(255, 255, 255, 0.5); + padding: 12px; + } + + .chat-item { + padding: 15px; + } } -.message.system .msg-author { +.unfriend-btn:hover { color: #ff3e3e; -} - -.message.system .msg-text { - color: #aaa; - font-style: italic; + text-shadow: 0 0 8px rgba(255, 62, 62, 0.4); } diff --git a/game-server/src/game/SocialManager.js b/game-server/src/game/SocialManager.js new file mode 100644 index 0000000..5b5b551 --- /dev/null +++ b/game-server/src/game/SocialManager.js @@ -0,0 +1,84 @@ +const { Player, Friend } = require("../models"); +const notificationManager = require("./NotificationManager"); +const { Op } = require("sequelize"); + +class SocialManager { + constructor() { + this.io = null; + } + + init(io) { + this.io = io; + } + + async searchPlayers(query, excludeId) { + return await Player.findAll({ + where: { + username: { [Op.like]: `%${query}%` }, + id: { [Op.ne]: excludeId }, + }, + limit: 5, + attributes: ["id", "username", "level"], + }); + } + + async sendFriendRequest(sender, targetId) { + await notificationManager.send({ + playerId: targetId, + type: "friend_request", + title: "NEW FRIEND REQUEST", + message: `${sender.username} wants to add you as a friend.`, + data: { fromId: sender.id }, + priority: "normal", + }); + } + + async acceptFriendRequest(myId, friendId, notificationId) { + const exists = await Friend.findOne({ + where: { playerId: myId, friendId: friendId }, + }); + + if (!exists) { + await Friend.bulkCreate([ + { playerId: myId, friendId: friendId }, + { playerId: friendId, friendId: myId }, + ]); + + await notificationManager.delete(notificationId, myId); + + await this.broadcastFriendListUpdate(myId); + await this.broadcastFriendListUpdate(friendId); + + return true; + } + return false; + } + + async getFriendList(playerId) { + const player = await Player.findByPk(playerId, { + include: [ + { + model: Player, + as: "Friends", + attributes: ["id", "username", "level"], + }, + ], + }); + return player?.Friends || []; + } + + async broadcastFriendListUpdate(playerId) { + if (!this.io) return; + + const list = await this.getFriendList(playerId); + const targetSocket = [...this.io.sockets.sockets.values()].find( + (s) => s.user?.id === playerId, + ); + + if (targetSocket) { + targetSocket.emit("friend:list", list); + } + } +} + +module.exports = new SocialManager(); diff --git a/game-server/src/index.js b/game-server/src/index.js index f311579..da54b17 100644 --- a/game-server/src/index.js +++ b/game-server/src/index.js @@ -12,6 +12,7 @@ const app = express(); const economyService = require("./game/EconomyService.js"); const NotificationManager = require("./game/NotificationManager.js"); const AdminManager = require("./game/AdminManager.js"); +const SocialManager = require("./game/SocialManager.js"); app.use( cors({ @@ -85,6 +86,7 @@ server.listen(config.port, async () => { NotificationManager.init(io); AdminManager.init(io); economyService.init(io); + SocialManager.init(io); await registerInApi(); setInterval(sendHeartbeat, HEARTBEAT_INTERVAL); console.log(`Server running on ${config.host}. PORT: ${config.port}`); diff --git a/game-server/src/sockets/handlers/socialHandler.js b/game-server/src/sockets/handlers/socialHandler.js new file mode 100644 index 0000000..516fa5b --- /dev/null +++ b/game-server/src/sockets/handlers/socialHandler.js @@ -0,0 +1,44 @@ +const socialManager = require("../../game/SocialManager"); + +module.exports = (io, socket) => { + if (!socialManager.io) socialManager.init(io); + + socket.on("player:search", async ({ query }) => { + try { + const players = await socialManager.searchPlayers(query, socket.user.id); + socket.emit("player:search_results", players); + } catch (e) { + console.error(e); + } + }); + + socket.on("friend:add", async ({ friendId }) => { + try { + await socialManager.sendFriendRequest(socket.user, friendId); + } catch (e) { + socket.emit("error", { message: "FAILED_TO_SEND_REQUEST" }); + } + }); + + socket.on("friend:accept", async ({ friendId, notificationId }) => { + try { + await socialManager.acceptFriendRequest( + socket.user.id, + friendId, + notificationId, + ); + } catch (e) { + console.error(e); + socket.emit("error", { message: "FAILED_TO_ACCEPT_FRIEND" }); + } + }); + + socket.on("friend:get_list", async () => { + try { + const list = await socialManager.getFriendList(socket.user.id); + socket.emit("friend:list", list); + } catch (e) { + console.error(e); + } + }); +}; diff --git a/game-server/src/sockets/socket.js b/game-server/src/sockets/socket.js index 1f2435a..43494bf 100644 --- a/game-server/src/sockets/socket.js +++ b/game-server/src/sockets/socket.js @@ -5,8 +5,8 @@ const craftingHandler = require("./handlers/craftingHandler"); const adminHandler = require("./handlers/adminHandler"); const dungeonHandler = require("./handlers/dungeonHandler"); const chatHandler = require("./handlers/chatHandler"); -const friendHandler = require("./handlers/friendHandler"); const notificationHandler = require("./handlers/notificationHandler"); +const socialHandler = require("./handlers/socialHandler"); const initSockets = (io) => { io.use(socketAuth); @@ -18,7 +18,7 @@ const initSockets = (io) => { adminHandler(io, socket); dungeonHandler(io, socket); chatHandler(io, socket); - friendHandler(io, socket); + socialHandler(io, socket); notificationHandler(io, socket); }); }; From d245eebac174227521926d141a1dd8014f800bbd Mon Sep 17 00:00:00 2001 From: MaksSlyzar Date: Fri, 3 Apr 2026 01:25:20 +0300 Subject: [PATCH 5/8] Added remove. Updated friend list. Fixed friend accept notification. --- .../GameInterface/tabs/NotificationTab.jsx | 2 +- game-server/src/game/SocialManager.js | 13 +- game-server/src/models/index.js | 2 + .../src/sockets/handlers/friendHandler.js | 114 ------------------ .../src/sockets/handlers/socialHandler.js | 16 ++- 5 files changed, 25 insertions(+), 122 deletions(-) delete mode 100644 game-server/src/sockets/handlers/friendHandler.js diff --git a/client/src/views/GameInterface/tabs/NotificationTab.jsx b/client/src/views/GameInterface/tabs/NotificationTab.jsx index e57fe3c..891a5e0 100644 --- a/client/src/views/GameInterface/tabs/NotificationTab.jsx +++ b/client/src/views/GameInterface/tabs/NotificationTab.jsx @@ -30,7 +30,7 @@ const NotificationsTab = () => { const handleAction = (id, action, data) => { if (action === "accept_friend") { - socket.emit("friend:accept", { friendId: data.fromId }); + socket.emit("friend:accept", { id, friendId: data.fromId }); socket.emit("notification:read", { id }); } else if (action === "dismiss") { socket.emit("notification:dismiss", { id }); diff --git a/game-server/src/game/SocialManager.js b/game-server/src/game/SocialManager.js index 5b5b551..a5e718a 100644 --- a/game-server/src/game/SocialManager.js +++ b/game-server/src/game/SocialManager.js @@ -21,7 +21,19 @@ class SocialManager { attributes: ["id", "username", "level"], }); } + async removeFriend(myId, friendId) { + await Friend.destroy({ + where: { + [Op.or]: [ + { playerId: myId, friendId: friendId }, + { playerId: friendId, friendId: myId }, + ], + }, + }); + await this.broadcastFriendListUpdate(myId); + await this.broadcastFriendListUpdate(friendId); + } async sendFriendRequest(sender, targetId) { await notificationManager.send({ playerId: targetId, @@ -43,7 +55,6 @@ class SocialManager { { playerId: myId, friendId: friendId }, { playerId: friendId, friendId: myId }, ]); - await notificationManager.delete(notificationId, myId); await this.broadcastFriendListUpdate(myId); diff --git a/game-server/src/models/index.js b/game-server/src/models/index.js index cc0076f..e733245 100644 --- a/game-server/src/models/index.js +++ b/game-server/src/models/index.js @@ -3,6 +3,7 @@ const Player = require("./Player"); const Inventory = require("./Inventory"); const setupAssociations = require("./associations"); const Notification = require("./Notification"); +const Friend = require("./Friend.js"); Player.hasMany(Inventory, { foreignKey: "playerId", as: "inventory" }); Inventory.belongsTo(Player, { foreignKey: "playerId" }); @@ -13,4 +14,5 @@ module.exports = { Player, Inventory, Notification, + Friend, }; diff --git a/game-server/src/sockets/handlers/friendHandler.js b/game-server/src/sockets/handlers/friendHandler.js deleted file mode 100644 index 00d2ab3..0000000 --- a/game-server/src/sockets/handlers/friendHandler.js +++ /dev/null @@ -1,114 +0,0 @@ -const Player = require("../../models/Player"); -const Friend = require("../../models/Friend"); -const NotificationManager = require("../../game/NotificationManager"); -const Notification = require("../../models/Notification"); - -module.exports = (io, socket) => { - socket.on("player:search", async ({ query }) => { - try { - const players = await Player.findAll({ - where: { - username: { [require("sequelize").Op.like]: `%${query}%` }, - id: { [require("sequelize").Op.ne]: socket.user.id }, - }, - limit: 5, - attributes: ["id", "username", "level"], - }); - socket.emit("player:search_results", players); - } catch (e) { - console.error(e); - } - }); - - socket.on("friend:add", async ({ friendId }) => { - try { - const player = socket.user; - - await NotificationManager.createNotification({ - playerId: friendId, - type: "friend_request", - title: "NEW FRIEND REQUEST", - message: `${player.username} wants to add you as a friend.`, - data: { fromId: player.id }, - }); - - io.to(friendId).emit("notification:new", { - type: "friend_request", - title: "NEW FRIEND REQUEST", - message: `${player.username} wants to add you as a friend.`, - data: { fromId: player.id }, - createdAt: new Date(), - }); - } catch (e) { - socket.emit("error", { message: "FAILED_TO_SEND_REQUEST" }); - } - }); - - socket.on("friend:accept", async ({ friendId, notificationId }) => { - try { - const myId = socket.user.id; - - const exists = await Friend.findOne({ - where: { playerId: myId, friendId: friendId }, - }); - console.log(myId, friendId); - if (!exists) { - await Friend.bulkCreate([ - { playerId: myId, friendId: friendId }, - { playerId: friendId, friendId: myId }, - ]); - - await Notification.destroy({ - where: { id: notificationId, playerId: myId }, - }); - - const myUpdated = await Player.findByPk(myId, { - include: [ - { - model: Player, - as: "Friends", - attributes: ["id", "username", "level"], - }, - ], - }); - socket.emit("friend:list", myUpdated.Friends || []); - - const friendUpdated = await Player.findByPk(friendId, { - include: [ - { - model: Player, - as: "Friends", - attributes: ["id", "username", "level"], - }, - ], - }); - io.to(friendId).emit("friend:list", friendUpdated.Friends || []); - - const unreadCount = await Notification.count({ - where: { playerId: myId, isRead: false }, - }); - socket.emit("notifications:unread_count", unreadCount); - } - } catch (e) { - console.error(e); - socket.emit("error", { message: "FAILED_TO_ACCEPT_FRIEND" }); - } - }); - - socket.on("friend:get_list", async () => { - try { - const player = await Player.findByPk(socket.user.id, { - include: [ - { - model: Player, - as: "Friends", - attributes: ["id", "username", "level"], - }, - ], - }); - socket.emit("friend:list", player.Friends || []); - } catch (e) { - console.error(e); - } - }); -}; diff --git a/game-server/src/sockets/handlers/socialHandler.js b/game-server/src/sockets/handlers/socialHandler.js index 516fa5b..f0eca54 100644 --- a/game-server/src/sockets/handlers/socialHandler.js +++ b/game-server/src/sockets/handlers/socialHandler.js @@ -20,13 +20,17 @@ module.exports = (io, socket) => { } }); - socket.on("friend:accept", async ({ friendId, notificationId }) => { + socket.on("friend:remove", async ({ friendId }) => { try { - await socialManager.acceptFriendRequest( - socket.user.id, - friendId, - notificationId, - ); + await socialManager.removeFriend(socket.user.id, friendId); + } catch (e) { + console.error(e); + socket.emit("error", { message: "FAILED_TO_REMOVE_FRIEND" }); + } + }); + socket.on("friend:accept", async ({ friendId, id }) => { + try { + await socialManager.acceptFriendRequest(socket.user.id, friendId, id); } catch (e) { console.error(e); socket.emit("error", { message: "FAILED_TO_ACCEPT_FRIEND" }); From 9fcc6e0cb64c8ded8315d58edab1237d7da6c772 Mon Sep 17 00:00:00 2001 From: MaksSlyzar Date: Fri, 3 Apr 2026 01:26:48 +0300 Subject: [PATCH 6/8] Fixed game server playersOnline. --- api/src/models/GameServer.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/api/src/models/GameServer.js b/api/src/models/GameServer.js index 3a2dcc1..719e4d2 100644 --- a/api/src/models/GameServer.js +++ b/api/src/models/GameServer.js @@ -8,5 +8,9 @@ const gameServerSchema = new mongoose.Schema({ description: { type: String, default: "Description..." }, isModded: { type: Boolean, default: false }, region: { type: String, default: "Null" }, + playersOnline: { + type: Number, + default: 0, + }, }); module.exports = mongoose.model("GameServer", gameServerSchema); From 292b21d203f8db1821c74771b5631001710af93d Mon Sep 17 00:00:00 2001 From: MaksSlyzar Date: Fri, 3 Apr 2026 01:34:56 +0300 Subject: [PATCH 7/8] Update title --- client/index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/index.html b/client/index.html index 7c0c5fa..7b685b1 100644 --- a/client/index.html +++ b/client/index.html @@ -8,7 +8,7 @@ name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no, interactive-widget=resizes-content" /> - client + Galaxy Strike Online Date: Fri, 3 Apr 2026 01:40:44 +0300 Subject: [PATCH 8/8] Fixed User model --- api/src/models/User.js | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/api/src/models/User.js b/api/src/models/User.js index 060ee33..46c5327 100644 --- a/api/src/models/User.js +++ b/api/src/models/User.js @@ -22,10 +22,7 @@ const userSchema = new mongoose.Schema( required: [true, "Password is required"], minlength: [6, "Password must be at least 6 characters long"], }, - playersOnline: { - type: Number, - default: 0, - }, + role: { type: String, enum: ["user", "admin"],