【问题标题】:trying to make all parts universal fails试图使所有部件通用失败
【发布时间】:2021-08-02 04:56:12
【问题描述】:

我的代码是这样的:

prt = workspace:GetChildren()
for i = prt, 1, -1 do
    prt.Material = Enum.Material.Plastic
    prt.TopSurface = Enum.SurfaceType.Universal
    prt.BottomSurface = Enum.SurfaceType.Universal
    prt.LeftSurface = Enum.SurfaceType.Universal
    prt.RightSurface = Enum.SurfaceType.Universal
    prt.FrontSurface = Enum.SurfaceType.Universal
    prt.BackSurface = Enum.SurfaceType.Universal
end

这是结果 startend 我现在需要帮助,请好的

【问题讨论】:

    标签: roblox


    【解决方案1】:

    您没有正确循环 prt 数组中的元素。查看Lua Manual 以获取for-loops 的帮助。循环所有对象的一种方法是使用ipairs()

    local parts = workspace:GetChildren()
    for i, prt in ipairs(parts) do
        if not prt:IsA("BasePart") then
            continue
        end
    
        prt.Material = Enum.Material.Plastic
        prt.TopSurface = Enum.SurfaceType.Universal
        prt.BottomSurface = Enum.SurfaceType.Universal
        prt.LeftSurface = Enum.SurfaceType.Universal
        prt.RightSurface = Enum.SurfaceType.Universal
        prt.FrontSurface = Enum.SurfaceType.Universal
        prt.BackSurface = Enum.SurfaceType.Universal
    end
    

    您应该小心,workspace:GetChildren() 会在工作区中获取所有内容,包括玩家的角色模型。所以最好把需要改的东西整理成一个文件夹什么的。

    【讨论】:

    • 我想要每个部分,不仅仅是部分,而是谢谢
    • 此解决方案适用于从 BasePart 子类继承的任何部件。循环开始时的检查是为了防止尝试在没有这些字段的对象上设置属性,例如灯光、脚本或模型。
    猜你喜欢
    • 2015-07-08
    • 2020-05-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-13
    • 2021-02-27
    • 1970-01-01
    • 2011-05-09
    相关资源
    最近更新 更多