SetMinuteDuration: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
(New page: __NOTOC__ {{Client function}} Sets the real-world duration of an ingame minute. The GTA default is 1000. ==Syntax== <syntaxhighlight lang="lua"> bool setMinuteDuration ( int milliseconds ) </syntaxhighlight> ===Req...)
 
(Replace to predefined variables.)
 
(7 intermediate revisions by 7 users not shown)
Line 1: Line 1:
__NOTOC__
__NOTOC__
{{Client function}}
{{Server client function}}
Sets the real-world duration of an ingame minute. The GTA default is 1000.
Sets the real-world duration of an ingame minute. The GTA default is 1000.


Line 9: Line 9:


===Required Arguments===
===Required Arguments===
*'''milliseconds''': the new duration of an ingame minute
*'''milliseconds''': the new duration of an ingame minute, accepted values 0 - 2147483647.


===Returns===
===Returns===
Line 16: Line 16:
==Example==
==Example==
This example will make the ingame time correspond to the real-world time of the server.
This example will make the ingame time correspond to the real-world time of the server.
 
<section class="server" name="Server" show="true">
Server code:
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
function syncRealTime(player)
function resourceStart()
    -- get the current real time and send it to the player
     local realtime = getRealTime()
     local realtime = getRealTime()
    triggerClientEvent(player, "doSyncRealTime", getRootElement(), realtime.hour, realtime.minute)
end


function resourceStart()
     setTime(realtime.hour, realtime.minute)
    -- when the resource starts, send the real time to all players currently in the server
    local players = getElementsByType("player")
    for i,player in ipairs(players) do
        syncRealTime(player)
    end
end
addEventHandler("onResourceStart", getResourceRootElement(getThisResource()), resourceStart)
 
function playerJoin()
    -- send the real time to joining players
    syncRealTime(source)
end
addEventHandler("onPlayerJoin", getRootElement(), playerJoin)
</syntaxhighlight>
 
Client code:
<syntaxhighlight lang="lua">
function syncRealTime(h, m)
    -- set the ingame time
     setTime(h, m)
    -- make ingame time progress at the same rate as real time (60 seconds per minute)
     setMinuteDuration(60000)
     setMinuteDuration(60000)
end
end
-- attach the above function to the doSyncRealTime event
addEventHandler("onResourceStart", resourceRoot, resourceStart)
addEvent("doSyncRealTime", true)
addEventHandler("doSyncRealTime", getRootElement(), syncRealTime)
</syntaxhighlight>
</syntaxhighlight>
</section>


==See Also==
==See Also==
{{Client_world_functions}}
{{World_functions}}
 
[[ru:setMinuteDuration]]

Latest revision as of 23:14, 11 January 2023

Sets the real-world duration of an ingame minute. The GTA default is 1000.

Syntax

bool setMinuteDuration ( int milliseconds )

Required Arguments

  • milliseconds: the new duration of an ingame minute, accepted values 0 - 2147483647.

Returns

Returns true if successful, false otherwise.

Example

This example will make the ingame time correspond to the real-world time of the server.

Click to collapse [-]
Server
function resourceStart()
    local realtime = getRealTime()

    setTime(realtime.hour, realtime.minute)
    setMinuteDuration(60000)
end
addEventHandler("onResourceStart", resourceRoot, resourceStart)

See Also

Shared