I feel really stupid D: Not the best with making scripts, but how do I create a basic day/night script?
In many of my games, I use code similar to this to change the time of day at a rate 60 times as fast as real time:
while true do Game:GetService('Lighting'):SetMinutesAfterMidnight(Game:GetService('Lighting'):GetMinutesAfterMidnight() + wait()) end
The reason this is 60 times as fast as real time is because the wait
function returns the time it waited in seconds, while GetMinutesAfterMidnight
expects minutes. If you want the in-game time to correspond to real time, multiply the result of the call to wait
by 60. You can multiply or divide it by other values to make it faster or slower.
This solution is optimal and better than previously described ones because it adds the result of the call to wait
to the time. This means it takes into consideration the fluctuations in the time that is actually waited for. It therefore provides a more stable time cycle, while other the other solutions described add a certain amount of time to the game time every time wait
returns, which can happen at varying periods of time.
l = game:service("Lighting") while true do l:SetMinutesAfterMidnight(l:GetMinutesAfterMidnight()+.5) wait(.05) end
The easiest way to change the time mathematically is to use the :SetMinutesAfterMidnight() method of the lighting. The concept goes like this:
local lighting = Game.Lighting while wait() do local newTime= lighting:GetMinutesAfterMidnight(); lighting:SetMinutesAfterMidnight( newTime + .5 ) end
Alright a basic way to create a day and night script is
while wait(1/2) do Game.Lighting:SetMinutesAfterMidnight(Game.Lighting:GetMinutesAfterMidnight()+1/5) end
The way this works is that we have a while loop that runs every half a second. Then we use SetMinutesAfterMidnight based off GetMinutesAfterMidnight and after that we add a 1/5 of a minute.
(So to make this faster or slower change the looping time or the addition of minutes time)
curse you MrNicNac
Locked by Thewsomeguy and Articulating
This question has been locked to preserve its current state and prevent spam and unwanted comments and answers.
Why was this question closed?