Modulair Script

ModuleScript

Een ModuleScript is een herbruikbaar stuk code dat zowel door serverscripts als clientscripts kan worden gebruikt.

Het helpt bij het organiseren van code die op meerdere plaatsen wordt gebruikt, waardoor het gemakkelijk wordt om functies en gegevens tussen verschillende scripts in je spel te delen.

HulpbibliothekenVeelvoorkomende taken zoals wiskundige bewerkingen of gegevensconversie
SpelstatusbeheerBeheer de algemene staat van je spel, zoals het bijhouden van spelerscores, niveaus of spelstadia.
GegevensbeheerSla spelersgegevens op en beheer deze die door meerdere scripts moeten worden geopend en aangepast.
Gedeelde ConfiguratiesSla configuratie-instellingen of constanten op die gedeeld moeten worden tussen verschillende scripts
local UtilityModule = {} 

function UtilityModule.reverseString(str) 
   return str:reverse() 
end 

function UtilityModule.roundNumber(num) 
   return math.floor(num + 0.5) 
end 

return UtilityModule
local GameStateModule = {}
GameStateModule.scores = {}

function GameStateModule.addScore(player, score)
    if not GameStateModule.scores[player] then
        GameStateModule.scores[player] = 0
    end
    GameStateModule.scores[player] = GameStateModule.scores[player] + score
end

function GameStateModule.getScore(player)
    return GameStateModule.scores[player] or 0
end

return GameStateModule
local PlayerDataModule = {}
PlayerDataModule.data = {}

function PlayerDataModule.setData(player, key, value)
    if not PlayerDataModule.data[player.UserId] then
        PlayerDataModule.data[player.UserId] = {}
    end
    PlayerDataModule.data[player.UserId][key] = value
end

function PlayerDataModule.getData(player, key)
    return PlayerDataModule.data[player.UserId] and PlayerDataModule.data[player.UserId][key]
End

return PlayerDataModule
local ConfigModule = {}

ConfigModule.GRAVITY = 196.2
ConfigModule.MAX_PLAYERS = 10

return ConfigModule
local Utilities = require(game.ReplicatedStorage.UtilityModule)
print(Utilities.reverseString("Roblox"))
print(Utilities.roundNumber(3.6))

local GameState = require(game.ServerScriptService.GameStateModule)
game.Players.PlayerAdded:Connect(function(player)
    GameState.addScore(player, 10)
    print("Score for player " .. player.Name .. ": " .. GameState.getScore(player))
end)

Als u deze tutorial nuttig vond en mijn werk wilt ondersteunen, overweeg dan om mij een kop koffie te kopen.

Hartelijk dank voor uw steun!

Koop een kop koffie voor mij