mapmanager

Mapmanager

Mapmanager is an included citizenfx resource that handles map changes, game types, and compatability between gametypes and maps.

Resource Structure

Client Scripts

Server Scripts

Shared Scripts

Exports

Exports are called using exports[“mapmanger”]:exportname(args)

getCurrentGameType

Returns the current game type.

Arguments : None

-- mapmanager_server.lua

function getCurrentGameType()
    return currentGameType
end

getCurrentMap

Returns the current map.

Arguments : None

-- mapmanager_server.lua

function getCurrentMap()
    return currentMap
end

changeGameType

Changes the current game type.

Arguments : gameType

-- mapmanager_server.lua

function changeGameType(gameType)
    if currentMap and not doesMapSupportGameType(gameType, currentMap) then
        StopResource(currentMap)
    end

    if currentGameType then
        StopResource(currentGameType)
    end

    StartResource(gameType)
end

changeMap

Changes the current map

Arguments : map

-- mapmanager_server.lua


function changeMap(map)
    if currentMap then
        StopResource(currentMap)
    end

    StartResource(map)
end

doesMapSupportGameType

Returns a bool variables as to whether or not a map supports a game type.

Arguments : gameType map

-- mapmanager_server.lua

function doesMapSupportGameType(gameType, map)
    if not gametypes[gameType] then
        return false
    end

    if not maps[map] then
        return false
    end

    if not maps[map].gameTypes then
        return true
    end

    return maps[map].gameTypes[gameType]
end

getMaps

Returns a table of all available maps.

Arguments : None

-- mapmanager_server.lua

function getMaps()
    return maps
end

roundEnded

Will end a round.

Arguments : None

-- mapmanager_server.lua

function roundEnded()
    SetTimeout(50, handleRoundEnd)
end