Roblox Gui Включение / выключение только при первом нажатии - PullRequest
0 голосов
/ 31 января 2020

My gui включается при прикосновении к NP C. Показывает кнопку «Выкл.». Когда кнопка выключения нажата в первый раз, она отключает gui, устанавливая frame.Visible = false и gui .Enabled = false.

Когда я снова касаюсь NP C, gui показывает, как и должно. Хотя кнопка не заставляет свойства быть установлены в ложь. Я вывел значение frame.Visible, и он выводит «False», хотя в окне «Properties» значение отображается как «True».

Что здесь происходит?

--NPC Script
local soldier = game.Workspace["Level6"].Soldier.Humanoid.RootPart
local player = game.Players.LocalPlayer

local function onTouch(touchPart)
    if touchPart.Parent:FindFirstChild("Humanoid") then
        local gui = game.Players.LocalPlayer.PlayerGui.EndScreenGui
        local frame = gui.Frame

        frame.Visible = true
        gui.Enabled = true
        print("On")
    end
end

soldier.Touched:Connect(onTouch)

А вот мой gui код:

local button = script.Parent

function onClicked()
    local frame = button.Parent
    local gui = frame.Parent

    --frame.Visible = false
    gui.Enabled = false
    print(frame.Visible)
end

button.MouseButton1Click:Connect(onClicked)

1 Ответ

0 голосов
/ 05 мая 2020

Если мы сделаем подсветку синтаксиса, мы увидим это:

function onClicked()
    local frame = button.Parent
    local gui = frame.Parent

    --frame.Visible = false
    gui.Enabled = false
    print(frame.Visible)
end

Строка frame.Visible закомментирована, поэтому она не работает. Удалите -- перед этой строкой, и ваш сценарий должен быть в порядке.

...