我一直想在罗布洛工作室做一场剑战游戏。我已经做了一个商店Gui,所以你可以点击文本按钮购买剑。它工作得很好,你点击它检查你的杀戮,如果你有足够的武器,你就会得到武器。在这种情况下,它是0杀人。但是当你拔出剑时,你就不能使用它。我已经做了我的研究,我相信这是因为它是在本地而不是在全球范围内被克隆的。是这种情况吗?如果是的话,我该如何解决呢?
文本按钮中的脚本:
local player = game.Players.LocalPlayer
script.Parent.MouseButton1Click:Connect(function()
if player.leaderstats.Kills.Value >= 0 then
local clonar = game.ServerStorage.ClassicSword:Clone()
clonar.Parent = player.Backpack
end
end)提前感谢!
发布于 2022-02-20 11:26:00
当需要在服务器上执行工作时(与客户机上的本地工作不同),您可以使用RemoteEvents跨客户端服务器边界进行通信。
因此,首先,您需要在共享位置创建一个RemoteEvent,比如ReplicatedStorage。
接下来,更新客户端LocalScript以触发RemoteEvent:
local player = game.Players.LocalPlayer
local buyEvent = game.ReplicatedStorage.RemoteEvent
script.Parent.MouseButton1Click:Connect( function()
buyEvent:FireServer()
end)最后,您需要在工作区或ServerScriptService中创建一个脚本,该脚本侦听该RemoteEvent并执行为播放机提供项目的工作:
local buyEvent = game.ReplicatedStorage.RemoteEvent
buyEvent.OnServerEvent:Connect( function(player)
if player.leaderstats.Kills.Value >= 0 then
local clonar = game.ServerStorage.ClassicSword:Clone()
clonar.Parent = player.Backpack
end
end)https://stackoverflow.com/questions/71190965
复制相似问题