Utilities
Various functions for use in many different files. Somewhat mirrored with the server module.
Utilities.GetSetting
Gets a setting from the Administer settings index regardless of category.
WARNING
If you are loading settings at runtime, they might not be loaded yet. Implementing GetSettingChanged or Var.Remotes.SettingsLoaded.OnClientEvent:Wait() is never a bad idea.
Utilities.GetSetting(
Setting: string
): anylocal Language = Utilities.GetSetting("Locale")
print({
"en": "Hello!",
"es" = "Hola!",
"fr" = "Bonjour!"
}[Language])Utilities.GetSettings
Acts like GetSetting, but rather than a string setting ID a dictionary of settings is accepted.
WARNING
If you are loading settings at runtime, they might not be loaded yet. Implementing GetSettingChanged or Var.Remotes.SettingsLoaded.OnClientEvent:Wait() is never a bad idea.
Utilities.GetSettings(
{ Setting: string }
): { any }local Settings = Utilities.GetSettings({"Locale", "AnimationSpeed"})
task.wait(Settings.AnimationSpeed)
print({
"en": "Hello!",
"es" = "Hola!",
"fr" = "Bonjour!"
}[Settings.Locale])Utilities.GetSettingChanged
Returns a RemoteEvent which is fired every time a setting is changed.
Utilities.GetSettingChanged(
Setting: string
): RemoteEvent?Utilities.GetSettingChanged("AnimationSpeed").OnClientEvent:Connect(function(NewValue)
print(`The animation speed is now {NewValue}!`)
end)Utilities.ShortNumber
Gets a minified number.
Utilities.ShortNumber(
Number: number
): stringlocal BigNumber = 875834923
script.Parent.Text = Utilities.ShortNumber(BigNumber) --// -> 875.8MUtilities.FormatRelativeTime
Takes a Unix timestamp (1752386926) and converts it to a relative timestamp (4 minutes ago)
Strings are automatically translated using a user's locale.
Utilities.FormatRelativeTime(
UnixDate: number
): stringprint(`This documentation entry was written {Utilities.FormatRelativeTime(
1752386926
)}`) --// This documentation entry was written 3 minutes agoUtilities.Logging.Print
Prints something out.
Utilities.Logging.Print(
...
)Utilities.Logging.Warn
Creates a warning with a traceback.
Utilities.Logging.Warn(
...
)Utilities.Logging.Error
Creates an error.
Utilities.Logging.Error(
Message: string
)Utilities.NewNotification
Creates a new notification.
Utilities.NewNotification(
AppTitle: string,
Icon: string,
Body: string,
Heading: string,
Duration: number?,
Options: { {
Text: string,
Icon: string,
OnClick: () -> ()
}? }?
): stringUtilities.NewNotification(
"Administer",
Utilities.Icon "administer",
"This is a test of the notification system.",
"Test",
15,
{{
Text = "Cool",
Icon = Utilities.Icon "like",
OnClick = print
}}
)Utilities.CreateReflection
Creates a reflected image.
Utilities.CreateReflection(
ImageURL: string
): EditableImagescript.Parent.Image = Utilities.CreateReflection(Utilities.Icon("thumbs-up"))Utilities.Translate
Gets a translated string based on its identifier. Prefers the users Roblox locale but overriding via Settings is possible. If the string was not found, it will return the identifier back.
Utilities.Translate(
Identifier: string
): stringprint(Utilities.Translate("generic.ThankYou")) --// -> Gracias!
print(Utilities.Translate("generic.strings.DoesNotExist")) --// -> generic.strings.DoesNotExistUtilities.Icon
Gets an Icon and returns its asset URL. If the icon is not valid to the current selected pack, rbxassetid://nil is returned.
Utilities.Icon(
IconName: string
): stringscript.Parent.Image = Utilities.Icon "user" --// -> rbxassetid://15317920838
script.Parent.Image = Utilities.Icon "middle_finger" --// -> rbxassetid://nilUtilities.ToSentenceCase
Takes in a sentence and turns it into sentence case. Does not preserve anything after the first letter, so you might want to concentrate other proper nouns.
Utilities.ToSentenceCase(
Sentence: string
): stringprint(Utilities.ToSentenceCase("hello, bob!")) --// Hello, bob!
print(Utilities.ToSentenceCase("SCRIPT ERRORS MAKE ME ANGRY.")) --// Script errors make me angry.
print(Utilities.ToSentenceCase("I love reading the Administer Documentation.")) --// I love reading the administer documentation.
print(Utilities.ToSentenceCase("i love it when i have to use the")..Utilities.ToSentenceCase("administer api")) --// I love it when i have to use the Administer apiUtilities.Heartbeat
Spawns Administer's internal heartbeat function.
WARNING
Not for external use.
Utilities.Heartbeat(): ()task.defer(Utilities.Heartbeat)Utilities.ProcessDono
Internal wrapper for processing donations and showing confetti if it was purchased.
WARNING
Not for external use.
Utilities.ProcessDono(
Player: Player,
GamePassId: number,
WasPurchased: boolean
): ()Var.Services.MarketplaceService.GamePassPurchaseCompleted:Connect(Utilities.ProcessDono)