船产卵(Roblox Studio)
Posted
技术标签:
【中文标题】船产卵(Roblox Studio)【英文标题】:Boat Spawn (Roblox Studio) 【发布时间】:2021-06-30 02:09:19 【问题描述】:我正在尝试(我是新人)制作一款你必须用船互相攻击的游戏。每个岛上都有一个按钮,当你按下它时,应该会出现一艘船。 (到目前为止有效) 但是,一旦您想生成一艘新船,它就会删除每个人的船。我认为使用 player.id 是有意义的,但这仍然行不通。有谁知道解决办法吗?
您将在下面找到隐藏在某个部分中的代码。
谢谢!
代码:
local cd = script.Parent.ClickDetector
local boat = script.Parent.Parent.Firstboat
local button = script.Parent
local debounce = false
game.Players.PlayerAdded:Connect(function(player)
print(player.UserId)
local plruserid = player.UserId
print(player.Name)
boat.Parent = game.ServerStorage
cd.MouseHoverEnter:Connect(function()
button.Transparency = 0.5
end)
cd.MouseHoverLeave:Connect(function()
button.Transparency = 0
end)
cd.MouseClick:Connect(function()
local SetNameToBoat = plruserid
print (SetNameToBoat)
local oldboat = workspace:FindFirstChild(SetNameToBoat)
if not debounce then
if oldboat then
oldboat : destroy()
end
debounce = true
local NewBoat = boat:clone()
NewBoat.Name = (SetNameToBoat)
NewBoat.Parent = game.Workspace
wait(5)
debounce = false
end
end)
end)
【问题讨论】:
plruserid 是事件方法中的一个变量,它使得一个变量没有为整个脚本初始化。将local plruserid = null
放在脚本顶部,在那里你持有local boat
,然后将当前局部变量(local plruserid = player.UserId
)替换为plruserid = player.UserId
感谢您的回复!当我在脚本顶部添加 (local plruserid = null) 时,它会在文本下方显示一条红线? (没有错误或只是一条红线)或者这无关紧要吗?看来他不知道null..
@micegan 这并不能解决问题
【参考方案1】:
我简化了代码,找到了解决办法:
local cd = workspace.Button:WaitForChild('ClickDetector')
local boat = game:GetService('ServerStorage'):WaitForChild('Boat')
local button = workspace:WaitForChild('Button')
local debounce = false
cd.MouseHoverEnter:Connect(function()
button.Transparency = 0.5
end)
cd.MouseHoverLeave:Connect(function()
button.Transparency = 0
end)
cd.MouseClick:Connect(function(player)
local plruserid = player.UserId
local SetNameToBoat = plruserid
print(SetNameToBoat)
local oldboat = workspace:FindFirstChild(SetNameToBoat)
if not debounce then
if oldboat then
oldboat:destroy()
end
debounce = true
local NewBoat = boat:clone()
NewBoat.Name = SetNameToBoat
NewBoat.Parent = game.Workspace
wait(5)
debounce = false
end
end)
【讨论】:
不客气!您能否将我的答案标记为正确,以便人们知道问题已解决?以上是关于船产卵(Roblox Studio)的主要内容,如果未能解决你的问题,请参考以下文章