Untitled
local movesetService = require(game.ServerStorage.EBGStyleMovesetService) local remoteBackpack = game.ReplicatedStorage.Backpack local remoteMoveReturn = game.ReplicatedStorage.PlayerEquippedMoves local remoteMoveExecution = game.ReplicatedStorage.ExecuteMove local players = game:GetService("Players") local function deepCopy(original) local copy = {} for key, value in original do copy[key] = type(value) == "table" and deepCopy(value) or value end return copy end remoteBackpack.OnServerEvent:Connect(function(plr, move, slot) if movesetService.EquippedPlrMoves[plr.UserId] == deepCopy(move) then print('a') movesetService.EquippedPlrMoves[plr.UserId] = {} remoteBackpack:FireClient(plr, movesetService.EquippedPlrMoves[plr.UserId], slot) else movesetService.EquippedPlrMoves[plr.UserId] = deepCopy(move) remoteBackpack:FireClient(plr, movesetService.EquippedPlrMoves[plr.UserId], slot) end end) players.PlayerAdded:Connect(function(plr) movesetService.plrMoves[plr.UserId] = deepCopy(movesetService.Elements.Fire) end) remoteMoveReturn.OnServerInvoke = function(plr) return deepCopy(movesetService.plrMoves[plr.UserId]) end remoteMoveExecution.OnServerEvent:Connect(function(plr) movesetService.ReleaseMove(plr) end)
Leave a Comment