From f4f2fc7c3d76eb3dc5a91c5eefb36c10597d6cb7 Mon Sep 17 00:00:00 2001
From: peterbell10
All the functions are static, call them using the
- Mojang uses two formats for UUIDs, short and dashed. Cuberite works with short UUIDs internally, but
- will convert to dashed UUIDs where needed - in the protocol login for example. The MakeUUIDShort()
- and MakeUUIDDashed() functions are provided for plugins to use for conversion between the two
- formats.cMojangAPI:Function()
convention.
This class will cache values returned by the API service. The cache will hold the values for 7 days by default, after that, they will no longer be available. This is in order to not let the server get @@ -8509,10 +8508,10 @@ a_Player:OpenWindow(Window); }, { Name = "UUID", - Type = "string", + Type = "cUUID", }, }, - Notes = "Adds the specified PlayerName-to-UUID mapping into the cache, with current timestamp. Accepts both short or dashed UUIDs. ", + Notes = "Adds the specified PlayerName-to-UUID mapping into the cache, with current timestamp.", }, GetPlayerNameFromUUID = { @@ -8521,7 +8520,7 @@ a_Player:OpenWindow(Window); { { Name = "UUID", - Type = "string", + Type = "cUUID", }, { Name = "UseOnlyCached", @@ -8592,7 +8591,7 @@ a_Player:OpenWindow(Window); { { Name = "UUID", - Type = "string", + Type = "cUUID", }, }, Returns = @@ -8602,7 +8601,7 @@ a_Player:OpenWindow(Window); Type = "string", }, }, - Notes = "Converts the UUID to a dashed format (\"01234567-8901-2345-6789-012345678901\"). Accepts both dashed or short UUIDs. Logs a warning and returns an empty string if UUID format not recognized.", + Notes = "Converts the UUID to a dashed format (\"01234567-8901-2345-6789-012345678901\"). An alias for cUUID:ToLongString()", }, MakeUUIDShort = { @@ -8611,7 +8610,7 @@ a_Player:OpenWindow(Window); { { Name = "UUID", - Type = "string", + Type = "cUUID", }, }, Returns = @@ -8621,7 +8620,7 @@ a_Player:OpenWindow(Window); Type = "string", }, }, - Notes = "Converts the UUID to a short format (without dashes, \"01234567890123456789012345678901\"). Accepts both dashed or short UUIDs. Logs a warning and returns an empty string if UUID format not recognized.", + Notes = "Converts the UUID to a short format (without dashes, \"01234567890123456789012345678901\"). An alias for cUUID:ToShortString()", }, }, }, @@ -11181,7 +11180,7 @@ a_Player:OpenWindow(Window); { { Name = "PlayerUUID", - Type = "string", + Type = "cUUID", }, { Name = "CallbackFunction", @@ -12441,6 +12440,135 @@ end }, }, }, + cUUID = + { + Desc = [[ + Class representing a Universally Unique Identifier. + Note that all Cuberite's API functions that take a cUUID parameter will also + accept a string in its place, as long as that string can be converted to a cUUID + (using the {{#FromString_1|cUUID:FromString}} function). + ]], + Functions = + { + constructor = + { + Returns = + { + { + Type = "cUUID", + }, + }, + Notes = "Constructs a nil-valued UUID (all zeros)", + }, + Compare = + { + Params = + { + { + Name = "Other", + Type = "cUUID", + }, + }, + Returns = + { + { + Type = "number", + }, + }, + Notes = [[ + Compares this UUID with the specified Other UUID, Returns: + 0 when equal to Other, + < 0 when less than Other, + > 0 when greater than Other + ]], + }, + IsNil = + { + Returns = + { + { + Type = "boolean", + }, + }, + Notes = "Returns true if this contains the \"nil\" UUID with all bits set to 0", + }, + FromString = + { + Params = + { + { + Name = "StringUUID", + Type = "string", + }, + }, + Returns = + { + { + Type = "boolean", + }, + }, + Notes = "Tries to interpret the string as a short or long form UUID and assign from it. On error, returns false and does not set the value.", + }, + ToShortString = + { + Returns = + { + { + Type = "string", + }, + }, + Notes = "Converts the UUID to a short form string (i.e without dashes).", + }, + ToLongString = + { + Returns = + { + { + Type = "string", + }, + }, + Notes = "Converts the UUID to a long form string (i.e with dashes).", + }, + Version = + { + Returns = + { + { + Type = "number", + }, + }, + Notes = "Returns the version number of the UUID.", + }, + Variant = + { + Returns = + { + { + Type = "number", + }, + }, + Notes = "Returns the variant number of the UUID", + }, + GenerateVersion3 = + { + IsStatic = true, + Params = + { + { + Name = "Name", + Type = "string", + }, + }, + Returns = + { + { + Type = "cUUID", + }, + }, + Notes = "Generates a version 3, variant 1 UUID based on the md5 hash of Name." + }, + }, + }, cWebPlugin = { Desc = "", diff --git a/Server/Plugins/APIDump/Classes/RankManager.lua b/Server/Plugins/APIDump/Classes/RankManager.lua index be2969298..d41201ca9 100644 --- a/Server/Plugins/APIDump/Classes/RankManager.lua +++ b/Server/Plugins/APIDump/Classes/RankManager.lua @@ -258,7 +258,7 @@ return { { Name = "PlayerUUID", - Type = "string", + Type = "cUUID", }, }, Returns = @@ -276,7 +276,7 @@ return { { Name = "PlayerUUID", - Type = "string", + Type = "cUUID", }, }, Returns = @@ -303,7 +303,7 @@ return { { Name = "PlayerUUID", - Type = "string", + Type = "cUUID", }, }, Returns = @@ -322,7 +322,7 @@ return { { Name = "PlayerUUID", - Type = "string", + Type = "cUUID", }, }, Returns = @@ -340,7 +340,7 @@ return { { Name = "PlayerUUID", - Type = "string", + Type = "cUUID", }, }, Returns = @@ -502,7 +502,7 @@ return { { Name = "PlayerUUID", - Type = "string", + Type = "cUUID", }, }, Returns = @@ -604,7 +604,7 @@ return { { Name = "PlayerUUID", - Type = "string", + Type = "cUUID", }, }, Notes = "Removes the player's rank; the player's left without a rank. Note that this doesn't change the {{cPlayer}} instances for the already connected players, you need to update all the instances manually. No action if the player has no rank assigned to them already.", @@ -699,7 +699,7 @@ return { { Name = "PlayerUUID", - Type = "string", + Type = "cUUID", }, { Name = "PlayerName", diff --git a/Server/Plugins/APIDump/Classes/World.lua b/Server/Plugins/APIDump/Classes/World.lua index 62d71828f..d523f3881 100644 --- a/Server/Plugins/APIDump/Classes/World.lua +++ b/Server/Plugins/APIDump/Classes/World.lua @@ -18,7 +18,7 @@ return Each world runs several separate threads used for various housekeeping purposes, the most important of those is the Tick thread. This thread updates the game logic 20 times per second, and it is the thread where all the gameplay actions are evaluated. Liquid physics, entity interactions, - player ovement etc., all are applied in this thread.
+ player movement etc., all are applied in this thread.Additional threads include the generation thread (generates new chunks as needed, storage thread (saves and loads chunk from the disk), lighting thread (updates block light values) and the @@ -901,7 +901,7 @@ function OnAllChunksAvailable() All return values from the callbacks are i { { Name = "PlayerUUID", - Type = "string", + Type = "cUUID", }, { Name = "CallbackFunction", -- cgit v1.2.3