为什么我使用 Roblox Lua Players.LocalPlayer.Mouse:Getmouse() 会出错?
Why is there an error when I use Roblox Lua Players.LocalPlayer.Mouse:Getmouse()?
我正在尝试制作一款游戏,但它严重依赖鼠标,但发生错误,提示“尝试使用 'GetMouse' 索引 nil”,无论我做什么,它都会产生此错误。也许我的游戏没有更新(我认为它已更新)。我之前问过类似的问题,但现在我确定是 Roblox Studio 的错。
代码如下:
local player = game.Players.LocalPlayer
local mouse = player:GetMouse()
local Block = game.ServerStorage.Experimental
function place()
PlacedBlock = Block:Clone()
PlacedBlock.Parent = workspace
PlacedBlock.Position = Mouse.Hit.p
end
Mouse.MouseButton1Click:Connect(place)
第一个问题是 MouseButton1Click
不是 GetMouse()
的有效成员。 MouseButton1Click
用于 GUI 对象等内容。 Button1Down
用于 GetMouse()
。此外,.p
已弃用,请改用 .Position
。
其次,您需要将您的部分放在 ReplicatedStorage
,而不是 ServerStorage
。客户端无法访问 ServerStorage
。确保您使用的是 LocalScript
.
固定:
local player = game.Players.LocalPlayer
local mouse = player:GetMouse()
local Block = game.ReplicatedStorage.Experimental
function place()
PlacedBlock = Block:Clone()
PlacedBlock.Parent = workspace
PlacedBlock.Position = mouse.Hit.Position
end
mouse.Button1Down:Connect(place)
现在有一个问题。当您放置零件时,它只会显示给您,不会显示给其他任何人。要解决此问题,您需要使用 Remote Events.
我正在尝试制作一款游戏,但它严重依赖鼠标,但发生错误,提示“尝试使用 'GetMouse' 索引 nil”,无论我做什么,它都会产生此错误。也许我的游戏没有更新(我认为它已更新)。我之前问过类似的问题,但现在我确定是 Roblox Studio 的错。
代码如下:
local player = game.Players.LocalPlayer
local mouse = player:GetMouse()
local Block = game.ServerStorage.Experimental
function place()
PlacedBlock = Block:Clone()
PlacedBlock.Parent = workspace
PlacedBlock.Position = Mouse.Hit.p
end
Mouse.MouseButton1Click:Connect(place)
第一个问题是 MouseButton1Click
不是 GetMouse()
的有效成员。 MouseButton1Click
用于 GUI 对象等内容。 Button1Down
用于 GetMouse()
。此外,.p
已弃用,请改用 .Position
。
其次,您需要将您的部分放在 ReplicatedStorage
,而不是 ServerStorage
。客户端无法访问 ServerStorage
。确保您使用的是 LocalScript
.
固定:
local player = game.Players.LocalPlayer
local mouse = player:GetMouse()
local Block = game.ReplicatedStorage.Experimental
function place()
PlacedBlock = Block:Clone()
PlacedBlock.Parent = workspace
PlacedBlock.Position = mouse.Hit.Position
end
mouse.Button1Down:Connect(place)
现在有一个问题。当您放置零件时,它只会显示给您,不会显示给其他任何人。要解决此问题,您需要使用 Remote Events.