首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >本地克隆而非本地克隆[Lua]

本地克隆而非本地克隆[Lua]
EN

Stack Overflow用户
提问于 2022-02-20 02:40:17
回答 1查看 72关注 0票数 0

我一直想在罗布洛工作室做一场剑战游戏。我已经做了一个商店Gui,所以你可以点击文本按钮购买剑。它工作得很好,你点击它检查你的杀戮,如果你有足够的武器,你就会得到武器。在这种情况下,它是0杀人。但是当你拔出剑时,你就不能使用它。我已经做了我的研究,我相信这是因为它是在本地而不是在全球范围内被克隆的。是这种情况吗?如果是的话,我该如何解决呢?

文本按钮中的脚本:

代码语言:javascript
复制
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)

提前感谢!

EN

回答 1

Stack Overflow用户

发布于 2022-02-20 11:26:00

当需要在服务器上执行工作时(与客户机上的本地工作不同),您可以使用RemoteEvents跨客户端服务器边界进行通信。

因此,首先,您需要在共享位置创建一个RemoteEvent,比如ReplicatedStorage。

接下来,更新客户端LocalScript以触发RemoteEvent:

代码语言:javascript
复制
local player = game.Players.LocalPlayer
local buyEvent = game.ReplicatedStorage.RemoteEvent

script.Parent.MouseButton1Click:Connect( function()
    buyEvent:FireServer()
end)

最后,您需要在工作区或ServerScriptService中创建一个脚本,该脚本侦听该RemoteEvent并执行为播放机提供项目的工作:

代码语言:javascript
复制
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)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71190965

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档