通过脚本将脚本父级的父级从工作区更改为您Roblox.Lua

Change the parent of the parent of the script from Workspace to you by a script Roblox.Lua

所以我最近在我的 roblox 游戏中制作了一辆汽车,其中我制作了一个可以在汽车顶部放灯的工具(带有表情),但现在我希望该工具仅在玩家时可见在车上,下车时将其取下。所以我创建了一个变量来检查当前坐着的玩家的名字,我打印了这个变量及其我的名字,这很好,但是当我将这个变量(玩家的名字)设为父级的父级时,它不起作用.. 我尝试用我的 roblox 名称(与变量完全相同)替换它,这个 DID 工作。所以现在我的问题是:我如何在使用变量(如果可能的话)的同时仍然这样做?

脚本在这里:

    if Seat.Occupant == nil then
        script.Parent.Parent = workspace
    end
    if Seat.Occupant ~= nil then
        GP.Name = Seat.Occupant.Name
        script.Parent.Parent = GP.(the variable, which is the person sitting).Backpack
    end

GP 只是 game.players,因为这对我来说更容易 :')

还有一个额外的问题是我如何才能使该工具第二次工作,因为当我使用该工具时,走出去,再次走进去,它就不再工作了。至少,光不工作了消失,表情仍然被触发,我觉得这很奇怪。 试了很多,还是不行,有知道解决方法的请告诉我!

谢谢。

Seat.Occupant returns 字符的 Humanoid,因此引用其父级即可得到该字符。这会将工具放在角色中,装备它,如果您希望它只能在车辆中使用,那么这很可能是您想要的。

不过,我不知道 GP 里面的对象是什么。

if Seat.Occupant == nil then
    script.Parent.Parent = workspace
else
    GP.Name = Seat.Occupant.Name
    script.Parent.Parent = Seat.Occupant.Parent
end