내가 여러 다른 NumberValues 및 BoolValues을 추가 한 변경하지 않는, 아직 내가 예를 들어이 같은 뭔가 값을 변경하려고하면Roblox 루아 값은
local i = 1
for i == 1
game.Workspace.Time.Value = 0
wait(120)
game.Workspace.Time.Value + 0.5
end
및 작업 공간의 NumberValue 변경되지 않습니다
내가 여러 다른 NumberValues 및 BoolValues을 추가 한 변경하지 않는, 아직 내가 예를 들어이 같은 뭔가 값을 변경하려고하면Roblox 루아 값은
local i = 1
for i == 1
game.Workspace.Time.Value = 0
wait(120)
game.Workspace.Time.Value + 0.5
end
및 작업 공간의 NumberValue 변경되지 않습니다
임의 사이드 참고 사항 : game.Workspace는 더 이상 사용되지 않으며 'workspace'를 대신 사용하십시오.
또한 그 뒤에 숨겨진 구문은 모두 잘못되었습니다. 이는 정직한 실수입니다. 그것은 다음과 같아야합니다
그러나-- Assuming "Time" is a 'NumberValue' under workspace
-- Assuming this script is in workspace
local i = 1
while (i == 1) do
local time = workspace:FindFirstChild("Time") -- Usage of the 'FindFirstChild' method
time.Value = time.Value + 0.5
wait(120)
end
,이 자체가 이것은 당신이에서 실행중인 어떤 스레드 얻을 것이며,이를 위해 내가 코 루틴을 제안하기 때문에 나쁜 관행입니다!
local function addTime()
local varContainer = workspace:GetFirstChild("Time")
repeat
varContainer.Value = varContainer.Value + 0.5
wait(120)
until false
end
local newThread = coroutine.create(addTime) -- Create the new coroutine
coroutine.resume(newThread) -- Run it forever in another running thread
Coroutines를 가져올 이유가 없습니다 – warspyking
예 그 coroutines 경우 알아하지만 내 스튜디오 충돌을 테스트하는 동안 시간을 확인하려고하면 – MCbigminer
나는 단순히 드라이버 대본이 될 것이라고 가정하고, 다른 블록으로 coroutines 준, 그리고 더 많은 내용이 블록을 따르려고했다. –
lua가 다른 모든 언어처럼 작동하면'game.Workspace.Time.Value + 0.5'는'Value'의 이전 값을 덮어 쓰지 않습니다. 숫자를 더한 다음 결과를 무시합니다. 아마도 필요할 것입니다. '+ ='. – Carcigenicate
또한 각 루프가 시작될 때 다시 0으로 재설정하므로 'Value'가 변경 되더라도 즉각 0으로 변경됩니다. – Carcigenicate