From 9391d0304cb8059ed46ceee9dec8d4c9f8ab8666 Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Thu, 27 Nov 2025 23:33:40 -0500 Subject: [PATCH 01/36] Add ServerNewDex client and module files Introduces the initial set of files for the ServerNewDex plugin, including client initialization, API definitions, and modules for AboutMenu, Explorer, Properties, SettingsEditor, and supporting utilities. This sets up the foundation for the Dex client functionality within the plugin. --- .../ServerNewDex/Dex_Client/init.meta.json | 4 + .../Dex_Client/main_NewDex/API.lua | 1 + .../main_NewDex/Modules/AboutMenu.lua | 174 + .../main_NewDex/Modules/Explorer.lua | 2578 ++++++++ .../Dex_Client/main_NewDex/Modules/Lib.lua | 5775 +++++++++++++++++ .../main_NewDex/Modules/Properties.lua | 1998 ++++++ .../Modules/SettingsEditor/init.lua | 986 +++ .../Modules/SettingsEditor/settingsInfo.lua | 310 + .../main_NewDex/Modules/init.meta.json | 3 + .../Dex_Client/main_NewDex/RMD.lua | 1 + .../Dex_Client/main_NewDex/init.client.lua | 1025 +++ .../Server/Plugins/ServerNewDex/init.lua | 219 + .../Plugins/ServerNewDex/serviceUtils.lua | 39 + 13 files changed, 13113 insertions(+) create mode 100644 MainModule/Server/Plugins/ServerNewDex/Dex_Client/init.meta.json create mode 100644 MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/API.lua create mode 100644 MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/AboutMenu.lua create mode 100644 MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Explorer.lua create mode 100644 MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Lib.lua create mode 100644 MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Properties.lua create mode 100644 MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/SettingsEditor/init.lua create mode 100644 MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/SettingsEditor/settingsInfo.lua create mode 100644 MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/init.meta.json create mode 100644 MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/RMD.lua create mode 100644 MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua create mode 100644 MainModule/Server/Plugins/ServerNewDex/init.lua create mode 100644 MainModule/Server/Plugins/ServerNewDex/serviceUtils.lua diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/init.meta.json b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/init.meta.json new file mode 100644 index 0000000000..118e2caa7b --- /dev/null +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/init.meta.json @@ -0,0 +1,4 @@ +{ + "className": "ScreenGui", + "ignoreUnknownInstances": true +} \ No newline at end of file diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/API.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/API.lua new file mode 100644 index 0000000000..cb17cc51c3 --- /dev/null +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/API.lua @@ -0,0 +1 @@ +return [==[ { "Classes": [ { "Members": [ { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Archivable", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Attributes", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AttributesReplicate", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AttributesSerialize", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ClassName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DataCost", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HistoryId", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UniqueId" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Name", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Parent", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PropertyStatusStudio", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PropertyStatus" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RobloxLocked", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SourceAssetId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Tags", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UniqueId", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UniqueId" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "archivable", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Archivable", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "className", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "ClassName", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "numExpectedDirectChildren", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "AddTag", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClearAllChildren", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Clone", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Destroy", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindFirstAncestor", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "FindFirstAncestorOfClass", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "FindFirstAncestorWhichIsA", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "FindFirstChild", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "false", "Name": "recursive", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "FindFirstChildOfClass", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "FindFirstChildWhichIsA", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "false", "Name": "recursive", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "FindFirstDescendant", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetActor", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Actor" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetAttribute", "Parameters": [ { "Name": "attribute", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetAttributeChangedSignal", "Parameters": [ { "Name": "attribute", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptSignal" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAttributes", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetChildren", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetDebugId", "Parameters": [ { "Default": "4", "Name": "scopeLength", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "PluginSecurity", "Tags": [ "NotBrowsable" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetDescendants", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetFullName", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetPropertyChangedSignal", "Parameters": [ { "Name": "property", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptSignal" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTags", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "HasTag", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "IsA", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "IsAncestorOf", "Parameters": [ { "Name": "descendant", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "IsDescendantOf", "Parameters": [ { "Name": "ancestor", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "IsPropertyModified", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Remove", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveTag", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ResetPropertyToDefault", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetAttribute", "Parameters": [ { "Name": "attribute", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "WaitForChild", "Parameters": [ { "Name": "childName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "timeOut", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "CustomLuaState", "CanYield" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "children", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetChildren", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "clone", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Clone", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "destroy", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Destroy", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "findFirstChild", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "false", "Name": "recursive", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "FindFirstChild", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "getChildren", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetChildren", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "isA", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated", "CustomLuaState" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "isDescendantOf", "Parameters": [ { "Name": "ancestor", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "IsDescendantOf", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "remove", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Remove", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AncestryChanged", "Parameters": [ { "Name": "child", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "parent", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AttributeChanged", "Parameters": [ { "Name": "attribute", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "property", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ChildAdded", "Parameters": [ { "Name": "child", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ChildRemoved", "Parameters": [ { "Name": "child", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DescendantAdded", "Parameters": [ { "Name": "descendant", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DescendantRemoving", "Parameters": [ { "Name": "descendant", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Destroying", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "childAdded", "Parameters": [ { "Name": "child", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "ChildAdded", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Instance", "Superclass": "<<>>", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Transform", "Default": "-0, -0, -1", "MemberType": "Property", "Name": "AttachmentForward", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Transform", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "AttachmentPoint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Transform", "Default": "0, 0, 0", "MemberType": "Property", "Name": "AttachmentPos", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Transform", "Default": "1, 0, 0", "MemberType": "Property", "Name": "AttachmentRight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Transform", "Default": "0, 1, 0", "MemberType": "Property", "Name": "AttachmentUp", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "BackendAccoutrementState", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Event", "Name": "ServerEquipAccoutrement", "Parameters": [ { "Name": "character", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerUnequipAccoutrement", "Parameters": [ { "Name": "oldCharacter", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Accoutrement", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "Unknown", "MemberType": "Property", "Name": "AccessoryType", "Security": { "Read": "None", "Write": "NotAccessibleSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AccessoryType" } } ], "MemoryCategory": "Instances", "Name": "Accessory", "Superclass": "Accoutrement" }, { "Members": [], "MemoryCategory": "Instances", "Name": "Hat", "Superclass": "Accoutrement", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "State", "Default": "", "MemberType": "Property", "Name": "PortalInvalidReason", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "PortalVersion", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Behavior", "Default": "Inactive", "MemberType": "Property", "Name": "Status", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AdUnitStatus" } }, { "MemberType": "Function", "Name": "TeleportConfirmed", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TeleportRejected", "Parameters": [ { "Name": "shouldCooldown", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "rejectedByDistance", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AdPortal", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "GetAdTeleportInfo", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetReportAdInfo", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReturnToPublisherExperience", "Parameters": [ { "Name": "adTeleportMethod", "Type": { "Category": "Enum", "Name": "AdTeleportMethod" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowVideoAd", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AdTeleportEnded", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AdTeleportInitiated", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PortalPrompt", "Parameters": [ { "Name": "destinationId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "portal", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "requiresNoButton", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ReportImpressionSignal", "Parameters": [ { "Name": "ad_instance_name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "encrypted_ad_tracking_data", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "encryption_metadata", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ReportTeleportSignal", "Parameters": [ { "Name": "ad_instance_name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "encrypted_ad_tracking_data", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "encryption_metadata", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "teleport_type", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "teleport_source_universe_id", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "teleport_source_place_id", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "teleport_dest_place_id", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServeAdResponseSignal", "Parameters": [ { "Name": "uuid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "response", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "isError", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServeAdSignal", "Parameters": [ { "Name": "uuid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "request", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "VideoAdClosed", "Parameters": [ { "Name": "adShown", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AdService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "AdvancedDragger", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ApiKey", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "FireCustomEvent", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "eventCategory", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "customData", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FireEvent", "Parameters": [ { "Name": "category", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FireInGameEconomyEvent", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "itemName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "economyAction", "Type": { "Category": "Enum", "Name": "AnalyticsEconomyAction" } }, { "Name": "itemCategory", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "amount", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "currency", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "location", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "customData", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FireLogEvent", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "logLevel", "Type": { "Category": "Enum", "Name": "AnalyticsLogLevel" } }, { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "debugInfo", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "customData", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FirePlayerProgressionEvent", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "category", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "progressionStatus", "Type": { "Category": "Enum", "Name": "AnalyticsProgressionStatus" } }, { "Name": "location", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "statistics", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "customData", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AnalyticsService", "Superclass": "Instance", "Tags": [ "Service", "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "AnimationId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "Animation", "Name": "Animation", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Guid", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GuidBinaryString", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Loop", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Priority", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AnimationPriority" } } ], "MemoryCategory": "Instances", "Name": "AnimationClip", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "CurveAnimation", "Superclass": "AnimationClip" }, { "Members": [ { "Category": "Data", "Default": "2", "MemberType": "Property", "Name": "AuthoredHipHeight", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "AddKeyframe", "Parameters": [ { "Name": "keyframe", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetKeyframes", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveKeyframe", "Parameters": [ { "Name": "keyframe", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Animation", "Name": "KeyframeSequence", "Superclass": "AnimationClip" }, { "Members": [ { "MemberType": "Function", "Name": "GetAnimationClip", "Parameters": [ { "Name": "assetId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Class", "Name": "AnimationClip" }, "Security": "PluginSecurity", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetAnimationClipAsync", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAnimationClipById", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "useCache", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "AnimationClip" }, "Security": "PluginSecurity", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetAnimationClipAsync", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMemStats", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterActiveAnimationClip", "Parameters": [ { "Name": "animationClip", "Type": { "Category": "Class", "Name": "AnimationClip" } } ], "ReturnType": { "Category": "DataType", "Name": "Content" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterAnimationClip", "Parameters": [ { "Name": "animationClip", "Type": { "Category": "Class", "Name": "AnimationClip" } } ], "ReturnType": { "Category": "DataType", "Name": "Content" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAnimationClipAsync", "Parameters": [ { "Name": "assetId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Class", "Name": "AnimationClip" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAnimations", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Animation", "Name": "AnimationClipProvider", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetPlayingAnimationTracks", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPlayingAnimationTracks", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadAnimation", "Parameters": [ { "Name": "animation", "Type": { "Category": "Class", "Name": "Animation" } } ], "ReturnType": { "Category": "Class", "Name": "AnimationTrack" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "LoadAnimation", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AnimationPlayed", "Parameters": [ { "Name": "animationTrack", "Type": { "Category": "Class", "Name": "AnimationTrack" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "AnimationPlayed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Animation", "Name": "AnimationController", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "CreateJob", "Parameters": [ { "Name": "filePath", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DownloadJobResult", "Parameters": [ { "Name": "jobId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "outputFilePath", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FullProcess", "Parameters": [ { "Name": "videoFilePath", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "progressCallback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetJobStatus", "Parameters": [ { "Name": "jobId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AnimationFromVideoCreatorService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "IsAgeRestricted", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateAnimationByUploadingVideo", "Parameters": [ { "Name": "progressCallback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ImportVideoWithPrompt", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AnimationFromVideoCreatorStudioService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "animation", "Default": "", "MemberType": "Property", "Name": "articulatedJoint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "", "MemberType": "Property", "Name": "endEffectorRotationConstraint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "", "MemberType": "Property", "Name": "endEffectorTranslationConstraint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "", "MemberType": "Property", "Name": "endEffectorWeight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "", "MemberType": "Property", "Name": "facsControl", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "\u0001", "MemberType": "Property", "Name": "label", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "\u0001", "MemberType": "Property", "Name": "name", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "\u0001", "MemberType": "Property", "Name": "parent", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "\u0001", "MemberType": "Property", "Name": "postTransform", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "\u0001", "MemberType": "Property", "Name": "preTransform", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "\u0001", "MemberType": "Property", "Name": "transform", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "\u0001", "MemberType": "Property", "Name": "weight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "MemberType": "Function", "Name": "LoadFromHumanoid", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AnimationRigData", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Animation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "TrackerStreamAnimation" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsPlaying", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Priority", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AnimationPriority" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "WeightCurrent", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "WeightTarget", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "AdjustWeight", "Parameters": [ { "Default": "1", "Name": "weight", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "0.100000001", "Name": "fadeTime", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTrackerData", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Play", "Parameters": [ { "Default": "0.100000001", "Name": "fadeTime", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "1", "Name": "weight", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Stop", "Parameters": [ { "Default": "0.100000001", "Name": "fadeTime", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TogglePause", "Parameters": [ { "Name": "paused", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Stopped", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Animation", "Name": "AnimationStreamTrack", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Animation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Animation" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsPlaying", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Length", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Looped", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Priority", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AnimationPriority" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Speed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TimePosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "WeightCurrent", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "WeightTarget", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "AdjustSpeed", "Parameters": [ { "Default": "1", "Name": "speed", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AdjustWeight", "Parameters": [ { "Default": "1", "Name": "weight", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "0.100000001", "Name": "fadeTime", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMarkerReachedSignal", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptSignal" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTimeOfKeyframe", "Parameters": [ { "Name": "keyframeName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "double" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Play", "Parameters": [ { "Default": "0.100000001", "Name": "fadeTime", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "1", "Name": "weight", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "1", "Name": "speed", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Stop", "Parameters": [ { "Default": "0.100000001", "Name": "fadeTime", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DidLoop", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Ended", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "KeyframeReached", "Parameters": [ { "Name": "keyframeName", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Stopped", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Animation", "Name": "AnimationTrack", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "EvaluationThrottled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "NotBrowsable" ], "ThreadSafety": "Safe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "PreferLodEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "ApplyJointVelocities", "Parameters": [ { "Name": "motors", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPlayingAnimationTracks", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPlayingAnimationTracksCoreScript", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadAnimation", "Parameters": [ { "Name": "animation", "Type": { "Category": "Class", "Name": "Animation" } } ], "ReturnType": { "Category": "Class", "Name": "AnimationTrack" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadAnimationCoreScript", "Parameters": [ { "Name": "animation", "Type": { "Category": "Class", "Name": "Animation" } } ], "ReturnType": { "Category": "Class", "Name": "AnimationTrack" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadStreamAnimation", "Parameters": [ { "Name": "animation", "Type": { "Category": "Class", "Name": "TrackerStreamAnimation" } } ], "ReturnType": { "Category": "Class", "Name": "AnimationStreamTrack" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadStreamAnimationForSelfieView_deprecated", "Parameters": [ { "Name": "animation", "Type": { "Category": "Class", "Name": "TrackerStreamAnimation" } }, { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Class", "Name": "AnimationStreamTrack" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StepAnimations", "Parameters": [ { "Name": "deltaTime", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AnimationPlayed", "Parameters": [ { "Name": "animationTrack", "Type": { "Category": "Class", "Name": "AnimationTrack" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AnimationPlayedCoreScript", "Parameters": [ { "Name": "animationTrack", "Type": { "Category": "Class", "Name": "AnimationTrack" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AnimationStreamTrackPlayed", "Parameters": [ { "Name": "animationTrack", "Type": { "Category": "Class", "Name": "AnimationStreamTrack" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnCombinedUpdate2", "Parameters": [ { "Name": "animation", "Type": { "Category": "DataType", "Name": "Content" } }, { "Name": "playState", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "fadeTime", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "weight", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "speed", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "timePosition", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "priority", "Type": { "Category": "Enum", "Name": "AnimationPriority" } }, { "Name": "valuesUpdated", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnStreamingUpdated", "Parameters": [ { "Name": "fadeTime", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "weight", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "priority", "Type": { "Category": "Enum", "Name": "AnimationPriority" } }, { "Name": "valuesUpdated", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StreamSyncRequest", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Animator", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "CheckForUpdate", "Parameters": [ { "Default": "nil", "Name": "handler", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DisableDUAR", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DisableDUARAndOpenSurvey", "Parameters": [ { "Name": "surveyUrl", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PerformManagedUpdate", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AppUpdateService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "AssetCounterService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Interface", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Port", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "StartServer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "AssetDeliveryProxy", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetAllTemplates", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Map" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTemplate", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Map" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveTemplate", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SaveTemplate", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "importTemplate", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartSessionWithPath", "Parameters": [ { "Name": "filePath", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "AssetImportSession" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PickFileWithPrompt", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PickMultipleFilesWithPrompt", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartSessionWithPrompt", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "AssetImportSession" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AssetImportService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "ApplySettings", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ApplyTemplate", "Parameters": [ { "Name": "template", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Cancel", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCurrentStatusTable", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFilename", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetImportTree", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetInstance", "Parameters": [ { "Name": "nodeId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HasAnimation", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsAvatar", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsGltf", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsR15", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Reset", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Upload", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "usesCustomRestPoseLua", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UploadComplete", "Parameters": [ { "Name": "results", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UploadCompleteDeprecated", "Parameters": [ { "Name": "succeeded", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "errorMap", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UploadProgress", "Parameters": [ { "Name": "progressRatio", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AssetImportSession", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetMeshIdFromAliasName", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMeshIdFromAssetId", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTextureIdFromAliasName", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTextureIdFromAssetId", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HasUnpublishedChangesForLinkedSource", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertAudio", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "assetName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertImage", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertLinkedSourceAsLocalScript", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertLinkedSourceAsModuleScript", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertLinkedSourceAsScript", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertMesh", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "insertWithLocation", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertMeshesWithLocation", "Parameters": [ { "Name": "aliasNames", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertModel", "Parameters": [ { "Name": "modelId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertPackage", "Parameters": [ { "Name": "packageId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertVideo", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "assetName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenLinkedSource", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenPlace", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RefreshLinkedSource", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RevertLinkedSourceToLastPublishedVersion", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowPackageDetails", "Parameters": [ { "Name": "packageId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UpdateAllPackages", "Parameters": [ { "Name": "packageId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ViewPackageOnWebsite", "Parameters": [ { "Name": "packageId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddNewPlace", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateAlias", "Parameters": [ { "Name": "assetType", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DeleteAlias", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PublishLinkedSource", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemovePlace", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RenameAlias", "Parameters": [ { "Name": "assetType", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "oldAliasName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "newAliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RenameModel", "Parameters": [ { "Name": "modelId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "newName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RenamePlace", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "newName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AssetImportedSignal", "Parameters": [ { "Name": "assetType", "Type": { "Category": "Enum", "Name": "AssetType" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "assetName", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ImportSessionFinished", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ImportSessionStarted", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MayBeLinkedSourceModified", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AssetManagerService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ContentId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "OutputPath", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "PatchId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "AssetPatchSettings", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "DeserializeInstance", "Parameters": [ { "Name": "serializedInstance", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBundleDetailsSync", "Parameters": [ { "Name": "bundleId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreatePlaceAsync", "Parameters": [ { "Name": "placeName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "templatePlaceID", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Default": "", "Name": "description", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreatePlaceInPlayerInventoryAsync", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "placeName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "templatePlaceID", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Default": "", "Name": "description", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAssetIdsForPackage", "Parameters": [ { "Name": "packageAssetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBundleDetailsAsync", "Parameters": [ { "Name": "bundleId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCreatorAssetID", "Parameters": [ { "Name": "creationID", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "None", "Tags": [ "Yields", "Deprecated", { "PreferredDescriptorName": "GetProductInfo", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGamePlacesAsync", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadImageAsync", "Parameters": [ { "Name": "textureId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Class", "Name": "DynamicImage" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptCreateAssetAsync", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "assetType", "Type": { "Category": "Enum", "Name": "AssetType" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SavePlaceAsync", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SearchAudio", "Parameters": [ { "Name": "searchParameters", "Type": { "Category": "Class", "Name": "AudioSearchParams" } } ], "ReturnType": { "Category": "Class", "Name": "AudioPages" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenCreateResultModal", "Parameters": [ { "Name": "resultType", "Type": { "Category": "Enum", "Name": "PromptCreateAssetResult" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenPublishResultModal", "Parameters": [ { "Name": "resultType", "Type": { "Category": "Enum", "Name": "PromptPublishAssetResult" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AssetService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "State", "Default": "0.7843, 0.6667, 0.4235", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "State", "Default": "0.3608, 0.2353, 0.0549", "MemberType": "Property", "Name": "Decay", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0.395000011", "MemberType": "Property", "Name": "Density", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "Glare", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "Haze", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "Offset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "Atmosphere", "Superclass": "Instance" }, { "Members": [ { "Category": "Derived Data", "Default": "1, 0, 0", "MemberType": "Property", "Name": "Axis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Transform", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Transform", "Default": "-0, 0, 0", "MemberType": "Property", "Name": "Orientation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Transform", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Transform", "Default": "-0, 0, -0", "MemberType": "Property", "Name": "Rotation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Orientation", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Derived Data", "Default": "0, 1, 0", "MemberType": "Property", "Name": "SecondaryAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "Visible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Derived World Data", "Default": "1, 0, 0", "MemberType": "Property", "Name": "WorldAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Derived World Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "WorldCFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Derived World Data", "Default": "-0, 0, 0", "MemberType": "Property", "Name": "WorldOrientation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Derived World Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "WorldPosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Derived World Data", "Default": "-0, 0, -0", "MemberType": "Property", "Name": "WorldRotation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "WorldOrientation", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Derived World Data", "Default": "0, 1, 0", "MemberType": "Property", "Name": "WorldSecondaryAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "MemberType": "Function", "Name": "GetAxis", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Axis", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetConstraints", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSecondaryAxis", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SecondaryAxis", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetAxis", "Parameters": [ { "Name": "axis", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Axis", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetSecondaryAxis", "Parameters": [ { "Name": "axis", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SecondaryAxis", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Attachment", "Superclass": "Instance" }, { "Members": [ { "Category": "Transform", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Transform", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Derived Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TransformedCFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Derived World Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TransformedWorldCFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } } ], "MemoryCategory": "Instances", "Name": "Bone", "Superclass": "Attachment" }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Album", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Artist", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "Music", "MemberType": "Property", "Name": "AudioSubType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AudioSubType" } }, { "Category": "Data", "Default": "Music", "MemberType": "Property", "Name": "AudioSubtype", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "AudioSubType", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AudioSubType" } }, { "Category": "Data", "Default": "2147483647", "MemberType": "Property", "Name": "MaxDuration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "MinDuration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "SearchKeyword", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Tag", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Title", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "AudioSearchParams", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [ { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "ClientFeatures", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "ClientFeaturesInitialized", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "ServerFeatures", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "IsEnabled", "Parameters": [ { "Name": "mask", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "feature", "Type": { "Category": "Enum", "Name": "AvatarChatServiceFeature" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsPlaceEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsUniverseEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PollClientFeatures", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PollServerFeatures", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetClientFeaturesAsync", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetServerFeaturesAsync", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnClientFeatures", "Parameters": [ { "Name": "features", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AvatarChatService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetAccessoryType", "Parameters": [ { "Name": "avatarAssetType", "Type": { "Category": "Enum", "Name": "AvatarAssetType" } } ], "ReturnType": { "Category": "Enum", "Name": "AccessoryType" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "NoPromptCreateOutfit", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "rigType", "Type": { "Category": "Enum", "Name": "HumanoidRigType" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "NoPromptDeleteOutfit", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "NoPromptRenameOutfit", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "NoPromptSaveAvatar", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "rigType", "Type": { "Category": "Enum", "Name": "HumanoidRigType" } }, { "Name": "saveDict", "Type": { "Category": "Group", "Name": "Dictionary" } }, { "Default": "0", "Name": "gearAssetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "NoPromptSaveAvatarThumbnailCustomization", "Parameters": [ { "Name": "thumbnailType", "Type": { "Category": "Enum", "Name": "AvatarThumbnailCustomizationType" } }, { "Name": "emoteAssetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "cameraDistanceScale", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "yRotDeg", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "0", "Name": "fieldOfViewDeg", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "NoPromptSetFavorite", "Parameters": [ { "Name": "itemId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "itemType", "Type": { "Category": "Enum", "Name": "AvatarItemType" } }, { "Name": "shouldFavorite", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "NoPromptUpdateOutfit", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "rigType", "Type": { "Category": "Enum", "Name": "HumanoidRigType" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PerformCreateOutfitWithDescription", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PerformDeleteOutfit", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PerformRenameOutfit", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PerformSaveAvatarWithDescription", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "addedAssets", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "removedAssets", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PerformSetFavorite", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PerformUpdateOutfit", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptAllowInventoryReadAccess", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptCreateOutfit", "Parameters": [ { "Name": "outfit", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "rigType", "Type": { "Category": "Enum", "Name": "HumanoidRigType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptDeleteOutfit", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptRenameOutfit", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptSaveAvatar", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "rigType", "Type": { "Category": "Enum", "Name": "HumanoidRigType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptSetFavorite", "Parameters": [ { "Name": "itemId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "itemType", "Type": { "Category": "Enum", "Name": "AvatarItemType" } }, { "Name": "shouldFavorite", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptUpdateOutfit", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "updatedOutfit", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "rigType", "Type": { "Category": "Enum", "Name": "HumanoidRigType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetAllowInventoryReadAccess", "Parameters": [ { "Name": "inventoryReadAccessGranted", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalCreateOutfitFailed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalCreateOutfitPermissionDenied", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalDeleteOutfitFailed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalDeleteOutfitPermissionDenied", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalRenameOutfitFailed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalRenameOutfitPermissionDenied", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalSaveAvatarFailed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalSaveAvatarPermissionDenied", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalSetFavoriteFailed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalSetFavoritePermissionDenied", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalUpdateOutfitFailed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalUpdateOutfitPermissionDenied", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CheckApplyDefaultClothing", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } } ], "ReturnType": { "Category": "Class", "Name": "HumanoidDescription" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ConformToAvatarRules", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } } ], "ReturnType": { "Category": "Class", "Name": "HumanoidDescription" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAvatarRules", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBatchItemDetails", "Parameters": [ { "Name": "itemIds", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "itemType", "Type": { "Category": "Enum", "Name": "AvatarItemType" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFavorite", "Parameters": [ { "Name": "itemId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "itemType", "Type": { "Category": "Enum", "Name": "AvatarItemType" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetInventory", "Parameters": [ { "Name": "assetTypes", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Class", "Name": "InventoryPages" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetItemDetails", "Parameters": [ { "Name": "itemId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "itemType", "Type": { "Category": "Enum", "Name": "AvatarItemType" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetOutfitDetails", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetOutfits", "Parameters": [ { "Default": "All", "Name": "outfitSource", "Type": { "Category": "Enum", "Name": "OutfitSource" } }, { "Default": "All", "Name": "outfitType", "Type": { "Category": "Enum", "Name": "OutfitType" } } ], "ReturnType": { "Category": "Class", "Name": "OutfitPages" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRecommendedAssets", "Parameters": [ { "Name": "assetType", "Type": { "Category": "Enum", "Name": "AvatarAssetType" } }, { "Default": "0", "Name": "contextAssetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRecommendedBundles", "Parameters": [ { "Name": "bundleId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SearchCatalog", "Parameters": [ { "Name": "searchParameters", "Type": { "Category": "DataType", "Name": "CatalogSearchParams" } } ], "ReturnType": { "Category": "Class", "Name": "CatalogPages" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenAllowInventoryReadAccess", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenPromptCreateOufit", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "rigType", "Type": { "Category": "Enum", "Name": "HumanoidRigType" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenPromptDeleteOutfit", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenPromptRenameOutfit", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenPromptSaveAvatar", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "rigType", "Type": { "Category": "Enum", "Name": "HumanoidRigType" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenPromptSetFavorite", "Parameters": [ { "Name": "itemId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "itemType", "Type": { "Category": "Enum", "Name": "AvatarItemType" } }, { "Name": "shouldFavorite", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenPromptUpdateOutfit", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "rigType", "Type": { "Category": "Enum", "Name": "HumanoidRigType" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptAllowInventoryReadAccessCompleted", "Parameters": [ { "Name": "result", "Type": { "Category": "Enum", "Name": "AvatarPromptResult" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptCreateOutfitCompleted", "Parameters": [ { "Name": "result", "Type": { "Category": "Enum", "Name": "AvatarPromptResult" } }, { "Name": "failureType", "Type": { "Category": "Group", "Name": "Variant" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptDeleteOutfitCompleted", "Parameters": [ { "Name": "result", "Type": { "Category": "Enum", "Name": "AvatarPromptResult" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptRenameOutfitCompleted", "Parameters": [ { "Name": "result", "Type": { "Category": "Enum", "Name": "AvatarPromptResult" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptSaveAvatarCompleted", "Parameters": [ { "Name": "result", "Type": { "Category": "Enum", "Name": "AvatarPromptResult" } }, { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptSaveAvatarThumbnailCustomizationCompleted", "Parameters": [ { "Name": "result", "Type": { "Category": "Enum", "Name": "AvatarPromptResult" } }, { "Name": "failureType", "Type": { "Category": "Group", "Name": "Variant" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptSetFavoriteCompleted", "Parameters": [ { "Name": "result", "Type": { "Category": "Enum", "Name": "AvatarPromptResult" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptUpdateOutfitCompleted", "Parameters": [ { "Name": "result", "Type": { "Category": "Enum", "Name": "AvatarPromptResult" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AvatarEditorService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "ImportFBXAnimationFromFilePathUserMayChooseModel", "Parameters": [ { "Name": "fbxFilePath", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "selectedRig", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "userChooseModelThenImportCB", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ImportFBXAnimationUserMayChooseModel", "Parameters": [ { "Name": "selectedRig", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "userChooseModelThenImportCB", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ImportFbxRigWithoutSceneLoad", "Parameters": [ { "Default": "true", "Name": "isR15", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ImportLoadedFBXAnimation", "Parameters": [ { "Name": "useFBXModel", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadRigAndDetectType", "Parameters": [ { "Name": "promptR15Callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AvatarImportService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "Backpack", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "AwardBadge", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "badgeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBadgeInfoAsync", "Parameters": [ { "Name": "badgeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsDisabled", "Parameters": [ { "Name": "badgeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsLegal", "Parameters": [ { "Name": "badgeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UserHasBadge", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "badgeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UserHasBadgeAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "badgeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BadgeAwarded", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "badgeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnBadgeAwarded", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "creatorId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "badgeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BadgeService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Id", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ImportName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ShouldImport", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "CreateTemplateFromData", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Map" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetStatuses", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BaseImportData", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "AnimationImportData", "Superclass": "BaseImportData", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "FacsImportData", "Superclass": "BaseImportData", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Anchored", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ImportAsModelAsset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "InsertInWorkspace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "GroupImportData", "Superclass": "BaseImportData", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "JointImportData", "Superclass": "BaseImportData", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DiffuseFilePath", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsPbr", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MetalnessFilePath", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NormalFilePath", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RoughnessFilePath", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "MaterialImportData", "Superclass": "BaseImportData", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Anchored", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageManifold", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageMeshIntersectedPreview", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageMeshNotIntersected", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageNoOverlappingVertices", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageNonManifoldPreview", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageOverlappingVerticesPreview", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageUVMatched", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageUVMisMatchedPreview", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Dimensions", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DoubleSided", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IgnoreVertexColors", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IrrelevantCageModifiedPreview", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MeshHoleDetectedPreview", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MeshNoHoleDetected", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NoIrrelevantCageModified", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NoOuterCageFarExtendedFromMesh", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "OuterCageFarExtendedFromMeshPreview", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PolygonCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UseImportedPivot", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "MeshImportData", "Superclass": "BaseImportData", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AddModelToInventory", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Anchored", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AnimationIdForRestPose", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ExistingPackageId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FileDimensions", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ImportAsModelAsset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ImportAsPackage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "InsertInWorkspace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "InsertWithScenePosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "InvertNegativeFaces", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MergeMeshes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PolygonCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RestPose", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RestPose" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RigScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RigScale" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RigType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RigType" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RigVisualization", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ScaleUnit", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "MeshScaleUnit" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UseSceneOriginAsCFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UseSceneOriginAsPivot", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UsesCages", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "WorldForward", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NormalId" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "WorldUp", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NormalId" } } ], "MemoryCategory": "Instances", "Name": "RootImportData", "Superclass": "BaseImportData", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetGuiObjectsAtPosition", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGuiObjectsInCircle", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "radius", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BasePlayerGui", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionImageObject", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "GuiObject" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Version", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "SetUserGuiRendering", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "guiAdornee", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "faceId", "Type": { "Category": "Enum", "Name": "NormalId" } }, { "Default": "0", "Name": "horizontalCurvature", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TakeScreenshot", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ToggleRecording", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UserGuiRenderingChanged", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "guiAdornee", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "faceId", "Type": { "Category": "Enum", "Name": "NormalId" } }, { "Name": "horizontalCurvature", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CoreGui", "Superclass": "BasePlayerGui", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "LandscapeLeft", "MemberType": "Property", "Name": "CurrentScreenOrientation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ScreenOrientation" } }, { "Category": "Data", "Default": "LandscapeSensor", "MemberType": "Property", "Name": "ScreenOrientation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ScreenOrientation" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "SelectionImageObject", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "GuiObject" } }, { "MemberType": "Function", "Name": "GetTopbarTransparency", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTopbarTransparency", "Parameters": [ { "Name": "transparency", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TopbarTransparencyChangedSignal", "Parameters": [ { "Name": "transparency", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PlayerGui", "Superclass": "BasePlayerGui", "Tags": [ "NotCreatable", "PlayerReplicated" ] }, { "Members": [ { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ProcessUserInput", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ResetPlayerGuiOnSpawn", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RtlTextSupport", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RtlTextSupport" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ScreenOrientation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ScreenOrientation" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ShowDevelopmentGui", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VirtualCursorMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "VirtualCursorMode" } }, { "MemberType": "Function", "Name": "GetCoreGuiEnabled", "Parameters": [ { "Name": "coreGuiType", "Type": { "Category": "Enum", "Name": "CoreGuiType" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterGetCore", "Parameters": [ { "Name": "parameterName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "getFunction", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterSetCore", "Parameters": [ { "Name": "parameterName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "setFunction", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetCore", "Parameters": [ { "Name": "parameterName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetCoreGuiEnabled", "Parameters": [ { "Name": "coreGuiType", "Type": { "Category": "Enum", "Name": "CoreGuiType" } }, { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCore", "Parameters": [ { "Name": "parameterName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CoreGuiChangedSignal", "Parameters": [ { "Name": "coreGuiType", "Type": { "Category": "Enum", "Name": "CoreGuiType" } }, { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StarterGui", "Superclass": "BasePlayerGui", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageMeshId", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageOrigin", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageOriginWorld", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HSRAssetId", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HSRData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SharedString" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HSRMeshIdData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SharedString" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ImportInProcess", "Security": { "Read": "None", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ImportOrigin", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ImportOriginWorld", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TemporaryCageMeshId", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "MemberType": "Function", "Name": "GetFaces", "Parameters": [ { "Name": "cageType", "Type": { "Category": "Enum", "Name": "CageType" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVertices", "Parameters": [ { "Name": "cageType", "Type": { "Category": "Enum", "Name": "CageType" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsHSRReady", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ModifyVertices", "Parameters": [ { "Name": "cageType", "Type": { "Category": "Enum", "Name": "CageType" } }, { "Name": "vertices", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BaseWrap", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Behavior", "Default": "Disabled", "MemberType": "Property", "Name": "AutoSkin", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "WrapLayerAutoSkin" } }, { "Category": "Tuning", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "BindOffset", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Debug", "Default": "1, 1, 1", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Debug", "Default": "None", "MemberType": "Property", "Name": "DebugMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "WrapLayerDebugMode" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "Order", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "Puffiness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "ReferenceMeshId", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "ReferenceOrigin", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "ReferenceOriginWorld", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Tuning", "Default": "0", "MemberType": "Property", "Name": "ShrinkFactor", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "TemporaryReferenceId", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "Instances", "Name": "WrapLayer", "Superclass": "BaseWrap" }, { "Members": [ { "Category": "Debug", "Default": "1, 1, 1", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Debug", "Default": "None", "MemberType": "Property", "Name": "DebugMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "WrapTargetDebugMode" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "Stiffness", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "WrapTarget", "Superclass": "BaseWrap" }, { "Members": [ { "Category": "Shape", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Attachment0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Attachment" } }, { "Category": "Shape", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Attachment1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Attachment" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "Brightness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0 1 1 1 0 1 1 1 1 0 ", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "ColorSequence" } }, { "Category": "Shape", "Default": "0", "MemberType": "Property", "Name": "CurveSize0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Shape", "Default": "0", "MemberType": "Property", "Name": "CurveSize1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Shape", "Default": "false", "MemberType": "Property", "Name": "FaceCamera", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "LightEmission", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "LightInfluence", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Shape", "Default": "10", "MemberType": "Property", "Name": "Segments", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "Texture", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "TextureLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "Stretch", "MemberType": "Property", "Name": "TextureMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextureMode" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "TextureSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0 0.5 0 1 0.5 0 ", "MemberType": "Property", "Name": "Transparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberSequence" } }, { "Category": "Shape", "Default": "1", "MemberType": "Property", "Name": "Width0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Shape", "Default": "1", "MemberType": "Property", "Name": "Width1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "ZOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "SetTextureOffset", "Parameters": [ { "Default": "0", "Name": "offset", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Beam", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "Fire", "Parameters": [ { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Event", "Name": "Event", "Parameters": [ { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BindableEvent", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "Invoke", "Parameters": [ { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "OnInvoke", "Parameters": [ { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BindableFunction", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "BodyMover", "Superclass": "Instance", "Tags": [ "NotCreatable", "Deprecated" ] }, { "Members": [ { "Category": "Goals", "Default": "0, 2, 0", "MemberType": "Property", "Name": "AngularVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "4000, 4000, 4000", "MemberType": "Property", "Name": "MaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "1250", "MemberType": "Property", "Name": "P", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Goals", "Default": "0, 2, 0", "MemberType": "Property", "Name": "angularvelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "AngularVelocity", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "4000, 4000, 4000", "MemberType": "Property", "Name": "maxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "MaxTorque", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "Instances", "Name": "BodyAngularVelocity", "Superclass": "BodyMover", "Tags": [ "Deprecated", { "PreferredDescriptorName": "AngularVelocity", "ThreadSafety": "Unknown" } ] }, { "Members": [ { "Category": "Goals", "Default": "0, 1, 0", "MemberType": "Property", "Name": "Force", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "0, 1, 0", "MemberType": "Property", "Name": "force", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Force", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "Instances", "Name": "BodyForce", "Superclass": "BodyMover", "Tags": [ "Deprecated", { "PreferredDescriptorName": "VectorForce", "ThreadSafety": "Unknown" } ] }, { "Members": [ { "Category": "Goals", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Goals", "Default": "500", "MemberType": "Property", "Name": "D", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Goals", "Default": "400000, 0, 400000", "MemberType": "Property", "Name": "MaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "3000", "MemberType": "Property", "Name": "P", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Goals", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "cframe", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "CFrame", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Goals", "Default": "400000, 0, 400000", "MemberType": "Property", "Name": "maxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "MaxTorque", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "Instances", "Name": "BodyGyro", "Superclass": "BodyMover", "Tags": [ "Deprecated", { "PreferredDescriptorName": "AlignOrientation", "ThreadSafety": "Unknown" } ] }, { "Members": [ { "Category": "Goals", "Default": "1250", "MemberType": "Property", "Name": "D", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Goals", "Default": "4000, 4000, 4000", "MemberType": "Property", "Name": "MaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "10000", "MemberType": "Property", "Name": "P", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Goals", "Default": "0, 50, 0", "MemberType": "Property", "Name": "Position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "4000, 4000, 4000", "MemberType": "Property", "Name": "maxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "MaxForce", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "0, 50, 0", "MemberType": "Property", "Name": "position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Position", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "MemberType": "Function", "Name": "GetLastForce", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "lastForce", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetLastForce", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ReachedTarget", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BodyPosition", "Superclass": "BodyMover", "Tags": [ "Deprecated", { "PreferredDescriptorName": "AlignPosition", "ThreadSafety": "Unknown" } ] }, { "Members": [ { "Category": "Goals", "Default": "0, 1, 0", "MemberType": "Property", "Name": "Force", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Location", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "0, 1, 0", "MemberType": "Property", "Name": "force", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Force", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "0, 0, 0", "MemberType": "Property", "Name": "location", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Location", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "Instances", "Name": "BodyThrust", "Superclass": "BodyMover", "Tags": [ "Deprecated", { "PreferredDescriptorName": "VectorForce", "ThreadSafety": "Unknown" } ] }, { "Members": [ { "Category": "Goals", "Default": "4000, 4000, 4000", "MemberType": "Property", "Name": "MaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "1250", "MemberType": "Property", "Name": "P", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Goals", "Default": "0, 2, 0", "MemberType": "Property", "Name": "Velocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "4000, 4000, 4000", "MemberType": "Property", "Name": "maxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "MaxForce", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "0, 2, 0", "MemberType": "Property", "Name": "velocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Velocity", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "MemberType": "Function", "Name": "GetLastForce", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "lastForce", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BodyVelocity", "Superclass": "BodyMover", "Tags": [ "Deprecated", { "PreferredDescriptorName": "LinearVelocity", "ThreadSafety": "Unknown" } ] }, { "Members": [ { "Category": "Internal", "Default": "false", "MemberType": "Property", "Name": "Active", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Goals", "Default": "0.699999988", "MemberType": "Property", "Name": "CartoonFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Thrust", "Default": "30", "MemberType": "Property", "Name": "MaxSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Thrust", "Default": "4000", "MemberType": "Property", "Name": "MaxThrust", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Turn", "Default": "400000, 400000, 0", "MemberType": "Property", "Name": "MaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Target", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Goals", "Default": "0, 0, 0", "MemberType": "Property", "Name": "TargetOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "4", "MemberType": "Property", "Name": "TargetRadius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Thrust", "Default": "0.00100000005", "MemberType": "Property", "Name": "ThrustD", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Thrust", "Default": "5", "MemberType": "Property", "Name": "ThrustP", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Turn", "Default": "500", "MemberType": "Property", "Name": "TurnD", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Turn", "Default": "3000", "MemberType": "Property", "Name": "TurnP", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "Abort", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Fire", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "fire", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Fire", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ReachedTarget", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RocketPropulsion", "Superclass": "BodyMover", "Tags": [ "Deprecated", { "PreferredDescriptorName": "LineForce", "ThreadSafety": "Unknown" } ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Condition", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "ContinueExecution", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Id", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Line", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "LogMessage", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "MetaBreakpointId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "RemoveOnHit", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Script", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "true", "MemberType": "Property", "Name": "Valid", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Verified", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "Breakpoint", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "CloseBrowserWindow", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CopyAuthCookieFromBrowserToEngine", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "EmitHybridEvent", "Parameters": [ { "Name": "moduleName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "params", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ExecuteJavaScript", "Parameters": [ { "Name": "javascript", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenBrowserWindow", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenNativeOverlay", "Parameters": [ { "Name": "title", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenWeChatAuthWindow", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReturnToJavaScript", "Parameters": [ { "Name": "callbackId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "success", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "params", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendCommand", "Parameters": [ { "Name": "command", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AuthCookieCopiedToEngine", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BrowserWindowClosed", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BrowserWindowWillNavigate", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "JavaScriptCallback", "Parameters": [ { "Name": "content", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BrowserService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Appearance", "Default": "0.980392, 0.980392, 0.980392", "MemberType": "Property", "Name": "BackgroundColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0.10000000149011611938", "MemberType": "Property", "Name": "BackgroundTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "FontFace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Font" } }, { "Category": "Appearance", "Default": "0.223529, 0.231373, 0.239216", "MemberType": "Property", "Name": "TextColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "16", "MemberType": "Property", "Name": "TextSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } } ], "MemoryCategory": "Instances", "Name": "BubbleChatMessageProperties", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "LaunchBulkImport", "Parameters": [ { "Name": "assetTypeToImport", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowBulkImportView", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AssetImported", "Parameters": [ { "Name": "assetType", "Type": { "Category": "Enum", "Name": "AssetType" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "id", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BulkImportFinished", "Parameters": [ { "Name": "state", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BulkImportStarted", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BulkImportService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "CacheableContentProvider", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "HSRDataContentProvider", "Superclass": "CacheableContentProvider", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetContentMemoryData", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MeshContentProvider", "Superclass": "CacheableContentProvider", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "SolidModelContentProvider", "Superclass": "CacheableContentProvider", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "AttachCallout", "Parameters": [ { "Name": "definitionId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "locationId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "target", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DefineCallout", "Parameters": [ { "Name": "definitionId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "title", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "description", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "learnMoreURL", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DetachCalloutsByDefinitionId", "Parameters": [ { "Name": "definitionId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CalloutService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Camera", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CameraSubject", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Camera", "Default": "Fixed", "MemberType": "Property", "Name": "CameraType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "CameraType" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CoordinateFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "CFrame", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Camera", "Default": "88.8765335", "MemberType": "Property", "Name": "DiagonalFieldOfView", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "70", "MemberType": "Property", "Name": "FieldOfView", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "Vertical", "MemberType": "Property", "Name": "FieldOfViewMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FieldOfViewMode" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Focus", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "HeadLocked", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "HeadScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "70", "MemberType": "Property", "Name": "MaxAxisFieldOfView", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "-0.5", "MemberType": "Property", "Name": "NearPlaneZ", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "VRTiltAndRollEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "1, 1", "MemberType": "Property", "Name": "ViewportSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "focus", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Focus", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "MemberType": "Function", "Name": "GetLargestCutoffDistance", "Parameters": [ { "Name": "ignoreList", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPanSpeed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPartsObscuringTarget", "Parameters": [ { "Name": "castPoints", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "ignoreList", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRenderCFrame", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRoll", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTiltSpeed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Interpolate", "Parameters": [ { "Name": "endPos", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "endFocus", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "duration", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PanUnits", "Parameters": [ { "Name": "units", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ScreenPointToRay", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "0", "Name": "depth", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "DataType", "Name": "Ray" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "SetCameraPanMode", "Parameters": [ { "Default": "Classic", "Name": "mode", "Type": { "Category": "Enum", "Name": "CameraPanMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetImageServerView", "Parameters": [ { "Name": "modelCoord", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetRoll", "Parameters": [ { "Name": "rollAngle", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TiltUnits", "Parameters": [ { "Name": "units", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ViewportPointToRay", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "0", "Name": "depth", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "DataType", "Name": "Ray" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "WorldToScreenPoint", "Parameters": [ { "Name": "worldPoint", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "WorldToViewportPoint", "Parameters": [ { "Name": "worldPoint", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "Zoom", "Parameters": [ { "Name": "distance", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ZoomToExtents", "Parameters": [ { "Name": "boundingBoxCFrame", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "boundingBoxSize", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FirstPersonTransition", "Parameters": [ { "Name": "entering", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InterpolationFinished", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Camera", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "RetrieveCaptures", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SaveScreenshotCapture", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCaptureSizeAsync", "Parameters": [ { "Name": "captureContentId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CaptureSaved", "Parameters": [ { "Name": "captureInfo", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CaptureService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "FinishRecording", "Parameters": [ { "Name": "identifier", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "operation", "Type": { "Category": "Enum", "Name": "FinishRecordingOperation" } }, { "Name": "finalOptions", "Type": { "Category": "Group", "Name": "Dictionary?" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCanRedo", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCanUndo", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsRecordingInProgress", "Parameters": [ { "Name": "identifier", "Type": { "Category": "Primitive", "Name": "string?" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Redo", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ResetWaypoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEnabled", "Parameters": [ { "Name": "state", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetWaypoint", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TryBeginRecording", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "displayName", "Type": { "Category": "Primitive", "Name": "string?" } } ], "ReturnType": { "Category": "Primitive", "Name": "string?" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Undo", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnRecordingFinished", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "displayName", "Type": { "Category": "Primitive", "Name": "string?" } }, { "Name": "identifier", "Type": { "Category": "Primitive", "Name": "string?" } }, { "Name": "operationn", "Type": { "Category": "Enum", "Name": "FinishRecordingOperation" } }, { "Name": "finalOptions", "Type": { "Category": "Group", "Name": "Dictionary?" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnRecordingStarted", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "displayName", "Type": { "Category": "Primitive", "Name": "string?" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnRedo", "Parameters": [ { "Name": "waypoint", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnUndo", "Parameters": [ { "Name": "waypoint", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ChangeHistoryService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "CharacterAppearance", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "HeadColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Appearance", "Default": "0.992157, 0.917647, 0.552941", "MemberType": "Property", "Name": "HeadColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "LeftArmColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Appearance", "Default": "0.992157, 0.917647, 0.552941", "MemberType": "Property", "Name": "LeftArmColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "LeftLegColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Appearance", "Default": "0.0509804, 0.411765, 0.67451", "MemberType": "Property", "Name": "LeftLegColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "RightArmColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Appearance", "Default": "0.992157, 0.917647, 0.552941", "MemberType": "Property", "Name": "RightArmColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "RightLegColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Appearance", "Default": "0.0509804, 0.411765, 0.67451", "MemberType": "Property", "Name": "RightLegColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TorsoColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Appearance", "Default": "0.156863, 0.498039, 0.278431", "MemberType": "Property", "Name": "TorsoColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } } ], "MemoryCategory": "Instances", "Name": "BodyColors", "Superclass": "CharacterAppearance" }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "BaseTextureId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "Head", "MemberType": "Property", "Name": "BodyPart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "BodyPart" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "MeshId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "OverlayTextureId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } } ], "MemoryCategory": "Instances", "Name": "CharacterMesh", "Superclass": "CharacterAppearance" }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Color3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Outfit1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Outfit2", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "Instances", "Name": "Clothing", "Superclass": "CharacterAppearance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "PantsTemplate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "Instances", "Name": "Pants", "Superclass": "Clothing" }, { "Members": [ { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "ShirtTemplate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "Instances", "Name": "Shirt", "Superclass": "Clothing" }, { "Members": [ { "Category": "Appearance", "Default": "1, 1, 1", "MemberType": "Property", "Name": "Color3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "Graphic", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "Instances", "Name": "ShirtGraphic", "Superclass": "CharacterAppearance" }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "SkinColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } } ], "MemoryCategory": "Instances", "Name": "Skin", "Superclass": "CharacterAppearance", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "BubbleChatEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "LoadDefaultChat", "Security": { "Read": "None", "Write": "NotAccessibleSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "Chat", "Parameters": [ { "Name": "partOrCharacter", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "Blue", "Name": "color", "Type": { "Category": "Enum", "Name": "ChatColor" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ChatLocal", "Parameters": [ { "Name": "partOrCharacter", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "Blue", "Name": "color", "Type": { "Category": "Enum", "Name": "ChatColor" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetShouldUseLuaChat", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InvokeChatCallback", "Parameters": [ { "Name": "callbackType", "Type": { "Category": "Enum", "Name": "ChatCallbackType" } }, { "Name": "callbackArguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterChatCallback", "Parameters": [ { "Name": "callbackType", "Type": { "Category": "Enum", "Name": "ChatCallbackType" } }, { "Name": "callbackFunction", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetBubbleChatSettings", "Parameters": [ { "Name": "settings", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CanUserChatAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CanUsersChatAsync", "Parameters": [ { "Name": "userIdFrom", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "userIdTo", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FilterStringAsync", "Parameters": [ { "Name": "stringToFilter", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "playerFrom", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "playerTo", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FilterStringForBroadcast", "Parameters": [ { "Name": "stringToFilter", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "playerFrom", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FilterStringForPlayerAsync", "Parameters": [ { "Name": "stringToFilter", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "playerToFilterFor", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields", "Deprecated", { "PreferredDescriptorName": "FilterStringAsync", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BubbleChatSettingsChanged", "Parameters": [ { "Name": "settings", "Type": { "Category": "Group", "Name": "Variant" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Chatted", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "color", "Type": { "Category": "Enum", "Name": "ChatColor" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ClientToServerFilterMessageSignalV2", "Parameters": [ { "Name": "sender", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "receiver", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "unfilteredMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ClientToServerReportUnfilteredSignal", "Parameters": [ { "Name": "unfilteredText", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "match", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "instancePath", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "instanceType", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerToClientUnderOver13FilteredResponseSignal", "Parameters": [ { "Name": "sender", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "unfilteredMessage", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "isError", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "errorStr", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "under13", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "over13", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Chat", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Image", "Default": "", "MemberType": "Property", "Name": "CursorIcon", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Data", "Default": "32", "MemberType": "Property", "Name": "MaxActivationDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Event", "Name": "MouseActionReplicated", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "actionType", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseClick", "Parameters": [ { "Name": "playerWhoClicked", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseHoverEnter", "Parameters": [ { "Name": "playerWhoHovered", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseHoverLeave", "Parameters": [ { "Name": "playerWhoHovered", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RightMouseClick", "Parameters": [ { "Name": "playerWhoClicked", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "mouseClick", "Parameters": [ { "Name": "playerWhoClicked", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "MouseClick", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ClickDetector", "Superclass": "Instance" }, { "Members": [ { "Category": "Image", "Default": "", "MemberType": "Property", "Name": "ActivatedCursorIcon", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Physics Response", "Default": "false", "MemberType": "Property", "Name": "ApplyAtCenterOfMass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Drag Directions", "Default": "0, 1, 0", "MemberType": "Property", "Name": "Axis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Dragged Amount", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "DragFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Behavior", "Default": "TranslatePlane", "MemberType": "Property", "Name": "DragStyle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DragDetectorDragStyle" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Mode Switching", "Default": "ButtonR1", "MemberType": "Property", "Name": "GamepadModeSwitchKeyCode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "KeyCode" } }, { "Category": "Mode Switching", "Default": "LeftControl", "MemberType": "Property", "Name": "KeyboardModeSwitchKeyCode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "KeyCode" } }, { "Category": "Drag Limits", "Default": "0", "MemberType": "Property", "Name": "MaxDragAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Drag Limits", "Default": "0, 0, 0", "MemberType": "Property", "Name": "MaxDragTranslation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Physics Response", "Default": "10000000", "MemberType": "Property", "Name": "MaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Physics Response", "Default": "10000", "MemberType": "Property", "Name": "MaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Drag Limits", "Default": "0", "MemberType": "Property", "Name": "MinDragAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Drag Limits", "Default": "0, 0, 0", "MemberType": "Property", "Name": "MinDragTranslation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Drag Directions", "Default": "-0, 180, 90", "MemberType": "Property", "Name": "Orientation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Internal", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "PhysicalDragClickedPart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Internal", "Default": "0, 0, 0", "MemberType": "Property", "Name": "PhysicalDragHitPoint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Internal", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "PhysicalDragTargetFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "ReferenceInstance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Behavior", "Default": "Physical", "MemberType": "Property", "Name": "ResponseStyle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DragDetectorResponseStyle" } }, { "Category": "Physics Response", "Default": "10", "MemberType": "Property", "Name": "Responsiveness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "RunLocally", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Drag Directions", "Default": "1, 0, 0", "MemberType": "Property", "Name": "SecondaryAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Behavior", "Default": "1", "MemberType": "Property", "Name": "TrackballRadialPullFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "1", "MemberType": "Property", "Name": "TrackballRollFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mode Switching", "Default": "ButtonL2", "MemberType": "Property", "Name": "VRSwitchKeyCode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "KeyCode" } }, { "Category": "Drag Directions", "Default": "0, 1, 0", "MemberType": "Property", "Name": "WorldAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Drag Directions", "Default": "1, 0, 0", "MemberType": "Property", "Name": "WorldSecondaryAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "MemberType": "Function", "Name": "AddConstraintFunction", "Parameters": [ { "Name": "priority", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "function", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptConnection" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetReferenceFrame", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RestartDrag", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetDragStyleFunction", "Parameters": [ { "Name": "function", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DragContinue", "Parameters": [ { "Name": "playerWhoDragged", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "cursorRay", "Type": { "Category": "DataType", "Name": "Ray" } }, { "Name": "viewFrame", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "vrInputFrame", "Type": { "Category": "DataType", "Name": "OptionalCoordinateFrame" } }, { "Name": "isModeSwitchKeyDown", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DragEnd", "Parameters": [ { "Name": "playerWhoDragged", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DragStart", "Parameters": [ { "Name": "playerWhoDragged", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "cursorRay", "Type": { "Category": "DataType", "Name": "Ray" } }, { "Name": "viewFrame", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "hitFrame", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "clickedPart", "Type": { "Category": "Class", "Name": "BasePart" } }, { "Name": "vrInputFrame", "Type": { "Category": "DataType", "Name": "OptionalCoordinateFrame" } }, { "Name": "isModeSwitchKeyDown", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DragDetector", "Superclass": "ClickDetector", "Tags": [ "NotBrowsable" ] }, { "Members": [ { "Category": "State", "Default": "1, 1, 1", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0.5", "MemberType": "Property", "Name": "Cover", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0.699999988", "MemberType": "Property", "Name": "Density", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "Clouds", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ClusterPacketCache", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "AddTag", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAllTags", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetCollection", "Parameters": [ { "Name": "class", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetTagged", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetInstanceAddedSignal", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptSignal" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetInstanceRemovedSignal", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptSignal" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTagged", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetTags", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "HasTag", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "RemoveTag", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ItemAdded", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetInstanceAddedSignal", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ItemRemoved", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetInstanceRemovedSignal", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TagAdded", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TagRemoved", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CollectionService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AllowGUIAccessPoints", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Checked", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DefaultShortcut", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DisplayName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Icon", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Name", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Permission", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "CommandPermission" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "StatusTip", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "EnableGuiAccess", "Parameters": [ { "Name": "displayName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "statusTip", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "defaultShortcut", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterExecutionCallback", "Parameters": [ { "Name": "callbackFunction", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CommandInstance", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "Execute", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "params", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterCommand", "Parameters": [ { "Name": "plugin", "Type": { "Category": "Class", "Name": "Plugin" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "context", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "LocalUser", "Name": "permission", "Type": { "Category": "Enum", "Name": "CommandPermission" } } ], "ReturnType": { "Category": "Class", "Name": "CommandInstance" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CommandExecuting", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "params", "Type": { "Category": "Group", "Name": "Variant" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CommandService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "Configuration", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ConfigureServerService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Active", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Attachments", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Attachment0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Attachment" } }, { "Category": "Attachments", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Attachment1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Attachment" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Visible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "PhysicsParts", "Name": "Constraint", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "AlignOrientation", "Default": "Parallel", "MemberType": "Property", "Name": "AlignType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AlignType" } }, { "Category": "TargetOrientation", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Compliance", "Default": "INF", "MemberType": "Property", "Name": "MaxAngularVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Compliance", "Default": "10000", "MemberType": "Property", "Name": "MaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AlignmentMode", "Default": "TwoAttachment", "MemberType": "Property", "Name": "Mode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "OrientationAlignmentMode" } }, { "Category": "TargetOrientation", "Default": "1, 0, 0", "MemberType": "Property", "Name": "PrimaryAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "AlignOrientation", "Default": "false", "MemberType": "Property", "Name": "PrimaryAxisOnly", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "AlignOrientation", "Default": "false", "MemberType": "Property", "Name": "ReactionTorqueEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Compliance", "Default": "10", "MemberType": "Property", "Name": "Responsiveness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AlignOrientation", "Default": "false", "MemberType": "Property", "Name": "RigidityEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "TargetOrientation", "Default": "0, 1, 0", "MemberType": "Property", "Name": "SecondaryAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "PhysicsParts", "Name": "AlignOrientation", "Superclass": "Constraint" }, { "Members": [ { "Category": "AlignPosition", "Default": "false", "MemberType": "Property", "Name": "ApplyAtCenterOfMass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Compliance", "Default": "Magnitude", "MemberType": "Property", "Name": "ForceLimitMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotBrowsable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ForceLimitMode" } }, { "Category": "Compliance", "Default": "World", "MemberType": "Property", "Name": "ForceRelativeTo", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ActuatorRelativeTo" } }, { "Category": "Compliance", "Default": "10000, 10000, 10000", "MemberType": "Property", "Name": "MaxAxesForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Compliance", "Default": "10000", "MemberType": "Property", "Name": "MaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Compliance", "Default": "INF", "MemberType": "Property", "Name": "MaxVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AlignmentMode", "Default": "TwoAttachment", "MemberType": "Property", "Name": "Mode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PositionAlignmentMode" } }, { "Category": "AlignPosition", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "AlignPosition", "Default": "false", "MemberType": "Property", "Name": "ReactionForceEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Compliance", "Default": "10", "MemberType": "Property", "Name": "Responsiveness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AlignPosition", "Default": "false", "MemberType": "Property", "Name": "RigidityEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "PhysicsParts", "Name": "AlignPosition", "Superclass": "Constraint" }, { "Members": [ { "Category": "Torque", "Default": "0, 0, 0", "MemberType": "Property", "Name": "AngularVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Torque", "Default": "0", "MemberType": "Property", "Name": "MaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Torque", "Default": "false", "MemberType": "Property", "Name": "ReactionTorqueEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Torque", "Default": "World", "MemberType": "Property", "Name": "RelativeTo", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ActuatorRelativeTo" } } ], "MemoryCategory": "PhysicsParts", "Name": "AngularVelocity", "Superclass": "Constraint" }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "IsKinematic", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Compliance", "Default": "10000", "MemberType": "Property", "Name": "MaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Compliance", "Default": "10000", "MemberType": "Property", "Name": "MaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Transform", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } } ], "MemoryCategory": "PhysicsParts", "Name": "AnimationConstraint", "Superclass": "Constraint", "Tags": [ "NotBrowsable" ] }, { "Members": [ { "Category": "BallSocket", "Default": "false", "MemberType": "Property", "Name": "LimitsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Friction", "Default": "0", "MemberType": "Property", "Name": "MaxFrictionTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Friction", "Default": "0", "MemberType": "Property", "Name": "MaxFrictionTorqueXml", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0.150000006", "MemberType": "Property", "Name": "Radius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "0", "MemberType": "Property", "Name": "Restitution", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "false", "MemberType": "Property", "Name": "TwistLimitsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "TwistLimits", "Default": "-45", "MemberType": "Property", "Name": "TwistLowerAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "TwistLimits", "Default": "45", "MemberType": "Property", "Name": "TwistUpperAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "45", "MemberType": "Property", "Name": "UpperAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "PhysicsParts", "Name": "BallSocketConstraint", "Superclass": "Constraint" }, { "Members": [ { "Category": "Hinge", "Default": "None", "MemberType": "Property", "Name": "ActuatorType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ActuatorType" } }, { "Category": "Servo", "Default": "45", "MemberType": "Property", "Name": "AngularResponsiveness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Servo", "Default": "0", "MemberType": "Property", "Name": "AngularSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Motor", "Default": "0", "MemberType": "Property", "Name": "AngularVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Derived", "Default": "0", "MemberType": "Property", "Name": "CurrentAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Hinge", "Default": "false", "MemberType": "Property", "Name": "LimitsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Limits", "Default": "-45", "MemberType": "Property", "Name": "LowerAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Motor", "Default": "INF", "MemberType": "Property", "Name": "MotorMaxAcceleration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Motor", "Default": "0", "MemberType": "Property", "Name": "MotorMaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0.150000006", "MemberType": "Property", "Name": "Radius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "0", "MemberType": "Property", "Name": "Restitution", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Servo", "Default": "0", "MemberType": "Property", "Name": "ServoMaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Servo", "Default": "0", "MemberType": "Property", "Name": "TargetAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "45", "MemberType": "Property", "Name": "UpperAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "PhysicsParts", "Name": "HingeConstraint", "Superclass": "Constraint" }, { "Members": [ { "Category": "LineForce", "Default": "false", "MemberType": "Property", "Name": "ApplyAtCenterOfMass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "LineForce", "Default": "false", "MemberType": "Property", "Name": "InverseSquareLaw", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "LineForce", "Default": "1000", "MemberType": "Property", "Name": "Magnitude", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "LineForce", "Default": "INF", "MemberType": "Property", "Name": "MaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "LineForce", "Default": "false", "MemberType": "Property", "Name": "ReactionForceEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "PhysicsParts", "Name": "LineForce", "Superclass": "Constraint" }, { "Members": [ { "Category": "Limits", "Default": "Magnitude", "MemberType": "Property", "Name": "ForceLimitMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ForceLimitMode" } }, { "Category": "Line", "Default": "1, 0, 0", "MemberType": "Property", "Name": "LineDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Line", "Default": "-0", "MemberType": "Property", "Name": "LineVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "1000, 1000, 1000", "MemberType": "Property", "Name": "MaxAxesForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Limits", "Default": "1000", "MemberType": "Property", "Name": "MaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "1000, 1000", "MemberType": "Property", "Name": "MaxPlanarAxesForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Plane", "Default": "0, 0", "MemberType": "Property", "Name": "PlaneVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Plane", "Default": "1, 0, 0", "MemberType": "Property", "Name": "PrimaryTangentAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Mode", "Default": "World", "MemberType": "Property", "Name": "RelativeTo", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ActuatorRelativeTo" } }, { "Category": "Plane", "Default": "0, 1, 0", "MemberType": "Property", "Name": "SecondaryTangentAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Vector", "Default": "0, 0, 0", "MemberType": "Property", "Name": "VectorVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Mode", "Default": "Vector", "MemberType": "Property", "Name": "VelocityConstraintMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "VelocityConstraintMode" } } ], "MemoryCategory": "PhysicsParts", "Name": "LinearVelocity", "Superclass": "Constraint" }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "PlaneConstraint", "Superclass": "Constraint" }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "Plane", "Superclass": "PlaneConstraint", "Tags": [ "Deprecated", { "PreferredDescriptorName": "PlaneConstraint", "ThreadSafety": "Unknown" } ] }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "RigidConstraint", "Superclass": "Constraint" }, { "Members": [ { "Category": "Derived", "Default": "0", "MemberType": "Property", "Name": "CurrentDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Rod", "Default": "5", "MemberType": "Property", "Name": "Length", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "90", "MemberType": "Property", "Name": "LimitAngle0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "90", "MemberType": "Property", "Name": "LimitAngle1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Rod", "Default": "false", "MemberType": "Property", "Name": "LimitsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0.100000001", "MemberType": "Property", "Name": "Thickness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "PhysicsParts", "Name": "RodConstraint", "Superclass": "Constraint" }, { "Members": [ { "Category": "Derived", "Default": "0", "MemberType": "Property", "Name": "CurrentDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Rope", "Default": "5", "MemberType": "Property", "Name": "Length", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Rope", "Default": "0", "MemberType": "Property", "Name": "Restitution", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0.100000001", "MemberType": "Property", "Name": "Thickness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Rope", "Default": "false", "MemberType": "Property", "Name": "WinchEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Winch", "Default": "10000", "MemberType": "Property", "Name": "WinchForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Winch", "Default": "45", "MemberType": "Property", "Name": "WinchResponsiveness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Winch", "Default": "2", "MemberType": "Property", "Name": "WinchSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Winch", "Default": "5", "MemberType": "Property", "Name": "WinchTarget", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "PhysicsParts", "Name": "RopeConstraint", "Superclass": "Constraint" }, { "Members": [ { "Category": "Slider", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ActuatorType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ActuatorType" } }, { "Category": "Derived", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CurrentPosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Slider", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LimitsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Servo", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LinearResponsiveness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LowerLimit", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Motor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MotorMaxAcceleration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Motor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MotorMaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Restitution", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Servo", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ServoMaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Servo", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Speed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Servo", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TargetPosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UpperLimit", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Motor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Velocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "PhysicsParts", "Name": "SlidingBallConstraint", "Superclass": "Constraint", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Cylinder", "Default": "None", "MemberType": "Property", "Name": "AngularActuatorType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ActuatorType" } }, { "Category": "Cylinder", "Default": "false", "MemberType": "Property", "Name": "AngularLimitsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "AngularServo", "Default": "45", "MemberType": "Property", "Name": "AngularResponsiveness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AngularLimits", "Default": "0", "MemberType": "Property", "Name": "AngularRestitution", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AngularServo", "Default": "0", "MemberType": "Property", "Name": "AngularSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AngularMotor", "Default": "0", "MemberType": "Property", "Name": "AngularVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Derived", "Default": "0", "MemberType": "Property", "Name": "CurrentAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Cylinder", "Default": "0", "MemberType": "Property", "Name": "InclinationAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AngularLimits", "Default": "-45", "MemberType": "Property", "Name": "LowerAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AngularMotor", "Default": "INF", "MemberType": "Property", "Name": "MotorMaxAngularAcceleration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AngularMotor", "Default": "0", "MemberType": "Property", "Name": "MotorMaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "RotationAxisVisible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "AngularServo", "Default": "0", "MemberType": "Property", "Name": "ServoMaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AngularServo", "Default": "0", "MemberType": "Property", "Name": "TargetAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AngularLimits", "Default": "45", "MemberType": "Property", "Name": "UpperAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Derived", "Default": "1, 0, 0", "MemberType": "Property", "Name": "WorldRotationAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "PhysicsParts", "Name": "CylindricalConstraint", "Superclass": "SlidingBallConstraint" }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "PrismaticConstraint", "Superclass": "SlidingBallConstraint" }, { "Members": [ { "Category": "Appearance", "Default": "3", "MemberType": "Property", "Name": "Coils", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Derived", "Default": "0", "MemberType": "Property", "Name": "CurrentLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Spring", "Default": "0", "MemberType": "Property", "Name": "Damping", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Spring", "Default": "1", "MemberType": "Property", "Name": "FreeLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Spring", "Default": "false", "MemberType": "Property", "Name": "LimitsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Spring", "Default": "INF", "MemberType": "Property", "Name": "MaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "5", "MemberType": "Property", "Name": "MaxLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "0", "MemberType": "Property", "Name": "MinLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0.400000006", "MemberType": "Property", "Name": "Radius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Spring", "Default": "0", "MemberType": "Property", "Name": "Stiffness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0.100000001", "MemberType": "Property", "Name": "Thickness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "PhysicsParts", "Name": "SpringConstraint", "Superclass": "Constraint" }, { "Members": [ { "Category": "Torque", "Default": "Attachment0", "MemberType": "Property", "Name": "RelativeTo", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ActuatorRelativeTo" } }, { "Category": "Torque", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Torque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "PhysicsParts", "Name": "Torque", "Superclass": "Constraint" }, { "Members": [ { "Category": "Appearance", "Default": "8", "MemberType": "Property", "Name": "Coils", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Derived", "Default": "0", "MemberType": "Property", "Name": "CurrentAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Spring", "Default": "0.00999999978", "MemberType": "Property", "Name": "Damping", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Spring", "Default": "false", "MemberType": "Property", "Name": "LimitEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated", { "PreferredDescriptorName": "LimitsEnabled", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Spring", "Default": "false", "MemberType": "Property", "Name": "LimitsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Limits", "Default": "45", "MemberType": "Property", "Name": "MaxAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Spring", "Default": "INF", "MemberType": "Property", "Name": "MaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0.400000006", "MemberType": "Property", "Name": "Radius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "0", "MemberType": "Property", "Name": "Restitution", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Spring", "Default": "100", "MemberType": "Property", "Name": "Stiffness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "PhysicsParts", "Name": "TorsionSpringConstraint", "Superclass": "Constraint" }, { "Members": [ { "Category": "Universal", "Default": "false", "MemberType": "Property", "Name": "LimitsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Limits", "Default": "45", "MemberType": "Property", "Name": "MaxAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0.200000003", "MemberType": "Property", "Name": "Radius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "0", "MemberType": "Property", "Name": "Restitution", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "PhysicsParts", "Name": "UniversalConstraint", "Superclass": "Constraint" }, { "Members": [ { "Category": "VectorForce", "Default": "false", "MemberType": "Property", "Name": "ApplyAtCenterOfMass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "VectorForce", "Default": "1000, 0, 0", "MemberType": "Property", "Name": "Force", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "VectorForce", "Default": "Attachment0", "MemberType": "Property", "Name": "RelativeTo", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ActuatorRelativeTo" } } ], "MemoryCategory": "PhysicsParts", "Name": "VectorForce", "Superclass": "Constraint" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BaseUrl", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RequestQueueSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "CalculateNumTrianglesInMeshSync", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAssetFetchStatus", "Parameters": [ { "Name": "contentId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Enum", "Name": "AssetFetchStatus" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAssetFetchStatusChangedSignal", "Parameters": [ { "Name": "contentId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptSignal" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetDetailedFailedRequests", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFailedRequests", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ListEncryptedAssets", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Preload", "Parameters": [ { "Name": "contentId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "PreloadAsync", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterDefaultEncryptionKey", "Parameters": [ { "Name": "encryptionKey", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterDefaultSessionKey", "Parameters": [ { "Name": "sessionKey", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterEncryptedAsset", "Parameters": [ { "Name": "assetId", "Type": { "Category": "DataType", "Name": "Content" } }, { "Name": "encryptionKey", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterSessionEncryptedAsset", "Parameters": [ { "Name": "contentId", "Type": { "Category": "DataType", "Name": "Content" } }, { "Name": "sessionKey", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetBaseUrl", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnregisterDefaultEncryptionKey", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnregisterEncryptedAsset", "Parameters": [ { "Name": "assetId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CalculateNumTrianglesInMesh", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PreloadAsync", "Parameters": [ { "Name": "contentIdList", "Type": { "Category": "Group", "Name": "Array" } }, { "Default": "nil", "Name": "callbackFunction", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AssetFetchFailed", "Parameters": [ { "Name": "assetId", "Type": { "Category": "DataType", "Name": "Content" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ContentProvider", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "BindAction", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "functionToBind", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "createTouchButton", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "inputTypes", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BindActionAtPriority", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "functionToBind", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "createTouchButton", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "priorityLevel", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "inputTypes", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BindActionToInputTypes", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "functionToBind", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "createTouchButton", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "inputTypes", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "BindAction", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BindActivate", "Parameters": [ { "Name": "userInputTypeForActivation", "Type": { "Category": "Enum", "Name": "UserInputType" } }, { "Name": "keyCodesForActivation", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BindCoreAction", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "functionToBind", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "createTouchButton", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "inputTypes", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BindCoreActionAtPriority", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "functionToBind", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "createTouchButton", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "priorityLevel", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "inputTypes", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BindCoreActivate", "Parameters": [ { "Name": "userInputTypeForActivation", "Type": { "Category": "Enum", "Name": "UserInputType" } }, { "Name": "keyCodesForActivation", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CallFunction", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "state", "Type": { "Category": "Enum", "Name": "UserInputState" } }, { "Name": "inputObject", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FireActionButtonFoundSignal", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "actionButton", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAllBoundActionInfo", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAllBoundCoreActionInfo", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBoundActionInfo", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBoundCoreActionInfo", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCurrentLocalToolIcon", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetDescription", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "description", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetImage", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "image", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPosition", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "position", "Type": { "Category": "DataType", "Name": "UDim2" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTitle", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "title", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnbindAction", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnbindActivate", "Parameters": [ { "Name": "userInputTypeForActivation", "Type": { "Category": "Enum", "Name": "UserInputType" } }, { "Default": "Unknown", "Name": "keyCodeForActivation", "Type": { "Category": "Enum", "Name": "KeyCode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnbindAllActions", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnbindCoreAction", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnbindCoreActivate", "Parameters": [ { "Name": "userInputTypeForActivation", "Type": { "Category": "Enum", "Name": "UserInputType" } }, { "Default": "Unknown", "Name": "keyCodeForActivation", "Type": { "Category": "Enum", "Name": "KeyCode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetButton", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BoundActionAdded", "Parameters": [ { "Name": "actionAdded", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "createTouchButton", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "functionInfoTable", "Type": { "Category": "Group", "Name": "Dictionary" } }, { "Name": "isCore", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BoundActionChanged", "Parameters": [ { "Name": "actionChanged", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "changeName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "changeTable", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BoundActionRemoved", "Parameters": [ { "Name": "actionRemoved", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "functionInfoTable", "Type": { "Category": "Group", "Name": "Dictionary" } }, { "Name": "isCore", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GetActionButtonEvent", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LocalToolEquipped", "Parameters": [ { "Name": "toolEquipped", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LocalToolUnequipped", "Parameters": [ { "Name": "toolUnequipped", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ContextActionService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "BindButton", "Parameters": [ { "Name": "button", "Type": { "Category": "Enum", "Name": "Button" } }, { "Name": "caption", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetButton", "Parameters": [ { "Name": "button", "Type": { "Category": "Enum", "Name": "Button" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnbindButton", "Parameters": [ { "Name": "button", "Type": { "Category": "Enum", "Name": "Button" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "bindButton", "Parameters": [ { "Name": "button", "Type": { "Category": "Enum", "Name": "Button" } }, { "Name": "caption", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "BindButton", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "getButton", "Parameters": [ { "Name": "button", "Type": { "Category": "Enum", "Name": "Button" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetButton", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ButtonChanged", "Parameters": [ { "Name": "button", "Type": { "Category": "Enum", "Name": "Button" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Controller", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "HumanoidController", "Superclass": "Controller" }, { "Members": [ { "Category": "Axes", "Default": "0", "MemberType": "Property", "Name": "Steer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Axes", "Default": "0", "MemberType": "Property", "Name": "Throttle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Event", "Name": "AxisChanged", "Parameters": [ { "Name": "axis", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "SkateboardController", "Superclass": "Controller" }, { "Members": [], "MemoryCategory": "Instances", "Name": "VehicleController", "Superclass": "Controller" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Active", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Balance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BalanceRigidityEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Movement", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MoveSpeedFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "ControllerBase", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Balance", "Default": "10000", "MemberType": "Property", "Name": "BalanceMaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Balance", "Default": "100", "MemberType": "Property", "Name": "BalanceSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Movement", "Default": "0, 0, 0", "MemberType": "Property", "Name": "LinearImpulse", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Turn", "Default": "true", "MemberType": "Property", "Name": "MaintainAngularMomentum", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Movement", "Default": "true", "MemberType": "Property", "Name": "MaintainLinearMomentum", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Movement", "Default": "1000", "MemberType": "Property", "Name": "MoveMaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Turn", "Default": "10000", "MemberType": "Property", "Name": "TurnMaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Turn", "Default": "1", "MemberType": "Property", "Name": "TurnSpeedFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AirController", "Superclass": "ControllerBase", "Tags": [ "NotBrowsable" ] }, { "Members": [ { "Category": "Movement", "Default": "0", "MemberType": "Property", "Name": "AccelerationTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Balance", "Default": "10000", "MemberType": "Property", "Name": "BalanceMaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Balance", "Default": "100", "MemberType": "Property", "Name": "BalanceSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Movement", "Default": "10000", "MemberType": "Property", "Name": "MoveMaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "ClimbController", "Superclass": "ControllerBase", "Tags": [ "NotBrowsable" ] }, { "Members": [ { "Category": "Balance", "Default": "1", "MemberType": "Property", "Name": "AccelerationLean", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Movement", "Default": "0", "MemberType": "Property", "Name": "AccelerationTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Balance", "Default": "10000", "MemberType": "Property", "Name": "BalanceMaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Balance", "Default": "100", "MemberType": "Property", "Name": "BalanceSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Movement", "Default": "0", "MemberType": "Property", "Name": "DecelerationTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Movement", "Default": "2", "MemberType": "Property", "Name": "Friction", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Movement", "Default": "1", "MemberType": "Property", "Name": "FrictionWeight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Movement", "Default": "1", "MemberType": "Property", "Name": "GroundOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Movement", "Default": "10000", "MemberType": "Property", "Name": "StandForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Movement", "Default": "100", "MemberType": "Property", "Name": "StandSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Movement", "Default": "1", "MemberType": "Property", "Name": "TurnSpeedFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "GroundController", "Superclass": "ControllerBase", "Tags": [ "NotBrowsable" ] }, { "Members": [ { "Category": "Movement", "Default": "0", "MemberType": "Property", "Name": "AccelerationTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Balance", "Default": "10000", "MemberType": "Property", "Name": "PitchMaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Balance", "Default": "1", "MemberType": "Property", "Name": "PitchSpeedFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Balance", "Default": "10000", "MemberType": "Property", "Name": "RollMaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Balance", "Default": "1", "MemberType": "Property", "Name": "RollSpeedFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "SwimController", "Superclass": "ControllerBase", "Tags": [ "NotBrowsable" ] }, { "Members": [ { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "ActiveController", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "ControllerBase" } }, { "Category": "Behavior", "Default": "16", "MemberType": "Property", "Name": "BaseMoveSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "8", "MemberType": "Property", "Name": "BaseTurnSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "ClimbSensor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "ControllerSensor" } }, { "Category": "Input", "Default": "0, 0, 1", "MemberType": "Property", "Name": "FacingDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "GroundSensor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "ControllerSensor" } }, { "Category": "Input", "Default": "0, 0, 0", "MemberType": "Property", "Name": "MovingDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "RootPart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } } ], "MemoryCategory": "Instances", "Name": "ControllerManager", "Superclass": "Instance", "Tags": [ "NotBrowsable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ControllerService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "CookiesService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "CorePackages", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "CoreScriptDebuggingManagerHelper", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetScriptFilePath", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CoreScriptSyncService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "IsWatchingScriptLine", "Parameters": [ { "Name": "scriptRef", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "lineNumber", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartWatchingScriptLine", "Parameters": [ { "Name": "scriptRef", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "debuggerConnectionId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "lineNumber", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GuidLineContentsChanged", "Parameters": [ { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "lineNumber", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "contents", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GuidNameChanged", "Parameters": [ { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "fullName", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CrossDMScriptChangeListener", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "PersistedCurrentValue", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "GetAttachedReceivers", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetValue", "Parameters": [ { "Name": "newValue", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ReceiverConnected", "Parameters": [ { "Name": "receiver", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ReceiverDisconnected", "Parameters": [ { "Name": "receiver", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CustomEvent", "Superclass": "Instance", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Source", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "MemberType": "Function", "Name": "GetCurrentValue", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "EventConnected", "Parameters": [ { "Name": "event", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "EventDisconnected", "Parameters": [ { "Name": "event", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SourceValueChanged", "Parameters": [ { "Name": "newValue", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CustomEventReceiver", "Superclass": "Instance", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Offset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Scale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VertexColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "Instances", "Name": "DataModelMesh", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Bevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Bevel Roundness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Bulge", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "BevelMesh", "Superclass": "DataModelMesh", "Tags": [ "NotCreatable", "NotBrowsable", "Deprecated" ] }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "BlockMesh", "Superclass": "BevelMesh" }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "CylinderMesh", "Superclass": "BevelMesh", "Tags": [ "Deprecated" ] }, { "Members": [ { "MemberType": "Function", "Name": "AddTriangle", "Parameters": [ { "Name": "vertexId0", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "vertexId1", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "vertexId2", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddVertex", "Parameters": [ { "Name": "p", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindClosestPointOnSurface", "Parameters": [ { "Name": "point", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindClosestVertex", "Parameters": [ { "Name": "toThisPoint", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindVerticesWithinSphere", "Parameters": [ { "Name": "center", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "radius", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAdjacentTriangles", "Parameters": [ { "Name": "triangleId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAdjacentVertices", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPosition", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTriangleVertices", "Parameters": [ { "Name": "triangleId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTriangles", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUV", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVertexColor", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Color3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVertexColorAlpha", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVertexNormal", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVertices", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InitializeFromMeshIdAsync", "Parameters": [ { "Name": "meshId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InitializeFromMeshPartAsync", "Parameters": [ { "Name": "meshPart", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Raycast", "Parameters": [ { "Name": "origin", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "direction", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveTriangle", "Parameters": [ { "Name": "triangleId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveVertex", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPosition", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "p", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetUV", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "uv", "Type": { "Category": "DataType", "Name": "Vector2" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetVertexColor", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "color", "Type": { "Category": "DataType", "Name": "Color3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetVertexColorAlpha", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "alpha", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetVertexNormal", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "vnormal", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateMeshPartAsync", "Parameters": [ { "Name": "collisionFidelity", "Type": { "Category": "Enum", "Name": "CollisionFidelity" } } ], "ReturnType": { "Category": "Class", "Name": "MeshPart" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DynamicMesh", "Superclass": "DataModelMesh" }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "MeshId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "TextureId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "PhysicsParts", "Name": "FileMesh", "Superclass": "DataModelMesh" }, { "Members": [ { "Category": "Data", "Default": "Head", "MemberType": "Property", "Name": "MeshType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "MeshType" } } ], "MemoryCategory": "PhysicsParts", "Name": "SpecialMesh", "Superclass": "FileMesh" }, { "Members": [ { "MemberType": "Function", "Name": "GetPatch", "Parameters": [ { "Name": "patchName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterPatch", "Parameters": [ { "Name": "patchName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "behaviorName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "localConfigPath", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UpdatePatch", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "patchName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callbackFunction", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DataModelPatchService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CurrentDataModelType", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "StudioDataModelType" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SessionId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Event", "Name": "CurrentDataModelTypeAboutToChange", "Parameters": [ { "Name": "dataModelType", "Type": { "Category": "Enum", "Name": "StudioDataModelType" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CurrentDataModelTypeChanged", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DataModelCreated", "Parameters": [ { "Name": "gameStateType", "Type": { "Category": "Enum", "Name": "StudioDataModelType" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DataModelWillBeDestroyed", "Parameters": [ { "Name": "gameStateType", "Type": { "Category": "Enum", "Name": "StudioDataModelType" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DataModelSession", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetMetadata", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMetadata", "Parameters": [ { "Name": "attributes", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DataStoreIncrementOptions", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CreatedTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DataStoreName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UpdatedTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } } ], "MemoryCategory": "Instances", "Name": "DataStoreInfo", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "KeyName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "DataStoreKey", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CreatedTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UpdatedTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Version", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "GetMetadata", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserIds", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DataStoreKeyInfo", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CreatedTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsDeleted", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Version", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "DataStoreObjectVersionInfo", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "AllScopes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "SetExperimentalFeatures", "Parameters": [ { "Name": "experimentalFeatures", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DataStoreOptions", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [ { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "AutomaticRetry", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "LegacyNamingScheme", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "GetDataStore", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "global", "Name": "scope", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "nil", "Name": "options", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Class", "Name": "GlobalDataStore" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGlobalDataStore", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "GlobalDataStore" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetOrderedDataStore", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "global", "Name": "scope", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "OrderedDataStore" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRequestBudgetForRequestType", "Parameters": [ { "Name": "requestType", "Type": { "Category": "Enum", "Name": "DataStoreRequestType" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ListDataStoresAsync", "Parameters": [ { "Default": "", "Name": "prefix", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "0", "Name": "pageSize", "Type": { "Category": "Primitive", "Name": "int" } }, { "Default": "", "Name": "cursor", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "DataStoreListingPages" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DataStoreService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetMetadata", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMetadata", "Parameters": [ { "Name": "attributes", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DataStoreSetOptions", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MaxItems", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "AddItem", "Parameters": [ { "Name": "item", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "10", "Name": "lifetime", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetLegacyMaxItems", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "addItem", "Parameters": [ { "Name": "item", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "10", "Name": "lifetime", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Debris", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Performance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DataModel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Performance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "InstanceCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Errors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsScriptStackTracingEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Performance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "JobCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Performance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PlayerCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Errors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ReportSoundWarnings", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Profile", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RobloxVersion", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Benchmarking", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TickCountPreciseOverride", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TickCountSampleMethod" } } ], "MemoryCategory": "Instances", "Name": "DebugSettings", "Superclass": "Instance", "Tags": [ "NotCreatable", "Settings", "NotBrowsable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "DebuggablePluginWatcher", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Condition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "ContinueExecution", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "IsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Line", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "LogExpression", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "isContextDependentBreakpoint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "line", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } } ], "MemoryCategory": "Instances", "Name": "DebuggerBreakpoint", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ErrorMessage", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HasError", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Id", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsPaused", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "AddBreakpoint", "Parameters": [ { "Name": "script", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "Breakpoint" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Close", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "EvaluateWatch", "Parameters": [ { "Name": "expression", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "frame", "Type": { "Category": "Class", "Name": "StackFrame" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFrameById", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Class", "Name": "StackFrame" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSource", "Parameters": [ { "Name": "scriptRef", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "status", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetThreadById", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Class", "Name": "ThreadState" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetThreads", "Parameters": [ { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVariableById", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Class", "Name": "DebuggerVariable" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Pause", "Parameters": [ { "Name": "thread", "Type": { "Category": "Class", "Name": "ThreadState" } }, { "Name": "status", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Populate", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveBreakpoint", "Parameters": [ { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "Breakpoint" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Resume", "Parameters": [ { "Name": "thread", "Type": { "Category": "Class", "Name": "ThreadState" } }, { "Name": "status", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetExceptionBreakMode", "Parameters": [ { "Name": "breakMode", "Type": { "Category": "Enum", "Name": "DebuggerExceptionBreakMode" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetVariable", "Parameters": [ { "Name": "variable", "Type": { "Category": "Class", "Name": "DebuggerVariable" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Step", "Parameters": [ { "Name": "thread", "Type": { "Category": "Class", "Name": "ThreadState" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StepIn", "Parameters": [ { "Name": "thread", "Type": { "Category": "Class", "Name": "ThreadState" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StepOut", "Parameters": [ { "Name": "thread", "Type": { "Category": "Class", "Name": "ThreadState" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UpdateSelectedFrame", "Parameters": [ { "Name": "threadId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "frameNumber", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BreakpointAdded", "Parameters": [ { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "Breakpoint" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BreakpointChanged", "Parameters": [ { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "Breakpoint" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BreakpointRemoved", "Parameters": [ { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "Breakpoint" } }, { "Name": "reason", "Type": { "Category": "Enum", "Name": "BreakpointRemoveReason" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Paused", "Parameters": [ { "Name": "pausedState", "Type": { "Category": "Class", "Name": "PausedState" } }, { "Name": "reason", "Type": { "Category": "Enum", "Name": "DebuggerPauseReason" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Resumed", "Parameters": [ { "Name": "pausedState", "Type": { "Category": "Class", "Name": "PausedState" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DebuggerConnection", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "LocalDebuggerConnection", "Superclass": "DebuggerConnection", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Timeout", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "MemberType": "Function", "Name": "ConnectLocal", "Parameters": [ { "Name": "dataModel", "Type": { "Category": "Class", "Name": "DataModel" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ConnectRemote", "Parameters": [ { "Name": "host", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "port", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FocusConnection", "Parameters": [ { "Name": "connection", "Type": { "Category": "Class", "Name": "DebuggerConnection" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetConnectionById", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Class", "Name": "DebuggerConnection" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ConnectionEnded", "Parameters": [ { "Name": "connection", "Type": { "Category": "Class", "Name": "DebuggerConnection" } }, { "Name": "reason", "Type": { "Category": "Enum", "Name": "DebuggerEndReason" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ConnectionStarted", "Parameters": [ { "Name": "connection", "Type": { "Category": "Class", "Name": "DebuggerConnection" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FocusChanged", "Parameters": [ { "Name": "connection", "Type": { "Category": "Class", "Name": "DebuggerConnection" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DebuggerConnectionManager", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsError", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsSuccess", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Message", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RequestId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Status", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DebuggerStatus" } }, { "MemberType": "Function", "Name": "GetArg", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DebuggerLuaResponse", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DebuggingEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "AddDebugger", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "EnableDebugging", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetDebuggers", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Resume", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StepIn", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StepOut", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StepOver", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DebuggerAdded", "Parameters": [ { "Name": "debugger", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DebuggerRemoved", "Parameters": [ { "Name": "debugger", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DebuggerManager", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "EditBreakpoint", "Parameters": [ { "Name": "metaBreakpointId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "EditWatch", "Parameters": [ { "Name": "expression", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsConnectionForPlayDataModel", "Parameters": [ { "Name": "debuggerConnectionId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenScriptAtLine", "Parameters": [ { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "debuggerConnectionId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "showErrorOnFail", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Pause", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveScriptLineMarkers", "Parameters": [ { "Name": "debuggerConnectionId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "allMarkers", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Resume", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetCurrentThreadId", "Parameters": [ { "Name": "debuggerThreadId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetScriptLineMarker", "Parameters": [ { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "debuggerConnectionId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "lineMarkerType", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetWatchExpressions", "Parameters": [ { "Name": "expressions", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ExpressionAdded", "Parameters": [ { "Name": "expression", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ExpressionsCleared", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DebuggerUIService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Name", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Populated", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Type", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Value", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VariableId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VariablesCount", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "GetVariableByIndex", "Parameters": [ { "Name": "index", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Class", "Name": "DebuggerVariable" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVariableByName", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "DebuggerVariable" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DebuggerVariable", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Expression", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "DebuggerWatch", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "GetDeviceId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DeviceIdService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "SinglePlayer", "MemberType": "Property", "Name": "BehaviorType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DialogBehaviorType" } }, { "Category": "Data", "Default": "25", "MemberType": "Property", "Name": "ConversationDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "GoodbyeChoiceActive", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "GoodbyeDialog", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "InUse", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "InitialPrompt", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "Help", "MemberType": "Property", "Name": "Purpose", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DialogPurpose" } }, { "Category": "Data", "Default": "Neutral", "MemberType": "Property", "Name": "Tone", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DialogTone" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "TriggerDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "TriggerOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "MemberType": "Function", "Name": "GetCurrentPlayers", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPlayerIsUsing", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "isUsing", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalDialogChoiceSelected", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "dialogChoice", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DialogChoiceSelected", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "dialogChoice", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Dialog", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "GoodbyeChoiceActive", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "GoodbyeDialog", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ResponseDialog", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "UserDialog", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "DialogChoice", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "DiscardEdits", "Parameters": [ { "Name": "scripts", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetDraftStatus", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Enum", "Name": "DraftStatusCode" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetEditors", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RestoreScripts", "Parameters": [ { "Name": "scripts", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowDiffsAgainstBase", "Parameters": [ { "Name": "scripts", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowDiffsAgainstServer", "Parameters": [ { "Name": "scripts", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CommitEdits", "Parameters": [ { "Name": "scripts", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetDrafts", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UpdateToLatestVersion", "Parameters": [ { "Name": "scripts", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CommitStatusChanged", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "status", "Type": { "Category": "Enum", "Name": "DraftStatusCode" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DraftAdded", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DraftRemoved", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DraftStatusChanged", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "EditorsListChanged", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UpdateStatusChanged", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "status", "Type": { "Category": "Enum", "Name": "DraftStatusCode" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DraftsService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "AxisRotate", "Parameters": [ { "Default": "X", "Name": "axis", "Type": { "Category": "Enum", "Name": "Axis" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "MouseDown", "Parameters": [ { "Name": "mousePart", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "pointOnMousePart", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "parts", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "MouseMove", "Parameters": [ { "Name": "mouseRay", "Type": { "Category": "DataType", "Name": "Ray" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "MouseUp", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Dragger", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "AlignDraggedObjects", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "AngleSnapEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "AngleSnapIncrement", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "AnimateHover", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "CollisionsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DraggerCoordinateSpace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DraggerCoordinateSpace" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DraggerMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DraggerMovementMode" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "GeometrySnapColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "HoverAnimateFrequency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "HoverLineThickness", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "HoverThickness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "JointsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "LinearSnapEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "LinearSnapIncrement", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "PivotSnapToGeometry", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "ShowHover", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "ShowPivotIndicator", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "DraggerService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "MemberType": "Function", "Name": "Clear", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DrawCircle", "Parameters": [ { "Name": "center", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "radius", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "color", "Type": { "Category": "DataType", "Name": "Color3" } }, { "Name": "alpha", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReadPixels", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector2" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Resize", "Parameters": [ { "Name": "newSize", "Type": { "Category": "DataType", "Name": "Vector2" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Rotate", "Parameters": [ { "Name": "degrees", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "true", "Name": "resizeCanvas", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "WritePixels", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "pixels", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DynamicImage", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "XYZ", "MemberType": "Property", "Name": "RotationOrder", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RotationOrder" } }, { "MemberType": "Function", "Name": "GetAnglesAtTime", "Parameters": [ { "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRotationAtTime", "Parameters": [ { "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "X", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "FloatCurve" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Y", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "FloatCurve" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Z", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "FloatCurve" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "EulerRotationCurve", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "SendEventDeferred", "Parameters": [ { "Name": "target", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventContext", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "additionalArgs", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendEventImmediately", "Parameters": [ { "Name": "target", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventContext", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "additionalArgs", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetRBXEvent", "Parameters": [ { "Name": "target", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventContext", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "additionalArgs", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetRBXEventStream", "Parameters": [ { "Name": "target", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventContext", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "additionalArgs", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "EventIngestService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "ScopeCheckUIComplete", "Parameters": [ { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "scopes", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "result", "Type": { "Category": "Enum", "Name": "ScopeCheckResult" } }, { "Name": "metadata", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenAuthPrompt", "Parameters": [ { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "scopes", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "metadata", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScopeCheckResult", "Parameters": [ { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "result", "Type": { "Category": "Enum", "Name": "ScopeCheckResult" } }, { "Name": "token", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "scopes", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "metadata", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ExperienceAuthService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "InviteMessageId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "InviteUser", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "LaunchData", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "PromptMessage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "ExperienceInviteOptions", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "500000", "MemberType": "Property", "Name": "BlastPressure", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "4", "MemberType": "Property", "Name": "BlastRadius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "DestroyJointRadiusPercent", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "Craters", "MemberType": "Property", "Name": "ExplosionType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ExplosionType" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "TimeScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "Visible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Event", "Name": "Hit", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "BasePart" } }, { "Name": "distance", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Explosion", "Superclass": "Instance" }, { "Members": [ { "Category": "Control", "Default": "true", "MemberType": "Property", "Name": "AudioAnimationEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "false", "MemberType": "Property", "Name": "FlipHeadOrientation", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "true", "MemberType": "Property", "Name": "VideoAnimationEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "GetTrackerLodController", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "TrackerLodController" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Init", "Parameters": [ { "Name": "videoEnabled", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "audioEnabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsStarted", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Start", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Step", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Stop", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TrackerError", "Parameters": [ { "Name": "error", "Type": { "Category": "Enum", "Name": "TrackerError" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TrackerPrompt", "Parameters": [ { "Name": "prompt", "Type": { "Category": "Enum", "Name": "TrackerPromptEvent" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "FaceAnimatorService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "ChinRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "ChinRaiserUpperLip", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Brows", "Default": "0", "MemberType": "Property", "Name": "Corrugator", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Eyes", "Default": "0", "MemberType": "Property", "Name": "EyesLookDown", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Eyes", "Default": "0", "MemberType": "Property", "Name": "EyesLookLeft", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Eyes", "Default": "0", "MemberType": "Property", "Name": "EyesLookRight", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Eyes", "Default": "0", "MemberType": "Property", "Name": "EyesLookUp", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "FlatPucker", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "Funneler", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Jaw", "Default": "0", "MemberType": "Property", "Name": "JawDrop", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Jaw", "Default": "0", "MemberType": "Property", "Name": "JawLeft", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Jaw", "Default": "0", "MemberType": "Property", "Name": "JawRight", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Brows", "Default": "0", "MemberType": "Property", "Name": "LeftBrowLowerer", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "LeftCheekPuff", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Eyes", "Default": "0", "MemberType": "Property", "Name": "LeftCheekRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "LeftDimpler", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Eyes", "Default": "0", "MemberType": "Property", "Name": "LeftEyeClosed", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Eyes", "Default": "0", "MemberType": "Property", "Name": "LeftEyeUpperLidRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Brows", "Default": "0", "MemberType": "Property", "Name": "LeftInnerBrowRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "LeftLipCornerDown", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "LeftLipCornerPuller", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "LeftLipStretcher", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "LeftLowerLipDepressor", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Brows", "Default": "0", "MemberType": "Property", "Name": "LeftNoseWrinkler", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Brows", "Default": "0", "MemberType": "Property", "Name": "LeftOuterBrowRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "LeftUpperLipRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "LipPresser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "LipsTogether", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "LowerLipSuck", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "MouthLeft", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "MouthRight", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "Pucker", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Brows", "Default": "0", "MemberType": "Property", "Name": "RightBrowLowerer", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "RightCheekPuff", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Eyes", "Default": "0", "MemberType": "Property", "Name": "RightCheekRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "RightDimpler", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Eyes", "Default": "0", "MemberType": "Property", "Name": "RightEyeClosed", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Eyes", "Default": "0", "MemberType": "Property", "Name": "RightEyeUpperLidRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Brows", "Default": "0", "MemberType": "Property", "Name": "RightInnerBrowRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "RightLipCornerDown", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "RightLipCornerPuller", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "RightLipStretcher", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "RightLowerLipDepressor", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Brows", "Default": "0", "MemberType": "Property", "Name": "RightNoseWrinkler", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Brows", "Default": "0", "MemberType": "Property", "Name": "RightOuterBrowRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "RightUpperLipRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Tongue", "Default": "0", "MemberType": "Property", "Name": "TongueDown", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Tongue", "Default": "0", "MemberType": "Property", "Name": "TongueOut", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Tongue", "Default": "0", "MemberType": "Property", "Name": "TongueUp", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "UpperLipSuck", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Animation", "Name": "FaceControls", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Face", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NormalId" } } ], "MemoryCategory": "Instances", "Name": "FaceInstance", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Appearance", "Default": "1, 1, 1", "MemberType": "Property", "Name": "Color3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "LocalTransparencyModifier", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "20", "MemberType": "Property", "Name": "Shiny", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "Specular", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "Texture", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "Transparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "ZIndex", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } } ], "MemoryCategory": "GraphicsTexture", "Name": "Decal", "Superclass": "FaceInstance" }, { "Members": [ { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "OffsetStudsU", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "OffsetStudsV", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "2", "MemberType": "Property", "Name": "StudsPerTileU", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "2", "MemberType": "Property", "Name": "StudsPerTileV", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "GraphicsTexture", "Name": "Texture", "Superclass": "Decal" }, { "Members": [ { "Category": "State", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "BiometricDataConsent", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "IsAgeRestricted", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CheckOrRequestCameraPermission", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "FacialAnimationRecordingService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "Get", "Parameters": [ { "Name": "label", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetWithPlayerId", "Parameters": [ { "Name": "label", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "playerId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "FacialAnimationStreamingServiceStats", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "ServiceState", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "GetStats", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "FacialAnimationStreamingServiceStats" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsAudioEnabled", "Parameters": [ { "Name": "mask", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsPlaceEnabled", "Parameters": [ { "Name": "mask", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsServerEnabled", "Parameters": [ { "Name": "mask", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsVideoEnabled", "Parameters": [ { "Name": "mask", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ResolveStateForUser", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "FacialAnimationStreamingServiceV2", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "FacialAnimationStreamingSubsessionStats", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FaceId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NormalId" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "InOut", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "InOut" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LeftRight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "LeftRight" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TopBottom", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TopBottom" } } ], "MemoryCategory": "Instances", "Name": "Feature", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "Hole", "Superclass": "Feature", "Tags": [ "Deprecated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "MotorFeature", "Superclass": "Feature", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Size", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "MemberType": "Function", "Name": "GetBinaryContents", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTemporaryId", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Content" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "File", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "0.92549, 0.545098, 0.27451", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "9", "MemberType": "Property", "Name": "Heat", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0.545098, 0.313726, 0.215686", "MemberType": "Property", "Name": "SecondaryColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "5", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "TimeScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "9", "MemberType": "Property", "Name": "heat_xml", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "5", "MemberType": "Property", "Name": "size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Size", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "5", "MemberType": "Property", "Name": "size_xml", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "FastForward", "Parameters": [ { "Name": "numFrames", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Fire", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "FlagStandService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Length", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "\u0001", "MemberType": "Property", "Name": "ValuesAndTimes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "MemberType": "Function", "Name": "GetKeyAtIndex", "Parameters": [ { "Name": "index", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "FloatCurveKey" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetKeyIndicesAtTime", "Parameters": [ { "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetKeys", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetValueAtTime", "Parameters": [ { "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "float?" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertKey", "Parameters": [ { "Name": "key", "Type": { "Category": "DataType", "Name": "FloatCurveKey" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveKeyAtIndex", "Parameters": [ { "Name": "startingIndex", "Type": { "Category": "Primitive", "Name": "int" } }, { "Default": "1", "Name": "count", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetKeys", "Parameters": [ { "Name": "keys", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "FloatCurve", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "FlyweightService", "Superclass": "Instance", "Tags": [ "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "CSGDictionaryService", "Superclass": "FlyweightService", "Tags": [ "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "NonReplicatedCSGDictionaryService", "Superclass": "FlyweightService", "Tags": [ "Service" ] }, { "Members": [ { "Category": "Data", "Default": "2147483647", "MemberType": "Property", "Name": "ReplicatedGuiInsertionOrder", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } } ], "MemoryCategory": "Instances", "Name": "Folder", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "Visible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "ForceField", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "GetPlatformFriends", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FriendsUpdated", "Parameters": [ { "Name": "friendData", "Type": { "Category": "Group", "Name": "Array" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteFriendEventSignal", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "event", "Type": { "Category": "Enum", "Name": "FriendRequestEvent" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteFriendStatusSignal", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "status", "Type": { "Category": "Enum", "Name": "FriendStatus" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "FriendService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Physics", "Default": "true", "MemberType": "Property", "Name": "AllowSleep", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "?", "MemberType": "Property", "Name": "Description", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Settings", "Default": "false", "MemberType": "Property", "Name": "HasMigratedSettingsToTestService", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Physics", "Default": "true", "MemberType": "Property", "Name": "Is30FpsThrottleEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Physics", "Default": "true", "MemberType": "Property", "Name": "PhysicsEnvironmentalThrottle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Settings", "Default": "60", "MemberType": "Property", "Name": "Timeout", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "MemberType": "Function", "Name": "Error", "Parameters": [ { "Default": "", "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Failed", "Parameters": [ { "Default": "", "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Pass", "Parameters": [ { "Default": "", "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Passed", "Parameters": [ { "Default": "", "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Warn", "Parameters": [ { "Default": "", "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "FunctionalTest", "Superclass": "Instance", "Tags": [ "Deprecated" ] }, { "Members": [ { "MemberType": "Function", "Name": "PlayerHasPass", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "gamePassId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "GamePassService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Video", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VideoCaptureEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Video", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VideoRecording", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Event", "Name": "VideoRecordingChangeRequest", "Parameters": [ { "Name": "recording", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "GameSettings", "Superclass": "Instance", "Tags": [ "NotCreatable", "Settings", "NotBrowsable" ] }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "GamepadCursorEnabled", "Security": { "Read": "None", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "DisableGamepadCursor", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "EnableGamepadCursor", "Parameters": [ { "Name": "guiObject", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGamepadCursorPosition", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetGamepadCursorPosition", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GamepadThumbstick1Changed", "Parameters": [ { "Name": "event", "Type": { "Category": "DataType", "Name": "Vector2" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "GamepadService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "Geometry", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "CalculateConstraintsToPreserve", "Parameters": [ { "Name": "source", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "destination", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "options", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IntersectAsync", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "parts", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "options", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SubtractAsync", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "parts", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "options", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnionAsync", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "parts", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "options", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "GeometryService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Font", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Font" } }, { "Category": "Data", "Default": "20", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Text", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Width", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "GetTextBoundsParams", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "OnUpdate", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptConnection" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IncrementAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "1", "Name": "delta", "Type": { "Category": "Primitive", "Name": "int" } }, { "Default": "{}", "Name": "userIds", "Type": { "Category": "Group", "Name": "Array" } }, { "Default": "nil", "Name": "options", "Type": { "Category": "Class", "Name": "DataStoreIncrementOptions" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } }, { "Default": "{}", "Name": "userIds", "Type": { "Category": "Group", "Name": "Array" } }, { "Default": "nil", "Name": "options", "Type": { "Category": "Class", "Name": "DataStoreSetOptions" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UpdateAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "transformFunction", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "GlobalDataStore", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetVersionAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "version", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ListKeysAsync", "Parameters": [ { "Default": "", "Name": "prefix", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "0", "Name": "pageSize", "Type": { "Category": "Primitive", "Name": "int" } }, { "Default": "", "Name": "cursor", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "false", "Name": "excludeDeleted", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "DataStoreKeyPages" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ListVersionsAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "Ascending", "Name": "sortDirection", "Type": { "Category": "Enum", "Name": "SortDirection" } }, { "Default": "0", "Name": "minDate", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Default": "0", "Name": "maxDate", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Default": "0", "Name": "pageSize", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Class", "Name": "DataStoreVersionPages" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveVersionAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "version", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DataStore", "Superclass": "GlobalDataStore", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetSortedAsync", "Parameters": [ { "Name": "ascending", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "pagesize", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "minValue", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "maxValue", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "OrderedDataStore", "Superclass": "GlobalDataStore", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Configuration", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "gaID", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "GoogleAnalyticsConfiguration", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetAlliesAsync", "Parameters": [ { "Name": "groupId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "StandardPages" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetEnemiesAsync", "Parameters": [ { "Name": "groupId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "StandardPages" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGroupInfoAsync", "Parameters": [ { "Name": "groupId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGroupsAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "GroupService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "GuiBase", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AbsolutePosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AbsoluteRotation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AbsoluteSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Localization", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AutoLocalize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Debugging", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ClippedRect", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Rect" } }, { "Category": "Debugging", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsNotOccluded", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Localization", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Localize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "AutoLocalize", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Debugging", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RawRect2D", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Rect" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ReplicatedInsertionOrder", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Localization", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RootLocalizationTable", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "LocalizationTable" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionBehaviorDown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SelectionBehavior" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionBehaviorLeft", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SelectionBehavior" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionBehaviorRight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SelectionBehavior" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionBehaviorUp", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SelectionBehavior" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionGroup", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Debugging", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TotalGroupScale", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Event", "Name": "SelectionChanged", "Parameters": [ { "Name": "amISelected", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "previousSelection", "Type": { "Category": "Class", "Name": "GuiObject" } }, { "Name": "newSelection", "Type": { "Category": "Class", "Name": "GuiObject" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "GuiBase2d", "Superclass": "GuiBase", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Active", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AnchorPoint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AutomaticSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AutomaticSize" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BackgroundColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BackgroundColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BackgroundTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BorderColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BorderColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BorderMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "BorderMode" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BorderSizePixel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ClipsDescendants", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DragBeginConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DragStoppedConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Draggable", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LayoutOrder", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseEnterConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseLeaveConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseMovedConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseWheelBackwardConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseWheelForwardConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NextSelectionDown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "GuiObject" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NextSelectionLeft", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "GuiObject" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NextSelectionRight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "GuiObject" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NextSelectionUp", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "GuiObject" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Rotation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Selectable", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionImageObject", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "GuiObject" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionOrder", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SizeConstraint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SizeConstraint" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Transparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Visible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ZIndex", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "TweenPosition", "Parameters": [ { "Name": "endPosition", "Type": { "Category": "DataType", "Name": "UDim2" } }, { "Default": "Out", "Name": "easingDirection", "Type": { "Category": "Enum", "Name": "EasingDirection" } }, { "Default": "Quad", "Name": "easingStyle", "Type": { "Category": "Enum", "Name": "EasingStyle" } }, { "Default": "1", "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "false", "Name": "override", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "nil", "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TweenSize", "Parameters": [ { "Name": "endSize", "Type": { "Category": "DataType", "Name": "UDim2" } }, { "Default": "Out", "Name": "easingDirection", "Type": { "Category": "Enum", "Name": "EasingDirection" } }, { "Default": "Quad", "Name": "easingStyle", "Type": { "Category": "Enum", "Name": "EasingStyle" } }, { "Default": "1", "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "false", "Name": "override", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "nil", "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TweenSizeAndPosition", "Parameters": [ { "Name": "endSize", "Type": { "Category": "DataType", "Name": "UDim2" } }, { "Name": "endPosition", "Type": { "Category": "DataType", "Name": "UDim2" } }, { "Default": "Out", "Name": "easingDirection", "Type": { "Category": "Enum", "Name": "EasingDirection" } }, { "Default": "Quad", "Name": "easingStyle", "Type": { "Category": "Enum", "Name": "EasingStyle" } }, { "Default": "1", "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "false", "Name": "override", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "nil", "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DragBegin", "Parameters": [ { "Name": "initialPosition", "Type": { "Category": "DataType", "Name": "UDim2" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DragStopped", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InputBegan", "Parameters": [ { "Name": "input", "Type": { "Category": "Class", "Name": "InputObject" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InputChanged", "Parameters": [ { "Name": "input", "Type": { "Category": "Class", "Name": "InputObject" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InputEnded", "Parameters": [ { "Name": "input", "Type": { "Category": "Class", "Name": "InputObject" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseEnter", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseLeave", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseMoved", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseWheelBackward", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseWheelForward", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SelectionGained", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SelectionLost", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchLongPress", "Parameters": [ { "Name": "touchPositions", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "state", "Type": { "Category": "Enum", "Name": "UserInputState" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchPan", "Parameters": [ { "Name": "touchPositions", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "totalTranslation", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "velocity", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "state", "Type": { "Category": "Enum", "Name": "UserInputState" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchPinch", "Parameters": [ { "Name": "touchPositions", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "scale", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "velocity", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "state", "Type": { "Category": "Enum", "Name": "UserInputState" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchRotate", "Parameters": [ { "Name": "touchPositions", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "rotation", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "velocity", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "state", "Type": { "Category": "Enum", "Name": "UserInputState" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchSwipe", "Parameters": [ { "Name": "swipeDirection", "Type": { "Category": "Enum", "Name": "SwipeDirection" } }, { "Name": "numberOfTouches", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchTap", "Parameters": [ { "Name": "touchPositions", "Type": { "Category": "Group", "Name": "Array" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "GuiObject", "Superclass": "GuiBase2d", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Appearance", "Default": "1, 1, 1", "MemberType": "Property", "Name": "GroupColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "GroupTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Gui", "Name": "CanvasGroup", "Superclass": "GuiObject" }, { "Members": [ { "Category": "Data", "Default": "Custom", "MemberType": "Property", "Name": "Style", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FrameStyle" } } ], "MemoryCategory": "Gui", "Name": "Frame", "Superclass": "GuiObject" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AutoButtonColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Modal", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseButton1ClickConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseButton1DownConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseButton1UpConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseButton2ClickConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseButton2DownConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseButton2UpConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Selected", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Style", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ButtonStyle" } }, { "MemberType": "Event", "Name": "Activated", "Parameters": [ { "Name": "inputObject", "Type": { "Category": "Class", "Name": "InputObject" } }, { "Name": "clickCount", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseButton1Click", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseButton1Down", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseButton1Up", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseButton2Click", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseButton2Down", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseButton2Up", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "GuiButton", "Superclass": "GuiObject", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Image", "Default": "0, 0", "MemberType": "Property", "Name": "ContentImageSize", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Image", "Default": "", "MemberType": "Property", "Name": "HoverImage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Image", "Default": "", "MemberType": "Property", "Name": "Image", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Image", "Default": "1, 1, 1", "MemberType": "Property", "Name": "ImageColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Image", "Default": "0, 0", "MemberType": "Property", "Name": "ImageRectOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Image", "Default": "0, 0", "MemberType": "Property", "Name": "ImageRectSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Image", "Default": "0", "MemberType": "Property", "Name": "ImageTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Image", "Default": "false", "MemberType": "Property", "Name": "IsLoaded", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Image", "Default": "", "MemberType": "Property", "Name": "PressedImage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Image", "Default": "Default", "MemberType": "Property", "Name": "ResampleMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ResamplerMode" } }, { "Category": "Image", "Default": "Stretch", "MemberType": "Property", "Name": "ScaleType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ScaleType" } }, { "Category": "Image", "Default": "0, 0, 0, 0", "MemberType": "Property", "Name": "SliceCenter", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Rect" } }, { "Category": "Image", "Default": "1", "MemberType": "Property", "Name": "SliceScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Image", "Default": "{1, 0}, {1, 0}", "MemberType": "Property", "Name": "TileSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } }, { "MemberType": "Function", "Name": "SetEnableContentImageSizeChangedEvents", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "ImageButton", "Superclass": "GuiButton" }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "Confidential", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "Button", "MemberType": "Property", "Name": "ContentText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Text", "Default": "Legacy", "MemberType": "Property", "Name": "Font", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Font" } }, { "Category": "Text", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "FontFace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Font" } }, { "Category": "Text", "Default": "Size8", "MemberType": "Property", "Name": "FontSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "TextSize", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FontSize" } }, { "Category": "Text", "Default": "1", "MemberType": "Property", "Name": "LineHeight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "LocalizedText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Text", "Default": "-1", "MemberType": "Property", "Name": "MaxVisibleGraphemes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "RichText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "Button", "MemberType": "Property", "Name": "Text", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Text", "Default": "0, 0", "MemberType": "Property", "Name": "TextBounds", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Text", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TextColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Text", "Default": "0.105882, 0.164706, 0.207843", "MemberType": "Property", "Name": "TextColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Text", "Default": "Auto", "MemberType": "Property", "Name": "TextDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextDirection" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextFits", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextScaled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "8", "MemberType": "Property", "Name": "TextSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Text", "Default": "0, 0, 0", "MemberType": "Property", "Name": "TextStrokeColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Text", "Default": "1", "MemberType": "Property", "Name": "TextStrokeTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Text", "Default": "0", "MemberType": "Property", "Name": "TextTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Text", "Default": "None", "MemberType": "Property", "Name": "TextTruncate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextTruncate" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextWrap", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "TextWrapped", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextWrapped", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "Center", "MemberType": "Property", "Name": "TextXAlignment", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextXAlignment" } }, { "Category": "Text", "Default": "Center", "MemberType": "Property", "Name": "TextYAlignment", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextYAlignment" } }, { "MemberType": "Function", "Name": "SetTextFromInput", "Parameters": [ { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "TextButton", "Superclass": "GuiButton" }, { "Members": [], "MemoryCategory": "Gui", "Name": "GuiLabel", "Superclass": "GuiObject", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Image", "Default": "0, 0", "MemberType": "Property", "Name": "ContentImageSize", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Image", "Default": "", "MemberType": "Property", "Name": "Image", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Image", "Default": "1, 1, 1", "MemberType": "Property", "Name": "ImageColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Image", "Default": "0, 0", "MemberType": "Property", "Name": "ImageRectOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Image", "Default": "0, 0", "MemberType": "Property", "Name": "ImageRectSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Image", "Default": "0", "MemberType": "Property", "Name": "ImageTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Image", "Default": "false", "MemberType": "Property", "Name": "IsLoaded", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Image", "Default": "Default", "MemberType": "Property", "Name": "ResampleMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ResamplerMode" } }, { "Category": "Image", "Default": "Stretch", "MemberType": "Property", "Name": "ScaleType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ScaleType" } }, { "Category": "Image", "Default": "0, 0, 0, 0", "MemberType": "Property", "Name": "SliceCenter", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Rect" } }, { "Category": "Image", "Default": "1", "MemberType": "Property", "Name": "SliceScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Image", "Default": "{1, 0}, {1, 0}", "MemberType": "Property", "Name": "TileSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } }, { "MemberType": "Function", "Name": "SetEnableContentImageSizeChangedEvents", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "ImageLabel", "Superclass": "GuiLabel" }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "Confidential", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "Label", "MemberType": "Property", "Name": "ContentText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Text", "Default": "Legacy", "MemberType": "Property", "Name": "Font", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Font" } }, { "Category": "Text", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "FontFace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Font" } }, { "Category": "Text", "Default": "Size8", "MemberType": "Property", "Name": "FontSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "TextSize", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FontSize" } }, { "Category": "Text", "Default": "1", "MemberType": "Property", "Name": "LineHeight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "LocalizedText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Text", "Default": "-1", "MemberType": "Property", "Name": "MaxVisibleGraphemes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "RichText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "Label", "MemberType": "Property", "Name": "Text", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Text", "Default": "0, 0", "MemberType": "Property", "Name": "TextBounds", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Text", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TextColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Text", "Default": "0.105882, 0.164706, 0.207843", "MemberType": "Property", "Name": "TextColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Text", "Default": "Auto", "MemberType": "Property", "Name": "TextDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextDirection" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextFits", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextScaled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "8", "MemberType": "Property", "Name": "TextSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Text", "Default": "0, 0, 0", "MemberType": "Property", "Name": "TextStrokeColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Text", "Default": "1", "MemberType": "Property", "Name": "TextStrokeTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Text", "Default": "0", "MemberType": "Property", "Name": "TextTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Text", "Default": "None", "MemberType": "Property", "Name": "TextTruncate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextTruncate" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextWrap", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "TextWrapped", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextWrapped", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "Center", "MemberType": "Property", "Name": "TextXAlignment", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextXAlignment" } }, { "Category": "Text", "Default": "Center", "MemberType": "Property", "Name": "TextYAlignment", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextYAlignment" } }, { "MemberType": "Function", "Name": "SetTextFromInput", "Parameters": [ { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "TextLabel", "Superclass": "GuiLabel" }, { "Members": [ { "Category": "Scrolling", "Default": "0, 0", "MemberType": "Property", "Name": "AbsoluteCanvasSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Scrolling", "Default": "0, 0", "MemberType": "Property", "Name": "AbsoluteWindowSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Scrolling", "Default": "None", "MemberType": "Property", "Name": "AutomaticCanvasSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AutomaticSize" } }, { "Category": "Scrolling", "Default": "rbxasset://textures/ui/Scroll/scroll-bottom.png", "MemberType": "Property", "Name": "BottomImage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Scrolling", "Default": "0, 0", "MemberType": "Property", "Name": "CanvasPosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Scrolling", "Default": "{0, 0}, {2, 0}", "MemberType": "Property", "Name": "CanvasSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } }, { "Category": "Scrolling", "Default": "WhenScrollable", "MemberType": "Property", "Name": "ElasticBehavior", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ElasticBehavior" } }, { "Category": "Debugging", "Default": "0, 0, 0, 0", "MemberType": "Property", "Name": "HorizontalBarRect", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Rect" } }, { "Category": "Scrolling", "Default": "None", "MemberType": "Property", "Name": "HorizontalScrollBarInset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ScrollBarInset" } }, { "Category": "Debugging", "Default": "0, 0", "MemberType": "Property", "Name": "MaxCanvasPosition", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Scrolling", "Default": "rbxasset://textures/ui/Scroll/scroll-middle.png", "MemberType": "Property", "Name": "MidImage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Scrolling", "Default": "1, 1, 1", "MemberType": "Property", "Name": "ScrollBarImageColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Scrolling", "Default": "0", "MemberType": "Property", "Name": "ScrollBarImageTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Scrolling", "Default": "12", "MemberType": "Property", "Name": "ScrollBarThickness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Scrolling", "Default": "0, 0", "MemberType": "Property", "Name": "ScrollVelocity", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Scrolling", "Default": "XY", "MemberType": "Property", "Name": "ScrollingDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ScrollingDirection" } }, { "Category": "Scrolling", "Default": "true", "MemberType": "Property", "Name": "ScrollingEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Scrolling", "Default": "rbxasset://textures/ui/Scroll/scroll-top.png", "MemberType": "Property", "Name": "TopImage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Debugging", "Default": "0, 0, 0, 0", "MemberType": "Property", "Name": "VerticalBarRect", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Rect" } }, { "Category": "Scrolling", "Default": "None", "MemberType": "Property", "Name": "VerticalScrollBarInset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ScrollBarInset" } }, { "Category": "Scrolling", "Default": "Right", "MemberType": "Property", "Name": "VerticalScrollBarPosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "VerticalScrollBarPosition" } }, { "MemberType": "Function", "Name": "ClearInertialScrolling", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSampledInertialVelocity", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ScrollToTop", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "ScrollingFrame", "Superclass": "GuiObject" }, { "Members": [ { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "ClearTextOnFocus", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "Confidential", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "TextBox", "MemberType": "Property", "Name": "ContentText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "CursorPosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Text", "Default": "Legacy", "MemberType": "Property", "Name": "Font", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Font" } }, { "Category": "Text", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "FontFace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Font" } }, { "Category": "Text", "Default": "Size8", "MemberType": "Property", "Name": "FontSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "TextSize", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FontSize" } }, { "Category": "Text", "Default": "1", "MemberType": "Property", "Name": "LineHeight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "ManualFocusRelease", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "-1", "MemberType": "Property", "Name": "MaxVisibleGraphemes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "MultiLine", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "OverlayNativeInput", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "0.7, 0.7, 0.7", "MemberType": "Property", "Name": "PlaceholderColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Text", "Default": "", "MemberType": "Property", "Name": "PlaceholderText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "Default", "MemberType": "Property", "Name": "ReturnKeyType", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ReturnKeyType" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "RichText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "-1", "MemberType": "Property", "Name": "SelectionStart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "ShowNativeInput", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "TextBox", "MemberType": "Property", "Name": "Text", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Text", "Default": "0, 0", "MemberType": "Property", "Name": "TextBounds", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Text", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TextColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Text", "Default": "0.105882, 0.164706, 0.207843", "MemberType": "Property", "Name": "TextColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Text", "Default": "Auto", "MemberType": "Property", "Name": "TextDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextDirection" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "TextEditable", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextFits", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "Default", "MemberType": "Property", "Name": "TextInputType", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextInputType" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextScaled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "8", "MemberType": "Property", "Name": "TextSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Text", "Default": "0, 0, 0", "MemberType": "Property", "Name": "TextStrokeColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Text", "Default": "1", "MemberType": "Property", "Name": "TextStrokeTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Text", "Default": "0", "MemberType": "Property", "Name": "TextTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Text", "Default": "None", "MemberType": "Property", "Name": "TextTruncate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextTruncate" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextWrap", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "TextWrapped", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextWrapped", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "Center", "MemberType": "Property", "Name": "TextXAlignment", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextXAlignment" } }, { "Category": "Text", "Default": "Center", "MemberType": "Property", "Name": "TextYAlignment", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextYAlignment" } }, { "MemberType": "Function", "Name": "CaptureFocus", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsFocused", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReleaseFocus", "Parameters": [ { "Default": "false", "Name": "submitted", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ResetKeyboardMode", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTextFromInput", "Parameters": [ { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FocusLost", "Parameters": [ { "Name": "enterPressed", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "inputThatCausedFocusLoss", "Type": { "Category": "Class", "Name": "InputObject" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Focused", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ReturnPressedFromOnScreenKeyboard", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "TextBox", "Superclass": "GuiObject" }, { "Members": [ { "Category": "Video", "Default": "false", "MemberType": "Property", "Name": "IsLoaded", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Video", "Default": "false", "MemberType": "Property", "Name": "Looped", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Video", "Default": "false", "MemberType": "Property", "Name": "Playing", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Video", "Default": "false", "MemberType": "Property", "Name": "PlayingReplicating", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Video", "Default": "0, 0", "MemberType": "Property", "Name": "Resolution", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Video", "Default": "0", "MemberType": "Property", "Name": "TimeLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Video", "Default": "0", "MemberType": "Property", "Name": "TimePosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Video", "Default": "0", "MemberType": "Property", "Name": "TimePositionReplicating", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Video", "Default": "", "MemberType": "Property", "Name": "Video", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Video", "Default": "1", "MemberType": "Property", "Name": "Volume", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "Pause", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Play", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DidLoop", "Parameters": [ { "Name": "video", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Ended", "Parameters": [ { "Name": "video", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Loaded", "Parameters": [ { "Name": "video", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Paused", "Parameters": [ { "Name": "video", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Played", "Parameters": [ { "Name": "video", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayingUpdatedFromServer", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TimePositionUpdatedFromServer", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "VideoFrame", "Superclass": "GuiObject" }, { "Members": [ { "Category": "Appearance", "Default": "0.784314, 0.784314, 0.784314", "MemberType": "Property", "Name": "Ambient", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CameraCFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "1.22173059", "MemberType": "Property", "Name": "CameraFieldOfView", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CurrentCamera", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Camera" } }, { "Category": "Image", "Default": "1, 1, 1", "MemberType": "Property", "Name": "ImageColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Image", "Default": "0", "MemberType": "Property", "Name": "ImageTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "IsMirrored", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0.54902, 0.54902, 0.54902", "MemberType": "Property", "Name": "LightColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "-1, -1, -1", "MemberType": "Property", "Name": "LightDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "Gui", "Name": "ViewportFrame", "Superclass": "GuiObject" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ResetOnSpawn", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ZIndexBehavior", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ZIndexBehavior" } }, { "MemberType": "Function", "Name": "GetLayoutNodeTree", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "LayerCollector", "Superclass": "GuiBase2d", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "Active", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Adornee", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "AlwaysOnTop", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "Brightness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "ClipsDescendants", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "CurrentDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "DistanceLowerLimit", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "DistanceStep", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "-1", "MemberType": "Property", "Name": "DistanceUpperLimit", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "ExtentsOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "ExtentsOffsetWorldSpace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "LightInfluence", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "INF", "MemberType": "Property", "Name": "MaxDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "PlayerToHideFrom", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "{0, 0}, {0, 0}", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } }, { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "SizeOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "StudsOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "StudsOffsetWorldSpace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "MemberType": "Function", "Name": "GetScreenSpaceBounds", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BillboardGui", "Superclass": "LayerCollector" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Title", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "BindToClose", "Parameters": [ { "Default": "nil", "Name": "function", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRelativeMousePosition", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PluginDragDropped", "Parameters": [ { "Name": "dragData", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PluginDragEntered", "Parameters": [ { "Name": "dragData", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PluginDragLeft", "Parameters": [ { "Name": "dragData", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PluginDragMoved", "Parameters": [ { "Name": "dragData", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "WindowFocusReleased", "Parameters": [], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "WindowFocused", "Parameters": [], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PluginGui", "Superclass": "LayerCollector", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "HostWidgetWasRestored", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "RequestRaise", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DockWidgetPluginGui", "Superclass": "PluginGui", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "QWidgetPluginGui", "Superclass": "PluginGui", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Appearance", "Default": "true", "MemberType": "Property", "Name": "ClipToDeviceSafeArea", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotBrowsable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "DisplayOrder", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "IgnoreGuiInset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "OnTopOfCoreBlur", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "FullscreenExtension", "MemberType": "Property", "Name": "SafeAreaCompatibility", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotBrowsable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SafeAreaCompatibility" } }, { "Category": "Appearance", "Default": "CoreUISafeInsets", "MemberType": "Property", "Name": "ScreenInsets", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotBrowsable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ScreenInsets" } } ], "MemoryCategory": "Instances", "Name": "ScreenGui", "Superclass": "LayerCollector" }, { "Members": [], "MemoryCategory": "Instances", "Name": "GuiMain", "Superclass": "ScreenGui", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Active", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Adornee", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Face", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NormalId" } } ], "MemoryCategory": "Instances", "Name": "SurfaceGuiBase", "Superclass": "LayerCollector", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "HorizontalRectangle", "MemberType": "Property", "Name": "AdShape", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AdShape" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "FallbackImage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Behavior", "Default": "Inactive", "MemberType": "Property", "Name": "Status", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AdUnitStatus" } } ], "MemoryCategory": "Internal", "Name": "AdGui", "Superclass": "SurfaceGuiBase" }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "AlwaysOnTop", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "Brightness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Sizing", "Default": "800, 600", "MemberType": "Property", "Name": "CanvasSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "ClipsDescendants", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "HorizontalCurvature", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "LightInfluence", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Sizing", "Default": "50", "MemberType": "Property", "Name": "PixelsPerStud", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "Flat", "MemberType": "Property", "Name": "Shape", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SurfaceGuiShape" } }, { "Category": "Sizing", "Default": "FixedSize", "MemberType": "Property", "Name": "SizingMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SurfaceGuiSizingMode" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "ToolPunchThroughDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "ZOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "SurfaceGui", "Superclass": "SurfaceGuiBase" }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Color3", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Color3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Transparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Visible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "GuiBase3d", "Superclass": "GuiBase", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "CycleOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "From", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Data", "Default": "4", "MemberType": "Property", "Name": "StudsBetweenTextures", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "Texture", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "1, 1", "MemberType": "Property", "Name": "TextureSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "To", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Data", "Default": "2", "MemberType": "Property", "Name": "Velocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0.0625", "MemberType": "Property", "Name": "WireRadius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "FloorWire", "Superclass": "GuiBase3d", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Adornee", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } } ], "MemoryCategory": "Instances", "Name": "InstanceAdornment", "Superclass": "GuiBase3d", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Appearance", "Default": "0.150000006", "MemberType": "Property", "Name": "LineThickness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "StudioSelectionBox", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "SurfaceColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "SurfaceColor3", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Appearance", "Default": "0.0509804, 0.411765, 0.67451", "MemberType": "Property", "Name": "SurfaceColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "SurfaceTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "SelectionBox", "Superclass": "InstanceAdornment" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Adornee", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "PVInstance" } } ], "MemoryCategory": "Instances", "Name": "PVAdornment", "Superclass": "GuiBase3d", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AdornCullingMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AdornCullingMode" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AlwaysOnTop", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SizeRelativeOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ZIndex", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Event", "Name": "MouseButton1Down", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseButton1Up", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseEnter", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseLeave", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "HandleAdornment", "Superclass": "PVAdornment", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "1, 1, 1", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "Instances", "Name": "BoxHandleAdornment", "Superclass": "HandleAdornment" }, { "Members": [ { "Category": "Data", "Default": "2", "MemberType": "Property", "Name": "Height", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0.5", "MemberType": "Property", "Name": "Radius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "ConeHandleAdornment", "Superclass": "HandleAdornment" }, { "Members": [ { "Category": "Data", "Default": "360", "MemberType": "Property", "Name": "Angle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "Height", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "InnerRadius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "Radius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "CylinderHandleAdornment", "Superclass": "HandleAdornment" }, { "Members": [ { "Category": "Data", "Default": "rbxasset://textures/SurfacesDefault.png", "MemberType": "Property", "Name": "Image", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Data", "Default": "1, 1", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } } ], "MemoryCategory": "Instances", "Name": "ImageHandleAdornment", "Superclass": "HandleAdornment" }, { "Members": [ { "Category": "Data", "Default": "5", "MemberType": "Property", "Name": "Length", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "Thickness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "LineHandleAdornment", "Superclass": "HandleAdornment" }, { "Members": [ { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "Radius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "SphereHandleAdornment", "Superclass": "HandleAdornment" }, { "Members": [ { "Category": "Data", "Default": "1, 1, 1", "MemberType": "Property", "Name": "Scale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "MemberType": "Function", "Name": "AddLine", "Parameters": [ { "Name": "from", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "to", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddLines", "Parameters": [ { "Name": "points", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddPath", "Parameters": [ { "Name": "points", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "loop", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Clear", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "WireframeHandleAdornment", "Superclass": "HandleAdornment" }, { "Members": [ { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "A", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "B", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "C", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "Range", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "Thickness", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "FindPartOnParabola", "Parameters": [ { "Name": "ignoreDescendentsTable", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ParabolaAdornment", "Superclass": "PVAdornment" }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "SurfaceColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "SurfaceColor3", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Appearance", "Default": "0.0509804, 0.411765, 0.67451", "MemberType": "Property", "Name": "SurfaceColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "SurfaceTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "SelectionSphere", "Superclass": "PVAdornment" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Adornee", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } } ], "MemoryCategory": "Instances", "Name": "PartAdornment", "Superclass": "GuiBase3d", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "HandlesBase", "Superclass": "PartAdornment", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "X, Y, Z", "MemberType": "Property", "Name": "Axes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Axes" } }, { "Category": "EventReplicator", "Default": "0", "MemberType": "Property", "Name": "MouseButton1DownConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "0", "MemberType": "Property", "Name": "MouseButton1UpConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "0", "MemberType": "Property", "Name": "MouseDragConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "0", "MemberType": "Property", "Name": "MouseEnterConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "0", "MemberType": "Property", "Name": "MouseLeaveConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Event", "Name": "MouseButton1Down", "Parameters": [ { "Name": "axis", "Type": { "Category": "Enum", "Name": "Axis" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseButton1Up", "Parameters": [ { "Name": "axis", "Type": { "Category": "Enum", "Name": "Axis" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseDrag", "Parameters": [ { "Name": "axis", "Type": { "Category": "Enum", "Name": "Axis" } }, { "Name": "relativeAngle", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "deltaRadius", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseEnter", "Parameters": [ { "Name": "axis", "Type": { "Category": "Enum", "Name": "Axis" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseLeave", "Parameters": [ { "Name": "axis", "Type": { "Category": "Enum", "Name": "Axis" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ArcHandles", "Superclass": "HandlesBase" }, { "Members": [ { "Category": "Data", "Default": "Right, Top, Back, Left, Bottom, Front", "MemberType": "Property", "Name": "Faces", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Faces" } }, { "Category": "EventReplicator", "Default": "0", "MemberType": "Property", "Name": "MouseButton1DownConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "0", "MemberType": "Property", "Name": "MouseButton1UpConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "0", "MemberType": "Property", "Name": "MouseDragConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "0", "MemberType": "Property", "Name": "MouseEnterConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "0", "MemberType": "Property", "Name": "MouseLeaveConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Appearance", "Default": "Resize", "MemberType": "Property", "Name": "Style", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HandlesStyle" } }, { "MemberType": "Event", "Name": "MouseButton1Down", "Parameters": [ { "Name": "face", "Type": { "Category": "Enum", "Name": "NormalId" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseButton1Up", "Parameters": [ { "Name": "face", "Type": { "Category": "Enum", "Name": "NormalId" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseDrag", "Parameters": [ { "Name": "face", "Type": { "Category": "Enum", "Name": "NormalId" } }, { "Name": "distance", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseEnter", "Parameters": [ { "Name": "face", "Type": { "Category": "Enum", "Name": "NormalId" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseLeave", "Parameters": [ { "Name": "face", "Type": { "Category": "Enum", "Name": "NormalId" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Handles", "Superclass": "HandlesBase" }, { "Members": [ { "Category": "Data", "Default": "Right", "MemberType": "Property", "Name": "TargetSurface", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NormalId" } } ], "MemoryCategory": "Instances", "Name": "SurfaceSelection", "Superclass": "PartAdornment" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Humanoid", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Humanoid" } } ], "MemoryCategory": "Instances", "Name": "SelectionLasso", "Superclass": "GuiBase3d", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Part", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } } ], "MemoryCategory": "Instances", "Name": "SelectionPartLasso", "Superclass": "SelectionLasso", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Point", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "Instances", "Name": "SelectionPointLasso", "Superclass": "SelectionLasso", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AutoSelectGuiEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CoreEffectFolder", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Folder" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CoreGuiFolder", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Folder" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CoreGuiNavigationEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GuiNavigationEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsModalDialog", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsWindows", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MenuIsOpen", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PreferredTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ReducedMotionEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectedCoreObject", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "GuiObject" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectedObject", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "GuiObject" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TouchControlsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "AddCenterDialog", "Parameters": [ { "Name": "dialog", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "centerDialogType", "Type": { "Category": "Enum", "Name": "CenterDialogType" } }, { "Name": "showFunction", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "hideFunction", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddKey", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddSelectionParent", "Parameters": [ { "Name": "selectionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "selectionParent", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddSelectionTuple", "Parameters": [ { "Name": "selectionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "selections", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddSpecialKey", "Parameters": [ { "Name": "key", "Type": { "Category": "Enum", "Name": "SpecialKey" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BroadcastNotification", "Parameters": [ { "Name": "data", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "notificationType", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClearError", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CloseInspectMenu", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CloseStatsBasedOnInputString", "Parameters": [ { "Name": "input", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ForceTenFootInterface", "Parameters": [ { "Name": "isForced", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBrickCount", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetClosestDialogToPosition", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetEmotesMenuOpen", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetErrorCode", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "ConnectionError" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetErrorMessage", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetUiMessage", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetErrorType", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "ConnectionError" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGameplayPausedNotificationEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGuiInset", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGuiIsVisible", "Parameters": [ { "Name": "guiType", "Type": { "Category": "Enum", "Name": "GuiType" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetInspectMenuEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetNotificationTypeList", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetResolutionScale", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSafeZoneOffsets", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUiMessage", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InspectPlayerFromHumanoidDescription", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InspectPlayerFromUserId", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InspectPlayerFromUserIdWithCtx", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "ctx", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsMemoryTrackerEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsTenFootInterface", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenBrowserWindow", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenNativeOverlay", "Parameters": [ { "Name": "title", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveCenterDialog", "Parameters": [ { "Name": "dialog", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveKey", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveSelectionGroup", "Parameters": [ { "Name": "selectionName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveSpecialKey", "Parameters": [ { "Name": "key", "Type": { "Category": "Enum", "Name": "SpecialKey" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Select", "Parameters": [ { "Name": "selectionParent", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEmotesMenuOpen", "Parameters": [ { "Name": "isOpen", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetGameplayPausedNotificationEnabled", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetGlobalGuiInset", "Parameters": [ { "Name": "x1", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y1", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "x2", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y2", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetHardwareSafeAreaInsets", "Parameters": [ { "Name": "left", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "top", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "right", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "bottom", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetInspectMenuEnabled", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMenuIsOpen", "Parameters": [ { "Name": "open", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "default", "Name": "menuName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPurchasePromptIsShown", "Parameters": [ { "Name": "isShown", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetSafeZoneOffsets", "Parameters": [ { "Name": "top", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "bottom", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "left", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "right", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetUiMessage", "Parameters": [ { "Name": "msgType", "Type": { "Category": "Enum", "Name": "UiMessageType" } }, { "Default": "errorCode", "Name": "uiMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowStatsBasedOnInputString", "Parameters": [ { "Name": "input", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ToggleFullscreen", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ToggleGuiIsVisibleForCaptures", "Parameters": [ { "Name": "guiType", "Type": { "Category": "Enum", "Name": "GuiType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ToggleGuiIsVisibleIfAllowed", "Parameters": [ { "Name": "guiType", "Type": { "Category": "Enum", "Name": "GuiType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetScreenResolution", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BrowserWindowClosed", "Parameters": [], "Security": "RobloxScriptSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CloseInspectMenuRequest", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CoreGuiRenderOverflowed", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "EmotesMenuOpenChanged", "Parameters": [ { "Name": "isOpen", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ErrorMessageChanged", "Parameters": [ { "Name": "newErrorMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "Tags": [ "Deprecated", { "PreferredDescriptorName": "UiMessageChanged", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GuiVisibilityChangedSignal", "Parameters": [ { "Name": "guiType", "Type": { "Category": "Enum", "Name": "GuiType" } }, { "Name": "visible", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InspectMenuEnabledChangedSignal", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InspectPlayerFromHumanoidDescriptionRequest", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InspectPlayerFromUserIdWithCtxRequest", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "ctx", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "KeyPressed", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "modifiers", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MenuClosed", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MenuOpened", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "NativeClose", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "NetworkPausedEnabledChanged", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Open9SliceEditor", "Parameters": [ { "Name": "selectedImageObject", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PurchasePromptShown", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SafeZoneOffsetsChanged", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ShowLeaveConfirmation", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SpecialKeyPressed", "Parameters": [ { "Name": "key", "Type": { "Category": "Enum", "Name": "SpecialKey" } }, { "Name": "modifiers", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UiMessageChanged", "Parameters": [ { "Name": "msgType", "Type": { "Category": "Enum", "Name": "UiMessageType" } }, { "Name": "newUiMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "SendCoreUiNotification", "Parameters": [ { "Name": "title", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "GuiService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "GuidRegistryService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetMotor", "Parameters": [ { "Name": "inputType", "Type": { "Category": "Enum", "Name": "UserInputType" } }, { "Name": "vibrationMotor", "Type": { "Category": "Enum", "Name": "VibrationMotor" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsMotorSupported", "Parameters": [ { "Name": "inputType", "Type": { "Category": "Enum", "Name": "UserInputType" } }, { "Name": "vibrationMotor", "Type": { "Category": "Enum", "Name": "VibrationMotor" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsVibrationSupported", "Parameters": [ { "Name": "inputType", "Type": { "Category": "Enum", "Name": "UserInputType" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMotor", "Parameters": [ { "Name": "inputType", "Type": { "Category": "Enum", "Name": "UserInputType" } }, { "Name": "vibrationMotor", "Type": { "Category": "Enum", "Name": "VibrationMotor" } }, { "Name": "vibrationValues", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "HapticService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "CancelImportHeightmap", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsValidColormap", "Parameters": [ { "Name": "colormapAssetId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsValidHeightmap", "Parameters": [ { "Name": "heightmapAssetId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetImportHeightmapPaused", "Parameters": [ { "Name": "paused", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetHeightmapPreviewAsync", "Parameters": [ { "Name": "heightmapAssetId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ImportHeightmap", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Name": "heightmapAssetId", "Type": { "Category": "DataType", "Name": "Content" } }, { "Name": "colormapAssetId", "Type": { "Category": "DataType", "Name": "Content" } }, { "Name": "defaultMaterial", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ColormapHasUnknownPixels", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ProgressUpdate", "Parameters": [ { "Name": "progressRatio", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "operation", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "HeightmapImporterService", "Superclass": "Instance", "Tags": [ "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "HSRData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "HSRMeshIdData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } } ], "MemoryCategory": "Instances", "Name": "HiddenSurfaceRemovalAsset", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Adornee", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "AlwaysOnTop", "MemberType": "Property", "Name": "DepthMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HighlightDepthMode" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "1, 0, 0", "MemberType": "Property", "Name": "FillColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "0.5", "MemberType": "Property", "Name": "FillTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "LineThickness", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "1, 1, 1", "MemberType": "Property", "Name": "OutlineColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "OutlineTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "Standard", "MemberType": "Property", "Name": "ReservedId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ReservedHighlightId" } } ], "MemoryCategory": "Instances", "Name": "Highlight", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "Hopper", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "Deprecated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetDocumentationUrl", "Parameters": [ { "Name": "partialUrl", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAsync", "Parameters": [ { "Name": "apiUrlPath", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "Default", "Name": "priority", "Type": { "Category": "Enum", "Name": "ThrottlingPriority" } }, { "Default": "Default", "Name": "httpRequestType", "Type": { "Category": "Enum", "Name": "HttpRequestType" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAsyncFullUrl", "Parameters": [ { "Name": "apiUrl", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "Default", "Name": "priority", "Type": { "Category": "Enum", "Name": "ThrottlingPriority" } }, { "Default": "Default", "Name": "httpRequestType", "Type": { "Category": "Enum", "Name": "HttpRequestType" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PostAsync", "Parameters": [ { "Name": "apiUrlPath", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "data", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "Default", "Name": "priority", "Type": { "Category": "Enum", "Name": "ThrottlingPriority" } }, { "Default": "ApplicationJson", "Name": "content_type", "Type": { "Category": "Enum", "Name": "HttpContentType" } }, { "Default": "Default", "Name": "httpRequestType", "Type": { "Category": "Enum", "Name": "HttpRequestType" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PostAsyncFullUrl", "Parameters": [ { "Name": "apiUrl", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "data", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "Default", "Name": "priority", "Type": { "Category": "Enum", "Name": "ThrottlingPriority" } }, { "Default": "ApplicationJson", "Name": "content_type", "Type": { "Category": "Enum", "Name": "HttpContentType" } }, { "Default": "Default", "Name": "httpRequestType", "Type": { "Category": "Enum", "Name": "HttpRequestType" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestAsync", "Parameters": [ { "Name": "requestOptions", "Type": { "Category": "Group", "Name": "Dictionary" } }, { "Default": "Default", "Name": "priority", "Type": { "Category": "Enum", "Name": "ThrottlingPriority" } }, { "Default": "ApplicationJson", "Name": "content_type", "Type": { "Category": "Enum", "Name": "HttpContentType" } }, { "Default": "Default", "Name": "httpRequestType", "Type": { "Category": "Enum", "Name": "HttpRequestType" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestLimitedAsync", "Parameters": [ { "Name": "requestOptions", "Type": { "Category": "Group", "Name": "Dictionary" } }, { "Default": "Default", "Name": "priority", "Type": { "Category": "Enum", "Name": "ThrottlingPriority" } }, { "Default": "ApplicationJson", "Name": "content_type", "Type": { "Category": "Enum", "Name": "HttpContentType" } }, { "Default": "Default", "Name": "httpRequestType", "Type": { "Category": "Enum", "Name": "HttpRequestType" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "HttpRbxApiService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "Cancel", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Start", "Parameters": [ { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "HttpRequest", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "HttpEnabled", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "GenerateGUID", "Parameters": [ { "Default": "true", "Name": "wrapInCurlyBraces", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetHttpEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserAgent", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "JSONDecode", "Parameters": [ { "Name": "input", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "JSONEncode", "Parameters": [ { "Name": "input", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "RequestInternal", "Parameters": [ { "Name": "options", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetHttpEnabled", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UrlEncode", "Parameters": [ { "Name": "input", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetAsync", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "false", "Name": "nocache", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "headers", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PostAsync", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "data", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "ApplicationJson", "Name": "content_type", "Type": { "Category": "Enum", "Name": "HttpContentType" } }, { "Default": "false", "Name": "compress", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "headers", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestAsync", "Parameters": [ { "Name": "requestOptions", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "HttpService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Jump Settings", "Default": "true", "MemberType": "Property", "Name": "AutoJumpEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "true", "MemberType": "Property", "Name": "AutoRotate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Game", "Default": "true", "MemberType": "Property", "Name": "AutomaticScalingEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "BreakJointsOnDeath", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "400", "MemberType": "Property", "Name": "CameraMaxDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "CameraMinDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "Classic", "MemberType": "Property", "Name": "CameraMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "CameraMode" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "CameraOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Behavior", "Default": "OuterBox", "MemberType": "Property", "Name": "CollisionType", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HumanoidCollisionType" } }, { "Category": "Data", "Default": "Viewer", "MemberType": "Property", "Name": "DisplayDistanceType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HumanoidDisplayDistanceType" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "DisplayName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "EvaluateStateMachine", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotBrowsable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "Air", "MemberType": "Property", "Name": "FloorMaterial", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Material" } }, { "Category": "Game", "Default": "100", "MemberType": "Property", "Name": "Health", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "100", "MemberType": "Property", "Name": "HealthDisplayDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "DisplayWhenDamaged", "MemberType": "Property", "Name": "HealthDisplayType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HumanoidHealthDisplayType" } }, { "Category": "Game", "Default": "100", "MemberType": "Property", "Name": "Health_XML", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Game", "Default": "0", "MemberType": "Property", "Name": "HipHeight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1, 1, 1", "MemberType": "Property", "Name": "InternalBodyScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "InternalDisplayName", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "InternalHeadScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "InternalOriginalHipHeight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Control", "Default": "false", "MemberType": "Property", "Name": "Jump", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Jump Settings", "Default": "7.19999981", "MemberType": "Property", "Name": "JumpHeight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Jump Settings", "Default": "50", "MemberType": "Property", "Name": "JumpPower", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Control", "Default": "false", "MemberType": "Property", "Name": "JumpReplicate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "LeftLeg", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Game", "Default": "100", "MemberType": "Property", "Name": "MaxHealth", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Game", "Default": "89", "MemberType": "Property", "Name": "MaxSlopeAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Control", "Default": "0, 0, 0", "MemberType": "Property", "Name": "MoveDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Control", "Default": "0, 0, 0", "MemberType": "Property", "Name": "MoveDirectionInternal", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "100", "MemberType": "Property", "Name": "NameDisplayDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "OccludeAll", "MemberType": "Property", "Name": "NameOcclusion", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NameOcclusion" } }, { "Category": "Data", "Default": "FallingDown", "MemberType": "Property", "Name": "NetworkHumanoidState", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HumanoidStateType" } }, { "Category": "Control", "Default": "false", "MemberType": "Property", "Name": "PlatformStand", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "RequiresNeck", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "R6", "MemberType": "Property", "Name": "RigType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HumanoidRigType" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "RightLeg", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "RootPart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Control", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "SeatPart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Control", "Default": "false", "MemberType": "Property", "Name": "Sit", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "false", "MemberType": "Property", "Name": "Strafe", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "0, 0, 0", "MemberType": "Property", "Name": "TargetPoint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Torso", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Jump Settings", "Default": "true", "MemberType": "Property", "Name": "UseJumpPower", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "0", "MemberType": "Property", "Name": "WalkAngleError", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Control", "Default": "0, 0, 0", "MemberType": "Property", "Name": "WalkDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Game", "Default": "16", "MemberType": "Property", "Name": "WalkSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Control", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "WalkToPart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Control", "Default": "0, 0, 0", "MemberType": "Property", "Name": "WalkToPoint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Game", "Default": "100", "MemberType": "Property", "Name": "maxHealth", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "MaxHealth", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "AddAccessory", "Parameters": [ { "Name": "accessory", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddCustomStatus", "Parameters": [ { "Name": "status", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddStatus", "Parameters": [ { "Default": "Poison", "Name": "status", "Type": { "Category": "Enum", "Name": "Status" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ApplyDescriptionBlocking", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BuildRigFromAttachments", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CacheDefaults", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ChangeState", "Parameters": [ { "Default": "None", "Name": "state", "Type": { "Category": "Enum", "Name": "HumanoidStateType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "EquipTool", "Parameters": [ { "Name": "tool", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAccessories", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAccessoryHandleScale", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "partType", "Type": { "Category": "Enum", "Name": "BodyPartR15" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAppliedDescription", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "HumanoidDescription" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBodyPartR15", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Enum", "Name": "BodyPartR15" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetLimb", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Enum", "Name": "Limb" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMoveVelocity", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "Tags": [ "NotBrowsable" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPlayingAnimationTracks", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPlayingAnimationTracks", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetState", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "HumanoidStateType" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetStateEnabled", "Parameters": [ { "Name": "state", "Type": { "Category": "Enum", "Name": "HumanoidStateType" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetStatuses", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HasCustomStatus", "Parameters": [ { "Name": "status", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HasStatus", "Parameters": [ { "Default": "Poison", "Name": "status", "Type": { "Category": "Enum", "Name": "Status" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadAnimation", "Parameters": [ { "Name": "animation", "Type": { "Category": "Class", "Name": "Animation" } } ], "ReturnType": { "Category": "Class", "Name": "AnimationTrack" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "LoadAnimation", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Move", "Parameters": [ { "Name": "moveDirection", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Default": "false", "Name": "relativeToCamera", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "MoveTo", "Parameters": [ { "Name": "location", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Default": "nil", "Name": "part", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveAccessories", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveCustomStatus", "Parameters": [ { "Name": "status", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveStatus", "Parameters": [ { "Default": "Poison", "Name": "status", "Type": { "Category": "Enum", "Name": "Status" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReplaceBodyPartR15", "Parameters": [ { "Name": "bodyPart", "Type": { "Category": "Enum", "Name": "BodyPartR15" } }, { "Name": "part", "Type": { "Category": "Class", "Name": "BasePart" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetClickToWalkEnabled", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetStateEnabled", "Parameters": [ { "Name": "state", "Type": { "Category": "Enum", "Name": "HumanoidStateType" } }, { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TakeDamage", "Parameters": [ { "Name": "amount", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnequipTools", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "loadAnimation", "Parameters": [ { "Name": "animation", "Type": { "Category": "Class", "Name": "Animation" } } ], "ReturnType": { "Category": "Class", "Name": "AnimationTrack" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "LoadAnimation", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "takeDamage", "Parameters": [ { "Name": "amount", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "TakeDamage", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ApplyDescription", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Default": "Default", "Name": "assetTypeVerification", "Type": { "Category": "Enum", "Name": "AssetTypeVerification" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ApplyDescriptionClientServer", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ApplyDescriptionReset", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Default": "Default", "Name": "assetTypeVerification", "Type": { "Category": "Enum", "Name": "AssetTypeVerification" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PlayEmote", "Parameters": [ { "Name": "emoteName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PlayEmoteAndGetAnimTrackById", "Parameters": [ { "Name": "emoteId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AnimationPlayed", "Parameters": [ { "Name": "animationTrack", "Type": { "Category": "Class", "Name": "AnimationTrack" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "AnimationPlayed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Climbing", "Parameters": [ { "Name": "speed", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ClusterCompositionFinished", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CustomStatusAdded", "Parameters": [ { "Name": "status", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CustomStatusRemoved", "Parameters": [ { "Name": "status", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Died", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "EmoteTriggered", "Parameters": [ { "Name": "success", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "animationTrack", "Type": { "Category": "Class", "Name": "AnimationTrack" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FallingDown", "Parameters": [ { "Name": "active", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FreeFalling", "Parameters": [ { "Name": "active", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GettingUp", "Parameters": [ { "Name": "active", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "HealthChanged", "Parameters": [ { "Name": "health", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Jumping", "Parameters": [ { "Name": "active", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MoveToFinished", "Parameters": [ { "Name": "reached", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlatformStanding", "Parameters": [ { "Name": "active", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Ragdoll", "Parameters": [ { "Name": "active", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Running", "Parameters": [ { "Name": "speed", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Seated", "Parameters": [ { "Name": "active", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "currentSeatPart", "Type": { "Category": "Class", "Name": "BasePart" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerApplyDescription", "Parameters": [ { "Name": "status", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerBreakJoints", "Parameters": [], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerEquipTool", "Parameters": [ { "Name": "tool", "Type": { "Category": "Class", "Name": "Tool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StateChanged", "Parameters": [ { "Name": "old", "Type": { "Category": "Enum", "Name": "HumanoidStateType" } }, { "Name": "new", "Type": { "Category": "Enum", "Name": "HumanoidStateType" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StateEnabledChanged", "Parameters": [ { "Name": "state", "Type": { "Category": "Enum", "Name": "HumanoidStateType" } }, { "Name": "isEnabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StatusAdded", "Parameters": [ { "Name": "status", "Type": { "Category": "Enum", "Name": "Status" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StatusRemoved", "Parameters": [ { "Name": "status", "Type": { "Category": "Enum", "Name": "Status" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Strafing", "Parameters": [ { "Name": "active", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Swimming", "Parameters": [ { "Name": "speed", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Touched", "Parameters": [ { "Name": "touchingPart", "Type": { "Category": "Class", "Name": "BasePart" } }, { "Name": "humanoidPart", "Type": { "Category": "Class", "Name": "BasePart" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Humanoid", "Superclass": "Instance" }, { "Members": [ { "Category": "Accessories", "Default": "[]", "MemberType": "Property", "Name": "AccessoryBlob", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Accessories", "Default": "", "MemberType": "Property", "Name": "BackAccessory", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Scale", "Default": "0.300000012", "MemberType": "Property", "Name": "BodyTypeScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Animation", "Default": "0", "MemberType": "Property", "Name": "ClimbAnimation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Scale", "Default": "1", "MemberType": "Property", "Name": "DepthScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "EmotesDataInternal", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "EquippedEmotesDataInternal", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Body Parts", "Default": "0", "MemberType": "Property", "Name": "Face", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Accessories", "Default": "", "MemberType": "Property", "Name": "FaceAccessory", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Animation", "Default": "0", "MemberType": "Property", "Name": "FallAnimation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Accessories", "Default": "", "MemberType": "Property", "Name": "FrontAccessory", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Clothes", "Default": "0", "MemberType": "Property", "Name": "GraphicTShirt", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Accessories", "Default": "", "MemberType": "Property", "Name": "HairAccessory", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Accessories", "Default": "", "MemberType": "Property", "Name": "HatAccessory", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Body Parts", "Default": "0", "MemberType": "Property", "Name": "Head", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Body Colors", "Default": "0, 0, 0", "MemberType": "Property", "Name": "HeadColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Scale", "Default": "1", "MemberType": "Property", "Name": "HeadScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Scale", "Default": "1", "MemberType": "Property", "Name": "HeightScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Animation", "Default": "0", "MemberType": "Property", "Name": "IdleAnimation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Animation", "Default": "0", "MemberType": "Property", "Name": "JumpAnimation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Body Parts", "Default": "0", "MemberType": "Property", "Name": "LeftArm", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Body Colors", "Default": "0, 0, 0", "MemberType": "Property", "Name": "LeftArmColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Body Parts", "Default": "0", "MemberType": "Property", "Name": "LeftLeg", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Body Colors", "Default": "0, 0, 0", "MemberType": "Property", "Name": "LeftLegColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Animation", "Default": "0", "MemberType": "Property", "Name": "MoodAnimation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Accessories", "Default": "", "MemberType": "Property", "Name": "NeckAccessory", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Animation", "Default": "-1", "MemberType": "Property", "Name": "NumberEmotesLoaded", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Clothes", "Default": "0", "MemberType": "Property", "Name": "Pants", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Scale", "Default": "1", "MemberType": "Property", "Name": "ProportionScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Body Parts", "Default": "0", "MemberType": "Property", "Name": "RightArm", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Body Colors", "Default": "0, 0, 0", "MemberType": "Property", "Name": "RightArmColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Body Parts", "Default": "0", "MemberType": "Property", "Name": "RightLeg", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Body Colors", "Default": "0, 0, 0", "MemberType": "Property", "Name": "RightLegColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Animation", "Default": "0", "MemberType": "Property", "Name": "RunAnimation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Clothes", "Default": "0", "MemberType": "Property", "Name": "Shirt", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Accessories", "Default": "", "MemberType": "Property", "Name": "ShouldersAccessory", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Animation", "Default": "0", "MemberType": "Property", "Name": "SwimAnimation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Body Parts", "Default": "0", "MemberType": "Property", "Name": "Torso", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Body Colors", "Default": "0, 0, 0", "MemberType": "Property", "Name": "TorsoColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Accessories", "Default": "", "MemberType": "Property", "Name": "WaistAccessory", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Animation", "Default": "0", "MemberType": "Property", "Name": "WalkAnimation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Scale", "Default": "1", "MemberType": "Property", "Name": "WidthScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "AddEmote", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAccessories", "Parameters": [ { "Name": "includeRigidAccessories", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetEmotes", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetEquippedEmotes", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveEmote", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetAccessories", "Parameters": [ { "Name": "accessories", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "includeRigidAccessories", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEmotes", "Parameters": [ { "Name": "emotes", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEquippedEmotes", "Parameters": [ { "Name": "equippedEmotes", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "EmotesChanged", "Parameters": [ { "Name": "newEmotes", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "EquippedEmotesChanged", "Parameters": [ { "Name": "newEquippedEmotes", "Type": { "Category": "Group", "Name": "Array" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "HumanoidDescription", "Superclass": "Instance" }, { "Members": [ { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "ChainRoot", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "EndEffector", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "EndEffectorOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Offset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Pole", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Behavior", "Default": "0", "MemberType": "Property", "Name": "Priority", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Behavior", "Default": "0.0500000007", "MemberType": "Property", "Name": "SmoothTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Target", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Behavior", "Default": "Transform", "MemberType": "Property", "Name": "Type", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "IKControlType" } }, { "Category": "Behavior", "Default": "1", "MemberType": "Property", "Name": "Weight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "GetChainCount", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetChainLength", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetNodeLocalCFrame", "Parameters": [ { "Name": "index", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetNodeWorldCFrame", "Parameters": [ { "Name": "index", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRawFinalTarget", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSmoothedFinalTarget", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Animation", "Name": "IKControl", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ILegacyStudioBridge", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "LegacyStudioBridge", "Superclass": "ILegacyStudioBridge", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "ClearUserLayers", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBrowserTrackerLayerLoadingStatus", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "IXPLoadingStatus" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBrowserTrackerLayerVariables", "Parameters": [ { "Name": "layerName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBrowserTrackerStatusForLayer", "Parameters": [ { "Name": "layerName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Enum", "Name": "IXPLoadingStatus?" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRegisteredUserLayersToStatus", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserLayerLoadingStatus", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "IXPLoadingStatus" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserLayerVariables", "Parameters": [ { "Name": "layerName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserStatusForLayer", "Parameters": [ { "Name": "layerName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Enum", "Name": "IXPLoadingStatus?" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InitializeUserLayers", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LogBrowserTrackerLayerExposure", "Parameters": [ { "Name": "layerName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LogUserLayerExposure", "Parameters": [ { "Name": "layerName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterUserLayers", "Parameters": [ { "Name": "userLayers", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnBrowserTrackerLayerLoadingStatusChanged", "Parameters": [ { "Name": "status", "Type": { "Category": "Enum", "Name": "IXPLoadingStatus" } } ], "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnUserLayerLoadingStatusChanged", "Parameters": [ { "Name": "status", "Type": { "Category": "Enum", "Name": "IXPLoadingStatus" } } ], "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "IXPService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "AddPathsToBundle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "0.10000000000000000555", "MemberType": "Property", "Name": "BuildDebouncePeriod", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "HighCompression", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "SerializePatch", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "ZstdCompression", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "IncrementalPatchBuilder", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Delta", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "Unknown", "MemberType": "Property", "Name": "KeyCode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "KeyCode" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "State", "Default": "None", "MemberType": "Property", "Name": "UserInputState", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "UserInputState" } }, { "Category": "Data", "Default": "None", "MemberType": "Property", "Name": "UserInputType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "UserInputType" } }, { "MemberType": "Function", "Name": "IsModifierKeyDown", "Parameters": [ { "Name": "modifierKey", "Type": { "Category": "Enum", "Name": "ModifierKey" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "InputObject", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "AllowClientInsertModels", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "AllowInsertFreeModels", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated", "NotBrowsable", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "ApproveAssetId", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ApproveAssetVersionId", "Parameters": [ { "Name": "assetVersionId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetLocalFileContents", "Parameters": [ { "Name": "contentId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Insert", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadLocalAsset", "Parameters": [ { "Name": "assetPath", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadPackageAsset", "Parameters": [ { "Name": "url", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateMeshPartAsync", "Parameters": [ { "Name": "meshId", "Type": { "Category": "DataType", "Name": "Content" } }, { "Name": "collisionFidelity", "Type": { "Category": "Enum", "Name": "CollisionFidelity" } }, { "Name": "renderFidelity", "Type": { "Category": "Enum", "Name": "RenderFidelity" } } ], "ReturnType": { "Category": "Class", "Name": "MeshPart" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBaseCategories", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields", "Deprecated", { "PreferredDescriptorName": "GetBaseSets", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBaseSets", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCollection", "Parameters": [ { "Name": "categoryId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFreeDecals", "Parameters": [ { "Name": "searchText", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "pageNum", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFreeModels", "Parameters": [ { "Name": "searchText", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "pageNum", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetLatestAssetVersionAsync", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserCategories", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields", "Deprecated", { "PreferredDescriptorName": "GetUserSets", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserSets", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadAsset", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadAssetVersion", "Parameters": [ { "Name": "assetVersionId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadAssetWithFormat", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "format", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadPackageAssetAsync", "Parameters": [ { "Name": "url", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "loadAsset", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields", "Deprecated", { "PreferredDescriptorName": "LoadAsset", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InternalDelete", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "InsertService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "AutoSync", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Path", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Target", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } } ], "MemoryCategory": "Instances", "Name": "InternalSyncItem", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "InternalSyncService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Active", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "C0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "C1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Part0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Part1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "part1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Part1", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } } ], "MemoryCategory": "PhysicsParts", "Name": "JointInstance", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BaseAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "PhysicsParts", "Name": "DynamicRotate", "Superclass": "JointInstance", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "RotateP", "Superclass": "DynamicRotate", "Tags": [ "Deprecated", { "PreferredDescriptorName": "HingeConstraint", "ThreadSafety": "Unknown" } ] }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "RotateV", "Superclass": "DynamicRotate", "Tags": [ "Deprecated", { "PreferredDescriptorName": "HingeConstraint", "ThreadSafety": "Unknown" } ] }, { "Members": [ { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "F0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "F1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "F2", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "F3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "PhysicsParts", "Name": "Glue", "Superclass": "JointInstance", "Tags": [ "Deprecated", { "PreferredDescriptorName": "WeldConstraint", "ThreadSafety": "Unknown" } ] }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "ManualSurfaceJointInstance", "Superclass": "JointInstance", "Tags": [ "NotCreatable", "Deprecated", { "PreferredDescriptorName": "WeldConstraint", "ThreadSafety": "Unknown" } ] }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "ManualGlue", "Superclass": "ManualSurfaceJointInstance", "Tags": [ "Deprecated", { "PreferredDescriptorName": "WeldConstraint", "ThreadSafety": "Unknown" } ] }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "ManualWeld", "Superclass": "ManualSurfaceJointInstance", "Tags": [ "Deprecated", { "PreferredDescriptorName": "WeldConstraint", "ThreadSafety": "Unknown" } ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "CurrentAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "DesiredAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "MaxVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "SetDesiredAngle", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "Motor", "Superclass": "JointInstance" }, { "Members": [ { "Category": "Animatable", "Default": "", "MemberType": "Property", "Name": "ChildName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Animatable", "Default": "", "MemberType": "Property", "Name": "ParentName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Transform", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } } ], "MemoryCategory": "PhysicsParts", "Name": "Motor6D", "Superclass": "Motor" }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "Rotate", "Superclass": "JointInstance", "Tags": [ "Deprecated", { "PreferredDescriptorName": "HingeConstraint", "ThreadSafety": "Unknown" } ] }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "Snap", "Superclass": "JointInstance", "Tags": [ "Deprecated", { "PreferredDescriptorName": "WeldConstraint", "ThreadSafety": "Unknown" } ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "CurrentAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "DesiredAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Hole", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Hole" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "MaxVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "PhysicsParts", "Name": "VelocityMotor", "Superclass": "JointInstance" }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "Weld", "Superclass": "JointInstance" }, { "Members": [ { "MemberType": "Function", "Name": "ClearJoinAfterMoveJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateJoinAfterMoveJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetJoinAfterMoveInstance", "Parameters": [ { "Name": "joinInstance", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetJoinAfterMoveTarget", "Parameters": [ { "Name": "joinTarget", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowPermissibleJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "JointsService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "Deprecated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "KeyboardService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Time", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "AddMarker", "Parameters": [ { "Name": "marker", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddPose", "Parameters": [ { "Name": "pose", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMarkers", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPoses", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveMarker", "Parameters": [ { "Name": "marker", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemovePose", "Parameters": [ { "Name": "pose", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Animation", "Name": "Keyframe", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Animation", "Name": "KeyframeMarker", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "GetKeyframeSequence", "Parameters": [ { "Name": "assetId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetKeyframeSequenceAsync", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetKeyframeSequenceById", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "useCache", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetKeyframeSequenceAsync", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMemStats", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterActiveKeyframeSequence", "Parameters": [ { "Name": "keyframeSequence", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "DataType", "Name": "Content" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterKeyframeSequence", "Parameters": [ { "Name": "keyframeSequence", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "DataType", "Name": "Content" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAnimations", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetKeyframeSequenceAsync", "Parameters": [ { "Name": "assetId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Animation", "Name": "KeyframeSequenceProvider", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "LSPFileSyncService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "LanguageService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Brightness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Shadows", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "Light", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Range", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "PointLight", "Superclass": "Light" }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Angle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Face", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NormalId" } }, { "Category": "Appearance", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Range", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "SpotLight", "Superclass": "Light" }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Angle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Face", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NormalId" } }, { "Category": "Appearance", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Range", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "SurfaceLight", "Superclass": "Light" }, { "Members": [ { "Category": "Appearance", "Default": "0.5, 0.5, 0.5", "MemberType": "Property", "Name": "Ambient", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "Brightness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "14", "MemberType": "Property", "Name": "ClockTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0, 0, 0", "MemberType": "Property", "Name": "ColorShift_Bottom", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0, 0, 0", "MemberType": "Property", "Name": "ColorShift_Top", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "EnvironmentDiffuseScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "EnvironmentSpecularScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Exposure", "Default": "0", "MemberType": "Property", "Name": "ExposureCompensation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Fog", "Default": "0.75, 0.75, 0.75", "MemberType": "Property", "Name": "FogColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Fog", "Default": "100000", "MemberType": "Property", "Name": "FogEnd", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Fog", "Default": "0", "MemberType": "Property", "Name": "FogStart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "41.7332993", "MemberType": "Property", "Name": "GeographicLatitude", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "GlobalShadows", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0.5, 0.5, 0.5", "MemberType": "Property", "Name": "OutdoorAmbient", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "true", "MemberType": "Property", "Name": "Outlines", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0.7, 0.7, 0.72", "MemberType": "Property", "Name": "ShadowColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0.5", "MemberType": "Property", "Name": "ShadowSoftness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "Compatibility", "MemberType": "Property", "Name": "Technology", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Technology" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "TempUseNewSkyRemovalBehaviour", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "14:00:00", "MemberType": "Property", "Name": "TimeOfDay", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "GetMinutesAfterMidnight", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "double" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMoonDirection", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMoonPhase", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSunDirection", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMinutesAfterMidnight", "Parameters": [ { "Name": "minutes", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "getMinutesAfterMidnight", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "double" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetMinutesAfterMidnight", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "setMinutesAfterMidnight", "Parameters": [ { "Name": "minutes", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SetMinutesAfterMidnight", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LightingChanged", "Parameters": [ { "Name": "skyChanged", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Lighting", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Event", "Name": "BeginEdit", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "EndEdit", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FailedToOpen", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "legalToOpenLocal", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "KickFromEdit", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenedWithSource", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "source", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SendOperation", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "op", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "LiveScriptingService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "Flush", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetItem", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetItem", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "WhenLoaded", "Parameters": [ { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ItemWasSet", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StoreWasCleared", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "LocalStorageService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "AppStorageService", "Superclass": "LocalStorageService", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "UserStorageService", "Superclass": "LocalStorageService", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Behavior", "Default": "", "MemberType": "Property", "Name": "ForcePlayModeGameLocaleId", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Behavior", "Default": "", "MemberType": "Property", "Name": "ForcePlayModeRobloxLocaleId", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Localization", "Default": "", "MemberType": "Property", "Name": "GameSourceLanguageId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Localization", "Default": "false", "MemberType": "Property", "Name": "IsTextScraperRunning", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Localization", "Default": "", "MemberType": "Property", "Name": "LocaleManifest", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Behavior", "Default": "", "MemberType": "Property", "Name": "RobloxForcePlayModeGameLocaleId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Behavior", "Default": "", "MemberType": "Property", "Name": "RobloxForcePlayModeRobloxLocaleId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Localization", "Default": "", "MemberType": "Property", "Name": "RobloxLocaleId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Localization", "Default": "false", "MemberType": "Property", "Name": "ShouldUseCloudTable", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Localization", "Default": "", "MemberType": "Property", "Name": "SystemLocaleId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "GetCorescriptLocalizations", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTableEntries", "Parameters": [ { "Default": "nil", "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTranslatorForPlayer", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetRobloxLocaleId", "Parameters": [ { "Name": "locale", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartTextScraper", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StopTextScraper", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCountryRegionForPlayerAsync", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTranslatorForLocaleAsync", "Parameters": [ { "Name": "locale", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTranslatorForPlayerAsync", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptDownloadGameTableToCSV", "Parameters": [ { "Name": "table", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptExportToCSVs", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptImportFromCSVs", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptUploadCSVToGameTable", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AutoTranslateWillRun", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TextScraperClientMessageWithPlayerSignal", "Parameters": [ { "Name": "version", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "message", "Type": { "Category": "Group", "Name": "Tuple" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "LocalizationService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Behavior", "Default": "[]", "MemberType": "Property", "Name": "Contents", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Localization", "Default": "en-us", "MemberType": "Property", "Name": "DevelopmentLanguage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "SourceLocaleId", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Localization", "Default": "false", "MemberType": "Property", "Name": "IsExemptFromUGCAnalytics", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Root", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "RootLocalizationTable", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Localization", "Default": "en-us", "MemberType": "Property", "Name": "SourceLocaleId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "GetContents", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetEntries", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetEntries", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetString", "Parameters": [ { "Name": "targetLocaleId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetTranslator", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTranslator", "Parameters": [ { "Name": "localeId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveEntry", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "source", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "context", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveEntryValue", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "source", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "context", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "localeId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveKey", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "RemoveEntry", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveTargetLocale", "Parameters": [ { "Name": "localeId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetContents", "Parameters": [ { "Name": "contents", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SetEntries", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEntries", "Parameters": [ { "Name": "entries", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEntry", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "targetLocaleId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SetEntryValue", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEntryContext", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "source", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "context", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "newContext", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEntryExample", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "source", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "context", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "example", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEntryKey", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "source", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "context", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "newKey", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEntrySource", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "source", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "context", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "newSource", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEntryValue", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "source", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "context", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "localeId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetIsExemptFromUGCAnalytics", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "LocalizationTable", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "CloudLocalizationTable", "Superclass": "LocalizationTable", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "EntityData", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SharedString" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "EntityLodEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "EntityPosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "EntityScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "EntitySource", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } } ], "MemoryCategory": "Instances", "Name": "LodDataEntity", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "LodDataService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "ClearOutput", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ExecuteScript", "Parameters": [ { "Name": "source", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetHttpResultHistory", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetLogHistory", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestHttpResultApproved", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestServerHttpResult", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestServerOutput", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "HttpResultOut", "Parameters": [ { "Name": "httpResult", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MessageOut", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "messageType", "Type": { "Category": "Enum", "Name": "MessageType" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnHttpResultApproved", "Parameters": [ { "Name": "isApproved", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestHttpResultApprovedSignal", "Parameters": [ { "Name": "requestingPlayer", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestScriptExecutionSignal", "Parameters": [ { "Name": "requestingPlayer", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "source", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestServerHttpResultSignal", "Parameters": [ { "Name": "requestingPlayer", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestServerOutputSignal", "Parameters": [ { "Name": "requestingPlayer", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestSettingsChange", "Parameters": [ { "Name": "requestingPlayer", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "expressivePrinting", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerHttpResultOut", "Parameters": [ { "Name": "httpResult", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerMessageOut", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "messageType", "Type": { "Category": "Enum", "Name": "MessageType" } }, { "Name": "timestamp", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerVariantMessageOut", "Parameters": [ { "Name": "data", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "LogService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "Logout", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptLogin", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LoginFailed", "Parameters": [ { "Name": "loginError", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LoginSucceeded", "Parameters": [ { "Name": "username", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "LoginService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "LuaSettings", "Superclass": "Instance", "Tags": [ "NotCreatable", "Settings" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CachedRemoteSource", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "ProtectedString" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CachedRemoteSourceLoadState", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CurrentEditor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HasAssociatedDrafts", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsDifferentFromFileSystem", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "OriginalScriptGuid", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RuntimeSource", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SandboxedSource", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "ProtectedString" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ScriptGuid", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SyncingEditorText", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Event", "Name": "LockGrantedOrNot", "Parameters": [ { "Name": "granted", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LostLock", "Parameters": [], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestLock", "Parameters": [], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestScriptHash", "Parameters": [], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "VerifyScriptHash", "Parameters": [ { "Name": "hash", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "LuaSourceContainer", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Disabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LinkedSource", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RunContext", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RunContext" } } ], "MemoryCategory": "Script", "Name": "BaseScript", "Superclass": "LuaSourceContainer", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Script", "Name": "CoreScript", "Superclass": "BaseScript", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Source", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "ProtectedString" } }, { "MemberType": "Function", "Name": "GetHash", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Script", "Name": "Script", "Superclass": "BaseScript" }, { "Members": [], "MemoryCategory": "Script", "Name": "LocalScript", "Superclass": "Script" }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "Confidential", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "LinkedSource", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Source", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "ProtectedString" } } ], "MemoryCategory": "Script", "Name": "ModuleScript", "Superclass": "LuaSourceContainer" }, { "Members": [], "MemoryCategory": "Instances", "Name": "LuaWebService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "LuauScriptAnalyzerService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Length", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ValuesAndTimes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "MemberType": "Function", "Name": "GetMarkerAtIndex", "Parameters": [ { "Name": "index", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMarkers", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertMarkerAtTime", "Parameters": [ { "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "marker", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveMarkerAtIndex", "Parameters": [ { "Name": "startingIndex", "Type": { "Category": "Primitive", "Name": "int" } }, { "Default": "1", "Name": "count", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MarkerCurve", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "PlayerCanMakePurchases", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PrepareCollectiblesPurchase", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "collectibleItemId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "collectibleItemInstanceId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "collectibleProductId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "expectedPrice", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptBundlePurchase", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "bundleId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptCollectiblesPurchase", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "collectibleItemId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "collectibleItemInstanceId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "collectibleProductId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "expectedPrice", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptGamePassPurchase", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "gamePassId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptNativePurchase", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptNativePurchaseWithLocalPlayer", "Parameters": [ { "Name": "productId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptPremiumPurchase", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptProductPurchase", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Default": "true", "Name": "equipIfPurchased", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "Default", "Name": "currencyType", "Type": { "Category": "Enum", "Name": "CurrencyType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptPurchase", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Default": "true", "Name": "equipIfPurchased", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "Default", "Name": "currencyType", "Type": { "Category": "Enum", "Name": "CurrencyType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptRobloxPurchase", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "equipIfPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptSubscriptionCancellation", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "subscriptionId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptSubscriptionPurchase", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "subscriptionId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptThirdPartyPurchase", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReportAssetSale", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "robuxAmount", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReportRobuxUpsellStarted", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalAssetTypePurchased", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "assetType", "Type": { "Category": "Enum", "Name": "AssetType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalClientPurchaseSuccess", "Parameters": [ { "Name": "ticket", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "playerId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalMockPurchasePremium", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalPromptBundlePurchaseFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "bundleId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "success", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalPromptGamePassPurchaseFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "gamePassId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "success", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalPromptPremiumPurchaseFinished", "Parameters": [ { "Name": "didTryPurchasing", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalPromptProductPurchaseFinished", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "success", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalPromptPurchaseFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "success", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalPromptSubscriptionCancellationFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "subscriptionId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "wasCanceled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalPromptSubscriptionPurchaseFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "subscriptionId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "wasPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalServerLuaDialogClosed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetDeveloperProductsAsync", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetProductInfo", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Default": "Asset", "Name": "infoType", "Type": { "Category": "Enum", "Name": "InfoType" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRobuxBalance", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsPlayerSubscribed", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "subscriptionId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PerformPurchase", "Parameters": [ { "Name": "infoType", "Type": { "Category": "Enum", "Name": "InfoType" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "expectedPrice", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "requestId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "isRobloxPurchase", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "", "Name": "collectibleItemId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "collectibleProductId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "idempotencyKey", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "purchaseAuthToken", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PerformPurchaseV2", "Parameters": [ { "Name": "infoType", "Type": { "Category": "Enum", "Name": "InfoType" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "expectedPrice", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "requestId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "isRobloxPurchase", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "collectiblesProductDetails", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PlayerOwnsAsset", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PlayerOwnsBundle", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "bundleId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UserOwnsGamePassAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "gamePassId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AssetTypePurchased", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "assetType", "Type": { "Category": "Enum", "Name": "AssetType" } } ], "Security": "RobloxScriptSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ClientLuaDialogRequested", "Parameters": [ { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ClientPurchaseSuccess", "Parameters": [ { "Name": "ticket", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "playerId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ConfirmPlayerMembership", "Parameters": [], "Security": "RobloxScriptSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LuaDialogCallbackSignal", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxScriptSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MockPurchasePremium", "Parameters": [], "Security": "RobloxScriptSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MockPurchaseSubscription", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "subscriptionId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "NativePurchaseFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "wasPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "NativePurchaseFinishedWithLocalPlayer", "Parameters": [ { "Name": "productId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "wasPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PrepareCollectiblesPurchaseRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "collectibleItemId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "collectibleItemInstanceId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "collectibleProductId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "expectedPrice", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptBundlePurchaseFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "bundleId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "wasPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptBundlePurchaseRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "bundleId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptCollectiblesPurchaseRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "collectibleItemId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "collectibleItemInstanceId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "collectibleProductId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "expectedPrice", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "idempotencyKey", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "purchaseAuthToken", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptGamePassPurchaseFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "gamePassId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "wasPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptGamePassPurchaseRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "gamePassId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptNativePurchaseRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptNativePurchaseRequestedWithLocalPlayer", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptPremiumPurchaseFinished", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptPremiumPurchaseRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptProductPurchaseFinished", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "isPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptProductPurchaseRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "equipIfPurchased", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "currencyType", "Type": { "Category": "Enum", "Name": "CurrencyType" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptPurchaseFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "isPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptPurchaseRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "equipIfPurchased", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "currencyType", "Type": { "Category": "Enum", "Name": "CurrencyType" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptPurchaseRequestedV2", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "equipIfPurchased", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "currencyType", "Type": { "Category": "Enum", "Name": "CurrencyType" } }, { "Name": "idempotencyKey", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "purchaseAuthToken", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptRobloxPurchaseRequested", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "equipIfPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptSubscriptionCancellationFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "subscriptionId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "wasCanceled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptSubscriptionCancellationRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "subscriptionId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptSubscriptionPurchaseFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "subscriptionId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "wasPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptSubscriptionPurchaseRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "subscriptionId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptThirdPartyPurchaseRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerPurchaseVerification", "Parameters": [ { "Name": "serverResponseTable", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ThirdPartyPurchaseFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "receipt", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "wasPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "ProcessReceipt", "Parameters": [ { "Name": "receiptInfo", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Enum", "Name": "ProductPurchaseDecision" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MarketplaceService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "StartSession", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "MaterialGenerationSession" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAccountingBalanceAsync", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "double" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RefillAccountingBalanceAsync", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "double" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MaterialGenerationService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GenerateImagesAsync", "Parameters": [ { "Name": "prompt", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "options", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GenerateMaterialMapsAsync", "Parameters": [ { "Name": "imageId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UploadMaterialAsync", "Parameters": [ { "Name": "imageId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MaterialGenerationSession", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Material Overrides", "Default": "Asphalt", "MemberType": "Property", "Name": "AsphaltName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Basalt", "MemberType": "Property", "Name": "BasaltName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Brick", "MemberType": "Property", "Name": "BrickName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Cobblestone", "MemberType": "Property", "Name": "CobblestoneName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Concrete", "MemberType": "Property", "Name": "ConcreteName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "CorrodedMetal", "MemberType": "Property", "Name": "CorrodedMetalName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "CrackedLava", "MemberType": "Property", "Name": "CrackedLavaName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "DiamondPlate", "MemberType": "Property", "Name": "DiamondPlateName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Fabric", "MemberType": "Property", "Name": "FabricName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Foil", "MemberType": "Property", "Name": "FoilName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Glacier", "MemberType": "Property", "Name": "GlacierName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Granite", "MemberType": "Property", "Name": "GraniteName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Grass", "MemberType": "Property", "Name": "GrassName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Ground", "MemberType": "Property", "Name": "GroundName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Ice", "MemberType": "Property", "Name": "IceName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "LeafyGrass", "MemberType": "Property", "Name": "LeafyGrassName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Limestone", "MemberType": "Property", "Name": "LimestoneName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Marble", "MemberType": "Property", "Name": "MarbleName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Metal", "MemberType": "Property", "Name": "MetalName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Mud", "MemberType": "Property", "Name": "MudName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Pavement", "MemberType": "Property", "Name": "PavementName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Pebble", "MemberType": "Property", "Name": "PebbleName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Plastic", "MemberType": "Property", "Name": "PlasticName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Rock", "MemberType": "Property", "Name": "RockName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Salt", "MemberType": "Property", "Name": "SaltName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Sand", "MemberType": "Property", "Name": "SandName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Sandstone", "MemberType": "Property", "Name": "SandstoneName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Slate", "MemberType": "Property", "Name": "SlateName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "SmoothPlastic", "MemberType": "Property", "Name": "SmoothPlasticName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Snow", "MemberType": "Property", "Name": "SnowName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Pack", "Default": "false", "MemberType": "Property", "Name": "Use2022Materials", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Material Pack", "Default": "false", "MemberType": "Property", "Name": "Use2022MaterialsXml", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Material Overrides", "Default": "Wood", "MemberType": "Property", "Name": "WoodName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "WoodPlanks", "MemberType": "Property", "Name": "WoodPlanksName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "GetBaseMaterialOverride", "Parameters": [ { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMaterialOverrideChanged", "Parameters": [ { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptSignal" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMaterialVariant", "Parameters": [ { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "MaterialVariant" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetOverrideStatus", "Parameters": [ { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Enum", "Name": "PropertyStatus" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetBaseMaterialOverride", "Parameters": [ { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OverrideStatusChanged", "Parameters": [ { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MaterialService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Internal", "Default": "0", "MemberType": "Property", "Name": "AvgMetalness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Internal", "Default": "127", "MemberType": "Property", "Name": "AvgRoughness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Appearance", "Default": "Plastic", "MemberType": "Property", "Name": "BaseMaterial", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Material" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "ColorMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Material", "Default": "default", "MemberType": "Property", "Name": "CustomPhysicalProperties", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "PhysicalProperties" } }, { "Category": "Appearance", "Default": "Regular", "MemberType": "Property", "Name": "MaterialPattern", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "MaterialPattern" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "MetalnessMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "NormalMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "RoughnessMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "10", "MemberType": "Property", "Name": "StudsPerTile", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Internal", "Default": "", "MemberType": "Property", "Name": "TexturePack", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "Instances", "Name": "MaterialVariant", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "Disconnect", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MemStorageConnection", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "Bind", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Class", "Name": "MemStorageConnection" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BindAndFire", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Class", "Name": "MemStorageConnection" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Call", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "input", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Fire", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetItem", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "defaultValue", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HasItem", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveItem", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetItem", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MemStorageService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "AddAsync", "Parameters": [ { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "expiration", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Default": "0", "Name": "priority", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReadAsync", "Parameters": [ { "Name": "count", "Type": { "Category": "Primitive", "Name": "int" } }, { "Default": "false", "Name": "allOrNothing", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "-1", "Name": "waitTimeout", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveAsync", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MemoryStoreQueue", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetQueue", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "30", "Name": "invisibilityTimeout", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Class", "Name": "MemoryStoreQueue" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSortedMap", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "MemoryStoreSortedMap" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MemoryStoreService", "Superclass": "Instance", "Tags": [ "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRangeAsync", "Parameters": [ { "Name": "direction", "Type": { "Category": "Enum", "Name": "SortDirection" } }, { "Name": "count", "Type": { "Category": "Primitive", "Name": "int" } }, { "Default": "", "Name": "exclusiveLowerBound", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "exclusiveUpperBound", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "expiration", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UpdateAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "transformFunction", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "expiration", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MemoryStoreSortedMap", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "Text", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "Message", "Superclass": "Instance", "Tags": [ "Deprecated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "Hint", "Superclass": "Message", "Tags": [ "Deprecated" ] }, { "Members": [ { "MemberType": "Function", "Name": "Disconnect", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MessageBusConnection", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "Call", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "input", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetLast", "Parameters": [ { "Name": "mid", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMessageId", "Parameters": [ { "Name": "domainName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "messageName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetProtocolMethodRequestMessageId", "Parameters": [ { "Name": "protocolName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "methodName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetProtocolMethodResponseMessageId", "Parameters": [ { "Name": "protocolName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "methodName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "MakeRequest", "Parameters": [ { "Name": "protocolName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "methodName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "message", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "customTelemetryData", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Publish", "Parameters": [ { "Name": "mid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "params", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PublishProtocolMethodRequest", "Parameters": [ { "Name": "protocolName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "methodName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "message", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "customTelemetryData", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PublishProtocolMethodResponse", "Parameters": [ { "Name": "protocolName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "methodName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "message", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "responseCode", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "customTelemetryData", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetRequestHandler", "Parameters": [ { "Name": "protocolName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "methodName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Subscribe", "Parameters": [ { "Name": "mid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "once", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "sticky", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SubscribeToProtocolMethodRequest", "Parameters": [ { "Name": "protocolName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "methodName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "once", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "sticky", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SubscribeToProtocolMethodResponse", "Parameters": [ { "Name": "protocolName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "methodName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "once", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "sticky", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MessageBusService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "PublishAsync", "Parameters": [ { "Name": "topic", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "message", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SubscribeAsync", "Parameters": [ { "Name": "topic", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptConnection" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MessagingService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Condition", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "ContinueExecution", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "4", "MemberType": "Property", "Name": "Id", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "IsLogpoint", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Line", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "LogMessage", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "RemoveOnHit", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Script", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "true", "MemberType": "Property", "Name": "Valid", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "GetContextBreakpoints", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Remove", "Parameters": [ { "Name": "status", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetChildBreakpointEnabledByScriptAndContext", "Parameters": [ { "Name": "script", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "contextGST", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetContextEnabled", "Parameters": [ { "Name": "context", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetContinueExecution", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEnabled", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetLine", "Parameters": [ { "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "status", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetRemoveOnHit", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MetaBreakpoint", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "0 1 2 ", "MemberType": "Property", "Name": "ContextDataInternal", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "MetaBreakpointContext", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "AddBreakpoint", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "condition", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBreakpointById", "Parameters": [ { "Name": "metaBreakpointId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Class", "Name": "MetaBreakpoint" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveBreakpointById", "Parameters": [ { "Name": "metaBreakpointId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MetaBreakpointAdded", "Parameters": [ { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "MetaBreakpoint" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MetaBreakpointChanged", "Parameters": [ { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "MetaBreakpoint" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MetaBreakpointRemoved", "Parameters": [ { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "MetaBreakpoint" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MetaBreakpointSetChanged", "Parameters": [ { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "MetaBreakpoint" } }, { "Name": "detail", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MetaBreakpointManager", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Hit", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Icon", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Origin", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Target", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TargetFilter", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TargetSurface", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NormalId" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UnitRay", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Ray" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ViewSizeX", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ViewSizeY", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "X", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Y", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "hit", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Hit", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "target", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Target", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "MemberType": "Event", "Name": "Button1Down", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Button1Up", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Button2Down", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Button2Up", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Idle", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "KeyDown", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "InputBegan", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "KeyUp", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "InputEnded", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Move", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "WheelBackward", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "WheelForward", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "keyDown", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "InputBegan", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Mouse", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "PlayerMouse", "Superclass": "Mouse", "Tags": [ "NotCreatable" ] }, { "Members": [ { "MemberType": "Event", "Name": "DragEnter", "Parameters": [ { "Name": "instances", "Type": { "Category": "DataType", "Name": "Objects" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PluginMouse", "Superclass": "Mouse", "Tags": [ "NotCreatable" ] }, { "Members": [ { "MemberType": "Event", "Name": "MouseEnterStudioViewport", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseLeaveStudioViewport", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MouseService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FocusedDataModelSession", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "MemberType": "Event", "Name": "DataModelSessionEnded", "Parameters": [ { "Name": "dataModelSession", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DataModelSessionStarted", "Parameters": [ { "Name": "dataModelSession", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MultipleDocumentInterfaceInstance", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Event", "Name": "Received", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "NetworkMarker", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "MemberType": "Function", "Name": "SetOutgoingKBPSLimit", "Parameters": [ { "Name": "limit", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "NetworkPeer", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "MemberType": "Event", "Name": "ConnectionAccepted", "Parameters": [ { "Name": "peer", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "replicator", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ConnectionFailed", "Parameters": [ { "Name": "peer", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "code", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "reason", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "NetworkClient", "Superclass": "NetworkPeer", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "EncryptStringForPlayerId", "Parameters": [ { "Name": "toEncrypt", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "playerId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "NetworkServer", "Superclass": "NetworkPeer", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetPlayer", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "NetworkReplicator", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "RequestRCCProfilerData", "Parameters": [ { "Name": "frameRate", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "timeFrame", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestServerScriptProfiling", "Parameters": [ { "Name": "start", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "frequency", "Type": { "Category": "Primitive", "Name": "int?" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestServerStats", "Parameters": [ { "Name": "request", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RCCProfilerDataComplete", "Parameters": [ { "Name": "success", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StatsReceived", "Parameters": [ { "Name": "stats", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ClientReplicator", "Superclass": "NetworkReplicator", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ServerReplicator", "Superclass": "NetworkReplicator", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EmulatedTotalMemoryInMB", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FreeMemoryMBytes", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Proxy Settings", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HttpProxyEnabled", "Security": { "Read": "None", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Proxy Settings", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HttpProxyURL", "Security": { "Read": "None", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Diagnostics", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IncomingReplicationLag", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Proxy Settings", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "OpenCertManagerDialog", "Security": { "Read": "NotAccessibleSecurity", "Write": "NotAccessibleSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Diagnostics", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PrintJoinSizeBreakdown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Diagnostics", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PrintPhysicsErrors", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Diagnostics", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PrintStreamInstanceQuota", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Advanced", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RandomizeJoinInstanceOrder", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RenderStreamedRegions", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ShowActiveAnimationAsset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "NetworkSettings", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotBrowsable" ] }, { "Members": [ { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Parts", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Part0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Parts", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Part1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } } ], "MemoryCategory": "PhysicsParts", "Name": "NoCollisionConstraint", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsConnected", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsLuaChatEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsLuaGameDetailsEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectedTheme", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "ActionEnabled", "Parameters": [ { "Name": "actionType", "Type": { "Category": "Enum", "Name": "AppShellActionType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ActionTaken", "Parameters": [ { "Name": "actionType", "Type": { "Category": "Enum", "Name": "AppShellActionType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CancelAllNotification", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CancelNotification", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "alertId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ScheduleNotification", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "alertId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "alertMsg", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "minutesToFire", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SwitchedToAppShellFeature", "Parameters": [ { "Name": "appShellFeature", "Type": { "Category": "Enum", "Name": "AppShellFeature" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetScheduledNotifications", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "LocalUserSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Roblox17sConnectionChanged", "Parameters": [ { "Name": "connectionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "connectionState", "Type": { "Category": "Enum", "Name": "ConnectionState" } }, { "Name": "namespaceSequenceNumbers", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Roblox17sEventReceived", "Parameters": [ { "Name": "eventData", "Type": { "Category": "Group", "Name": "Map" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RobloxConnectionChanged", "Parameters": [ { "Name": "connectionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "connectionState", "Type": { "Category": "Enum", "Name": "ConnectionState" } }, { "Name": "sequenceNumber", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "namespaceSequenceNumbers", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RobloxEventReceived", "Parameters": [ { "Name": "eventData", "Type": { "Category": "Group", "Name": "Map" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "NotificationService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "ClearSessionId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSessionId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "MakeRequest", "Parameters": [ { "Name": "nextPageToken", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "HttpRequest" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "OmniRecommendationsService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "CreateModel", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "OpenCloudModel" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateUserNotificationAsync", "Parameters": [ { "Name": "user", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "userNotification", "Type": { "Category": "DataType", "Name": "OpenCloudModel" } } ], "ReturnType": { "Category": "DataType", "Name": "OpenCloudModel" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "OpenCloudApiV1", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetApiV1", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "OpenCloudApiV1" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "OpenCloudService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Transform", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Origin", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Pivot", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Pivot Offset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "MemberType": "Function", "Name": "GetPivot", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "PivotTo", "Parameters": [ { "Name": "targetCFrame", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PVInstance", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Anchored", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Assembly", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AssemblyAngularVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Assembly", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AssemblyCenterOfMass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Assembly", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AssemblyLinearVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Assembly", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AssemblyMass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Assembly", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AssemblyRootPart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BackParamA", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BackParamB", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BackSurface", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SurfaceType" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BackSurfaceInput", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "InputType" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BottomParamA", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BottomParamB", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BottomSurface", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SurfaceType" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BottomSurfaceInput", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "InputType" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BrickColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Transform", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Collision", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CanCollide", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Collision", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CanQuery", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Collision", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CanTouch", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CastShadow", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CenterOfMass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Collision", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CollisionGroup", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Collision", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CollisionGroupId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "CollisionGroup", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Collision", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CollisionGroupReplicate", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Color3uint8", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3uint8" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CurrentPhysicalProperties", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "PhysicalProperties" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CustomPhysicalProperties", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "PhysicalProperties" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DraggingV1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Elasticity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EnableFluidForces", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Transform", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ExtentsCFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Transform", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ExtentsSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Friction", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FrontParamA", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FrontParamB", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FrontSurface", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SurfaceType" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FrontSurfaceInput", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "InputType" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LeftParamA", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LeftParamB", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LeftSurface", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SurfaceType" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LeftSurfaceInput", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "InputType" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LocalSimulationValidation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LocalTransparencyModifier", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Locked", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Mass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Massless", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Material", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Material" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MaterialVariant", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MaterialVariantSerialized", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NetworkIsSleeping", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NetworkOwnerV3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SystemAddress" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NetworkOwnershipRule", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NetworkOwnership" } }, { "Category": "Transform", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Orientation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Pivot", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PivotOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Transform", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ReceiveAge", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Reflectance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ResizeIncrement", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ResizeableFaces", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Faces" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RightParamA", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RightParamB", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RightSurface", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SurfaceType" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RightSurfaceInput", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "InputType" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RootPriority", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RotVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated", { "PreferredDescriptorName": "AssemblyAngularVelocity", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Rotation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Transform", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SpecificGravity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "SpecificGravity", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TopParamA", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TopParamB", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TopSurface", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SurfaceType" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TopSurfaceInput", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "InputType" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Transparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Velocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated", { "PreferredDescriptorName": "AssemblyLinearVelocity", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "brickColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "BrickColor", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "siz", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "WriteOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "MemberType": "Function", "Name": "ApplyAngularImpulse", "Parameters": [ { "Name": "impulse", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ApplyImpulse", "Parameters": [ { "Name": "impulse", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ApplyImpulseAtPosition", "Parameters": [ { "Name": "impulse", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BreakJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CanCollideWith", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "BasePart" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "CanSetNetworkOwnership", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetClosestPointOnSurface", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetConnectedParts", "Parameters": [ { "Default": "false", "Name": "recursive", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetJoints", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetMass", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetNetworkOwner", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetNetworkOwnershipAuto", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetNoCollisionConstraints", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRenderCFrame", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRootPart", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetTouchingParts", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVelocityAtPosition", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "IsGrounded", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "MakeJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Resize", "Parameters": [ { "Name": "normalId", "Type": { "Category": "Enum", "Name": "NormalId" } }, { "Name": "deltaAmount", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetNetworkOwner", "Parameters": [ { "Default": "nil", "Name": "playerInstance", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetNetworkOwnershipAuto", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "breakJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "BreakJoints", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "getMass", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "makeJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "resize", "Parameters": [ { "Name": "normalId", "Type": { "Category": "Enum", "Name": "NormalId" } }, { "Name": "deltaAmount", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Resize", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IntersectAsync", "Parameters": [ { "Name": "parts", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "Default", "Name": "collisionfidelity", "Type": { "Category": "Enum", "Name": "CollisionFidelity" } }, { "Default": "Automatic", "Name": "renderFidelity", "Type": { "Category": "Enum", "Name": "RenderFidelity" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SubtractAsync", "Parameters": [ { "Name": "parts", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "Default", "Name": "collisionfidelity", "Type": { "Category": "Enum", "Name": "CollisionFidelity" } }, { "Default": "Automatic", "Name": "renderFidelity", "Type": { "Category": "Enum", "Name": "RenderFidelity" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnionAsync", "Parameters": [ { "Name": "parts", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "Default", "Name": "collisionfidelity", "Type": { "Category": "Enum", "Name": "CollisionFidelity" } }, { "Default": "Automatic", "Name": "renderFidelity", "Type": { "Category": "Enum", "Name": "RenderFidelity" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "subtractAsync2_INTERNAL", "Parameters": [ { "Name": "parts", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "Default", "Name": "collisionfidelity", "Type": { "Category": "Enum", "Name": "CollisionFidelity" } }, { "Default": "Automatic", "Name": "renderFidelity", "Type": { "Category": "Enum", "Name": "RenderFidelity" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "unionAsync2_INTERNAL", "Parameters": [ { "Name": "parts", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "Default", "Name": "collisionfidelity", "Type": { "Category": "Enum", "Name": "CollisionFidelity" } }, { "Default": "Automatic", "Name": "renderFidelity", "Type": { "Category": "Enum", "Name": "RenderFidelity" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LocalSimulationTouched", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "BasePart" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "NetworkOwnerChanged", "Parameters": [ { "Name": "systemAddress", "Type": { "Category": "DataType", "Name": "SystemAddress" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OutfitChanged", "Parameters": [], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StoppedTouching", "Parameters": [ { "Name": "otherPart", "Type": { "Category": "Class", "Name": "BasePart" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "TouchEnded", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchEnded", "Parameters": [ { "Name": "otherPart", "Type": { "Category": "Class", "Name": "BasePart" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Touched", "Parameters": [ { "Name": "otherPart", "Type": { "Category": "Class", "Name": "BasePart" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BasePart", "Superclass": "PVInstance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "CornerWedgePart", "Superclass": "BasePart" }, { "Members": [ { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FormFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FormFactor" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "formFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FormFactor" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "formFactorRaw", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FormFactor" } } ], "MemoryCategory": "Instances", "Name": "FormFactorPart", "Superclass": "BasePart", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Part", "Default": "Block", "MemberType": "Property", "Name": "Shape", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PartType" } }, { "Category": "Part", "Default": "__api_dump_write_only_property__", "MemberType": "Property", "Name": "shap", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "WriteOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PartType" } }, { "Category": "Part", "Default": "Block", "MemberType": "Property", "Name": "shape", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PartType" } } ], "MemoryCategory": "PhysicsParts", "Name": "Part", "Superclass": "FormFactorPart" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TeamColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "MemberType": "Event", "Name": "FlagCaptured", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "FlagStand", "Superclass": "Part", "Tags": [ "Deprecated" ] }, { "Members": [ { "MemberType": "Event", "Name": "RemoteCreateMotor6D", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteDestroyMotor6D", "Parameters": [], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "Platform", "Superclass": "Part", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Control", "Default": "false", "MemberType": "Property", "Name": "Disabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Occupant", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Humanoid" } }, { "MemberType": "Function", "Name": "Sit", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteCreateSeatWeld", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteDestroySeatWeld", "Parameters": [], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "Seat", "Superclass": "Part" }, { "Members": [ { "Category": "Control", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Controller", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "SkateboardController" } }, { "Category": "Control", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "ControllingHumanoid", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Humanoid" } }, { "Category": "Control", "Default": "Stopped", "MemberType": "Property", "Name": "MoveState", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "MoveState" } }, { "Category": "Control", "Default": "0", "MemberType": "Property", "Name": "Steer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Control", "Default": "true", "MemberType": "Property", "Name": "StickyWheels", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "0", "MemberType": "Property", "Name": "Throttle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "ApplySpecificImpulse", "Parameters": [ { "Name": "impulseWorld", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Equipped", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "skateboardController", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MoveStateChanged", "Parameters": [ { "Name": "newState", "Type": { "Category": "Enum", "Name": "MoveState" } }, { "Name": "oldState", "Type": { "Category": "Enum", "Name": "MoveState" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteCreateMotor6D", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteDestroyMotor6D", "Parameters": [], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Unequipped", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "equipped", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "skateboardController", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Equipped", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "unequipped", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Unequipped", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "SkateboardPlatform", "Superclass": "Part", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Teams", "Default": "false", "MemberType": "Property", "Name": "AllowTeamChangeOnTouch", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Forcefield", "Default": "10", "MemberType": "Property", "Name": "Duration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Teams", "Default": "true", "MemberType": "Property", "Name": "Neutral", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Teams", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TeamColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } } ], "MemoryCategory": "PhysicsParts", "Name": "SpawnLocation", "Superclass": "Part" }, { "Members": [], "MemoryCategory": "Instances", "Name": "WedgePart", "Superclass": "FormFactorPart" }, { "Members": [ { "Category": "Data", "Default": "None", "MemberType": "Property", "Name": "AcquisitionMethod", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TerrainAcquisitionMethod" } }, { "Category": "Data", "Default": "__api_dump_write_only_property__", "MemberType": "Property", "Name": "ClusterGrid", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "WriteOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_write_only_property__", "MemberType": "Property", "Name": "ClusterGridV2", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "WriteOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_write_only_property__", "MemberType": "Property", "Name": "ClusterGridV3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "WriteOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "Decoration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "IsSmooth", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "None", "MemberType": "Property", "Name": "LastUsedModificationMethod", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TerrainAcquisitionMethod" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "MaterialColors", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "MaxExtents", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Region3int16" } }, { "Category": "Data", "Default": "\u0002\u0003", "MemberType": "Property", "Name": "PhysicsGrid", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "ShorelinesUpgraded", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "\u0001\u0005", "MemberType": "Property", "Name": "SmoothGrid", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "SmoothVoxelsUpgraded", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0.05, 0.33, 0.36", "MemberType": "Property", "Name": "WaterColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "WaterReflectance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0.300000012", "MemberType": "Property", "Name": "WaterTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0.150000006", "MemberType": "Property", "Name": "WaterWaveSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "10", "MemberType": "Property", "Name": "WaterWaveSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "AutowedgeCell", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "z", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AutowedgeCells", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3int16" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CanShorelinesBeUpgraded", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CanSmoothVoxelsBeUpgraded", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CellCenterToWorld", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "z", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CellCornerToWorld", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "z", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Clear", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ConvertToSmooth", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CopyRegion", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3int16" } } ], "ReturnType": { "Category": "Class", "Name": "TerrainRegion" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CountCells", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FillBall", "Parameters": [ { "Name": "center", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "radius", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FillBlock", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FillCylinder", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "height", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "radius", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FillRegion", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Name": "resolution", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FillWedge", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCell", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "z", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMaterialColor", "Parameters": [ { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "DataType", "Name": "Color3" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetTerrainWireframe", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetWaterCell", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "z", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PasteRegion", "Parameters": [ { "Name": "region", "Type": { "Category": "Class", "Name": "TerrainRegion" } }, { "Name": "corner", "Type": { "Category": "DataType", "Name": "Vector3int16" } }, { "Name": "pasteEmptyCells", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReadVoxels", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Name": "resolution", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "ReplaceMaterial", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Name": "resolution", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "sourceMaterial", "Type": { "Category": "Enum", "Name": "Material" } }, { "Name": "targetMaterial", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReplaceMaterialInTransform", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "sourceMaterial", "Type": { "Category": "Enum", "Name": "Material" } }, { "Name": "targetMaterial", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReplaceMaterialInTransformSubregion", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "sourceMaterial", "Type": { "Category": "Enum", "Name": "Material" } }, { "Name": "targetMaterial", "Type": { "Category": "Enum", "Name": "Material" } }, { "Name": "targetRegion", "Type": { "Category": "DataType", "Name": "Region3int16" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetCell", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "z", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "material", "Type": { "Category": "Enum", "Name": "CellMaterial" } }, { "Name": "block", "Type": { "Category": "Enum", "Name": "CellBlock" } }, { "Name": "orientation", "Type": { "Category": "Enum", "Name": "CellOrientation" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetCells", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3int16" } }, { "Name": "material", "Type": { "Category": "Enum", "Name": "CellMaterial" } }, { "Name": "block", "Type": { "Category": "Enum", "Name": "CellBlock" } }, { "Name": "orientation", "Type": { "Category": "Enum", "Name": "CellOrientation" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMaterialColor", "Parameters": [ { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } }, { "Name": "value", "Type": { "Category": "DataType", "Name": "Color3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMaterialInTransform", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "targetMaterial", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMaterialInTransformSubregion", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "targetMaterial", "Type": { "Category": "Enum", "Name": "Material" } }, { "Name": "targetRegion", "Type": { "Category": "DataType", "Name": "Region3int16" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetWaterCell", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "z", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "force", "Type": { "Category": "Enum", "Name": "WaterForce" } }, { "Name": "direction", "Type": { "Category": "Enum", "Name": "WaterDirection" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SmoothRegion", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Name": "resolution", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "strength", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "WorldToCell", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "WorldToCellPreferEmpty", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "WorldToCellPreferSolid", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "WriteVoxels", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Name": "resolution", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "materials", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "occupancy", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Terrain", "Superclass": "BasePart", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Collision", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CollisionFidelity", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "CollisionFidelity" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MeshSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PhysicalConfigData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SharedString" } } ], "MemoryCategory": "Instances", "Name": "TriangleMeshPart", "Superclass": "BasePart", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "AeroMeshData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SharedString" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "AlternateMeshHash", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "DoubleSided", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "HasJointOffset", "Security": { "Read": "None", "Write": "NotAccessibleSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "HasSkinnedMesh", "Security": { "Read": "None", "Write": "NotAccessibleSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "InitialSize", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "JointOffset", "Security": { "Read": "None", "Write": "NotAccessibleSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "MeshID", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable", "Deprecated", { "PreferredDescriptorName": "MeshId", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "MeshId", "Security": { "Read": "None", "Write": "NotAccessibleSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "PhysicsData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Appearance", "Default": "Precise", "MemberType": "Property", "Name": "RenderFidelity", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RenderFidelity" } }, { "Category": "Appearance", "Default": "Precise", "MemberType": "Property", "Name": "RenderFidelityReplicate", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RenderFidelity" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "TextureID", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "VertexCount", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "ApplyMesh", "Parameters": [ { "Name": "meshPart", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "MeshPart", "Superclass": "TriangleMeshPart" }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "AssetId", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CSGMesh2KernelMap", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SharedString" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CSGPropertyData", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CSGPropertyData" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ChildData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "ChildData2", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SharedString" } }, { "Category": "Data", "Default": "Custom", "MemberType": "Property", "Name": "FormFactor", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FormFactor" } }, { "Category": "Data", "Default": "1, 1, 1", "MemberType": "Property", "Name": "InitialSize", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "MeshData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "MeshData2", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SharedString" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "PhysicsData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Appearance", "Default": "Precise", "MemberType": "Property", "Name": "RenderFidelity", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RenderFidelity" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "SerializedCSGTree", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SharedString" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "SmoothingAngle", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "TriangleCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "UsePartColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "SubstituteGeometry", "Parameters": [ { "Name": "source", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MeshDeltaUpdate", "Parameters": [ { "Name": "originalMeshHash", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "newMeshHash", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "mesh", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MeshFullUpdate", "Parameters": [ { "Name": "newMeshHash", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "mesh", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestMeshFullUpdate", "Parameters": [], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PartOperation", "Superclass": "TriangleMeshPart" }, { "Members": [], "MemoryCategory": "Instances", "Name": "IntersectOperation", "Superclass": "PartOperation" }, { "Members": [], "MemoryCategory": "Instances", "Name": "NegateOperation", "Superclass": "PartOperation" }, { "Members": [], "MemoryCategory": "Instances", "Name": "UnionOperation", "Superclass": "PartOperation" }, { "Members": [ { "Category": "Part", "Default": "AlternatingSupports", "MemberType": "Property", "Name": "Style", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Style" } }, { "Category": "Part", "Default": "AlternatingSupports", "MemberType": "Property", "Name": "style", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Style" } } ], "MemoryCategory": "Instances", "Name": "TrussPart", "Superclass": "BasePart" }, { "Members": [ { "Category": "Control", "Default": "0", "MemberType": "Property", "Name": "AreHingesDetected", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Control", "Default": "false", "MemberType": "Property", "Name": "Disabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "true", "MemberType": "Property", "Name": "HeadsUpDisplay", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "25", "MemberType": "Property", "Name": "MaxSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Control", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Occupant", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Humanoid" } }, { "Category": "Control", "Default": "0", "MemberType": "Property", "Name": "Steer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Control", "Default": "0", "MemberType": "Property", "Name": "SteerFloat", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Control", "Default": "0", "MemberType": "Property", "Name": "Throttle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Control", "Default": "0", "MemberType": "Property", "Name": "ThrottleFloat", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Control", "Default": "10", "MemberType": "Property", "Name": "Torque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Control", "Default": "1", "MemberType": "Property", "Name": "TurnSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "Sit", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteCreateSeatWeld", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteDestroySeatWeld", "Parameters": [], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "VehicleSeat", "Superclass": "BasePart" }, { "Members": [ { "Category": "Appearance", "Default": "Automatic", "MemberType": "Property", "Name": "LevelOfDetail", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ModelLevelOfDetail" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "LodEntity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "LodDataEntity" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "ModelMeshCFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "ModelMeshData", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SharedString" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "ModelMeshSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Behavior", "Default": "Default", "MemberType": "Property", "Name": "ModelStreamingMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ModelStreamingMode" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "NeedsPivotMigration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Pivot", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "PrimaryPart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Pivot", "Default": "1", "MemberType": "Property", "Name": "Scale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Pivot", "Default": "1", "MemberType": "Property", "Name": "ScaleFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Pivot", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "WorldPivot", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Pivot", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "WorldPivotData", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "OptionalCoordinateFrame" } }, { "MemberType": "Function", "Name": "AddPersistentPlayer", "Parameters": [ { "Default": "nil", "Name": "playerInstance", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BreakJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBoundingBox", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetExtentsSize", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetModelCFrame", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPrimaryPartCFrame", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetModelSize", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetExtentsSize", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPersistentPlayers", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPrimaryPartCFrame", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPivot", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetScale", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "MakeJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "MoveTo", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemovePersistentPlayer", "Parameters": [ { "Default": "nil", "Name": "playerInstance", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ResetOrientationToIdentity", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SetPrimaryPartCFrame", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ScaleTo", "Parameters": [ { "Name": "newScaleFactor", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetIdentityOrientation", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SetPrimaryPartCFrame", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPrimaryPartCFrame", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "PivotTo", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TranslateBy", "Parameters": [ { "Name": "delta", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "breakJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "BreakJoints", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "makeJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "MakeJoints", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "move", "Parameters": [ { "Name": "location", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "MoveTo", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "moveTo", "Parameters": [ { "Name": "location", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "MoveTo", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "Model", "Superclass": "PVInstance" }, { "Members": [ { "MemberType": "Function", "Name": "BindToMessage", "Parameters": [ { "Name": "topic", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "function", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptConnection" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "BindToMessageParallel", "Parameters": [ { "Name": "topic", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "function", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptConnection" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "SendMessage", "Parameters": [ { "Name": "topic", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "message", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Safe" } ], "MemoryCategory": "PhysicsParts", "Name": "Actor", "Superclass": "Model" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TextureId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "PhysicsParts", "Name": "BackpackItem", "Superclass": "Model", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "Active", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "Script", "MemberType": "Property", "Name": "BinType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "BinType" } }, { "Category": "Data", "Default": "__api_dump_write_only_property__", "MemberType": "Property", "Name": "Command", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "WriteOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_write_only_property__", "MemberType": "Property", "Name": "TextureName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "WriteOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "Disable", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ToggleSelect", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Deselected", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ReplicatedSelected", "Parameters": [], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Selected", "Parameters": [ { "Name": "mouse", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "HopperBin", "Superclass": "BackpackItem", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "CanBeDropped", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Transform", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Grip", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Transform", "Default": "-0, -0, -1", "MemberType": "Property", "Name": "GripForward", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Transform", "Default": "0, 0, 0", "MemberType": "Property", "Name": "GripPos", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Transform", "Default": "1, 0, 0", "MemberType": "Property", "Name": "GripRight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Transform", "Default": "0, 1, 0", "MemberType": "Property", "Name": "GripUp", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "ManualActivationOnly", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "RequiresHandle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "ToolTip", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "Activate", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Deactivate", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Activated", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Deactivated", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Equipped", "Parameters": [ { "Name": "mouse", "Type": { "Category": "Class", "Name": "Mouse" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Unequipped", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "VRLaserPointerClicked", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "Tool", "Superclass": "BackpackItem" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TeamColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } } ], "MemoryCategory": "PhysicsParts", "Name": "Flag", "Superclass": "Tool", "Tags": [ "Deprecated" ] }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "Status", "Superclass": "Model", "Tags": [ "NotCreatable", "Deprecated" ] }, { "Members": [ { "MemberType": "Function", "Name": "ArePartsTouchingOthers", "Parameters": [ { "Name": "partList", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "0.000199999995", "Name": "overlapIgnored", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Blockcast", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "direction", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Default": "RaycastParams{IgnoreWater=false, BruteForceAllSlow=false, RespectCanCollide=false, CollisionGroup=Default, FilterDescendantsInstances={}}", "Name": "params", "Type": { "Category": "DataType", "Name": "RaycastParams" } } ], "ReturnType": { "Category": "DataType", "Name": "RaycastResult" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "BulkMoveTo", "Parameters": [ { "Name": "partList", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "cframeList", "Type": { "Category": "Group", "Name": "Array" } }, { "Default": "FireAllEvents", "Name": "eventMode", "Type": { "Category": "Enum", "Name": "BulkMoveMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CacheCurrentTerrain", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "center", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "radius", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClearCachedTerrain", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindPartOnRay", "Parameters": [ { "Name": "ray", "Type": { "Category": "DataType", "Name": "Ray" } }, { "Default": "nil", "Name": "ignoreDescendantsInstance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "false", "Name": "terrainCellsAreCubes", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "false", "Name": "ignoreWater", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Raycast", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindPartOnRayWithIgnoreList", "Parameters": [ { "Name": "ray", "Type": { "Category": "DataType", "Name": "Ray" } }, { "Name": "ignoreDescendantsTable", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "false", "Name": "terrainCellsAreCubes", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "false", "Name": "ignoreWater", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Raycast", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindPartOnRayWithWhitelist", "Parameters": [ { "Name": "ray", "Type": { "Category": "DataType", "Name": "Ray" } }, { "Name": "whitelistDescendantsTable", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "false", "Name": "ignoreWater", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Raycast", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindPartsInRegion3", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Default": "nil", "Name": "ignoreDescendantsInstance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "20", "Name": "maxParts", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPartBoundsInBox", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindPartsInRegion3WithIgnoreList", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Name": "ignoreDescendantsTable", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "20", "Name": "maxParts", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPartBoundsInBox", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindPartsInRegion3WithWhiteList", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Name": "whitelistDescendantsTable", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "20", "Name": "maxParts", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPartBoundsInBox", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPartBoundsInBox", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Default": "OverlapParams{MaxParts=false, BruteForceAllSlow=false, RespectCanCollide=false, CollisionGroup=Default, FilterDescendantsInstances={}}", "Name": "overlapParams", "Type": { "Category": "DataType", "Name": "OverlapParams" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetPartBoundsInRadius", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "radius", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "OverlapParams{MaxParts=false, BruteForceAllSlow=false, RespectCanCollide=false, CollisionGroup=Default, FilterDescendantsInstances={}}", "Name": "overlapParams", "Type": { "Category": "DataType", "Name": "OverlapParams" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetPartsInPart", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "BasePart" } }, { "Default": "OverlapParams{MaxParts=false, BruteForceAllSlow=false, RespectCanCollide=false, CollisionGroup=Default, FilterDescendantsInstances={}}", "Name": "overlapParams", "Type": { "Category": "DataType", "Name": "OverlapParams" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "IKMoveTo", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "BasePart" } }, { "Name": "target", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Default": "0.5", "Name": "translateStiffness", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "0.5", "Name": "rotateStiffness", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "OtherMechanismsAnchored", "Name": "collisionsMode", "Type": { "Category": "Enum", "Name": "IKCollisionsMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsRegion3Empty", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Default": "nil", "Name": "ignoreDescendentsInstance", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPartBoundsInBox", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsRegion3EmptyWithIgnoreList", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Name": "ignoreDescendentsTable", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPartBoundsInBox", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Raycast", "Parameters": [ { "Name": "origin", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "direction", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Default": "RaycastParams{IgnoreWater=false, BruteForceAllSlow=false, RespectCanCollide=false, CollisionGroup=Default, FilterDescendantsInstances={}}", "Name": "raycastParams", "Type": { "Category": "DataType", "Name": "RaycastParams" } } ], "ReturnType": { "Category": "DataType", "Name": "RaycastResult" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "RaycastCachedTerrain", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "origin", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "direction", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "ignoreWater", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "DataType", "Name": "RaycastResult" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetInsertPoint", "Parameters": [ { "Name": "point", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Default": "false", "Name": "ignoreGrid", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Spherecast", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "radius", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "direction", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Default": "RaycastParams{IgnoreWater=false, BruteForceAllSlow=false, RespectCanCollide=false, CollisionGroup=Default, FilterDescendantsInstances={}}", "Name": "params", "Type": { "Category": "DataType", "Name": "RaycastParams" } } ], "ReturnType": { "Category": "DataType", "Name": "RaycastResult" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "findPartOnRay", "Parameters": [ { "Name": "ray", "Type": { "Category": "DataType", "Name": "Ray" } }, { "Default": "nil", "Name": "ignoreDescendantsInstance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "false", "Name": "terrainCellsAreCubes", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "false", "Name": "ignoreWater", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Raycast", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "findPartsInRegion3", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Default": "nil", "Name": "ignoreDescendantsInstance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "20", "Name": "maxParts", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPartBoundsInBox", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "WorldRoot", "Superclass": "Model", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "AirProperties", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AirDensity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AllowThirdPartySales", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AvatarUnificationMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AvatarUnificationMode" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ClientAnimatorThrottling", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ClientAnimatorThrottlingMode" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CollisionGroupData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CollisionGroups", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "WriteOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CurrentCamera", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Camera" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DataModelPlaceVersion", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DistributedGameTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ExplicitAutoJoints", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FallenPartsDestroyHeight", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FilteringEnabled", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FluidForces", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FluidForces" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GlobalWind", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Gravity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HumanoidOnlySetCollisionsOnStateChange", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HumanoidOnlySetCollisionsOnStateChange" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IKControlConstraintSupport", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "IKControlConstraintSupport" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "InterpolationThrottling", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "InterpolationThrottlingMode" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MeshPartHeadsAndAccessories", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "MeshPartHeadsAndAccessories" } }, { "Category": "Streaming", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ModelStreamingBehavior", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ModelStreamingBehavior" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PhysicsSteppingMethod", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PhysicsSteppingMethod" } }, { "Category": "Networking", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RejectCharacterDeletions", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RejectCharacterDeletions" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ReplicateInstanceDestroySetting", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ReplicateInstanceDestroySetting" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Retargeting", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AnimatorRetargetingMode" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SignalBehavior", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SignalBehavior" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SignalBehavior2", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SignalBehavior" } }, { "Category": "Streaming", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "StreamOutBehavior", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "StreamOutBehavior" } }, { "Category": "Streaming", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "StreamingEnabled", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Streaming", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "StreamingIntegrityMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "StreamingIntegrityMode" } }, { "Category": "Streaming", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "StreamingMinRadius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Streaming", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "StreamingPauseMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "WriteOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "StreamingPauseMode" } }, { "Category": "Streaming", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "StreamingTargetRadius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Terrain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Terrain" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TerrainWeldsFixed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TouchesUseCollisionGroups", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "BreakJoints", "Parameters": [ { "Name": "objects", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CalculateJumpDistance", "Parameters": [ { "Name": "gravity", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "jumpPower", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "walkSpeed", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CalculateJumpHeight", "Parameters": [ { "Name": "gravity", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "jumpPower", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CalculateJumpPower", "Parameters": [ { "Name": "gravity", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "jumpHeight", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ExperimentalSolverIsEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetNumAwakeParts", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetPhysicsThrottling", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetRealPhysicsFPS", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "double" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetServerTimeNow", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "double" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "JoinToOutsiders", "Parameters": [ { "Name": "objects", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "jointType", "Type": { "Category": "Enum", "Name": "JointCreationMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "MakeJoints", "Parameters": [ { "Name": "objects", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PGSIsEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMeshPartHeadsAndAccessories", "Parameters": [ { "Name": "value", "Type": { "Category": "Enum", "Name": "MeshPartHeadsAndAccessories" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPhysicsThrottleEnabled", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnjoinFromOutsiders", "Parameters": [ { "Name": "objects", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ZoomToExtents", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PersistentLoaded", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "Workspace", "Superclass": "WorldRoot", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "WorldModel", "Superclass": "WorldRoot" }, { "Members": [ { "Category": "Link", "Default": "false", "MemberType": "Property", "Name": "AutoUpdate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "CanAutoUpdate", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Creator", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Link", "Default": "0", "MemberType": "Property", "Name": "ModifiedState", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "PackageAssetName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Link", "Default": "0", "MemberType": "Property", "Name": "PackageGuid", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Link", "Default": "", "MemberType": "Property", "Name": "PackageId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Link", "Default": "", "MemberType": "Property", "Name": "PackageIdSerialize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Data", "Default": "None", "MemberType": "Property", "Name": "PermissionLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PackagePermission" } }, { "Category": "Link", "Default": "Up To Date", "MemberType": "Property", "Name": "Status", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Link", "Default": "0", "MemberType": "Property", "Name": "VersionIdSerialize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Link", "Default": "0", "MemberType": "Property", "Name": "VersionNumber", "Security": { "Read": "None", "Write": "NotAccessibleSecurity" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } } ], "MemoryCategory": "Instances", "Name": "PackageLink", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "PackageService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "ConvertToPackageUpload", "Parameters": [ { "Name": "uploadUrl", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "cloneInstances", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "originalInstances", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPackageInfo", "Parameters": [ { "Name": "packageAssetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PublishPackage", "Parameters": [ { "Name": "packageInstance", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPackageVersion", "Parameters": [ { "Name": "packageInstance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "versionNumber", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnConvertToPackageResult", "Parameters": [ { "Name": "isSuccessful", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "errorMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnOpenConvertToPackagePlugin", "Parameters": [ { "Name": "instances", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "cloneInstances", "Type": { "Category": "DataType", "Name": "Objects" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PackageUIService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsFinished", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "GetCurrentPage", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AdvanceToNextPageAsync", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Pages", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "AudioPages", "Superclass": "Pages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "CatalogPages", "Superclass": "Pages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Cursor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "DataStoreKeyPages", "Superclass": "Pages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Cursor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "DataStoreListingPages", "Superclass": "Pages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "DataStorePages", "Superclass": "Pages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "DataStoreVersionPages", "Superclass": "Pages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "FriendPages", "Superclass": "Pages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "InventoryPages", "Superclass": "Pages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "EmotesPages", "Superclass": "InventoryPages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "OutfitPages", "Superclass": "Pages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "StandardPages", "Superclass": "Pages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ChildData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "MeshData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } } ], "MemoryCategory": "Instances", "Name": "PartOperationAsset", "Superclass": "Instance" }, { "Members": [ { "Category": "Motion", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Acceleration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "Brightness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0 1 1 1 0 1 1 1 1 0 ", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "ColorSequence" } }, { "Category": "Particles", "Default": "0", "MemberType": "Property", "Name": "Drag", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Emission", "Default": "Top", "MemberType": "Property", "Name": "EmissionDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NormalId" } }, { "Category": "Emission", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Flipbook", "Default": "1 1 ", "MemberType": "Property", "Name": "FlipbookFramerate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Flipbook", "Default": "Particle texture must be 1024 by 1024 to use flipbooks.", "MemberType": "Property", "Name": "FlipbookIncompatible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Flipbook", "Default": "None", "MemberType": "Property", "Name": "FlipbookLayout", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ParticleFlipbookLayout" } }, { "Category": "Flipbook", "Default": "Loop", "MemberType": "Property", "Name": "FlipbookMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ParticleFlipbookMode" } }, { "Category": "Flipbook", "Default": "false", "MemberType": "Property", "Name": "FlipbookStartRandom", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Flipbook", "Default": "Unknown", "MemberType": "Property", "Name": "FlipbookTextureCompatible", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ParticleFlipbookTextureCompatible" } }, { "Category": "Emission", "Default": "5 10 ", "MemberType": "Property", "Name": "Lifetime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "LightEmission", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "LightInfluence", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Particles", "Default": "false", "MemberType": "Property", "Name": "LockedToPart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "FacingCamera", "MemberType": "Property", "Name": "Orientation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ParticleOrientation" } }, { "Category": "Emission", "Default": "20", "MemberType": "Property", "Name": "Rate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Emission", "Default": "0 0 ", "MemberType": "Property", "Name": "RotSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Emission", "Default": "0 0 ", "MemberType": "Property", "Name": "Rotation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "EmitterShape", "Default": "Box", "MemberType": "Property", "Name": "Shape", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ParticleEmitterShape" } }, { "Category": "EmitterShape", "Default": "Outward", "MemberType": "Property", "Name": "ShapeInOut", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ParticleEmitterShapeInOut" } }, { "Category": "EmitterShape", "Default": "1", "MemberType": "Property", "Name": "ShapePartial", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "EmitterShape", "Default": "Volume", "MemberType": "Property", "Name": "ShapeStyle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ParticleEmitterShapeStyle" } }, { "Category": "Appearance", "Default": "0 1 0 1 1 0 ", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberSequence" } }, { "Category": "Emission", "Default": "5 5 ", "MemberType": "Property", "Name": "Speed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Emission", "Default": "0, 0", "MemberType": "Property", "Name": "SpreadAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Appearance", "Default": "0 0 0 1 0 0 ", "MemberType": "Property", "Name": "Squash", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberSequence" } }, { "Category": "Appearance", "Default": "rbxasset://textures/particles/sparkles_main.dds", "MemberType": "Property", "Name": "Texture", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Particles", "Default": "1", "MemberType": "Property", "Name": "TimeScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0 0 0 1 0 0 ", "MemberType": "Property", "Name": "Transparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberSequence" } }, { "Category": "Particles", "Default": "0", "MemberType": "Property", "Name": "VelocityInheritance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Emission", "Default": "0", "MemberType": "Property", "Name": "VelocitySpread", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "SpreadAngle", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Particles", "Default": "false", "MemberType": "Property", "Name": "WindAffectsDrag", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "ZOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "Clear", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Emit", "Parameters": [ { "Default": "16", "Name": "particleCount", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FastForward", "Parameters": [ { "Name": "numFrames", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnClearRequested", "Parameters": [], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnEmitRequested", "Parameters": [ { "Name": "particleCount", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ParticleEmitter", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "PatchBundlerFileWatch", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "FlattenTree", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "PatchId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "TargetPath", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "PatchMapping", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Status", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PathStatus" } }, { "MemberType": "Function", "Name": "GetPointCoordinates", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetWaypoints", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetWaypoints", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CheckOcclusionAsync", "Parameters": [ { "Name": "start", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ComputeAsync", "Parameters": [ { "Name": "start", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "finish", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Blocked", "Parameters": [ { "Name": "blockedWaypointIdx", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Unblocked", "Parameters": [ { "Name": "unblockedWaypointIdx", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Path", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Attachment0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Attachment" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Attachment1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Attachment" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "IsBidirectional", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Label", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "PathfindingLink", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Label", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "PassThrough", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "PathfindingModifier", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "EmptyCutoff", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "CreatePath", "Parameters": [ { "Default": "nil", "Name": "agentParameters", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ComputeRawPathAsync", "Parameters": [ { "Name": "start", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "finish", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "maxDistance", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields", "Deprecated", { "PreferredDescriptorName": "FindPathAsync", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ComputeSmoothPathAsync", "Parameters": [ { "Name": "start", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "finish", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "maxDistance", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields", "Deprecated", { "PreferredDescriptorName": "FindPathAsync", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindPathAsync", "Parameters": [ { "Name": "start", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "finish", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PathfindingService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AllThreadsPaused", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Reason", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DebuggerPauseReason" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ThreadId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } } ], "MemoryCategory": "Instances", "Name": "PausedState", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Breakpoint", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Breakpoint" } } ], "MemoryCategory": "Instances", "Name": "PausedStateBreakpoint", "Superclass": "PausedState", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ExceptionText", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "PausedStateException", "Superclass": "PausedState", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetIsThirdPartyAssetAllowed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetIsThirdPartyPurchaseAllowed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetIsThirdPartyTeleportAllowed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPermissions", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPermissions", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "permissions", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PermissionsService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "CollisionGroupContainsPart", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "part", "Type": { "Category": "Class", "Name": "BasePart" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "CollisionGroup", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CollisionGroupSetCollidable", "Parameters": [ { "Name": "name1", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "name2", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "collidable", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CollisionGroupsAreCollidable", "Parameters": [ { "Name": "name1", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "name2", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateCollisionGroup", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "RegisterCollisionGroup", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCollisionGroupId", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "CollisionGroup", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCollisionGroupName", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "CollisionGroup", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCollisionGroups", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetRegisteredCollisionGroups", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMaxCollisionGroups", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRegisteredCollisionGroups", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IkSolve", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "BasePart" } }, { "Name": "target", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "translateStiffness", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "rotateStiffness", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsCollisionGroupRegistered", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LocalIkSolve", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "BasePart" } }, { "Name": "target", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "translateStiffness", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "rotateStiffness", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterCollisionGroup", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveCollisionGroup", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "UnregisterCollisionGroup", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RenameCollisionGroup", "Parameters": [ { "Name": "from", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "to", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPartCollisionGroup", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "BasePart" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "CollisionGroup", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnregisterCollisionGroup", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PhysicsService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Performance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AllowSleep", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreAnchorsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreAssembliesShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreAwakePartsHighlighted", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreBodyTypesShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreCollisionCostsShown", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreConstraintForcesShownForSelectedOrHoveredInstances", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreConstraintTorquesShownForSelectedOrHoveredInstances", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreContactForcesShownForSelectedOrHoveredAssemblies", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreContactIslandsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreContactPointsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreJointCoordinatesShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreMagnitudesShownForDrawnForcesAndTorques", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreMechanismsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreModelCoordsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreOwnersShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ArePartCoordsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreRegionsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreSolverIslandsShown", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreTerrainReplicationRegionsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreTimestepsShown", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreUnalignedPartsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreWorldCoordsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DisableCSGv2", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DisableCSGv3ForPlugins", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ForceCSGv2", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ForceDrawScale", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsInterpolationThrottleShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsReceiveAgeShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsTreeShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Performance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PhysicsEnvironmentalThrottle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "EnviromentalPhysicsThrottle" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ShowDecompositionGeometry", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SolverConvergenceVisualizationMode", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SolverConvergenceVisualizationMode" } }, { "Category": "Performance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ThrottleAdjustTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UseCSGv2", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "PhysicsSettings", "Superclass": "Instance", "Tags": [ "NotCreatable", "Settings" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "PlaceStatsService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "StartPlaySolo", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PlacesService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "AccountAge", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "AccountAgeReplicate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "AppearanceDidLoad", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "AutoJumpEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Camera", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "CameraMaxZoomDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "CameraMinZoomDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "CameraMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "CameraMode" } }, { "Category": "Behavior", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "CanLoadCharacterAppearance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Character", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Model" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "CharacterAppearance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotBrowsable", "Deprecated", { "PreferredDescriptorName": "CharacterAppearanceId", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "CharacterAppearanceId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "ChararacterRegionId", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "ChatMode", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ChatMode" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "ChatPrivacyMode", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ChatPrivacyMode" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "CloudEditCameraCoordinateFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "CloudEditPlayerActive", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "CountryRegionCodeReplicate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DataComplexity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DataComplexityLimit", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DataReady", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Camera", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DevCameraOcclusionMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DevCameraOcclusionMode" } }, { "Category": "Camera", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DevComputerCameraMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DevComputerCameraMovementMode" } }, { "Category": "Control", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DevComputerMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DevComputerMovementMode" } }, { "Category": "Camera", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DevEnableMouseLock", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Camera", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DevTouchCameraMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DevTouchCameraMovementMode" } }, { "Category": "Control", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DevTouchMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DevTouchMovementMode" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DisplayName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "FollowUserId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "FollowUserIdReplicated", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Behavior", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "GameplayPaused", "Security": { "Read": "None", "Write": "NotAccessibleSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Guest", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "HasVerifiedBadge", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Camera", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "HealthDisplayDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "InternalCharacterAppearanceLoaded", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "LocaleId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "MaxSimulationRadius", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "MaximumSimulationRadius", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "MembershipType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "MembershipType" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "MembershipTypeReplicate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "MembershipType" } }, { "Category": "Camera", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "NameDisplayDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Team", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Neutral", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "OsPlatform", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "PlatformName", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "RawJoinData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "ReplicationFocus", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "RespawnLocation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "SpawnLocation" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "SimulationRadius", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "SuperSafeChatReplicate", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Team", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Team", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Team" } }, { "Category": "Team", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "TeamColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Teleported", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "TeleportedIn", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "UnfilteredChat", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "UserId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "VRDevice", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "VREnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "userId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Deprecated", { "PreferredDescriptorName": "UserId", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "MemberType": "Function", "Name": "AddToBlockList", "Parameters": [ { "Name": "userIds", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClearCharacterAppearance", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DistanceFromCharacter", "Parameters": [ { "Name": "point", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFriendStatus", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Enum", "Name": "FriendStatus" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGameSessionID", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetJoinData", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMouse", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Mouse" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetNetworkPing", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetUnder13", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HasAppearanceLoaded", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsVerified", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Kick", "Parameters": [ { "Default": "", "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadBoolean", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadCharacterAppearance", "Parameters": [ { "Name": "assetInstance", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadData", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadInstance", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadNumber", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "double" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadString", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Move", "Parameters": [ { "Name": "walkDirection", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Default": "false", "Name": "relativeToCamera", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveCharacter", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestFriendship", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RevokeFriendship", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SaveBoolean", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SaveData", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SaveInstance", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SaveNumber", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SaveString", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetAccountAge", "Parameters": [ { "Name": "accountAge", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetCharacterAppearanceJson", "Parameters": [ { "Name": "jsonBlob", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetExperienceSettingsLocaleId", "Parameters": [ { "Name": "locale", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMembershipType", "Parameters": [ { "Name": "membershipType", "Type": { "Category": "Enum", "Name": "MembershipType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetModerationAccessKey", "Parameters": [ { "Name": "moderationAccessKey", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetSuperSafeChat", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetUnder13", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UpdatePlayerBlocked", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "blocked", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "loadBoolean", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "LoadBoolean", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "loadInstance", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "LoadInstance", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "loadNumber", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "double" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "LoadNumber", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "loadString", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "LoadString", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "saveBoolean", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SaveBoolean", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "saveInstance", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SaveInstance", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "saveNumber", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SaveNumber", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "saveString", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SaveString", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFriendsOnline", "Parameters": [ { "Default": "200", "Name": "maxFriends", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRankInGroup", "Parameters": [ { "Name": "groupId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRoleInGroup", "Parameters": [ { "Name": "groupId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsBestFriendsWith", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsFriendsWith", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsInGroup", "Parameters": [ { "Name": "groupId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadCharacter", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadCharacterBlocking", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadCharacterWithHumanoidDescription", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestStreamAroundAsync", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Default": "0", "Name": "timeOut", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "WaitForDataReady", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "isFriendsWith", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields", "Deprecated", { "PreferredDescriptorName": "IsFriendsWith", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "waitForDataReady", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields", "Deprecated", { "PreferredDescriptorName": "WaitForDataReady", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CharacterAdded", "Parameters": [ { "Name": "character", "Type": { "Category": "Class", "Name": "Model" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CharacterAppearanceLoaded", "Parameters": [ { "Name": "character", "Type": { "Category": "Class", "Name": "Model" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CharacterRemoving", "Parameters": [ { "Name": "character", "Type": { "Category": "Class", "Name": "Model" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Chatted", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "recipient", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CloudEditSelectionChanged", "Parameters": [ { "Name": "newSelection", "Type": { "Category": "Group", "Name": "Array" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ConnectDiedSignalBackend", "Parameters": [], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FriendStatusChanged", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "friendStatus", "Type": { "Category": "Enum", "Name": "FriendStatus" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Idled", "Parameters": [ { "Name": "time", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Kill", "Parameters": [], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnTeleport", "Parameters": [ { "Name": "teleportState", "Type": { "Category": "Enum", "Name": "TeleportState" } }, { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "spawnName", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnTeleportInternal", "Parameters": [ { "Name": "teleportState", "Type": { "Category": "Enum", "Name": "TeleportState" } }, { "Name": "teleportInfo", "Type": { "Category": "Group", "Name": "Dictionary" } }, { "Name": "customLoadingScreen", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayerExperienceSettingsLocaleSetFromLua", "Parameters": [ { "Name": "newLocaleId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ReceivedJoinTelemetry", "Parameters": [ { "Name": "details", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteFriendRequestSignal", "Parameters": [ { "Name": "otherUserId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "eventType", "Type": { "Category": "Enum", "Name": "FriendRequestEvent" } } ], "Security": "RobloxScriptSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteInsert", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScopeCheckInitiated", "Parameters": [ { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "serializedScopes", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "metadata", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptSecurityError", "Parameters": [ { "Name": "hash", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "error", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "stack", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerToClientUnfilteredChatReplicate", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SetShutdownMessage", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SimulationRadiusChanged", "Parameters": [ { "Name": "radius", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StatsAvailable", "Parameters": [ { "Name": "info", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Player", "Superclass": "Instance" }, { "Members": [ { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "CustomPoliciesEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "", "MemberType": "Property", "Name": "EmulatedCountryCode", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Behavior", "Default": "", "MemberType": "Property", "Name": "EmulatedGameLocale", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "PlayerEmulationEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "", "MemberType": "Property", "Name": "SerializedEmulatedPolicyInfo", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "MemberType": "Function", "Name": "GetEmulatedPolicyInfo", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegionCodeWillHaveAutomaticNonCustomPolicies", "Parameters": [ { "Name": "regionCode", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEmulatedPolicyInfo", "Parameters": [ { "Name": "emulatedPolicyInfo", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PlayerEmulatorService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "ClearComputerCameraMovementModes", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClearComputerMovementModes", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClearTouchCameraMovementModes", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClearTouchMovementModes", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRegisteredComputerCameraMovementModes", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRegisteredComputerMovementModes", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRegisteredTouchCameraMovementModes", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRegisteredTouchMovementModes", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterComputerCameraMovementMode", "Parameters": [ { "Name": "cameraMovementMode", "Type": { "Category": "Enum", "Name": "ComputerCameraMovementMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterComputerMovementMode", "Parameters": [ { "Name": "movementMode", "Type": { "Category": "Enum", "Name": "ComputerMovementMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterTouchCameraMovementMode", "Parameters": [ { "Name": "cameraMovementMode", "Type": { "Category": "Enum", "Name": "TouchCameraMovementMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterTouchMovementMode", "Parameters": [ { "Name": "movementMode", "Type": { "Category": "Enum", "Name": "TouchMovementMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ComputerCameraMovementModeRegistered", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ComputerMovementModeRegistered", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchCameraMovementModeRegistered", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchMovementModeRegistered", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PlayerScripts", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BubbleChat", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CharacterAutoLoads", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ClassicChat", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LocalPlayer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Player" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MaxPlayers", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MaxPlayersInternal", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NumPlayers", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "GetPlayers", "ThreadSafety": "Safe" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PreferredPlayers", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PreferredPlayersInternal", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RespawnTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ServerGitHash", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ServerLogPrefix", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UseStrafingAnimations", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "localPlayer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "LocalPlayer", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Player" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "numPlayers", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "NumPlayers", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "Chat", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateLocalPlayer", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Player" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPlayerByUserId", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "Player" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetPlayerFromCharacter", "Parameters": [ { "Name": "character", "Type": { "Category": "Class", "Name": "Model" } } ], "ReturnType": { "Category": "Class", "Name": "Player" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPlayers", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "ReportAbuse", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "reason", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "optionalMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReportAbuseV3", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "jsonTags", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ResetLocalPlayer", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetChatStyle", "Parameters": [ { "Default": "Classic", "Name": "style", "Type": { "Category": "Enum", "Name": "ChatStyle" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetLocalPlayerInfo", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "userName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "displayName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "membershipType", "Type": { "Category": "Enum", "Name": "MembershipType" } }, { "Name": "isUnder13", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TeamChat", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "WhisperChat", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "getPlayers", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPlayers", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "playerFromCharacter", "Parameters": [ { "Name": "character", "Type": { "Category": "Class", "Name": "Model" } } ], "ReturnType": { "Category": "Class", "Name": "Player" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPlayerFromCharacter", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "players", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPlayers", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateHumanoidModelFromDescription", "Parameters": [ { "Name": "description", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "rigType", "Type": { "Category": "Enum", "Name": "HumanoidRigType" } }, { "Default": "Default", "Name": "assetTypeVerification", "Type": { "Category": "Enum", "Name": "AssetTypeVerification" } } ], "ReturnType": { "Category": "Class", "Name": "Model" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateHumanoidModelFromUserId", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "Model" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCharacterAppearanceAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "Model" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCharacterAppearanceInfoAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFriendsAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "FriendPages" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetHumanoidDescriptionFromOutfitId", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "HumanoidDescription" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetHumanoidDescriptionFromUserId", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "HumanoidDescription" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetNameFromUserIdAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserIdFromNameAsync", "Parameters": [ { "Name": "userName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserThumbnailAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "thumbnailType", "Type": { "Category": "Enum", "Name": "ThumbnailType" } }, { "Name": "thumbnailSize", "Type": { "Category": "Enum", "Name": "ThumbnailSize" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CloudEditApplyEditsMessage", "Parameters": [ { "Name": "playerName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "scriptName", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FriendRequestEvent", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "friendRequestEvent", "Type": { "Category": "Enum", "Name": "FriendRequestEvent" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GameAnnounce", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnLinkedScriptsUpdated", "Parameters": [], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayerAdded", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayerChatted", "Parameters": [ { "Name": "chatType", "Type": { "Category": "Enum", "Name": "PlayerChatType" } }, { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "targetPlayer", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayerConnecting", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayerDisconnecting", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayerMembershipChanged", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayerRejoining", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayerRemoving", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptGameServerReportEnrichment", "Parameters": [ { "Name": "reportId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptReportServerEnrichmentAndScan", "Parameters": [ { "Name": "v1comment", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "submitterId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "abuserId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "reportId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestCloudEditImmediatePublishWithContext", "Parameters": [ { "Name": "spanContext", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestCloudEditKick", "Parameters": [ { "Name": "playerId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestCloudEditShutdown", "Parameters": [], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestTeamCreateImmediateSaveWithContext", "Parameters": [ { "Name": "spanContext", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TeamCreatePublishFinished", "Parameters": [ { "Name": "publishSuccessful", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TeamCreateSaveFinished", "Parameters": [ { "Name": "saveSuccessful", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TeamCreateServerMessage", "Parameters": [ { "Name": "messageType", "Type": { "Category": "Enum", "Name": "MessageType" } }, { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "printToStatusBar", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Players", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CollisionEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GridSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HostDataModelType", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "StudioDataModelType" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HostDataModelTypeIsCurrent", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MultipleDocumentInterfaceInstance", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "MultipleDocumentInterfaceInstance" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UsesAssetInsertionDrag", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "Activate", "Parameters": [ { "Name": "exclusiveMouse", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreatePluginAction", "Parameters": [ { "Name": "actionId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "statusTip", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "iconName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "true", "Name": "allowBinding", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "PluginAction" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreatePluginMenu", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "title", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "icon", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "PluginMenu" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateToolbar", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "PluginToolbar" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Deactivate", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetItem", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "defaultValue", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetJoinMode", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "JointCreationMode" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMouse", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "PluginMouse" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSelectedRibbonTool", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "RibbonTool" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSetting", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetStudioUserId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "PluginSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Intersect", "Parameters": [ { "Name": "objects", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Invoke", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsActivated", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsActivatedWithExclusiveMouse", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Negate", "Parameters": [ { "Name": "objects", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OnInvoke", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OnSetItem", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenScript", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "LuaSourceContainer" } }, { "Default": "1", "Name": "lineNumber", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenWikiPage", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PauseSound", "Parameters": [ { "Name": "sound", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PlaySound", "Parameters": [ { "Name": "sound", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "0", "Name": "normalizedTimePosition", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ResumeSound", "Parameters": [ { "Name": "sound", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SaveSelectedToRoblox", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SelectRibbonTool", "Parameters": [ { "Name": "tool", "Type": { "Category": "Enum", "Name": "RibbonTool" } }, { "Name": "position", "Type": { "Category": "DataType", "Name": "UDim2" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Separate", "Parameters": [ { "Name": "objects", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetItem", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetReady", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetSetting", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartDecalDrag", "Parameters": [ { "Name": "decal", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartDrag", "Parameters": [ { "Name": "dragData", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StopAllSounds", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Union", "Parameters": [ { "Name": "objects", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateDockWidgetPluginGui", "Parameters": [ { "Name": "pluginGuiId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "dockWidgetPluginGuiInfo", "Type": { "Category": "DataType", "Name": "DockWidgetPluginGuiInfo" } } ], "ReturnType": { "Category": "Class", "Name": "DockWidgetPluginGui" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateQWidgetPluginGui", "Parameters": [ { "Name": "pluginGuiId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "pluginGuiOptions", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Class", "Name": "QWidgetPluginGui" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ImportFbxAnimation", "Parameters": [ { "Name": "rigModel", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "true", "Name": "isR15", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ImportFbxRig", "Parameters": [ { "Default": "true", "Name": "isR15", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptForExistingAssetId", "Parameters": [ { "Name": "assetType", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptSaveSelection", "Parameters": [ { "Default": "", "Name": "suggestedFileName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Deactivation", "Parameters": [], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Ready", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Unloading", "Parameters": [], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "ProcessAssetInsertionDrag", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "assetTypeId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "instances", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "Tags": [ "NoYield" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "ProcessAssetInsertionDrop", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "NoYield" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Plugin", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ActionId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "AllowBinding", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "Checked", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "DefaultShortcut", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "StatusTip", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Text", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Event", "Name": "Triggered", "Parameters": [], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PluginAction", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "{\"Metadata\":{\"TargetDataModels\": [\"Edit\", \"Server\", \"Client\"]},\"Permissions\":{}}", "MemberType": "Property", "Name": "Manifest", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "PluginCapabilities", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "PluginDebugService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Data", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MimeType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Sender", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "PluginDragEvent", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "PluginGuiService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "SetAutoUpdate", "Parameters": [ { "Name": "pluginId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "state", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetOTAPluginVersion", "Parameters": [ { "Default": "", "Name": "pluginName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PluginManagementService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "CreatePlugin", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "Tags": [ "Deprecated", "CustomLuaState" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ExportPlace", "Parameters": [ { "Default": "", "Name": "filePath", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ExportSelection", "Parameters": [ { "Default": "", "Name": "filePath", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PluginManager", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "MemberType": "Function", "Name": "CreatePlugin", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "Tags": [ "Deprecated", "CustomLuaState" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ExportPlace", "Parameters": [ { "Default": "", "Name": "filePath", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ExportSelection", "Parameters": [ { "Default": "", "Name": "filePath", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PluginManagerInterface", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Icon", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Title", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "AddAction", "Parameters": [ { "Name": "action", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddMenu", "Parameters": [ { "Name": "menu", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddNewAction", "Parameters": [ { "Name": "actionId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "icon", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddSeparator", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Clear", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowAsync", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PluginMenu", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetPluginPolicy", "Parameters": [ { "Name": "pluginName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PluginPolicyService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "CreateButton", "Parameters": [ { "Name": "buttonId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "tooltip", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "iconname", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PluginToolbar", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ClickableWhenViewportHidden", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Icon", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "MemberType": "Function", "Name": "SetActive", "Parameters": [ { "Name": "active", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Click", "Parameters": [], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PluginToolbarButton", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetAwardablePoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AwardPoints", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "amount", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGamePointBalance", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPointBalance", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PointsAwarded", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "pointsAwarded", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "userBalanceInGame", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "userTotalBalance", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PointsService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "Unknown", "MemberType": "Property", "Name": "IsLuobuServer", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TriStateBoolean" } }, { "Category": "Data", "Default": "Unknown", "MemberType": "Property", "Name": "LuobuWhitelisted", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TriStateBoolean" } }, { "MemberType": "Function", "Name": "GetPolicyInfoForPlayerAsync", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPolicyInfoForServerRobloxOnlyAsync", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PolicyService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EasingDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PoseEasingDirection" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EasingStyle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PoseEasingStyle" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Weight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "PoseBase", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } } ], "MemoryCategory": "Animation", "Name": "NumberPose", "Superclass": "PoseBase" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "MaskWeight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "AddSubPose", "Parameters": [ { "Name": "pose", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSubPoses", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveSubPose", "Parameters": [ { "Name": "pose", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Animation", "Name": "Pose", "Superclass": "PoseBase" }, { "Members": [ { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "PostEffect", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "State", "Default": "0.400000006", "MemberType": "Property", "Name": "Intensity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "24", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.949999988", "MemberType": "Property", "Name": "Threshold", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "BloomEffect", "Superclass": "PostEffect" }, { "Members": [ { "Category": "State", "Default": "24", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "BlurEffect", "Superclass": "PostEffect" }, { "Members": [ { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "Brightness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "Contrast", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "Saturation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "1, 1, 1", "MemberType": "Property", "Name": "TintColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } } ], "MemoryCategory": "Instances", "Name": "ColorCorrectionEffect", "Superclass": "PostEffect" }, { "Members": [ { "Category": "State", "Default": "0.75", "MemberType": "Property", "Name": "FarIntensity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.0500000007", "MemberType": "Property", "Name": "FocusDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "10", "MemberType": "Property", "Name": "InFocusRadius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.75", "MemberType": "Property", "Name": "NearIntensity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "DepthOfFieldEffect", "Superclass": "PostEffect" }, { "Members": [ { "Category": "State", "Default": "0.25", "MemberType": "Property", "Name": "Intensity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Spread", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "SunRaysEffect", "Superclass": "PostEffect" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ProcessInstancePhysicsService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "Interact", "MemberType": "Property", "Name": "ActionText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Localization", "Default": "true", "MemberType": "Property", "Name": "AutoLocalize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "ClickablePrompt", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "OnePerButton", "MemberType": "Property", "Name": "Exclusivity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ProximityPromptExclusivity" } }, { "Category": "Data", "Default": "ButtonX", "MemberType": "Property", "Name": "GamepadKeyCode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "KeyCode" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "HoldDuration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "E", "MemberType": "Property", "Name": "KeyboardKeyCode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "KeyCode" } }, { "Category": "Data", "Default": "10", "MemberType": "Property", "Name": "MaxActivationDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ObjectText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "RequiresLineOfSight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Localization", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "RootLocalizationTable", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "LocalizationTable" } }, { "Category": "Data", "Default": "Default", "MemberType": "Property", "Name": "Style", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ProximityPromptStyle" } }, { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "UIOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "MemberType": "Function", "Name": "InputHoldBegin", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InputHoldEnd", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ButtonHoldBeganActionReplicated", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ButtonHoldEndedActionReplicated", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptButtonHoldBegan", "Parameters": [ { "Name": "playerWhoTriggered", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptButtonHoldEnded", "Parameters": [ { "Name": "playerWhoTriggered", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptHidden", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptShown", "Parameters": [ { "Name": "inputType", "Type": { "Category": "Enum", "Name": "ProximityPromptInputType" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TriggerEnded", "Parameters": [ { "Name": "playerWhoTriggered", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TriggerEndedActionReplicated", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Triggered", "Parameters": [ { "Name": "playerWhoTriggered", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TriggeredActionReplicated", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ProximityPrompt", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "16", "MemberType": "Property", "Name": "MaxPromptsVisible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Event", "Name": "PromptButtonHoldBegan", "Parameters": [ { "Name": "prompt", "Type": { "Category": "Class", "Name": "ProximityPrompt" } }, { "Name": "playerWhoTriggered", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptButtonHoldEnded", "Parameters": [ { "Name": "prompt", "Type": { "Category": "Class", "Name": "ProximityPrompt" } }, { "Name": "playerWhoTriggered", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptHidden", "Parameters": [ { "Name": "prompt", "Type": { "Category": "Class", "Name": "ProximityPrompt" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptShown", "Parameters": [ { "Name": "prompt", "Type": { "Category": "Class", "Name": "ProximityPrompt" } }, { "Name": "inputType", "Type": { "Category": "Enum", "Name": "ProximityPromptInputType" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptTriggerEnded", "Parameters": [ { "Name": "prompt", "Type": { "Category": "Class", "Name": "ProximityPrompt" } }, { "Name": "playerWhoTriggered", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptTriggered", "Parameters": [ { "Name": "prompt", "Type": { "Category": "Class", "Name": "ProximityPrompt" } }, { "Name": "playerWhoTriggered", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ProximityPromptService", "Superclass": "Instance", "Tags": [ "Service", "NotBrowsable" ] }, { "Members": [ { "MemberType": "Function", "Name": "PublishDescendantAssets", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateAssetAndWaitForAssetId", "Parameters": [ { "Name": "instances", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "operationId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "creatorId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "assetType", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "description", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PublishCageMeshAsync", "Parameters": [ { "Name": "wrap", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "cageType", "Type": { "Category": "Enum", "Name": "CageType" } } ], "ReturnType": { "Category": "DataType", "Name": "Content" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PublishService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "AddGlobalPointsField", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddGlobalPointsTag", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DEPRECATED_TrackEvent", "Parameters": [ { "Name": "category", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "action", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "label", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "0", "Name": "value", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DEPRECATED_TrackEventWithArgs", "Parameters": [ { "Name": "category", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "action", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "label", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "args", "Type": { "Category": "Group", "Name": "Dictionary" } }, { "Default": "0", "Name": "value", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetClientId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPlaySessionId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSessionId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReleaseRBXEventStream", "Parameters": [ { "Name": "target", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveGlobalPointsField", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveGlobalPointsTag", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReportCounter", "Parameters": [ { "Name": "counterName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "1", "Name": "amount", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReportInfluxSeries", "Parameters": [ { "Name": "seriesName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "points", "Type": { "Category": "Group", "Name": "Dictionary" } }, { "Name": "throttlingPercentage", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReportStats", "Parameters": [ { "Name": "category", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReportToDiagByCountryCode", "Parameters": [ { "Name": "featureName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "measureName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "seconds", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendEventDeferred", "Parameters": [ { "Name": "target", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventContext", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "additionalArgs", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendEventImmediately", "Parameters": [ { "Name": "target", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventContext", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "additionalArgs", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetRBXEvent", "Parameters": [ { "Name": "target", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventContext", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "additionalArgs", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetRBXEventStream", "Parameters": [ { "Name": "target", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventContext", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "additionalArgs", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TrackEvent", "Parameters": [ { "Name": "category", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "action", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "label", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "0", "Name": "value", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TrackEventWithArgs", "Parameters": [ { "Name": "category", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "action", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "label", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "args", "Type": { "Category": "Group", "Name": "Dictionary" } }, { "Default": "0", "Name": "value", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UpdateHeartbeatObject", "Parameters": [ { "Name": "args", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RbxAnalyticsService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadata", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadataCallbacks", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadataClasses", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadataEnums", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadataEvents", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadataFunctions", "Superclass": "Instance" }, { "Members": [ { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Browsable", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ClassCategory", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ClientOnly", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Constraint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Deprecated", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EditingDisabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EditorType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FFlag", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsBackend", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PropertyOrder", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ScriptContext", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ServerOnly", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SliderScaling", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UIMaximum", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UIMinimum", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UINumTicks", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } } ], "MemoryCategory": "Instances", "Name": "ReflectionMetadataItem", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Reflection", "Default": "0", "MemberType": "Property", "Name": "ExplorerImageIndex", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Reflection", "Default": "2147483647", "MemberType": "Property", "Name": "ExplorerOrder", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Reflection", "Default": "true", "MemberType": "Property", "Name": "Insertable", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Reflection", "Default": "", "MemberType": "Property", "Name": "PreferredParent", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Reflection", "Default": "Always", "MemberType": "Property", "Name": "ServiceVisibility", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ServiceVisibility" } } ], "MemoryCategory": "Instances", "Name": "ReflectionMetadataClass", "Superclass": "ReflectionMetadataItem" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadataEnum", "Superclass": "ReflectionMetadataItem" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadataEnumItem", "Superclass": "ReflectionMetadataItem" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadataMember", "Superclass": "ReflectionMetadataItem" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadataProperties", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadataYieldFunctions", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Event", "Name": "BroadcastRemoteCursorPositions", "Parameters": [ { "Name": "script", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "remoteCursorPosition", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestAllRemoteCursorPositionForScript", "Parameters": [ { "Name": "script", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UpdateClientRemoteCursorPosition", "Parameters": [ { "Name": "script", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "remoteCursorPosition", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RemoteCursorService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "RemoteDebuggerServer", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "FireAllClients", "Parameters": [ { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FireClient", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FireServer", "Parameters": [ { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnClientEvent", "Parameters": [ { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnServerEvent", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RemoteEvent", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "InvokeClient", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InvokeServer", "Parameters": [ { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteOnInvokeClient", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteOnInvokeError", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "arguments", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteOnInvokeServer", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteOnInvokeSuccess", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "OnClientInvoke", "Parameters": [ { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "OnServerInvoke", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RemoteFunction", "Superclass": "Instance" }, { "Members": [ { "Category": "Debug", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AutoFRMLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Performance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EagerBulkExecution", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Performance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EditQualityLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "QualityLevel" } }, { "Category": "Debug", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EnableFRM", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "General", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ExportMergeByMaterial", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "General", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FrameRateManager", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FramerateManagerMode" } }, { "Category": "General", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GraphicsMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "GraphicsMode" } }, { "Category": "Cache", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MeshCacheSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Debug", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MeshPartDetailLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "MeshPartDetailLevel" } }, { "Category": "Performance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "QualityLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "QualityLevel" } }, { "Category": "Debug", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ReloadAssets", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Debug", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RenderCSGTrianglesDebug", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Debug", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ShowBoundingBoxes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Debug", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ViewMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ViewMode" } }, { "MemberType": "Function", "Name": "GetMaxQualityLevel", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RenderSettings", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotBrowsable" ] }, { "Members": [ { "Category": "RenderingTest", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "RenderingTest", "Default": "10", "MemberType": "Property", "Name": "ComparisonDiffThreshold", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "RenderingTest", "Default": "psnr", "MemberType": "Property", "Name": "ComparisonMethod", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RenderingTestComparisonMethod" } }, { "Category": "RenderingTest", "Default": "50", "MemberType": "Property", "Name": "ComparisonPsnrThreshold", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "RenderingTest", "Default": "", "MemberType": "Property", "Name": "Description", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "RenderingTest", "Default": "70", "MemberType": "Property", "Name": "FieldOfView", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "RenderingTest", "Default": "-0, 0, 0", "MemberType": "Property", "Name": "Orientation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "RenderingTest", "Default": "false", "MemberType": "Property", "Name": "PerfTest", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "RenderingTest", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "RenderingTest", "Default": "21", "MemberType": "Property", "Name": "QualityLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "RenderingTest", "Default": "false", "MemberType": "Property", "Name": "ShouldSkip", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "RenderingTest", "Default": "", "MemberType": "Property", "Name": "Ticket", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "RenderingTest", "Default": "10", "MemberType": "Property", "Name": "Timeout", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "RenderdocTriggerCapture", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RenderingTest", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "IsDefaultLoadingGuiRemoved", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsFinishedReplicating", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveDefaultLoadingScreen", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetDefaultLoadingGuiRemoved", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DefaultLoadingGuiRemoved", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FinishedReplicating", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoveDefaultLoadingGuiSignal", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ReplicatedFirst", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReplicatedStorage", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "RobloxPluginGuiService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "RobloxReplicatedStorage", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotBrowsable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "RobloxServerStorage", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "EndRemoteRomarkTest", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RomarkEndOfTest", "Parameters": [], "Security": "RobloxScriptSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RomarkService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Length", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ValuesAndTimes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "MemberType": "Function", "Name": "GetKeyAtIndex", "Parameters": [ { "Name": "index", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "RotationCurveKey" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetKeyIndicesAtTime", "Parameters": [ { "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetKeys", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetValueAtTime", "Parameters": [ { "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "DataType", "Name": "CoordinateFrame?" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertKey", "Parameters": [ { "Name": "key", "Type": { "Category": "DataType", "Name": "RotationCurveKey" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveKeyAtIndex", "Parameters": [ { "Name": "startingIndex", "Type": { "Category": "Primitive", "Name": "int" } }, { "Default": "1", "Name": "count", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetKeys", "Parameters": [ { "Name": "keys", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RotationCurve", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "RtMessagingService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ClientGitHash", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "BindToRenderStep", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "priority", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "function", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCoreScriptVersion", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRobloxClientChannel", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRobloxVersion", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsClient", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "IsEdit", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "PluginSecurity", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "IsRunMode", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "IsRunning", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsServer", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "IsStudio", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "Pause", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Reset", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Run", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Set3dRenderingEnabled", "Parameters": [ { "Name": "enable", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetRobloxGuiFocused", "Parameters": [ { "Name": "focus", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Stop", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnbindFromRenderStep", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "setThrottleFramerateEnabled", "Parameters": [ { "Name": "enable", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Heartbeat", "Parameters": [ { "Name": "deltaTime", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PostSimulation", "Parameters": [ { "Name": "deltaTimeSim", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PreAnimation", "Parameters": [ { "Name": "deltaTimeSim", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PreRender", "Parameters": [ { "Name": "deltaTimeRender", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PreSimulation", "Parameters": [ { "Name": "deltaTimeSim", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RenderStepped", "Parameters": [ { "Name": "deltaTime", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Stepped", "Parameters": [ { "Name": "time", "Type": { "Category": "Primitive", "Name": "double" } }, { "Name": "deltaTime", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RunService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "RuntimeScriptService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "TakeScreenshot", "Parameters": [ { "Name": "screenshotOptions", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FSTriggeredSignal", "Parameters": [ { "Name": "requestId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "playerId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "mac", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "args", "Type": { "Category": "Group", "Name": "Tuple" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScreenshotContentReady", "Parameters": [ { "Name": "screenshotJobId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "contentId", "Type": { "Category": "DataType", "Name": "Content" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScreenshotUploaded", "Parameters": [ { "Name": "screenshotJobId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "screenshotId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "SafetyService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CameraButtonIcon", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CameraButtonPosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CloseButtonPosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CloseWhenScreenshotTaken", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ExperienceNameOverlayEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "OverlayFont", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Font" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UsernameOverlayEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Visible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "ScreenshotHud", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ScriptBuilder", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "CoreScript", "MemberType": "Property", "Name": "CompileTarget", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "CompileTarget" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "CoverageInfo", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "DebugInfo", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "PackAsSource", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "RawBytecode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Deprecated", { "PreferredDescriptorName": "CompileTarget", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "SyncScriptBuilder", "Superclass": "ScriptBuilder", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Event", "Name": "ScriptAdded", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "LuaSourceContainer" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptBeingRemoved", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "LuaSourceContainer" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptChanged", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "LuaSourceContainer" } }, { "Name": "property", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptFullNameChanged", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "LuaSourceContainer" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptSourceChanged", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "LuaSourceContainer" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ScriptChangeService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ScriptCloneWatcher", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ScriptCloneWatcherHelper", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ScriptCommitService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "ScriptsDisabled", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "AddCoreScriptLocal", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "parent", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClearScriptProfilingData", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DeserializeScriptProfilerString", "Parameters": [ { "Name": "jsonString", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCoverageStats", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SaveScriptProfilingData", "Parameters": [ { "Name": "filename", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTimeout", "Parameters": [ { "Name": "seconds", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartScriptProfiling", "Parameters": [ { "Name": "frequency", "Type": { "Category": "Primitive", "Name": "int?" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StopScriptProfiling", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Error", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "stackTrace", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ErrorDetailed", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "stackTrace", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "details", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "securityLevel", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ScriptContext", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "CoreScriptIdentifier", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "CurrentLine", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "IsDebugging", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "IsPaused", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Script", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ScriptGuid", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "AddWatch", "Parameters": [ { "Name": "expression", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBreakpoints", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGlobals", "Parameters": [ { "Default": "0", "Name": "stackFrame", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Map" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetLocals", "Parameters": [ { "Default": "0", "Name": "stackFrame", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Map" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetStack", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUpvalues", "Parameters": [ { "Default": "0", "Name": "stackFrame", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Map" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetWatchValue", "Parameters": [ { "Name": "watch", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetWatches", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetBreakpoint", "Parameters": [ { "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "isContextDependentBreakpoint", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetGlobal", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "stackFrame", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetLocal", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } }, { "Default": "0", "Name": "stackFrame", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetUpvalue", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } }, { "Default": "0", "Name": "stackFrame", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BreakpointAdded", "Parameters": [ { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BreakpointRemoved", "Parameters": [ { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "EncounteredBreak", "Parameters": [ { "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "breakReason", "Type": { "Category": "Enum", "Name": "BreakReason" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Resuming", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "WatchAdded", "Parameters": [ { "Name": "watch", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "WatchRemoved", "Parameters": [ { "Name": "watch", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ScriptDebugger", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetInternalUri", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetLine", "Parameters": [ { "Default": "nil", "Name": "lineIndex", "Type": { "Category": "Primitive", "Name": "int?" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetLineCount", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetScript", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "LuaSourceContainer" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSelectedText", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSelection", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSelectionEnd", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSelectionStart", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetText", "Parameters": [ { "Default": "nil", "Name": "startLine", "Type": { "Category": "Primitive", "Name": "int?" } }, { "Default": "nil", "Name": "startCharacter", "Type": { "Category": "Primitive", "Name": "int?" } }, { "Default": "nil", "Name": "endLine", "Type": { "Category": "Primitive", "Name": "int?" } }, { "Default": "nil", "Name": "endCharacter", "Type": { "Category": "Primitive", "Name": "int?" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetViewport", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HasSelectedText", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsCommandBar", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CloseAsync", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "EditTextAsync", "Parameters": [ { "Name": "newText", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "startLine", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "startCharacter", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "endLine", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "endCharacter", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ForceSetSelectionAsync", "Parameters": [ { "Name": "cursorLine", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "cursorCharacter", "Type": { "Category": "Primitive", "Name": "int" } }, { "Default": "nil", "Name": "anchorLine", "Type": { "Category": "Primitive", "Name": "int?" } }, { "Default": "nil", "Name": "anchorCharacter", "Type": { "Category": "Primitive", "Name": "int?" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestSetSelectionAsync", "Parameters": [ { "Name": "cursorLine", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "cursorCharacter", "Type": { "Category": "Primitive", "Name": "int" } }, { "Default": "nil", "Name": "anchorLine", "Type": { "Category": "Primitive", "Name": "int?" } }, { "Default": "nil", "Name": "anchorCharacter", "Type": { "Category": "Primitive", "Name": "int?" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SelectionChanged", "Parameters": [ { "Name": "positionLine", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "positionCharacter", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "anchorLine", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "anchorCharacter", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ViewportChanged", "Parameters": [ { "Name": "startLine", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "endLine", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ScriptDocument", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "DeregisterAutocompleteCallback", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DeregisterScriptAnalysisCallback", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindScriptDocument", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "LuaSourceContainer" } } ], "ReturnType": { "Category": "Class", "Name": "ScriptDocument" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ForceReloadSource", "Parameters": [ { "Name": "uri", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "newsrc", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetEditorSource", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "LuaSourceContainer" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetScriptDocuments", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterAutocompleteCallback", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "priority", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "callbackFunction", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterScriptAnalysisCallback", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "priority", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "callbackFunction", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenScriptDocumentAsync", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "LuaSourceContainer" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TextDocumentDidChange", "Parameters": [ { "Name": "document", "Type": { "Category": "Class", "Name": "ScriptDocument" } }, { "Name": "changesArray", "Type": { "Category": "Group", "Name": "Variant" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TextDocumentDidClose", "Parameters": [ { "Name": "oldDocument", "Type": { "Category": "Class", "Name": "ScriptDocument" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TextDocumentDidOpen", "Parameters": [ { "Name": "newDocument", "Type": { "Category": "Class", "Name": "ScriptDocument" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ScriptEditorService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetSourceContainerByScriptGuid", "Parameters": [ { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "LuaSourceContainer" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ScriptRegistrationService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ScriptRuntime", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ScriptService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ActiveInstance", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RenderMode", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SelectionRenderMode" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionBoxThickness", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionLineThickness", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionThickness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ShowActiveInstanceHighlight", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "Add", "Parameters": [ { "Name": "instancesToAdd", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClearTerrainSelectionHack", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Get", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Remove", "Parameters": [ { "Name": "instancesToRemove", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Set", "Parameters": [ { "Name": "selection", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTerrainSelectionHack", "Parameters": [ { "Name": "center", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SelectionChanged", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Selection", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "SelectionHighlightManager", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Settings", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UpdateType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SensorUpdateType" } }, { "MemberType": "Function", "Name": "Sense", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnSensorOutputChanged", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "SensorBase", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Output", "Default": "false", "MemberType": "Property", "Name": "FullySubmerged", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Output", "Default": "false", "MemberType": "Property", "Name": "TouchingSurface", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "BuoyancySensor", "Superclass": "SensorBase", "Tags": [ "NotBrowsable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ControllerSensor", "Superclass": "SensorBase", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Output", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "HitFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Output", "Default": "0, 0, 0", "MemberType": "Property", "Name": "HitNormal", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Input", "Default": "0", "MemberType": "Property", "Name": "SearchDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Output", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "SensedPart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Input", "Default": "Floor", "MemberType": "Property", "Name": "SensorMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SensorMode" } } ], "MemoryCategory": "Instances", "Name": "ControllerPartSensor", "Superclass": "ControllerSensor", "Tags": [ "NotBrowsable" ] }, { "Members": [ { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "LoadStringEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "ServerScriptService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ServerStorage", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "FindService", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetService", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "getService", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetService", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "service", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetService", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Close", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CloseLate", "Parameters": [], "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServiceAdded", "Parameters": [ { "Name": "service", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServiceRemoving", "Parameters": [ { "Name": "service", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ServiceProvider", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CreatorId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CreatorType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "CreatorType" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ForceR15", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GameAvatarType", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "GameAvatarType" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GameId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GearGenreSetting", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "GearGenreSetting" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Genre", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Genre" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsSFFlagsLoaded", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "JobInfo", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "JobId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PlaceId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PlaceVersion", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PrivateServerId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PrivateServerOwnerId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "R15CollisionType", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "R15CollisionType" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VIPServerId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "PrivateServerId", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VIPServerOwnerId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "PrivateServerOwnerId", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Workspace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Workspace" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "lighting", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "workspace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Workspace", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Workspace" } }, { "MemberType": "Function", "Name": "BindToClose", "Parameters": [ { "Name": "function", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DefineFastFlag", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "defaultValue", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DefineFastInt", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "defaultValue", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DefineFastString", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "defaultValue", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetEngineFeature", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFastFlag", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFastInt", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFastString", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetJobsInfo", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMessage", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetObjects", "Parameters": [ { "Name": "url", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetObjectsAllOrNone", "Parameters": [ { "Name": "url", "Type": { "Category": "DataType", "Name": "Content" } }, { "Default": "false", "Name": "binaryFormatOnly", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetObjectsList", "Parameters": [ { "Name": "urls", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPlaySessionId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRemoteBuildMode", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsContentLoaded", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsGearTypeAllowed", "Parameters": [ { "Name": "gearType", "Type": { "Category": "Enum", "Name": "GearType" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsLoaded", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsUniverseMetadataLoaded", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Load", "Parameters": [ { "Name": "url", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenScreenshotsFolder", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenVideosFolder", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReportInGoogleAnalytics", "Parameters": [ { "Name": "category", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "custom", "Name": "action", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "none", "Name": "label", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "0", "Name": "value", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetFastFlagForTesting", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "newValue", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetFastIntForTesting", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "newValue", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetFastStringForTesting", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "newValue", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetFlagVersion", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "version", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetIsLoaded", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "placeSizeInBytes", "Type": { "Category": "Primitive", "Name": "int?" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPlaceId", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetUniverseId", "Parameters": [ { "Name": "universeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Shutdown", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetObjectsAsync", "Parameters": [ { "Name": "url", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HttpGetAsync", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "Default", "Name": "httpRequestType", "Type": { "Category": "Enum", "Name": "HttpRequestType" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HttpPostAsync", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "data", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "*/*", "Name": "contentType", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "Default", "Name": "httpRequestType", "Type": { "Category": "Enum", "Name": "HttpRequestType" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertObjectsAndJoinIfLegacyAsync", "Parameters": [ { "Name": "url", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SavePlace", "Parameters": [ { "Default": "SaveAll", "Name": "saveFilter", "Type": { "Category": "Enum", "Name": "SaveFilter" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AllowedGearTypeChanged", "Parameters": [], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GraphicsQualityChangeRequest", "Parameters": [ { "Name": "betterQuality", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ItemChanged", "Parameters": [ { "Name": "object", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "descriptor", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Loaded", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScreenshotReady", "Parameters": [ { "Name": "path", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScreenshotSavedToAlbum", "Parameters": [ { "Name": "filename", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "success", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UniverseMetadataLoaded", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "OnClose", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "BindToClose", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DataModel", "Superclass": "ServiceProvider", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "GenericSettings", "Superclass": "ServiceProvider", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "AnalysticsSettings", "Superclass": "GenericSettings", "Tags": [ "NotCreatable" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetFFlag", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFVariable", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "GlobalSettings", "Superclass": "GenericSettings", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "MemberType": "Function", "Name": "IsUserFeatureEnabled", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Reset", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SaveState", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "UserSettings", "Superclass": "GenericSettings", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "HiddenServices", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Behavior", "Default": "", "MemberType": "Property", "Name": "VisibleServices", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } } ], "MemoryCategory": "Instances", "Name": "ServiceVisibilityService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetCreatedTimestampUtcMs", "Parameters": [ { "Name": "sid", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMetadata", "Parameters": [ { "Name": "sid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRootSID", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveMetadata", "Parameters": [ { "Name": "sid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveSession", "Parameters": [ { "Name": "sid", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveSessionsWithMetadataKey", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReplaceSession", "Parameters": [ { "Name": "sid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SessionExists", "Parameters": [ { "Name": "sid", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMetadata", "Parameters": [ { "Name": "sid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetSession", "Parameters": [ { "Name": "parentSid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "childSid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "SessionService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetSharedTable", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "SharedTable" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "SetSharedTable", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "st", "Type": { "Category": "DataType", "Name": "SharedTable?" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Safe" } ], "MemoryCategory": "Instances", "Name": "SharedTableRegistry", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "Cancel", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Start", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Status", "Parameters": [ { "Name": "progressRatio", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ShorelineUpgraderService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Appearance", "Default": "true", "MemberType": "Property", "Name": "CelestialBodiesShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "11", "MemberType": "Property", "Name": "MoonAngularSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "rbxasset://sky/moon.jpg", "MemberType": "Property", "Name": "MoonTextureId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "rbxasset://textures/sky/sky512_bk.tex", "MemberType": "Property", "Name": "SkyboxBk", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "rbxasset://textures/sky/sky512_dn.tex", "MemberType": "Property", "Name": "SkyboxDn", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "rbxasset://textures/sky/sky512_ft.tex", "MemberType": "Property", "Name": "SkyboxFt", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "rbxasset://textures/sky/sky512_lf.tex", "MemberType": "Property", "Name": "SkyboxLf", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "rbxasset://textures/sky/sky512_rt.tex", "MemberType": "Property", "Name": "SkyboxRt", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "rbxasset://textures/sky/sky512_up.tex", "MemberType": "Property", "Name": "SkyboxUp", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "3000", "MemberType": "Property", "Name": "StarCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Appearance", "Default": "21", "MemberType": "Property", "Name": "SunAngularSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "rbxasset://sky/sun.jpg", "MemberType": "Property", "Name": "SunTextureId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "Instances", "Name": "Sky", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "1, 1, 1", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "0.5", "MemberType": "Property", "Name": "Opacity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "RiseVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "TimeScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0.5", "MemberType": "Property", "Name": "opacity_xml", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "riseVelocity_xml", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "size_xml", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "FastForward", "Parameters": [ { "Name": "numFrames", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Smoke", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "Cancel", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Start", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Status", "Parameters": [ { "Name": "progressRatio", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "SmoothVoxelsUpgraderService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "SnippetService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "HideSelfView", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InvokeGameInvitePromptClosed", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "recipientIds", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InvokeIrisInvite", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "irisParticipantIds", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InvokeIrisInvitePromptClosed", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptGameInvite", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "nil", "Name": "experienceInviteOptions", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptIrisInvite", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowSelfView", "Parameters": [ { "Default": "LastPosition", "Name": "selfViewPosition", "Type": { "Category": "Enum", "Name": "SelfViewPosition" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CanSendGameInviteAsync", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "0", "Name": "recipientId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CanSendIrisInviteAsync", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GameInvitePromptClosed", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "recipientIds", "Type": { "Category": "Group", "Name": "Array" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "IrisInviteInitiated", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "IrisInvitePromptClosed", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptInviteRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "experienceInviteOptions", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptIrisInviteRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SelfViewHidden", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SelfViewVisible", "Parameters": [ { "Name": "selfViewPosition", "Type": { "Category": "Enum", "Name": "SelfViewPosition" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "OnIrisInviteInvoked", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "irisParticipantIds", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "SocialService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Asset", "Default": "0", "MemberType": "Property", "Name": "ChannelCount", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "NotBrowsable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "10", "MemberType": "Property", "Name": "EmitterSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Deprecated", { "PreferredDescriptorName": "RollOffMinDistance", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Asset", "Default": "false", "MemberType": "Property", "Name": "IsLoaded", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Playback", "Default": "true", "MemberType": "Property", "Name": "IsPaused", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "IsPlaying", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "IsSpatial", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Regions", "Default": "0 60000 ", "MemberType": "Property", "Name": "LoopRegion", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "Looped", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "10000", "MemberType": "Property", "Name": "MaxDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Deprecated", { "PreferredDescriptorName": "RollOffMaxDistance", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "10", "MemberType": "Property", "Name": "MinDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Deprecated", { "PreferredDescriptorName": "RollOffMinDistance", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "Pitch", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Deprecated", { "PreferredDescriptorName": "PlaybackSpeed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "PlayOnRemove", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Playback", "Default": "0", "MemberType": "Property", "Name": "PlaybackLoudness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Regions", "Default": "0 60000 ", "MemberType": "Property", "Name": "PlaybackRegion", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "PlaybackRegionsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Playback", "Default": "1", "MemberType": "Property", "Name": "PlaybackSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "Playing", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "PlayingReplicator", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Playback", "Default": "1", "MemberType": "Property", "Name": "RollOffGain", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Emitter", "Default": "10000", "MemberType": "Property", "Name": "RollOffMaxDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Emitter", "Default": "10", "MemberType": "Property", "Name": "RollOffMinDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Emitter", "Default": "Inverse", "MemberType": "Property", "Name": "RollOffMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RollOffMode" } }, { "Category": "Routing", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "SoundGroup", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "SoundGroup" } }, { "Category": "Asset", "Default": "", "MemberType": "Property", "Name": "SoundId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Asset", "Default": "0", "MemberType": "Property", "Name": "TimeLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Playback", "Default": "0", "MemberType": "Property", "Name": "TimePosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "TimePositionReplicator", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Behavior", "Default": "Default", "MemberType": "Property", "Name": "UsageContextPermission", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "UsageContext" } }, { "Category": "Playback", "Default": "0.5", "MemberType": "Property", "Name": "Volume", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "isPlaying", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "IsPlaying", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "10000", "MemberType": "Property", "Name": "xmlRead_MaxDistance_3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "10", "MemberType": "Property", "Name": "xmlRead_MinDistance_3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "Pause", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Play", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Resume", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Stop", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "pause", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Pause", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "play", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Play", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "stop", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Stop", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DidLoop", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "numOfTimesLooped", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Ended", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Loaded", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Paused", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Played", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayingUpdatedFromClient", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayingUpdatedFromServer", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Resumed", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Stopped", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TimePositionUpdatedFromClient", "Parameters": [ { "Name": "newPositionSeconds", "Type": { "Category": "Primitive", "Name": "double" } }, { "Name": "lastLuaSetTimePosition", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TimePositionUpdatedFromServer", "Parameters": [ { "Name": "newPositionSeconds", "Type": { "Category": "Primitive", "Name": "double" } }, { "Name": "lastLuaSetTimePosition", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "playbackActionSync", "Parameters": [ { "Name": "action", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Internal", "Name": "Sound", "Superclass": "Instance" }, { "Members": [ { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Priority", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } } ], "MemoryCategory": "Instances", "Name": "SoundEffect", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "State", "Default": "0.150000006", "MemberType": "Property", "Name": "Depth", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.5", "MemberType": "Property", "Name": "Mix", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.5", "MemberType": "Property", "Name": "Rate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "ChorusSoundEffect", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "0.100000001", "MemberType": "Property", "Name": "Attack", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "GainMakeup", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "40", "MemberType": "Property", "Name": "Ratio", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.100000001", "MemberType": "Property", "Name": "Release", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "SideChain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "State", "Default": "-40", "MemberType": "Property", "Name": "Threshold", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "CompressorSoundEffect", "Superclass": "SoundEffect" }, { "Members": [], "MemoryCategory": "Instances", "Name": "CustomSoundEffect", "Superclass": "SoundEffect", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "AssetSoundEffect", "Superclass": "CustomSoundEffect", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Channel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } } ], "MemoryCategory": "Instances", "Name": "ChannelSelectorSoundEffect", "Superclass": "CustomSoundEffect", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "State", "Default": "0.75", "MemberType": "Property", "Name": "Level", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "DistortionSoundEffect", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Delay", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "DryLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.5", "MemberType": "Property", "Name": "Feedback", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "WetLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "EchoSoundEffect", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "HighGain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "-20", "MemberType": "Property", "Name": "LowGain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "-10", "MemberType": "Property", "Name": "MidGain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "EqualizerSoundEffect", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "HighGain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "LowGain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "MidGain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "400 400 ", "MemberType": "Property", "Name": "MidRange", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } } ], "MemoryCategory": "Instances", "Name": "AudioEqualizer", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "0.449999988", "MemberType": "Property", "Name": "Depth", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.850000024", "MemberType": "Property", "Name": "Mix", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "5", "MemberType": "Property", "Name": "Rate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "FlangeSoundEffect", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "1.25", "MemberType": "Property", "Name": "Octave", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "PitchShiftSoundEffect", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "1.25", "MemberType": "Property", "Name": "Pitch", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "Medium", "MemberType": "Property", "Name": "WindowSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AudioWindowSize" } } ], "MemoryCategory": "Instances", "Name": "AudioPitchShifter", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "Asset", "Default": "0", "MemberType": "Property", "Name": "ChannelCount", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "NotBrowsable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Asset", "Default": "false", "MemberType": "Property", "Name": "IsLoaded", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Playback", "Default": "true", "MemberType": "Property", "Name": "IsPaused", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "IsPlaying", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "IsSpatial", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Regions", "Default": "0 60000 ", "MemberType": "Property", "Name": "LoopRegion", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "Looping", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Regions", "Default": "0 60000 ", "MemberType": "Property", "Name": "PlaybackRegion", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "PlaybackRegionsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Playback", "Default": "1", "MemberType": "Property", "Name": "PlaybackSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "Playing", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "PlayingReplicator", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Asset", "Default": "", "MemberType": "Property", "Name": "Asset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Asset", "Default": "0", "MemberType": "Property", "Name": "TimeLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Playback", "Default": "0", "MemberType": "Property", "Name": "TimePosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "TimePositionReplicator", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Behavior", "Default": "Default", "MemberType": "Property", "Name": "UsageContextPermission", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "UsageContext" } }, { "Category": "Playback", "Default": "1", "MemberType": "Property", "Name": "Volume", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "isPlaying", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "IsPlaying", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "10000", "MemberType": "Property", "Name": "xmlRead_MaxDistance_3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "10", "MemberType": "Property", "Name": "xmlRead_MinDistance_3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "Pause", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Play", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Resume", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Stop", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "pause", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Pause", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "play", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Play", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "stop", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Stop", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DidLoop", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "numOfTimesLooped", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Ended", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Loaded", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Paused", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Played", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayingUpdatedFromClient", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayingUpdatedFromServer", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Resumed", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Stopped", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TimePositionUpdatedFromClient", "Parameters": [ { "Name": "newPositionSeconds", "Type": { "Category": "Primitive", "Name": "double" } }, { "Name": "lastLuaSetTimePosition", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TimePositionUpdatedFromServer", "Parameters": [ { "Name": "newPositionSeconds", "Type": { "Category": "Primitive", "Name": "double" } }, { "Name": "lastLuaSetTimePosition", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "IsReady", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Event", "Name": "playbackActionSync", "Parameters": [ { "Name": "action", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Internal", "Name": "AudioPlayer", "Superclass": "Instance" }, { "Members": [ { "Category": "Connections", "Default": "false", "MemberType": "Property", "Name": "Connected", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Connections", "MemberType": "Property", "Name": "SourceInstance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Connections", "MemberType": "Property", "Name": "TargetInstance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Connections", "MemberType": "Property", "Name": "SourceName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Connections", "MemberType": "Property", "Name": "TargetName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "Wire", "Superclass": "Instance" }, { "Members": [ { "Category": "State", "Default": "Medium", "MemberType": "Property", "Name": "Layout", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AudioChannelLayout" } } ], "MemoryCategory": "Instances", "Name": "AudioChannelMixer", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "Medium", "MemberType": "Property", "Name": "Layout", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AudioChannelLayout" } } ], "MemoryCategory": "Instances", "Name": "AudioChannelSplitter", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "DelayTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "DryLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.5", "MemberType": "Property", "Name": "Feedback", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "RampTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "WetLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioEcho", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "0.45", "MemberType": "Property", "Name": "Depth", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.85", "MemberType": "Property", "Name": "Mix", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "5", "MemberType": "Property", "Name": "Rate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioFlanger", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "MaxLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.01", "MemberType": "Property", "Name": "Release", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioLimiter", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "Interactions", "Default": "", "MemberType": "Property", "Name": "AudioInteractionGroup", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "AcousticSimulationEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Listening", "Default": "false", "MemberType": "Property", "Name": "AngleAttenuation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Listening", "Default": "false", "MemberType": "Property", "Name": "DistanceAttenuation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } } ], "MemoryCategory": "Instances", "Name": "AudioListener", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "PositionOverride", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Interactions", "Default": "", "MemberType": "Property", "Name": "AudioInteractionGroup", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "AcousticSimulationEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Emission", "Default": "false", "MemberType": "Property", "Name": "AngleAttenuation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Emission", "Default": "false", "MemberType": "Property", "Name": "DistanceAttenuation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } } ], "MemoryCategory": "Instances", "Name": "AudioEmitter", "Superclass": "Instance" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "0.45", "MemberType": "Property", "Name": "Depth", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.85", "MemberType": "Property", "Name": "Mix", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "5", "MemberType": "Property", "Name": "Rate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioChorus", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "0.5", "MemberType": "Property", "Name": "DecayRatio", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "1.5", "MemberType": "Property", "Name": "DecayTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Density", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Diffusion", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "DryLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.02", "MemberType": "Property", "Name": "EarlyDelayTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "20000", "MemberType": "Property", "Name": "HighCutFrequency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.04", "MemberType": "Property", "Name": "LastDelayTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "250", "MemberType": "Property", "Name": "LowShelfFrequency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "LowShelfGain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "5000", "MemberType": "Property", "Name": "ReferenceFrequency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "-6", "MemberType": "Property", "Name": "WetLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioReverb", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "0.01", "MemberType": "Property", "Name": "Attack", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.1", "MemberType": "Property", "Name": "Release", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "-36 -24 ", "MemberType": "Property", "Name": "Threshold", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } } ], "MemoryCategory": "Instances", "Name": "AudioGate", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "Asset", "Default": "false", "MemberType": "Property", "Name": "IsLoaded", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Asset", "Default": "0", "MemberType": "Property", "Name": "Pitch", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Asset", "Default": "1", "MemberType": "Property", "Name": "Speed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "", "MemberType": "Property", "Name": "Text", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "", "MemberType": "Property", "Name": "TimeLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "", "MemberType": "Property", "Name": "VoiceId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "IsPlaying", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "Looping", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Asset", "Default": "1", "MemberType": "Property", "Name": "PlaybackSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Asset", "Default": "0", "MemberType": "Property", "Name": "TimePosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Volume", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioTextToSpeech", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Depth", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.5", "MemberType": "Property", "Name": "Duty", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "5", "MemberType": "Property", "Name": "Frequency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "Shape", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "Skew", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "Square", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioTremolo", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "0.1", "MemberType": "Property", "Name": "Attack", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "MakeupGain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "40", "MemberType": "Property", "Name": "Ratio", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.1", "MemberType": "Property", "Name": "Release", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "-40", "MemberType": "Property", "Name": "Threshold", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioCompressor", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Volume", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioFader", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "2000", "MemberType": "Property", "Name": "Frequency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "Gain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.707", "MemberType": "Property", "Name": "Q", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "Medium", "MemberType": "Property", "Name": "FilterType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AudioFilterType" } } ], "MemoryCategory": "Instances", "Name": "AudioFilter", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "Recording", "Default": "true", "MemberType": "Property", "Name": "Active", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Recording", "Default": "false", "MemberType": "Property", "Name": "IsReady", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Recording", "Default": "false", "MemberType": "Property", "Name": "Muted", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Recording", "Default": "false", "MemberType": "Property", "Name": "MutedByLocalUser", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Recording", "MemberType": "Property", "Name": "Player", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Player" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Volume", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioDeviceInput", "Superclass": "Instance" }, { "Members": [ { "Category": "State", "MemberType": "Property", "Name": "Player", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Player" } } ], "MemoryCategory": "Instances", "Name": "AudioDeviceOutput", "Superclass": "Instance" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "0.5", "MemberType": "Property", "Name": "Level", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioDistortion", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "Metering", "Default": "true", "MemberType": "Property", "Name": "SpectrumEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Metering", "Default": "0", "MemberType": "Property", "Name": "PeakLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Metering", "Default": "0", "MemberType": "Property", "Name": "RmsLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "State", "Default": "Medium", "MemberType": "Property", "Name": "WindowSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AudioWindowSize" } } ], "MemoryCategory": "Instances", "Name": "AudioAnalyzer", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "1.5", "MemberType": "Property", "Name": "DecayTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Density", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Diffusion", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "-6", "MemberType": "Property", "Name": "DryLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "WetLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "ReverbSoundEffect", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Depth", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.5", "MemberType": "Property", "Name": "Duty", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "5", "MemberType": "Property", "Name": "Frequency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "TremoloSoundEffect", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "0.5", "MemberType": "Property", "Name": "Volume", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Internal", "Name": "SoundGroup", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "NoReverb", "MemberType": "Property", "Name": "AmbientReverb", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ReverbType" } }, { "Category": "Data", "Default": "3.32999992", "MemberType": "Property", "Name": "DistanceFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "DopplerScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "RespectFilteringEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "RolloffScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "Automatic", "MemberType": "Property", "Name": "VolumetricAudio", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "VolumetricAudio" } }, { "MemberType": "Function", "Name": "BeginRecording", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetInputDevice", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetInputDevices", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetListener", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetOutputDevice", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetOutputDevices", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSoundMemoryData", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PlayLocalSound", "Parameters": [ { "Name": "sound", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetInputDevice", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetListener", "Parameters": [ { "Name": "listenerType", "Type": { "Category": "Enum", "Name": "ListenerType" } }, { "Name": "listener", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetOutputDevice", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetRecordingDevice", "Parameters": [ { "Name": "deviceIndex", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "EndRecording", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRecordingDevices", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ClientLoggedEvent", "Parameters": [ { "Name": "sessionIdRaw", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DeviceListChanged", "Parameters": [ { "Name": "newDevices", "Type": { "Category": "Group", "Name": "Tuple" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "SoundService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "1, 1, 1", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "0.564706, 0.0980392, 1", "MemberType": "Property", "Name": "SparkleColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "TimeScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "FastForward", "Parameters": [ { "Name": "numFrames", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Sparkles", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "SpawnerService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FrameId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FrameName", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FrameType", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DebuggerFrameType" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Globals", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "DebuggerVariable" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Line", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Locals", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "DebuggerVariable" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Populated", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Script", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Upvalues", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "DebuggerVariable" } } ], "MemoryCategory": "Instances", "Name": "StackFrame", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "StandalonePluginScripts", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "StarterGear", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "StarterPack", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Character", "Default": "true", "MemberType": "Property", "Name": "AllowCustomAnimations", "Security": { "Read": "None", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Mobile", "Default": "true", "MemberType": "Property", "Name": "AutoJumpEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Character", "Default": "", "MemberType": "Property", "Name": "AvatarJointUpgrade", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotBrowsable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AvatarJointUpgrade" } }, { "Category": "Camera", "Default": "400", "MemberType": "Property", "Name": "CameraMaxZoomDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "0.5", "MemberType": "Property", "Name": "CameraMinZoomDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "Classic", "MemberType": "Property", "Name": "CameraMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "CameraMode" } }, { "Category": "Character Jump Settings", "Default": "7.19999981", "MemberType": "Property", "Name": "CharacterJumpHeight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Character Jump Settings", "Default": "50", "MemberType": "Property", "Name": "CharacterJumpPower", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Character", "Default": "89", "MemberType": "Property", "Name": "CharacterMaxSlopeAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Character Jump Settings", "Default": "true", "MemberType": "Property", "Name": "CharacterUseJumpPower", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Character", "Default": "16", "MemberType": "Property", "Name": "CharacterWalkSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Character", "Default": "Default", "MemberType": "Property", "Name": "DeathStyle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotBrowsable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DeathStyle" } }, { "Category": "Camera", "Default": "Zoom", "MemberType": "Property", "Name": "DevCameraOcclusionMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DevCameraOcclusionMode" } }, { "Category": "Camera", "Default": "UserChoice", "MemberType": "Property", "Name": "DevComputerCameraMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DevComputerCameraMovementMode" } }, { "Category": "Controls", "Default": "UserChoice", "MemberType": "Property", "Name": "DevComputerMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DevComputerMovementMode" } }, { "Category": "Camera", "Default": "UserChoice", "MemberType": "Property", "Name": "DevTouchCameraMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DevTouchCameraMovementMode" } }, { "Category": "Controls", "Default": "UserChoice", "MemberType": "Property", "Name": "DevTouchMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DevTouchMovementMode" } }, { "Category": "Character", "Default": "Default", "MemberType": "Property", "Name": "EnableDynamicHeads", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "LoadDynamicHeads" } }, { "Category": "Controls", "Default": "true", "MemberType": "Property", "Name": "EnableMouseLockOption", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Character", "Default": "0", "MemberType": "Property", "Name": "GameSettingsAssetIDFace", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Character", "Default": "0", "MemberType": "Property", "Name": "GameSettingsAssetIDHead", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Character", "Default": "0", "MemberType": "Property", "Name": "GameSettingsAssetIDLeftArm", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Character", "Default": "0", "MemberType": "Property", "Name": "GameSettingsAssetIDLeftLeg", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Character", "Default": "0", "MemberType": "Property", "Name": "GameSettingsAssetIDPants", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Character", "Default": "0", "MemberType": "Property", "Name": "GameSettingsAssetIDRightArm", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Character", "Default": "0", "MemberType": "Property", "Name": "GameSettingsAssetIDRightLeg", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Character", "Default": "0", "MemberType": "Property", "Name": "GameSettingsAssetIDShirt", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Character", "Default": "0", "MemberType": "Property", "Name": "GameSettingsAssetIDTeeShirt", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Character", "Default": "0", "MemberType": "Property", "Name": "GameSettingsAssetIDTorso", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Character", "Default": "R15", "MemberType": "Property", "Name": "GameSettingsAvatar", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "GameAvatarType" } }, { "Category": "Character", "Default": "OuterBox", "MemberType": "Property", "Name": "GameSettingsR15Collision", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "R15CollisionType" } }, { "Category": "Character", "Default": "0 1 ", "MemberType": "Property", "Name": "GameSettingsScaleRangeBodyType", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Character", "Default": "0.95 1 ", "MemberType": "Property", "Name": "GameSettingsScaleRangeHead", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Character", "Default": "0.9 1.05 ", "MemberType": "Property", "Name": "GameSettingsScaleRangeHeight", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Character", "Default": "0 1 ", "MemberType": "Property", "Name": "GameSettingsScaleRangeProportion", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Character", "Default": "0.7 1 ", "MemberType": "Property", "Name": "GameSettingsScaleRangeWidth", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Data", "Default": "100", "MemberType": "Property", "Name": "HealthDisplayDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Controls", "Default": "Default", "MemberType": "Property", "Name": "HumanoidStateMachineMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotBrowsable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HumanoidStateMachineMode" } }, { "Category": "Character", "Default": "true", "MemberType": "Property", "Name": "LoadCharacterAppearance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Character", "Default": "Default", "MemberType": "Property", "Name": "LoadCharacterLayeredClothing", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "LoadCharacterLayeredClothing" } }, { "Category": "Character", "Default": "Default", "MemberType": "Property", "Name": "LoadCharacterLayeredClothing ", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "LoadCharacterLayeredClothing" } }, { "Category": "Data", "Default": "100", "MemberType": "Property", "Name": "NameDisplayDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Character", "Default": "true", "MemberType": "Property", "Name": "UserEmotesEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "ClearDefaults", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StarterPlayer", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "StarterPlayerScripts", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "StarterCharacterScripts", "Superclass": "StarterPlayerScripts", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ContactsCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DataReceiveKbps", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DataSendKbps", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HeartbeatTimeMs", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "InstanceCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MovingPrimitivesCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PhysicsReceiveKbps", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PhysicsSendKbps", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PhysicsStepTimeMs", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PrimitivesCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "GetBrowserTrackerId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMemoryUsageMbForTag", "Parameters": [ { "Name": "tag", "Type": { "Category": "Enum", "Name": "DeveloperMemoryTag" } } ], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTotalMemoryUsageMb", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPaginatedMemoryByTexture", "Parameters": [ { "Name": "queryType", "Type": { "Category": "Enum", "Name": "TextureQueryType" } }, { "Name": "pageIndex", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "pageSize", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Stats", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DisplayName", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "GetValue", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "double" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetValueString", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StatsItem", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "RunningAverageItemDouble", "Superclass": "StatsItem", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "RunningAverageItemInt", "Superclass": "StatsItem", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "RunningAverageTimeIntervalItem", "Superclass": "StatsItem", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "TotalCountTimeIntervalItem", "Superclass": "StatsItem", "Tags": [ "NotCreatable" ] }, { "Members": [ { "MemberType": "Function", "Name": "FinishTask", "Parameters": [ { "Name": "taskId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendReport", "Parameters": [ { "Name": "reportName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartTask", "Parameters": [ { "Name": "reportName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "taskName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StopWatchReporter", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "\"TODO\" Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "\"function\" Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "\"local\" Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "\"nil\" Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "\"self\" Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Active Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Active Hover Over Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "General", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Always Save Script Changes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Animate Hover Over", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Auto Clean Empty Line", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Auto Closing Brackets", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Auto Closing Quotes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Auto Delete Closing Brackets and Quotes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Auto Indent Rule", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AutoIndentRule" } }, { "Category": "Auto-Recovery", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Auto-Recovery Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Auto-Recovery", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Auto-Recovery Interval (Minutes)", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Auto-Recovery", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Auto-Recovery Path", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "QDir" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Automatically commit locked scripts when you save or publish to Roblox", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Automatically trigger AI Code Completion", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Background Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "General", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Basic Objects Display Mode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ListDisplayMode" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Bool Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Bracket Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Built-in Function Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Camera", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Camera Mouse Wheel Speed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Camera Pan Speed", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Camera Shift Speed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Camera Speed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Camera Zoom to Mouse Position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Output", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Clear Output On Start", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Lua Debugger", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CommandBarLocalState", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Comment Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Current Line Highlight Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Debugger Current Line Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Debugger Error Line Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Directories", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DefaultScriptFileDir", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "QDir" } }, { "Category": "Browsing", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DeprecatedObjectsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "General", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DisplayLanguage", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Doc View Code Background Color", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Autocomplete", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Autocomplete Doc View", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Advanced", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable CoreScript Debugger", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Advanced", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Http Sandboxing", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Advanced", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Internal Beta Features", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Advanced", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Internal Features", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Script Analysis", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Scrollbar Markers", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Signature Help", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Signature Help Doc View", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Temporary Tabs", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Temporary Tabs In Explorer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Type Hover", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EnableIndentationRulers", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EnableOnTypeAutocomplete", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Error Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Find Selection Background Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Font", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "QFont" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Format On Paste", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Format On Type", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Function Name Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Highlight Current Line", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Highlight Occurances", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HintColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Hover Animate Speed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HoverAnimateSpeed" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Hover Box Thickness", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Hover Line Thickness", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Hover Over Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Directories", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IconOverrideDir", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "QDir" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Indent Using Spaces", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IndentationRulerColor", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "InformationColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Keyword Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Primary Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Line Thickness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Directories", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LocalAssetsFolder", "Security": { "Read": "None", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "QDir" } }, { "Category": "Lua Debugger", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LuaDebuggerEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Lua Debugger", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LuaDebuggerEnabledAtStartup", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Luau Keyword Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Audio", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Main Volume", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Matching Word Background Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Output", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Maximum Output Lines", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Menu Item Background Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Method Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Number Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Audio", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Only Play Audio from Window in Focus", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Operator Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Output", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Output Font", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "QFont" } }, { "Category": "Output", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Output Layout Mode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "OutputLayoutMode" } }, { "Category": "Browsing", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PermissionLevelShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PermissionLevelShown" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Physical Draggers Select Scope By Default", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Pivot Snap To Geometry Color", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Lua Debugger", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PluginDebuggingEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Directories", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PluginsDir", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "QDir" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Primary Text Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Property Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Directories", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ReloadBuiltinPluginsOnChange", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Directories", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ReloadLocalPluginsOnChange", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "General", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Render Throttle Percentage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Advanced", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Respect Studio shortcuts when game has focus", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Ruler Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Rulers", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Undo", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RuntimeUndoBehavior", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RuntimeUndoBehavior" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Script Editor Color Preset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "StudioScriptEditorColorPresets" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Script Editor Scrollbar Background Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Script Editor Scrollbar Handle Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ScriptEditorMenuBorderColor", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ScriptEditorShouldShowPluginMethods", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Lua Debugger", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ScriptTimeoutLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Scroll Past Last Line", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Secondary Text Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Select Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Primary Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Select/Hover Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Selected Menu Item Background Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Selected Text Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Selection Background Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Selection Box Thickness", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Selection Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Selection Line Thickness", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Audio", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Server Audio Behavior", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ServerAudioBehavior" } }, { "Category": "Advanced", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Set Pivot of Imported Parts", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Explorer", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Core GUI in Explorer while Playing", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Advanced", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Diagnostics Bar", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Explorer", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show FileSyncService", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Explorer", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Hidden Objects in Explorer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Hover Over", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Visualization", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Light Guides", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Visualization", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Navigation Labels", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Visualization", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Navigation Mesh", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Visualization", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Pathfinding Links", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Explorer", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Plugin GUI Service in Explorer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Visualization", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Singly Selected Attachment Parent Frame", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Whitespace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Explorer", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show plus button on hover in Explorer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Explorer", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ShowCorePackagesInExplorer", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Skip Closing Brackets and Quotes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "String Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Tab Width", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Text Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Text Wrapping", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "General", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Theme", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "General", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UI Theme", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "UITheme" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Use Bounding Box Move Handles", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Warning Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Whitespace Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "MemberType": "Function", "Name": "GetAvailableThemes", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ThemeChanged", "Parameters": [], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Studio", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "ConvertToPackageUpload", "Parameters": [ { "Name": "uploadUrl", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "cloneInstances", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "originalInstances", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PublishPackage", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "publishInfo", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowSaveToRoblox", "Parameters": [ { "Name": "instances", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "assetType", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SerializeInstances", "Parameters": [ { "Name": "instances", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnConvertToPackageResult", "Parameters": [ { "Name": "isSuccessful", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "errorMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnPublishPackageResult", "Parameters": [ { "Name": "result", "Type": { "Category": "Group", "Name": "Dictionary" } }, { "Name": "errorMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnSaveToRoblox", "Parameters": [ { "Name": "instances", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "assetType", "Type": { "Category": "Group", "Name": "Variant" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StudioAssetService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "0.5, 0", "MemberType": "Property", "Name": "AnchorPoint", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "IsArrowVisible", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "IsNextVisible", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "RowName", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Text", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Title", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "SetOnNextClicked", "Parameters": [ { "Name": "onClick", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StudioCallout", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "EnableScriptCollabByDefaultOnLoad", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "StudioData", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "State", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "HasMultiTouchStarted", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "IsMultiTouchEmulationOn", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "IsMultiTouchEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "PivotPosition", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "MemberType": "Function", "Name": "GetMaxNumTouches", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTouchInBounds", "Parameters": [ { "Name": "index", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTouchPosition", "Parameters": [ { "Name": "index", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "EmulatePCDeviceWithResolution", "Parameters": [ { "Name": "deviceId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "resolution", "Type": { "Category": "DataType", "Name": "Vector2" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCurrentDeviceId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCurrentOrientation", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "ScreenOrientation" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HasDeviceWithId", "Parameters": [ { "Name": "deviceId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetCurrentDeviceId", "Parameters": [ { "Name": "deviceId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetCurrentOrientation", "Parameters": [ { "Name": "orientation", "Type": { "Category": "Enum", "Name": "ScreenOrientation" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CurrentDeviceIdChanged", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OrientationChanged", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchInBoundsChanged", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchPositionsChanged", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StudioDeviceEmulatorService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "StudioObjectBase", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "StudioWidget", "Superclass": "StudioObjectBase" }, { "Members": [ { "MemberType": "Function", "Name": "ClearUploadNames", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PublishAs", "Parameters": [ { "Name": "universeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "groupId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "isPublish", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "publishParameters", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PublishThenTurnOnTeamCreate", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RefreshDocumentDisplayName", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTeamCreateOnPublishInfo", "Parameters": [ { "Name": "shouldTurnOnTcOnPublish", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "newPlaceName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetUniverseDisplayName", "Parameters": [ { "Name": "newName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetUploadNames", "Parameters": [ { "Name": "placeName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "universeName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowSaveOrPublishPlaceToRoblox", "Parameters": [ { "Name": "showGameSelect", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "isPublish", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "closeMode", "Type": { "Category": "Enum", "Name": "StudioCloseMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GameNameUpdated", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GamePublishCancelled", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GamePublishFinished", "Parameters": [ { "Name": "success", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "gameId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnSaveOrPublishPlaceToRoblox", "Parameters": [ { "Name": "showGameSelect", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "isPublish", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "closeMode", "Type": { "Category": "Enum", "Name": "StudioCloseMode" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StudioPublishService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "StudioScriptDebugEventListener", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetSdk", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetSdk", "Parameters": [ { "Name": "sdk", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StudioSdkService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "State", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "ActiveScript", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "AlignDraggedObjects", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DraggerSolveConstraints", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DrawConstraintsOnTop", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "GridSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "HoverInstance", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "InstalledPluginData", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "PivotSnapToGeometry", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "RotateIncrement", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "ShowConstraintDetails", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "StudioLocaleId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "UseLocalSpace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "AnimationIdSelected", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CopyToClipboard", "Parameters": [ { "Name": "stringToCopy", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBadgeConfigureUrl", "Parameters": [ { "Name": "badgeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBadgeUploadUrl", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetClassIcon", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPlaceIsPersistedToCloud", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetResourceByCategory", "Parameters": [ { "Name": "category", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetStartupAssetId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetStartupPluginId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTermsOfUseUrl", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GizmoRaycast", "Parameters": [ { "Name": "origin", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "direction", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Default": "RaycastParams{IgnoreWater=false, BruteForceAllSlow=false, RespectCanCollide=false, CollisionGroup=Default, FilterDescendantsInstances={}}", "Name": "raycastParams", "Type": { "Category": "DataType", "Name": "RaycastParams" } } ], "ReturnType": { "Category": "DataType", "Name": "RaycastResult" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HasInternalPermission", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsPluginInstalled", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsPluginUpToDate", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "currentAssetVersion", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenInBrowser_DONOTUSE", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestClose", "Parameters": [ { "Name": "closeMode", "Type": { "Category": "Enum", "Name": "StudioCloseMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPluginEnabled", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "state", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowPlaceVersionHistoryDialog", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowPublishToRoblox", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UninstallPlugin", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UpdatePluginManagement", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptImportFile", "Parameters": [ { "Default": "{}", "Name": "fileTypeFilter", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptImportFiles", "Parameters": [ { "Default": "{}", "Name": "fileTypeFilter", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TryInstallPlugin", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "assetVersionId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnImportFromRoblox", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnOpenGameSettings", "Parameters": [ { "Name": "pageIdentifier", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnOpenManagePackagePlugin", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnPluginInstalledFromToolbox", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnPluginInstalledFromWeb", "Parameters": [ { "Name": "pluginId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnPublishAsPlugin", "Parameters": [ { "Name": "instances", "Type": { "Category": "DataType", "Name": "Objects" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnSaveToRoblox", "Parameters": [ { "Name": "instances", "Type": { "Category": "DataType", "Name": "Objects" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptTransformPluginCheckEnable", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SaveLocallyAsComplete", "Parameters": [ { "Name": "success", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StudioService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetColor", "Parameters": [ { "Name": "styleguideitem", "Type": { "Category": "Enum", "Name": "StudioStyleGuideColor" } }, { "Default": "Default", "Name": "modifier", "Type": { "Category": "Enum", "Name": "StudioStyleGuideModifier" } } ], "ReturnType": { "Category": "DataType", "Name": "Color3" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StudioTheme", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetStyleRules", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertStyleRule", "Parameters": [ { "Name": "rule", "Type": { "Category": "Class", "Name": "StyleRule" } }, { "Name": "index", "Type": { "Category": "Primitive", "Name": "int?" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetStyleRules", "Parameters": [ { "Name": "rules", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StyleRulesChanged", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "StyleBase", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "-1", "MemberType": "Property", "Name": "Index", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "PropertiesSerialize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Selector", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "SelectorError", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "GetProperties", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPropertiesResolved", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetProperty", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPropertyResolved", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetProperties", "Parameters": [ { "Name": "table", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetProperty", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "StyleRule", "Superclass": "StyleBase" }, { "Members": [ { "MemberType": "Function", "Name": "GetDerives", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetDerives", "Parameters": [ { "Name": "derives", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "StyleSheet", "Superclass": "StyleBase" }, { "Members": [ { "Category": "Data", "Default": "-1", "MemberType": "Property", "Name": "Index", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "StyleSheet", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "StyleSheet" } } ], "MemoryCategory": "Gui", "Name": "StyleDerive", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "StyleSheet", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "StyleSheet" } } ], "MemoryCategory": "Gui", "Name": "StyleLink", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "GetAppliedStyles", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetStyleInfo", "Parameters": [ { "Name": "style", "Type": { "Category": "Class", "Name": "StyleRule" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetStyleSheetDerivesChain", "Parameters": [ { "Name": "styleSheet", "Type": { "Category": "Class", "Name": "StyleSheet" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetStyleSheetInfo", "Parameters": [ { "Name": "styleSheet", "Type": { "Category": "Class", "Name": "StyleSheet" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "StylingService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Appearance", "Default": "Overlay", "MemberType": "Property", "Name": "AlphaMode", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AlphaMode" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "ColorMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "MetalnessMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "NormalMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "RoughnessMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "TexturePack", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "Instances", "Name": "SurfaceAppearance", "Superclass": "Instance" }, { "Members": [ { "Category": "Diagnostics", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SchedulerDutyCycle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Diagnostics", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SchedulerRate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Configuration", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ThreadPoolConfig", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ThreadPoolConfig" } }, { "Category": "Diagnostics", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ThreadPoolSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } } ], "MemoryCategory": "Instances", "Name": "TaskScheduler", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "AutoAssignable", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "AutoColorCharacters", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "-1", "MemberType": "Property", "Name": "ChildOrder", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Score", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TeamColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "MemberType": "Function", "Name": "GetPlayers", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Event", "Name": "PlayerAdded", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayerRemoved", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Team", "Superclass": "Instance" }, { "Members": [ { "Category": "Camera", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "InitialCameraCFrame", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } } ], "MemoryCategory": "Instances", "Name": "TeamCreateData", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Event", "Name": "TeamCreatePublishResult", "Parameters": [ { "Name": "publishSuccessful", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "statusCode", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "errMessage", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "rawMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TeamCreateReplicatedMessage", "Parameters": [ { "Name": "messageType", "Type": { "Category": "Enum", "Name": "MessageType" } }, { "Name": "failureMessage", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "statusCode", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "isPublish", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "authorName", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TeamCreateSaveResult", "Parameters": [ { "Name": "saveSuccessful", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "statusCode", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "errMessage", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "rawMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TeamCreatePublishService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "CloseGameIfUserDoesntHavePerms", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ToggleManageCollaborators", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TeamCreateService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetTeams", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RebalanceTeams", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Teams", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PrivateServerId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ReservedServerAccessCode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "TeleportAsyncResult", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ReservedServerAccessCode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ServerInstanceId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "ShouldReserveServer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "GetTeleportData", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTeleportData", "Parameters": [ { "Name": "teleportData", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TeleportOptions", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CustomizedTeleportUI", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "Block", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetArrivingTeleportGui", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetLocalPlayerTeleportData", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTeleportSetting", "Parameters": [ { "Name": "setting", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTeleportGui", "Parameters": [ { "Name": "gui", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTeleportSetting", "Parameters": [ { "Name": "setting", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Teleport", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Default": "nil", "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "teleportData", "Type": { "Category": "Group", "Name": "Variant" } }, { "Default": "nil", "Name": "customLoadingScreen", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TeleportCancel", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TeleportToPlaceInstance", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "instanceId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "nil", "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "", "Name": "spawnName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "teleportData", "Type": { "Category": "Group", "Name": "Variant" } }, { "Default": "nil", "Name": "customLoadingScreen", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TeleportToPrivateServer", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "reservedServerAccessCode", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "players", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "", "Name": "spawnName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "teleportData", "Type": { "Category": "Group", "Name": "Variant" } }, { "Default": "nil", "Name": "customLoadingScreen", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TeleportToSpawnByName", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "spawnName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "nil", "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "teleportData", "Type": { "Category": "Group", "Name": "Variant" } }, { "Default": "nil", "Name": "customLoadingScreen", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPlayerPlaceInstanceAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReserveServer", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TeleportAsync", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "players", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "nil", "Name": "teleportOptions", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TeleportPartyAsync", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "players", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "teleportData", "Type": { "Category": "Group", "Name": "Variant" } }, { "Default": "nil", "Name": "customLoadingScreen", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnblockAsync", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LocalPlayerArrivedFromTeleport", "Parameters": [ { "Name": "loadingGui", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "dataTable", "Type": { "Category": "Group", "Name": "Variant" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MenuTeleportAttempt", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TeleportInProgress", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "teleportInfo", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TeleportInitFailed", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "teleportResult", "Type": { "Category": "Enum", "Name": "TeleportResult" } }, { "Name": "errorMessage", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "teleportOptions", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TeleportInitFailedInternal", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "teleportResult", "Type": { "Category": "Enum", "Name": "TeleportResult" } }, { "Name": "errorMessage", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TeleportService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "TemporaryCageMeshProvider", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "TemporaryScriptService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "ColorMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "Side", "MemberType": "Property", "Name": "Face", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TerrainFace" } }, { "Category": "Appearance", "Default": "Regular", "MemberType": "Property", "Name": "MaterialPattern", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "MaterialPattern" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "MetalnessMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "NormalMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "RoughnessMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "10", "MemberType": "Property", "Name": "StudsPerTile", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Internal", "Default": "", "MemberType": "Property", "Name": "TexturePack", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "Instances", "Name": "TerrainDetail", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "ExtentsMax", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3int16" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "ExtentsMin", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3int16" } }, { "Category": "Data", "Default": "__api_dump_write_only_property__", "MemberType": "Property", "Name": "GridV3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "WriteOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "IsSmooth", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "1, 1, 1", "MemberType": "Property", "Name": "SizeInCells", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "\u0001\u0005", "MemberType": "Property", "Name": "SmoothGrid", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "MemberType": "Function", "Name": "ApplyTransform", "Parameters": [ { "Name": "rotation", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ApplyTransformSubregion", "Parameters": [ { "Name": "rotation", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3int16" } } ], "ReturnType": { "Category": "Class", "Name": "TerrainRegion" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ConvertToSmooth", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRegionWireframe", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TerrainRegion", "Superclass": "Instance" }, { "Members": [ { "Category": "Physics", "Default": "true", "MemberType": "Property", "Name": "AutoRuns", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Description", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Results", "Default": "0", "MemberType": "Property", "Name": "ErrorCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Settings", "Default": "false", "MemberType": "Property", "Name": "ExecuteWithStudioRun", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Physics", "Default": "true", "MemberType": "Property", "Name": "Is30FpsThrottleEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Physics", "Default": "true", "MemberType": "Property", "Name": "IsPhysicsEnvironmentalThrottled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Physics", "Default": "true", "MemberType": "Property", "Name": "IsSleepAllowed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Settings", "Default": "0", "MemberType": "Property", "Name": "NumberOfPlayers", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Settings", "Default": "0", "MemberType": "Property", "Name": "SimulateSecondsLag", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Results", "Default": "0", "MemberType": "Property", "Name": "TestCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Settings", "Default": "10", "MemberType": "Property", "Name": "Timeout", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Results", "Default": "0", "MemberType": "Property", "Name": "WarnCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "Check", "Parameters": [ { "Name": "condition", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "description", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "nil", "Name": "source", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "0", "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Checkpoint", "Parameters": [ { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "nil", "Name": "source", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "0", "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Done", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Error", "Parameters": [ { "Name": "description", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "nil", "Name": "source", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "0", "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Fail", "Parameters": [ { "Name": "description", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "nil", "Name": "source", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "0", "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Message", "Parameters": [ { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "nil", "Name": "source", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "0", "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Require", "Parameters": [ { "Name": "condition", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "description", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "nil", "Name": "source", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "0", "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ScopeTime", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Warn", "Parameters": [ { "Name": "condition", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "description", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "nil", "Name": "source", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "0", "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "isFeatureEnabled", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Run", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerCollectConditionalResult", "Parameters": [ { "Name": "condition", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerCollectResult", "Parameters": [ { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TestService", "Superclass": "Instance", "Tags": [ "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "TextBoxService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "DisplaySystemMessage", "Parameters": [ { "Name": "systemMessage", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "metadata", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "TextChatMessage" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddUserAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendAsync", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "metadata", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "TextChatMessage" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MessageReceived", "Parameters": [ { "Name": "incomingMessage", "Type": { "Category": "Class", "Name": "TextChatMessage" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "OnIncomingMessage", "Parameters": [ { "Name": "message", "Type": { "Category": "Class", "Name": "TextChatMessage" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "ShouldDeliverCallback", "Parameters": [ { "Name": "message", "Type": { "Category": "Class", "Name": "TextChatMessage" } }, { "Name": "textSource", "Type": { "Category": "Class", "Name": "TextSource" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TextChannel", "Superclass": "Instance" }, { "Members": [ { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "", "MemberType": "Property", "Name": "PrimaryAlias", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Behavior", "Default": "", "MemberType": "Property", "Name": "SecondaryAlias", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Event", "Name": "Triggered", "Parameters": [ { "Name": "originTextSource", "Type": { "Category": "Class", "Name": "TextSource" } }, { "Name": "unfilteredText", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TextChatCommand", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "TextChatConfigurations", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Behavior", "Default": "HumanoidRootPart", "MemberType": "Property", "Name": "AdorneeName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Appearance", "Default": "0.980392, 0.980392, 0.980392", "MemberType": "Property", "Name": "BackgroundColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0.10000000000000000555", "MemberType": "Property", "Name": "BackgroundTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Behavior", "Default": "15", "MemberType": "Property", "Name": "BubbleDuration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "6", "MemberType": "Property", "Name": "BubblesSpacing", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "GothamMedium", "MemberType": "Property", "Name": "Font", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Font" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "FontFace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Font" } }, { "Category": "Behavior", "Default": "0, 0, 0", "MemberType": "Property", "Name": "LocalPlayerStudsOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Behavior", "Default": "3", "MemberType": "Property", "Name": "MaxBubbles", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "100", "MemberType": "Property", "Name": "MaxDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "40", "MemberType": "Property", "Name": "MinimizeDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "true", "MemberType": "Property", "Name": "TailVisible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0.223529, 0.231373, 0.239216", "MemberType": "Property", "Name": "TextColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "16", "MemberType": "Property", "Name": "TextSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Behavior", "Default": "0", "MemberType": "Property", "Name": "VerticalStudsOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "BubbleChatConfiguration", "Superclass": "TextChatConfigurations", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "AbsolutePosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "AbsolutePositionWrite", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "AbsoluteSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "AbsoluteSizeWrite", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Appearance", "Default": "0.0980392, 0.105882, 0.113725", "MemberType": "Property", "Name": "BackgroundColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0.2000000000000000111", "MemberType": "Property", "Name": "BackgroundTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "FontFace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Font" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "IsFocused", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "IsFocusedWrite", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "Slash", "MemberType": "Property", "Name": "KeyboardKeyCode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "KeyCode" } }, { "Category": "Appearance", "Default": "0.698039, 0.698039, 0.698039", "MemberType": "Property", "Name": "PlaceholderColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TargetTextChannel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "TextChannel" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TextBox", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "TextBox" } }, { "Category": "Appearance", "Default": "1, 1, 1", "MemberType": "Property", "Name": "TextColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "14", "MemberType": "Property", "Name": "TextSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Appearance", "Default": "0, 0, 0", "MemberType": "Property", "Name": "TextStrokeColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0.5", "MemberType": "Property", "Name": "TextStrokeTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } } ], "MemoryCategory": "Instances", "Name": "ChatInputBarConfiguration", "Superclass": "TextChatConfigurations", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "AbsolutePosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "AbsolutePositionWrite", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "AbsoluteSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "AbsoluteSizeWrite", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Appearance", "Default": "0.0980392, 0.105882, 0.113725", "MemberType": "Property", "Name": "BackgroundColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0.2999999999999999889", "MemberType": "Property", "Name": "BackgroundTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "FontFace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Font" } }, { "Category": "Behavior", "Default": "1", "MemberType": "Property", "Name": "HeightScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "Left", "MemberType": "Property", "Name": "HorizontalAlignment", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "Unsafe", "ValueType": { "Category": "Enum", "Name": "HorizontalAlignment" } }, { "Category": "Appearance", "Default": "1, 1, 1", "MemberType": "Property", "Name": "TextColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "14", "MemberType": "Property", "Name": "TextSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Appearance", "Default": "0, 0, 0", "MemberType": "Property", "Name": "TextStrokeColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0.5", "MemberType": "Property", "Name": "TextStrokeTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Data", "Default": "Top", "MemberType": "Property", "Name": "VerticalAlignment", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "Unsafe", "ValueType": { "Category": "Enum", "Name": "VerticalAlignment" } }, { "Category": "Behavior", "Default": "1", "MemberType": "Property", "Name": "WidthScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "ChatWindowConfiguration", "Superclass": "TextChatConfigurations", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "BubbleChatMessageProperties", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BubbleChatMessageProperties" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "MessageId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Metadata", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "PrefixText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Status", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextChatMessageStatus" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Text", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TextChannel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "TextChannel" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TextSource", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "TextSource" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Timestamp", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "DateTime" } } ], "MemoryCategory": "Instances", "Name": "TextChatMessage", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "PrefixText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Text", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "TextChatMessageProperties", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "LegacyChatService", "MemberType": "Property", "Name": "ChatVersion", "Security": { "Read": "None", "Write": "NotAccessibleSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ChatVersion" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "CreateDefaultCommands", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "CreateDefaultTextChannels", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "DisplayBubble", "Parameters": [ { "Name": "partOrCharacter", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CanUserChatAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CanUsersChatAsync", "Parameters": [ { "Name": "userIdFrom", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "userIdTo", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BubbleDisplayed", "Parameters": [ { "Name": "partOrCharacter", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "textChatMessage", "Type": { "Category": "Class", "Name": "TextChatMessage" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ClientToServerMessageReplicateSignal", "Parameters": [ { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "prefixText", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "metadata", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "messageId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "textSource", "Type": { "Category": "Class", "Name": "TextSource" } }, { "Name": "textChannel", "Type": { "Category": "Class", "Name": "TextChannel" } }, { "Name": "status", "Type": { "Category": "Enum", "Name": "TextChatMessageStatus" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ClientToServerMessageReplicateSignalV2", "Parameters": [ { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "metadata", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "messageId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "textSource", "Type": { "Category": "Class", "Name": "TextSource" } }, { "Name": "textChannel", "Type": { "Category": "Class", "Name": "TextChannel" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MessageReceived", "Parameters": [ { "Name": "textChatMessage", "Type": { "Category": "Class", "Name": "TextChatMessage" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SendingMessage", "Parameters": [ { "Name": "textChatMessage", "Type": { "Category": "Class", "Name": "TextChatMessage" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerToClientMessageReplicateSignal", "Parameters": [ { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "prefixText", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "metadata", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "messageId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "textSource", "Type": { "Category": "Class", "Name": "TextSource" } }, { "Name": "textChannel", "Type": { "Category": "Class", "Name": "TextChannel" } }, { "Name": "timestamp", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "status", "Type": { "Category": "Enum", "Name": "TextChatMessageStatus" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "OnBubbleAdded", "Parameters": [ { "Name": "message", "Type": { "Category": "Class", "Name": "TextChatMessage" } }, { "Name": "adornee", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "OnIncomingMessage", "Parameters": [ { "Name": "message", "Type": { "Category": "Class", "Name": "TextChatMessage" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TextChatService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetChatForUserAsync", "Parameters": [ { "Name": "toUserId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetNonChatStringForBroadcastAsync", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetNonChatStringForUserAsync", "Parameters": [ { "Name": "toUserId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TextFilterResult", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SourceLanguage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SourceText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "TextFilterResult" } }, { "MemberType": "Function", "Name": "GetTranslationForLocale", "Parameters": [ { "Name": "locale", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "TextFilterResult" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTranslations", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TextFilterTranslatedResult", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetFontMemoryData", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTextSize", "Parameters": [ { "Name": "string", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "fontSize", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "font", "Type": { "Category": "Enum", "Name": "Font" } }, { "Name": "frameSize", "Type": { "Category": "DataType", "Name": "Vector2" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetResolutionScale", "Parameters": [ { "Name": "scale", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FilterAndTranslateStringAsync", "Parameters": [ { "Name": "stringToFilter", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "fromUserId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "targetLocales", "Type": { "Category": "Group", "Name": "Array" } }, { "Default": "PrivateChat", "Name": "textContext", "Type": { "Category": "Enum", "Name": "TextFilterContext" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FilterStringAsync", "Parameters": [ { "Name": "stringToFilter", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "fromUserId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Default": "PrivateChat", "Name": "textContext", "Type": { "Category": "Enum", "Name": "TextFilterContext" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFamilyInfoAsync", "Parameters": [ { "Name": "assetId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTextBoundsAsync", "Parameters": [ { "Name": "params", "Type": { "Category": "Class", "Name": "GetTextBoundsParams" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TextService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "CanSend", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "UserId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "UserIdReplicated", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } } ], "MemoryCategory": "Instances", "Name": "TextSource", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetUserPlatformId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserPlatformName", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HaveActiveUser", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsOver13", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReturnToEngagement", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowAccountPicker", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterActiveUser", "Parameters": [ { "Name": "gamepadId", "Type": { "Category": "Enum", "Name": "UserInputType" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ActiveUserSignedOut", "Parameters": [ { "Name": "signOutStatus", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ThirdPartyUserService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FrameCount", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Populated", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ThreadId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ThreadName", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "GetFrame", "Parameters": [ { "Name": "index", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ThreadState", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "TimerService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "HideNotification", "Parameters": [ { "Name": "notificationId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowNotification", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "notificationId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ToastNotificationService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "TouchInputService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "TouchTransmitter", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "MemberType": "Function", "Name": "FinishSpan", "Parameters": [ { "Name": "spanId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartSpan", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "parentId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TracerService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AudioMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TrackerLodFlagMode" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VideoExtrapolationMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TrackerExtrapolationFlagMode" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VideoLodMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TrackerLodValueMode" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VideoMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TrackerLodFlagMode" } }, { "MemberType": "Function", "Name": "getExtrapolation", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "getVideoLod", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "isAudioEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "isVideoEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UpdateState", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TrackerLodController", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Animation", "Name": "TrackerStreamAnimation", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Attachment0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Attachment" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Attachment1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Attachment" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "Brightness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0 1 1 1 0 1 1 1 1 0 ", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "ColorSequence" } }, { "Category": "Emission", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "FaceCamera", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Emission", "Default": "2", "MemberType": "Property", "Name": "Lifetime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "LightEmission", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "LightInfluence", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Emission", "Default": "0", "MemberType": "Property", "Name": "MaxLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Emission", "Default": "0.100000001", "MemberType": "Property", "Name": "MinLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "Texture", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "TextureLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "Stretch", "MemberType": "Property", "Name": "TextureMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextureMode" } }, { "Category": "Appearance", "Default": "0 0.5 0 1 0.5 0 ", "MemberType": "Property", "Name": "Transparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberSequence" } }, { "Category": "Emission", "Default": "0 1 0 1 1 0 ", "MemberType": "Property", "Name": "WidthScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberSequence" } }, { "MemberType": "Function", "Name": "Clear", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnClearRequested", "Parameters": [], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Trail", "Superclass": "Instance" }, { "Members": [ { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LocaleId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "FormatByKey", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "args", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RobloxOnlyTranslate", "Parameters": [ { "Name": "context", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Translate", "Parameters": [ { "Name": "context", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Translator", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetMainViewSessionId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetStudioWidgetFromLabel", "Parameters": [ { "Name": "label", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "StudioWidget" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HasUserCompletedTutorial", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptClosePlace", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTutorialCompletionStatus", "Parameters": [ { "Name": "completed", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShouldLaunchTutorial", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TutorialService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PlaybackState", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PlaybackState" } }, { "MemberType": "Function", "Name": "Cancel", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Pause", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Play", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Completed", "Parameters": [ { "Name": "playbackState", "Type": { "Category": "Enum", "Name": "PlaybackState" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TweenBase", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Instance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "Time:1 DelayTime:0 RepeatCount:0 Reverses:False EasingDirection:Out EasingStyle:Quad", "MemberType": "Property", "Name": "TweenInfo", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "TweenInfo" } } ], "MemoryCategory": "Instances", "Name": "Tween", "Superclass": "TweenBase" }, { "Members": [ { "MemberType": "Function", "Name": "Create", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "tweenInfo", "Type": { "Category": "DataType", "Name": "TweenInfo" } }, { "Name": "propertyTable", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Class", "Name": "Tween" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetValue", "Parameters": [ { "Name": "alpha", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "easingStyle", "Type": { "Category": "Enum", "Name": "EasingStyle" } }, { "Name": "easingDirection", "Type": { "Category": "Enum", "Name": "EasingDirection" } } ], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TweenService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "UGCAvatarService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetPropertyValue", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "property", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ResetCollisionFidelity", "Parameters": [ { "Name": "meshPart", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMeshIdBlocking", "Parameters": [ { "Name": "meshPart", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CalculateUniqueUVCount", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CanLoadAsset", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FetchAssetWithFormat", "Parameters": [ { "Name": "url", "Type": { "Category": "DataType", "Name": "Content" } }, { "Name": "assetFormat", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMeshTriCount", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMeshVertColors", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMeshVerts", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTextureSize", "Parameters": [ { "Name": "textureId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateCageMeshIntersection", "Parameters": [ { "Name": "innerCageMeshId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "outerCageMeshId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "refMeshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateCageNonManifoldAndHoles", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateDynamicHeadMesh", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateFullBodyCageDeletion", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateMeshBounds", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "meshScale", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "boundsOffset", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "attachmentCF", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "handleCF", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateMeshTriangles", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateMeshVertColors", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "true", "Name": "includeAlpha", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateMisMatchUV", "Parameters": [ { "Name": "innerCageMeshId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "outerCageMeshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateNumTextureChannels", "Parameters": [ { "Name": "textureId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "numChannelsRequired", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateOverlappingVertices", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateSkinnedMesh", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateTextureSize", "Parameters": [ { "Name": "textureId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateUVSpace", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateUniqueUVCount", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "numRequired", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "UGCValidationService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "UIBase", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "UIComponent", "Superclass": "UIBase", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "UIConstraint", "Superclass": "UIComponent", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Behavior", "Default": "1", "MemberType": "Property", "Name": "AspectRatio", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "FitWithinMaxSize", "MemberType": "Property", "Name": "AspectType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AspectType" } }, { "Category": "Behavior", "Default": "Width", "MemberType": "Property", "Name": "DominantAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DominantAxis" } } ], "MemoryCategory": "Instances", "Name": "UIAspectRatioConstraint", "Superclass": "UIConstraint" }, { "Members": [ { "Category": "Behavior", "Default": "INF, INF", "MemberType": "Property", "Name": "MaxSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Behavior", "Default": "0, 0", "MemberType": "Property", "Name": "MinSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } } ], "MemoryCategory": "Instances", "Name": "UISizeConstraint", "Superclass": "UIConstraint" }, { "Members": [ { "Category": "Behavior", "Default": "100", "MemberType": "Property", "Name": "MaxTextSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Behavior", "Default": "1", "MemberType": "Property", "Name": "MinTextSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } } ], "MemoryCategory": "Instances", "Name": "UITextSizeConstraint", "Superclass": "UIConstraint" }, { "Members": [ { "Category": "Appearance", "Default": "0, 8", "MemberType": "Property", "Name": "CornerRadius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim" } } ], "MemoryCategory": "Instances", "Name": "UICorner", "Superclass": "UIComponent" }, { "Members": [ { "Category": "Appearance", "Default": "0 1 1 1 0 1 1 1 1 0 ", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "ColorSequence" } }, { "Category": "Appearance", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0, 0", "MemberType": "Property", "Name": "Offset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "Rotation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0 0 0 1 0 0 ", "MemberType": "Property", "Name": "Transparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberSequence" } } ], "MemoryCategory": "Instances", "Name": "UIGradient", "Superclass": "UIComponent" }, { "Members": [], "MemoryCategory": "Instances", "Name": "UILayout", "Superclass": "UIComponent", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AbsoluteContentSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FillDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FillDirection" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HorizontalAlignment", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HorizontalAlignment" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SortOrder", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SortOrder" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VerticalAlignment", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "VerticalAlignment" } }, { "MemberType": "Function", "Name": "ApplyLayout", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetCustomSortFunction", "Parameters": [ { "Default": "nil", "Name": "function", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "UIGridStyleLayout", "Superclass": "UILayout", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "AbsoluteCellCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "100, 100", "MemberType": "Property", "Name": "AbsoluteCellSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Appearance", "Default": "{0, 5}, {0, 5}", "MemberType": "Property", "Name": "CellPadding", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } }, { "Category": "Appearance", "Default": "{0, 100}, {0, 100}", "MemberType": "Property", "Name": "CellSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } }, { "Category": "Behavior", "Default": "0", "MemberType": "Property", "Name": "FillDirectionMaxCells", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Behavior", "Default": "TopLeft", "MemberType": "Property", "Name": "StartCorner", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "StartCorner" } } ], "MemoryCategory": "Instances", "Name": "UIGridLayout", "Superclass": "UIGridStyleLayout" }, { "Members": [ { "Category": "Appearance", "Default": "0, 0", "MemberType": "Property", "Name": "Padding", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim" } } ], "MemoryCategory": "Instances", "Name": "UIListLayout", "Superclass": "UIGridStyleLayout" }, { "Members": [ { "Category": "Appearance", "Default": "true", "MemberType": "Property", "Name": "Animated", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "Circular", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CurrentPage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "GuiObject" } }, { "Category": "Appearance", "Default": "Out", "MemberType": "Property", "Name": "EasingDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "EasingDirection" } }, { "Category": "Appearance", "Default": "Back", "MemberType": "Property", "Name": "EasingStyle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "EasingStyle" } }, { "Category": "Input", "Default": "true", "MemberType": "Property", "Name": "GamepadInputEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0, 0", "MemberType": "Property", "Name": "Padding", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim" } }, { "Category": "Input", "Default": "true", "MemberType": "Property", "Name": "ScrollWheelInputEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Input", "Default": "true", "MemberType": "Property", "Name": "TouchInputEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "TweenTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "JumpTo", "Parameters": [ { "Name": "page", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "JumpToIndex", "Parameters": [ { "Name": "index", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Next", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Previous", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PageEnter", "Parameters": [ { "Name": "page", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PageLeave", "Parameters": [ { "Name": "page", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Stopped", "Parameters": [ { "Name": "currentPage", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "UIPageLayout", "Superclass": "UIGridStyleLayout" }, { "Members": [ { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "FillEmptySpaceColumns", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "FillEmptySpaceRows", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "RowMajor", "MemberType": "Property", "Name": "MajorAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TableMajorAxis" } }, { "Category": "Appearance", "Default": "{0, 0}, {0, 0}", "MemberType": "Property", "Name": "Padding", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } } ], "MemoryCategory": "Instances", "Name": "UITableLayout", "Superclass": "UIGridStyleLayout" }, { "Members": [ { "Category": "Behavior", "Default": "0, 0", "MemberType": "Property", "Name": "PaddingBottom", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim" } }, { "Category": "Behavior", "Default": "0, 0", "MemberType": "Property", "Name": "PaddingLeft", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim" } }, { "Category": "Behavior", "Default": "0, 0", "MemberType": "Property", "Name": "PaddingRight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim" } }, { "Category": "Behavior", "Default": "0, 0", "MemberType": "Property", "Name": "PaddingTop", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim" } } ], "MemoryCategory": "Instances", "Name": "UIPadding", "Superclass": "UIComponent" }, { "Members": [ { "Category": "Behavior", "Default": "1", "MemberType": "Property", "Name": "Scale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "UIScale", "Superclass": "UIComponent" }, { "Members": [ { "Category": "Appearance", "Default": "Contextual", "MemberType": "Property", "Name": "ApplyStrokeMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ApplyStrokeMode" } }, { "Category": "Appearance", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "Round", "MemberType": "Property", "Name": "LineJoinMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "LineJoinMode" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "Thickness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "Transparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "UIStroke", "Superclass": "UIComponent" }, { "Members": [ { "Category": "Data", "Default": "{\"lastSaveTime\":0,\"lastKnownPublishRequest\":0,\"users\":[]}", "MemberType": "Property", "Name": "CachedData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "AppendTempAssetId", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "id", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "lookAt", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "camPos", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "usage", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AppendVantagePoint", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "id", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "lookAt", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "camPos", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UpgradeTempAssetId", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "tempId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "UnvalidatedAssetService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AllTutorialsDisabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CameraMode", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "CustomCameraMode" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CameraYInverted", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ChatVisible", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CompletedTutorials", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ComputerCameraMovementChanged", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ComputerCameraMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ComputerCameraMovementMode" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ComputerMovementChanged", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ComputerMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ComputerMovementMode" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ControlMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ControlMode" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DefaultCameraID", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Fullscreen", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GamepadCameraSensitivity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GraphicsQualityLevel", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HasEverUsedVR", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsUsingCameraYInverted", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsUsingGamepadCameraSensitivity", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MasterVolume", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MicroProfilerWebServerEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MicroProfilerWebServerIP", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MicroProfilerWebServerPort", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseSensitivity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseSensitivityFirstPerson", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseSensitivityThirdPerson", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "OnScreenProfilerEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "OnboardingsCompleted", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PerformanceStatsVisible", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PlayerHeight", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PreferredTransparency", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RCCProfilerRecordFrameRate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RCCProfilerRecordTimeFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ReducedMotion", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RotationType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RotationType" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SavedQualityLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SavedQualitySetting" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "StartMaximized", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "StartScreenPosition", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "StartScreenSize", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TouchCameraMovementChanged", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TouchCameraMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TouchCameraMovementMode" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TouchMovementChanged", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TouchMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TouchMovementMode" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UiNavigationKeyBindEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UsedCoreGuiIsVisibleToggle", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UsedCustomGuiIsVisibleToggle", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UsedHideHudShortcut", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VREnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VRRotationIntensity", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VRSafetyBubbleMode", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "VRSafetyBubbleMode" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VRSmoothRotationEnabled", "Security": { "Read": "None", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VignetteEnabled", "Security": { "Read": "None", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Configuration", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "gaID", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "GetCameraYInvertValue", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetOnboardingCompleted", "Parameters": [ { "Name": "onboardingId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTutorialState", "Parameters": [ { "Name": "tutorialId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InFullScreen", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InStudioMode", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ResetOnboardingCompleted", "Parameters": [ { "Name": "onboardingId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetCameraYInvertVisible", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetGamepadCameraSensitivityVisible", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetOnboardingCompleted", "Parameters": [ { "Name": "onboardingId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTutorialState", "Parameters": [ { "Name": "tutorialId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FullscreenChanged", "Parameters": [ { "Name": "isFullscreen", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PerformanceStatsVisibleChanged", "Parameters": [ { "Name": "isPerformanceStatsVisible", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StudioModeChanged", "Parameters": [ { "Name": "isStudioMode", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "UserGameSettings", "Superclass": "Instance", "Tags": [ "NotCreatable", "UserSettings" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "AccelerometerEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "BottomBarSize", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "GamepadEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "GyroscopeEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "KeyboardEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "LegacyInputEventsEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "ModalEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Deprecated", { "PreferredDescriptorName": "TouchControlsEnabled", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "MouseBehavior", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "MouseBehavior" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "MouseDeltaSensitivity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "MouseEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "MouseIcon", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "MouseIconEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "NavBarSize", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "OnScreenKeyboardAnimationDuration", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "OnScreenKeyboardPosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "OnScreenKeyboardSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "OnScreenKeyboardVisible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "OverrideMouseIconBehavior", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "OverrideMouseIconBehavior" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "RightBarSize", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "StatusBarSize", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "TouchEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "UserHeadCFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "VREnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "GamepadSupports", "Parameters": [ { "Name": "gamepadNum", "Type": { "Category": "Enum", "Name": "UserInputType" } }, { "Name": "gamepadKeyCode", "Type": { "Category": "Enum", "Name": "KeyCode" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetConnectedGamepads", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetDeviceAcceleration", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "InputObject" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetDeviceGravity", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "InputObject" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetDeviceRotation", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetDeviceType", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "DeviceType" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFocusedTextBox", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "TextBox" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGamepadConnected", "Parameters": [ { "Name": "gamepadNum", "Type": { "Category": "Enum", "Name": "UserInputType" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGamepadState", "Parameters": [ { "Name": "gamepadNum", "Type": { "Category": "Enum", "Name": "UserInputType" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetKeysPressed", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetLastInputType", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "UserInputType" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMouseButtonsPressed", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMouseDelta", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMouseLocation", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetNavigationGamepads", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPlatform", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "Platform" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetStringForKeyCode", "Parameters": [ { "Name": "keyCode", "Type": { "Category": "Enum", "Name": "KeyCode" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSupportedGamepadKeyCodes", "Parameters": [ { "Name": "gamepadNum", "Type": { "Category": "Enum", "Name": "UserInputType" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserCFrame", "Parameters": [ { "Name": "type", "Type": { "Category": "Enum", "Name": "UserCFrame" } } ], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsGamepadButtonDown", "Parameters": [ { "Name": "gamepadNum", "Type": { "Category": "Enum", "Name": "UserInputType" } }, { "Name": "gamepadKeyCode", "Type": { "Category": "Enum", "Name": "KeyCode" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsKeyDown", "Parameters": [ { "Name": "keyCode", "Type": { "Category": "Enum", "Name": "KeyCode" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsMouseButtonPressed", "Parameters": [ { "Name": "mouseButton", "Type": { "Category": "Enum", "Name": "UserInputType" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsNavigationGamepad", "Parameters": [ { "Name": "gamepadEnum", "Type": { "Category": "Enum", "Name": "UserInputType" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RecenterUserHeadCFrame", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendAppUISizes", "Parameters": [ { "Name": "statusBarSize", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "navBarSize", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "bottomBarSize", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "rightBarSize", "Type": { "Category": "DataType", "Name": "Vector2" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetNavigationGamepad", "Parameters": [ { "Name": "gamepadEnum", "Type": { "Category": "Enum", "Name": "UserInputType" } }, { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DeviceAccelerationChanged", "Parameters": [ { "Name": "acceleration", "Type": { "Category": "Class", "Name": "InputObject" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DeviceGravityChanged", "Parameters": [ { "Name": "gravity", "Type": { "Category": "Class", "Name": "InputObject" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DeviceRotationChanged", "Parameters": [ { "Name": "rotation", "Type": { "Category": "Class", "Name": "InputObject" } }, { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GamepadConnected", "Parameters": [ { "Name": "gamepadNum", "Type": { "Category": "Enum", "Name": "UserInputType" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GamepadDisconnected", "Parameters": [ { "Name": "gamepadNum", "Type": { "Category": "Enum", "Name": "UserInputType" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InputBegan", "Parameters": [ { "Name": "input", "Type": { "Category": "Class", "Name": "InputObject" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InputChanged", "Parameters": [ { "Name": "input", "Type": { "Category": "Class", "Name": "InputObject" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InputEnded", "Parameters": [ { "Name": "input", "Type": { "Category": "Class", "Name": "InputObject" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "JumpRequest", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LastInputTypeChanged", "Parameters": [ { "Name": "lastInputType", "Type": { "Category": "Enum", "Name": "UserInputType" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PointerAction", "Parameters": [ { "Name": "wheel", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "pan", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "pinch", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StatusBarTapped", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TextBoxFocusReleased", "Parameters": [ { "Name": "textboxReleased", "Type": { "Category": "Class", "Name": "TextBox" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TextBoxFocused", "Parameters": [ { "Name": "textboxFocused", "Type": { "Category": "Class", "Name": "TextBox" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchEnded", "Parameters": [ { "Name": "touch", "Type": { "Category": "Class", "Name": "InputObject" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchLongPress", "Parameters": [ { "Name": "touchPositions", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "state", "Type": { "Category": "Enum", "Name": "UserInputState" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchMoved", "Parameters": [ { "Name": "touch", "Type": { "Category": "Class", "Name": "InputObject" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchPan", "Parameters": [ { "Name": "touchPositions", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "totalTranslation", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "velocity", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "state", "Type": { "Category": "Enum", "Name": "UserInputState" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchPinch", "Parameters": [ { "Name": "touchPositions", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "scale", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "velocity", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "state", "Type": { "Category": "Enum", "Name": "UserInputState" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchRotate", "Parameters": [ { "Name": "touchPositions", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "rotation", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "velocity", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "state", "Type": { "Category": "Enum", "Name": "UserInputState" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchStarted", "Parameters": [ { "Name": "touch", "Type": { "Category": "Class", "Name": "InputObject" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchSwipe", "Parameters": [ { "Name": "swipeDirection", "Type": { "Category": "Enum", "Name": "SwipeDirection" } }, { "Name": "numberOfTouches", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchTap", "Parameters": [ { "Name": "touchPositions", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchTapInWorld", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "processedByUI", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UserCFrameChanged", "Parameters": [ { "Name": "type", "Type": { "Category": "Enum", "Name": "UserCFrame" } }, { "Name": "value", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "WindowFocusReleased", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "WindowFocused", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "UserInputService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetUserInfosByUserIdsAsync", "Parameters": [ { "Name": "userIds", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "UserService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AutomaticScaling", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "VRScaling" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DidPointerHit", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FadeOutViewOnCollision", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GuiInputUserCFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "UserCFrame" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LaserDistance", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PointerHitCFrame", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VRDeviceAvailable", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VRDeviceName", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VREnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VRSessionState", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "VRSessionState" } }, { "MemberType": "Function", "Name": "GetTouchpadMode", "Parameters": [ { "Name": "pad", "Type": { "Category": "Enum", "Name": "VRTouchpad" } } ], "ReturnType": { "Category": "Enum", "Name": "VRTouchpadMode" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserCFrame", "Parameters": [ { "Name": "type", "Type": { "Category": "Enum", "Name": "UserCFrame" } } ], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserCFrameEnabled", "Parameters": [ { "Name": "type", "Type": { "Category": "Enum", "Name": "UserCFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsMaquettes", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsVRAppBuild", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RecenterUserHeadCFrame", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestNavigation", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "inputUserCFrame", "Type": { "Category": "Enum", "Name": "UserCFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTouchpadMode", "Parameters": [ { "Name": "pad", "Type": { "Category": "Enum", "Name": "VRTouchpad" } }, { "Name": "mode", "Type": { "Category": "Enum", "Name": "VRTouchpadMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LaserPointerTriggered", "Parameters": [ { "Name": "input", "Type": { "Category": "Class", "Name": "InputObject" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "NavigationRequested", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "inputUserCFrame", "Type": { "Category": "Enum", "Name": "UserCFrame" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchpadModeChanged", "Parameters": [ { "Name": "pad", "Type": { "Category": "Enum", "Name": "VRTouchpad" } }, { "Name": "mode", "Type": { "Category": "Enum", "Name": "VRTouchpadMode" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UserCFrameChanged", "Parameters": [ { "Name": "type", "Type": { "Category": "Enum", "Name": "UserCFrame" } }, { "Name": "value", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UserCFrameEnabled", "Parameters": [ { "Name": "type", "Type": { "Category": "Enum", "Name": "UserCFrame" } }, { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "VRService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "VRStatusService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ValueBase", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "BinaryString" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BinaryStringValue", "Superclass": "ValueBase" }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BoolValue", "Superclass": "ValueBase" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "BrickColor" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "BrickColor" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BrickColorValue", "Superclass": "ValueBase" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CFrameValue", "Superclass": "ValueBase" }, { "Members": [ { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "Color3" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "Color3" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Color3Value", "Superclass": "ValueBase" }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "ConstrainedValue", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "MaxValue", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "MinValue", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DoubleConstrainedValue", "Superclass": "ValueBase", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "ConstrainedValue", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "10", "MemberType": "Property", "Name": "MaxValue", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "MinValue", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "IntConstrainedValue", "Superclass": "ValueBase", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "IntValue", "Superclass": "ValueBase" }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "NumberValue", "Superclass": "ValueBase" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ObjectValue", "Superclass": "ValueBase" }, { "Members": [ { "Category": "Data", "Default": "{0, 0, 0}, {0, 0, 0}", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Ray" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "Ray" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "Ray" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RayValue", "Superclass": "ValueBase" }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StringValue", "Superclass": "ValueBase" }, { "Members": [ { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Vector3Value", "Superclass": "ValueBase" }, { "Members": [ { "MemberType": "Function", "Name": "GetValueAtTime", "Parameters": [ { "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "X", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "FloatCurve" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Y", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "FloatCurve" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Z", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "FloatCurve" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Vector3Curve", "Superclass": "Instance" }, { "Members": [ { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "ScriptCollabEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "ScriptCollabVersionHistoryEnabled", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Event", "Name": "CommitRejectedInfo", "Parameters": [ { "Name": "reason", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LockedScriptBatchCommit", "Parameters": [ { "Name": "scriptGuidTuple", "Type": { "Category": "Group", "Name": "Tuple" } }, { "Name": "scriptTextTuple", "Type": { "Category": "Group", "Name": "Tuple" } }, { "Name": "commitMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestAllEditorsSignal", "Parameters": [], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptBatchCommit", "Parameters": [ { "Name": "scriptGuidTuple", "Type": { "Category": "Group", "Name": "Tuple" } }, { "Name": "scriptHashBaseTuple", "Type": { "Category": "Group", "Name": "Tuple" } }, { "Name": "scriptTextTuple", "Type": { "Category": "Group", "Name": "Tuple" } }, { "Name": "commitMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptChangesSubmitted", "Parameters": [ { "Name": "scriptGuid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "submitted", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptEditorAdded", "Parameters": [ { "Name": "scriptGuid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "editor", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptEditorRemoved", "Parameters": [ { "Name": "scriptGuid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "editor", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptStartEdit", "Parameters": [ { "Name": "scriptGuid", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptStopEdit", "Parameters": [ { "Name": "scriptGuid", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "VersionControlService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "Active", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "CameraID", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "GetCameraDevices", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Map" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DevicesChanged", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Error", "Parameters": [ { "Name": "cameraid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "errorcode", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Started", "Parameters": [ { "Name": "cameraid", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Stopped", "Parameters": [ { "Name": "cameraid", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "VideoCaptureService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "VideoService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "AdditionalLuaState", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "Dump", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HandleGamepadAxisInput", "Parameters": [ { "Name": "objectId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "keyCode", "Type": { "Category": "Enum", "Name": "KeyCode" } }, { "Name": "x", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "z", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HandleGamepadButtonInput", "Parameters": [ { "Name": "deviceId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "keyCode", "Type": { "Category": "Enum", "Name": "KeyCode" } }, { "Name": "buttonState", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HandleGamepadConnect", "Parameters": [ { "Name": "deviceId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HandleGamepadDisconnect", "Parameters": [ { "Name": "deviceId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendAccelerometerEvent", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "z", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendGravityEvent", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "z", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendGyroscopeEvent", "Parameters": [ { "Name": "quatX", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "quatY", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "quatZ", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "quatW", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendKeyEvent", "Parameters": [ { "Name": "isPressed", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "keyCode", "Type": { "Category": "Enum", "Name": "KeyCode" } }, { "Name": "isRepeatedKey", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "layerCollector", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendMouseButtonEvent", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "mouseButton", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "isDown", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "layerCollector", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "repeatCount", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendMouseMoveEvent", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "layerCollector", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendMouseWheelEvent", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "isForwardScroll", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "layerCollector", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendTextInputCharacterEvent", "Parameters": [ { "Name": "str", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "layerCollector", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendTouchEvent", "Parameters": [ { "Name": "touchId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "state", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "x", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetInputTypesToIgnore", "Parameters": [ { "Name": "inputTypesToIgnore", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartPlaying", "Parameters": [ { "Name": "fileName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartPlayingJSON", "Parameters": [ { "Name": "string", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartRecording", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StopPlaying", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StopRecording", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "sendRobloxEvent", "Parameters": [ { "Name": "namespace", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "detail", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "detailType", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "sendThemeChangeEvent", "Parameters": [ { "Name": "themeName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "WaitForInputEventsProcessed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlaybackCompleted", "Parameters": [ { "Name": "additionalLuaState", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RecordingCompleted", "Parameters": [ { "Name": "result", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "VirtualInputManager", "Superclass": "Instance", "Tags": [ "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "Button1Down", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Default": "Identity", "Name": "camera", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Button1Up", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Default": "Identity", "Name": "camera", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Button2Down", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Default": "Identity", "Name": "camera", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Button2Up", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Default": "Identity", "Name": "camera", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CaptureController", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClickButton1", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Default": "Identity", "Name": "camera", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClickButton2", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Default": "Identity", "Name": "camera", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "MoveMouse", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Default": "Identity", "Name": "camera", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetKeyDown", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetKeyUp", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartRecording", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StopRecording", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TypeKey", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "VirtualUser", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "VisibilityCheckDispatcher", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "VisibilityService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "Visit", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "State", "Default": "Idle", "MemberType": "Property", "Name": "VoiceChatState", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "VoiceChatState" } }, { "MemberType": "Function", "Name": "GetAndClearCallFailureMessage", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAudioProcessingSettings", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetChannelId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGroupId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMicDevices", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetParticipants", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSessionId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSpeakerDevices", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVoiceChatApiVersion", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVoiceChatAvailable", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVoiceExperienceId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsContextVoiceEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsPublishPaused", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsSubscribePaused", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "JoinByGroupId", "Parameters": [ { "Name": "groupId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "false", "Name": "isMicMuted", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "JoinByGroupIdToken", "Parameters": [ { "Name": "groupId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "isMicMuted", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "false", "Name": "isRetry", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Leave", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PublishPause", "Parameters": [ { "Name": "paused", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMicDevice", "Parameters": [ { "Name": "micDeviceName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "micDeviceGuid", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetSpeakerDevice", "Parameters": [ { "Name": "speakerDeviceName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "speakerDeviceGuid", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SubscribeBlock", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SubscribePause", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "paused", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SubscribePauseAll", "Parameters": [ { "Name": "paused", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SubscribeRetry", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SubscribeUnblock", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsVoiceEnabledForUserIdAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LocalPlayerModerated", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ParticipantsStateChanged", "Parameters": [ { "Name": "participantsLeft", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "participantsJoined", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "updatedStates", "Type": { "Category": "Group", "Name": "Array" } } ], "Security": "RobloxScriptSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayerMicActivitySignalChange", "Parameters": [ { "Name": "activityInfo", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxScriptSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StateChanged", "Parameters": [ { "Name": "old", "Type": { "Category": "Enum", "Name": "VoiceChatState" } }, { "Name": "new", "Type": { "Category": "Enum", "Name": "VoiceChatState" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "VoiceChatInternal", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotBrowsable" ] }, { "Members": [ { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "EnableDefaultVoice", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "UseNewJoinFlow", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "VoiceChatEnabledForPlaceOnRcc", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "VoiceChatEnabledForUniverseOnRcc", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "IsVoiceEnabledForUserIdAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ClientRetryJoin", "Parameters": [], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "JoinedVoice", "Parameters": [ { "Name": "channelName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "participantId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "sessionId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "channelId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ReJoinedVoice", "Parameters": [ { "Name": "channelName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "participantId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "sessionId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "channelId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "VoiceChatClientVoiceCapability", "Parameters": [], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "VoiceChatPlayerMuteStateChangedClientToServer", "Parameters": [ { "Name": "muteState", "Type": { "Category": "Enum", "Name": "MuteState" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "VoiceChatPlayerMuteStateChangedServerToClient", "Parameters": [ { "Name": "muteState", "Type": { "Category": "Enum", "Name": "MuteState" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "VoiceChatSampleTaggedEventClientToServer", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "VoiceChatSampleTaggedEventServerToClient", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "VoiceChatService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "Active", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Parts", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CFrame0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Parts", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CFrame1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Parts", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Part0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Parts", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Part0Internal", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Parts", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Part1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Parts", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Part1Internal", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Behavior", "Default": "3", "MemberType": "Property", "Name": "State", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } } ], "MemoryCategory": "PhysicsParts", "Name": "WeldConstraint", "Superclass": "Instance" } ], "Enums": [ { "Items": [ { "Name": "Unknown", "Value": 0 }, { "Name": "Hat", "Value": 1 }, { "Name": "Hair", "Value": 2 }, { "Name": "Face", "Value": 3 }, { "Name": "Neck", "Value": 4 }, { "Name": "Shoulder", "Value": 5 }, { "Name": "Front", "Value": 6 }, { "Name": "Back", "Value": 7 }, { "Name": "Waist", "Value": 8 }, { "LegacyNames": [ "TeeShirt" ], "Name": "TShirt", "Value": 9 }, { "Name": "Shirt", "Value": 10 }, { "Name": "Pants", "Value": 11 }, { "Name": "Jacket", "Value": 12 }, { "Name": "Sweater", "Value": 13 }, { "Name": "Shorts", "Value": 14 }, { "Name": "LeftShoe", "Value": 15 }, { "Name": "RightShoe", "Value": 16 }, { "Name": "DressSkirt", "Value": 17 }, { "Name": "Eyebrow", "Value": 18 }, { "Name": "Eyelash", "Value": 19 } ], "Name": "AccessoryType" }, { "Items": [ { "Name": "Nothing", "Value": 0 }, { "Name": "Pause", "Value": 1 }, { "Name": "Lose", "Value": 2 }, { "Name": "Draw", "Value": 3 }, { "Name": "Win", "Value": 4 } ], "Name": "ActionType" }, { "Items": [ { "Name": "Attachment0", "Value": 0 }, { "Name": "Attachment1", "Value": 1 }, { "Name": "World", "Value": 2 } ], "Name": "ActuatorRelativeTo" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "Motor", "Value": 1 }, { "Name": "Servo", "Value": 2 } ], "Name": "ActuatorType" }, { "Items": [ { "Name": "HorizontalRectangle", "Value": 1 } ], "Name": "AdShape" }, { "Items": [ { "Name": "Undefined", "Value": 0 }, { "Name": "PortalForward", "Value": 1 }, { "Name": "InGameMenuBackButton", "Value": 2 }, { "Name": "UIBackButton", "Value": 3 } ], "Name": "AdTeleportMethod" }, { "Items": [ { "Name": "Inactive", "Value": 0 }, { "Name": "Active", "Value": 1 } ], "Name": "AdUnitStatus" }, { "Items": [ { "Name": "Automatic", "Value": 0 }, { "Name": "Never", "Value": 1 } ], "Name": "AdornCullingMode" }, { "Items": [ { "Name": "Parallel", "Value": 0 }, { "Name": "Perpendicular", "Value": 1 } ], "Name": "AlignType" }, { "Items": [ { "Name": "Overlay", "Value": 0 }, { "Name": "Transparency", "Value": 1 } ], "Name": "AlphaMode" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Acquire", "Value": 1 }, { "Name": "Spend", "Value": 2 } ], "Name": "AnalyticsEconomyAction" }, { "Items": [ { "Name": "Trace", "Value": 0 }, { "Name": "Debug", "Value": 1 }, { "Name": "Information", "Value": 2 }, { "Name": "Warning", "Value": 3 }, { "Name": "Error", "Value": 4 }, { "Name": "Fatal", "Value": 5 } ], "Name": "AnalyticsLogLevel" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Begin", "Value": 1 }, { "Name": "Complete", "Value": 2 }, { "Name": "Abandon", "Value": 3 }, { "Name": "Fail", "Value": 4 } ], "Name": "AnalyticsProgressionStatus" }, { "Items": [ { "Name": "Idle", "Value": 0 }, { "Name": "Movement", "Value": 1 }, { "Name": "Action", "Value": 2 }, { "Name": "Action2", "Value": 3 }, { "Name": "Action3", "Value": 4 }, { "Name": "Action4", "Value": 5 }, { "Name": "Core", "Value": 1000 } ], "Name": "AnimationPriority" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "AnimatorRetargetingMode" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "OpenApp", "Value": 1 }, { "Name": "TapChatTab", "Value": 2 }, { "Name": "TapConversationEntry", "Value": 3 }, { "Name": "TapAvatarTab", "Value": 4 }, { "Name": "ReadConversation", "Value": 5 }, { "Name": "TapGamePageTab", "Value": 6 }, { "Name": "TapHomePageTab", "Value": 7 }, { "Name": "GamePageLoaded", "Value": 8 }, { "Name": "HomePageLoaded", "Value": 9 }, { "Name": "AvatarEditorPageLoaded", "Value": 10 } ], "Name": "AppShellActionType" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "Chat", "Value": 1 }, { "Name": "AvatarEditor", "Value": 2 }, { "Name": "GamePage", "Value": 3 }, { "Name": "HomePage", "Value": 4 }, { "Name": "More", "Value": 5 }, { "Name": "Landing", "Value": 6 } ], "Name": "AppShellFeature" }, { "Items": [ { "Name": "Unknown", "Value": 0 }, { "Name": "NotSupported", "Value": 1 }, { "Name": "Failed", "Value": 2 }, { "Name": "NotAvailable", "Value": 3 }, { "Name": "Available", "Value": 4 } ], "Name": "AppUpdateStatus" }, { "Items": [ { "Name": "Contextual", "Value": 0 }, { "Name": "Border", "Value": 1 } ], "Name": "ApplyStrokeMode" }, { "Items": [ { "Name": "FitWithinMaxSize", "Value": 0 }, { "Name": "ScaleWithParentSize", "Value": 1 } ], "Name": "AspectType" }, { "Items": [ { "Name": "Success", "Value": 0 }, { "Name": "Failure", "Value": 1 }, { "Name": "None", "Value": 2 }, { "Name": "Loading", "Value": 3 }, { "Name": "TimedOut", "Value": 4 } ], "Name": "AssetFetchStatus" }, { "Items": [ { "Name": "Image", "Value": 1 }, { "LegacyNames": [ "TeeShirt" ], "Name": "TShirt", "Value": 2 }, { "Name": "Audio", "Value": 3 }, { "Name": "Mesh", "Value": 4 }, { "Name": "Lua", "Value": 5 }, { "Name": "Hat", "Value": 8 }, { "Name": "Place", "Value": 9 }, { "Name": "Model", "Value": 10 }, { "Name": "Shirt", "Value": 11 }, { "Name": "Pants", "Value": 12 }, { "Name": "Decal", "Value": 13 }, { "Name": "Head", "Value": 17 }, { "Name": "Face", "Value": 18 }, { "Name": "Gear", "Value": 19 }, { "Name": "Badge", "Value": 21 }, { "Name": "Animation", "Value": 24 }, { "Name": "Torso", "Value": 27 }, { "Name": "RightArm", "Value": 28 }, { "Name": "LeftArm", "Value": 29 }, { "Name": "LeftLeg", "Value": 30 }, { "Name": "RightLeg", "Value": 31 }, { "Name": "Package", "Value": 32 }, { "Name": "GamePass", "Value": 34 }, { "Name": "Plugin", "Value": 38 }, { "Name": "MeshPart", "Value": 40 }, { "Name": "HairAccessory", "Value": 41 }, { "Name": "FaceAccessory", "Value": 42 }, { "Name": "NeckAccessory", "Value": 43 }, { "Name": "ShoulderAccessory", "Value": 44 }, { "Name": "FrontAccessory", "Value": 45 }, { "Name": "BackAccessory", "Value": 46 }, { "Name": "WaistAccessory", "Value": 47 }, { "Name": "ClimbAnimation", "Value": 48 }, { "Name": "DeathAnimation", "Value": 49 }, { "Name": "FallAnimation", "Value": 50 }, { "Name": "IdleAnimation", "Value": 51 }, { "Name": "JumpAnimation", "Value": 52 }, { "Name": "RunAnimation", "Value": 53 }, { "Name": "SwimAnimation", "Value": 54 }, { "Name": "WalkAnimation", "Value": 55 }, { "Name": "PoseAnimation", "Value": 56 }, { "Name": "MoodAnimation", "Value": 78 }, { "Name": "EarAccessory", "Value": 57 }, { "Name": "EyeAccessory", "Value": 58 }, { "Name": "EmoteAnimation", "Value": 61 }, { "Name": "Video", "Value": 62 }, { "LegacyNames": [ "TeeShirtAccessory" ], "Name": "TShirtAccessory", "Value": 64 }, { "Name": "ShirtAccessory", "Value": 65 }, { "Name": "PantsAccessory", "Value": 66 }, { "Name": "JacketAccessory", "Value": 67 }, { "Name": "SweaterAccessory", "Value": 68 }, { "Name": "ShortsAccessory", "Value": 69 }, { "Name": "LeftShoeAccessory", "Value": 70 }, { "Name": "RightShoeAccessory", "Value": 71 }, { "Name": "DressSkirtAccessory", "Value": 72 }, { "Name": "EyebrowAccessory", "Value": 76 }, { "Name": "EyelashAccessory", "Value": 77 }, { "Name": "DynamicHead", "Value": 79 }, { "Name": "FontFamily", "Value": 73 } ], "Name": "AssetType" }, { "Items": [ { "Name": "Default", "Value": 1 }, { "Name": "ClientOnly", "Value": 2 }, { "Name": "Always", "Value": 3 } ], "Name": "AssetTypeVerification" }, { "Items": [ { "Name": "Music", "Value": 1 }, { "Name": "SoundEffect", "Value": 2 } ], "Name": "AudioSubType" }, { "Items": [ { "Name": "Off", "Value": 0 }, { "Name": "Absolute", "Value": 1 }, { "Name": "Relative", "Value": 2 } ], "Name": "AutoIndentRule" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "X", "Value": 1 }, { "Name": "Y", "Value": 2 }, { "Name": "XY", "Value": 3 } ], "Name": "AutomaticSize" }, { "Items": [ { "Name": "TShirt", "Value": 2 }, { "Name": "Hat", "Value": 8 }, { "Name": "HairAccessory", "Value": 41 }, { "Name": "FaceAccessory", "Value": 42 }, { "Name": "NeckAccessory", "Value": 43 }, { "Name": "ShoulderAccessory", "Value": 44 }, { "Name": "FrontAccessory", "Value": 45 }, { "Name": "BackAccessory", "Value": 46 }, { "Name": "WaistAccessory", "Value": 47 }, { "Name": "Shirt", "Value": 11 }, { "Name": "Pants", "Value": 12 }, { "Name": "Gear", "Value": 19 }, { "Name": "Head", "Value": 17 }, { "Name": "Face", "Value": 18 }, { "Name": "Torso", "Value": 27 }, { "Name": "RightArm", "Value": 28 }, { "Name": "LeftArm", "Value": 29 }, { "Name": "LeftLeg", "Value": 30 }, { "Name": "RightLeg", "Value": 31 }, { "Name": "ClimbAnimation", "Value": 48 }, { "Name": "FallAnimation", "Value": 50 }, { "Name": "IdleAnimation", "Value": 51 }, { "Name": "JumpAnimation", "Value": 52 }, { "Name": "RunAnimation", "Value": 53 }, { "Name": "SwimAnimation", "Value": 54 }, { "Name": "WalkAnimation", "Value": 55 }, { "Name": "MoodAnimation", "Value": 78 }, { "Name": "EmoteAnimation", "Value": 61 }, { "LegacyNames": [ "TeeShirtAccessory" ], "Name": "TShirtAccessory", "Value": 64 }, { "Name": "ShirtAccessory", "Value": 65 }, { "Name": "PantsAccessory", "Value": 66 }, { "Name": "JacketAccessory", "Value": 67 }, { "Name": "SweaterAccessory", "Value": 68 }, { "Name": "ShortsAccessory", "Value": 69 }, { "Name": "LeftShoeAccessory", "Value": 70 }, { "Name": "RightShoeAccessory", "Value": 71 }, { "Name": "DressSkirtAccessory", "Value": 72 }, { "Name": "EyebrowAccessory", "Value": 76 }, { "Name": "EyelashAccessory", "Value": 77 }, { "Name": "DynamicHead", "Value": 79 } ], "Name": "AvatarAssetType" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "UniverseAudio", "Value": 1 }, { "Name": "UniverseVideo", "Value": 2 }, { "Name": "PlaceAudio", "Value": 4 }, { "Name": "PlaceVideo", "Value": 8 }, { "Name": "UserAudioEligible", "Value": 16 }, { "Name": "UserAudio", "Value": 32 }, { "Name": "UserVideoEligible", "Value": 64 }, { "Name": "UserVideo", "Value": 128 }, { "Name": "UserBanned", "Value": 256 } ], "Name": "AvatarChatServiceFeature" }, { "Items": [ { "Name": "Friend", "Value": 0 }, { "Name": "Chat", "Value": 1 }, { "Name": "Emote", "Value": 2 }, { "Name": "InspectMenu", "Value": 3 } ], "Name": "AvatarContextMenuOption" }, { "Items": [ { "Name": "Asset", "Value": 1 }, { "Name": "Bundle", "Value": 2 } ], "Name": "AvatarItemType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Enabled", "Value": 1 }, { "Name": "Disabled", "Value": 2 } ], "Name": "AvatarJointUpgrade" }, { "Items": [ { "Name": "Success", "Value": 1 }, { "Name": "PermissionDenied", "Value": 2 }, { "Name": "Failed", "Value": 3 } ], "Name": "AvatarPromptResult" }, { "Items": [ { "Name": "Closeup", "Value": 1 }, { "Name": "FullBody", "Value": 2 } ], "Name": "AvatarThumbnailCustomizationType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "AvatarUnificationMode" }, { "Items": [ { "LegacyNames": [ "Left", "Right" ], "Name": "X", "Value": 0 }, { "LegacyNames": [ "Bottom", "Top" ], "Name": "Y", "Value": 1 }, { "LegacyNames": [ "Back", "Front" ], "Name": "Z", "Value": 2 } ], "Name": "Axis" }, { "Items": [ { "LegacyNames": [ "Laser", "Rocket", "Slingshot" ], "Name": "Script", "Value": 0 }, { "Name": "GameTool", "Value": 1 }, { "Name": "Grab", "Value": 2 }, { "Name": "Clone", "Value": 3 }, { "Name": "Hammer", "Value": 4 } ], "Name": "BinType" }, { "Items": [ { "Name": "Head", "Value": 0 }, { "Name": "Torso", "Value": 1 }, { "Name": "LeftArm", "Value": 2 }, { "Name": "RightArm", "Value": 3 }, { "Name": "LeftLeg", "Value": 4 }, { "Name": "RightLeg", "Value": 5 } ], "Name": "BodyPart" }, { "Items": [ { "Name": "Head", "Value": 0 }, { "Name": "UpperTorso", "Value": 1 }, { "Name": "LowerTorso", "Value": 2 }, { "Name": "LeftFoot", "Value": 3 }, { "Name": "LeftLowerLeg", "Value": 4 }, { "Name": "LeftUpperLeg", "Value": 5 }, { "Name": "RightFoot", "Value": 6 }, { "Name": "RightLowerLeg", "Value": 7 }, { "Name": "RightUpperLeg", "Value": 8 }, { "Name": "LeftHand", "Value": 9 }, { "Name": "LeftLowerArm", "Value": 10 }, { "Name": "LeftUpperArm", "Value": 11 }, { "Name": "RightHand", "Value": 12 }, { "Name": "RightLowerArm", "Value": 13 }, { "Name": "RightUpperArm", "Value": 14 }, { "Name": "RootPart", "Value": 15 }, { "Name": "Unknown", "Value": 17 } ], "Name": "BodyPartR15" }, { "Items": [ { "Name": "Outline", "Value": 0 }, { "Name": "Middle", "Value": 1 }, { "Name": "Inset", "Value": 2 } ], "Name": "BorderMode" }, { "Items": [ { "Name": "Other", "Value": 0 }, { "Name": "Error", "Value": 1 }, { "Name": "UserBreakpoint", "Value": 3 }, { "Name": "SpecialBreakpoint", "Value": 2 } ], "Name": "BreakReason" }, { "Items": [ { "Name": "Requested", "Value": 0 }, { "Name": "ScriptChanged", "Value": 1 }, { "Name": "ScriptRemoved", "Value": 2 } ], "Name": "BreakpointRemoveReason" }, { "Items": [ { "Name": "FireAllEvents", "Value": 0 }, { "Name": "FireCFrameChanged", "Value": 1 } ], "Name": "BulkMoveMode" }, { "Items": [ { "Name": "BodyParts", "Value": 1 }, { "Name": "Animations", "Value": 2 }, { "Name": "Shoes", "Value": 3 }, { "Name": "DynamicHead", "Value": 4 }, { "Name": "DynamicHeadAvatar", "Value": 5 } ], "Name": "BundleType" }, { "Items": [ { "Name": "Jump", "Value": 32 }, { "Name": "Dismount", "Value": 8 } ], "Name": "Button" }, { "Items": [ { "Name": "Custom", "Value": 0 }, { "Name": "RobloxButtonDefault", "Value": 1 }, { "Name": "RobloxButton", "Value": 2 }, { "Name": "RobloxRoundButton", "Value": 3 }, { "Name": "RobloxRoundDefaultButton", "Value": 4 }, { "Name": "RobloxRoundDropdownButton", "Value": 5 } ], "Name": "ButtonStyle" }, { "Items": [ { "Name": "Inner", "Value": 0 }, { "Name": "Outer", "Value": 1 } ], "Name": "CageType" }, { "Items": [ { "Name": "Classic", "Value": 0 }, { "Name": "LockFirstPerson", "Value": 1 } ], "Name": "CameraMode" }, { "Items": [ { "Name": "Classic", "Value": 0 }, { "Name": "EdgeBump", "Value": 1 } ], "Name": "CameraPanMode" }, { "Items": [ { "Name": "Fixed", "Value": 0 }, { "Name": "Watch", "Value": 2 }, { "Name": "Attach", "Value": 1 }, { "Name": "Track", "Value": 3 }, { "Name": "Follow", "Value": 4 }, { "Name": "Custom", "Value": 5 }, { "Name": "Scriptable", "Value": 6 }, { "Name": "Orbital", "Value": 7 } ], "Name": "CameraType" }, { "Items": [ { "Name": "None", "Value": 1 }, { "Name": "Featured", "Value": 2 }, { "Name": "Collectibles", "Value": 3 }, { "Name": "CommunityCreations", "Value": 4 }, { "Name": "Premium", "Value": 5 }, { "Name": "Recommended", "Value": 6 } ], "Name": "CatalogCategoryFilter" }, { "Items": [ { "Name": "Past12Hours", "Value": 1 }, { "Name": "PastDay", "Value": 2 }, { "Name": "Past3Days", "Value": 3 }, { "Name": "PastWeek", "Value": 4 }, { "Name": "PastMonth", "Value": 5 }, { "Name": "AllTime", "Value": 6 } ], "Name": "CatalogSortAggregation" }, { "Items": [ { "Name": "Relevance", "Value": 1 }, { "Name": "PriceHighToLow", "Value": 2 }, { "Name": "PriceLowToHigh", "Value": 3 }, { "Name": "MostFavorited", "Value": 5 }, { "LegacyNames": [ "RecentlyUpdated" ], "Name": "RecentlyCreated", "Value": 6 }, { "Name": "Bestselling", "Value": 7 } ], "Name": "CatalogSortType" }, { "Items": [ { "Name": "Solid", "Value": 0 }, { "Name": "VerticalWedge", "Value": 1 }, { "Name": "CornerWedge", "Value": 2 }, { "Name": "InverseCornerWedge", "Value": 3 }, { "Name": "HorizontalWedge", "Value": 4 } ], "Name": "CellBlock" }, { "Items": [ { "Name": "Empty", "Value": 0 }, { "Name": "Grass", "Value": 1 }, { "Name": "Sand", "Value": 2 }, { "Name": "Brick", "Value": 3 }, { "Name": "Granite", "Value": 4 }, { "Name": "Asphalt", "Value": 5 }, { "Name": "Iron", "Value": 6 }, { "Name": "Aluminum", "Value": 7 }, { "Name": "Gold", "Value": 8 }, { "Name": "WoodPlank", "Value": 9 }, { "Name": "WoodLog", "Value": 10 }, { "Name": "Gravel", "Value": 11 }, { "Name": "CinderBlock", "Value": 12 }, { "Name": "MossyStone", "Value": 13 }, { "Name": "Cement", "Value": 14 }, { "Name": "RedPlastic", "Value": 15 }, { "Name": "BluePlastic", "Value": 16 }, { "Name": "Water", "Value": 17 } ], "Name": "CellMaterial" }, { "Items": [ { "Name": "NegZ", "Value": 0 }, { "Name": "X", "Value": 1 }, { "Name": "Z", "Value": 2 }, { "Name": "NegX", "Value": 3 } ], "Name": "CellOrientation" }, { "Items": [ { "Name": "UnsolicitedDialog", "Value": 1 }, { "Name": "PlayerInitiatedDialog", "Value": 2 }, { "Name": "ModalDialog", "Value": 3 }, { "Name": "QuitDialog", "Value": 4 } ], "Name": "CenterDialogType" }, { "Items": [ { "Name": "OnCreatingChatWindow", "Value": 1 }, { "Name": "OnClientSendingMessage", "Value": 2 }, { "Name": "OnClientFormattingMessage", "Value": 3 }, { "Name": "OnServerReceivingMessage", "Value": 17 } ], "Name": "ChatCallbackType" }, { "Items": [ { "Name": "Blue", "Value": 0 }, { "Name": "Green", "Value": 1 }, { "Name": "Red", "Value": 2 }, { "Name": "White", "Value": 3 } ], "Name": "ChatColor" }, { "Items": [ { "Name": "Menu", "Value": 0 }, { "Name": "TextAndMenu", "Value": 1 } ], "Name": "ChatMode" }, { "Items": [ { "Name": "AllUsers", "Value": 0 }, { "Name": "NoOne", "Value": 1 }, { "Name": "Friends", "Value": 2 } ], "Name": "ChatPrivacyMode" }, { "Items": [ { "Name": "Classic", "Value": 0 }, { "Name": "Bubble", "Value": 1 }, { "Name": "ClassicAndBubble", "Value": 2 } ], "Name": "ChatStyle" }, { "Items": [ { "Name": "LegacyChatService", "Value": 0 }, { "Name": "TextChatService", "Value": 1 } ], "Name": "ChatVersion" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "ClientAnimatorThrottlingMode" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Hull", "Value": 1 }, { "Name": "Box", "Value": 2 }, { "Name": "PreciseConvexDecomposition", "Value": 3 }, { "Name": "DynamicPreciseConvexDecomposition", "Value": 4 } ], "Name": "CollisionFidelity" }, { "Items": [ { "Name": "Plugin", "Value": 0 }, { "Name": "LocalUser", "Value": 1 } ], "Name": "CommandPermission" }, { "Items": [ { "Name": "Client", "Value": 0 }, { "Name": "CoreScript", "Value": 1 }, { "Name": "Studio", "Value": 2 }, { "Name": "CoreScriptRaw", "Value": 3 } ], "Name": "CompileTarget" }, { "Items": [ { "Name": "Text", "Value": 1 }, { "Name": "Method", "Value": 2 }, { "Name": "Function", "Value": 3 }, { "Name": "Constructor", "Value": 4 }, { "Name": "Field", "Value": 5 }, { "Name": "Variable", "Value": 6 }, { "Name": "Class", "Value": 7 }, { "Name": "Interface", "Value": 8 }, { "Name": "Module", "Value": 9 }, { "Name": "Property", "Value": 10 }, { "Name": "Unit", "Value": 11 }, { "Name": "Value", "Value": 12 }, { "Name": "Enum", "Value": 13 }, { "Name": "Keyword", "Value": 14 }, { "Name": "Snippet", "Value": 15 }, { "Name": "Color", "Value": 16 }, { "Name": "File", "Value": 17 }, { "Name": "Reference", "Value": 18 }, { "Name": "Folder", "Value": 19 }, { "Name": "EnumMember", "Value": 20 }, { "Name": "Constant", "Value": 21 }, { "Name": "Struct", "Value": 22 }, { "Name": "Event", "Value": 23 }, { "Name": "Operator", "Value": 24 }, { "Name": "TypeParameter", "Value": 25 } ], "Name": "CompletionItemKind" }, { "Items": [ { "Name": "Deprecated", "Value": 1 }, { "Name": "IncorrectIndexType", "Value": 2 }, { "Name": "PluginPermissions", "Value": 3 }, { "Name": "CommandLinePermissions", "Value": 4 }, { "Name": "RobloxPermissions", "Value": 5 }, { "Name": "AddParens", "Value": 6 }, { "Name": "PutCursorInParens", "Value": 7 }, { "Name": "TypeCorrect", "Value": 8 }, { "Name": "ClientServerBoundaryViolation", "Value": 9 } ], "Name": "CompletionItemTag" }, { "Items": [ { "Name": "Invoked", "Value": 1 }, { "Name": "TriggerCharacter", "Value": 2 }, { "Name": "TriggerForIncompleteCompletions", "Value": 3 } ], "Name": "CompletionTriggerKind" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Follow", "Value": 2 }, { "Name": "Classic", "Value": 1 }, { "Name": "Orbital", "Value": 3 }, { "Name": "CameraToggle", "Value": 4 } ], "Name": "ComputerCameraMovementMode" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "KeyboardMouse", "Value": 1 }, { "Name": "ClickToMove", "Value": 2 } ], "Name": "ComputerMovementMode" }, { "Items": [ { "Name": "OK", "Value": 0 }, { "Name": "Unknown", "Value": 1 }, { "Name": "DisconnectErrors", "Value": 256 }, { "Name": "DisconnectBadhash", "Value": 257 }, { "Name": "DisconnectSecurityKeyMismatch", "Value": 258 }, { "Name": "DisconnectNewSecurityKeyMismatch", "Value": 272 }, { "Name": "DisconnectProtocolMismatch", "Value": 259 }, { "Name": "DisconnectReceivePacketError", "Value": 260 }, { "Name": "DisconnectReceivePacketStreamError", "Value": 261 }, { "Name": "DisconnectSendPacketError", "Value": 262 }, { "Name": "DisconnectIllegalTeleport", "Value": 263 }, { "Name": "DisconnectDuplicatePlayer", "Value": 264 }, { "Name": "DisconnectDuplicateTicket", "Value": 265 }, { "Name": "DisconnectTimeout", "Value": 266 }, { "Name": "DisconnectLuaKick", "Value": 267 }, { "Name": "DisconnectOnRemoteSysStats", "Value": 268 }, { "Name": "DisconnectHashTimeout", "Value": 269 }, { "Name": "DisconnectCloudEditKick", "Value": 270 }, { "Name": "DisconnectPlayerless", "Value": 271 }, { "Name": "DisconnectEvicted", "Value": 273 }, { "Name": "DisconnectDevMaintenance", "Value": 274 }, { "Name": "DisconnectRobloxMaintenance", "Value": 275 }, { "Name": "DisconnectRejoin", "Value": 276 }, { "Name": "DisconnectConnectionLost", "Value": 277 }, { "Name": "DisconnectIdle", "Value": 278 }, { "Name": "DisconnectRaknetErrors", "Value": 279 }, { "Name": "DisconnectWrongVersion", "Value": 280 }, { "Name": "DisconnectBySecurityPolicy", "Value": 281 }, { "Name": "DisconnectBlockedIP", "Value": 282 }, { "Name": "DisconnectClientFailure", "Value": 284 }, { "Name": "DisconnectClientRequest", "Value": 285 }, { "Name": "DisconnectPrivateServerKickout", "Value": 286 }, { "Name": "DisconnectModeratedGame", "Value": 287 }, { "Name": "DisconnectRomarkEndOfTest", "Value": 293 }, { "Name": "ReplicatorTimeout", "Value": 290 }, { "Name": "PlayerRemoved", "Value": 291 }, { "Name": "DisconnectOutOfMemoryKeepPlayingLeave", "Value": 292 }, { "Name": "DisconnectCollaboratorPermissionRevoked", "Value": 294 }, { "Name": "DisconnectCollaboratorUnderage", "Value": 295 }, { "Name": "PlacelaunchErrors", "Value": 512 }, { "Name": "PlacelaunchDisabled", "Value": 515 }, { "Name": "PlacelaunchError", "Value": 516 }, { "Name": "PlacelaunchGameEnded", "Value": 517 }, { "Name": "PlacelaunchGameFull", "Value": 518 }, { "Name": "PlacelaunchUserLeft", "Value": 522 }, { "Name": "PlacelaunchRestricted", "Value": 523 }, { "Name": "PlacelaunchUnauthorized", "Value": 524 }, { "Name": "PlacelaunchFlooded", "Value": 525 }, { "Name": "PlacelaunchHashExpired", "Value": 526 }, { "Name": "PlacelaunchHashException", "Value": 527 }, { "Name": "PlacelaunchPartyCannotFit", "Value": 528 }, { "Name": "PlacelaunchHttpError", "Value": 529 }, { "Name": "PlacelaunchUserPrivacyUnauthorized", "Value": 533 }, { "Name": "PlacelaunchCustomMessage", "Value": 610 }, { "Name": "PlacelaunchOtherError", "Value": 611 }, { "Name": "TeleportErrors", "Value": 768 }, { "Name": "TeleportFailure", "Value": 769 }, { "Name": "TeleportGameNotFound", "Value": 770 }, { "Name": "TeleportGameEnded", "Value": 771 }, { "Name": "TeleportGameFull", "Value": 772 }, { "Name": "TeleportUnauthorized", "Value": 773 }, { "Name": "TeleportFlooded", "Value": 774 }, { "Name": "TeleportIsTeleporting", "Value": 775 } ], "Name": "ConnectionError" }, { "Items": [ { "Name": "Connected", "Value": 0 }, { "Name": "Disconnected", "Value": 1 } ], "Name": "ConnectionState" }, { "Items": [ { "Name": "Low", "Value": 1000 }, { "LegacyNames": [ "Default" ], "Name": "Medium", "Value": 2000 }, { "Name": "High", "Value": 3000 } ], "Name": "ContextActionPriority" }, { "Items": [ { "Name": "Pass", "Value": 1 }, { "Name": "Sink", "Value": 0 } ], "Name": "ContextActionResult" }, { "Items": [ { "LegacyNames": [ "Mouse Lock Switch" ], "Name": "MouseLockSwitch", "Value": 1 }, { "Name": "Classic", "Value": 0 } ], "Name": "ControlMode" }, { "Items": [ { "Name": "PlayerList", "Value": 0 }, { "Name": "Health", "Value": 1 }, { "Name": "Backpack", "Value": 2 }, { "Name": "Chat", "Value": 3 }, { "Name": "All", "Value": 4 }, { "Name": "EmotesMenu", "Value": 5 }, { "Name": "SelfView", "Value": 6 } ], "Name": "CoreGuiType" }, { "Items": [ { "Name": "InvalidName", "Value": 1 }, { "Name": "OutfitLimitReached", "Value": 2 }, { "Name": "Other", "Value": 3 } ], "Name": "CreateOutfitFailure" }, { "Items": [ { "Name": "User", "Value": 0 }, { "Name": "Group", "Value": 1 } ], "Name": "CreatorType" }, { "Items": [ { "Name": "User", "Value": 0 }, { "Name": "Group", "Value": 1 }, { "Name": "All", "Value": 2 } ], "Name": "CreatorTypeFilter" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Robux", "Value": 1 }, { "Name": "Tix", "Value": 2 } ], "Name": "CurrencyType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Follow", "Value": 2 }, { "Name": "Classic", "Value": 1 } ], "Name": "CustomCameraMode" }, { "Items": [ { "Name": "GetAsync", "Value": 0 }, { "Name": "SetIncrementAsync", "Value": 1 }, { "Name": "UpdateAsync", "Value": 2 }, { "Name": "GetSortedAsync", "Value": 3 }, { "Name": "SetIncrementSortedAsync", "Value": 4 }, { "Name": "OnUpdate", "Value": 5 } ], "Name": "DataStoreRequestType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "ClassicBreakApart", "Value": 1 }, { "Name": "NonGraphic", "Value": 2 }, { "Name": "Scriptable", "Value": 3 } ], "Name": "DeathStyle" }, { "Items": [ { "Name": "ClientRequest", "Value": 0 }, { "Name": "Timeout", "Value": 1 }, { "Name": "InvalidHost", "Value": 2 }, { "Name": "Disconnected", "Value": 3 }, { "Name": "ServerShutdown", "Value": 4 }, { "Name": "ServerProtocolMismatch", "Value": 5 }, { "Name": "ConfigurationFailed", "Value": 6 }, { "Name": "RpcError", "Value": 7 } ], "Name": "DebuggerEndReason" }, { "Items": [ { "Name": "Never", "Value": 0 }, { "Name": "Unhandled", "Value": 2 }, { "Name": "Always", "Value": 1 } ], "Name": "DebuggerExceptionBreakMode" }, { "Items": [ { "Name": "C", "Value": 0 }, { "Name": "Lua", "Value": 1 } ], "Name": "DebuggerFrameType" }, { "Items": [ { "Name": "Unknown", "Value": 0 }, { "Name": "Requested", "Value": 1 }, { "Name": "Breakpoint", "Value": 2 }, { "Name": "Exception", "Value": 3 }, { "Name": "SingleStep", "Value": 4 }, { "Name": "Entrypoint", "Value": 5 } ], "Name": "DebuggerPauseReason" }, { "Items": [ { "Name": "Success", "Value": 0 }, { "Name": "Timeout", "Value": 1 }, { "Name": "ConnectionLost", "Value": 2 }, { "Name": "InvalidResponse", "Value": 3 }, { "Name": "InternalError", "Value": 4 }, { "Name": "InvalidState", "Value": 5 }, { "Name": "RpcError", "Value": 6 }, { "Name": "InvalidArgument", "Value": 7 }, { "Name": "ConnectionClosed", "Value": 8 } ], "Name": "DebuggerStatus" }, { "Items": [ { "Name": "Zoom", "Value": 0 }, { "Name": "Invisicam", "Value": 1 } ], "Name": "DevCameraOcclusionMode" }, { "Items": [ { "Name": "UserChoice", "Value": 0 }, { "Name": "Classic", "Value": 1 }, { "Name": "Follow", "Value": 2 }, { "Name": "Orbital", "Value": 3 }, { "Name": "CameraToggle", "Value": 4 } ], "Name": "DevComputerCameraMovementMode" }, { "Items": [ { "Name": "UserChoice", "Value": 0 }, { "Name": "KeyboardMouse", "Value": 1 }, { "Name": "ClickToMove", "Value": 2 }, { "Name": "Scriptable", "Value": 3 } ], "Name": "DevComputerMovementMode" }, { "Items": [ { "Name": "UserChoice", "Value": 0 }, { "Name": "Classic", "Value": 1 }, { "Name": "Follow", "Value": 2 }, { "Name": "Orbital", "Value": 3 } ], "Name": "DevTouchCameraMovementMode" }, { "Items": [ { "Name": "UserChoice", "Value": 0 }, { "Name": "Thumbstick", "Value": 1 }, { "Name": "DPad", "Value": 2 }, { "Name": "Thumbpad", "Value": 3 }, { "Name": "ClickToMove", "Value": 4 }, { "Name": "Scriptable", "Value": 5 }, { "Name": "DynamicThumbstick", "Value": 6 } ], "Name": "DevTouchMovementMode" }, { "Items": [ { "Name": "Internal", "Value": 0 }, { "Name": "HttpCache", "Value": 1 }, { "Name": "Instances", "Value": 2 }, { "Name": "Signals", "Value": 3 }, { "Name": "LuaHeap", "Value": 4 }, { "Name": "Script", "Value": 5 }, { "Name": "PhysicsCollision", "Value": 6 }, { "Name": "PhysicsParts", "Value": 7 }, { "Name": "GraphicsSolidModels", "Value": 8 }, { "Name": "GraphicsMeshParts", "Value": 10 }, { "Name": "GraphicsParticles", "Value": 11 }, { "Name": "GraphicsParts", "Value": 12 }, { "Name": "GraphicsSpatialHash", "Value": 13 }, { "Name": "GraphicsTerrain", "Value": 14 }, { "Name": "GraphicsTexture", "Value": 15 }, { "Name": "GraphicsTextureCharacter", "Value": 16 }, { "Name": "Sounds", "Value": 17 }, { "Name": "StreamingSounds", "Value": 18 }, { "Name": "TerrainVoxels", "Value": 19 }, { "Name": "Gui", "Value": 21 }, { "Name": "Animation", "Value": 22 }, { "Name": "Navigation", "Value": 23 }, { "Name": "GeometryCSG", "Value": 24 } ], "Name": "DeveloperMemoryTag" }, { "Items": [ { "Name": "Unknown", "Value": 0 }, { "Name": "Desktop", "Value": 1 }, { "Name": "Tablet", "Value": 2 }, { "Name": "Phone", "Value": 3 } ], "Name": "DeviceType" }, { "Items": [ { "Name": "SinglePlayer", "Value": 0 }, { "Name": "MultiplePlayers", "Value": 1 } ], "Name": "DialogBehaviorType" }, { "Items": [ { "Name": "Quest", "Value": 0 }, { "Name": "Help", "Value": 1 }, { "Name": "Shop", "Value": 2 } ], "Name": "DialogPurpose" }, { "Items": [ { "Name": "Neutral", "Value": 0 }, { "Name": "Friendly", "Value": 1 }, { "Name": "Enemy", "Value": 2 } ], "Name": "DialogTone" }, { "Items": [ { "Name": "Width", "Value": 0 }, { "Name": "Height", "Value": 1 } ], "Name": "DominantAxis" }, { "Items": [ { "Name": "OK", "Value": 0 }, { "Name": "DraftOutdated", "Value": 1 }, { "Name": "ScriptRemoved", "Value": 2 }, { "Name": "DraftCommitted", "Value": 3 } ], "Name": "DraftStatusCode" }, { "Items": [ { "Name": "TranslateLine", "Value": 0 }, { "Name": "TranslatePlane", "Value": 1 }, { "Name": "TranslatePlaneOrLine", "Value": 2 }, { "Name": "TranslateLineOrPlane", "Value": 3 }, { "Name": "TranslateViewPlane", "Value": 4 }, { "Name": "RotateAxis", "Value": 5 }, { "Name": "RotateTrackball", "Value": 6 }, { "Name": "Scriptable", "Value": 7 }, { "Name": "BestForDevice", "Value": 8 } ], "Name": "DragDetectorDragStyle" }, { "Items": [ { "Name": "Geometric", "Value": 0 }, { "Name": "Physical", "Value": 1 }, { "Name": "Custom", "Value": 2 } ], "Name": "DragDetectorResponseStyle" }, { "Items": [ { "Name": "Object", "Value": 0 }, { "Name": "World", "Value": 1 } ], "Name": "DraggerCoordinateSpace" }, { "Items": [ { "Name": "Geometric", "Value": 0 }, { "Name": "Physical", "Value": 1 } ], "Name": "DraggerMovementMode" }, { "Items": [ { "Name": "In", "Value": 0 }, { "Name": "Out", "Value": 1 }, { "Name": "InOut", "Value": 2 } ], "Name": "EasingDirection" }, { "Items": [ { "Name": "Linear", "Value": 0 }, { "Name": "Sine", "Value": 1 }, { "Name": "Back", "Value": 2 }, { "Name": "Quad", "Value": 3 }, { "Name": "Quart", "Value": 4 }, { "Name": "Quint", "Value": 5 }, { "Name": "Bounce", "Value": 6 }, { "Name": "Elastic", "Value": 7 }, { "Name": "Exponential", "Value": 8 }, { "Name": "Circular", "Value": 9 }, { "Name": "Cubic", "Value": 10 } ], "Name": "EasingStyle" }, { "Items": [ { "Name": "WhenScrollable", "Value": 0 }, { "Name": "Always", "Value": 1 }, { "Name": "Never", "Value": 2 } ], "Name": "ElasticBehavior" }, { "Items": [ { "Name": "DefaultAuto", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Always", "Value": 2 }, { "Name": "Skip2", "Value": 3 }, { "Name": "Skip4", "Value": 4 }, { "Name": "Skip8", "Value": 5 }, { "Name": "Skip16", "Value": 6 } ], "Name": "EnviromentalPhysicsThrottle" }, { "Items": [ { "Name": "DefaultScope", "Value": 0 }, { "Name": "CreatorAssetsCreate", "Value": 1 } ], "Name": "ExperienceAuthScope" }, { "Items": [ { "Name": "NoCraters", "Value": 0 }, { "LegacyNames": [ "CratersAndDebris" ], "Name": "Craters", "Value": 1 } ], "Name": "ExplosionType" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "Audio", "Value": 1 }, { "Name": "Video", "Value": 2 }, { "Name": "Place", "Value": 4 }, { "Name": "Server", "Value": 8 } ], "Name": "FacialAnimationStreamingState" }, { "Items": [ { "Name": "Vertical", "Value": 0 }, { "Name": "Diagonal", "Value": 1 }, { "Name": "MaxAxis", "Value": 2 } ], "Name": "FieldOfViewMode" }, { "Items": [ { "Name": "Horizontal", "Value": 0 }, { "Name": "Vertical", "Value": 1 } ], "Name": "FillDirection" }, { "Items": [ { "Name": "Rejected", "Value": 1 }, { "Name": "Accepted", "Value": 0 } ], "Name": "FilterResult" }, { "Items": [ { "Name": "Cancel", "Value": 0 }, { "Name": "Commit", "Value": 1 }, { "Name": "Append", "Value": 2 } ], "Name": "FinishRecordingOperation" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Experimental", "Value": 1 } ], "Name": "FluidForces" }, { "Items": [ { "Name": "Legacy", "Value": 0 }, { "Name": "Arial", "Value": 1 }, { "Name": "ArialBold", "Value": 2 }, { "Name": "SourceSans", "Value": 3 }, { "Name": "SourceSansBold", "Value": 4 }, { "Name": "SourceSansSemibold", "Value": 16 }, { "Name": "SourceSansLight", "Value": 5 }, { "Name": "SourceSansItalic", "Value": 6 }, { "Name": "Bodoni", "Value": 7 }, { "Name": "Garamond", "Value": 8 }, { "Name": "Cartoon", "Value": 9 }, { "Name": "Code", "Value": 10 }, { "Name": "Highway", "Value": 11 }, { "Name": "SciFi", "Value": 12 }, { "Name": "Arcade", "Value": 13 }, { "Name": "Fantasy", "Value": 14 }, { "Name": "Antique", "Value": 15 }, { "LegacyNames": [ "Montserrat" ], "Name": "Gotham", "Value": 17 }, { "LegacyNames": [ "GothamSemibold", "MontserratMedium" ], "Name": "GothamMedium", "Value": 18 }, { "LegacyNames": [ "MontserratBold" ], "Name": "GothamBold", "Value": 19 }, { "LegacyNames": [ "MontserratBlack" ], "Name": "GothamBlack", "Value": 20 }, { "Name": "AmaticSC", "Value": 21 }, { "Name": "Bangers", "Value": 22 }, { "Name": "Creepster", "Value": 23 }, { "Name": "DenkOne", "Value": 24 }, { "Name": "Fondamento", "Value": 25 }, { "Name": "FredokaOne", "Value": 26 }, { "Name": "GrenzeGotisch", "Value": 27 }, { "Name": "IndieFlower", "Value": 28 }, { "Name": "JosefinSans", "Value": 29 }, { "Name": "Jura", "Value": 30 }, { "Name": "Kalam", "Value": 31 }, { "Name": "LuckiestGuy", "Value": 32 }, { "Name": "Merriweather", "Value": 33 }, { "Name": "Michroma", "Value": 34 }, { "Name": "Nunito", "Value": 35 }, { "Name": "Oswald", "Value": 36 }, { "Name": "PatrickHand", "Value": 37 }, { "Name": "PermanentMarker", "Value": 38 }, { "Name": "Roboto", "Value": 39 }, { "Name": "RobotoCondensed", "Value": 40 }, { "Name": "RobotoMono", "Value": 41 }, { "Name": "Sarpanch", "Value": 42 }, { "Name": "SpecialElite", "Value": 43 }, { "Name": "TitilliumWeb", "Value": 44 }, { "Name": "Ubuntu", "Value": 45 }, { "Name": "Unknown", "Value": 100 } ], "Name": "Font" }, { "Items": [ { "Name": "Size8", "Value": 0 }, { "Name": "Size9", "Value": 1 }, { "Name": "Size10", "Value": 2 }, { "Name": "Size11", "Value": 3 }, { "Name": "Size12", "Value": 4 }, { "Name": "Size14", "Value": 5 }, { "Name": "Size18", "Value": 6 }, { "Name": "Size24", "Value": 7 }, { "Name": "Size36", "Value": 8 }, { "Name": "Size48", "Value": 9 }, { "Name": "Size28", "Value": 10 }, { "Name": "Size32", "Value": 11 }, { "Name": "Size42", "Value": 12 }, { "Name": "Size60", "Value": 13 }, { "Name": "Size96", "Value": 14 } ], "Name": "FontSize" }, { "Items": [ { "Name": "Normal", "Value": 0 }, { "Name": "Italic", "Value": 1 } ], "Name": "FontStyle" }, { "Items": [ { "Name": "Thin", "Value": 100 }, { "Name": "ExtraLight", "Value": 200 }, { "Name": "Light", "Value": 300 }, { "Name": "Regular", "Value": 400 }, { "Name": "Medium", "Value": 500 }, { "Name": "SemiBold", "Value": 600 }, { "Name": "Bold", "Value": 700 }, { "Name": "ExtraBold", "Value": 800 }, { "Name": "Heavy", "Value": 900 } ], "Name": "FontWeight" }, { "Items": [ { "Name": "Magnitude", "Value": 0 }, { "Name": "PerAxis", "Value": 1 } ], "Name": "ForceLimitMode" }, { "Items": [ { "Name": "Symmetric", "Value": 0 }, { "LegacyNames": [ "Block" ], "Name": "Brick", "Value": 1 }, { "Name": "Plate", "Value": 2 }, { "Name": "Custom", "Value": 3 } ], "Name": "FormFactor" }, { "Items": [ { "Name": "Custom", "Value": 0 }, { "Name": "ChatBlue", "Value": 1 }, { "Name": "RobloxSquare", "Value": 2 }, { "Name": "RobloxRound", "Value": 3 }, { "Name": "ChatGreen", "Value": 4 }, { "Name": "ChatRed", "Value": 5 }, { "Name": "DropShadow", "Value": 6 } ], "Name": "FrameStyle" }, { "Items": [ { "Name": "Automatic", "Value": 0 }, { "Name": "On", "Value": 1 }, { "Name": "Off", "Value": 2 } ], "Name": "FramerateManagerMode" }, { "Items": [ { "Name": "Issue", "Value": 0 }, { "Name": "Revoke", "Value": 1 }, { "Name": "Accept", "Value": 2 }, { "Name": "Deny", "Value": 3 } ], "Name": "FriendRequestEvent" }, { "Items": [ { "Name": "Unknown", "Value": 0 }, { "Name": "NotFriend", "Value": 1 }, { "Name": "Friend", "Value": 2 }, { "Name": "FriendRequestSent", "Value": 3 }, { "Name": "FriendRequestReceived", "Value": 4 } ], "Name": "FriendStatus" }, { "Items": [ { "Name": "Passed", "Value": 0 }, { "Name": "Warning", "Value": 1 }, { "Name": "Error", "Value": 2 } ], "Name": "FunctionalTestResult" }, { "Items": [ { "Name": "R6", "Value": 0 }, { "Name": "R15", "Value": 1 }, { "Name": "PlayerChoice", "Value": 2 } ], "Name": "GameAvatarType" }, { "Items": [ { "Name": "AllGenres", "Tags": [ "Deprecated" ], "Value": 0 }, { "Name": "MatchingGenreOnly", "Tags": [ "Deprecated" ], "Value": 1 } ], "Name": "GearGenreSetting", "Tags": [ "Deprecated" ] }, { "Items": [ { "Name": "MeleeWeapons", "Tags": [ "Deprecated" ], "Value": 0 }, { "Name": "RangedWeapons", "Tags": [ "Deprecated" ], "Value": 1 }, { "Name": "Explosives", "Tags": [ "Deprecated" ], "Value": 2 }, { "Name": "PowerUps", "Tags": [ "Deprecated" ], "Value": 3 }, { "Name": "NavigationEnhancers", "Tags": [ "Deprecated" ], "Value": 4 }, { "Name": "MusicalInstruments", "Tags": [ "Deprecated" ], "Value": 5 }, { "Name": "SocialItems", "Tags": [ "Deprecated" ], "Value": 6 }, { "Name": "BuildingTools", "Tags": [ "Deprecated" ], "Value": 7 }, { "Name": "Transport", "Tags": [ "Deprecated" ], "Value": 8 } ], "Name": "GearType", "Tags": [ "Deprecated" ] }, { "Items": [ { "Name": "All", "Value": 0 }, { "Name": "TownAndCity", "Value": 1 }, { "Name": "Fantasy", "Value": 2 }, { "Name": "SciFi", "Value": 3 }, { "Name": "Ninja", "Value": 4 }, { "Name": "Scary", "Value": 5 }, { "Name": "Pirate", "Value": 6 }, { "Name": "Adventure", "Value": 7 }, { "Name": "Sports", "Value": 8 }, { "Name": "Funny", "Value": 9 }, { "Name": "WildWest", "Value": 10 }, { "Name": "War", "Value": 11 }, { "Name": "SkatePark", "Value": 12 }, { "Name": "Tutorial", "Value": 13 } ], "Name": "Genre", "Tags": [ "Deprecated" ] }, { "Items": [ { "Name": "Automatic", "Value": 1 }, { "Name": "Direct3D11", "Value": 2 }, { "Name": "OpenGL", "Value": 4 }, { "Name": "Metal", "Value": 5 }, { "Name": "Vulkan", "Value": 6 }, { "Name": "NoGraphics", "Value": 9 } ], "Name": "GraphicsMode" }, { "Items": [ { "Name": "Core", "Value": 0 }, { "Name": "Custom", "Value": 1 }, { "Name": "CustomBillboards", "Value": 3 }, { "Name": "PlayerNameplates", "Value": 2 } ], "Name": "GuiType" }, { "Items": [ { "Name": "Resize", "Value": 0 }, { "Name": "Movement", "Value": 1 } ], "Name": "HandlesStyle" }, { "Items": [ { "Name": "AlwaysOnTop", "Value": 0 }, { "Name": "Occluded", "Value": 1 } ], "Name": "HighlightDepthMode" }, { "Items": [ { "Name": "Center", "Value": 0 }, { "Name": "Left", "Value": 1 }, { "Name": "Right", "Value": 2 } ], "Name": "HorizontalAlignment" }, { "Items": [ { "Name": "VerySlow", "Value": 0 }, { "Name": "Slow", "Value": 1 }, { "Name": "Medium", "Value": 2 }, { "Name": "Fast", "Value": 3 }, { "Name": "VeryFast", "Value": 4 } ], "Name": "HoverAnimateSpeed" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "Full", "Value": 1 }, { "Name": "DataOnly", "Value": 2 }, { "Name": "Default", "Value": 3 }, { "Name": "InternalRedirectRefresh", "Value": 4 } ], "Name": "HttpCachePolicy" }, { "Items": [ { "Name": "ApplicationJson", "Value": 0 }, { "Name": "ApplicationXml", "Value": 1 }, { "Name": "ApplicationUrlEncoded", "Value": 2 }, { "Name": "TextPlain", "Value": 3 }, { "Name": "TextXml", "Value": 4 } ], "Name": "HttpContentType" }, { "Items": [ { "Name": "OK", "Value": 0 }, { "Name": "InvalidUrl", "Value": 1 }, { "Name": "DnsResolve", "Value": 2 }, { "Name": "ConnectFail", "Value": 3 }, { "Name": "OutOfMemory", "Value": 4 }, { "Name": "TimedOut", "Value": 5 }, { "Name": "TooManyRedirects", "Value": 6 }, { "Name": "InvalidRedirect", "Value": 7 }, { "Name": "NetFail", "Value": 8 }, { "Name": "Aborted", "Value": 9 }, { "Name": "SslConnectFail", "Value": 10 }, { "Name": "SslVerificationFail", "Value": 11 }, { "Name": "Unknown", "Value": 12 } ], "Name": "HttpError" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "MarketplaceService", "Value": 2 }, { "Name": "Players", "Value": 7 }, { "Name": "Chat", "Value": 15 }, { "Name": "Avatar", "Value": 16 }, { "Name": "Analytics", "Value": 23 }, { "Name": "Localization", "Value": 25 } ], "Name": "HttpRequestType" }, { "Items": [ { "Name": "OuterBox", "Value": 0 }, { "Name": "InnerBox", "Value": 1 } ], "Name": "HumanoidCollisionType" }, { "Items": [ { "Name": "Viewer", "Value": 0 }, { "Name": "Subject", "Value": 1 }, { "Name": "None", "Value": 2 } ], "Name": "HumanoidDisplayDistanceType" }, { "Items": [ { "Name": "DisplayWhenDamaged", "Value": 0 }, { "Name": "AlwaysOn", "Value": 1 }, { "Name": "AlwaysOff", "Value": 2 } ], "Name": "HumanoidHealthDisplayType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "HumanoidOnlySetCollisionsOnStateChange" }, { "Items": [ { "Name": "R6", "Value": 0 }, { "Name": "R15", "Value": 1 } ], "Name": "HumanoidRigType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Legacy", "Value": 1 }, { "Name": "NoStateMachine", "Value": 2 }, { "Name": "LuaStateMachine", "Value": 3 } ], "Name": "HumanoidStateMachineMode" }, { "Items": [ { "Name": "FallingDown", "Value": 0 }, { "Name": "Running", "Value": 8 }, { "Name": "RunningNoPhysics", "Value": 10 }, { "Name": "Climbing", "Value": 12 }, { "Name": "StrafingNoPhysics", "Value": 11 }, { "Name": "Ragdoll", "Value": 1 }, { "Name": "GettingUp", "Value": 2 }, { "Name": "Jumping", "Value": 3 }, { "Name": "Landed", "Value": 7 }, { "Name": "Flying", "Value": 6 }, { "Name": "Freefall", "Value": 5 }, { "Name": "Seated", "Value": 13 }, { "Name": "PlatformStanding", "Value": 14 }, { "Name": "Dead", "Value": 15 }, { "Name": "Swimming", "Value": 4 }, { "Name": "Physics", "Value": 16 }, { "Name": "None", "Value": 18 } ], "Name": "HumanoidStateType" }, { "Items": [ { "Name": "NoCollisions", "Value": 0 }, { "Name": "OtherMechanismsAnchored", "Value": 1 }, { "Name": "IncludeContactedMechanisms", "Value": 2 } ], "Name": "IKCollisionsMode" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "IKControlConstraintSupport" }, { "Items": [ { "Name": "Transform", "Value": 0 }, { "Name": "Position", "Value": 1 }, { "Name": "Rotation", "Value": 2 }, { "Name": "LookAt", "Value": 3 } ], "Name": "IKControlType" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "Pending", "Value": 1 }, { "Name": "Initialized", "Value": 2 }, { "Name": "ErrorTimedOut", "Value": 6 }, { "Name": "ErrorConnection", "Value": 4 }, { "Name": "ErrorJsonParse", "Value": 5 }, { "Name": "ErrorInvalidUser", "Value": 3 } ], "Name": "IXPLoadingStatus" }, { "Items": [ { "Name": "Edge", "Value": 0 }, { "Name": "Inset", "Value": 1 }, { "Name": "Center", "Value": 2 } ], "Name": "InOut" }, { "Items": [ { "Name": "Asset", "Value": 0 }, { "Name": "Product", "Value": 1 }, { "Name": "GamePass", "Value": 2 }, { "Name": "Subscription", "Value": 3 }, { "Name": "Bundle", "Value": 4 } ], "Name": "InfoType" }, { "Items": [ { "Name": "Top", "Value": 0 }, { "Name": "Bottom", "Value": 1 }, { "Name": "Left", "Value": 2 }, { "Name": "Right", "Value": 3 }, { "Name": "Float", "Value": 4 } ], "Name": "InitialDockState" }, { "Items": [ { "LegacyNames": [ "Action1", "Action2", "Action3", "Action4", "Action5", "LeftTread", "RightTread", "Steer", "Throtle", "Throttle", "UpDown" ], "Name": "NoInput", "Value": 0 }, { "Name": "Constant", "Value": 12 }, { "Name": "Sin", "Value": 13 } ], "Name": "InputType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "InterpolationThrottlingMode" }, { "Items": [ { "Name": "All", "Value": 0 }, { "Name": "Surface", "Value": 1 }, { "Name": "None", "Value": 2 } ], "Name": "JointCreationMode" }, { "Items": [ { "Name": "Unknown", "Value": 0 }, { "Name": "Backspace", "Value": 8 }, { "Name": "Tab", "Value": 9 }, { "Name": "Clear", "Value": 12 }, { "Name": "Return", "Value": 13 }, { "Name": "Pause", "Value": 19 }, { "Name": "Escape", "Value": 27 }, { "Name": "Space", "Value": 32 }, { "Name": "QuotedDouble", "Value": 34 }, { "Name": "Hash", "Value": 35 }, { "Name": "Dollar", "Value": 36 }, { "Name": "Percent", "Value": 37 }, { "Name": "Ampersand", "Value": 38 }, { "Name": "Quote", "Value": 39 }, { "Name": "LeftParenthesis", "Value": 40 }, { "Name": "RightParenthesis", "Value": 41 }, { "Name": "Asterisk", "Value": 42 }, { "Name": "Plus", "Value": 43 }, { "Name": "Comma", "Value": 44 }, { "Name": "Minus", "Value": 45 }, { "Name": "Period", "Value": 46 }, { "Name": "Slash", "Value": 47 }, { "Name": "Zero", "Value": 48 }, { "Name": "One", "Value": 49 }, { "Name": "Two", "Value": 50 }, { "Name": "Three", "Value": 51 }, { "Name": "Four", "Value": 52 }, { "Name": "Five", "Value": 53 }, { "Name": "Six", "Value": 54 }, { "Name": "Seven", "Value": 55 }, { "Name": "Eight", "Value": 56 }, { "Name": "Nine", "Value": 57 }, { "Name": "Colon", "Value": 58 }, { "Name": "Semicolon", "Value": 59 }, { "Name": "LessThan", "Value": 60 }, { "Name": "Equals", "Value": 61 }, { "Name": "GreaterThan", "Value": 62 }, { "Name": "Question", "Value": 63 }, { "Name": "At", "Value": 64 }, { "Name": "LeftBracket", "Value": 91 }, { "Name": "BackSlash", "Value": 92 }, { "Name": "RightBracket", "Value": 93 }, { "Name": "Caret", "Value": 94 }, { "Name": "Underscore", "Value": 95 }, { "Name": "Backquote", "Value": 96 }, { "Name": "A", "Value": 97 }, { "Name": "B", "Value": 98 }, { "Name": "C", "Value": 99 }, { "Name": "D", "Value": 100 }, { "Name": "E", "Value": 101 }, { "Name": "F", "Value": 102 }, { "Name": "G", "Value": 103 }, { "Name": "H", "Value": 104 }, { "Name": "I", "Value": 105 }, { "Name": "J", "Value": 106 }, { "Name": "K", "Value": 107 }, { "Name": "L", "Value": 108 }, { "Name": "M", "Value": 109 }, { "Name": "N", "Value": 110 }, { "Name": "O", "Value": 111 }, { "Name": "P", "Value": 112 }, { "Name": "Q", "Value": 113 }, { "Name": "R", "Value": 114 }, { "Name": "S", "Value": 115 }, { "Name": "T", "Value": 116 }, { "Name": "U", "Value": 117 }, { "Name": "V", "Value": 118 }, { "Name": "W", "Value": 119 }, { "Name": "X", "Value": 120 }, { "Name": "Y", "Value": 121 }, { "Name": "Z", "Value": 122 }, { "Name": "LeftCurly", "Value": 123 }, { "Name": "Pipe", "Value": 124 }, { "Name": "RightCurly", "Value": 125 }, { "Name": "Tilde", "Value": 126 }, { "Name": "Delete", "Value": 127 }, { "Name": "KeypadZero", "Value": 256 }, { "Name": "KeypadOne", "Value": 257 }, { "Name": "KeypadTwo", "Value": 258 }, { "Name": "KeypadThree", "Value": 259 }, { "Name": "KeypadFour", "Value": 260 }, { "Name": "KeypadFive", "Value": 261 }, { "Name": "KeypadSix", "Value": 262 }, { "Name": "KeypadSeven", "Value": 263 }, { "Name": "KeypadEight", "Value": 264 }, { "Name": "KeypadNine", "Value": 265 }, { "Name": "KeypadPeriod", "Value": 266 }, { "Name": "KeypadDivide", "Value": 267 }, { "Name": "KeypadMultiply", "Value": 268 }, { "Name": "KeypadMinus", "Value": 269 }, { "Name": "KeypadPlus", "Value": 270 }, { "Name": "KeypadEnter", "Value": 271 }, { "Name": "KeypadEquals", "Value": 272 }, { "Name": "Up", "Value": 273 }, { "Name": "Down", "Value": 274 }, { "Name": "Right", "Value": 275 }, { "Name": "Left", "Value": 276 }, { "Name": "Insert", "Value": 277 }, { "Name": "Home", "Value": 278 }, { "Name": "End", "Value": 279 }, { "Name": "PageUp", "Value": 280 }, { "Name": "PageDown", "Value": 281 }, { "Name": "LeftShift", "Value": 304 }, { "Name": "RightShift", "Value": 303 }, { "Name": "LeftMeta", "Value": 310 }, { "Name": "RightMeta", "Value": 309 }, { "Name": "LeftAlt", "Value": 308 }, { "Name": "RightAlt", "Value": 307 }, { "Name": "LeftControl", "Value": 306 }, { "Name": "RightControl", "Value": 305 }, { "Name": "CapsLock", "Value": 301 }, { "Name": "NumLock", "Value": 300 }, { "Name": "ScrollLock", "Value": 302 }, { "Name": "LeftSuper", "Value": 311 }, { "Name": "RightSuper", "Value": 312 }, { "Name": "Mode", "Value": 313 }, { "Name": "Compose", "Value": 314 }, { "Name": "Help", "Value": 315 }, { "Name": "Print", "Value": 316 }, { "Name": "SysReq", "Value": 317 }, { "Name": "Break", "Value": 318 }, { "Name": "Menu", "Value": 319 }, { "Name": "Power", "Value": 320 }, { "Name": "Euro", "Value": 321 }, { "Name": "Undo", "Value": 322 }, { "Name": "F1", "Value": 282 }, { "Name": "F2", "Value": 283 }, { "Name": "F3", "Value": 284 }, { "Name": "F4", "Value": 285 }, { "Name": "F5", "Value": 286 }, { "Name": "F6", "Value": 287 }, { "Name": "F7", "Value": 288 }, { "Name": "F8", "Value": 289 }, { "Name": "F9", "Value": 290 }, { "Name": "F10", "Value": 291 }, { "Name": "F11", "Value": 292 }, { "Name": "F12", "Value": 293 }, { "Name": "F13", "Value": 294 }, { "Name": "F14", "Value": 295 }, { "Name": "F15", "Value": 296 }, { "Name": "World0", "Value": 160 }, { "Name": "World1", "Value": 161 }, { "Name": "World2", "Value": 162 }, { "Name": "World3", "Value": 163 }, { "Name": "World4", "Value": 164 }, { "Name": "World5", "Value": 165 }, { "Name": "World6", "Value": 166 }, { "Name": "World7", "Value": 167 }, { "Name": "World8", "Value": 168 }, { "Name": "World9", "Value": 169 }, { "Name": "World10", "Value": 170 }, { "Name": "World11", "Value": 171 }, { "Name": "World12", "Value": 172 }, { "Name": "World13", "Value": 173 }, { "Name": "World14", "Value": 174 }, { "Name": "World15", "Value": 175 }, { "Name": "World16", "Value": 176 }, { "Name": "World17", "Value": 177 }, { "Name": "World18", "Value": 178 }, { "Name": "World19", "Value": 179 }, { "Name": "World20", "Value": 180 }, { "Name": "World21", "Value": 181 }, { "Name": "World22", "Value": 182 }, { "Name": "World23", "Value": 183 }, { "Name": "World24", "Value": 184 }, { "Name": "World25", "Value": 185 }, { "Name": "World26", "Value": 186 }, { "Name": "World27", "Value": 187 }, { "Name": "World28", "Value": 188 }, { "Name": "World29", "Value": 189 }, { "Name": "World30", "Value": 190 }, { "Name": "World31", "Value": 191 }, { "Name": "World32", "Value": 192 }, { "Name": "World33", "Value": 193 }, { "Name": "World34", "Value": 194 }, { "Name": "World35", "Value": 195 }, { "Name": "World36", "Value": 196 }, { "Name": "World37", "Value": 197 }, { "Name": "World38", "Value": 198 }, { "Name": "World39", "Value": 199 }, { "Name": "World40", "Value": 200 }, { "Name": "World41", "Value": 201 }, { "Name": "World42", "Value": 202 }, { "Name": "World43", "Value": 203 }, { "Name": "World44", "Value": 204 }, { "Name": "World45", "Value": 205 }, { "Name": "World46", "Value": 206 }, { "Name": "World47", "Value": 207 }, { "Name": "World48", "Value": 208 }, { "Name": "World49", "Value": 209 }, { "Name": "World50", "Value": 210 }, { "Name": "World51", "Value": 211 }, { "Name": "World52", "Value": 212 }, { "Name": "World53", "Value": 213 }, { "Name": "World54", "Value": 214 }, { "Name": "World55", "Value": 215 }, { "Name": "World56", "Value": 216 }, { "Name": "World57", "Value": 217 }, { "Name": "World58", "Value": 218 }, { "Name": "World59", "Value": 219 }, { "Name": "World60", "Value": 220 }, { "Name": "World61", "Value": 221 }, { "Name": "World62", "Value": 222 }, { "Name": "World63", "Value": 223 }, { "Name": "World64", "Value": 224 }, { "Name": "World65", "Value": 225 }, { "Name": "World66", "Value": 226 }, { "Name": "World67", "Value": 227 }, { "Name": "World68", "Value": 228 }, { "Name": "World69", "Value": 229 }, { "Name": "World70", "Value": 230 }, { "Name": "World71", "Value": 231 }, { "Name": "World72", "Value": 232 }, { "Name": "World73", "Value": 233 }, { "Name": "World74", "Value": 234 }, { "Name": "World75", "Value": 235 }, { "Name": "World76", "Value": 236 }, { "Name": "World77", "Value": 237 }, { "Name": "World78", "Value": 238 }, { "Name": "World79", "Value": 239 }, { "Name": "World80", "Value": 240 }, { "Name": "World81", "Value": 241 }, { "Name": "World82", "Value": 242 }, { "Name": "World83", "Value": 243 }, { "Name": "World84", "Value": 244 }, { "Name": "World85", "Value": 245 }, { "Name": "World86", "Value": 246 }, { "Name": "World87", "Value": 247 }, { "Name": "World88", "Value": 248 }, { "Name": "World89", "Value": 249 }, { "Name": "World90", "Value": 250 }, { "Name": "World91", "Value": 251 }, { "Name": "World92", "Value": 252 }, { "Name": "World93", "Value": 253 }, { "Name": "World94", "Value": 254 }, { "Name": "World95", "Value": 255 }, { "Name": "ButtonX", "Value": 1000 }, { "Name": "ButtonY", "Value": 1001 }, { "Name": "ButtonA", "Value": 1002 }, { "Name": "ButtonB", "Value": 1003 }, { "Name": "ButtonR1", "Value": 1004 }, { "Name": "ButtonL1", "Value": 1005 }, { "Name": "ButtonR2", "Value": 1006 }, { "Name": "ButtonL2", "Value": 1007 }, { "Name": "ButtonR3", "Value": 1008 }, { "Name": "ButtonL3", "Value": 1009 }, { "Name": "ButtonStart", "Value": 1010 }, { "Name": "ButtonSelect", "Value": 1011 }, { "Name": "DPadLeft", "Value": 1012 }, { "Name": "DPadRight", "Value": 1013 }, { "Name": "DPadUp", "Value": 1014 }, { "Name": "DPadDown", "Value": 1015 }, { "Name": "Thumbstick1", "Value": 1016 }, { "Name": "Thumbstick2", "Value": 1017 } ], "Name": "KeyCode" }, { "Items": [ { "Name": "Constant", "Value": 0 }, { "Name": "Linear", "Value": 1 }, { "Name": "Cubic", "Value": 2 } ], "Name": "KeyInterpolationMode" }, { "Items": [ { "Name": "Include", "Value": 0 }, { "Name": "Exclude", "Value": 1 } ], "Name": "KeywordFilterType" }, { "Items": [ { "Name": "Default", "Value": 0 } ], "Name": "Language" }, { "Items": [ { "Name": "Left", "Value": 0 }, { "Name": "Center", "Value": 1 }, { "Name": "Right", "Value": 2 } ], "Name": "LeftRight" }, { "Items": [ { "Name": "Head", "Value": 0 }, { "Name": "Torso", "Value": 1 }, { "Name": "LeftArm", "Value": 2 }, { "Name": "RightArm", "Value": 3 }, { "Name": "LeftLeg", "Value": 4 }, { "Name": "RightLeg", "Value": 5 }, { "Name": "Unknown", "Value": 6 } ], "Name": "Limb" }, { "Items": [ { "Name": "Round", "Value": 0 }, { "Name": "Bevel", "Value": 1 }, { "Name": "Miter", "Value": 2 } ], "Name": "LineJoinMode" }, { "Items": [ { "Name": "Horizontal", "Value": 0 }, { "Name": "Vertical", "Value": 1 } ], "Name": "ListDisplayMode" }, { "Items": [ { "Name": "Camera", "Value": 0 }, { "Name": "CFrame", "Value": 1 }, { "Name": "ObjectPosition", "Value": 2 }, { "Name": "ObjectCFrame", "Value": 3 } ], "Name": "ListenerType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "LoadCharacterLayeredClothing" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "LoadDynamicHeads" }, { "Items": [ { "Name": "PlainText", "Value": 0 }, { "Name": "Markdown", "Value": 1 } ], "Name": "MarkupKind" }, { "Items": [ { "Name": "Plastic", "Value": 256 }, { "Name": "Wood", "Value": 512 }, { "Name": "Slate", "Value": 800 }, { "Name": "Concrete", "Value": 816 }, { "LegacyNames": [ "Corroded Metal" ], "Name": "CorrodedMetal", "Value": 1040 }, { "Name": "DiamondPlate", "Value": 1056 }, { "LegacyNames": [ "Aluminum" ], "Name": "Foil", "Value": 1072 }, { "Name": "Grass", "Value": 1280 }, { "Name": "Ice", "Value": 1536 }, { "Name": "Marble", "Value": 784 }, { "Name": "Granite", "Value": 832 }, { "Name": "Brick", "Value": 848 }, { "Name": "Pebble", "Value": 864 }, { "Name": "Sand", "Value": 1296 }, { "Name": "Fabric", "Value": 1312 }, { "Name": "SmoothPlastic", "Value": 272 }, { "Name": "Metal", "Value": 1088 }, { "Name": "WoodPlanks", "Value": 528 }, { "Name": "Cobblestone", "Value": 880 }, { "Name": "Air", "Tags": [ "NotBrowsable" ], "Value": 1792 }, { "Name": "Water", "Tags": [ "NotBrowsable" ], "Value": 2048 }, { "Name": "Rock", "Value": 896 }, { "Name": "Glacier", "Value": 1552 }, { "Name": "Snow", "Value": 1328 }, { "Name": "Sandstone", "Value": 912 }, { "Name": "Mud", "Value": 1344 }, { "Name": "Basalt", "Value": 788 }, { "Name": "Ground", "Value": 1360 }, { "Name": "CrackedLava", "Value": 804 }, { "Name": "Neon", "Value": 288 }, { "Name": "Glass", "Value": 1568 }, { "Name": "Asphalt", "Value": 1376 }, { "Name": "LeafyGrass", "Value": 1284 }, { "Name": "Salt", "Value": 1392 }, { "Name": "Limestone", "Value": 820 }, { "Name": "Pavement", "Value": 836 }, { "Name": "ForceField", "Value": 1584 } ], "Name": "Material" }, { "Items": [ { "Name": "Regular", "Value": 0 }, { "Name": "Organic", "Value": 1 } ], "Name": "MaterialPattern" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "BuildersClub", "Value": 1 }, { "Name": "TurboBuildersClub", "Value": 2 }, { "Name": "OutrageousBuildersClub", "Value": 3 }, { "Name": "Premium", "Value": 4 } ], "Name": "MembershipType" }, { "Items": [ { "Name": "DistanceBased", "Value": 0 }, { "Name": "Level00", "Value": 1 }, { "Name": "Level01", "Value": 2 }, { "Name": "Level02", "Value": 3 }, { "Name": "Level03", "Value": 4 }, { "Name": "Level04", "Value": 5 } ], "Name": "MeshPartDetailLevel" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "MeshPartHeadsAndAccessories" }, { "Items": [ { "Name": "Stud", "Value": 0 }, { "Name": "Meter", "Value": 1 }, { "Name": "CM", "Value": 2 }, { "Name": "MM", "Value": 3 }, { "Name": "Foot", "Value": 4 }, { "Name": "Inch", "Value": 5 } ], "Name": "MeshScaleUnit" }, { "Items": [ { "Name": "Head", "Value": 0 }, { "Name": "Torso", "Value": 1 }, { "Name": "Wedge", "Value": 2 }, { "Name": "Prism", "Tags": [ "Deprecated" ], "Value": 7 }, { "Name": "Pyramid", "Tags": [ "Deprecated" ], "Value": 8 }, { "Name": "ParallelRamp", "Tags": [ "Deprecated" ], "Value": 9 }, { "Name": "RightAngleRamp", "Tags": [ "Deprecated" ], "Value": 10 }, { "Name": "CornerWedge", "Tags": [ "Deprecated" ], "Value": 11 }, { "Name": "Brick", "Value": 6 }, { "Name": "Sphere", "Value": 3 }, { "Name": "Cylinder", "Value": 4 }, { "Name": "FileMesh", "Value": 5 } ], "Name": "MeshType" }, { "Items": [ { "Name": "MessageOutput", "Value": 0 }, { "Name": "MessageInfo", "Value": 1 }, { "Name": "MessageWarning", "Value": 2 }, { "Name": "MessageError", "Value": 3 } ], "Name": "MessageType" }, { "Items": [ { "Name": "Automatic", "Value": 0 }, { "Name": "StreamingMesh", "Value": 1 }, { "Name": "Disabled", "Value": 2 } ], "Name": "ModelLevelOfDetail" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Legacy", "Value": 1 }, { "Name": "Improved", "Value": 2 } ], "Name": "ModelStreamingBehavior" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Atomic", "Value": 1 }, { "Name": "Persistent", "Value": 2 }, { "Name": "PersistentPerPlayer", "Value": 3 }, { "Name": "Nonatomic", "Value": 4 } ], "Name": "ModelStreamingMode" }, { "Items": [ { "Name": "Alt", "Value": 2 }, { "Name": "Ctrl", "Value": 1 }, { "Name": "Meta", "Value": 3 }, { "Name": "Shift", "Value": 0 } ], "Name": "ModifierKey" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "LockCenter", "Value": 1 }, { "Name": "LockCurrentPosition", "Value": 2 } ], "Name": "MouseBehavior" }, { "Items": [ { "Name": "Stopped", "Value": 0 }, { "Name": "Coasting", "Value": 1 }, { "Name": "Pushing", "Value": 2 }, { "Name": "Stopping", "Value": 3 }, { "Name": "AirFree", "Value": 4 } ], "Name": "MoveState" }, { "Items": [ { "Name": "Unmuted", "Value": 0 }, { "Name": "Muted", "Value": 1 } ], "Name": "MuteState" }, { "Items": [ { "Name": "OccludeAll", "Value": 2 }, { "Name": "EnemyOcclusion", "Value": 1 }, { "Name": "NoOcclusion", "Value": 0 } ], "Name": "NameOcclusion" }, { "Items": [ { "Name": "Automatic", "Value": 0 }, { "Name": "Manual", "Value": 1 }, { "Name": "OnContact", "Value": 2 } ], "Name": "NetworkOwnership" }, { "Items": [ { "Name": "Top", "Value": 1 }, { "Name": "Bottom", "Value": 4 }, { "Name": "Back", "Value": 2 }, { "Name": "Front", "Value": 5 }, { "Name": "Right", "Value": 0 }, { "Name": "Left", "Value": 3 } ], "Name": "NormalId" }, { "Items": [ { "Name": "OneAttachment", "Value": 0 }, { "Name": "TwoAttachment", "Value": 1 } ], "Name": "OrientationAlignmentMode" }, { "Items": [ { "Name": "All", "Value": 1 }, { "Name": "Created", "Value": 2 }, { "Name": "Purchased", "Value": 3 } ], "Name": "OutfitSource" }, { "Items": [ { "Name": "All", "Value": 1 }, { "Name": "Avatar", "Value": 2 }, { "Name": "DynamicHead", "Value": 3 } ], "Name": "OutfitType" }, { "Items": [ { "Name": "Horizontal", "Value": 0 }, { "Name": "Vertical", "Value": 1 } ], "Name": "OutputLayoutMode" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "ForceShow", "Value": 1 }, { "Name": "ForceHide", "Value": 2 } ], "Name": "OverrideMouseIconBehavior" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "NoAccess", "Value": 1 }, { "Name": "Revoked", "Value": 2 }, { "Name": "UseView", "Value": 3 }, { "Name": "Edit", "Value": 4 }, { "Name": "Own", "Value": 5 } ], "Name": "PackagePermission" }, { "Items": [ { "Name": "Ball", "Value": 0 }, { "Name": "Block", "Value": 1 }, { "Name": "Cylinder", "Value": 2 }, { "Name": "Wedge", "Value": 3 }, { "Name": "CornerWedge", "Value": 4 } ], "Name": "PartType" }, { "Items": [ { "Name": "Box", "Value": 0 }, { "Name": "Sphere", "Value": 1 }, { "Name": "Cylinder", "Value": 2 }, { "Name": "Disc", "Value": 3 } ], "Name": "ParticleEmitterShape" }, { "Items": [ { "Name": "Outward", "Value": 0 }, { "Name": "Inward", "Value": 1 }, { "Name": "InAndOut", "Value": 2 } ], "Name": "ParticleEmitterShapeInOut" }, { "Items": [ { "Name": "Volume", "Value": 0 }, { "Name": "Surface", "Value": 1 } ], "Name": "ParticleEmitterShapeStyle" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "Grid2x2", "Value": 1 }, { "Name": "Grid4x4", "Value": 2 }, { "Name": "Grid8x8", "Value": 3 } ], "Name": "ParticleFlipbookLayout" }, { "Items": [ { "Name": "Loop", "Value": 0 }, { "Name": "OneShot", "Value": 1 }, { "Name": "PingPong", "Value": 2 }, { "Name": "Random", "Value": 3 } ], "Name": "ParticleFlipbookMode" }, { "Items": [ { "Name": "NotCompatible", "Value": 0 }, { "Name": "Compatible", "Value": 1 }, { "Name": "Unknown", "Value": 2 } ], "Name": "ParticleFlipbookTextureCompatible" }, { "Items": [ { "Name": "FacingCamera", "Value": 0 }, { "Name": "FacingCameraWorldUp", "Value": 1 }, { "Name": "VelocityParallel", "Value": 2 }, { "Name": "VelocityPerpendicular", "Value": 3 } ], "Name": "ParticleOrientation" }, { "Items": [ { "Name": "Success", "Value": 0 }, { "Name": "ClosestNoPath", "Tags": [ "Deprecated" ], "Value": 1 }, { "Name": "ClosestOutOfRange", "Tags": [ "Deprecated" ], "Value": 2 }, { "Name": "FailStartNotEmpty", "Tags": [ "Deprecated" ], "Value": 3 }, { "Name": "FailFinishNotEmpty", "Tags": [ "Deprecated" ], "Value": 4 }, { "Name": "NoPath", "Value": 5 } ], "Name": "PathStatus" }, { "Items": [ { "Name": "Walk", "Value": 0 }, { "Name": "Jump", "Value": 1 }, { "Name": "Custom", "Value": 2 } ], "Name": "PathWaypointAction" }, { "Items": [ { "Name": "Game", "Value": 0 }, { "Name": "RobloxGame", "Value": 1 }, { "Name": "RobloxScript", "Value": 2 }, { "Name": "Studio", "Value": 3 }, { "Name": "Roblox", "Value": 4 } ], "Name": "PermissionLevelShown" }, { "Items": [ { "Name": "Fixed240Hz", "Value": 0 }, { "Name": "Fixed120Hz", "Value": 1 }, { "Name": "Fixed60Hz", "Value": 2 } ], "Name": "PhysicsSimulationRate" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Fixed", "Value": 1 }, { "Name": "Adaptive", "Value": 2 } ], "Name": "PhysicsSteppingMethod" }, { "Items": [ { "Name": "Windows", "Value": 0 }, { "Name": "OSX", "Value": 1 }, { "Name": "IOS", "Value": 2 }, { "Name": "Android", "Value": 3 }, { "Name": "XBoxOne", "Value": 4 }, { "Name": "PS4", "Value": 5 }, { "Name": "PS3", "Value": 6 }, { "Name": "XBox360", "Value": 7 }, { "Name": "WiiU", "Value": 8 }, { "Name": "NX", "Value": 9 }, { "Name": "Ouya", "Value": 10 }, { "Name": "AndroidTV", "Value": 11 }, { "Name": "Chromecast", "Value": 12 }, { "Name": "Linux", "Value": 13 }, { "Name": "SteamOS", "Value": 14 }, { "Name": "WebOS", "Value": 15 }, { "Name": "DOS", "Value": 16 }, { "Name": "BeOS", "Value": 17 }, { "Name": "UWP", "Value": 18 }, { "Name": "None", "Value": 20 } ], "Name": "Platform" }, { "Items": [ { "Name": "Begin", "Value": 0 }, { "Name": "Delayed", "Value": 1 }, { "Name": "Playing", "Value": 2 }, { "Name": "Paused", "Value": 3 }, { "Name": "Completed", "Value": 4 }, { "Name": "Cancelled", "Value": 5 } ], "Name": "PlaybackState" }, { "Items": [ { "Name": "CharacterForward", "Value": 0 }, { "Name": "CharacterBackward", "Value": 1 }, { "Name": "CharacterLeft", "Value": 2 }, { "Name": "CharacterRight", "Value": 3 }, { "Name": "CharacterJump", "Value": 4 } ], "Name": "PlayerActions" }, { "Items": [ { "Name": "All", "Value": 0 }, { "Name": "Team", "Value": 1 }, { "Name": "Whisper", "Value": 2 } ], "Name": "PlayerChatType" }, { "Items": [ { "Name": "Out", "Value": 1 }, { "Name": "InOut", "Value": 2 }, { "Name": "In", "Value": 0 } ], "Name": "PoseEasingDirection" }, { "Items": [ { "Name": "Linear", "Value": 0 }, { "Name": "Constant", "Value": 1 }, { "Name": "Elastic", "Value": 2 }, { "Name": "Cubic", "Value": 3 }, { "Name": "Bounce", "Value": 4 } ], "Name": "PoseEasingStyle" }, { "Items": [ { "Name": "OneAttachment", "Value": 0 }, { "Name": "TwoAttachment", "Value": 1 } ], "Name": "PositionAlignmentMode" }, { "Items": [ { "Name": "Owner", "Value": 255 }, { "Name": "Admin", "Value": 240 }, { "Name": "Member", "Value": 128 }, { "Name": "Visitor", "Value": 10 }, { "Name": "Banned", "Value": 0 } ], "Name": "PrivilegeType", "Tags": [ "Deprecated" ] }, { "Items": [ { "Name": "AvatarShop", "Value": 0 }, { "Name": "AllowedGames", "Value": 1 }, { "Name": "AllGames", "Value": 2 } ], "Name": "ProductLocationRestriction" }, { "Items": [ { "Name": "NotProcessedYet", "Value": 0 }, { "Name": "PurchaseGranted", "Value": 1 } ], "Name": "ProductPurchaseDecision" }, { "Items": [ { "Name": "Success", "Value": 1 }, { "Name": "PermissionDenied", "Value": 2 }, { "Name": "Timeout", "Value": 3 }, { "Name": "UploadFailed", "Value": 4 }, { "Name": "NoUserInput", "Value": 5 }, { "Name": "UnknownFailure", "Value": 6 } ], "Name": "PromptCreateAssetResult" }, { "Items": [ { "Name": "Success", "Value": 1 }, { "Name": "PermissionDenied", "Value": 2 }, { "Name": "Timeout", "Value": 3 }, { "Name": "UploadFailed", "Value": 4 }, { "Name": "NoUserInput", "Value": 5 }, { "Name": "UnknownFailure", "Value": 6 } ], "Name": "PromptPublishAssetResult" }, { "Items": [ { "Name": "Ok", "Value": 0 }, { "Name": "Warning", "Value": 1 }, { "Name": "Error", "Value": 2 } ], "Name": "PropertyStatus" }, { "Items": [ { "Name": "OnePerButton", "Value": 0 }, { "Name": "OneGlobally", "Value": 1 }, { "Name": "AlwaysShow", "Value": 2 } ], "Name": "ProximityPromptExclusivity" }, { "Items": [ { "Name": "Keyboard", "Value": 0 }, { "Name": "Gamepad", "Value": 1 }, { "Name": "Touch", "Value": 2 } ], "Name": "ProximityPromptInputType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Custom", "Value": 1 } ], "Name": "ProximityPromptStyle" }, { "Items": [ { "Name": "Automatic", "Value": 0 }, { "LegacyNames": [ "Level 1" ], "Name": "Level01", "Value": 1 }, { "LegacyNames": [ "Level 2" ], "Name": "Level02", "Value": 2 }, { "LegacyNames": [ "Level 3" ], "Name": "Level03", "Value": 3 }, { "LegacyNames": [ "Level 4" ], "Name": "Level04", "Value": 4 }, { "LegacyNames": [ "Level 5" ], "Name": "Level05", "Value": 5 }, { "LegacyNames": [ "Level 6" ], "Name": "Level06", "Value": 6 }, { "LegacyNames": [ "Level 7" ], "Name": "Level07", "Value": 7 }, { "LegacyNames": [ "Level 8" ], "Name": "Level08", "Value": 8 }, { "LegacyNames": [ "Level 9" ], "Name": "Level09", "Value": 9 }, { "LegacyNames": [ "Level 10" ], "Name": "Level10", "Value": 10 }, { "LegacyNames": [ "Level 11" ], "Name": "Level11", "Value": 11 }, { "LegacyNames": [ "Level 12" ], "Name": "Level12", "Value": 12 }, { "LegacyNames": [ "Level 13" ], "Name": "Level13", "Value": 13 }, { "LegacyNames": [ "Level 14" ], "Name": "Level14", "Value": 14 }, { "LegacyNames": [ "Level 15" ], "Name": "Level15", "Value": 15 }, { "LegacyNames": [ "Level 16" ], "Name": "Level16", "Value": 16 }, { "LegacyNames": [ "Level 17" ], "Name": "Level17", "Value": 17 }, { "LegacyNames": [ "Level 18" ], "Name": "Level18", "Value": 18 }, { "LegacyNames": [ "Level 19" ], "Name": "Level19", "Value": 19 }, { "LegacyNames": [ "Level 20" ], "Name": "Level20", "Value": 20 }, { "LegacyNames": [ "Level 21" ], "Name": "Level21", "Value": 21 } ], "Name": "QualityLevel" }, { "Items": [ { "Name": "OuterBox", "Value": 0 }, { "Name": "InnerBox", "Value": 1 } ], "Name": "R15CollisionType" }, { "Items": [ { "LegacyNames": [ "Blacklist" ], "Name": "Exclude", "Value": 0 }, { "LegacyNames": [ "Whitelist" ], "Name": "Include", "Value": 1 } ], "Name": "RaycastFilterType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "RejectCharacterDeletions" }, { "Items": [ { "Name": "Automatic", "Value": 0 }, { "Name": "Precise", "Value": 1 }, { "Name": "Performance", "Value": 2 } ], "Name": "RenderFidelity" }, { "Items": [ { "Name": "First", "Value": 0 }, { "Name": "Input", "Value": 100 }, { "Name": "Camera", "Value": 200 }, { "Name": "Character", "Value": 300 }, { "Name": "Last", "Value": 2000 } ], "Name": "RenderPriority" }, { "Items": [ { "Name": "psnr", "Value": 0 }, { "Name": "diff", "Value": 1 } ], "Name": "RenderingTestComparisonMethod" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "ReplicateInstanceDestroySetting" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Pixelated", "Value": 1 } ], "Name": "ResamplerMode" }, { "Items": [ { "Name": "Standard", "Value": 0 }, { "Name": "Selection", "Value": 524288 }, { "Name": "Hover", "Value": 262144 }, { "Name": "Active", "Value": 131072 } ], "Name": "ReservedHighlightId" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "RotationsReset", "Value": 1 }, { "Name": "Custom", "Value": 2 } ], "Name": "RestPose" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Done", "Value": 1 }, { "Name": "Go", "Value": 2 }, { "Name": "Next", "Value": 3 }, { "Name": "Search", "Value": 4 }, { "Name": "Send", "Value": 5 } ], "Name": "ReturnKeyType" }, { "Items": [ { "Name": "NoReverb", "Value": 0 }, { "Name": "GenericReverb", "Value": 1 }, { "Name": "PaddedCell", "Value": 2 }, { "Name": "Room", "Value": 3 }, { "Name": "Bathroom", "Value": 4 }, { "Name": "LivingRoom", "Value": 5 }, { "Name": "StoneRoom", "Value": 6 }, { "Name": "Auditorium", "Value": 7 }, { "Name": "ConcertHall", "Value": 8 }, { "Name": "Cave", "Value": 9 }, { "Name": "Arena", "Value": 10 }, { "Name": "Hangar", "Value": 11 }, { "Name": "CarpettedHallway", "Value": 12 }, { "Name": "Hallway", "Value": 13 }, { "Name": "StoneCorridor", "Value": 14 }, { "Name": "Alley", "Value": 15 }, { "Name": "Forest", "Value": 16 }, { "Name": "City", "Value": 17 }, { "Name": "Mountains", "Value": 18 }, { "Name": "Quarry", "Value": 19 }, { "Name": "Plain", "Value": 20 }, { "Name": "ParkingLot", "Value": 21 }, { "Name": "SewerPipe", "Value": 22 }, { "Name": "UnderWater", "Value": 23 } ], "Name": "ReverbType" }, { "Items": [ { "Name": "Select", "Value": 0 }, { "Name": "Scale", "Value": 1 }, { "Name": "Rotate", "Value": 2 }, { "Name": "Move", "Value": 3 }, { "Name": "Transform", "Value": 4 }, { "Name": "ColorPicker", "Value": 5 }, { "Name": "MaterialPicker", "Value": 6 }, { "Name": "Group", "Value": 7 }, { "Name": "Ungroup", "Value": 8 }, { "Name": "None", "Value": 9 } ], "Name": "RibbonTool" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Rthro", "Value": 1 }, { "Name": "RthroNarrow", "Value": 2 } ], "Name": "RigScale" }, { "Items": [ { "Name": "R15", "Value": 0 }, { "Name": "Custom", "Value": 1 }, { "Name": "None", "Value": 2 } ], "Name": "RigType" }, { "Items": [ { "Name": "Inverse", "Value": 0 }, { "Name": "Linear", "Value": 1 }, { "Name": "InverseTapered", "Value": 3 }, { "Name": "LinearSquare", "Value": 2 } ], "Name": "RollOffMode" }, { "Items": [ { "Name": "XYZ", "Value": 0 }, { "Name": "XZY", "Value": 1 }, { "Name": "YZX", "Value": 2 }, { "Name": "YXZ", "Value": 3 }, { "Name": "ZXY", "Value": 4 }, { "Name": "ZYX", "Value": 5 } ], "Name": "RotationOrder" }, { "Items": [ { "Name": "MovementRelative", "Value": 0 }, { "Name": "CameraRelative", "Value": 1 } ], "Name": "RotationType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "RtlTextSupport" }, { "Items": [ { "Name": "Legacy", "Value": 0 }, { "Name": "Server", "Value": 1 }, { "Name": "Client", "Value": 2 }, { "Name": "Plugin", "Value": 3 } ], "Name": "RunContext" }, { "Items": [ { "Name": "Aggregate", "Value": 0 }, { "Name": "Snapshot", "Value": 1 }, { "Name": "Hybrid", "Value": 2 } ], "Name": "RuntimeUndoBehavior" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "FullscreenExtension", "Value": 1 } ], "Name": "SafeAreaCompatibility" }, { "Items": [ { "Name": "All", "Value": 1 }, { "Name": "Collectibles", "Value": 2 }, { "Name": "Premium", "Value": 3 } ], "Name": "SalesTypeFilter" }, { "Items": [ { "Name": "BadThumbnailType", "Value": 1 }, { "Name": "BadYRotDeg", "Value": 2 }, { "Name": "BadFieldOfViewDeg", "Value": 3 }, { "Name": "BadDistanceScale", "Value": 4 }, { "Name": "Other", "Value": 5 } ], "Name": "SaveAvatarThumbnailCustomizationFailure" }, { "Items": [ { "Name": "SaveAll", "Value": 2 }, { "Name": "SaveWorld", "Value": 0 }, { "Name": "SaveGame", "Value": 1 } ], "Name": "SaveFilter", "Tags": [ "Deprecated" ] }, { "Items": [ { "Name": "Automatic", "Value": 0 }, { "Name": "QualityLevel1", "Value": 1 }, { "Name": "QualityLevel2", "Value": 2 }, { "Name": "QualityLevel3", "Value": 3 }, { "Name": "QualityLevel4", "Value": 4 }, { "Name": "QualityLevel5", "Value": 5 }, { "Name": "QualityLevel6", "Value": 6 }, { "Name": "QualityLevel7", "Value": 7 }, { "Name": "QualityLevel8", "Value": 8 }, { "Name": "QualityLevel9", "Value": 9 }, { "Name": "QualityLevel10", "Value": 10 } ], "Name": "SavedQualitySetting" }, { "Items": [ { "Name": "Stretch", "Value": 0 }, { "Name": "Slice", "Value": 1 }, { "Name": "Tile", "Value": 2 }, { "Name": "Fit", "Value": 3 }, { "Name": "Crop", "Value": 4 } ], "Name": "ScaleType" }, { "Items": [ { "Name": "ConsentAccepted", "Value": 0 }, { "Name": "InvalidScopes", "Value": 1 }, { "Name": "Timeout", "Value": 2 }, { "Name": "NoUserInput", "Value": 3 }, { "Name": "BackendError", "Value": 4 }, { "Name": "UnexpectedError", "Value": 5 }, { "Name": "InvalidArgument", "Value": 6 }, { "Name": "ConsentDenied", "Value": 7 } ], "Name": "ScopeCheckResult" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "DeviceSafeInsets", "Value": 1 }, { "Name": "CoreUISafeInsets", "Value": 2 } ], "Name": "ScreenInsets" }, { "Items": [ { "Name": "LandscapeLeft", "Value": 0 }, { "Name": "LandscapeRight", "Value": 1 }, { "Name": "LandscapeSensor", "Value": 2 }, { "Name": "Portrait", "Value": 3 }, { "Name": "Sensor", "Value": 4 } ], "Name": "ScreenOrientation" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "ScrollBar", "Value": 1 }, { "Name": "Always", "Value": 2 } ], "Name": "ScrollBarInset" }, { "Items": [ { "Name": "X", "Value": 1 }, { "Name": "Y", "Value": 2 }, { "Name": "XY", "Value": 4 } ], "Name": "ScrollingDirection" }, { "Items": [ { "Name": "Escape", "Value": 0 }, { "Name": "Stop", "Value": 1 } ], "Name": "SelectionBehavior" }, { "Items": [ { "Name": "Outlines", "Value": 0 }, { "Name": "BoundingBoxes", "Value": 1 }, { "Name": "Both", "Value": 2 } ], "Name": "SelectionRenderMode" }, { "Items": [ { "Name": "LastPosition", "Value": 0 }, { "Name": "TopLeft", "Value": 1 }, { "Name": "TopRight", "Value": 2 }, { "Name": "BottomLeft", "Value": 3 }, { "Name": "BottomRight", "Value": 4 } ], "Name": "SelfViewPosition" }, { "Items": [ { "Name": "Floor", "Value": 0 }, { "Name": "Ladder", "Value": 1 } ], "Name": "SensorMode" }, { "Items": [ { "Name": "OnRead", "Value": 0 }, { "Name": "Manual", "Value": 1 } ], "Name": "SensorUpdateType" }, { "Items": [ { "Name": "Enabled", "Value": 0 }, { "Name": "Muted", "Value": 1 }, { "Name": "OnlineGame", "Value": 2 } ], "Name": "ServerAudioBehavior" }, { "Items": [ { "Name": "Always", "Value": 0 }, { "Name": "Off", "Value": 1 }, { "Name": "WithChildren", "Value": 2 } ], "Name": "ServiceVisibility" }, { "Items": [ { "Name": "Error", "Value": 1 }, { "Name": "Warning", "Value": 2 }, { "Name": "Information", "Value": 3 }, { "Name": "Hint", "Value": 4 } ], "Name": "Severity" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Immediate", "Value": 1 }, { "Name": "Deferred", "Value": 2 }, { "Name": "AncestryDeferred", "Value": 3 } ], "Name": "SignalBehavior" }, { "Items": [ { "Name": "RelativeXY", "Value": 0 }, { "Name": "RelativeXX", "Value": 1 }, { "Name": "RelativeYY", "Value": 2 } ], "Name": "SizeConstraint" }, { "Items": [ { "Name": "Disabled", "Value": 0 }, { "Name": "PerIsland", "Value": 1 }, { "Name": "PerEdge", "Value": 2 } ], "Name": "SolverConvergenceVisualizationMode" }, { "Items": [ { "Name": "Ascending", "Value": 0 }, { "Name": "Descending", "Value": 1 } ], "Name": "SortDirection" }, { "Items": [ { "Name": "LayoutOrder", "Value": 2 }, { "Name": "Name", "Value": 0 }, { "Name": "Custom", "Tags": [ "Deprecated" ], "Value": 1 } ], "Name": "SortOrder" }, { "Items": [ { "Name": "Insert", "Value": 0 }, { "Name": "Home", "Value": 1 }, { "Name": "End", "Value": 2 }, { "Name": "PageUp", "Value": 3 }, { "Name": "PageDown", "Value": 4 }, { "Name": "ChatHotkey", "Value": 5 } ], "Name": "SpecialKey" }, { "Items": [ { "Name": "TopLeft", "Value": 0 }, { "Name": "TopRight", "Value": 1 }, { "Name": "BottomLeft", "Value": 2 }, { "Name": "BottomRight", "Value": 3 } ], "Name": "StartCorner" }, { "Items": [ { "Name": "Poison", "Tags": [ "Deprecated" ], "Value": 0 }, { "Name": "Confusion", "Tags": [ "Deprecated" ], "Value": 1 } ], "Name": "Status", "Tags": [ "Deprecated" ] }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "LowMemory", "Value": 1 }, { "Name": "Opportunistic", "Value": 2 } ], "Name": "StreamOutBehavior" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "MinimumRadiusPause", "Value": 2 }, { "Name": "PauseOutsideLoadedArea", "Value": 3 } ], "Name": "StreamingIntegrityMode" }, { "Items": [ { "Name": "Default", "Tags": [ "Deprecated" ], "Value": 0 }, { "Name": "Disabled", "Tags": [ "Deprecated" ], "Value": 1 }, { "Name": "ClientPhysicsPause", "Tags": [ "Deprecated" ], "Value": 2 } ], "Name": "StreamingPauseMode" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "CloseStudio", "Value": 1 }, { "Name": "CloseDoc", "Value": 2 } ], "Name": "StudioCloseMode" }, { "Items": [ { "Name": "Edit", "Value": 0 }, { "Name": "PlayClient", "Value": 1 }, { "Name": "PlayServer", "Value": 2 }, { "Name": "Standalone", "Value": 3 }, { "Name": "None", "Value": 4 } ], "Name": "StudioDataModelType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Operator", "Value": 1 }, { "Name": "Number", "Value": 2 }, { "Name": "String", "Value": 3 }, { "Name": "Comment", "Value": 4 }, { "Name": "Keyword", "Value": 5 }, { "Name": "Builtin", "Value": 6 }, { "Name": "Method", "Value": 7 }, { "Name": "Property", "Value": 8 }, { "Name": "Nil", "Value": 9 }, { "Name": "Bool", "Value": 10 }, { "Name": "Function", "Value": 11 }, { "Name": "Local", "Value": 12 }, { "Name": "Self", "Value": 13 }, { "Name": "LuauKeyword", "Value": 14 }, { "Name": "FunctionName", "Value": 15 }, { "Name": "TODO", "Value": 16 }, { "Name": "Background", "Value": 17 }, { "Name": "SelectionText", "Value": 18 }, { "Name": "SelectionBackground", "Value": 19 }, { "Name": "FindSelectionBackground", "Value": 20 }, { "Name": "MatchingWordBackground", "Value": 21 }, { "Name": "Warning", "Value": 22 }, { "Name": "Error", "Value": 23 }, { "Name": "Info", "Value": 24 }, { "Name": "Hint", "Value": 25 }, { "Name": "Whitespace", "Value": 26 }, { "Name": "ActiveLine", "Value": 27 }, { "Name": "DebuggerCurrentLine", "Value": 28 }, { "Name": "DebuggerErrorLine", "Value": 29 }, { "Name": "Ruler", "Value": 30 }, { "Name": "Bracket", "Value": 31 }, { "Name": "MenuPrimaryText", "Value": 32 }, { "Name": "MenuSecondaryText", "Value": 33 }, { "Name": "MenuSelectedText", "Value": 34 }, { "Name": "MenuBackground", "Value": 35 }, { "Name": "MenuSelectedBackground", "Value": 36 }, { "Name": "MenuScrollbarBackground", "Value": 37 }, { "Name": "MenuScrollbarHandle", "Value": 38 }, { "Name": "MenuBorder", "Value": 39 }, { "Name": "DocViewCodeBackground", "Value": 40 }, { "Name": "AICOOverlayText", "Value": 41 }, { "Name": "AICOOverlayButtonBackground", "Value": 42 }, { "Name": "AICOOverlayButtonBackgroundHover", "Value": 43 }, { "Name": "AICOOverlayButtonBackgroundPressed", "Value": 44 }, { "Name": "IndentationRuler", "Value": 45 } ], "Name": "StudioScriptEditorColorCategories" }, { "Items": [ { "Name": "RobloxDefault", "Value": 0 }, { "Name": "Extra1", "Value": 1 }, { "Name": "Extra2", "Value": 2 }, { "Name": "Custom", "Value": 3 } ], "Name": "StudioScriptEditorColorPresets" }, { "Items": [ { "Name": "MainBackground", "Value": 0 }, { "Name": "Titlebar", "Value": 1 }, { "Name": "Dropdown", "Value": 2 }, { "Name": "Tooltip", "Value": 3 }, { "Name": "Notification", "Value": 4 }, { "Name": "ScrollBar", "Value": 5 }, { "Name": "ScrollBarBackground", "Value": 6 }, { "Name": "TabBar", "Value": 7 }, { "Name": "Tab", "Value": 8 }, { "Name": "FilterButtonDefault", "Value": 9 }, { "Name": "FilterButtonHover", "Value": 10 }, { "Name": "FilterButtonChecked", "Value": 11 }, { "Name": "FilterButtonAccent", "Value": 12 }, { "Name": "FilterButtonBorder", "Value": 13 }, { "Name": "FilterButtonBorderAlt", "Value": 14 }, { "Name": "RibbonTab", "Value": 15 }, { "Name": "RibbonTabTopBar", "Value": 16 }, { "Name": "Button", "Value": 17 }, { "Name": "MainButton", "Value": 18 }, { "Name": "RibbonButton", "Value": 19 }, { "Name": "ViewPortBackground", "Value": 20 }, { "Name": "InputFieldBackground", "Value": 21 }, { "Name": "Item", "Value": 22 }, { "Name": "TableItem", "Value": 23 }, { "Name": "CategoryItem", "Value": 24 }, { "Name": "GameSettingsTableItem", "Value": 25 }, { "Name": "GameSettingsTooltip", "Value": 26 }, { "Name": "EmulatorBar", "Value": 27 }, { "Name": "EmulatorDropDown", "Value": 28 }, { "Name": "ColorPickerFrame", "Value": 29 }, { "Name": "CurrentMarker", "Value": 30 }, { "Name": "Border", "Value": 31 }, { "Name": "DropShadow", "Value": 32 }, { "Name": "Shadow", "Value": 33 }, { "Name": "Light", "Value": 34 }, { "Name": "Dark", "Value": 35 }, { "Name": "Mid", "Value": 36 }, { "Name": "MainText", "Value": 37 }, { "Name": "SubText", "Value": 38 }, { "Name": "TitlebarText", "Value": 39 }, { "Name": "BrightText", "Value": 40 }, { "Name": "DimmedText", "Value": 41 }, { "Name": "LinkText", "Value": 42 }, { "Name": "WarningText", "Value": 43 }, { "Name": "ErrorText", "Value": 44 }, { "Name": "InfoText", "Value": 45 }, { "Name": "SensitiveText", "Value": 46 }, { "Name": "ScriptSideWidget", "Value": 47 }, { "Name": "ScriptBackground", "Value": 48 }, { "Name": "ScriptText", "Value": 49 }, { "Name": "ScriptSelectionText", "Value": 50 }, { "Name": "ScriptSelectionBackground", "Value": 51 }, { "Name": "ScriptFindSelectionBackground", "Value": 52 }, { "Name": "ScriptMatchingWordSelectionBackground", "Value": 53 }, { "Name": "ScriptOperator", "Value": 54 }, { "Name": "ScriptNumber", "Value": 55 }, { "Name": "ScriptString", "Value": 56 }, { "Name": "ScriptComment", "Value": 57 }, { "Name": "ScriptKeyword", "Value": 58 }, { "Name": "ScriptBuiltInFunction", "Value": 59 }, { "Name": "ScriptWarning", "Value": 60 }, { "Name": "ScriptError", "Value": 61 }, { "Name": "ScriptInformation", "Value": 62 }, { "Name": "ScriptHint", "Value": 63 }, { "Name": "ScriptWhitespace", "Value": 64 }, { "Name": "ScriptRuler", "Value": 65 }, { "Name": "DocViewCodeBackground", "Value": 66 }, { "Name": "DebuggerCurrentLine", "Value": 67 }, { "Name": "DebuggerErrorLine", "Value": 68 }, { "Name": "ScriptEditorCurrentLine", "Value": 107 }, { "Name": "DiffFilePathText", "Value": 69 }, { "Name": "DiffTextHunkInfo", "Value": 70 }, { "Name": "DiffTextNoChange", "Value": 71 }, { "Name": "DiffTextAddition", "Value": 72 }, { "Name": "DiffTextDeletion", "Value": 73 }, { "Name": "DiffTextSeparatorBackground", "Value": 74 }, { "Name": "DiffTextNoChangeBackground", "Value": 75 }, { "Name": "DiffTextAdditionBackground", "Value": 76 }, { "Name": "DiffTextDeletionBackground", "Value": 77 }, { "Name": "DiffLineNum", "Value": 78 }, { "Name": "DiffLineNumSeparatorBackground", "Value": 79 }, { "Name": "DiffLineNumNoChangeBackground", "Value": 80 }, { "Name": "DiffLineNumAdditionBackground", "Value": 81 }, { "Name": "DiffLineNumDeletionBackground", "Value": 82 }, { "Name": "DiffFilePathBackground", "Value": 83 }, { "Name": "DiffFilePathBorder", "Value": 84 }, { "Name": "ChatIncomingBgColor", "Value": 85 }, { "Name": "ChatIncomingTextColor", "Value": 86 }, { "Name": "ChatOutgoingBgColor", "Value": 87 }, { "Name": "ChatOutgoingTextColor", "Value": 88 }, { "Name": "ChatModeratedMessageColor", "Value": 89 }, { "Name": "Separator", "Value": 90 }, { "Name": "ButtonBorder", "Value": 91 }, { "Name": "ButtonText", "Value": 92 }, { "Name": "InputFieldBorder", "Value": 93 }, { "Name": "CheckedFieldBackground", "Value": 94 }, { "Name": "CheckedFieldBorder", "Value": 95 }, { "Name": "CheckedFieldIndicator", "Value": 96 }, { "Name": "HeaderSection", "Value": 97 }, { "Name": "Midlight", "Value": 98 }, { "Name": "StatusBar", "Value": 99 }, { "Name": "DialogButton", "Value": 100 }, { "Name": "DialogButtonText", "Value": 101 }, { "Name": "DialogButtonBorder", "Value": 102 }, { "Name": "DialogMainButton", "Value": 103 }, { "Name": "DialogMainButtonText", "Value": 104 }, { "Name": "InfoBarWarningBackground", "Value": 105 }, { "Name": "InfoBarWarningText", "Value": 106 }, { "Name": "ScriptMethod", "Value": 108 }, { "Name": "ScriptProperty", "Value": 109 }, { "Name": "ScriptNil", "Value": 110 }, { "Name": "ScriptBool", "Value": 111 }, { "Name": "ScriptFunction", "Value": 112 }, { "Name": "ScriptLocal", "Value": 113 }, { "Name": "ScriptSelf", "Value": 114 }, { "Name": "ScriptLuauKeyword", "Value": 115 }, { "Name": "ScriptFunctionName", "Value": 116 }, { "Name": "ScriptTodo", "Value": 117 }, { "Name": "ScriptBracket", "Value": 118 }, { "Name": "AICOOverlayText", "Value": 128 }, { "Name": "AICOOverlayButtonBackground", "Value": 129 }, { "Name": "AICOOverlayButtonBackgroundHover", "Value": 130 }, { "Name": "AICOOverlayButtonBackgroundPressed", "Value": 131 }, { "Name": "AttributeCog", "Value": 119 } ], "Name": "StudioStyleGuideColor" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Selected", "Value": 1 }, { "Name": "Pressed", "Value": 2 }, { "Name": "Disabled", "Value": 3 }, { "Name": "Hover", "Value": 4 } ], "Name": "StudioStyleGuideModifier" }, { "Items": [ { "LegacyNames": [ "Alternating Supports" ], "Name": "AlternatingSupports", "Value": 0 }, { "LegacyNames": [ "Bridge Style Supports" ], "Name": "BridgeStyleSupports", "Value": 1 }, { "LegacyNames": [ "No Supports" ], "Name": "NoSupports", "Value": 2 } ], "Name": "Style" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "Hinge", "Value": 1 }, { "Name": "SteppingMotor", "Value": 2 }, { "Name": "Motor", "Value": 3 } ], "Name": "SurfaceConstraint" }, { "Items": [ { "Name": "Flat", "Value": 0 }, { "Name": "CurvedHorizontally", "Value": 1 } ], "Name": "SurfaceGuiShape" }, { "Items": [ { "Name": "FixedSize", "Value": 0 }, { "Name": "PixelsPerStud", "Value": 1 } ], "Name": "SurfaceGuiSizingMode" }, { "Items": [ { "LegacyNames": [ "Spawn", "Unjoinable" ], "Name": "Smooth", "Value": 0 }, { "LegacyNames": [ "Bumps" ], "Name": "Glue", "Value": 1 }, { "Name": "Weld", "Value": 2 }, { "Name": "Studs", "Value": 3 }, { "Name": "Inlet", "Value": 4 }, { "Name": "Universal", "Value": 5 }, { "Name": "Hinge", "Value": 6 }, { "Name": "Motor", "Value": 7 }, { "Name": "SteppingMotor", "Value": 8 }, { "Name": "SmoothNoOutlines", "Value": 10 } ], "Name": "SurfaceType" }, { "Items": [ { "Name": "Right", "Value": 0 }, { "Name": "Left", "Value": 1 }, { "Name": "Up", "Value": 2 }, { "Name": "Down", "Value": 3 }, { "Name": "None", "Value": 4 } ], "Name": "SwipeDirection" }, { "Items": [ { "Name": "RowMajor", "Value": 0 }, { "Name": "ColumnMajor", "Value": 1 } ], "Name": "TableMajorAxis" }, { "Items": [ { "Name": "Compatibility", "Value": 2 }, { "Name": "Voxel", "Value": 1 }, { "Name": "ShadowMap", "Value": 3 }, { "Name": "Legacy", "Tags": [ "Deprecated" ], "Value": 0 }, { "Name": "Future", "Value": 4 } ], "Name": "Technology" }, { "Items": [ { "Name": "TeleportToSpawnByName", "Value": 0 }, { "Name": "TeleportToPlaceInstance", "Value": 1 }, { "Name": "TeleportToPrivateServer", "Value": 2 }, { "Name": "TeleportPartyAsync", "Value": 3 }, { "Name": "TeleportUnknown", "Value": 4 } ], "Name": "TeleportMethod" }, { "Items": [ { "Name": "Success", "Value": 0 }, { "Name": "Failure", "Value": 1 }, { "Name": "GameNotFound", "Value": 2 }, { "Name": "GameEnded", "Value": 3 }, { "Name": "GameFull", "Value": 4 }, { "Name": "Unauthorized", "Value": 5 }, { "Name": "Flooded", "Value": 6 }, { "Name": "IsTeleporting", "Value": 7 } ], "Name": "TeleportResult" }, { "Items": [ { "Name": "RequestedFromServer", "Value": 0 }, { "Name": "Started", "Value": 1 }, { "Name": "WaitingForServer", "Value": 2 }, { "Name": "Failed", "Value": 3 }, { "Name": "InProgress", "Value": 4 } ], "Name": "TeleportState" }, { "Items": [ { "Name": "ToPlace", "Value": 0 }, { "Name": "ToInstance", "Value": 1 }, { "Name": "ToReservedServer", "Value": 2 } ], "Name": "TeleportType" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "Legacy", "Value": 1 }, { "Name": "Template", "Value": 2 }, { "Name": "Generate", "Value": 3 }, { "Name": "Import", "Value": 4 }, { "Name": "Convert", "Value": 5 }, { "Name": "EditAddTool", "Value": 6 }, { "Name": "EditSeaLevelTool", "Value": 7 }, { "Name": "EditReplaceTool", "Value": 8 }, { "Name": "RegionFillTool", "Value": 9 }, { "Name": "RegionPasteTool", "Value": 10 }, { "Name": "Other", "Value": 11 } ], "Name": "TerrainAcquisitionMethod" }, { "Items": [ { "Name": "Top", "Value": 0 }, { "Name": "Side", "Value": 1 }, { "Name": "Bottom", "Value": 2 } ], "Name": "TerrainFace" }, { "Items": [ { "Name": "Unknown", "Value": 1 }, { "Name": "Success", "Value": 2 }, { "Name": "Sending", "Value": 3 }, { "Name": "TextFilterFailed", "Value": 4 }, { "Name": "Floodchecked", "Value": 5 }, { "Name": "InvalidPrivacySettings", "Value": 6 }, { "Name": "InvalidTextChannelPermissions", "Value": 7 }, { "Name": "MessageTooLong", "Value": 8 } ], "Name": "TextChatMessageStatus" }, { "Items": [ { "Name": "Auto", "Value": 0 }, { "Name": "LeftToRight", "Value": 1 }, { "Name": "RightToLeft", "Value": 2 } ], "Name": "TextDirection" }, { "Items": [ { "Name": "PublicChat", "Value": 1 }, { "Name": "PrivateChat", "Value": 2 } ], "Name": "TextFilterContext" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "NoSuggestions", "Value": 1 }, { "Name": "Number", "Value": 2 }, { "Name": "Email", "Value": 3 }, { "Name": "Phone", "Value": 4 }, { "Name": "Password", "Value": 5 }, { "Name": "PasswordShown", "Value": 6 }, { "Name": "Username", "Value": 7 }, { "Name": "OneTimePassword", "Value": 8 } ], "Name": "TextInputType" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "AtEnd", "Value": 1 } ], "Name": "TextTruncate" }, { "Items": [ { "Name": "Left", "Value": 0 }, { "Name": "Center", "Value": 2 }, { "Name": "Right", "Value": 1 } ], "Name": "TextXAlignment" }, { "Items": [ { "Name": "Top", "Value": 0 }, { "Name": "Center", "Value": 1 }, { "Name": "Bottom", "Value": 2 } ], "Name": "TextYAlignment" }, { "Items": [ { "Name": "Stretch", "Value": 0 }, { "Name": "Wrap", "Value": 1 }, { "Name": "Static", "Value": 2 } ], "Name": "TextureMode" }, { "Items": [ { "Name": "NonHumanoid", "Value": 0 }, { "Name": "NonHumanoidOrphaned", "Value": 1 }, { "Name": "Humanoid", "Value": 2 }, { "Name": "HumanoidOrphaned", "Value": 3 } ], "Name": "TextureQueryType" }, { "Items": [ { "LegacyNames": [ "PartialThread" ], "Name": "Auto", "Value": 0 }, { "Name": "PerCore1", "Value": 101 }, { "Name": "PerCore2", "Value": 102 }, { "Name": "PerCore3", "Value": 103 }, { "Name": "PerCore4", "Value": 104 }, { "Name": "Threads1", "Value": 1 }, { "Name": "Threads2", "Value": 2 }, { "Name": "Threads3", "Value": 3 }, { "Name": "Threads4", "Value": 4 }, { "Name": "Threads8", "Value": 8 }, { "Name": "Threads16", "Value": 16 } ], "Name": "ThreadPoolConfig" }, { "Items": [ { "Name": "Extreme", "Value": 2 }, { "Name": "ElevatedOnServer", "Value": 1 }, { "Name": "Default", "Value": 0 } ], "Name": "ThrottlingPriority" }, { "Items": [ { "Name": "Size48x48", "Value": 0 }, { "Name": "Size180x180", "Value": 1 }, { "Name": "Size420x420", "Value": 2 }, { "Name": "Size60x60", "Value": 3 }, { "Name": "Size100x100", "Value": 4 }, { "Name": "Size150x150", "Value": 5 }, { "Name": "Size352x352", "Value": 6 } ], "Name": "ThumbnailSize" }, { "Items": [ { "Name": "HeadShot", "Value": 0 }, { "Name": "AvatarBust", "Value": 1 }, { "Name": "AvatarThumbnail", "Value": 2 } ], "Name": "ThumbnailType" }, { "Items": [ { "Name": "Fast", "Value": 0 }, { "Name": "Benchmark", "Value": 1 }, { "Name": "Precise", "Value": 2 } ], "Name": "TickCountSampleMethod" }, { "Items": [ { "Name": "Top", "Value": 0 }, { "Name": "Center", "Value": 1 }, { "Name": "Bottom", "Value": 2 } ], "Name": "TopBottom" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Follow", "Value": 2 }, { "Name": "Classic", "Value": 1 }, { "Name": "Orbital", "Value": 3 } ], "Name": "TouchCameraMovementMode" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Thumbstick", "Value": 1 }, { "Name": "DPad", "Value": 2 }, { "Name": "Thumbpad", "Value": 3 }, { "Name": "ClickToMove", "Value": 4 }, { "Name": "DynamicThumbstick", "Value": 5 } ], "Name": "TouchMovementMode" }, { "Items": [ { "Name": "Ok", "Value": 0 }, { "Name": "NoService", "Value": 1 }, { "Name": "InitFailed", "Value": 2 }, { "Name": "NoVideo", "Value": 3 }, { "Name": "VideoError", "Value": 4 }, { "Name": "VideoNoPermission", "Value": 5 }, { "Name": "VideoUnsupported", "Value": 6 }, { "Name": "NoAudio", "Value": 7 }, { "Name": "AudioError", "Value": 8 }, { "Name": "AudioNoPermission", "Value": 9 }, { "Name": "UnsupportedDevice", "Value": 10 } ], "Name": "TrackerError" }, { "Items": [ { "Name": "Auto", "Value": 3 }, { "Name": "ForceDisabled", "Value": 0 }, { "Name": "ExtrapolateFacsAndPose", "Value": 1 }, { "Name": "ExtrapolateFacsOnly", "Value": 2 } ], "Name": "TrackerExtrapolationFlagMode" }, { "Items": [ { "Name": "Auto", "Value": 2 }, { "Name": "ForceFalse", "Value": 0 }, { "Name": "ForceTrue", "Value": 1 } ], "Name": "TrackerLodFlagMode" }, { "Items": [ { "Name": "Auto", "Value": 2 }, { "Name": "Force0", "Value": 0 }, { "Name": "Force1", "Value": 1 } ], "Name": "TrackerLodValueMode" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "Audio", "Value": 1 }, { "Name": "Video", "Value": 2 }, { "Name": "AudioVideo", "Value": 3 } ], "Name": "TrackerMode" }, { "Items": [ { "Name": "LODCameraRecommendDisable", "Value": 0 } ], "Name": "TrackerPromptEvent" }, { "Items": [ { "Name": "Unknown", "Value": 0 }, { "Name": "True", "Value": 1 }, { "Name": "False", "Value": 2 } ], "Name": "TriStateBoolean" }, { "Items": [ { "Name": "Canceled", "Value": 0 }, { "Name": "Completed", "Value": 1 } ], "Name": "TweenStatus" }, { "Items": [ { "Name": "Light", "Tags": [ "Deprecated" ], "Value": 0 }, { "Name": "Dark", "Tags": [ "Deprecated" ], "Value": 1 } ], "Name": "UITheme" }, { "Items": [ { "Name": "UiMessageError", "Value": 0 }, { "Name": "UiMessageInfo", "Value": 1 } ], "Name": "UiMessageType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Preview", "Value": 1 } ], "Name": "UsageContext" }, { "Items": [ { "Name": "Head", "Value": 0 }, { "Name": "LeftHand", "Value": 1 }, { "Name": "RightHand", "Value": 2 }, { "Name": "Floor", "Value": 3 } ], "Name": "UserCFrame" }, { "Items": [ { "Name": "Begin", "Value": 0 }, { "Name": "Change", "Value": 1 }, { "Name": "End", "Value": 2 }, { "Name": "Cancel", "Value": 3 }, { "Name": "None", "Value": 4 } ], "Name": "UserInputState" }, { "Items": [ { "Name": "MouseButton1", "Value": 0 }, { "Name": "MouseButton2", "Value": 1 }, { "Name": "MouseButton3", "Value": 2 }, { "Name": "MouseWheel", "Value": 3 }, { "Name": "MouseMovement", "Value": 4 }, { "Name": "Touch", "Value": 7 }, { "Name": "Keyboard", "Value": 8 }, { "Name": "Focus", "Value": 9 }, { "Name": "Accelerometer", "Value": 10 }, { "Name": "Gyro", "Value": 11 }, { "Name": "Gamepad1", "Value": 12 }, { "Name": "Gamepad2", "Value": 13 }, { "Name": "Gamepad3", "Value": 14 }, { "Name": "Gamepad4", "Value": 15 }, { "Name": "Gamepad5", "Value": 16 }, { "Name": "Gamepad6", "Value": 17 }, { "Name": "Gamepad7", "Value": 18 }, { "Name": "Gamepad8", "Value": 19 }, { "Name": "TextInput", "Value": 20 }, { "Name": "InputMethod", "Value": 21 }, { "Name": "None", "Value": 22 } ], "Name": "UserInputType" }, { "Items": [ { "Name": "NoOne", "Value": 0 }, { "Name": "OnlyFriends", "Value": 1 }, { "Name": "Anyone", "Value": 2 } ], "Name": "VRSafetyBubbleMode" }, { "Items": [ { "Name": "World", "Value": 0 }, { "Name": "Off", "Value": 1 } ], "Name": "VRScaling" }, { "Items": [ { "Name": "Idle", "Value": 1 }, { "Name": "Visible", "Value": 2 }, { "Name": "Focused", "Value": 3 }, { "Name": "Stopping", "Value": 4 }, { "Name": "Undefined", "Value": 0 } ], "Name": "VRSessionState" }, { "Items": [ { "Name": "Left", "Value": 0 }, { "Name": "Right", "Value": 1 } ], "Name": "VRTouchpad" }, { "Items": [ { "Name": "Touch", "Value": 0 }, { "Name": "VirtualThumbstick", "Value": 1 }, { "Name": "ABXY", "Value": 2 } ], "Name": "VRTouchpadMode" }, { "Items": [ { "Name": "Line", "Value": 0 }, { "Name": "Plane", "Value": 1 }, { "Name": "Vector", "Value": 2 } ], "Name": "VelocityConstraintMode" }, { "Items": [ { "Name": "Center", "Value": 0 }, { "Name": "Top", "Value": 1 }, { "Name": "Bottom", "Value": 2 } ], "Name": "VerticalAlignment" }, { "Items": [ { "Name": "Left", "Value": 1 }, { "Name": "Right", "Value": 0 } ], "Name": "VerticalScrollBarPosition" }, { "Items": [ { "Name": "Large", "Value": 0 }, { "Name": "Small", "Value": 1 }, { "Name": "LeftTrigger", "Value": 2 }, { "Name": "RightTrigger", "Value": 3 }, { "Name": "LeftHand", "Value": 4 }, { "Name": "RightHand", "Value": 5 } ], "Name": "VibrationMotor" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "GeometryComplexity", "Value": 1 }, { "Name": "Transparent", "Value": 2 }, { "Name": "Decal", "Value": 3 } ], "Name": "ViewMode" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "VirtualCursorMode" }, { "Items": [ { "Name": "Recording", "Value": 1 }, { "Name": "Playing", "Value": 2 }, { "Name": "None", "Value": 0 } ], "Name": "VirtualInputMode" }, { "Items": [ { "Name": "Idle", "Value": 0 }, { "Name": "Joining", "Value": 1 }, { "Name": "JoiningRetry", "Value": 2 }, { "Name": "Joined", "Value": 3 }, { "Name": "Leaving", "Value": 4 }, { "Name": "Ended", "Value": 5 }, { "Name": "Failed", "Value": 6 } ], "Name": "VoiceChatState" }, { "Items": [ { "Name": "Disabled", "Value": 0 }, { "Name": "Automatic", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "VolumetricAudio" }, { "Items": [ { "Name": "NegX", "Value": 0 }, { "Name": "X", "Value": 1 }, { "Name": "NegY", "Value": 2 }, { "Name": "Y", "Value": 3 }, { "Name": "NegZ", "Value": 4 }, { "Name": "Z", "Value": 5 } ], "Name": "WaterDirection" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "Small", "Value": 1 }, { "Name": "Medium", "Value": 2 }, { "Name": "Strong", "Value": 3 }, { "Name": "Max", "Value": 4 } ], "Name": "WaterForce" }, { "Items": [ { "Name": "All", "Value": 0 }, { "Name": "None", "Value": 1 }, { "Name": "Touching", "Value": 2 } ], "Name": "WeldConstraintPreserve" }, { "Items": [ { "Name": "Disabled", "Value": 0 }, { "Name": "EnabledPreserve", "Value": 1 }, { "Name": "EnabledOverride", "Value": 2 } ], "Name": "WrapLayerAutoSkin" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "BoundCage", "Value": 1 }, { "Name": "LayerCage", "Value": 2 }, { "Name": "BoundCageAndLinks", "Value": 3 }, { "Name": "Reference", "Value": 4 }, { "Name": "Rbf", "Value": 5 }, { "Name": "OuterCage", "Value": 6 }, { "Name": "ReferenceMeshAfterMorph", "Value": 7 }, { "Name": "HSROuterDetail", "Value": 8 }, { "Name": "HSROuter", "Value": 9 }, { "Name": "HSRInner", "Value": 10 }, { "Name": "HSRInnerReverse", "Value": 11 }, { "Name": "LayerCageFittedToBase", "Value": 12 }, { "Name": "LayerCageFittedToPrev", "Value": 13 } ], "Name": "WrapLayerDebugMode" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "TargetCageOriginal", "Value": 1 }, { "Name": "TargetCageCompressed", "Value": 2 }, { "Name": "TargetCageInterface", "Value": 3 }, { "Name": "TargetLayerCageOriginal", "Value": 4 }, { "Name": "TargetLayerCageCompressed", "Value": 5 }, { "Name": "TargetLayerInterface", "Value": 6 }, { "Name": "Rbf", "Value": 7 }, { "Name": "OuterCageDetail", "Value": 8 } ], "Name": "WrapTargetDebugMode" }, { "Items": [ { "Name": "Global", "Value": 0 }, { "Name": "Sibling", "Value": 1 } ], "Name": "ZIndexBehavior" }, { "Items": [ { "Name": "Small", "Value": 0 }, { "Name": "Medium", "Value": 1 }, { "Name": "Large", "Value": 2 } ], "Name": "AudioWindowSize" }, { "Items": [ { "Name": "Peak", "Value": 0 }, { "Name": "LowShelf", "Value": 1 }, { "Name": "HighShelf", "Value": 2 }, { "Name": "Lowpass12dB", "Value": 3 }, { "Name": "Lowpass24dB", "Value": 4 }, { "Name": "Lowpass48dB", "Value": 5 }, { "Name": "Highpass12dB", "Value": 6 }, { "Name": "Highpass24dB", "Value": 7 }, { "Name": "Highpass48dB", "Value": 8 }, { "Name": "Bandpass", "Value": 9 }, { "Name": "Notch", "Value": 10 }, { "Name": "Lowpass6dB", "Value": 11 } ], "Name": "AudioFilterType" }, { "Items": [ { "Name": "Mono", "Value": 0 }, { "Name": "Stereo", "Value": 1 }, { "Name": "Quad", "Value": 2 }, { "Name": "Surround_5", "Value": 3 }, { "Name": "Surround_5_1", "Value": 4 }, { "Name": "Surround_7_1", "Value": 5 }, { "Name": "Surround_7_1_4", "Value": 6 } ], "Name": "AudioChannelLayout" } ], "Version": 1 } ]==] \ No newline at end of file diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/AboutMenu.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/AboutMenu.lua new file mode 100644 index 0000000000..37d79c318e --- /dev/null +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/AboutMenu.lua @@ -0,0 +1,174 @@ +--[[ + Settings Module + + The Module to configure settings +]] + +-- ADONIS +local ReplicatedStorage = game:GetService("ReplicatedStorage") +local Dex_RemoteFunction = ReplicatedStorage:WaitForChild("NewDex_Event") :: RemoteFunction + +-- Common Locals +local Main,Lib,Apps,Settings -- Main Containers +local Explorer, Properties, ScriptViewer, Notebook -- Major Apps +local API,RMD,env,service,plr,create,createSimple -- Main Locals + +local function initDeps(data) + Main = data.Main + Lib = data.Lib + Apps = data.Apps + Settings = data.Settings + + API = data.API + RMD = data.RMD + env = data.env + service = data.service + plr = data.plr + create = data.create + createSimple = data.createSimple +end + +local function initAfterMain() + Explorer = Apps.Explorer + Properties = Apps.Properties + ScriptViewer = Apps.ScriptViewer + Notebook = Apps.Notebook +end + + +local function main() + local AboutMenu = {} + + local scrollV, scrollH + local settingsListFrame + local expanded, viewList = {}, {} + + local aboutFrame + + + AboutMenu.AboutFrame = function() + local aboutFrame = create({ + {1,'Frame',{Size=UDim2.new(1, 0, 1, 0),BorderColor3=Color3.fromRGB(0, 0, 0),Name='AboutFrame',BorderSizePixel=0,BackgroundTransparency=1,BackgroundColor3=Color3.fromRGB(255, 255, 255),}}, + {2,'Frame',{Parent={1},Size=UDim2.new(1, 0, 1, 0),BorderColor3=Color3.fromRGB(0, 0, 0),Name='Container',BorderSizePixel=0,BackgroundTransparency=1,BackgroundColor3=Color3.fromRGB(255, 255, 255),}}, + {3,'UIListLayout',{Parent={2},VerticalAlignment=Enum.VerticalAlignment.Center,SortOrder=Enum.SortOrder.LayoutOrder,HorizontalAlignment=Enum.HorizontalAlignment.Center,}} + }) + + --local Container = aboutFrame.Container + + return aboutFrame + end + + + AboutMenu.CreditsEntry = (function() + local funcs = {} + + local function createGui() + local creditsEntry = create({ + {1,'Frame',{Size=UDim2.new(1, 0, 0, 10),BorderColor3=Color3.fromRGB(0, 0, 0),Name='TextEntry',BorderSizePixel=0,BackgroundTransparency=1,BackgroundColor3=Color3.fromRGB(255, 255, 255),}}, + {2,'TextBox',{Parent={1},BorderSizePixel=0,RichText=true,BackgroundColor3=Color3.fromRGB(255, 255, 255),TextWrapped=true,TextSize=20,TextColor3=Color3.fromRGB(255, 255, 255),Size=UDim2.new(1, 0, 1, 0),BorderColor3=Color3.fromRGB(0, 0, 0),Text='text',Font=Enum.Font.SourceSans,BackgroundTransparency=1,ClearTextOnFocus=false,TextEditable=false,}} + }) + + return creditsEntry + end + + + function funcs:ChangeText(text) + self.GuiElems.TextBox.Text = text + end + + + local mt = {__index = funcs} + local function new(text) + local obj = setmetatable({}, mt) + + obj.Gui = createGui() + + obj.GuiElems = { + TextBox = obj.Gui.TextBox + } + + if (text) then + obj:ChangeText(text) + end + + + -- Parent + obj.Gui.Parent = aboutFrame.Container + + return obj + end + + + return {new = new} + end)() + + + AboutMenu.AddCreditsEntry = function(text, properties) + local creditsEntry = create({ + {1,'Frame',{Size=UDim2.new(1, 0, 0, 10),AutomaticSize=Enum.AutomaticSize.XY,BorderColor3=Color3.fromRGB(0, 0, 0),Name='TextEntry',BorderSizePixel=0,BackgroundTransparency=1,BackgroundColor3=Color3.fromRGB(255, 255, 255),}}, + {2,'TextLabel',{Parent={1},AutomaticSize=Enum.AutomaticSize.XY,BorderSizePixel=0,RichText=true,BackgroundColor3=Color3.fromRGB(255, 255, 255),TextWrapped=true,TextSize=14,TextColor3=Color3.fromRGB(255, 255, 255),Size=UDim2.new(1, 0, 1, 0),BorderColor3=Color3.fromRGB(0, 0, 0),Text='text',Font=Enum.Font.SourceSans,BackgroundTransparency=1,}} + }) + + local entryText = creditsEntry.TextLabel + entryText.Text = text + + -- Default text size + entryText.TextSize = 16 + + if (properties) then + for property, val in pairs(properties) do + entryText[property] = val + end + end + + + creditsEntry.Parent = aboutFrame.Container + + + return creditsEntry + end + + -- Init + AboutMenu.Init = function() + local window = Lib.Window.new() + AboutMenu.Window = window + + window:SetTitle("About") + window.Resizable = true + + -- Setup Results ScrollingFrame + AboutMenu.Window.GuiElems.Main.Parent.Name = "Dex_AboutWindow" -- Change ScreenGui name + + + -- Create Gui + aboutFrame = AboutMenu.AboutFrame() + + AboutMenu.AddCreditsEntry("About Dex", { + TextSize = 30, + }) + + AboutMenu.AddCreditsEntry("Version: ".. Main.Version) + AboutMenu.AddCreditsEntry("\n", {TextSize = 5}) + AboutMenu.AddCreditsEntry("Developed by Moon aka. LorekeeperZinnia") + AboutMenu.AddCreditsEntry("This version is modified, the official release was never finished.", { + TextSize = 12, + }) + AboutMenu.AddCreditsEntry("\n\n", {TextSize = 10}) + AboutMenu.AddCreditsEntry("Additional Contributors:", {TextSize = 17}) + AboutMenu.AddCreditsEntry("SnowyShiro", {TextSize = 17}) + AboutMenu.AddCreditsEntry("Modified GuiToLuaAE") + AboutMenu.AddCreditsEntry("") + AboutMenu.AddCreditsEntry("karl-police", {TextSize = 17}) + AboutMenu.AddCreditsEntry("EasternBloxxer", {TextSize = 17}) + AboutMenu.AddCreditsEntry("xs4u", {TextSize = 17}) + AboutMenu.AddCreditsEntry("GuestDaProtogen", {TextSize = 17}) + AboutMenu.AddCreditsEntry("Added additional features, Adonis Plugin") + + -- Window Add, adds things to the "Content" + window:Add(aboutFrame) + end + + return AboutMenu +end + +return {InitDeps = initDeps, InitAfterMain = initAfterMain, Main = main} \ No newline at end of file diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Explorer.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Explorer.lua new file mode 100644 index 0000000000..1ce5c4432c --- /dev/null +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Explorer.lua @@ -0,0 +1,2578 @@ +--[[ + Explorer App Module + + The main explorer interface +]] + +-- ADONIS +local ReplicatedStorage = game:GetService("ReplicatedStorage") +local TweenService = game:GetService("TweenService") +local Dex_RemoteFunction = ReplicatedStorage:WaitForChild("NewDex_Event") :: RemoteFunction + +-- Common Locals +local Main,Lib,Apps,Settings -- Main Containers +local Explorer, Properties, ScriptViewer, Notebook -- Major Apps +local API,RMD,env,service,plr,create,createSimple -- Main Locals + +local function tweenInEntry(entry, fromPos, toPos) + entry.Position = fromPos + entry.Indent.EntryName.TextTransparency = 1 + entry.Indent.Icon.ImageTransparency = 1 + entry.Visible = true + + local lengthScale = 1 -- for fun while I test, e.g 10 for 10 times slower + + TweenService:Create(entry, TweenInfo.new(0.2*lengthScale, Enum.EasingStyle.Sine), { Position = toPos }):Play() + TweenService:Create(entry.Indent.EntryName, TweenInfo.new(0.15*lengthScale), { TextTransparency = 0 }):Play() + TweenService:Create(entry.Indent.Icon, TweenInfo.new(0.15*lengthScale), { ImageTransparency = 0 }):Play() +end + + + +local function initDeps(data) + Main = data.Main + Lib = data.Lib + Apps = data.Apps + Settings = data.Settings + + API = data.API + RMD = data.RMD + env = data.env + service = data.service + plr = data.plr + create = data.create + createSimple = data.createSimple +end + +local function initAfterMain() + Explorer = Apps.Explorer + Properties = Apps.Properties + ScriptViewer = Apps.ScriptViewer + Notebook = Apps.Notebook +end + +local function main() + local Explorer = {} + local nodes,tree,listEntries,explorerOrders,searchResults,specResults = {},{},{},{},{},{} + local expanded + local entryTemplate,treeFrame:Frame,toolBar,descendantAddedCon,descendantRemovingCon,itemChangedCon + local ffa = game.FindFirstAncestorWhichIsA + local getDescendants = game.GetDescendants + local getTextSize = service.TextService.GetTextSize + local updateDebounce,refreshDebounce = false,false + local nilNode = {Obj = Instance.new("Folder")} :: any + local idCounter = 0 + local scrollV,scrollH,selection,clipboard + local renameBox,renamingNode,searchFunc + local sortingEnabled,autoUpdateSearch + local table,math = table,math + local nilMap,nilCons = {},{} + local connectSignal = game.DescendantAdded.Connect + local addObject,removeObject,moveObject = nil,nil,nil + + -- silencer, absolute hell!!! + Explorer.NodeSorter = nil + Explorer.IsNodeVisible = nil + Explorer.PerformUpdate = nil + Explorer.PerformRefresh = nil + Explorer.Window = nil + Explorer.InitRenameBox = nil + Explorer.SetRenamingNode = nil + Explorer.SetSortingEnabled = nil + Explorer.UpdateView = nil + Explorer.Update = nil + Explorer.StartDrag = nil + Explorer.NewListEntry = nil + Explorer.Refresh = nil + Explorer.ForceUpdate = nil + Explorer.NodeDepth = nil + Explorer.SetupConnections = nil + Explorer.ViewNode = nil + Explorer.ViewObj = nil + Explorer.MakeNodeVisible = nil + Explorer.ShowRightClick = nil + Explorer.InitRightClick = nil + Explorer.HideNilInstances = nil + Explorer.RefreshNilInstances = nil + Explorer.GetInstancePath = nil + Explorer.InitInsertObject = nil + Explorer.InitClickToSelect = nil + Explorer.BuildSearchFunc = nil + Explorer.DoSearch = nil + Explorer.ClearSearch = nil + Explorer.InitSearch = nil + Explorer.InitEntryTemplate = nil + Explorer.InitDelCleaner = nil + Explorer.UpdateSelectionVisuals = nil + Explorer.Init = nil + Explorer.ClassIcons = nil + Explorer.MiscIcons = nil + Explorer.Selection = nil + Explorer.ClickSystem = nil + Explorer.SelectionVisualsHolder = nil + Explorer.SelectionVisualCons = nil + Explorer.SelectionVisualGui = nil + Explorer.SelectionVisualBox = nil + Explorer.Clipboard = nil + Explorer.SearchFilters = nil + Explorer.SearchExpanded = nil + Explorer.Expanded = nil + Explorer.Active = nil + Explorer.Dragging = nil + Explorer.ViewWidth = nil + Explorer.Index = nil + Explorer.EntryIndent = nil + Explorer.FreeWidth = nil + Explorer.GuiElems = nil + Explorer.RightClickContext = nil + Explorer.InsertObjectContext = nil + Explorer.ClickToSelect_Connection = nil + + addObject = function(root) + if nodes[root] then return end + + local isNil = false + local rootParObj = ffa(root,"Instance") + local par = nodes[rootParObj] + + -- Nil Handling + if not par then + if nilMap[root] then + nilCons[root] = nilCons[root] or { + connectSignal(root.ChildAdded,addObject), + connectSignal(root.AncestryChanged,moveObject), + } + par = nilNode + isNil = true + else + return + end + elseif nilMap[rootParObj] or par == nilNode then + nilMap[root] = true + nilCons[root] = nilCons[root] or { + connectSignal(root.ChildAdded,addObject), + connectSignal(root.AncestryChanged,moveObject), + } + isNil = true + end + + local newNode = {Obj = root, Parent = par} + nodes[root] = newNode + + -- Automatic sorting if expanded + if sortingEnabled and expanded[par] and par.Sorted then + local left,right = 1,#par + local floor = math.floor + local sorter = Explorer.NodeSorter + local pos = (right == 0 and 1) + + if not pos then + while true do + if left >= right then + if sorter(newNode,par[left]) then + pos = left + else + pos = left+1 + end + break + end + + local mid = floor((left+right)/2) + if sorter(newNode,par[mid]) then + right = mid-1 + else + left = mid+1 + end + end + end + + table.insert(par,pos,newNode) + else + par[#par+1] = newNode + par.Sorted = nil + end + + local insts = getDescendants(root) + for i = 1,#insts do + local obj = insts[i] + if nodes[obj] then continue end -- Deferred + + local par = nodes[ffa(obj,"Instance")] + if not par then continue end + local newNode = {Obj = obj, Parent = par} + nodes[obj] = newNode + par[#par+1] = newNode + + -- Nil Handling + if isNil then + nilMap[obj] = true + nilCons[obj] = nilCons[obj] or { + connectSignal(obj.ChildAdded,addObject), + connectSignal(obj.AncestryChanged,moveObject), + } + end + end + + if searchFunc and autoUpdateSearch then + searchFunc({newNode}) + end + + if not updateDebounce and Explorer.IsNodeVisible(par) then + if expanded[par] then + Explorer.PerformUpdate() + elseif not refreshDebounce then + Explorer.PerformRefresh() + end + end + end + + removeObject = function(root) + local node = nodes[root] + if not node then return end + + -- Nil Handling + if nilMap[node.Obj] then + moveObject(node.Obj) + return + end + + local par = node.Parent + if par then + par.HasDel = true + end + + local function recur(root) + for i = 1,#root do + local node = root[i] + if not node.Del then + nodes[node.Obj] = nil + if #node > 0 then recur(node) end + end + end + end + recur(node) + node.Del = true + nodes[root] = nil + + if par and not updateDebounce and Explorer.IsNodeVisible(par) then + if expanded[par] then + Explorer.PerformUpdate() + elseif not refreshDebounce then + Explorer.PerformRefresh() + end + end + end + + moveObject = function(obj) + local node = nodes[obj] + if not node then return end + + local oldPar = node.Parent + local newPar = nodes[ffa(obj,"Instance")] + if oldPar == newPar then return end + + -- Nil Handling + if not newPar then + if nilMap[obj] then + newPar = nilNode + else + return + end + elseif nilMap[newPar.Obj] or newPar == nilNode then + nilMap[obj] = true + nilCons[obj] = nilCons[obj] or { + connectSignal(obj.ChildAdded,addObject), + connectSignal(obj.AncestryChanged,moveObject), + } + end + + if oldPar then + local parPos = table.find(oldPar,node) + if parPos then table.remove(oldPar,parPos) end + end + + node.Id = nil + node.Parent = newPar + + if sortingEnabled and expanded[newPar] and newPar.Sorted then + local left,right = 1,#newPar + local floor = math.floor + local sorter = Explorer.NodeSorter + local pos = (right == 0 and 1) + + if not pos then + while true do + if left >= right then + if sorter(node,newPar[left]) then + pos = left + else + pos = left+1 + end + break + end + + local mid = floor((left+right)/2) + if sorter(node,newPar[mid]) then + right = mid-1 + else + left = mid+1 + end + end + end + + table.insert(newPar,pos,node) + else + newPar[#newPar+1] = node + newPar.Sorted = nil + end + + if searchFunc and searchResults[node] then + local currentNode = node.Parent + while currentNode and (not searchResults[currentNode] or expanded[currentNode] == 0) do + expanded[currentNode] = true + searchResults[currentNode] = true + currentNode = currentNode.Parent + end + end + + if not updateDebounce and (Explorer.IsNodeVisible(newPar) or Explorer.IsNodeVisible(oldPar)) then + if expanded[newPar] or expanded[oldPar] then + Explorer.PerformUpdate() + elseif not refreshDebounce then + Explorer.PerformRefresh() + end + end + end + + Explorer.ViewWidth = 0 + Explorer.Index = 0 + Explorer.EntryIndent = 20 + Explorer.FreeWidth = 32 + Explorer.GuiElems = {} + + Explorer.InitRenameBox = function() + renameBox = create({{1,"TextBox",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BorderColor3=Color3.new(0.062745101749897,0.51764708757401,1),BorderMode=2,ClearTextOnFocus=false,Font=3,Name="RenameBox",PlaceholderColor3=Color3.new(0.69803923368454,0.69803923368454,0.69803923368454),Position=UDim2.new(0,26,0,2),Size=UDim2.new(0,200,0,16),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,TextXAlignment=0,Visible=false,ZIndex=2}}}) + + renameBox.Parent = Explorer.Window.GuiElems.Content.List + + renameBox.FocusLost:Connect(function() + if not renamingNode then return end + + pcall(function() renamingNode.Obj.Name = renameBox.Text end) + + -- ADONIS + Dex_RemoteFunction:InvokeServer("SetProperty", renamingNode.Obj, "Name", renameBox.Text) + + renamingNode = nil + Explorer.Refresh() + end) + + renameBox.Focused:Connect(function() + renameBox.SelectionStart = 1 + renameBox.CursorPosition = #renameBox.Text + 1 + end) + end + + Explorer.SetRenamingNode = function(node) + renamingNode = node + renameBox.Text = tostring(node.Obj) + renameBox:CaptureFocus() + Explorer.Refresh() + end + + Explorer.SetSortingEnabled = function(val) + sortingEnabled = val + Settings.Explorer.Sorting = val + end + + Explorer.UpdateView = function() + local maxNodes = math.ceil(treeFrame.AbsoluteSize.Y / 20) + local maxX = treeFrame.AbsoluteSize.X + local totalWidth = Explorer.ViewWidth + Explorer.FreeWidth + + scrollV.VisibleSpace = maxNodes + scrollV.TotalSpace = #tree + 1 + scrollH.VisibleSpace = maxX + scrollH.TotalSpace = totalWidth + + scrollV.Gui.Visible = #tree + 1 > maxNodes + scrollH.Gui.Visible = totalWidth > maxX + + local oldSize = treeFrame.Size + treeFrame.Size = UDim2.new(1,(scrollV.Gui.Visible and -16 or 0),1,(scrollH.Gui.Visible and -39 or -23)) + if oldSize ~= treeFrame.Size then + Explorer.UpdateView() + else + scrollV:Update() + scrollH:Update() + + renameBox.Size = UDim2.new(0,maxX-100,0,16) + + if scrollV.Gui.Visible and scrollH.Gui.Visible then + scrollV.Gui.Size = UDim2.new(0,16,1,-39) + scrollH.Gui.Size = UDim2.new(1,-16,0,16) + Explorer.Window.GuiElems.Content.ScrollCorner.Visible = true + else + scrollV.Gui.Size = UDim2.new(0,16,1,-23) + scrollH.Gui.Size = UDim2.new(1,0,0,16) + Explorer.Window.GuiElems.Content.ScrollCorner.Visible = false + end + + Explorer.Index = scrollV.Index + end + end + + Explorer.NodeSorter = function(a,b) + if a.Del or b.Del then return false end -- Ghost node + + local aClass = a.Class + local bClass = b.Class + if not aClass then aClass = a.Obj.ClassName a.Class = aClass end + if not bClass then bClass = b.Obj.ClassName b.Class = bClass end + + local aOrder = explorerOrders[aClass] + local bOrder = explorerOrders[bClass] + if not aOrder then aOrder = RMD.Classes[aClass] and tonumber(RMD.Classes[aClass].ExplorerOrder) or 9999 explorerOrders[aClass] = aOrder end + if not bOrder then bOrder = RMD.Classes [bClass] and tonumber(RMD.Classes[bClass].ExplorerOrder) or 9999 explorerOrders[bClass] = bOrder end + + if aOrder ~= bOrder then + return aOrder < bOrder + else + local aName,bName = tostring(a.Obj),tostring(b.Obj) + if aName ~= bName then + return aName < bName + elseif aClass ~= bClass then + return aClass < bClass + else + local aId = a.Id if not aId then aId = idCounter idCounter = (idCounter+0.001)%999999999 a.Id = aId end + local bId = b.Id if not bId then bId = idCounter idCounter = (idCounter+0.001)%999999999 b.Id = bId end + return aId < bId + end + end + end + + Explorer.Update = function() + table.clear(tree) + local maxNameWidth,maxDepth,count = 0,1,1 + local nameCache = {} + local font = Enum.Font.SourceSans + local size = Vector2.new(math.huge,20) + local useNameWidth = Settings.Explorer.UseNameWidth + local tSort = table.sort + local sortFunc = Explorer.NodeSorter + local isSearching = (expanded == Explorer.SearchExpanded) + local textServ = service.TextService + + local function recur(root,depth) + if depth > maxDepth then maxDepth = depth end + depth = depth + 1 + if sortingEnabled and not root.Sorted then + tSort(root,sortFunc) + root.Sorted = true + end + for i = 1,#root do + local n = root[i] + + if (isSearching and not searchResults[n]) or n.Del then continue end + + if useNameWidth then + local nameWidth = n.NameWidth + if not nameWidth then + local objName = tostring(n.Obj) + nameWidth = nameCache[objName] + if not nameWidth then + nameWidth = getTextSize(textServ,objName,14,font,size).X + nameCache[objName] = nameWidth + end + n.NameWidth = nameWidth + end + if nameWidth > maxNameWidth then + maxNameWidth = nameWidth + end + end + + tree[count] = n + count = count + 1 + if expanded[n] and #n > 0 then + recur(n,depth) + end + end + end + + recur(nodes[game],1) + + -- Nil Instances + if env.getnilinstances then + if not (isSearching and not searchResults[nilNode]) then + tree[count] = nilNode + count = count + 1 + if expanded[nilNode] then + recur(nilNode,2) + end + end + end + + Explorer.MaxNameWidth = maxNameWidth + Explorer.MaxDepth = maxDepth + Explorer.ViewWidth = useNameWidth and Explorer.EntryIndent*maxDepth + maxNameWidth + 26 or Explorer.EntryIndent*maxDepth + 226 + Explorer.UpdateView() + end + + Explorer.StartDrag = function(offX,offY) + if Explorer.Dragging then return end + Explorer.Dragging = true + + local dragTree = treeFrame:Clone() + dragTree:ClearAllChildren() + + for i,v in pairs(listEntries) do + local node = tree[i + Explorer.Index] + if node and selection.Map[node] then + local clone = v:Clone() + clone.Active = false + clone.Indent.Expand.Visible = false + clone.Parent = dragTree + end + end + + local newGui = Instance.new("ScreenGui") + newGui.DisplayOrder = Main.DisplayOrders.Menu + newGui.ResetOnSpawn = false + dragTree.Parent = newGui + Lib.ShowGui(newGui) + + local dragOutline = create({ + {1,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Name="DragSelect",Size=UDim2.new(1,0,1,0),}}, + {2,"Frame",{BackgroundColor3=Color3.new(1,1,1),BorderSizePixel=0,Name="Line",Parent={1},Size=UDim2.new(1,0,0,1),ZIndex=2,}}, + {3,"Frame",{BackgroundColor3=Color3.new(1,1,1),BorderSizePixel=0,Name="Line",Parent={1},Position=UDim2.new(0,0,1,-1),Size=UDim2.new(1,0,0,1),ZIndex=2,}}, + {4,"Frame",{BackgroundColor3=Color3.new(1,1,1),BorderSizePixel=0,Name="Line",Parent={1},Size=UDim2.new(0,1,1,0),ZIndex=2,}}, + {5,"Frame",{BackgroundColor3=Color3.new(1,1,1),BorderSizePixel=0,Name="Line",Parent={1},Position=UDim2.new(1,-1,0,0),Size=UDim2.new(0,1,1,0),ZIndex=2,}}, + }) + dragOutline.Parent = treeFrame + + + local mouse = Main.Mouse or service.Players.LocalPlayer:GetMouse() + local function move() + local posX = mouse.X - offX + local posY = mouse.Y - offY + dragTree.Position = UDim2.new(0,posX,0,posY) + + for i = 1,#listEntries do + local entry = listEntries[i] + if Lib.CheckMouseInGui(entry) then + dragOutline.Position = UDim2.new(0,entry.Indent.Position.X.Offset-scrollH.Index,0,entry.Position.Y.Offset) + dragOutline.Size = UDim2.new(0,entry.Size.X.Offset-entry.Indent.Position.X.Offset,0,20) + dragOutline.Visible = true + return + end + end + dragOutline.Visible = false + end + move() + + local input = service.UserInputService + local mouseEvent,releaseEvent + + mouseEvent = input.InputChanged:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + move() + end + end) + + releaseEvent = input.InputEnded:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseButton1 then + releaseEvent:Disconnect() + mouseEvent:Disconnect() + newGui:Destroy() + dragOutline:Destroy() + Explorer.Dragging = false + + for i = 1,#listEntries do + if Lib.CheckMouseInGui(listEntries[i]) then + local node = tree[i + Explorer.Index] + if node then + if selection.Map[node] then return end + local newPar = node.Obj + local sList = selection.List + for i = 1,#sList do + local n = sList[i] + pcall(function() + n.Obj.Parent = newPar + + -- ADONIS + Dex_RemoteFunction:InvokeServer("SetProperty", n.Obj, "Parent", newPar) + end) + end + Explorer.ViewNode(sList[1]) + end + break + end + end + end + end) + end + + Explorer.NewListEntry = function(index) + local newEntry = entryTemplate:Clone() + newEntry.Position = UDim2.new(0,0,0,20*(index-1)) + + local isRenaming = false + + newEntry.InputBegan:Connect(function(input) + local node = tree[index + Explorer.Index] + if not node or selection.Map[node] or input.UserInputType ~= Enum.UserInputType.MouseMovement then return end + + newEntry.Indent.BackgroundColor3 = Settings.Theme.Button + newEntry.Indent.BorderSizePixel = 0 + newEntry.Indent.BackgroundTransparency = 0 + end) + + newEntry.InputEnded:Connect(function(input) + local node = tree[index + Explorer.Index] + if not node or selection.Map[node] or input.UserInputType ~= Enum.UserInputType.MouseMovement then return end + + newEntry.Indent.BackgroundTransparency = 1 + end) + + newEntry.MouseButton1Down:Connect(function() + + end) + + newEntry.MouseButton1Up:Connect(function() + + end) + + newEntry.InputBegan:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseButton1 then + local releaseEvent,mouseEvent + + local mouse = Main.Mouse or plr:GetMouse() + local startX = mouse.X + local startY = mouse.Y + + local listOffsetX = startX - treeFrame.AbsolutePosition.X + local listOffsetY = startY - treeFrame.AbsolutePosition.Y + + releaseEvent = game:GetService("UserInputService").InputEnded:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseButton1 then + releaseEvent:Disconnect() + mouseEvent:Disconnect() + end + end) + + mouseEvent = game:GetService("UserInputService").InputChanged:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + local deltaX = mouse.X - startX + local deltaY = mouse.Y - startY + local dist = math.sqrt(deltaX^2 + deltaY^2) + + if dist > 5 then + releaseEvent:Disconnect() + mouseEvent:Disconnect() + isRenaming = false + Explorer.StartDrag(listOffsetX,listOffsetY) + end + end + end) + end + end) + + newEntry.MouseButton2Down:Connect(function() + + end) + + newEntry.Indent.Expand.InputBegan:Connect(function(input) + local node = tree[index + Explorer.Index] + if not node or input.UserInputType ~= Enum.UserInputType.MouseMovement then return end + + Explorer.MiscIcons:DisplayByKey(newEntry.Indent.Expand.Icon, expanded[node] and "Collapse_Over" or "Expand_Over") + end) + + newEntry.Indent.Expand.InputEnded:Connect(function(input) + local node = tree[index + Explorer.Index] + if not node or input.UserInputType ~= Enum.UserInputType.MouseMovement then return end + + Explorer.MiscIcons:DisplayByKey(newEntry.Indent.Expand.Icon, expanded[node] and "Collapse" or "Expand") + end) + + newEntry.Indent.Expand.MouseButton1Down:Connect(function() + local node = tree[index + Explorer.Index] + if not node or #node == 0 then return end + + expanded[node] = not expanded[node] + Explorer.Update() + Explorer.Refresh() + + if expanded[node] then + local arrowPos = newEntry.Indent.Expand.AbsolutePosition + local framePos = treeFrame.AbsolutePosition + + for _, v in ipairs(node) do + local i = table.find(tree, v) + if i then + local listIndex = i - Explorer.Index + local entry= listEntries[listIndex] + if entry then + local X = arrowPos.X - framePos.X + local Y = arrowPos.Y - framePos.Y + local from = UDim2.new(0, X, 0, Y) + local to = entry.Position + tweenInEntry(entry, from, to) + end + end + end + end + + local targetAngle = expanded[node] and 360 or 0 -- don't ask. + TweenService:Create( + newEntry.Indent.Expand, + TweenInfo.new(0.15, Enum.EasingStyle.Quad), + {Rotation = targetAngle} + ):Play() + end) + + newEntry.Parent = treeFrame + return newEntry + end + + Explorer.Refresh = function() + local maxNodes = math.max(math.ceil((treeFrame.AbsoluteSize.Y) / 20),0) + local renameNodeVisible = false + local isa = game.IsA + + for i = 1,maxNodes do + local entry = listEntries[i] + if not listEntries[i] then entry = Explorer.NewListEntry(i) listEntries[i] = entry Explorer.ClickSystem:Add(entry) end + + local node = tree[i + Explorer.Index] + if node then + local obj = node.Obj + local depth = Explorer.EntryIndent*Explorer.NodeDepth(node) + + entry.Visible = true + entry.Position = UDim2.new(0,-scrollH.Index,0,entry.Position.Y.Offset) + entry.Size = UDim2.new(0,Explorer.ViewWidth,0,20) + entry.Indent.EntryName.Text = tostring(node.Obj) + entry.Indent.Position = UDim2.new(0,depth,0,0) + entry.Indent.Size = UDim2.new(1,-depth,1,0) + + entry.Indent.EntryName.TextTruncate = (Settings.Explorer.UseNameWidth and Enum.TextTruncate.None or Enum.TextTruncate.AtEnd) + + if (isa(obj,"LocalScript") or isa(obj,"Script")) and obj.Disabled then + Explorer.MiscIcons:DisplayByKey(entry.Indent.Icon, isa(obj,"LocalScript") and "LocalScript_Disabled" or "Script_Disabled") + else + local rmdEntry = RMD.Classes[obj.ClassName] + Explorer.ClassIcons:Display(entry.Indent.Icon, rmdEntry and rmdEntry.ExplorerImageIndex or 0) + end + + if selection.Map[node] then + entry.Indent.BackgroundColor3 = Settings.Theme.ListSelection + entry.Indent.BorderSizePixel = 0 + entry.Indent.BackgroundTransparency = 0 + else + if Lib.CheckMouseInGui(entry) then + entry.Indent.BackgroundColor3 = Settings.Theme.Button + else + entry.Indent.BackgroundTransparency = 1 + end + end + + if node == renamingNode then + renameNodeVisible = true + renameBox.Position = UDim2.new(0,depth+25-scrollH.Index,0,entry.Position.Y.Offset+2) + renameBox.Visible = true + end + + if #node > 0 and expanded[node] ~= 0 then + if Lib.CheckMouseInGui(entry.Indent.Expand) then + Explorer.MiscIcons:DisplayByKey(entry.Indent.Expand.Icon, expanded[node] and "Collapse_Over" or "Expand_Over") + else + Explorer.MiscIcons:DisplayByKey(entry.Indent.Expand.Icon, expanded[node] and "Collapse" or "Expand") + end + entry.Indent.Expand.Visible = true + else + entry.Indent.Expand.Visible = false + end + else + entry.Visible = false + end + end + + if not renameNodeVisible then + renameBox.Visible = false + end + + for i = maxNodes+1, #listEntries do + Explorer.ClickSystem:Remove(listEntries[i]) + listEntries[i]:Destroy() + listEntries[i] = nil + end + end + + Explorer.PerformUpdate = function(instant) + updateDebounce = true + Lib.FastWait(not instant and 0.1) + if not updateDebounce then return end + updateDebounce = false + if not Explorer.Window:IsVisible() then return end + Explorer.Update() + Explorer.Refresh() + end + + Explorer.ForceUpdate = function(norefresh) + updateDebounce = false + Explorer.Update() + if not norefresh then Explorer.Refresh() end + end + + Explorer.PerformRefresh = function() + refreshDebounce = true + Lib.FastWait(0.1) + refreshDebounce = false + if updateDebounce or not Explorer.Window:IsVisible() then return end + Explorer.Refresh() + end + + Explorer.IsNodeVisible = function(node) + if not node then return end + + local curNode = node.Parent + while curNode do + if not expanded[curNode] then return false end + curNode = curNode.Parent + end + return true + end + + Explorer.NodeDepth = function(node) + local depth = 0 + + if node == nilNode then + return 1 + end + + local curNode = node.Parent + while curNode do + if curNode == nilNode then depth = depth + 1 end + curNode = curNode.Parent + depth = depth + 1 + end + return depth + end + + Explorer.SetupConnections = function() + if descendantAddedCon then descendantAddedCon:Disconnect() end + if descendantRemovingCon then descendantRemovingCon:Disconnect() end + if itemChangedCon then itemChangedCon:Disconnect() end + + if Main.Elevated then + descendantAddedCon = game.DescendantAdded:Connect(addObject) + descendantRemovingCon = game.DescendantRemoving:Connect(removeObject) + else + descendantAddedCon = game.DescendantAdded:Connect(function(obj) pcall(addObject,obj) end) + descendantRemovingCon = game.DescendantRemoving:Connect(function(obj) pcall(removeObject,obj) end) + end + + if Settings.Explorer.UseNameWidth then + itemChangedCon = game.ItemChanged:Connect(function(obj,prop) + if prop == "Parent" and nodes[obj] then + moveObject(obj) + elseif prop == "Name" and nodes[obj] then + nodes[obj].NameWidth = nil + end + end) + else + itemChangedCon = game.ItemChanged:Connect(function(obj,prop) + if prop == "Parent" and nodes[obj] then + moveObject(obj) + end + end) + end + end + + Explorer.ViewNode = function(node) + if not node then return end + + Explorer.MakeNodeVisible(node) + Explorer.ForceUpdate(true) + local visibleSpace = scrollV.VisibleSpace + + for i,v in next,tree do + if v == node then + local relative = i - 1 + if Explorer.Index > relative then + scrollV.Index = relative + elseif Explorer.Index + visibleSpace - 1 <= relative then + scrollV.Index = relative - visibleSpace + 2 + end + end + end + + scrollV:Update() Explorer.Index = scrollV.Index + Explorer.Refresh() + end + + Explorer.ViewObj = function(obj) + Explorer.ViewNode(nodes[obj]) + end + + Explorer.MakeNodeVisible = function(node,expandRoot) + if not node then return end + + local hasExpanded = false + + if expandRoot and not expanded[node] then + expanded[node] = true + hasExpanded = true + end + + local currentNode = node.Parent + while currentNode do + hasExpanded = true + expanded[currentNode] = true + currentNode = currentNode.Parent + end + + if hasExpanded and not updateDebounce then + task.spawn(Explorer.PerformUpdate, true) + end + end + + Explorer.ShowRightClick = function() + local context = Explorer.RightClickContext + context:Clear() + + local sList = selection.List + local sMap = selection.Map + local emptyClipboard = #clipboard == 0 + local presentClasses = {} + local apiClasses = API.Classes + + for i = 1,#sList do + local node = sList[i] + local class = node.Class + if not class then class = node.Obj.ClassName node.Class = class end + + local curClass = apiClasses[class] + while curClass and not presentClasses[curClass.Name] do + presentClasses[curClass.Name] = true + curClass = curClass.Superclass + end + end + + if not presentClasses["Player"] then + context:AddRegistered("CUT") + context:AddRegistered("COPY") + end + context:AddRegistered("PASTE",emptyClipboard) + if not presentClasses["Player"] then + context:AddRegistered("DUPLICATE") + end + context:AddRegistered("DELETE") + if not presentClasses["Player"] then + context:AddRegistered("RENAME",#sList ~= 1) + end + + context:AddDivider() + if not presentClasses["Player"] then + context:AddRegistered("GROUP") + context:AddRegistered("UNGROUP") + end + context:AddRegistered("SELECT_CHILDREN") + context:AddRegistered("JUMP_TO_PARENT") + context:AddRegistered("EXPAND_ALL") + context:AddRegistered("COLLAPSE_ALL") + + context:AddDivider() + if expanded == Explorer.SearchExpanded then + context:AddRegistered("CLEAR_SEARCH_AND_JUMP_TO") + end + if env.setclipboard then + context:AddRegistered("COPY_PATH") + end + context:AddRegistered("INSERT_OBJECT") + --context:AddRegistered("SAVE_INST") + if presentClasses["RemoteEvent"] or presentClasses["RemoteFunction"] or presentClasses["BindableEvent"] or presentClasses["BindableFunction"] then + context:AddRegistered("CALL_FUNCTION") + end + --context:AddRegistered("VIEW_CONNECTIONS") + --context:AddRegistered("GET_REFERENCES") + --context:AddRegistered("VIEW_API") + context:AddRegistered("VIEW_DESCRIPTION") + + context:QueueDivider() + + if presentClasses["BasePart"] or presentClasses["Model"] then + context:AddRegistered("TELEPORT_TO") + context:AddRegistered("VIEW_OBJECT") + end + + if presentClasses["Player"] then + context:AddRegistered("SELECT_CHARACTER") + end + + if presentClasses["LuaSourceContainer"] then + --context:AddRegistered("VIEW_SCRIPT") + end + + if sMap[nilNode] then + context:AddRegistered("REFRESH_NIL") + context:AddRegistered("HIDE_NIL") + end + + Explorer.LastRightClickX,Explorer.LastRightClickY = Main.Mouse.X,Main.Mouse.Y + context:Show() + end + + Explorer.InitRightClick = function() + local context = Lib.ContextMenu.new() + + context:Register("CUT",{Name = "Cut", IconMap = Explorer.MiscIcons, Icon = "Cut", DisabledIcon = "Cut_Disabled", Shortcut = "Ctrl+Z", OnClick = function() + local destroy,clone = game.Destroy,game.Clone + local sList,newClipboard = selection.List,{} + Dex_RemoteFunction:InvokeServer("ClearClipboard") -- ADONIS + + local count = 1 + for i = 1,#sList do + local inst = sList[i].Obj + + -- ADONIS + Dex_RemoteFunction:InvokeServer("Copy", inst) + if (inst) then -- Improvise + newClipboard[count] = inst + count = count + 1 + end + + --[[local s,cloned = pcall(clone,inst) + if s and cloned then + newClipboard[count] = cloned + count = count + 1 + end + pcall(destroy,inst)]] + + -- ADONIS + Dex_RemoteFunction:InvokeServer("Destroy", inst) + end + clipboard = newClipboard + selection:Clear() + end}) + + local CallFunctionWindow = Lib.Window.new() + CallFunctionWindow:SetTitle("Call: Unknown") + CallFunctionWindow:Resize(300,130) + CallFunctionWindow.Resizable = false + CallFunctionWindow.GuiElems.Main.Position = UDim2.new(0.5, -300/2, 0.5, -130/2) + + local content = CallFunctionWindow.GuiElems.Content + local layout = Instance.new("UIListLayout", content) + layout.SortOrder = Enum.SortOrder.LayoutOrder + layout.Padding = UDim.new(0, 6) + layout.HorizontalAlignment = Enum.HorizontalAlignment.Center + layout.VerticalAlignment = Enum.VerticalAlignment.Top + + local lbl = Instance.new("TextLabel") + lbl.Size = UDim2.new(1, -16, 0, 20) + lbl.BackgroundTransparency = 1 + lbl.TextColor3 = Settings.Theme.TextPrimary or Color3.new(1,1,1) + lbl.Font = Enum.Font.SourceSansBold + lbl.TextSize = 14 + lbl.TextXAlignment = Enum.TextXAlignment.Left + lbl.Text = "Arguments:" + lbl.LayoutOrder = 1 + lbl.Parent = content + + local tb = Instance.new("TextBox") + tb.Size = UDim2.new(1, -16, 0, 30) + tb.BackgroundColor3 = Settings.Theme.InputBackground or Color3.fromRGB(30,30,30) + tb.TextColor3 = Settings.Theme.TextPrimary or Color3.new(1,1,1) + tb.Font = Enum.Font.SourceSans + tb.PlaceholderText = [[e.g. "player1", 42, true]] + tb.Text = "" + tb.ClearTextOnFocus = false + tb.TextXAlignment = Enum.TextXAlignment.Left + tb.TextSize = 14 + tb.LayoutOrder = 2 + tb.Parent = content + + local uiCorner = Instance.new("UICorner", tb) + uiCorner.CornerRadius = UDim.new(0, 4) + + local buttoncontainer = Instance.new("Frame") + buttoncontainer.Size = UDim2.new(1, -16, 0, 30) + buttoncontainer.BackgroundTransparency = 1 + buttoncontainer.LayoutOrder = 3 + buttoncontainer.Parent = content + + local filler = Instance.new("Frame", buttoncontainer) + filler.Size = UDim2.new(1, -80, 1, 0) + filler.BackgroundTransparency = 1 + + local call = Instance.new("TextButton") + call.Size = UDim2.new(0,80,1,0) + call.Position = UDim2.new(1, -80, 0, 0) + call.BackgroundColor3 = Settings.Theme.ButtonPrimary or Color3.fromRGB(0, 120, 215) + call.TextColor3 = Settings.Theme.TextButton or Color3.new(1,1,1) + call.Font = Enum.Font.SourceSansBold + call.TextSize = 14 + call.Text = "Call" + call.Parent = buttoncontainer + + local btnCorner = Instance.new("UICorner", call) + btnCorner.CornerRadius = UDim.new(0,4) + + local function activate() + local obj = CallFunctionWindow.currentObj + local text = tb.Text or "" + + local argv = {} + for token in string.gmatch(text, "[^,]+") do + local t = token:match("^%s*(.-)%s*$") + local n = tonumber(t) + if n then + argv[#argv+1] = n + elseif t:lower() == "true" then + argv[#argv+1] = true + elseif t:lower() == "false" then + argv[#argv+1] = false + else + local inner = t:match('^"(.-)"$') or t:match("^'(.-)'$") + argv[#argv+1] = inner or t + end + end + + local ok,err = pcall(function() + if obj:IsA("RemoteFunction") then obj:InvokeServer(unpack(argv)) + elseif obj:IsA("BindableFunction") then obj:Invoke(unpack(argv)) + elseif obj:IsA("RemoteEvent") then obj:FireServer(unpack(argv)) + elseif obj:IsA("BindableEvent") then obj:Fire(unpack(argv)) + end + end) + if not ok then + + warn("Failed to call "..obj:GetFullName()..":",err) + end + + CallFunctionWindow:Hide() + end + + tb.FocusLost:Connect(function(enterPressed) + if enterPressed then + activate() + end + end) + + call.MouseButton1Click:Connect(activate) + + local InstanceInfoWindow = Lib.Window.new() + InstanceInfoWindow:SetTitle("Unknown") + InstanceInfoWindow:Resize(280,120) + InstanceInfoWindow.Resizable = false + InstanceInfoWindow.GuiElems.Main.Position = UDim2.new(0.5, -280/2, 0.5, -120/2) + + local content = InstanceInfoWindow.GuiElems.Content + + local layout = Instance.new("UIListLayout", content) + layout.SortOrder = Enum.SortOrder.LayoutOrder + layout.Padding = UDim.new(0, 4) + layout.HorizontalAlignment = Enum.HorizontalAlignment.Center + layout.VerticalAlignment = Enum.VerticalAlignment.Top + + local description = Instance.new("TextLabel") + description.Size = UDim2.new(1, -16, 0, 80) + description.BackgroundTransparency = 1 + description.Font = Enum.Font.SourceSans + description.TextSize = 14 + description.TextWrapped = true + description.TextXAlignment = Enum.TextXAlignment.Left + description.TextYAlignment = Enum.TextYAlignment.Top + description.TextColor3 = Settings.Theme.TextSecondary or Color3.fromRGB(200,200,200) + description.LayoutOrder = 2 + description.Parent = content + + context:Register("COPY",{Name = "Copy", IconMap = Explorer.MiscIcons, Icon = "Copy", DisabledIcon = "Copy_Disabled", Shortcut = "Ctrl+C", OnClick = function() + local clone = game.Clone + local sList,newClipboard = selection.List,{} + Dex_RemoteFunction:InvokeServer("ClearClipboard") -- ADONIS + + local count = 1 + for i = 1,#sList do + local inst = sList[i].Obj + local s,cloned = pcall(clone,inst) + + -- ADONIS + Dex_RemoteFunction:InvokeServer("Copy", inst) + + if s and cloned then + newClipboard[count] = cloned + count = count + 1 + end + end + clipboard = newClipboard + end}) + + context:Register("PASTE",{Name = "Paste Into", IconMap = Explorer.MiscIcons, Icon = "Paste", DisabledIcon = "Paste_Disabled", Shortcut = "Ctrl+Shift+V", OnClick = function() + local sList = selection.List + local newSelection = {} + local count = 1 + for i = 1,#sList do + local node = sList[i] + local inst = node.Obj + Explorer.MakeNodeVisible(node,true) + + -- ADONIS + local pastedObjects = Dex_RemoteFunction:InvokeServer("Paste", inst) + + for k,v in ipairs(pastedObjects) do + local cloned = v + + local clonedNode = nodes[cloned] + if clonedNode then newSelection[count] = clonedNode count = count + 1 end + end + + --[[for c = 1,#clipboard do + local cloned = clipboard[c]:Clone() + if cloned then + cloned.Parent = inst + local clonedNode = nodes[cloned] + if clonedNode then newSelection[count] = clonedNode count = count + 1 end + end + end]] + end + selection:SetTable(newSelection) + + if #newSelection > 0 then + Explorer.ViewNode(newSelection[1]) + end + end}) + + context:Register("DUPLICATE",{Name = "Duplicate", IconMap = Explorer.MiscIcons, Icon = "Copy", DisabledIcon = "Copy_Disabled", Shortcut = "Ctrl+D", OnClick = function() + local clone = game.Clone + local sList = selection.List + local newSelection = {} + local count = 1 + for i = 1,#sList do + local node = sList[i] + local inst = node.Obj + local instPar = node.Parent and node.Parent.Obj + Explorer.MakeNodeVisible(node) + + -- ADONIS + local cloned = Dex_RemoteFunction:InvokeServer("Duplicate", inst, instPar) + + if (cloned) then + local clonedNode = nodes[cloned] + if clonedNode then newSelection[count] = clonedNode count = count + 1 end + end + + --[[local s,cloned = pcall(clone,inst) + if s and cloned then + cloned.Parent = instPar + local clonedNode = nodes[cloned] + if clonedNode then newSelection[count] = clonedNode count = count + 1 end + end]] + end + + selection:SetTable(newSelection) + if #newSelection > 0 then + Explorer.ViewNode(newSelection[1]) + end + end}) + + context:Register("DELETE",{Name = "Delete", IconMap = Explorer.MiscIcons, Icon = "Delete", DisabledIcon = "Delete_Disabled", Shortcut = "Del", OnClick = function() + local destroy = game.Destroy + local sList = selection.List + for i = 1,#sList do + pcall(function() + if not sList[i].Obj:IsA("Player") then + destroy(sList[i].Obj) + end + end) + + -- ADONIS + Dex_RemoteFunction:InvokeServer("Destroy", sList[i].Obj) + end + selection:Clear() + end}) + + context:Register("RENAME",{Name = "Rename", IconMap = Explorer.MiscIcons, Icon = "Rename", DisabledIcon = "Rename_Disabled", Shortcut = "F2", OnClick = function() + local sList = selection.List + if sList[1] then + Explorer.SetRenamingNode(sList[1]) + end + end}) + + context:Register("GROUP",{Name = "Group", IconMap = Explorer.MiscIcons, Icon = "Group", DisabledIcon = "Group_Disabled", Shortcut = "Ctrl+G", OnClick = function() + local sList = selection.List + if #sList == 0 then return end + + --local model = Instance.new("Model",sList[#sList].Obj.Parent) + local model = Dex_RemoteFunction:InvokeServer("InstanceNew", "Model", sList[#sList].Obj.Parent) or Instance.new("Model",sList[#sList].Obj.Parent) + for i = 1,#sList do + pcall(function() sList[i].Obj.Parent = model end) + + Dex_RemoteFunction:InvokeServer("SetProperty", sList[i].Obj, "Parent", model) + end + + if nodes[model] then + selection:Set(nodes[model]) + Explorer.ViewNode(nodes[model]) + end + end}) + + context:Register("UNGROUP",{Name = "Ungroup", IconMap = Explorer.MiscIcons, Icon = "Ungroup", DisabledIcon = "Ungroup_Disabled", Shortcut = "Ctrl+U", OnClick = function() + local newSelection = {} + local count = 1 + local isa = game.IsA + + local function ungroup(node) + local par = node.Parent.Obj + local ch = {} + local chCount = 1 + + for i = 1,#node do + local n = node[i] + newSelection[count] = n + ch[chCount] = n + count = count + 1 + chCount = chCount + 1 + end + + for i = 1,#ch do + pcall(function() ch[i].Obj.Parent = par end) + + Dex_RemoteFunction:InvokeServer("SetProperty", ch[i].Obj, "Parent", par or workspace) + end + + node.Obj:Destroy() + end + + for i,v in next,selection.List do + if isa(v.Obj,"Model") then + ungroup(v) + end + end + + selection:SetTable(newSelection) + if #newSelection > 0 then + Explorer.ViewNode(newSelection[1]) + end + end}) + + context:Register("SELECT_CHILDREN",{Name = "Select Children", IconMap = Explorer.MiscIcons, Icon = "SelectChildren", DisabledIcon = "SelectChildren_Disabled", OnClick = function() + local newSelection = {} + local count = 1 + local sList = selection.List + + for i = 1,#sList do + local node = sList[i] + for ind = 1,#node do + local cNode = node[ind] + if ind == 1 then Explorer.MakeNodeVisible(cNode) end + + newSelection[count] = cNode + count = count + 1 + end + end + + selection:SetTable(newSelection) + if #newSelection > 0 then + Explorer.ViewNode(newSelection[1]) + else + Explorer.Refresh() + end + end}) + + context:Register("JUMP_TO_PARENT",{Name = "Jump to Parent", IconMap = Explorer.MiscIcons, Icon = "JumpToParent", OnClick = function() + local newSelection = {} + local count = 1 + local sList = selection.List + + for i = 1,#sList do + local node = sList[i] + if node.Parent then + newSelection[count] = node.Parent + count = count + 1 + end + end + + selection:SetTable(newSelection) + if #newSelection > 0 then + Explorer.ViewNode(newSelection[1]) + else + Explorer.Refresh() + end + end}) + + context:Register("TELEPORT_TO",{Name = "Teleport To", IconMap = Explorer.MiscIcons, Icon = "TeleportTo", OnClick = function() + local sList = selection.List + local isa = game.IsA + + local hrp = plr.Character and plr.Character:FindFirstChild("HumanoidRootPart") + if not hrp then return end + + for i = 1,#sList do + local node = sList[i] + + if isa(node.Obj,"BasePart") then + hrp.CFrame = node.Obj.CFrame + Settings.Explorer.TeleportToOffset + break + elseif isa(node.Obj,"Model") then + if node.Obj.PrimaryPart then + hrp.CFrame = node.Obj.PrimaryPart.CFrame + Settings.Explorer.TeleportToOffset + break + else + local part = node.Obj:FindFirstChildWhichIsA("BasePart",true) + if part and nodes[part] then + hrp.CFrame = nodes[part].Obj.CFrame + Settings.Explorer.TeleportToOffset + end + end + end + end + end}) + + context:Register("EXPAND_ALL",{Name = "Expand All", OnClick = function() + local sList = selection.List + + local function expand(node) + expanded[node] = true + for i = 1,#node do + if #node[i] > 0 then + expand(node[i]) + end + end + end + + for i = 1,#sList do + expand(sList[i]) + end + + Explorer.ForceUpdate() + end}) + + context:Register("COLLAPSE_ALL",{Name = "Collapse All", OnClick = function() + local sList = selection.List + + local function expand(node) + expanded[node] = nil + for i = 1,#node do + if #node[i] > 0 then + expand(node[i]) + end + end + end + + for i = 1,#sList do + expand(sList[i]) + end + + Explorer.ForceUpdate() + end}) + + context:Register("CLEAR_SEARCH_AND_JUMP_TO",{Name = "Clear Search and Jump to", OnClick = function() + local newSelection = {} + local count = 1 + local sList = selection.List + + for i = 1,#sList do + newSelection[count] = sList[i] + count = count + 1 + end + + selection:SetTable(newSelection) + Explorer.ClearSearch() + if #newSelection > 0 then + Explorer.ViewNode(newSelection[1]) + end + end}) + + context:Register("COPY_PATH",{Name = "Copy Path", OnClick = function() + local sList = selection.List + if #sList == 1 then + env.setclipboard(Explorer.GetInstancePath(sList[1].Obj)) + elseif #sList > 1 then + local resList = {"{"} + local count = 2 + for i = 1,#sList do + local path = "\t"..Explorer.GetInstancePath(sList[i].Obj).."," + if #path > 0 then + resList[count] = path + count = count+1 + end + end + resList[count] = "}" + env.setclipboard(table.concat(resList,"\n")) + end + end}) + + context:Register("INSERT_OBJECT",{Name = "Insert Object", IconMap = Explorer.MiscIcons, Icon = "InsertObject", OnClick = function() + local mouse = Main.Mouse + local x,y = Explorer.LastRightClickX or mouse.X, Explorer.LastRightClickY or mouse.Y + Explorer.InsertObjectContext:Show(x,y) + end}) + + context:Register("CALL_FUNCTION",{ + Name = "Call Function", + IconMap = Explorer.ClassIcons, + Icon = 66, + OnClick = function() + local node = selection.List[1] + if not node then return end + local obj = node.Obj + + if not (obj:IsA("RemoteFunction") or obj:IsA("RemoteEvent") or obj:IsA("BindableFunction") or obj:IsA("BindableEvent")) then + return + end + + CallFunctionWindow.currentObj = obj + CallFunctionWindow:SetTitle("Call: " ..obj:GetFullName():sub(1,40)) + CallFunctionWindow:Show() + end + }) + + context:Register("GET_REFERENCES",{Name = "Get Lua References", IconMap = Explorer.ClassIcons, Icon = 34, OnClick = function() + + end}) + + context:Register("SAVE_INST",{Name = "Save to File", IconMap = Explorer.MiscIcons, Icon = "Save", OnClick = function() + + end}) + + context:Register("VIEW_CONNECTIONS",{Name = "View Connections", OnClick = function() + + end}) + + context:Register("VIEW_API",{Name = "View API Page", IconMap = Explorer.MiscIcons, Icon = "Reference", OnClick = function() + + end}) + + context:Register("VIEW_DESCRIPTION",{Name = "View Description", IconMap = Explorer.MiscIcons, Icon = 34, OnClick = function() + local node = selection.List[1] + if not node then return end + local obj = node.Obj + local className = obj.ClassName + + local name = RMD.Classes[className].Name + local summary = RMD.Classes[className].summary + local additionalDocs = { + Model = "A Model is a container object, it groups objects together and it's best used to hold collections of BaseParts.", + BasePart = "BasePart is an abstract base class for in-world objects that render and are physically simulated while in the Workspace.", + Part = "The Part object is a type of BasePart. It comes in five different primitive shapes: Ball, Block, Cylinder, Wedge, and CornerWedge.", + MeshPart = "MeshPart is a form of BasePart that includes a physically simulated custom mesh. Unlike with other mesh classes, such as SpecialMesh and BlockMesh, they are not parented to a BasePart but rather behave as a BasePart in their own right.", + Workspace = "Workspace is a service that holds objects that exist in the 3D world, effectively BaseParts and Attachments. While such objects are descendant of Workspace, they will be active." + } + + InstanceInfoWindow:SetTitle(name .." \"".. obj.Name .."\"") + + -- as far as I checked, only a few classes have summary for some reason + description.Text = summary or additionalDocs[className] or "No description available for this class. The RMD may be missing some information." + + InstanceInfoWindow:Show() + end}) + + context:Register("VIEW_OBJECT",{Name = "View Object (Right click to reset)", IconMap = Explorer.ClassIcons, Icon = 5, OnClick = function() + local sList = selection.List + local isa = game.IsA + + for i = 1,#sList do + local node = sList[i] + + if isa(node.Obj,"BasePart") or isa(node.Obj,"Model") then + workspace.CurrentCamera.CameraSubject = node.Obj + break + end + end + end, OnRightClick = function() + workspace.CurrentCamera.CameraSubject = plr.Character + end}) + + context:Register("VIEW_SCRIPT",{Name = "View Script", IconMap = Explorer.MiscIcons, Icon = "ViewScript", OnClick = function() + local scr = selection.List[1] and selection.List[1].Obj + if scr then ScriptViewer.ViewScript(scr) end + end}) + + context:Register("SELECT_CHARACTER",{Name = "Select Character", IconMap = Explorer.ClassIcons, Icon = 9, OnClick = function() + local newSelection = {} + local count = 1 + local sList = selection.List + local isa = game.IsA + + for i = 1,#sList do + local node = sList[i] + if isa(node.Obj,"Player") and nodes[node.Obj.Character] then + newSelection[count] = nodes[node.Obj.Character] + count = count + 1 + end + end + + selection:SetTable(newSelection) + if #newSelection > 0 then + Explorer.ViewNode(newSelection[1]) + else + Explorer.Refresh() + end + end}) + + context:Register("REFRESH_NIL",{Name = "Refresh Nil Instances", OnClick = function() + Explorer.RefreshNilInstances() + end}) + + context:Register("HIDE_NIL",{Name = "Hide Nil Instances", OnClick = function() + Explorer.HideNilInstances() + end}) + + Explorer.RightClickContext = context + end + + Explorer.HideNilInstances = function() + table.clear(nilMap) + + local disconnectCon = Instance.new("Folder").ChildAdded:Connect(function() end).Disconnect + for i,v in next,nilCons do + disconnectCon(v[1]) + disconnectCon(v[2]) + end + table.clear(nilCons) + + for i = 1,#nilNode do + task.spawn(removeObject, nilNode[i].Obj) + end + + Explorer.Update() + Explorer.Refresh() + end + + Explorer.RefreshNilInstances = function() + if not env.getnilinstances then return end + + local nilInsts = env.getnilinstances() + local game = game + local getDescs = game.GetDescendants + --local newNilMap = {} + --local newNilRoots = {} + --local nilRoots = Explorer.NilRoots + --local connect = game.DescendantAdded.Connect + --local disconnect + --if not nilRoots then nilRoots = {} Explorer.NilRoots = nilRoots end + + for i = 1,#nilInsts do + local obj = nilInsts[i] + if obj ~= game then + nilMap[obj] = true + --newNilRoots[obj] = true + + local descs = getDescs(obj) + for j = 1,#descs do + nilMap[descs[j]] = true + end + end + end + + -- Remove unmapped nil nodes + --[[for i = 1,#nilNode do + local node = nilNode[i] + if not newNilMap[node.Obj] then + nilMap[node.Obj] = nil + task.spawn(removeObject, node) + end + end]] + + --nilMap = newNilMap + + for i = 1,#nilInsts do + local obj = nilInsts[i] + local node = nodes[obj] + if not node then task.spawn(addObject, obj) end + end + + --[[ + -- Remove old root connections + for obj in next,nilRoots do + if not newNilRoots[obj] then + if not disconnect then disconnect = obj[1].Disconnect end + disconnect(obj[1]) + disconnect(obj[2]) + end + end + + for obj in next,newNilRoots do + if not nilRoots[obj] then + nilRoots[obj] = { + connect(obj.DescendantAdded,addObject), + connect(obj.DescendantRemoving,removeObject) + } + end + end]] + + --nilMap = newNilMap + --Explorer.NilRoots = newNilRoots + + Explorer.Update() + Explorer.Refresh() + end + + Explorer.GetInstancePath = function(obj) + local ffc = game.FindFirstChild + local getCh = game.GetChildren + local path = "" + local curObj = obj + local ts = tostring + local match = string.match + local gsub = string.gsub + local tableFind = table.find + local useGetCh = Settings.Explorer.CopyPathUseGetChildren + local formatLuaString = Lib.FormatLuaString + + while curObj do + if curObj == game then + path = "game"..path + break + end + + local className = curObj.ClassName + local curName = ts(curObj) + local indexName + if match(curName,"^[%a_][%w_]*$") then + indexName = "."..curName + else + local cleanName = formatLuaString(curName) + indexName = '["'..cleanName..'"]' + end + + local parObj = curObj.Parent + if parObj then + local fc = ffc(parObj,curName) + if useGetCh and fc and fc ~= curObj then + local parCh = getCh(parObj) + local fcInd = tableFind(parCh,curObj) + indexName = ":GetChildren()["..fcInd.."]" + elseif parObj == game and API.Classes[className] and API.Classes[className].Tags.Service then + indexName = ':GetService("'..className..'")' + end + end + + path = indexName..path + curObj = parObj + end + + return path + end + + Explorer.InitInsertObject = function() + local context = Lib.ContextMenu.new() + context.SearchEnabled = true + context.MaxHeight = 400 + context:ApplyTheme({ + ContentColor = Settings.Theme.Main2, + OutlineColor = Settings.Theme.Outline1, + DividerColor = Settings.Theme.Outline1, + TextColor = Settings.Theme.Text, + HighlightColor = Settings.Theme.ButtonHover + }) + + local classes = {} + for i,class in next,API.Classes do + local tags = class.Tags + if not tags.NotCreatable and not tags.Service then + local rmdEntry = RMD.Classes[class.Name] + classes[#classes+1] = {class,rmdEntry and rmdEntry.ClassCategory or "Uncategorized"} + end + end + table.sort(classes,function(a,b) + if a[2] ~= b[2] then + return a[2] < b[2] + else + return a[1].Name < b[1].Name + end + end) + + local function onClick(className) + local sList = selection.List + local instNew = Instance.new + for i = 1,#sList do + local node = sList[i] + local obj = node.Obj + Explorer.MakeNodeVisible(node,true) + --pcall(instNew,className,obj) + + Dex_RemoteFunction:InvokeServer("InstanceNew", className, obj) + end + end + + local lastCategory = "" + for i = 1,#classes do + local class = classes[i][1] + local rmdEntry = RMD.Classes[class.Name] + local iconInd = rmdEntry and tonumber(rmdEntry.ExplorerImageIndex) or 0 + local category = classes[i][2] + + if lastCategory ~= category then + context:AddDivider(category) + lastCategory = category + end + context:Add({Name = class.Name, IconMap = Explorer.ClassIcons, Icon = iconInd, OnClick = onClick}) + end + + Explorer.InsertObjectContext = context + end + + --[[ + ]] + Explorer.InitClickToSelect = function() + local connection = Explorer.ClickToSelect_Connection + + -- If Setting is ON + if (Settings.Explorer.ClickToSelect == true) then + + if not (connection) then + local mouse: Mouse = Main.Mouse or service.Players.LocalPlayer:GetMouse() + connection = mouse.Button1Down:Connect(function() + local mouseLocation = service.UserInputService:GetMouseLocation() + + -- Create a ray from the 2D mouse location + local screenToWorldRay = workspace.CurrentCamera:ViewportPointToRay(mouseLocation.X, mouseLocation.Y) + + local DISTANCE_LIMIT = 900000 + local dirVector = screenToWorldRay.Direction * (DISTANCE_LIMIT) + + local raycastResult = workspace:Raycast(screenToWorldRay.Origin, dirVector) + + if (raycastResult) then + local node = nodes[raycastResult.Instance] + + if (node) then + selection:Set(node) + + Explorer.ViewObj(node.Obj) -- Show in Explorer + end + end + end) + + -- Set connection into the table + Explorer.ClickToSelect_Connection = connection + end + else + -- If OFF + if (connection) then + -- Disconnect + connection:Disconnect() + + Explorer.ClickToSelect_Connection = nil + end + end + end + + --[[ + Headers, Setups, Predicate, ObjectDefs + ]] + Explorer.SearchFilters = { -- TODO: Use data table (so we can disable some if funcs don't exist) + Comparison = { + ["isa"] = function(argString) + local lower = string.lower + local find = string.find + local classQuery = string.split(argString)[1] + if not classQuery then return end + classQuery = lower(classQuery) + + local className + for class,_ in pairs(API.Classes) do + local cName = lower(class) + if cName == classQuery then + className = class + break + elseif find(cName,classQuery,1,true) then + className = class + end + end + if not className then return end + + return { + Headers = {"local isa = game.IsA"}, + Predicate = "isa(obj,'"..className.."')" + } + end, + ["remotes"] = function(argString) + return { + Headers = {"local isa = game.IsA"}, + Predicate = "isa(obj,'RemoteEvent') or isa(obj,'RemoteFunction')" + } + end, + ["bindables"] = function(argString) + return { + Headers = {"local isa = game.IsA"}, + Predicate = "isa(obj,'BindableEvent') or isa(obj,'BindableFunction')" + } + end, + ["rad"] = function(argString) + local num = tonumber(argString) + if not num then return end + + if not service.Players.LocalPlayer.Character or not service.Players.LocalPlayer.Character:FindFirstChild("HumanoidRootPart") or not service.Players.LocalPlayer.Character.HumanoidRootPart:IsA("BasePart") then return end + + return { + Headers = {"local isa = game.IsA", "local hrp = service.Players.LocalPlayer.Character.HumanoidRootPart"}, + Setups = {"local hrpPos = hrp.Position"}, + ObjectDefs = {"local isBasePart = isa(obj,'BasePart')"}, + Predicate = "(isBasePart and (obj.Position-hrpPos).Magnitude <= "..num..")" + } + end, + }, + Specific = { + ["players"] = function() + return function() return service.Players:GetPlayers() end + end, + ["loadedmodules"] = function() + return env.getloadedmodules + end, + }, + Default = function(argString,caseSensitive) + local cleanString = argString:gsub("\"","\\\""):gsub("\n","\\n") + if caseSensitive then + return { + Headers = {"local find = string.find"}, + ObjectDefs = {"local objName = tostring(obj)"}, + Predicate = "find(objName,\"" .. cleanString .. "\",1,true)" + } + else + return { + Headers = {"local lower = string.lower","local find = string.find","local tostring = tostring"}, + ObjectDefs = {"local lowerName = lower(tostring(obj))"}, + Predicate = "find(lowerName,\"" .. cleanString:lower() .. "\",1,true)" + } + end + end, + SpecificDefault = function(n) + return { + Headers = {}, + ObjectDefs = {"local isSpec"..n.." = specResults["..n.."][node]"}, + Predicate = "isSpec"..n + } + end, + } + + Explorer.BuildSearchFunc = function(query) + local specFilterList,specMap = {},{} + local finalPredicate = "" + local rep = string.rep + local formatQuery = query:gsub("\\."," "):gsub('".-"',function(str) return rep(" ",#str) end) + local headers = {} + local objectDefs = {} + local setups = {} + local find = string.find + local sub = string.sub + local lower = string.lower + local match = string.match + local ops = { + ["("] = "(", + [")"] = ")", + ["||"] = " or ", + ["&&"] = " and " + } + local filterCount = 0 + local compFilters = Explorer.SearchFilters.Comparison + local specFilters = Explorer.SearchFilters.Specific + local init = 1 + local lastOp = nil + + local function processFilter(dat) + if dat.Headers then + local t = dat.Headers + for i = 1,#t do + headers[t[i]] = true + end + end + + if dat.ObjectDefs then + local t = dat.ObjectDefs + for i = 1,#t do + objectDefs[t[i]] = true + end + end + + if dat.Setups then + local t = dat.Setups + for i = 1,#t do + setups[t[i]] = true + end + end + + finalPredicate = finalPredicate..dat.Predicate + end + + local found = {} + local foundData = {} + local find = string.find + local sub = string.sub + + local function findAll(str,pattern) + local count = #found+1 + local init = 1 + local sz = #pattern + local x,y,extra = find(str,pattern,init,true) + while x do + found[count] = x + foundData[x] = {sz,pattern} + + count = count+1 + init = y+1 + x,y,extra = find(str,pattern,init,true) + end + end + local start = tick() + findAll(formatQuery,'&&') + findAll(formatQuery,"||") + findAll(formatQuery,"(") + findAll(formatQuery,")") + table.sort(found) + table.insert(found,#formatQuery+1) + + local function inQuotes(str) + local len = #str + if sub(str,1,1) == '"' and sub(str,len,len) == '"' then + return sub(str,2,len-1) + end + end + + for i = 1,#found do + local nextInd = found[i] + local nextData = foundData[nextInd] or {1} + local op = ops[nextData[2]] + local term = sub(query,init,nextInd-1) + term = match(term,"^%s*(.-)%s*$") or "" -- Trim + + if #term > 0 then + if sub(term,1,1) == "!" then + term = sub(term,2) + finalPredicate = finalPredicate.."not " + end + + local qTerm = inQuotes(term) + if qTerm then + processFilter(Explorer.SearchFilters.Default(qTerm,true)) + else + local x,y = find(term,"%S+") + if x then + local first = sub(term,x,y) + local specifier = sub(first,1,1) == "/" and lower(sub(first,2)) + local compFunc = specifier and compFilters[specifier] + local specFunc = specifier and specFilters[specifier] + + if compFunc then + local argStr = sub(term,y+2) + local ret = compFunc(inQuotes(argStr) or argStr) + if ret then + processFilter(ret) + else + finalPredicate = finalPredicate.."false" + end + elseif specFunc then + local argStr = sub(term,y+2) + local ret = specFunc(inQuotes(argStr) or argStr) + if ret then + if not specMap[term] then + specFilterList[#specFilterList + 1] = ret + specMap[term] = #specFilterList + end + processFilter(Explorer.SearchFilters.SpecificDefault(specMap[term])) + else + finalPredicate = finalPredicate.."false" + end + else + processFilter(Explorer.SearchFilters.Default(term)) + end + end + end + end + + if op then + finalPredicate = finalPredicate..op + if op == "(" and (#term > 0 or lastOp == ")") then -- Handle bracket glitch + return + else + lastOp = op + end + end + init = nextInd+nextData[1] + end + + local finalSetups = "" + local finalHeaders = "" + local finalObjectDefs = "" + + for setup,_ in next,setups do finalSetups = finalSetups..setup.."\n" end + for header,_ in next,headers do finalHeaders = finalHeaders..header.."\n" end + for oDef,_ in next,objectDefs do finalObjectDefs = finalObjectDefs..oDef.."\n" end + + return nil,specFilterList + end + + Explorer.DoSearch = function(query) + table.clear(Explorer.SearchExpanded) + table.clear(searchResults) + expanded = (#query == 0 and Explorer.Expanded or Explorer.SearchExpanded) + searchFunc = nil + + if #query > 0 then + local expandTable = Explorer.SearchExpanded + local specFilters + + local lower = string.lower + local find = string.find + local tostring = tostring + + local lowerQuery = lower(query) + + local function defaultSearch(root) + local expandedpar = false + for i = 1,#root do + local node = root[i] + local obj = node.Obj + + if find(lower(tostring(obj)),lowerQuery,1,true) then + expandTable[node] = 0 + searchResults[node] = true + if not expandedpar then + local parnode = node.Parent + while parnode and (not searchResults[parnode] or expandTable[parnode] == 0) do + expanded[parnode] = true + searchResults[parnode] = true + parnode = parnode.Parent + end + expandedpar = true + end + end + + if #node > 0 then defaultSearch(node) end + end + end + + if Main.Elevated then + local start = tick() + searchFunc,specFilters = Explorer.BuildSearchFunc(query) + --print("BUILD SEARCH",tick()-start) + else + searchFunc = defaultSearch + end + + if specFilters then + table.clear(specResults) + for i = 1,#specFilters do -- Specific search filers that returns list of matches + local resMap = {} + specResults[i] = resMap + local objs = specFilters[i]() + for c = 1,#objs do + local node = nodes[objs[c]] + if node then + resMap[node] = true + end + end + end + end + + if searchFunc then + local start = tick() + searchFunc(nodes[game]) + searchFunc(nilNode) + --warn(tick()-start) + end + end + + Explorer.ForceUpdate() + end + + Explorer.ClearSearch = function() + Explorer.GuiElems.SearchBar.Text = "" + expanded = Explorer.Expanded + searchFunc = nil + end + + Explorer.InitSearch = function() + local searchBox = Explorer.GuiElems.ToolBar.SearchFrame.SearchBox + Explorer.GuiElems.SearchBar = searchBox + + Lib.ViewportTextBox.convert(searchBox) + + searchBox.FocusLost:Connect(function() + Explorer.DoSearch(searchBox.Text) + end) + end + + Explorer.InitEntryTemplate = function() + entryTemplate = create({ + {1,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0,0,0),BackgroundTransparency=1,BorderColor3=Color3.new(0,0,0),Font=3,Name="Entry",Position=UDim2.new(0,1,0,1),Size=UDim2.new(0,250,0,20),Text="",TextSize=14,}}, + {2,"Frame",{BackgroundColor3=Color3.new(0.04313725605607,0.35294118523598,0.68627452850342),BackgroundTransparency=1,BorderColor3=Color3.new(0.33725491166115,0.49019610881805,0.73725491762161),BorderSizePixel=0,Name="Indent",Parent={1},Position=UDim2.new(0,20,0,0),Size=UDim2.new(1,-20,1,0),}}, + {3,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="EntryName",Parent={2},Position=UDim2.new(0,26,0,0),Size=UDim2.new(1,-26,1,0),Text="Workspace",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, + {4,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,ClipsDescendants=true,Font=3,Name="Expand",Parent={2},Position=UDim2.new(0,-20,0,0),Size=UDim2.new(0,20,0,20),Text="",TextSize=14,}}, + {5,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://5642383285",ImageRectOffset=Vector2.new(144,16),ImageRectSize=Vector2.new(16,16),Name="Icon",Parent={4},Position=UDim2.new(0,2,0,2),ScaleType=4,Size=UDim2.new(0,16,0,16),}}, + {6,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxasset://textures/ClassImages.png",ImageRectOffset=Vector2.new(304,0),ImageRectSize=Vector2.new(16,16),Name="Icon",Parent={2},Position=UDim2.new(0,4,0,2),ScaleType=4,Size=UDim2.new(0,16,0,16),}}, + }) + + local sys = Lib.ClickSystem.new() + sys.AllowedButtons = {1,2} + sys.OnDown:Connect(function(item,combo,button) + local ind = table.find(listEntries,item) + if not ind then return end + local node = tree[ind + Explorer.Index] + if not node then return end + + local entry = listEntries[ind] + + if button == 1 then + if combo == 2 then + if node.Obj:IsA("LuaSourceContainer") then + ScriptViewer.ViewScript(node.Obj) + elseif #node > 0 and expanded[node] ~= 0 then + expanded[node] = not expanded[node] + Explorer.Update() + end + end + + if Properties.SelectObject(node.Obj) then + sys.IsRenaming = false + return + end + + sys.IsRenaming = selection.Map[node] + + if Lib.IsShiftDown() then + if not selection.Piviot then return end + + local fromIndex = table.find(tree,selection.Piviot) + local toIndex = table.find(tree,node) + if not fromIndex or not toIndex then return end + fromIndex,toIndex = math.min(fromIndex,toIndex),math.max(fromIndex,toIndex) + + local sList = selection.List + for i = #sList,1,-1 do + local elem = sList[i] + if selection.ShiftSet[elem] then + selection.Map[elem] = nil + table.remove(sList,i) + end + end + selection.ShiftSet = {} + for i = fromIndex,toIndex do + local elem = tree[i] + if not selection.Map[elem] then + selection.ShiftSet[elem] = true + selection.Map[elem] = true + sList[#sList+1] = elem + end + end + selection.Changed:Fire() + elseif Lib.IsCtrlDown() then + selection.ShiftSet = {} + if selection.Map[node] then selection:Remove(node) else selection:Add(node) end + selection.Piviot = node + sys.IsRenaming = false + elseif not selection.Map[node] then + selection.ShiftSet = {} + selection:Set(node) + selection.Piviot = node + end + elseif button == 2 then + if Properties.SelectObject(node.Obj) then + return + end + + if not Lib.IsCtrlDown() and not selection.Map[node] then + selection.ShiftSet = {} + selection:Set(node) + selection.Piviot = node + Explorer.Refresh() + end + end + + Explorer.Refresh() + end) + + sys.OnRelease:Connect(function(item,combo,button) + local ind = table.find(listEntries,item) + if not ind then return end + local node = tree[ind + Explorer.Index] + if not node then return end + + if button == 1 then + if selection.Map[node] and not Lib.IsShiftDown() and not Lib.IsCtrlDown() then + selection.ShiftSet = {} + selection:Set(node) + selection.Piviot = node + Explorer.Refresh() + end + + local id = sys.ClickId + Lib.FastWait(sys.ComboTime) + if combo == 1 and id == sys.ClickId and sys.IsRenaming and selection.Map[node] then + Explorer.SetRenamingNode(node) + end + elseif button == 2 then + Explorer.ShowRightClick() + end + end) + Explorer.ClickSystem = sys + end + + Explorer.InitDelCleaner = function() + task.spawn(function() + local fw = Lib.FastWait + while true do + local processed = false + local c = 0 + for _,node in next,nodes do + if node.HasDel then + local delInd + for i = 1,#node do + if node[i].Del then + delInd = i + break + end + end + if delInd then + for i = delInd+1,#node do + local cn = node[i] + if not cn.Del then + node[delInd] = cn + delInd = delInd+1 + end + end + for i = delInd,#node do + node[i] = nil + end + end + node.HasDel = false + processed = true + fw() + end + c = c + 1 + if c > 10000 then + c = 0 + fw() + end + end + if processed and not refreshDebounce then Explorer.PerformRefresh() end + fw(0.5) + end + end) + end + + Explorer.UpdateSelectionVisuals = function() + local holder = Explorer.SelectionVisualsHolder + local isa = game.IsA + local clone = game.Clone + if not holder then + holder = Instance.new("ScreenGui") + holder.Name = "Dex_ExplorerSelections" + holder.DisplayOrder = Main.DisplayOrders.Core + holder.ResetOnSpawn = false + Lib.ShowGui(holder) + Explorer.SelectionVisualsHolder = holder + Explorer.SelectionVisualCons = {} + + local guiTemplate = create({ + {1,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Size=UDim2.new(0,100,0,100),}}, + {2,"Frame",{BackgroundColor3=Color3.new(0.04313725605607,0.35294118523598,0.68627452850342),BorderSizePixel=0,Parent={1},Position=UDim2.new(0,-1,0,-1),Size=UDim2.new(1,2,0,1),}}, + {3,"Frame",{BackgroundColor3=Color3.new(0.04313725605607,0.35294118523598,0.68627452850342),BorderSizePixel=0,Parent={1},Position=UDim2.new(0,-1,1,0),Size=UDim2.new(1,2,0,1),}}, + {4,"Frame",{BackgroundColor3=Color3.new(0.04313725605607,0.35294118523598,0.68627452850342),BorderSizePixel=0,Parent={1},Position=UDim2.new(0,-1,0,0),Size=UDim2.new(0,1,1,0),}}, + {5,"Frame",{BackgroundColor3=Color3.new(0.04313725605607,0.35294118523598,0.68627452850342),BorderSizePixel=0,Parent={1},Position=UDim2.new(1,0,0,0),Size=UDim2.new(0,1,1,0),}}, + }) + Explorer.SelectionVisualGui = guiTemplate + + local boxTemplate = Instance.new("SelectionBox") + boxTemplate.LineThickness = 0.03 + boxTemplate.Color3 = Color3.fromRGB(0, 170, 255) + Explorer.SelectionVisualBox = boxTemplate + end + holder:ClearAllChildren() + + -- Updates theme + for i,v in pairs(Explorer.SelectionVisualGui:GetChildren()) do + v.BackgroundColor3 = Color3.fromRGB(0, 170, 255) + end + + local attachCons = Explorer.SelectionVisualCons + for i = 1,#attachCons do + attachCons[i].Destroy() + end + table.clear(attachCons) + + local partEnabled = Settings.Explorer.PartSelectionBox + local guiEnabled = Settings.Explorer.GuiSelectionBox + if not partEnabled and not guiEnabled then return end + + local svg = Explorer.SelectionVisualGui + local svb = Explorer.SelectionVisualBox + local attachTo = Lib.AttachTo + local sList = selection.List + local count = 1 + local boxCount = 0 + local workspaceNode = nodes[workspace] + for i = 1,#sList do + if boxCount > 1000 then break end + local node = sList[i] + local obj = node.Obj + + if node ~= workspaceNode then + if isa(obj,"GuiObject") and guiEnabled then + local newVisual = clone(svg) + attachCons[count] = attachTo(newVisual,{Target = obj, Resize = true}) + count = count + 1 + newVisual.Parent = holder + boxCount = boxCount + 1 + elseif isa(obj,"PVInstance") and partEnabled then + local newBox = clone(svb) + newBox.Adornee = obj + newBox.Parent = holder + boxCount = boxCount + 1 + end + end + end + end + + Explorer.Init = function() + Explorer.ClassIcons = Lib.IconMap.newLinear("rbxasset://textures/ClassImages.png",16,16) + Explorer.MiscIcons = Main.MiscIcons + + clipboard = {} + + selection = Lib.Set.new() + selection.ShiftSet = {} + selection.Changed:Connect(Properties.ShowExplorerProps) + Explorer.Selection = selection + + Explorer.InitRightClick() + Explorer.InitInsertObject() + + Explorer.InitClickToSelect() + + Explorer.SetSortingEnabled(Settings.Explorer.Sorting) + Explorer.Expanded = setmetatable({},{__mode = "k"}) + Explorer.SearchExpanded = setmetatable({},{__mode = "k"}) + expanded = Explorer.Expanded + + nilNode.Obj.Name = "Nil Instances" + nilNode.Locked = true + + local explorerItems = create({ + {1,"Folder",{Name="ExplorerItems",}}, + {2,"Frame",{BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),BorderSizePixel=0,Name="ToolBar",Parent={1},Size=UDim2.new(1,0,0,22),}}, + {3,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.1176470592618,0.1176470592618,0.1176470592618),BorderSizePixel=0,Name="SearchFrame",Parent={2},Position=UDim2.new(0,3,0,1),Size=UDim2.new(1,-6,0,18),}}, + {4,"TextBox",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,ClearTextOnFocus=false,Font=3,Name="SearchBox",Parent={3},PlaceholderColor3=Color3.new(0.39215689897537,0.39215689897537,0.39215689897537),PlaceholderText="Search workspace",Position=UDim2.new(0,4,0,0),Size=UDim2.new(1,-24,0,18),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,TextXAlignment=0,}}, + {5,"UICorner",{CornerRadius=UDim.new(0,2),Parent={3},}}, + {6,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Reset",Parent={3},Position=UDim2.new(1,-17,0,1),Size=UDim2.new(0,16,0,16),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,}}, + {7,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://5034718129",ImageColor3=Color3.new(0.39215686917305,0.39215686917305,0.39215686917305),Parent={6},Size=UDim2.new(0,16,0,16),}}, + {8,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Refresh",Parent={2},Position=UDim2.new(1,-20,0,1),Size=UDim2.new(0,18,0,18),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,Visible=false,}}, + {9,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://5642310344",Parent={8},Position=UDim2.new(0,3,0,3),Size=UDim2.new(0,12,0,12),}}, + {10,"Frame",{BackgroundColor3=Color3.new(0.15686275064945,0.15686275064945,0.15686275064945),BorderSizePixel=0,Name="ScrollCorner",Parent={1},Position=UDim2.new(1,-16,1,-16),Size=UDim2.new(0,16,0,16),Visible=false,}}, + {11,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,ClipsDescendants=true,Name="List",Parent={1},Position=UDim2.new(0,0,0,23),Size=UDim2.new(1,0,1,-23),}}, + }) + + toolBar = explorerItems.ToolBar + treeFrame = explorerItems.List + + Explorer.GuiElems.ToolBar = toolBar + Explorer.GuiElems.TreeFrame = treeFrame + + scrollV = Lib.ScrollBar.new() + scrollV.WheelIncrement = 3 + scrollV.Gui.Position = UDim2.new(1,-16,0,23) + scrollV:SetScrollFrame(treeFrame) + scrollV.Scrolled:Connect(function() + Explorer.Index = scrollV.Index + Explorer.Refresh() + end) + + scrollH = Lib.ScrollBar.new(true) + scrollH.Increment = 5 + scrollH.WheelIncrement = Explorer.EntryIndent + scrollH.Gui.Position = UDim2.new(0,0,1,-16) + scrollH.Scrolled:Connect(function() + Explorer.Refresh() + end) + + local window = Lib.Window.new() + Explorer.Window = window + window:SetTitle("Explorer") + window.GuiElems.Line.Position = UDim2.new(0,0,0,22) + + Explorer.InitEntryTemplate() + toolBar.Parent = window.GuiElems.Content + treeFrame.Parent = window.GuiElems.Content + explorerItems.ScrollCorner.Parent = window.GuiElems.Content + scrollV.Gui.Parent = window.GuiElems.Content + scrollH.Gui.Parent = window.GuiElems.Content + + -- Init stuff that requires the window + Explorer.InitRenameBox() + Explorer.InitSearch() + Explorer.InitDelCleaner() + selection.Changed:Connect(Explorer.UpdateSelectionVisuals) + + -- Window events + window.GuiElems.Main:GetPropertyChangedSignal("AbsoluteSize"):Connect(function() + if Explorer.Active then + Explorer.UpdateView() + Explorer.Refresh() + end + end) + window.OnActivate:Connect(function() + Explorer.Active = true + Explorer.UpdateView() + Explorer.Update() + Explorer.Refresh() + end) + window.OnRestore:Connect(function() + Explorer.Active = true + Explorer.UpdateView() + Explorer.Update() + Explorer.Refresh() + end) + window.OnDeactivate:Connect(function() Explorer.Active = false end) + window.OnMinimize:Connect(function() Explorer.Active = false end) + + -- Settings + autoUpdateSearch = Settings.Explorer.AutoUpdateSearch + + + -- Fill in nodes + nodes[game] = {Obj = game} + expanded[nodes[game]] = true + + -- Nil Instances + if env.getnilinstances then + nodes[nilNode.Obj] = nilNode + end + + Explorer.SetupConnections() + + local insts = getDescendants(game) + if Main.Elevated then + for i = 1,#insts do + local obj = insts[i] + local par = nodes[ffa(obj,"Instance")] + if not par then continue end + local newNode = { + Obj = obj, + Parent = par, + } + nodes[obj] = newNode + par[#par+1] = newNode + end + else + for i = 1,#insts do + local obj = insts[i] + local s,parObj = pcall(ffa,obj,"Instance") + local par = nodes[parObj] + if not par then continue end + local newNode = { + Obj = obj, + Parent = par, + } + nodes[obj] = newNode + par[#par+1] = newNode + end + end + end + + return Explorer +end + +return {InitDeps = initDeps, InitAfterMain = initAfterMain, Main = main} \ No newline at end of file diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Lib.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Lib.lua new file mode 100644 index 0000000000..b9b58ba04b --- /dev/null +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Lib.lua @@ -0,0 +1,5775 @@ +--[[ + Lib Module + + Container for functions and classes +]] + +-- Common Locals +local Main,Lib,Apps,Settings -- Main Containers +local Explorer, Properties, ScriptViewer, Notebook -- Major Apps +local API,RMD,env,service,plr,create,createSimple -- Main Locals + +local function initDeps(data) + Main = data.Main + Lib = data.Lib + Apps = data.Apps + Settings = data.Settings + + API = data.API + RMD = data.RMD + env = data.env + service = data.service + plr = data.plr + create = data.create + createSimple = data.createSimple +end + +local function initAfterMain() + Explorer = Apps.Explorer + Properties = Apps.Properties + ScriptViewer = Apps.ScriptViewer + Notebook = Apps.Notebook +end + +local function main() + local Lib = {} + + -- silencer + Lib.ViewportTextBox = nil + + --Lib.StoredWindows = {} + --Lib.SidesGui = nil + + local renderStepped = service.RunService.RenderStepped + local signalWait = renderStepped.wait + local PH = newproxy() -- Placeholder, must be replaced in constructor + local SIGNAL = newproxy() + + -- Usually for classes that work with a Roblox Object + local function initObj(props,mt) + local type = type + local function copy(t) + local res = {} + for i,v in pairs(t) do + if v == SIGNAL then + res[i] = Lib.Signal.new() + elseif type(v) == "table" then + res[i] = copy(v) + else + res[i] = v + end + end + return res + end + + local newObj = copy(props) + return setmetatable(newObj,mt) + end + + local function getGuiMT(props,funcs) + return {__index = function(self,ind) if not props[ind] then return funcs[ind] or self.Gui[ind] end end, + __newindex = function(self,ind,val) if not props[ind] then self.Gui[ind] = val else rawset(self,ind,val) end end} + end + + -- Functions + + Lib.FormatLuaString = (function() + local string = string + local gsub = string.gsub + local format = string.format + local char = string.char + local cleanTable = {['"'] = '\\"', ['\\'] = '\\\\'} + for i = 0,31 do + cleanTable[char(i)] = "\\"..format("%03d",i) + end + for i = 127,255 do + cleanTable[char(i)] = "\\"..format("%03d",i) + end + + return function(str) + return gsub(str,"[\"\\\0-\31\127-\255]",cleanTable) + end + end)() + + Lib.CheckMouseInGui = function(gui) + if gui == nil then return false end + local mouse = Main.Mouse + local guiPosition = gui.AbsolutePosition + local guiSize = gui.AbsoluteSize + + return mouse.X >= guiPosition.X and mouse.X < guiPosition.X + guiSize.X and mouse.Y >= guiPosition.Y and mouse.Y < guiPosition.Y + guiSize.Y + end + + Lib.IsShiftDown = function() + return service.UserInputService:IsKeyDown(Enum.KeyCode.LeftShift) or service.UserInputService:IsKeyDown(Enum.KeyCode.RightShift) + end + + Lib.IsCtrlDown = function() + return service.UserInputService:IsKeyDown(Enum.KeyCode.LeftControl) or service.UserInputService:IsKeyDown(Enum.KeyCode.RightControl) + end + + Lib.CreateArrow = function(size,num,dir) + local max = num + local arrowFrame = createSimple("Frame",{ + BackgroundTransparency = 1, + Name = "Arrow", + Size = UDim2.new(0,size,0,size) + }) + if dir == "up" then + for i = 1,num do + local newLine = createSimple("Frame",{ + BackgroundColor3 = Color3.new(220/255,220/255,220/255), + BorderSizePixel = 0, + Position = UDim2.new(0,math.floor(size/2)-(i-1),0,math.floor(size/2)+i-math.floor(max/2)-1), + Size = UDim2.new(0,i+(i-1),0,1), + Parent = arrowFrame + }) + end + return arrowFrame + elseif dir == "down" then + for i = 1,num do + local newLine = createSimple("Frame",{ + BackgroundColor3 = Color3.new(220/255,220/255,220/255), + BorderSizePixel = 0, + Position = UDim2.new(0,math.floor(size/2)-(i-1),0,math.floor(size/2)-i+math.floor(max/2)+1), + Size = UDim2.new(0,i+(i-1),0,1), + Parent = arrowFrame + }) + end + return arrowFrame + elseif dir == "left" then + for i = 1,num do + local newLine = createSimple("Frame",{ + BackgroundColor3 = Color3.new(220/255,220/255,220/255), + BorderSizePixel = 0, + Position = UDim2.new(0,math.floor(size/2)+i-math.floor(max/2)-1,0,math.floor(size/2)-(i-1)), + Size = UDim2.new(0,1,0,i+(i-1)), + Parent = arrowFrame + }) + end + return arrowFrame + elseif dir == "right" then + for i = 1,num do + local newLine = createSimple("Frame",{ + BackgroundColor3 = Color3.new(220/255,220/255,220/255), + BorderSizePixel = 0, + Position = UDim2.new(0,math.floor(size/2)-i+math.floor(max/2)+1,0,math.floor(size/2)-(i-1)), + Size = UDim2.new(0,1,0,i+(i-1)), + Parent = arrowFrame + }) + end + return arrowFrame + end + error("r u ok") + end + + Lib.ParseXML = (function() + local func = function() + -- Only exists to parse RMD + -- from https://github.com/jonathanpoelen/xmlparser + + local string, print, pairs = string, print, pairs + + -- http://lua-users.org/wiki/StringTrim + local trim = function(s) + local from = s:match"^%s*()" + return from > #s and "" or s:match(".*%S", from) + end + + local gtchar = string.byte('>', 1) + local slashchar = string.byte('/', 1) + local D = string.byte('D', 1) + local E = string.byte('E', 1) + + local function defaultEntityTable() + return { quot='"', apos='\'', lt='<', gt='>', amp='&', tab='\t', nbsp=' ', } + end + + local function replaceEntities(s, entities) + return s:gsub('&([^;]+);', entities) + end + + local function createEntityTable(docEntities, resultEntities) + local entities = resultEntities or defaultEntityTable() + for _,e in pairs(docEntities) do + e.value = replaceEntities(e.value, entities) + entities[e.name] = e.value + end + return entities + end + + local function parse(s, evalEntities) + -- remove comments + s = s:gsub('', '') + + local entities, tentities = {}, nil + + if evalEntities then + local pos = s:find('<[_%w]') + if pos then + s:sub(1, pos):gsub('?)([^<]*)', function(type, name, closed, txt) + -- open + if #type == 0 then + local a = {} + if #closed == 0 then + local len = 0 + for all,aname,_,value,starttxt in string.gmatch(txt, "(.-([-_%w]+)%s*=%s*(.)(.-)%3%s*(/?>?))") do + len = len + #all + a[aname] = value + if #starttxt ~= 0 then + txt = txt:sub(len+1) + closed = starttxt + break + end + end + end + t[#t+1] = {tag=name, attrs=a, children={}} + + if closed:byte(1) ~= slashchar then + l[#l+1] = t + t = t[#t].children + end + + addtext(txt) + -- close + elseif '/' == type then + t = l[#l] + l[#l] = nil + + addtext(txt) + -- ENTITY + elseif '!' == type then + if E == name:byte(1) then + txt:gsub('([_%w]+)%s+(.)(.-)%2', function(name, q, entity) + entities[#entities+1] = {name=name, value=entity} + end, 1) + end + -- elseif '?' == type then + -- print('? ' .. name .. ' // ' .. attrs .. '$$') + -- elseif '-' == type then + -- print('comment ' .. name .. ' // ' .. attrs .. '$$') + -- else + -- print('o ' .. #p .. ' // ' .. name .. ' // ' .. attrs .. '$$') + end + end) + + return {children=t, entities=entities, tentities=tentities} + end + + local function parseText(txt) + return parse(txt) + end + + return parseText + end + local newEnv = setmetatable({},{__index = getfenv()}) + setfenv(func,newEnv) + return func() + end)() + + Lib.FastWait = function(s) + if not s then return signalWait(renderStepped) end + local start = tick() + while tick() - start < s do signalWait(renderStepped) end + end + + Lib.ButtonAnim = function(button,data) + local holding = false + local disabled = false + local mode = data and data.Mode or 1 + local control = {} + + if mode == 2 then + local lerpTo = data.LerpTo or Color3.new(0,0,0) + local delta = data.LerpDelta or 0.2 + control.StartColor = data.StartColor or button.BackgroundColor3 + control.PressColor = data.PressColor or control.StartColor:lerp(lerpTo,delta) + control.HoverColor = data.HoverColor or control.StartColor:lerp(control.PressColor,0.6) + control.OutlineColor = data.OutlineColor + end + + button.InputBegan:Connect(function(input) + if disabled then return end + if input.UserInputType == Enum.UserInputType.MouseMovement and not holding then + if mode == 1 then + button.BackgroundTransparency = 0.4 + elseif mode == 2 then + button.BackgroundColor3 = control.HoverColor + end + elseif input.UserInputType == Enum.UserInputType.MouseButton1 then + holding = true + if mode == 1 then + button.BackgroundTransparency = 0 + elseif mode == 2 then + button.BackgroundColor3 = control.PressColor + if control.OutlineColor then button.BorderColor3 = control.PressColor end + end + end + end) + + button.InputEnded:Connect(function(input) + if disabled then return end + if input.UserInputType == Enum.UserInputType.MouseMovement and not holding then + if mode == 1 then + button.BackgroundTransparency = 1 + elseif mode == 2 then + button.BackgroundColor3 = control.StartColor + end + elseif input.UserInputType == Enum.UserInputType.MouseButton1 then + holding = false + if mode == 1 then + button.BackgroundTransparency = Lib.CheckMouseInGui(button) and 0.4 or 1 + elseif mode == 2 then + button.BackgroundColor3 = Lib.CheckMouseInGui(button) and control.HoverColor or control.StartColor + if control.OutlineColor then button.BorderColor3 = control.OutlineColor end + end + end + end) + + control.Disable = function() + disabled = true + holding = false + + if mode == 1 then + button.BackgroundTransparency = 1 + elseif mode == 2 then + button.BackgroundColor3 = control.StartColor + end + end + + control.Enable = function() + disabled = false + end + + return control + end + + Lib.FindAndRemove = function(t,item) + local pos = table.find(t,item) + if pos then table.remove(t,pos) end + end + + Lib.AttachTo = function(obj,data) + local target,posOffX,posOffY,sizeOffX,sizeOffY,resize,con + local disabled = false + + local function update() + if not obj or not target then return end + + local targetPos = target.AbsolutePosition + local targetSize = target.AbsoluteSize + obj.Position = UDim2.new(0,targetPos.X + posOffX,0,targetPos.Y + posOffY) + if resize then obj.Size = UDim2.new(0,targetSize.X + sizeOffX,0,targetSize.Y + sizeOffY) end + end + + local function setup(o,data) + obj = o + data = data or {} + target = data.Target + posOffX = data.PosOffX or 0 + posOffY = data.PosOffY or 0 + sizeOffX = data.SizeOffX or 0 + sizeOffY = data.SizeOffY or 0 + resize = data.Resize or false + + if con then con:Disconnect() con = nil end + if target then + con = target.Changed:Connect(function(prop) + if not disabled and prop == "AbsolutePosition" or prop == "AbsoluteSize" then + update() + end + end) + end + + update() + end + setup(obj,data) + + return { + SetData = function(obj,data) + setup(obj,data) + end, + Enable = function() + disabled = false + update() + end, + Disable = function() + disabled = true + end, + Destroy = function() + con:Disconnect() + con = nil + end, + } + end + + Lib.ProtectedGuis = {} + + Lib.ShowGui = function(gui) + if env.protectgui then + env.protectgui(gui) + end + gui.Parent = Main.GuiHolder + end + + Lib.ColorToBytes = function(col) + local round = math.round + return string.format("%d, %d, %d",round(col.r*255),round(col.g*255),round(col.b*255)) + end + + Lib.ReadFile = function(filename) + if not env.readfile then return end + + local s,contents = pcall(env.readfile,filename) + if s and contents then return contents end + end + + Lib.DeferFunc = function(f,...) + signalWait(renderStepped) + return f(...) + end + + Lib.LoadCustomAsset = function(filepath) + if not env.getcustomasset or not env.isfile or not env.isfile(filepath) then return end + + return env.getcustomasset(filepath) + end + + Lib.FetchCustomAsset = function(url,filepath) + if not env.writefile then return end + + local s,data = pcall(game.HttpGet,game,url) + if not s then return end + + env.writefile(filepath,data) + return Lib.LoadCustomAsset(filepath) + end + + -- Classes + + Lib.Signal = (function() + local funcs = {} + + local disconnect = function(con) + local pos = table.find(con.Signal.Connections,con) + if pos then table.remove(con.Signal.Connections,pos) end + end + + funcs.Connect = function(self,func) + if type(func) ~= "function" then error("Attempt to connect a non-function") end + local con = { + Signal = self, + Func = func, + Disconnect = disconnect + } + self.Connections[#self.Connections+1] = con + return con + end + + funcs.Fire = function(self,...) + for i,v in next,self.Connections do + task.spawn(xpcall, v.Func, function(e) warn(e.."\n"..debug.traceback()) end, ...) + end + end + + local mt = { + __index = funcs, + __tostring = function(self) + return "Signal: " .. tostring(#self.Connections) .. " Connections" + end + } + + local function new() + local obj = {} + obj.Connections = {} + + return setmetatable(obj,mt) + end + + return {new = new} + end)() + + Lib.Set = (function() + local funcs = {} + + funcs.Add = function(self,obj) + if self.Map[obj] then return end + + local list = self.List + list[#list+1] = obj + self.Map[obj] = true + self.Changed:Fire() + end + + funcs.AddTable = function(self,t) + local changed + local list,map = self.List,self.Map + for i = 1,#t do + local elem = t[i] + if not map[elem] then + list[#list+1] = elem + map[elem] = true + changed = true + end + end + if changed then self.Changed:Fire() end + end + + funcs.Remove = function(self,obj) + if not self.Map[obj] then return end + + local list = self.List + local pos = table.find(list,obj) + if pos then table.remove(list,pos) end + self.Map[obj] = nil + self.Changed:Fire() + end + + funcs.RemoveTable = function(self,t) + local changed + local list,map = self.List,self.Map + local removeSet = {} + for i = 1,#t do + local elem = t[i] + map[elem] = nil + removeSet[elem] = true + end + + for i = #list,1,-1 do + local elem = list[i] + if removeSet[elem] then + table.remove(list,i) + changed = true + end + end + if changed then self.Changed:Fire() end + end + + funcs.Set = function(self,obj) + if #self.List == 1 and self.List[1] == obj then return end + + self.List = {obj} + self.Map = {[obj] = true} + self.Changed:Fire() + end + + funcs.SetTable = function(self,t) + local newList,newMap = {},{} + self.List,self.Map = newList,newMap + table.move(t,1,#t,1,newList) + for i = 1,#t do + newMap[t[i]] = true + end + self.Changed:Fire() + end + + funcs.Clear = function(self) + if #self.List == 0 then return end + self.List = {} + self.Map = {} + self.Changed:Fire() + end + + local mt = {__index = funcs} + + local function new() + local obj = setmetatable({ + List = {}, + Map = {}, + Changed = Lib.Signal.new() + },mt) + + return obj + end + + return {new = new} + end)() + + Lib.IconMap = (function() + local funcs = {} + + funcs.GetLabel = function(self) + local label = Instance.new("ImageLabel") + self:SetupLabel(label) + return label + end + + funcs.SetupLabel = function(self,obj) + obj.BackgroundTransparency = 1 + obj.ImageRectOffset = Vector2.new(0,0) + obj.ImageRectSize = Vector2.new(self.IconSizeX,self.IconSizeY) + obj.ScaleType = Enum.ScaleType.Crop + obj.Size = UDim2.new(0,self.IconSizeX,0,self.IconSizeY) + end + + funcs.Display = function(self,obj,index) + obj.Image = self.MapId + if not self.NumX then + obj.ImageRectOffset = Vector2.new(self.IconSizeX*index, 0) + else + obj.ImageRectOffset = Vector2.new(self.IconSizeX*(index % self.NumX), self.IconSizeY*math.floor(index / self.NumX)) + end + end + + funcs.DisplayByKey = function(self,obj,key) + if self.IndexDict[key] then + self:Display(obj,self.IndexDict[key]) + end + end + + funcs.SetDict = function(self,dict) + self.IndexDict = dict + end + + local mt = {} + mt.__index = funcs + + local function new(mapId,mapSizeX,mapSizeY,iconSizeX,iconSizeY) + local obj = setmetatable({ + MapId = mapId, + MapSizeX = mapSizeX, + MapSizeY = mapSizeY, + IconSizeX = iconSizeX, + IconSizeY = iconSizeY, + NumX = mapSizeX/iconSizeX, + IndexDict = {} + },mt) + return obj + end + + local function newLinear(mapId,iconSizeX,iconSizeY) + local obj = setmetatable({ + MapId = mapId, + IconSizeX = iconSizeX, + IconSizeY = iconSizeY, + IndexDict = {} + },mt) + return obj + end + + return {new = new, newLinear = newLinear} + end)() + + Lib.ScrollBar = (function() + local funcs = {} + local user = service.UserInputService + local mouse = plr:GetMouse() + local checkMouseInGui = Lib.CheckMouseInGui + local createArrow = Lib.CreateArrow + + local function drawThumb(self) + local total = self.TotalSpace + local visible = self.VisibleSpace + local index = self.Index + local scrollThumb = self.GuiElems.ScrollThumb + local scrollThumbFrame = self.GuiElems.ScrollThumbFrame + + if not (self:CanScrollUp() or self:CanScrollDown()) then + scrollThumb.Visible = false + else + scrollThumb.Visible = true + end + + if self.Horizontal then + scrollThumb.Size = UDim2.new(visible/total,0,1,0) + if scrollThumb.AbsoluteSize.X < 16 then + scrollThumb.Size = UDim2.new(0,16,1,0) + end + local fs = scrollThumbFrame.AbsoluteSize.X + local bs = scrollThumb.AbsoluteSize.X + scrollThumb.Position = UDim2.new(self:GetScrollPercent()*(fs-bs)/fs,0,0,0) + else + scrollThumb.Size = UDim2.new(1,0,visible/total,0) + if scrollThumb.AbsoluteSize.Y < 16 then + scrollThumb.Size = UDim2.new(1,0,0,16) + end + local fs = scrollThumbFrame.AbsoluteSize.Y + local bs = scrollThumb.AbsoluteSize.Y + scrollThumb.Position = UDim2.new(0,0,self:GetScrollPercent()*(fs-bs)/fs,0) + end + end + + local function createFrame(self) + local newFrame = createSimple("Frame",{Style=0,Active=true,AnchorPoint=Vector2.new(0,0),BackgroundColor3=Color3.new(0.35294118523598,0.35294118523598,0.35294118523598),BackgroundTransparency=0.2,BorderColor3=Color3.new(0.10588236153126,0.16470588743687,0.20784315466881),BorderSizePixel=0,ClipsDescendants=false,Draggable=false,Position=UDim2.new(1,-16,0,0),Rotation=0,Selectable=false,Size=UDim2.new(0,16,1,0),SizeConstraint=0,Visible=true,ZIndex=1,Name="ScrollBar",}) + local button1 = nil + local button2 = nil + + if self.Horizontal then + newFrame.Size = UDim2.new(1,0,0,16) + button1 = createSimple("ImageButton",{ + Parent = newFrame, + Name = "Left", + Size = UDim2.new(0,16,0,16), + BackgroundTransparency = 1, + BorderSizePixel = 0, + AutoButtonColor = false + }) + createArrow(16,4,"left").Parent = button1 + button2 = createSimple("ImageButton",{ + Parent = newFrame, + Name = "Right", + Position = UDim2.new(1,-16,0,0), + Size = UDim2.new(0,16,0,16), + BackgroundTransparency = 1, + BorderSizePixel = 0, + AutoButtonColor = false + }) + createArrow(16,4,"right").Parent = button2 + else + newFrame.Size = UDim2.new(0,16,1,0) + button1 = createSimple("ImageButton",{ + Parent = newFrame, + Name = "Up", + Size = UDim2.new(0,16,0,16), + BackgroundTransparency = 1, + BorderSizePixel = 0, + AutoButtonColor = false + }) + createArrow(16,4,"up").Parent = button1 + button2 = createSimple("ImageButton",{ + Parent = newFrame, + Name = "Down", + Position = UDim2.new(0,0,1,-16), + Size = UDim2.new(0,16,0,16), + BackgroundTransparency = 1, + BorderSizePixel = 0, + AutoButtonColor = false + }) + createArrow(16,4,"down").Parent = button2 + end + + local scrollThumbFrame = createSimple("Frame",{ + BackgroundTransparency = 1, + Parent = newFrame + }) + if self.Horizontal then + scrollThumbFrame.Position = UDim2.new(0,16,0,0) + scrollThumbFrame.Size = UDim2.new(1,-32,1,0) + else + scrollThumbFrame.Position = UDim2.new(0,0,0,16) + scrollThumbFrame.Size = UDim2.new(1,0,1,-32) + end + + local scrollThumb = createSimple("Frame",{ + BackgroundColor3 = Color3.new(120/255,120/255,120/255), + BorderSizePixel = 0, + Parent = scrollThumbFrame + }) + + local markerFrame = createSimple("Frame",{ + BackgroundTransparency = 1, + Name = "Markers", + Size = UDim2.new(1,0,1,0), + Parent = scrollThumbFrame + }) + + local buttonPress = false + local thumbPress = false + local thumbFramePress = false + + --local thumbColor = Color3.new(120/255,120/255,120/255) + --local thumbSelectColor = Color3.new(140/255,140/255,140/255) + button1.InputBegan:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement and not buttonPress and self:CanScrollUp() then button1.BackgroundTransparency = 0.8 end + if input.UserInputType ~= Enum.UserInputType.MouseButton1 and input.UserInputType ~= Enum.UserInputType.Touch or not self:CanScrollUp() then return end + buttonPress = true + button1.BackgroundTransparency = 0.5 + if self:CanScrollUp() then self:ScrollUp() self.Scrolled:Fire() end + local buttonTick = tick() + local releaseEvent + releaseEvent = user.InputEnded:Connect(function(input) + if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + releaseEvent:Disconnect() + if checkMouseInGui(button1) and self:CanScrollUp() then button1.BackgroundTransparency = 0.8 else button1.BackgroundTransparency = 1 end + buttonPress = false + end) + while buttonPress do + if tick() - buttonTick >= 0.3 and self:CanScrollUp() then + self:ScrollUp() + self.Scrolled:Fire() + end + wait() + end + end) + button1.InputEnded:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement and not buttonPress then button1.BackgroundTransparency = 1 end + end) + button2.InputBegan:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement and not buttonPress and self:CanScrollDown() then button2.BackgroundTransparency = 0.8 end + if input.UserInputType ~= Enum.UserInputType.MouseButton1 and input.UserInputType ~= Enum.UserInputType.Touch or not self:CanScrollDown() then return end + buttonPress = true + button2.BackgroundTransparency = 0.5 + if self:CanScrollDown() then self:ScrollDown() self.Scrolled:Fire() end + local buttonTick = tick() + local releaseEvent + releaseEvent = user.InputEnded:Connect(function(input) + if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + releaseEvent:Disconnect() + if checkMouseInGui(button2) and self:CanScrollDown() then button2.BackgroundTransparency = 0.8 else button2.BackgroundTransparency = 1 end + buttonPress = false + end) + while buttonPress do + if tick() - buttonTick >= 0.3 and self:CanScrollDown() then + self:ScrollDown() + self.Scrolled:Fire() + end + wait() + end + end) + button2.InputEnded:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement and not buttonPress then button2.BackgroundTransparency = 1 end + end) + + scrollThumb.InputBegan:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement and not thumbPress then + scrollThumb.BackgroundTransparency = 0.2 + scrollThumb.BackgroundColor3 = self.ThumbSelectColor + end + if input.UserInputType ~= Enum.UserInputType.MouseButton1 + and input.UserInputType ~= Enum.UserInputType.Touch then + return + end + + local dir = self.Horizontal and "X" or "Y" + local lastThumbPos = nil + + buttonPress = false + thumbFramePress = false + thumbPress = true + scrollThumb.BackgroundTransparency = 0 + local mouseOffset = mouse[dir] - scrollThumb.AbsolutePosition[dir] + local mouseStart = mouse[dir] + local releaseEvent + local mouseEvent + releaseEvent = user.InputEnded:Connect(function(input) + if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + releaseEvent:Disconnect() + if mouseEvent then mouseEvent:Disconnect() end + if checkMouseInGui(scrollThumb) then scrollThumb.BackgroundTransparency = 0.2 else scrollThumb.BackgroundTransparency = 0 scrollThumb.BackgroundColor3 = self.ThumbColor end + thumbPress = false + end) + self:Update() + + mouseEvent = user.InputChanged:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement and thumbPress and releaseEvent.Connected then + local thumbFrameSize = scrollThumbFrame.AbsoluteSize[dir]-scrollThumb.AbsoluteSize[dir] + local pos = mouse[dir] - scrollThumbFrame.AbsolutePosition[dir] - mouseOffset + if pos > thumbFrameSize then + pos = thumbFrameSize + elseif pos < 0 then + pos = 0 + end + if lastThumbPos ~= pos then + lastThumbPos = pos + self:ScrollTo(math.floor(0.5+pos/thumbFrameSize*(self.TotalSpace-self.VisibleSpace))) + end + wait() + end + end) + end) + scrollThumb.InputEnded:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement and not thumbPress then scrollThumb.BackgroundTransparency = 0 scrollThumb.BackgroundColor3 = self.ThumbColor end + end) + scrollThumbFrame.InputBegan:Connect(function(input) + if (input.UserInputType ~= Enum.UserInputType.MouseButton1 and input.UserInputType ~= Enum.UserInputType.Touch) or checkMouseInGui(scrollThumb) then return end + + local dir = self.Horizontal and "X" or "Y" + local scrollDir = 0 + if mouse[dir] >= scrollThumb.AbsolutePosition[dir] + scrollThumb.AbsoluteSize[dir] then + scrollDir = 1 + end + + local function doTick() + local scrollSize = self.VisibleSpace - 1 + if scrollDir == 0 and mouse[dir] < scrollThumb.AbsolutePosition[dir] then + self:ScrollTo(self.Index - scrollSize) + elseif scrollDir == 1 and mouse[dir] >= scrollThumb.AbsolutePosition[dir] + scrollThumb.AbsoluteSize[dir] then + self:ScrollTo(self.Index + scrollSize) + end + end + + thumbPress = false + thumbFramePress = true + doTick() + local thumbFrameTick = tick() + local releaseEvent + releaseEvent = user.InputEnded:Connect(function(input) + if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + releaseEvent:Disconnect() + thumbFramePress = false + end) + while thumbFramePress do + if tick() - thumbFrameTick >= 0.3 and checkMouseInGui(scrollThumbFrame) then + doTick() + end + wait() + end + end) + + newFrame.MouseWheelForward:Connect(function() + self:ScrollTo(self.Index - self.WheelIncrement) + end) + + newFrame.MouseWheelBackward:Connect(function() + self:ScrollTo(self.Index + self.WheelIncrement) + end) + + self.GuiElems.ScrollThumb = scrollThumb + self.GuiElems.ScrollThumbFrame = scrollThumbFrame + self.GuiElems.Button1 = button1 + self.GuiElems.Button2 = button2 + self.GuiElems.MarkerFrame = markerFrame + + return newFrame + end + + funcs.Update = function(self,nocallback) + local total = self.TotalSpace + local visible = self.VisibleSpace + local index = self.Index + local button1 = self.GuiElems.Button1 + local button2 = self.GuiElems.Button2 + + self.Index = math.clamp(self.Index,0,math.max(0,total-visible)) + + if self.LastTotalSpace ~= self.TotalSpace then + self.LastTotalSpace = self.TotalSpace + self:UpdateMarkers() + end + + if self:CanScrollUp() then + for i,v in pairs(button1.Arrow:GetChildren()) do + v.BackgroundTransparency = 0 + end + else + button1.BackgroundTransparency = 1 + for i,v in pairs(button1.Arrow:GetChildren()) do + v.BackgroundTransparency = 0.5 + end + end + if self:CanScrollDown() then + for i,v in pairs(button2.Arrow:GetChildren()) do + v.BackgroundTransparency = 0 + end + else + button2.BackgroundTransparency = 1 + for i,v in pairs(button2.Arrow:GetChildren()) do + v.BackgroundTransparency = 0.5 + end + end + + drawThumb(self) + end + + funcs.UpdateMarkers = function(self) + local markerFrame = self.GuiElems.MarkerFrame + markerFrame:ClearAllChildren() + + for i,v in pairs(self.Markers) do + if i < self.TotalSpace then + createSimple("Frame",{ + BackgroundTransparency = 0, + BackgroundColor3 = v, + BorderSizePixel = 0, + Position = self.Horizontal and UDim2.new(i/self.TotalSpace,0,1,-6) or UDim2.new(1,-6,i/self.TotalSpace,0), + Size = self.Horizontal and UDim2.new(0,1,0,6) or UDim2.new(0,6,0,1), + Name = "Marker"..tostring(i), + Parent = markerFrame + }) + end + end + end + + funcs.AddMarker = function(self,ind,color) + self.Markers[ind] = color or Color3.new(0,0,0) + end + funcs.ScrollTo = function(self,ind,nocallback) + self.Index = ind + self:Update() + if not nocallback then + self.Scrolled:Fire() + end + end + funcs.ScrollUp = function(self) + self.Index = self.Index - self.Increment + self:Update() + end + funcs.ScrollDown = function(self) + self.Index = self.Index + self.Increment + self:Update() + end + funcs.CanScrollUp = function(self) + return self.Index > 0 + end + funcs.CanScrollDown = function(self) + return self.Index + self.VisibleSpace < self.TotalSpace + end + funcs.GetScrollPercent = function(self) + return self.Index/(self.TotalSpace-self.VisibleSpace) + end + funcs.SetScrollPercent = function(self,perc) + self.Index = math.floor(perc*(self.TotalSpace-self.VisibleSpace)) + self:Update() + end + + funcs.Texture = function(self,data) + self.ThumbColor = data.ThumbColor or Color3.new(0,0,0) + self.ThumbSelectColor = data.ThumbSelectColor or Color3.new(0,0,0) + self.GuiElems.ScrollThumb.BackgroundColor3 = data.ThumbColor or Color3.new(0,0,0) + self.Gui.BackgroundColor3 = data.FrameColor or Color3.new(0,0,0) + self.GuiElems.Button1.BackgroundColor3 = data.ButtonColor or Color3.new(0,0,0) + self.GuiElems.Button2.BackgroundColor3 = data.ButtonColor or Color3.new(0,0,0) + for i,v in pairs(self.GuiElems.Button1.Arrow:GetChildren()) do + v.BackgroundColor3 = data.ArrowColor or Color3.new(0,0,0) + end + for i,v in pairs(self.GuiElems.Button2.Arrow:GetChildren()) do + v.BackgroundColor3 = data.ArrowColor or Color3.new(0,0,0) + end + end + + funcs.SetScrollFrame = function(self,frame) + if self.ScrollUpEvent then self.ScrollUpEvent:Disconnect() self.ScrollUpEvent = nil end + if self.ScrollDownEvent then self.ScrollDownEvent:Disconnect() self.ScrollDownEvent = nil end + self.ScrollUpEvent = frame.MouseWheelForward:Connect(function() self:ScrollTo(self.Index - self.WheelIncrement) end) + self.ScrollDownEvent = frame.MouseWheelBackward:Connect(function() self:ScrollTo(self.Index + self.WheelIncrement) end) + end + + local mt = {} + mt.__index = funcs + + local function new(hor) + local obj = setmetatable({ + Index = 0, + VisibleSpace = 0, + TotalSpace = 0, + Increment = 1, + WheelIncrement = 1, + Markers = {}, + GuiElems = {}, + Horizontal = hor, + LastTotalSpace = 0, + Scrolled = Lib.Signal.new() + },mt) + obj.Gui = createFrame(obj) + obj:Texture({ + ThumbColor = Color3.fromRGB(60,60,60), + ThumbSelectColor = Color3.fromRGB(75,75,75), + ArrowColor = Color3.new(1,1,1), + FrameColor = Color3.fromRGB(40,40,40), + ButtonColor = Color3.fromRGB(75,75,75) + }) + return obj + end + + return {new = new} + end)() + + Lib.Window = (function() + local funcs = {} + local static = {MinWidth = 200, FreeWidth = 200, ShowWindow = nil, SetSideVisible = nil} + local mouse = plr:GetMouse() + local sidesGui,alignIndicator + local visibleWindows = {} + local leftSide = {Width = 300, Windows = {}, ResizeCons = {}, Hidden = true, Resizing = false} + local rightSide = {Width = 300, Windows = {}, ResizeCons = {}, Hidden = true, Resizing = false} + + local displayOrderStart + local sideDisplayOrder + local sideTweenInfo = TweenInfo.new(0.3,Enum.EasingStyle.Quad,Enum.EasingDirection.Out) + local tweens = {} + local isA = game.IsA + + local theme = { + MainColor1 = Color3.fromRGB(52,52,52), + MainColor2 = Color3.fromRGB(45,45,45), + Button = Color3.fromRGB(60,60,60) + } + + local function stopTweens() + for i = 1,#tweens do + tweens[i]:Cancel() + end + tweens = {} + end + + local function resizeHook(self,resizer,dir) + local guiMain = self.GuiElems.Main + resizer.InputBegan:Connect(function(input) + if not self.Dragging and not self.Resizing and self.Resizable and self.ResizableInternal then + local isH = dir:find("[WE]") and true + local isV = dir:find("[NS]") and true + local signX = dir:find("W",1,true) and -1 or 1 + local signY = dir:find("N",1,true) and -1 or 1 + + if self.Minimized and isV then return end + + if input.UserInputType == Enum.UserInputType.MouseMovement then + resizer.BackgroundTransparency = 0.5 + elseif input.UserInputType == Enum.UserInputType.MouseButton1 then + local releaseEvent,mouseEvent + + local offX = mouse.X - resizer.AbsolutePosition.X + local offY = mouse.Y - resizer.AbsolutePosition.Y + + self.Resizing = resizer + resizer.BackgroundTransparency = 1 + + releaseEvent = service.UserInputService.InputEnded:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseButton1 then + releaseEvent:Disconnect() + mouseEvent:Disconnect() + self.Resizing = false + resizer.BackgroundTransparency = 1 + end + end) + + mouseEvent = service.UserInputService.InputChanged:Connect(function(input) + if self.Resizable and self.ResizableInternal and input.UserInputType == Enum.UserInputType.MouseMovement then + self:StopTweens() + local deltaX = input.Position.X - resizer.AbsolutePosition.X - offX + local deltaY = input.Position.Y - resizer.AbsolutePosition.Y - offY + + if guiMain.AbsoluteSize.X + deltaX*signX < self.MinX then deltaX = signX*(self.MinX - guiMain.AbsoluteSize.X) end + if guiMain.AbsoluteSize.Y + deltaY*signY < self.MinY then deltaY = signY*(self.MinY - guiMain.AbsoluteSize.Y) end + if signY < 0 and guiMain.AbsolutePosition.Y + deltaY < 0 then deltaY = -guiMain.AbsolutePosition.Y end + + guiMain.Position = guiMain.Position + UDim2.new(0,(signX < 0 and deltaX or 0),0,(signY < 0 and deltaY or 0)) + self.SizeX = self.SizeX + (isH and deltaX*signX or 0) + self.SizeY = self.SizeY + (isV and deltaY*signY or 0) + guiMain.Size = UDim2.new(0,self.SizeX,0,self.Minimized and 20 or self.SizeY) + + --if isH then self.SizeX = guiMain.AbsoluteSize.X end + --if isV then self.SizeY = guiMain.AbsoluteSize.Y end + end + end) + end + end + end) + + resizer.InputEnded:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement and self.Resizing ~= resizer then + resizer.BackgroundTransparency = 1 + end + end) + end + + local updateWindows + + local function moveToTop(window) + local found = table.find(visibleWindows,window) + if found then + table.remove(visibleWindows,found) + table.insert(visibleWindows,1,window) + updateWindows() + end + end + + local function sideHasRoom(side,neededSize) + local maxY = sidesGui.AbsoluteSize.Y - (math.max(0,#side.Windows - 1) * 4) + local inc = 0 + for i,v in pairs(side.Windows) do + inc = inc + (v.MinY or 100) + if inc > maxY - neededSize then return false end + end + + return true + end + + local function getSideInsertPos(side,curY) + local pos = #side.Windows + 1 + local range = {0,sidesGui.AbsoluteSize.Y} + + for i,v in pairs(side.Windows) do + local midPos = v.PosY + v.SizeY/2 + if curY <= midPos then + pos = i + range[2] = midPos + break + else + range[1] = midPos + end + end + + return pos,range + end + + local function focusInput(self,obj) + if isA(obj,"GuiButton") then + obj.MouseButton1Down:Connect(function() + moveToTop(self) + end) + elseif isA(obj,"TextBox") then + obj.Focused:Connect(function() + moveToTop(self) + end) + end + end + + local createGui = function(self) + local gui = create({ + {1,"ScreenGui",{Name="Dex_Window",ResetOnSpawn=false}}, + {2,"Frame",{Active=true,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="Main",Parent={1},Position=UDim2.new(0.40000000596046,0,0.40000000596046,0),Size=UDim2.new(0,300,0,300),}}, + {3,"Frame",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BackgroundTransparency=0.1,BorderSizePixel=0,Name="Content",Parent={2},Position=UDim2.new(0,0,0,20),Size=UDim2.new(1,0,1,-20),ClipsDescendants=true}}, + {4,"Frame",{BackgroundColor3=Color3.fromRGB(33,33,33),BorderSizePixel=0,Name="Line",Parent={3},Size=UDim2.new(1,0,0,1),}}, + {5,"Frame",{BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),BorderSizePixel=0,Name="TopBar",Parent={2},Size=UDim2.new(1,0,0,20),}}, + {6,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={5},Position=UDim2.new(0,5,0,0),Size=UDim2.new(1,-10,0,20),Text="Window",TextColor3=Color3.new(1,1,1),TextSize=14,TextXAlignment=0,}}, + {7,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Close",Parent={5},Position=UDim2.new(1,-18,0,2),Size=UDim2.new(0,16,0,16),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,}}, + {8,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://5054663650",Parent={7},Position=UDim2.new(0,3,0,3),Size=UDim2.new(0,10,0,10),}}, + {9,"UICorner",{CornerRadius=UDim.new(0,4),Parent={7},}}, + {10,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Minimize",Parent={5},Position=UDim2.new(1,-36,0,2),Size=UDim2.new(0,16,0,16),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,}}, + {11,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://5034768003",Parent={10},Position=UDim2.new(0,3,0,3),Size=UDim2.new(0,10,0,10),}}, + {12,"UICorner",{CornerRadius=UDim.new(0,4),Parent={10},}}, + {13,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Image="rbxassetid://1427967925",Name="Outlines",Parent={2},Position=UDim2.new(0,-5,0,-5),ScaleType=1,Size=UDim2.new(1,10,1,10),SliceCenter=Rect.new(6,6,25,25),TileSize=UDim2.new(0,20,0,20),}}, + {14,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Name="ResizeControls",Parent={2},Position=UDim2.new(0,-5,0,-5),Size=UDim2.new(1,10,1,10),}}, + {15,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.27450981736183,0.27450981736183,0.27450981736183),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="North",Parent={14},Position=UDim2.new(0,5,0,0),Size=UDim2.new(1,-10,0,5),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, + {16,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.27450981736183,0.27450981736183,0.27450981736183),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="South",Parent={14},Position=UDim2.new(0,5,1,-5),Size=UDim2.new(1,-10,0,5),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, + {17,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.27450981736183,0.27450981736183,0.27450981736183),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="NorthEast",Parent={14},Position=UDim2.new(1,-5,0,0),Size=UDim2.new(0,5,0,5),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, + {18,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.27450981736183,0.27450981736183,0.27450981736183),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="East",Parent={14},Position=UDim2.new(1,-5,0,5),Size=UDim2.new(0,5,1,-10),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, + {19,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.27450981736183,0.27450981736183,0.27450981736183),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="West",Parent={14},Position=UDim2.new(0,0,0,5),Size=UDim2.new(0,5,1,-10),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, + {20,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.27450981736183,0.27450981736183,0.27450981736183),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="SouthEast",Parent={14},Position=UDim2.new(1,-5,1,-5),Size=UDim2.new(0,5,0,5),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, + {21,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.27450981736183,0.27450981736183,0.27450981736183),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="NorthWest",Parent={14},Size=UDim2.new(0,5,0,5),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, + {22,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.27450981736183,0.27450981736183,0.27450981736183),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="SouthWest",Parent={14},Position=UDim2.new(0,0,1,-5),Size=UDim2.new(0,5,0,5),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, + }) + + local guiMain = gui.Main + local guiTopBar = guiMain.TopBar + local guiResizeControls = guiMain.ResizeControls + + self.GuiElems.Main = guiMain + self.GuiElems.TopBar = guiMain.TopBar + self.GuiElems.Content = guiMain.Content + self.GuiElems.Line = guiMain.Content.Line + self.GuiElems.Outlines = guiMain.Outlines + self.GuiElems.Title = guiTopBar.Title + self.GuiElems.Close = guiTopBar.Close + self.GuiElems.Minimize = guiTopBar.Minimize + self.GuiElems.ResizeControls = guiResizeControls + self.ContentPane = guiMain.Content + + guiTopBar.InputBegan:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseButton1 and self.Draggable then + local releaseEvent,mouseEvent + + local maxX = sidesGui.AbsoluteSize.X + local initX = guiMain.AbsolutePosition.X + local initY = guiMain.AbsolutePosition.Y + local offX = mouse.X - initX + local offY = mouse.Y - initY + + local alignInsertPos,alignInsertSide + + local guiDragging = true + + releaseEvent = game:GetService("UserInputService").InputEnded:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseButton1 then + releaseEvent:Disconnect() + mouseEvent:Disconnect() + guiDragging = false + alignIndicator.Parent = nil + if alignInsertSide then + local targetSide = (alignInsertSide == "left" and leftSide) or (alignInsertSide == "right" and rightSide) + self:AlignTo(targetSide,alignInsertPos) + end + end + end) + + mouseEvent = game:GetService("UserInputService").InputChanged:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement and self.Draggable and not self.Closed then + if self.Aligned then + if leftSide.Resizing or rightSide.Resizing then return end + local posX,posY = input.Position.X-offX,input.Position.Y-offY + local delta = math.sqrt((posX-initX)^2 + (posY-initY)^2) + if delta >= 5 then + self:SetAligned(false) + end + else + local inputX,inputY = input.Position.X,input.Position.Y + local posX,posY = inputX-offX,inputY-offY + if posY < 0 then posY = 0 end + guiMain.Position = UDim2.new(0,posX,0,posY) + + if self.Resizable and self.Alignable then + if inputX < 25 then + if sideHasRoom(leftSide,self.MinY or 100) then + local insertPos,range = getSideInsertPos(leftSide,inputY) + alignIndicator.Indicator.Position = UDim2.new(0,-15,0,range[1]) + alignIndicator.Indicator.Size = UDim2.new(0,40,0,range[2]-range[1]) + Lib.ShowGui(alignIndicator) + alignInsertPos = insertPos + alignInsertSide = "left" + return + end + elseif inputX >= maxX - 25 then + if sideHasRoom(rightSide,self.MinY or 100) then + local insertPos,range = getSideInsertPos(rightSide,inputY) + alignIndicator.Indicator.Position = UDim2.new(0,maxX-25,0,range[1]) + alignIndicator.Indicator.Size = UDim2.new(0,40,0,range[2]-range[1]) + Lib.ShowGui(alignIndicator) + alignInsertPos = insertPos + alignInsertSide = "right" + return + end + end + end + alignIndicator.Parent = nil + alignInsertPos = nil + alignInsertSide = nil + end + end + end) + end + end) + + guiTopBar.Close.MouseButton1Click:Connect(function() + if self.Closed then return end + self:Close() + end) + + guiTopBar.Minimize.MouseButton1Click:Connect(function() + if self.Closed then return end + if self.Aligned then + self:SetAligned(false) + else + self:SetMinimized() + end + end) + + guiTopBar.Minimize.MouseButton2Click:Connect(function() + if self.Closed then return end + if not self.Aligned then + self:SetMinimized(nil,2) + guiTopBar.Minimize.BackgroundTransparency = 1 + end + end) + + guiMain.InputBegan:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseButton1 and not self.Aligned and not self.Closed then + moveToTop(self) + end + end) + + guiMain:GetPropertyChangedSignal("AbsolutePosition"):Connect(function() + local absPos = guiMain.AbsolutePosition + self.PosX = absPos.X + self.PosY = absPos.Y + end) + + resizeHook(self,guiResizeControls.North,"N") + resizeHook(self,guiResizeControls.NorthEast,"NE") + resizeHook(self,guiResizeControls.East,"E") + resizeHook(self,guiResizeControls.SouthEast,"SE") + resizeHook(self,guiResizeControls.South,"S") + resizeHook(self,guiResizeControls.SouthWest,"SW") + resizeHook(self,guiResizeControls.West,"W") + resizeHook(self,guiResizeControls.NorthWest,"NW") + + guiMain.Size = UDim2.new(0,self.SizeX,0,self.SizeY) + + gui.DescendantAdded:Connect(function(obj) focusInput(self,obj) end) + local descs = gui:GetDescendants() + for i = 1,#descs do + focusInput(self,descs[i]) + end + + self.MinimizeAnim = Lib.ButtonAnim(guiTopBar.Minimize) + self.CloseAnim = Lib.ButtonAnim(guiTopBar.Close) + + return gui + end + + local function updateSideFrames(noTween) + stopTweens() + leftSide.Frame.Size = UDim2.new(0,leftSide.Width,1,0) + rightSide.Frame.Size = UDim2.new(0,rightSide.Width,1,0) + leftSide.Frame.Resizer.Position = UDim2.new(0,leftSide.Width,0,0) + rightSide.Frame.Resizer.Position = UDim2.new(0,-5,0,0) + + --leftSide.Frame.Visible = (#leftSide.Windows > 0) + --rightSide.Frame.Visible = (#rightSide.Windows > 0) + + --[[if #leftSide.Windows > 0 and leftSide.Frame.Position == UDim2.new(0,-leftSide.Width-5,0,0) then + leftSide.Frame:TweenPosition(UDim2.new(0,0,0,0),Enum.EasingDirection.Out,Enum.EasingStyle.Quad,0.3,true) + elseif #leftSide.Windows == 0 and leftSide.Frame.Position == UDim2.new(0,0,0,0) then + leftSide.Frame:TweenPosition(UDim2.new(0,-leftSide.Width-5,0,0),Enum.EasingDirection.Out,Enum.EasingStyle.Quad,0.3,true) + end + local rightTweenPos = (#rightSide.Windows == 0 and UDim2.new(1,5,0,0) or UDim2.new(1,-rightSide.Width,0,0)) + rightSide.Frame:TweenPosition(rightTweenPos,Enum.EasingDirection.Out,Enum.EasingStyle.Quad,0.3,true)]] + local leftHidden = #leftSide.Windows == 0 or leftSide.Hidden + local rightHidden = #rightSide.Windows == 0 or rightSide.Hidden + local leftPos = (leftHidden and UDim2.new(0,-leftSide.Width-10,0,0) or UDim2.new(0,0,0,0)) + local rightPos = (rightHidden and UDim2.new(1,10,0,0) or UDim2.new(1,-rightSide.Width,0,0)) + + sidesGui.LeftToggle.Text = leftHidden and ">" or "<" + sidesGui.RightToggle.Text = rightHidden and "<" or ">" + + if not noTween then + local function insertTween(...) + local tween = service.TweenService:Create(...) + tweens[#tweens+1] = tween + tween:Play() + end + insertTween(leftSide.Frame,sideTweenInfo,{Position = leftPos}) + insertTween(rightSide.Frame,sideTweenInfo,{Position = rightPos}) + insertTween(sidesGui.LeftToggle,sideTweenInfo,{Position = UDim2.new(0,#leftSide.Windows == 0 and -16 or 0,0,-36)}) + insertTween(sidesGui.RightToggle,sideTweenInfo,{Position = UDim2.new(1,#rightSide.Windows == 0 and 0 or -16,0,-36)}) + else + leftSide.Frame.Position = leftPos + rightSide.Frame.Position = rightPos + sidesGui.LeftToggle.Position = UDim2.new(0,#leftSide.Windows == 0 and -16 or 0,0,-36) + sidesGui.RightToggle.Position = UDim2.new(1,#rightSide.Windows == 0 and 0 or -16,0,-36) + end + end + + local function getSideFramePos(side) + local leftHidden = #leftSide.Windows == 0 or leftSide.Hidden + local rightHidden = #rightSide.Windows == 0 or rightSide.Hidden + if side == leftSide then + return (leftHidden and UDim2.new(0,-leftSide.Width-10,0,0) or UDim2.new(0,0,0,0)) + else + return (rightHidden and UDim2.new(1,10,0,0) or UDim2.new(1,-rightSide.Width,0,0)) + end + end + + local function sideResized(side) + local currentPos = 0 + local sideFramePos = getSideFramePos(side) + for i,v in pairs(side.Windows) do + v.SizeX = side.Width + v.GuiElems.Main.Size = UDim2.new(0,side.Width,0,v.SizeY) + v.GuiElems.Main.Position = UDim2.new(sideFramePos.X.Scale,sideFramePos.X.Offset,0,currentPos) + currentPos = currentPos + v.SizeY+4 + end + end + + local function sideResizerHook(resizer,dir,side,pos) + local mouse = Main.Mouse + local windows = side.Windows + + resizer.InputBegan:Connect(function(input) + if not side.Resizing then + if input.UserInputType == Enum.UserInputType.MouseMovement then + resizer.BackgroundColor3 = theme.MainColor2 + elseif input.UserInputType == Enum.UserInputType.MouseButton1 then + local releaseEvent,mouseEvent + + local offX = mouse.X - resizer.AbsolutePosition.X + local offY = mouse.Y - resizer.AbsolutePosition.Y + + side.Resizing = resizer + resizer.BackgroundColor3 = theme.MainColor2 + + releaseEvent = service.UserInputService.InputEnded:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseButton1 then + releaseEvent:Disconnect() + mouseEvent:Disconnect() + side.Resizing = false + resizer.BackgroundColor3 = theme.Button + end + end) + + mouseEvent = service.UserInputService.InputChanged:Connect(function(input) + if not resizer.Parent then + releaseEvent:Disconnect() + mouseEvent:Disconnect() + side.Resizing = false + return + end + if input.UserInputType == Enum.UserInputType.MouseMovement then + if dir == "V" then + local delta = input.Position.Y - resizer.AbsolutePosition.Y - offY + + if delta > 0 then + local neededSize = delta + for i = pos+1,#windows do + local window = windows[i] + local newSize = math.max(window.SizeY-neededSize,(window.MinY or 100)) + neededSize = neededSize - (window.SizeY - newSize) + window.SizeY = newSize + end + windows[pos].SizeY = windows[pos].SizeY + math.max(0,delta-neededSize) + else + local neededSize = -delta + for i = pos,1,-1 do + local window = windows[i] + local newSize = math.max(window.SizeY-neededSize,(window.MinY or 100)) + neededSize = neededSize - (window.SizeY - newSize) + window.SizeY = newSize + end + windows[pos+1].SizeY = windows[pos+1].SizeY + math.max(0,-delta-neededSize) + end + + updateSideFrames() + sideResized(side) + elseif dir == "H" then + local maxWidth = math.max(300,sidesGui.AbsoluteSize.X-static.FreeWidth) + local otherSide = (side == leftSide and rightSide or leftSide) + local delta = input.Position.X - resizer.AbsolutePosition.X - offX + delta = (side == leftSide and delta or -delta) + + local proposedSize = math.max(static.MinWidth,side.Width + delta) + if proposedSize + otherSide.Width <= maxWidth then + side.Width = proposedSize + else + local newOtherSize = maxWidth - proposedSize + if newOtherSize >= static.MinWidth then + side.Width = proposedSize + otherSide.Width = newOtherSize + else + side.Width = maxWidth - static.MinWidth + otherSide.Width = static.MinWidth + end + end + + updateSideFrames(true) + sideResized(side) + sideResized(otherSide) + end + end + end) + end + end + end) + + resizer.InputEnded:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement and side.Resizing ~= resizer then + resizer.BackgroundColor3 = theme.Button + end + end) + end + + local function renderSide(side,noTween) -- TODO: Use existing resizers + local currentPos = 0 + local sideFramePos = getSideFramePos(side) + local template = side.WindowResizer:Clone() + for i,v in pairs(side.ResizeCons) do v:Disconnect() end + for i,v in pairs(side.Frame:GetChildren()) do if v.Name == "WindowResizer" then v:Destroy() end end + side.ResizeCons = {} + side.Resizing = nil + + for i,v in pairs(side.Windows) do + v.SidePos = i + local isEnd = i == #side.Windows + local size = UDim2.new(0,side.Width,0,v.SizeY) + local pos = UDim2.new(sideFramePos.X.Scale,sideFramePos.X.Offset,0,currentPos) + Lib.ShowGui(v.Gui) + --v.GuiElems.Main:TweenSizeAndPosition(size,pos,Enum.EasingDirection.Out,Enum.EasingStyle.Quad,0.3,true) + if noTween then + v.GuiElems.Main.Size = size + v.GuiElems.Main.Position = pos + else + local tween = service.TweenService:Create(v.GuiElems.Main,sideTweenInfo,{Size = size, Position = pos}) + tweens[#tweens+1] = tween + tween:Play() + end + currentPos = currentPos + v.SizeY+4 + + if not isEnd then + local newTemplate = template:Clone() + newTemplate.Position = UDim2.new(1,-side.Width,0,currentPos-4) + side.ResizeCons[#side.ResizeCons+1] = v.Gui.Main:GetPropertyChangedSignal("Size"):Connect(function() + newTemplate.Position = UDim2.new(1,-side.Width,0, v.GuiElems.Main.Position.Y.Offset + v.GuiElems.Main.Size.Y.Offset) + end) + side.ResizeCons[#side.ResizeCons+1] = v.Gui.Main:GetPropertyChangedSignal("Position"):Connect(function() + newTemplate.Position = UDim2.new(1,-side.Width,0, v.GuiElems.Main.Position.Y.Offset + v.GuiElems.Main.Size.Y.Offset) + end) + sideResizerHook(newTemplate,"V",side,i) + newTemplate.Parent = side.Frame + end + end + + --side.Frame.Back.Position = UDim2.new(0,0,0,0) + --side.Frame.Back.Size = UDim2.new(0,side.Width,1,0) + end + + local function updateSide(side,noTween) + local oldHeight = 0 + local currentPos = 0 + local neededSize = 0 + local windows = side.Windows + local height = sidesGui.AbsoluteSize.Y - (math.max(0,#windows - 1) * 4) + + for i,v in pairs(windows) do oldHeight = oldHeight + v.SizeY end + for i,v in pairs(windows) do + if i == #windows then + v.SizeY = height-currentPos + neededSize = math.max(0,(v.MinY or 100)-v.SizeY) + else + v.SizeY = math.max(math.floor(v.SizeY/oldHeight*height),v.MinY or 100) + end + currentPos = currentPos + v.SizeY + end + + if neededSize > 0 then + for i = #windows-1,1,-1 do + local window = windows[i] + local newSize = math.max(window.SizeY-neededSize,(window.MinY or 100)) + neededSize = neededSize - (window.SizeY - newSize) + window.SizeY = newSize + end + local lastWindow = windows[#windows] + lastWindow.SizeY = (lastWindow.MinY or 100)-neededSize + end + renderSide(side,noTween) + end + + updateWindows = function(noTween) + updateSideFrames(noTween) + updateSide(leftSide,noTween) + updateSide(rightSide,noTween) + local count = 0 + for i = #visibleWindows,1,-1 do + visibleWindows[i].Gui.DisplayOrder = displayOrderStart + count + Lib.ShowGui(visibleWindows[i].Gui) + count = count + 1 + end + + --[[local leftTweenPos = (#leftSide.Windows == 0 and UDim2.new(0,-leftSide.Width-5,0,0) or UDim2.new(0,0,0,0)) + leftSide.Frame:TweenPosition(leftTweenPos,Enum.EasingDirection.Out,Enum.EasingStyle.Quad,0.3,true) + local rightTweenPos = (#rightSide.Windows == 0 and UDim2.new(1,5,0,0) or UDim2.new(1,-rightSide.Width,0,0)) + rightSide.Frame:TweenPosition(rightTweenPos,Enum.EasingDirection.Out,Enum.EasingStyle.Quad,0.3,true)]] + end + + funcs.SetMinimized = function(self,set,mode) + local oldVal = self.Minimized + local newVal + if set == nil then newVal = not self.Minimized else newVal = set end + self.Minimized = newVal + if not mode then mode = 1 end + + local resizeControls = self.GuiElems.ResizeControls + local minimizeControls = {"North","NorthEast","NorthWest","South","SouthEast","SouthWest"} + for i = 1,#minimizeControls do + local control = resizeControls:FindFirstChild(minimizeControls[i]) + if control then control.Visible = not newVal end + end + + if mode == 1 or mode == 2 then + self:StopTweens() + if mode == 1 then + self.GuiElems.Main:TweenSize(UDim2.new(0,self.SizeX,0,newVal and 20 or self.SizeY),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true) + else + local maxY = sidesGui.AbsoluteSize.Y + local newPos = UDim2.new(0,self.PosX,0,newVal and math.min(maxY-20,self.PosY + self.SizeY - 20) or math.max(0,self.PosY - self.SizeY + 20)) + + self.GuiElems.Main:TweenPosition(newPos,Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true) + self.GuiElems.Main:TweenSize(UDim2.new(0,self.SizeX,0,newVal and 20 or self.SizeY),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true) + end + self.GuiElems.Minimize.ImageLabel.Image = newVal and "rbxassetid://5060023708" or "rbxassetid://5034768003" + end + + if oldVal ~= newVal then + if newVal then + self.OnMinimize:Fire() + else + self.OnRestore:Fire() + end + end + end + + funcs.Resize = function(self,sizeX,sizeY) + self.SizeX = sizeX or self.SizeX + self.SizeY = sizeY or self.SizeY + self.GuiElems.Main.Size = UDim2.new(0,self.SizeX,0,self.SizeY) + end + + funcs.SetSize = funcs.Resize + + funcs.SetTitle = function(self,title) + self.GuiElems.Title.Text = title + end + + funcs.SetResizable = function(self,val) + self.Resizable = val + self.GuiElems.ResizeControls.Visible = self.Resizable and self.ResizableInternal + end + + funcs.SetResizableInternal = function(self,val) + self.ResizableInternal = val + self.GuiElems.ResizeControls.Visible = self.Resizable and self.ResizableInternal + end + + funcs.SetAligned = function(self,val) + self.Aligned = val + self:SetResizableInternal(not val) + self.GuiElems.Main.Active = not val + self.GuiElems.Main.Outlines.Visible = not val + if not val then + for i,v in pairs(leftSide.Windows) do if v == self then table.remove(leftSide.Windows,i) break end end + for i,v in pairs(rightSide.Windows) do if v == self then table.remove(rightSide.Windows,i) break end end + if not table.find(visibleWindows,self) then table.insert(visibleWindows,1,self) end + self.GuiElems.Minimize.ImageLabel.Image = "rbxassetid://5034768003" + self.Side = nil + updateWindows() + else + self:SetMinimized(false,3) + for i,v in pairs(visibleWindows) do if v == self then table.remove(visibleWindows,i) break end end + self.GuiElems.Minimize.ImageLabel.Image = "rbxassetid://5448127505" + end + end + + funcs.Add = function(self,obj,name) + if type(obj) == "table" and obj.Gui and obj.Gui:IsA("GuiObject") then + obj.Gui.Parent = self.ContentPane + else + obj.Parent = self.ContentPane + end + if name then self.Elements[name] = obj end + end + + funcs.GetElement = function(self,obj,name) + return self.Elements[name] + end + + funcs.AlignTo = function(self,side,pos,size,silent) + if table.find(side.Windows,self) or self.Closed then return end + + size = size or self.SizeY + if size > 0 and size <= 1 then + local totalSideHeight = 0 + for i,v in pairs(side.Windows) do totalSideHeight = totalSideHeight + v.SizeY end + self.SizeY = (totalSideHeight > 0 and totalSideHeight * size * 2) or size + else + self.SizeY = (size > 0 and size or 100) + end + + self:SetAligned(true) + self.Side = side + self.SizeX = side.Width + self.Gui.DisplayOrder = sideDisplayOrder + 1 + for i,v in pairs(side.Windows) do v.Gui.DisplayOrder = sideDisplayOrder end + pos = math.min(#side.Windows+1, pos or 1) + self.SidePos = pos + table.insert(side.Windows, pos, self) + + if not silent then + side.Hidden = false + end + updateWindows(silent) + end + + funcs.Close = function(self) + self.Closed = true + self:SetResizableInternal(false) + + Lib.FindAndRemove(leftSide.Windows,self) + Lib.FindAndRemove(rightSide.Windows,self) + Lib.FindAndRemove(visibleWindows,self) + + self.MinimizeAnim.Disable() + self.CloseAnim.Disable() + self.ClosedSide = self.Side + self.Side = nil + self.OnDeactivate:Fire() + + if not self.Aligned then + self:StopTweens() + local ti = TweenInfo.new(0.2,Enum.EasingStyle.Quad,Enum.EasingDirection.Out) + + local closeTime = tick() + self.LastClose = closeTime + + self:DoTween(self.GuiElems.Main,ti,{Size = UDim2.new(0,self.SizeX,0,20)}) + self:DoTween(self.GuiElems.Title,ti,{TextTransparency = 1}) + self:DoTween(self.GuiElems.Minimize.ImageLabel,ti,{ImageTransparency = 1}) + self:DoTween(self.GuiElems.Close.ImageLabel,ti,{ImageTransparency = 1}) + Lib.FastWait(0.2) + if closeTime ~= self.LastClose then return end + + self:DoTween(self.GuiElems.TopBar,ti,{BackgroundTransparency = 1}) + self:DoTween(self.GuiElems.Outlines,ti,{ImageTransparency = 1}) + Lib.FastWait(0.2) + if closeTime ~= self.LastClose then return end + end + + self.Aligned = false + self.Gui.Parent = nil + updateWindows(true) + end + + funcs.Hide = funcs.Close + + funcs.IsVisible = function(self) + return not self.Closed and ((self.Side and not self.Side.Hidden) or not self.Side) + end + + funcs.IsContentVisible = function(self) + return self:IsVisible() and not self.Minimized + end + + funcs.Focus = function(self) + moveToTop(self) + end + + funcs.MoveInBoundary = function(self) + local posX,posY = self.PosX,self.PosY + local maxX,maxY = sidesGui.AbsoluteSize.X,sidesGui.AbsoluteSize.Y + posX = math.min(posX,maxX-self.SizeX) + posY = math.min(posY,maxY-20) + self.GuiElems.Main.Position = UDim2.new(0,posX,0,posY) + end + + funcs.DoTween = function(self,...) + local tween = service.TweenService:Create(...) + self.Tweens[#self.Tweens+1] = tween + tween:Play() + end + + funcs.StopTweens = function(self) + for i,v in pairs(self.Tweens) do + v:Cancel() + end + self.Tweens = {} + end + + funcs.Show = function(self,data) + return static.ShowWindow(self,data) + end + + funcs.ShowAndFocus = function(self,data) + static.ShowWindow(self,data) + service.RunService.RenderStepped:wait() + self:Focus() + end + + static.ShowWindow = function(window,data) + data = data or {} + local align = data.Align + local pos = data.Pos + local size = data.Size + local targetSide = (align == "left" and leftSide) or (align == "right" and rightSide) + + if not window.Closed then + if not window.Aligned then + window:SetMinimized(false) + elseif window.Side and not data.Silent then + static.SetSideVisible(window.Side,true) + end + return + end + + window.Closed = false + window.LastClose = tick() + window.GuiElems.Title.TextTransparency = 0 + window.GuiElems.Minimize.ImageLabel.ImageTransparency = 0 + window.GuiElems.Close.ImageLabel.ImageTransparency = 0 + window.GuiElems.TopBar.BackgroundTransparency = 0 + window.GuiElems.Outlines.ImageTransparency = 0 + window.GuiElems.Minimize.ImageLabel.Image = "rbxassetid://5034768003" + window.GuiElems.Main.Active = true + window.GuiElems.Main.Outlines.Visible = true + window:SetMinimized(false,3) + window:SetResizableInternal(true) + window.MinimizeAnim.Enable() + window.CloseAnim.Enable() + + if align then + window:AlignTo(targetSide,pos,size,data.Silent) + else + if align == nil and window.ClosedSide then -- Regular open + window:AlignTo(window.ClosedSide,window.SidePos,size,true) + static.SetSideVisible(window.ClosedSide,true) + else + if table.find(visibleWindows,window) then return end + + -- TODO: make better + window.GuiElems.Main.Size = UDim2.new(0,window.SizeX,0,20) + local ti = TweenInfo.new(0.2,Enum.EasingStyle.Quad,Enum.EasingDirection.Out) + window:StopTweens() + window:DoTween(window.GuiElems.Main,ti,{Size = UDim2.new(0,window.SizeX,0,window.SizeY)}) + + window.SizeY = size or window.SizeY + table.insert(visibleWindows,1,window) + updateWindows() + end + end + + window.ClosedSide = nil + window.OnActivate:Fire() + end + + static.ToggleSide = function(name) + local side = (name == "left" and leftSide or rightSide) + side.Hidden = not side.Hidden + for i,v in pairs(side.Windows) do + if side.Hidden then + v.OnDeactivate:Fire() + else + v.OnActivate:Fire() + end + end + updateWindows() + end + + static.SetSideVisible = function(s,vis) + local side = (type(s) == "table" and s) or (s == "left" and leftSide or rightSide) + side.Hidden = not vis + for i,v in pairs(side.Windows) do + if side.Hidden then + v.OnDeactivate:Fire() + else + v.OnActivate:Fire() + end + end + updateWindows() + end + + static.Init = function() + displayOrderStart = Main.DisplayOrders.Window + sideDisplayOrder = Main.DisplayOrders.SideWindow + + sidesGui = Instance.new("ScreenGui") + sidesGui.Name = "Dex_SidesGui" + sidesGui.ResetOnSpawn = false + local leftFrame = create({ + {1,"Frame",{Active=true,Name="LeftSide",BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BackgroundTransparency=0.9,BorderSizePixel=0,}}, + {2,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2549019753933,0.2549019753933,0.2549019753933),BorderSizePixel=0,Font=3,Name="Resizer",Parent={1},Size=UDim2.new(0,5,1,0),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, + {3,"Frame",{BackgroundColor3=Color3.new(0.14117647707462,0.14117647707462,0.14117647707462),BorderSizePixel=0,Name="Line",Parent={2},Position=UDim2.new(0,0,0,0),Size=UDim2.new(0,1,1,0),}}, + {4,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2549019753933,0.2549019753933,0.2549019753933),BorderSizePixel=0,Font=3,Name="WindowResizer",Parent={1},Position=UDim2.new(1,-300,0,0),Size=UDim2.new(1,0,0,4),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, + {5,"Frame",{BackgroundColor3=Color3.new(0.14117647707462,0.14117647707462,0.14117647707462),BorderSizePixel=0,Name="Line",Parent={4},Size=UDim2.new(1,0,0,1),}}, + }) + leftSide.Frame = leftFrame + leftFrame.Position = UDim2.new(0,-leftSide.Width-10,0,0) + leftSide.WindowResizer = leftFrame.WindowResizer + leftFrame.WindowResizer.Parent = nil + leftFrame.Parent = sidesGui + + local rightFrame = create({ + {1,"Frame",{Active=true,Name="RightSide",BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BackgroundTransparency=0.9,BorderSizePixel=0,}}, + {2,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2549019753933,0.2549019753933,0.2549019753933),BorderSizePixel=0,Font=3,Name="Resizer",Parent={1},Size=UDim2.new(0,5,1,0),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, + {3,"Frame",{BackgroundColor3=Color3.new(0.14117647707462,0.14117647707462,0.14117647707462),BorderSizePixel=0,Name="Line",Parent={2},Position=UDim2.new(0,4,0,0),Size=UDim2.new(0,1,1,0),}}, + {4,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2549019753933,0.2549019753933,0.2549019753933),BorderSizePixel=0,Font=3,Name="WindowResizer",Parent={1},Position=UDim2.new(1,-300,0,0),Size=UDim2.new(1,0,0,4),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, + {5,"Frame",{BackgroundColor3=Color3.new(0.14117647707462,0.14117647707462,0.14117647707462),BorderSizePixel=0,Name="Line",Parent={4},Size=UDim2.new(1,0,0,1),}}, + }) + rightSide.Frame = rightFrame + rightFrame.Position = UDim2.new(1,10,0,0) + rightSide.WindowResizer = rightFrame.WindowResizer + rightFrame.WindowResizer.Parent = nil + rightFrame.Parent = sidesGui + + sideResizerHook(leftFrame.Resizer,"H",leftSide) + sideResizerHook(rightFrame.Resizer,"H",rightSide) + + alignIndicator = Instance.new("ScreenGui") + alignIndicator.DisplayOrder = Main.DisplayOrders.Core + alignIndicator.ResetOnSpawn = false + local indicator = Instance.new("Frame",alignIndicator) + indicator.BackgroundColor3 = Color3.fromRGB(0, 170, 255) + indicator.BorderSizePixel = 0 + indicator.BackgroundTransparency = 0.8 + indicator.Name = "Indicator" + local corner = Instance.new("UICorner",indicator) + corner.CornerRadius = UDim.new(0,10) + + local leftToggle = create({{1,"TextButton",{ + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.20392157137394,0.20392157137394,0.20392157137394), + BackgroundTransparency = 0.8, + BorderColor3 = Color3.new(0.14117647707462,0.14117647707462,0.14117647707462), + BorderMode = 2, + BorderSizePixel = 0, + Font = 10, + Name = "LeftToggle", + Position = UDim2.new(0,0,0,-36), + Size = UDim2.new(0,16,0,36), + Text = "<", + TextColor3 = Color3.new(1,1,1), + TextSize = 14, + }}}) + local rightToggle = leftToggle:Clone() + rightToggle.Name = "RightToggle" + rightToggle.Position = UDim2.new(1,-16,0,-36) + Lib.ButtonAnim(leftToggle,{Mode = 2,PressColor = Color3.fromRGB(32,32,32)}) + Lib.ButtonAnim(rightToggle,{Mode = 2,PressColor = Color3.fromRGB(32,32,32)}) + + leftToggle.MouseButton1Click:Connect(function() + static.ToggleSide("left") + end) + + rightToggle.MouseButton1Click:Connect(function() + static.ToggleSide("right") + end) + + leftToggle.Parent = sidesGui + rightToggle.Parent = sidesGui + + sidesGui:GetPropertyChangedSignal("AbsoluteSize"):Connect(function() + local maxWidth = math.max(300,sidesGui.AbsoluteSize.X-static.FreeWidth) + leftSide.Width = math.max(static.MinWidth,math.min(leftSide.Width,maxWidth-rightSide.Width)) + rightSide.Width = math.max(static.MinWidth,math.min(rightSide.Width,maxWidth-leftSide.Width)) + for i = 1,#visibleWindows do + visibleWindows[i]:MoveInBoundary() + end + updateWindows(true) + end) + + sidesGui.DisplayOrder = sideDisplayOrder - 1 + --Lib.SidesGui = sidesGui + Lib.ShowGui(sidesGui) + updateSideFrames() + end + + local mt = {__index = funcs} + static.new = function() + local obj = setmetatable({ + Minimized = false, + Dragging = false, + Resizing = false, + Aligned = false, + Draggable = true, + Resizable = true, + ResizableInternal = true, + Alignable = true, + Closed = true, + SizeX = 300, + SizeY = 300, + MinX = 200, + MinY = 200, + PosX = 0, + PosY = 0, + GuiElems = {}, + Tweens = {}, + Elements = {}, + OnActivate = Lib.Signal.new(), + OnDeactivate = Lib.Signal.new(), + OnMinimize = Lib.Signal.new(), + OnRestore = Lib.Signal.new() + },mt) + obj.Gui = createGui(obj) + + -- Add to stored windows + --Lib.StoredWindows[obj] = obj + + return obj + end + + return static + end)() + + Lib.ContextMenu = (function() + local funcs = {} + local mouse + + local function createGui(self) + local contextGui = create({ + {1,"ScreenGui",{DisplayOrder=1000000,Name="Dex_Context",ZIndexBehavior=1,ResetOnSpawn=false}}, + {2,"Frame",{Active=true,BackgroundColor3=Color3.new(0.14117647707462,0.14117647707462,0.14117647707462),BorderColor3=Color3.new(0.14117647707462,0.14117647707462,0.14117647707462),Name="Main",Parent={1},Position=UDim2.new(0.5,-100,0.5,-150),Size=UDim2.new(0,200,0,100),}}, + {3,"UICorner",{CornerRadius=UDim.new(0,4),Parent={2},}}, + {4,"Frame",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),Name="Container",Parent={2},Position=UDim2.new(0,1,0,1),Size=UDim2.new(1,-2,1,-2),}}, + {5,"UICorner",{CornerRadius=UDim.new(0,4),Parent={4},}}, + {6,"ScrollingFrame",{Active=true,BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),BackgroundTransparency=1,BorderSizePixel=0,CanvasSize=UDim2.new(0,0,0,0),Name="List",Parent={4},Position=UDim2.new(0,2,0,2),ScrollBarImageColor3=Color3.new(0,0,0),ScrollBarThickness=4,Size=UDim2.new(1,-4,1,-4),VerticalScrollBarInset=1,}}, + {7,"UIListLayout",{Parent={6},SortOrder=2,}}, + {8,"Frame",{BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),BorderSizePixel=0,Name="SearchFrame",Parent={4},Size=UDim2.new(1,0,0,24),Visible=false,}}, + {9,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.1176470592618,0.1176470592618,0.1176470592618),BorderSizePixel=0,Name="SearchContainer",Parent={8},Position=UDim2.new(0,3,0,3),Size=UDim2.new(1,-6,0,18),}}, + {10,"TextBox",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="SearchBox",Parent={9},PlaceholderColor3=Color3.new(0.39215689897537,0.39215689897537,0.39215689897537),PlaceholderText="Search",Position=UDim2.new(0,4,0,0),Size=UDim2.new(1,-8,0,18),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,TextXAlignment=0,}}, + {11,"UICorner",{CornerRadius=UDim.new(0,2),Parent={9},}}, + {12,"Frame",{BackgroundColor3=Color3.new(0.14117647707462,0.14117647707462,0.14117647707462),BorderSizePixel=0,Name="Line",Parent={8},Position=UDim2.new(0,0,1,0),Size=UDim2.new(1,0,0,1),}}, + {13,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),BorderColor3=Color3.new(0.33725491166115,0.49019610881805,0.73725491762161),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Entry",Parent={1},Size=UDim2.new(1,0,0,22),Text="",TextSize=14,Visible=false,}}, + {14,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="EntryName",Parent={13},Position=UDim2.new(0,24,0,0),Size=UDim2.new(1,-24,1,0),Text="Duplicate",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, + {15,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Shortcut",Parent={13},Position=UDim2.new(0,24,0,0),Size=UDim2.new(1,-30,1,0),Text="Ctrl+D",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, + {16,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,ImageRectOffset=Vector2.new(304,0),ImageRectSize=Vector2.new(16,16),Name="Icon",Parent={13},Position=UDim2.new(0,2,0,3),ScaleType=4,Size=UDim2.new(0,16,0,16),}}, + {17,"UICorner",{CornerRadius=UDim.new(0,4),Parent={13},}}, + {18,"Frame",{BackgroundColor3=Color3.new(0.21568629145622,0.21568629145622,0.21568629145622),BackgroundTransparency=1,BorderSizePixel=0,Name="Divider",Parent={1},Position=UDim2.new(0,0,0,20),Size=UDim2.new(1,0,0,7),Visible=false,}}, + {19,"Frame",{BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),BorderSizePixel=0,Name="Line",Parent={18},Position=UDim2.new(0,0,0.5,0),Size=UDim2.new(1,0,0,1),}}, + {20,"TextLabel",{AnchorPoint=Vector2.new(0,0.5),BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="DividerName",Parent={18},Position=UDim2.new(0,2,0.5,0),Size=UDim2.new(1,-4,1,0),Text="Objects",TextColor3=Color3.new(1,1,1),TextSize=14,TextTransparency=0.60000002384186,TextXAlignment=0,Visible=false,}}, + }) + self.GuiElems.Main = contextGui.Main + self.GuiElems.List = contextGui.Main.Container.List + self.GuiElems.Entry = contextGui.Entry + self.GuiElems.Divider = contextGui.Divider + self.GuiElems.SearchFrame = contextGui.Main.Container.SearchFrame + self.GuiElems.SearchBar = self.GuiElems.SearchFrame.SearchContainer.SearchBox + Lib.ViewportTextBox.convert(self.GuiElems.SearchBar) + + self.GuiElems.SearchBar:GetPropertyChangedSignal("Text"):Connect(function() + local lower,find = string.lower,string.find + local searchText = lower(self.GuiElems.SearchBar.Text) + local items = self.Items + local map = self.ItemToEntryMap + + if searchText ~= "" then + local results = {} + local count = 1 + for i = 1,#items do + local item = items[i] + local entry = map[item] + if entry then + if not item.Divider and find(lower(item.Name),searchText,1,true) then + results[count] = item + count = count + 1 + else + entry.Visible = false + end + end + end + table.sort(results,function(a,b) return a.Name < b.Name end) + for i = 1,#results do + local entry = map[results[i]] + entry.LayoutOrder = i + entry.Visible = true + end + else + for i = 1,#items do + local entry = map[items[i]] + if entry then entry.LayoutOrder = i entry.Visible = true end + end + end + + local toSize = self.GuiElems.List.UIListLayout.AbsoluteContentSize.Y + 6 + self.GuiElems.List.CanvasSize = UDim2.new(0,0,0,toSize-6) + end) + + return contextGui + end + + funcs.Add = function(self,item) + local newItem = { + Name = item.Name or "Item", + Icon = item.Icon or "", + Shortcut = item.Shortcut or "", + OnClick = item.OnClick, + OnHover = item.OnHover, + Disabled = item.Disabled or false, + DisabledIcon = item.DisabledIcon or "", + IconMap = item.IconMap, + OnRightClick = item.OnRightClick + } + if self.QueuedDivider then + local text = self.QueuedDividerText and #self.QueuedDividerText > 0 + self:AddDivider(text) + end + self.Items[#self.Items+1] = newItem + self.Updated = nil + end + + funcs.AddRegistered = function(self,name,disabled) + if not self.Registered[name] then error(name.." is not registered") end + + if self.QueuedDivider then + local text = self.QueuedDividerText and #self.QueuedDividerText > 0 + self:AddDivider(text) + end + self.Registered[name].Disabled = disabled + self.Items[#self.Items+1] = self.Registered[name] + self.Updated = nil + end + + funcs.Register = function(self,name,item) + self.Registered[name] = { + Name = item.Name or "Item", + Icon = item.Icon or "", + Shortcut = item.Shortcut or "", + OnClick = item.OnClick, + OnHover = item.OnHover, + DisabledIcon = item.DisabledIcon or "", + IconMap = item.IconMap, + OnRightClick = item.OnRightClick + } + end + + funcs.UnRegister = function(self,name) + self.Registered[name] = nil + end + + funcs.AddDivider = function(self,text) + self.QueuedDivider = false + local textWidth = text and service.TextService:GetTextSize(text,14,Enum.Font.SourceSans,Vector2.new(999999999,20)).X or nil + table.insert(self.Items,{Divider = true, Text = text, TextSize = textWidth and textWidth+4}) + self.Updated = nil + end + + funcs.QueueDivider = function(self,text) + self.QueuedDivider = true + self.QueuedDividerText = text or "" + end + + funcs.Clear = function(self) + self.Items = {} + self.Updated = nil + end + + funcs.Refresh = function(self) + for i,v in pairs(self.GuiElems.List:GetChildren()) do + if not v:IsA("UIListLayout") then + v:Destroy() + end + end + local map = {} + self.ItemToEntryMap = map + + local dividerFrame = self.GuiElems.Divider + local contextList = self.GuiElems.List + local entryFrame = self.GuiElems.Entry + local items = self.Items + + for i = 1,#items do + local item = items[i] + if item.Divider then + local newDivider = dividerFrame:Clone() + newDivider.Line.BackgroundColor3 = self.Theme.DividerColor + if item.Text then + newDivider.Size = UDim2.new(1,0,0,20) + newDivider.Line.Position = UDim2.new(0,item.TextSize,0.5,0) + newDivider.Line.Size = UDim2.new(1,-item.TextSize,0,1) + newDivider.DividerName.TextColor3 = self.Theme.TextColor + newDivider.DividerName.Text = item.Text + newDivider.DividerName.Visible = true + end + newDivider.Visible = true + map[item] = newDivider + newDivider.Parent = contextList + else + local newEntry = entryFrame:Clone() + newEntry.BackgroundColor3 = self.Theme.HighlightColor + newEntry.EntryName.TextColor3 = self.Theme.TextColor + newEntry.EntryName.Text = item.Name + newEntry.Shortcut.Text = item.Shortcut + if item.Disabled then + newEntry.EntryName.TextColor3 = Color3.new(150/255,150/255,150/255) + newEntry.Shortcut.TextColor3 = Color3.new(150/255,150/255,150/255) + end + + if self.Iconless then + newEntry.EntryName.Position = UDim2.new(0,2,0,0) + newEntry.EntryName.Size = UDim2.new(1,-4,0,20) + newEntry.Icon.Visible = false + else + local iconIndex = item.Disabled and item.DisabledIcon or item.Icon + if item.IconMap then + if type(iconIndex) == "number" then + item.IconMap:Display(newEntry.Icon,iconIndex) + elseif type(iconIndex) == "string" then + item.IconMap:DisplayByKey(newEntry.Icon,iconIndex) + end + elseif type(iconIndex) == "string" then + newEntry.Icon.Image = iconIndex + end + end + + if not item.Disabled then + if item.OnClick then + newEntry.MouseButton1Click:Connect(function() + item.OnClick(item.Name) + if not item.NoHide then + self:Hide() + end + end) + end + + if item.OnRightClick then + newEntry.MouseButton2Click:Connect(function() + item.OnRightClick(item.Name) + if not item.NoHide then + self:Hide() + end + end) + end + end + + newEntry.InputBegan:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + newEntry.BackgroundTransparency = 0 + end + end) + + newEntry.InputEnded:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + newEntry.BackgroundTransparency = 1 + end + end) + + newEntry.Visible = true + map[item] = newEntry + newEntry.Parent = contextList + end + end + self.Updated = true + end + + funcs.Show = function(self,x,y) + -- Initialize Gui + local elems = self.GuiElems + elems.SearchFrame.Visible = self.SearchEnabled + elems.List.Position = UDim2.new(0,2,0,2 + (self.SearchEnabled and 24 or 0)) + elems.List.Size = UDim2.new(1,-4,1,-4 - (self.SearchEnabled and 24 or 0)) + if self.SearchEnabled and self.ClearSearchOnShow then elems.SearchBar.Text = "" end + self.GuiElems.List.CanvasPosition = Vector2.new(0,0) + + if not self.Updated then + self:Refresh() -- Create entries + end + + -- Vars + local reverseY = false + local x,y = x or mouse.X, y or mouse.Y + local maxX,maxY = mouse.ViewSizeX,mouse.ViewSizeY + + -- Position and show + if x + self.Width > maxX then + x = self.ReverseX and x - self.Width or maxX - self.Width + end + elems.Main.Position = UDim2.new(0,x,0,y) + elems.Main.Size = UDim2.new(0,self.Width,0,0) + self.Gui.DisplayOrder = Main.DisplayOrders.Menu + Lib.ShowGui(self.Gui) + + -- Size adjustment + local toSize = elems.List.UIListLayout.AbsoluteContentSize.Y + 6 -- Padding + if self.MaxHeight and toSize > self.MaxHeight then + elems.List.CanvasSize = UDim2.new(0,0,0,toSize-6) + toSize = self.MaxHeight + else + elems.List.CanvasSize = UDim2.new(0,0,0,0) + end + if y + toSize > maxY then reverseY = true end + + -- Close event + local closable + if self.CloseEvent then self.CloseEvent:Disconnect() end + self.CloseEvent = service.UserInputService.InputBegan:Connect(function(input) + if not closable or input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + + if not Lib.CheckMouseInGui(elems.Main) then + self.CloseEvent:Disconnect() + self:Hide() + end + end) + + -- Resize + if reverseY then + elems.Main.Position = UDim2.new(0,x,0,y-(self.ReverseYOffset or 0)) + local newY = y - toSize - (self.ReverseYOffset or 0) + y = newY >= 0 and newY or 0 + elems.Main:TweenSizeAndPosition(UDim2.new(0,self.Width,0,toSize),UDim2.new(0,x,0,y),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.2,true) + else + elems.Main:TweenSize(UDim2.new(0,self.Width,0,toSize),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.2,true) + end + + -- Close debounce + Lib.FastWait() + if self.SearchEnabled and self.FocusSearchOnShow then elems.SearchBar:CaptureFocus() end + closable = true + end + + funcs.Hide = function(self) + self.Gui.Parent = nil + end + + funcs.ApplyTheme = function(self,data) + local theme = self.Theme + theme.ContentColor = data.ContentColor or Settings.Theme.Menu + theme.OutlineColor = data.OutlineColor or Settings.Theme.Menu + theme.DividerColor = data.DividerColor or Settings.Theme.Outline2 + theme.TextColor = data.TextColor or Settings.Theme.Text + theme.HighlightColor = data.HighlightColor or Settings.Theme.Main1 + + self.GuiElems.Main.BackgroundColor3 = theme.OutlineColor + self.GuiElems.Main.Container.BackgroundColor3 = theme.ContentColor + end + + local mt = {__index = funcs} + local function new() + if not mouse then mouse = Main.Mouse or service.Players.LocalPlayer:GetMouse() end + + local obj = setmetatable({ + Width = 200, + MaxHeight = nil, + Iconless = false, + SearchEnabled = false, + ClearSearchOnShow = true, + FocusSearchOnShow = true, + Updated = false, + QueuedDivider = false, + QueuedDividerText = "", + Items = {}, + Registered = {}, + GuiElems = {}, + Theme = {} + },mt) + obj.Gui = createGui(obj) + obj:ApplyTheme({}) + return obj + end + + return {new = new} + end)() + + Lib.CodeFrame = (function() + local funcs = {} + + local typeMap = { + [1] = "String", + [2] = "String", + [3] = "String", + [4] = "Comment", + [5] = "Operator", + [6] = "Number", + [7] = "Keyword", + [8] = "BuiltIn", + [9] = "LocalMethod", + [10] = "LocalProperty", + [11] = "Nil", + [12] = "Bool", + [13] = "Function", + [14] = "Local", + [15] = "Self", + [16] = "FunctionName", + [17] = "Bracket" + } + + local specialKeywordsTypes = { + ["nil"] = 11, + ["true"] = 12, + ["false"] = 12, + ["function"] = 13, + ["local"] = 14, + ["self"] = 15 + } + + local keywords = { + ["and"] = true, + ["break"] = true, + ["do"] = true, + ["else"] = true, + ["elseif"] = true, + ["end"] = true, + ["false"] = true, + ["for"] = true, + ["function"] = true, + ["if"] = true, + ["in"] = true, + ["local"] = true, + ["nil"] = true, + ["not"] = true, + ["or"] = true, + ["repeat"] = true, + ["return"] = true, + ["then"] = true, + ["true"] = true, + ["until"] = true, + ["while"] = true, + ["plugin"] = true + } + + local builtIns = { + ["delay"] = true, + ["elapsedTime"] = true, + ["require"] = true, + ["spawn"] = true, + ["tick"] = true, + ["time"] = true, + ["typeof"] = true, + ["UserSettings"] = true, + ["wait"] = true, + ["warn"] = true, + ["game"] = true, + ["shared"] = true, + ["script"] = true, + ["workspace"] = true, + ["assert"] = true, + ["collectgarbage"] = true, + ["error"] = true, + ["getfenv"] = true, + ["getmetatable"] = true, + ["ipairs"] = true, + ["loadstring"] = true, + ["newproxy"] = true, + ["next"] = true, + ["pairs"] = true, + ["pcall"] = true, + ["print"] = true, + ["rawequal"] = true, + ["rawget"] = true, + ["rawset"] = true, + ["select"] = true, + ["setfenv"] = true, + ["setmetatable"] = true, + ["tonumber"] = true, + ["tostring"] = true, + ["type"] = true, + ["unpack"] = true, + ["xpcall"] = true, + ["_G"] = true, + ["_VERSION"] = true, + ["coroutine"] = true, + ["debug"] = true, + ["math"] = true, + ["os"] = true, + ["string"] = true, + ["table"] = true, + ["bit32"] = true, + ["utf8"] = true, + ["Axes"] = true, + ["BrickColor"] = true, + ["CFrame"] = true, + ["Color3"] = true, + ["ColorSequence"] = true, + ["ColorSequenceKeypoint"] = true, + ["DockWidgetPluginGuiInfo"] = true, + ["Enum"] = true, + ["Faces"] = true, + ["Instance"] = true, + ["NumberRange"] = true, + ["NumberSequence"] = true, + ["NumberSequenceKeypoint"] = true, + ["PathWaypoint"] = true, + ["PhysicalProperties"] = true, + ["Random"] = true, + ["Ray"] = true, + ["Rect"] = true, + ["Region3"] = true, + ["Region3int16"] = true, + ["TweenInfo"] = true, + ["UDim"] = true, + ["UDim2"] = true, + ["Vector2"] = true, + ["Vector2int16"] = true, + ["Vector3"] = true, + ["Vector3int16"] = true + } + + local builtInInited = false + + local richReplace = { + ["'"] = "'", + ["\""] = """, + ["<"] = "<", + [">"] = ">", + ["&"] = "&" + } + + local tabSub = "\205" + local tabReplacement = (" %s%s "):format(tabSub,tabSub) + + local tabJumps = { + [("[^%s] %s"):format(tabSub,tabSub)] = 0, + [(" %s%s"):format(tabSub,tabSub)] = -1, + [("%s%s "):format(tabSub,tabSub)] = 2, + [("%s [^%s]"):format(tabSub,tabSub)] = 1, + } + + local tweenService = service.TweenService + local lineTweens = { Invis = nil, Vis = nil } + + local function initBuiltIn() + local env = getfenv() + local type = type + local tostring = tostring + for name,_ in next,builtIns do + local envVal = env[name] + if type(envVal) == "table" then + local items = {} + for i,v in next,envVal do + items[i] = true + end + builtIns[name] = items + end + end + + local enumEntries = {} + local enums = Enum:GetEnums() + for i = 1,#enums do + enumEntries[tostring(enums[i])] = true + end + builtIns["Enum"] = enumEntries + + builtInInited = true + end + + local function setupEditBox(obj) + local editBox = obj.GuiElems.EditBox + + editBox.Focused:Connect(function() + obj:ConnectEditBoxEvent() + obj.Editing = true + end) + + editBox.FocusLost:Connect(function() + obj:DisconnectEditBoxEvent() + obj.Editing = false + end) + + editBox:GetPropertyChangedSignal("Text"):Connect(function() + local text = editBox.Text + if #text == 0 or obj.EditBoxCopying then return end + editBox.Text = "" + obj:AppendText(text) + end) + end + + local function setupMouseSelection(obj) + local mouse = plr:GetMouse() + local codeFrame = obj.GuiElems.LinesFrame + local lines = obj.Lines + + codeFrame.InputBegan:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseButton1 then + local fontSizeX,fontSizeY = math.ceil(obj.FontSize/2),obj.FontSize + + local relX = mouse.X - codeFrame.AbsolutePosition.X + local relY = mouse.Y - codeFrame.AbsolutePosition.Y + local selX = math.round(relX / fontSizeX) + obj.ViewX + local selY = math.floor(relY / fontSizeY) + obj.ViewY + local releaseEvent,mouseEvent,scrollEvent + local scrollPowerV,scrollPowerH = 0,0 + selY = math.min(#lines-1,selY) + local relativeLine = lines[selY+1] or "" + selX = math.min(#relativeLine, selX + obj:TabAdjust(selX,selY)) + + obj.SelectionRange = {{-1,-1},{-1,-1}} + obj:MoveCursor(selX,selY) + obj.FloatCursorX = selX + + local function updateSelection() + local relX = mouse.X - codeFrame.AbsolutePosition.X + local relY = mouse.Y - codeFrame.AbsolutePosition.Y + local sel2X = math.max(0,math.round(relX / fontSizeX) + obj.ViewX) + local sel2Y = math.max(0,math.floor(relY / fontSizeY) + obj.ViewY) + + sel2Y = math.min(#lines-1,sel2Y) + local relativeLine = lines[sel2Y+1] or "" + sel2X = math.min(#relativeLine, sel2X + obj:TabAdjust(sel2X,sel2Y)) + + if sel2Y < selY or (sel2Y == selY and sel2X < selX) then + obj.SelectionRange = {{sel2X,sel2Y},{selX,selY}} + else + obj.SelectionRange = {{selX,selY},{sel2X,sel2Y}} + end + + obj:MoveCursor(sel2X,sel2Y) + obj.FloatCursorX = sel2X + obj:Refresh() + end + + releaseEvent = service.UserInputService.InputEnded:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseButton1 then + releaseEvent:Disconnect() + mouseEvent:Disconnect() + scrollEvent:Disconnect() + obj:SetCopyableSelection() + --updateSelection() + end + end) + + mouseEvent = service.UserInputService.InputChanged:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + local upDelta = mouse.Y - codeFrame.AbsolutePosition.Y + local downDelta = mouse.Y - codeFrame.AbsolutePosition.Y - codeFrame.AbsoluteSize.Y + local leftDelta = mouse.X - codeFrame.AbsolutePosition.X + local rightDelta = mouse.X - codeFrame.AbsolutePosition.X - codeFrame.AbsoluteSize.X + scrollPowerV = 0 + scrollPowerH = 0 + if downDelta > 0 then + scrollPowerV = math.floor(downDelta*0.05) + 1 + elseif upDelta < 0 then + scrollPowerV = math.ceil(upDelta*0.05) - 1 + end + if rightDelta > 0 then + scrollPowerH = math.floor(rightDelta*0.05) + 1 + elseif leftDelta < 0 then + scrollPowerH = math.ceil(leftDelta*0.05) - 1 + end + updateSelection() + end + end) + + scrollEvent = game:GetService("RunService").RenderStepped:Connect(function() + if scrollPowerV ~= 0 or scrollPowerH ~= 0 then + obj:ScrollDelta(scrollPowerH,scrollPowerV) + updateSelection() + end + end) + + obj:Refresh() + end + end) + end + + local function makeFrame(obj) + local frame = create({ + {1,"Frame",{BackgroundColor3=Color3.new(0.15686275064945,0.15686275064945,0.15686275064945),BorderSizePixel = 0,Position=UDim2.new(0.5,-300,0.5,-200),Size=UDim2.new(0,600,0,400),}}, + }) + local elems = {} + + local linesFrame = Instance.new("Frame") + linesFrame.Name = "Lines" + linesFrame.BackgroundTransparency = 1 + linesFrame.Size = UDim2.new(1,0,1,0) + linesFrame.ClipsDescendants = true + linesFrame.Parent = frame + + local lineNumbersLabel = Instance.new("TextLabel") + lineNumbersLabel.Name = "LineNumbers" + lineNumbersLabel.BackgroundTransparency = 1 + lineNumbersLabel.Font = Enum.Font.Code + lineNumbersLabel.TextXAlignment = Enum.TextXAlignment.Right + lineNumbersLabel.TextYAlignment = Enum.TextYAlignment.Top + lineNumbersLabel.ClipsDescendants = true + lineNumbersLabel.RichText = true + lineNumbersLabel.Parent = frame + + local cursor = Instance.new("Frame") + cursor.Name = "Cursor" + cursor.BackgroundColor3 = Color3.fromRGB(220,220,220) + cursor.BorderSizePixel = 0 + cursor.Parent = frame + + local editBox = Instance.new("TextBox") + editBox.Name = "EditBox" + editBox.MultiLine = true + editBox.Visible = false + editBox.Parent = frame + + lineTweens.Invis = tweenService:Create(cursor,TweenInfo.new(0.4,Enum.EasingStyle.Quart,Enum.EasingDirection.Out),{BackgroundTransparency = 1}) + lineTweens.Vis = tweenService:Create(cursor,TweenInfo.new(0.2,Enum.EasingStyle.Quart,Enum.EasingDirection.Out),{BackgroundTransparency = 0}) + + elems.LinesFrame = linesFrame + elems.LineNumbersLabel = lineNumbersLabel + elems.Cursor = cursor + elems.EditBox = editBox + elems.ScrollCorner = create({{1,"Frame",{BackgroundColor3=Color3.new(0.15686275064945,0.15686275064945,0.15686275064945),BorderSizePixel=0,Name="ScrollCorner",Position=UDim2.new(1,-16,1,-16),Size=UDim2.new(0,16,0,16),Visible=false,}}}) + + elems.ScrollCorner.Parent = frame + linesFrame.InputBegan:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseButton1 then + obj:SetEditing(true,input) + end + end) + + obj.Frame = frame + obj.Gui = frame + obj.GuiElems = elems + setupEditBox(obj) + setupMouseSelection(obj) + + return frame + end + + funcs.GetSelectionText = function(self) + if not self:IsValidRange() then return "" end + + local selectionRange = self.SelectionRange + local selX,selY = selectionRange[1][1], selectionRange[1][2] + local sel2X,sel2Y = selectionRange[2][1], selectionRange[2][2] + local deltaLines = sel2Y-selY + local lines = self.Lines + + if not lines[selY+1] or not lines[sel2Y+1] then return "" end + + if deltaLines == 0 then + return self:ConvertText(lines[selY+1]:sub(selX+1,sel2X), false) + end + + local leftSub = lines[selY+1]:sub(selX+1) + local rightSub = lines[sel2Y+1]:sub(1,sel2X) + + local result = leftSub.."\n" + for i = selY+1,sel2Y-1 do + result = result..lines[i+1].."\n" + end + result = result..rightSub + + return self:ConvertText(result,false) + end + + funcs.SetCopyableSelection = function(self) + local text = self:GetSelectionText() + local editBox = self.GuiElems.EditBox + + self.EditBoxCopying = true + editBox.Text = text + editBox.SelectionStart = 1 + editBox.CursorPosition = #editBox.Text + 1 + self.EditBoxCopying = false + end + + funcs.ConnectEditBoxEvent = function(self) + if self.EditBoxEvent then + self.EditBoxEvent:Disconnect() + end + + self.EditBoxEvent = service.UserInputService.InputBegan:Connect(function(input) + if input.UserInputType ~= Enum.UserInputType.Keyboard then return end + + local keycodes = Enum.KeyCode + local keycode = input.KeyCode + + local function setupMove(key,func) + local endCon,finished + endCon = service.UserInputService.InputEnded:Connect(function(input) + if input.KeyCode ~= key then return end + endCon:Disconnect() + finished = true + end) + func() + Lib.FastWait(0.5) + while not finished do func() Lib.FastWait(0.03) end + end + + if keycode == keycodes.Down then + setupMove(keycodes.Down,function() + self.CursorX = self.FloatCursorX + self.CursorY = self.CursorY + 1 + self:UpdateCursor() + self:JumpToCursor() + end) + elseif keycode == keycodes.Up then + setupMove(keycodes.Up,function() + self.CursorX = self.FloatCursorX + self.CursorY = self.CursorY - 1 + self:UpdateCursor() + self:JumpToCursor() + end) + elseif keycode == keycodes.Left then + setupMove(keycodes.Left,function() + local line = self.Lines[self.CursorY+1] or "" + self.CursorX = self.CursorX - 1 - (line:sub(self.CursorX-3,self.CursorX) == tabReplacement and 3 or 0) + if self.CursorX < 0 then + self.CursorY = self.CursorY - 1 + local line2 = self.Lines[self.CursorY+1] or "" + self.CursorX = #line2 + end + self.FloatCursorX = self.CursorX + self:UpdateCursor() + self:JumpToCursor() + end) + elseif keycode == keycodes.Right then + setupMove(keycodes.Right,function() + local line = self.Lines[self.CursorY+1] or "" + self.CursorX = self.CursorX + 1 + (line:sub(self.CursorX+1,self.CursorX+4) == tabReplacement and 3 or 0) + if self.CursorX > #line then + self.CursorY = self.CursorY + 1 + self.CursorX = 0 + end + self.FloatCursorX = self.CursorX + self:UpdateCursor() + self:JumpToCursor() + end) + elseif keycode == keycodes.Backspace then + setupMove(keycodes.Backspace,function() + local startRange,endRange + if self:IsValidRange() then + startRange = self.SelectionRange[1] + endRange = self.SelectionRange[2] + else + endRange = {self.CursorX,self.CursorY} + end + + if not startRange then + local line = self.Lines[self.CursorY+1] or "" + self.CursorX = self.CursorX - 1 - (line:sub(self.CursorX-3,self.CursorX) == tabReplacement and 3 or 0) + if self.CursorX < 0 then + self.CursorY = self.CursorY - 1 + local line2 = self.Lines[self.CursorY+1] or "" + self.CursorX = #line2 + end + self.FloatCursorX = self.CursorX + self:UpdateCursor() + + startRange = startRange or {self.CursorX,self.CursorY} + end + + self:DeleteRange({startRange,endRange},false,true) + self:ResetSelection(true) + self:JumpToCursor() + end) + elseif keycode == keycodes.Delete then + setupMove(keycodes.Delete,function() + local startRange,endRange + if self:IsValidRange() then + startRange = self.SelectionRange[1] + endRange = self.SelectionRange[2] + else + startRange = {self.CursorX,self.CursorY} + end + + if not endRange then + local line = self.Lines[self.CursorY+1] or "" + local endCursorX = self.CursorX + 1 + (line:sub(self.CursorX+1,self.CursorX+4) == tabReplacement and 3 or 0) + local endCursorY = self.CursorY + if endCursorX > #line then + endCursorY = endCursorY + 1 + endCursorX = 0 + end + self:UpdateCursor() + + endRange = endRange or {endCursorX,endCursorY} + end + + self:DeleteRange({startRange,endRange},false,true) + self:ResetSelection(true) + self:JumpToCursor() + end) + elseif service.UserInputService:IsKeyDown(Enum.KeyCode.LeftControl) then + if keycode == keycodes.A then + self.SelectionRange = {{0,0},{#self.Lines[#self.Lines],#self.Lines-1}} + self:SetCopyableSelection() + self:Refresh() + end + end + end) + end + + funcs.DisconnectEditBoxEvent = function(self) + if self.EditBoxEvent then + self.EditBoxEvent:Disconnect() + end + end + + funcs.ResetSelection = function(self,norefresh) + self.SelectionRange = {{-1,-1},{-1,-1}} + if not norefresh then self:Refresh() end + end + + funcs.IsValidRange = function(self,range) + local selectionRange = range or self.SelectionRange + local selX,selY = selectionRange[1][1], selectionRange[1][2] + local sel2X,sel2Y = selectionRange[2][1], selectionRange[2][2] + + if selX == -1 or (selX == sel2X and selY == sel2Y) then return false end + + return true + end + + funcs.DeleteRange = function(self,range,noprocess,updatemouse) + range = range or self.SelectionRange + if not self:IsValidRange(range) then return end + + local lines = self.Lines + local selX,selY = range[1][1], range[1][2] + local sel2X,sel2Y = range[2][1], range[2][2] + local deltaLines = sel2Y-selY + + if not lines[selY+1] or not lines[sel2Y+1] then return end + + local leftSub = lines[selY+1]:sub(1,selX) + local rightSub = lines[sel2Y+1]:sub(sel2X+1) + lines[selY+1] = leftSub..rightSub + + local remove = table.remove + for i = 1,deltaLines do + remove(lines,selY+2) + end + + if range == self.SelectionRange then self.SelectionRange = {{-1,-1},{-1,-1}} end + if updatemouse then + self.CursorX = selX + self.CursorY = selY + self:UpdateCursor() + end + + if not noprocess then + self:ProcessTextChange() + end + end + + funcs.AppendText = function(self,text) + self:DeleteRange(nil,true,true) + local lines,cursorX,cursorY = self.Lines,self.CursorX,self.CursorY + local line = lines[cursorY+1] + local before = line:sub(1,cursorX) + local after = line:sub(cursorX+1) + + text = text:gsub("\r\n","\n") + text = self:ConvertText(text,true) -- Tab Convert + + local textLines = text:split("\n") + local insert = table.insert + + for i = 1,#textLines do + local linePos = cursorY+i + if i > 1 then insert(lines,linePos,"") end + + local textLine = textLines[i] + local newBefore = (i == 1 and before or "") + local newAfter = (i == #textLines and after or "") + + lines[linePos] = newBefore..textLine..newAfter + end + + if #textLines > 1 then cursorX = 0 end + + self:ProcessTextChange() + self.CursorX = cursorX + #textLines[#textLines] + self.CursorY = cursorY + #textLines-1 + self:UpdateCursor() + end + + funcs.ScrollDelta = function(self,x,y) + self.ScrollV:ScrollTo(self.ScrollV.Index + y) + self.ScrollH:ScrollTo(self.ScrollH.Index + x) + end + + -- x and y starts at 0 + funcs.TabAdjust = function(self,x,y) + local lines = self.Lines + local line = lines[y+1] + x=x+1 + + if line then + local left = line:sub(x-1,x-1) + local middle = line:sub(x,x) + local right = line:sub(x+1,x+1) + local selRange = (#left > 0 and left or " ") .. (#middle > 0 and middle or " ") .. (#right > 0 and right or " ") + + for i,v in pairs(tabJumps) do + if selRange:find(i) then + return v + end + end + end + return 0 + end + + funcs.SetEditing = function(self,on,input) + self:UpdateCursor(input) + + if on then + if self.Editable then + self.GuiElems.EditBox.Text = "" + self.GuiElems.EditBox:CaptureFocus() + end + else + self.GuiElems.EditBox:ReleaseFocus() + end + end + + funcs.CursorAnim = function(self,on) + local cursor = self.GuiElems.Cursor + local animTime = tick() + self.LastAnimTime = animTime + + if not on then return end + + lineTweens.Invis:Cancel() + lineTweens.Vis:Cancel() + cursor.BackgroundTransparency = 0 + + task.spawn(function() + while self.Editable do + Lib.FastWait(0.5) + if self.LastAnimTime ~= animTime then return end + lineTweens.Invis:Play() + Lib.FastWait(0.4) + if self.LastAnimTime ~= animTime then return end + lineTweens.Vis:Play() + Lib.FastWait(0.2) + end + end) + end + + funcs.MoveCursor = function(self,x,y) + self.CursorX = x + self.CursorY = y + self:UpdateCursor() + self:JumpToCursor() + end + + funcs.JumpToCursor = function(self) + self:Refresh() + end + + funcs.UpdateCursor = function(self,input) + local linesFrame = self.GuiElems.LinesFrame + local cursor = self.GuiElems.Cursor + local hSize = math.max(0,linesFrame.AbsoluteSize.X) + local vSize = math.max(0,linesFrame.AbsoluteSize.Y) + local maxLines = math.ceil(vSize / self.FontSize) + local maxCols = math.ceil(hSize / math.ceil(self.FontSize/2)) + local viewX,viewY = self.ViewX,self.ViewY + local totalLinesStr = tostring(#self.Lines) + local fontWidth = math.ceil(self.FontSize / 2) + local linesOffset = #totalLinesStr*fontWidth + 4*fontWidth + + if input then + local linesFrame = self.GuiElems.LinesFrame + local frameX,frameY = linesFrame.AbsolutePosition.X,linesFrame.AbsolutePosition.Y + local mouseX,mouseY = input.Position.X,input.Position.Y + local fontSizeX,fontSizeY = math.ceil(self.FontSize/2),self.FontSize + + self.CursorX = self.ViewX + math.round((mouseX - frameX) / fontSizeX) + self.CursorY = self.ViewY + math.floor((mouseY - frameY) / fontSizeY) + end + + local cursorX,cursorY = self.CursorX,self.CursorY + + local line = self.Lines[cursorY+1] or "" + if cursorX > #line then cursorX = #line + elseif cursorX < 0 then cursorX = 0 end + + if cursorY >= #self.Lines then + cursorY = math.max(0,#self.Lines-1) + elseif cursorY < 0 then + cursorY = 0 + end + + cursorX = cursorX + self:TabAdjust(cursorX,cursorY) + + -- Update modified + self.CursorX = cursorX + self.CursorY = cursorY + + local cursorVisible = (cursorX >= viewX) and (cursorY >= viewY) and (cursorX <= viewX + maxCols) and (cursorY <= viewY + maxLines) + if cursorVisible then + local offX = (cursorX - viewX) + local offY = (cursorY - viewY) + cursor.Position = UDim2.new(0,linesOffset + offX*math.ceil(self.FontSize/2) - 1,0,offY*self.FontSize) + cursor.Size = UDim2.new(0,1,0,self.FontSize+2) + cursor.Visible = true + self:CursorAnim(true) + else + cursor.Visible = false + end + end + + funcs.MapNewLines = function(self) + local newLines = {} + local count = 1 + local text = self.Text + local find = string.find + local init = 1 + + local pos = find(text,"\n",init,true) + while pos do + newLines[count] = pos + count = count + 1 + init = pos + 1 + pos = find(text,"\n",init,true) + end + + self.NewLines = newLines + end + + funcs.PreHighlight = function(self) + local start = tick() + local text = self.Text:gsub("\\\\"," ") + --print("BACKSLASH SUB",tick()-start) + local textLen = #text + local found = {} + local foundMap = {} + local extras = {} + local find = string.find + local sub = string.sub + self.ColoredLines = {} + + local function findAll(str,pattern,typ,raw) + local count = #found+1 + local init = 1 + local x,y,extra = find(str,pattern,init,raw) + while x do + found[count] = x + foundMap[x] = typ + if extra then + extras[x] = extra + end + + count = count+1 + init = y+1 + x,y,extra = find(str,pattern,init,raw) + end + end + local start = tick() + findAll(text,'"',1,true) + findAll(text,"'",2,true) + findAll(text,"%[(=*)%[",3) + findAll(text,"--",4,true) + table.sort(found) + + local newLines = self.NewLines + local curLine = 0 + local lineTableCount = 1 + local lineStart = 0 + local lineEnd = 0 + local lastEnding = 0 + local foundHighlights = {} + + for i = 1,#found do + local pos = found[i] + if pos <= lastEnding then continue end + + local ending = pos + local typ = foundMap[pos] + if typ == 1 then + ending = find(text,'"',pos+1,true) + while ending and sub(text,ending-1,ending-1) == "\\" do + ending = find(text,'"',ending+1,true) + end + if not ending then ending = textLen end + elseif typ == 2 then + ending = find(text,"'",pos+1,true) + while ending and sub(text,ending-1,ending-1) == "\\" do + ending = find(text,"'",ending+1,true) + end + if not ending then ending = textLen end + elseif typ == 3 then + _,ending = find(text,"]"..extras[pos].."]",pos+1,true) + if not ending then ending = textLen end + elseif typ == 4 then + local ahead = foundMap[pos+2] + + if ahead == 3 then + _,ending = find(text,"]"..extras[pos+2].."]",pos+1,true) + if not ending then ending = textLen end + else + ending = find(text,"\n",pos+1,true) or textLen + end + end + + while pos > lineEnd do + curLine = curLine + 1 + --lineTableCount = 1 + lineEnd = newLines[curLine] or textLen+1 + end + while true do + local lineTable = foundHighlights[curLine] + if not lineTable then lineTable = {} foundHighlights[curLine] = lineTable end + lineTable[pos] = {typ,ending} + --lineTableCount = lineTableCount + 1 + + if ending > lineEnd then + curLine = curLine + 1 + lineEnd = newLines[curLine] or textLen+1 + else + break + end + end + + lastEnding = ending + --if i < 200 then print(curLine) end + end + self.PreHighlights = foundHighlights + --print(tick()-start) + --print(#found,curLine) + end + + funcs.HighlightLine = function(self,line) + local cached = self.ColoredLines[line] + if cached then return cached end + + local sub = string.sub + local find = string.find + local match = string.match + local highlights = {} + local preHighlights = self.PreHighlights[line] or {} + local lineText = self.Lines[line] or "" + local lineLen = #lineText + local lastEnding = 0 + local currentType = 0 + local lastWord = nil + local wordBeginsDotted = false + local funcStatus = 0 + local lineStart = self.NewLines[line-1] or 0 + + local preHighlightMap = {} + for pos,data in next,preHighlights do + local relativePos = pos-lineStart + if relativePos < 1 then + currentType = data[1] + lastEnding = data[2] - lineStart + --warn(pos,data[2]) + else + preHighlightMap[relativePos] = {data[1],data[2]-lineStart} + end + end + + for col = 1,#lineText do + if col <= lastEnding then highlights[col] = currentType continue end + + local pre = preHighlightMap[col] + if pre then + currentType = pre[1] + lastEnding = pre[2] + highlights[col] = currentType + wordBeginsDotted = false + lastWord = nil + funcStatus = 0 + else + local char = sub(lineText,col,col) + if find(char,"[%a_]") then + local word = match(lineText,"[%a%d_]+",col) + local wordType = (keywords[word] and 7) or (builtIns[word] and 8) + + lastEnding = col+#word-1 + + if wordType ~= 7 then + if wordBeginsDotted then + local prevBuiltIn = lastWord and builtIns[lastWord] + wordType = (prevBuiltIn and type(prevBuiltIn) == "table" and prevBuiltIn[word] and 8) or 10 + end + + if wordType ~= 8 then + local x,y,br = find(lineText,"^%s*([%({\"'])",lastEnding+1) + if x then + wordType = (funcStatus > 0 and br == "(" and 16) or 9 + funcStatus = 0 + end + end + else + wordType = specialKeywordsTypes[word] or wordType + funcStatus = (word == "function" and 1 or 0) + end + + lastWord = word + wordBeginsDotted = false + if funcStatus > 0 then funcStatus = 1 end + + if wordType then + currentType = wordType + highlights[col] = currentType + else + currentType = nil + end + elseif find(char,"%p") then + local isDot = (char == ".") + local isNum = isDot and find(sub(lineText,col+1,col+1),"%d") + highlights[col] = (isNum and 6 or 5) + + if not isNum then + local dotStr = isDot and match(lineText,"%.%.?%.?",col) + if dotStr and #dotStr > 1 then + currentType = 5 + lastEnding = col+#dotStr-1 + wordBeginsDotted = false + lastWord = nil + funcStatus = 0 + else + if isDot then + if wordBeginsDotted then + lastWord = nil + else + wordBeginsDotted = true + end + else + wordBeginsDotted = false + lastWord = nil + end + + funcStatus = ((isDot or char == ":") and funcStatus == 1 and 2) or 0 + end + end + elseif find(char,"%d") then + local _,endPos = find(lineText,"%x+",col) + local endPart = sub(lineText,endPos,endPos+1) + if (endPart == "e+" or endPart == "e-") and find(sub(lineText,endPos+2,endPos+2),"%d") then + endPos = endPos + 1 + end + currentType = 6 + lastEnding = endPos + highlights[col] = 6 + wordBeginsDotted = false + lastWord = nil + funcStatus = 0 + else + highlights[col] = currentType + local _,endPos = find(lineText,"%s+",col) + if endPos then + lastEnding = endPos + end + end + end + end + + self.ColoredLines[line] = highlights + return highlights + end + + funcs.Refresh = function(self) + local start = tick() + + local linesFrame = self.Frame.Lines + local hSize = math.max(0,linesFrame.AbsoluteSize.X) + local vSize = math.max(0,linesFrame.AbsoluteSize.Y) + local maxLines = math.ceil(vSize / self.FontSize) + local maxCols = math.ceil(hSize / math.ceil(self.FontSize/2)) + local gsub = string.gsub + local sub = string.sub + + local viewX,viewY = self.ViewX,self.ViewY + + local lineNumberStr = "" + + for row = 1,maxLines do + local lineFrame = self.LineFrames[row] + if not lineFrame then + lineFrame = Instance.new("Frame") + lineFrame.Name = "Line" + lineFrame.Position = UDim2.new(0,0,0,(row-1)*self.FontSize) + lineFrame.Size = UDim2.new(1,0,0,self.FontSize) + lineFrame.BorderSizePixel = 0 + lineFrame.BackgroundTransparency = 1 + + local selectionHighlight = Instance.new("Frame") + selectionHighlight.Name = "SelectionHighlight" + selectionHighlight.BorderSizePixel = 0 + selectionHighlight.BackgroundColor3 = Settings.Theme.Syntax.SelectionBack + selectionHighlight.Parent = lineFrame + + local label = Instance.new("TextLabel") + label.Name = "Label" + label.BackgroundTransparency = 1 + label.Font = Enum.Font.Code + label.TextSize = self.FontSize + label.Size = UDim2.new(1,0,0,self.FontSize) + label.RichText = true + label.TextXAlignment = Enum.TextXAlignment.Left + label.TextColor3 = self.Colors.Text + label.ZIndex = 2 + label.Parent = lineFrame + + lineFrame.Parent = linesFrame + self.LineFrames[row] = lineFrame + end + + local relaY = viewY + row + local lineText = self.Lines[relaY] or "" + local resText = "" + local highlights = self:HighlightLine(relaY) + local colStart = viewX + 1 + + local richTemplates = self.RichTemplates + local textTemplate = richTemplates.Text + local selectionTemplate = richTemplates.Selection + local curType = highlights[colStart] + local curTemplate = richTemplates[typeMap[curType]] or textTemplate + + -- Selection Highlight + local selectionRange = self.SelectionRange + local selPos1 = selectionRange[1] + local selPos2 = selectionRange[2] + local selRow,selColumn = selPos1[2],selPos1[1] + local sel2Row,sel2Column = selPos2[2],selPos2[1] + local selRelaX,selRelaY = viewX,relaY-1 + + if selRelaY >= selPos1[2] and selRelaY <= selPos2[2] then + local fontSizeX = math.ceil(self.FontSize/2) + local posX = (selRelaY == selPos1[2] and selPos1[1] or 0) - viewX + local sizeX = (selRelaY == selPos2[2] and selPos2[1]-posX-viewX or maxCols+viewX) + + lineFrame.SelectionHighlight.Position = UDim2.new(0,posX*fontSizeX,0,0) + lineFrame.SelectionHighlight.Size = UDim2.new(0,sizeX*fontSizeX,1,0) + lineFrame.SelectionHighlight.Visible = true + else + lineFrame.SelectionHighlight.Visible = false + end + + -- Selection Text Color for first char + local inSelection = selRelaY >= selRow and selRelaY <= sel2Row and (selRelaY == selRow and viewX >= selColumn or selRelaY ~= selRow) and (selRelaY == sel2Row and viewX < sel2Column or selRelaY ~= sel2Row) + if inSelection then + curType = -999 + curTemplate = selectionTemplate + end + + for col = 2,maxCols do + local relaX = viewX + col + local selRelaX = relaX-1 + local posType = highlights[relaX] + + -- Selection Text Color + local inSelection = selRelaY >= selRow and selRelaY <= sel2Row and (selRelaY == selRow and selRelaX >= selColumn or selRelaY ~= selRow) and (selRelaY == sel2Row and selRelaX < sel2Column or selRelaY ~= sel2Row) + if inSelection then + posType = -999 + end + + if posType ~= curType then + local template = (inSelection and selectionTemplate) or richTemplates[typeMap[posType]] or textTemplate + + if template ~= curTemplate then + local nextText = gsub(sub(lineText,colStart,relaX-1),"['\"<>&]",richReplace) + resText = resText .. (curTemplate ~= textTemplate and (curTemplate .. nextText .. "") or nextText) + colStart = relaX + curTemplate = template + end + curType = posType + end + end + + local lastText = gsub(sub(lineText,colStart,viewX+maxCols),"['\"<>&]",richReplace) + --warn("SUB",colStart,viewX+maxCols-1) + if #lastText > 0 then + resText = resText .. (curTemplate ~= textTemplate and (curTemplate .. lastText .. "") or lastText) + end + + if self.Lines[relaY] then + lineNumberStr = lineNumberStr .. (relaY == self.CursorY and (""..relaY.."\n") or relaY .. "\n") + end + + lineFrame.Label.Text = resText + end + + for i = maxLines+1,#self.LineFrames do + self.LineFrames[i]:Destroy() + self.LineFrames[i] = nil + end + + self.Frame.LineNumbers.Text = lineNumberStr + self:UpdateCursor() + + --print("REFRESH TIME",tick()-start) + end + + funcs.UpdateView = function(self) + local totalLinesStr = tostring(#self.Lines) + local fontWidth = math.ceil(self.FontSize / 2) + local linesOffset = #totalLinesStr*fontWidth + 4*fontWidth + + local linesFrame = self.Frame.Lines + local hSize = linesFrame.AbsoluteSize.X + local vSize = linesFrame.AbsoluteSize.Y + local maxLines = math.ceil(vSize / self.FontSize) + local totalWidth = self.MaxTextCols*fontWidth + local scrollV = self.ScrollV + local scrollH = self.ScrollH + + scrollV.VisibleSpace = maxLines + scrollV.TotalSpace = #self.Lines + 1 + scrollH.VisibleSpace = math.ceil(hSize/fontWidth) + scrollH.TotalSpace = self.MaxTextCols + 1 + + scrollV.Gui.Visible = #self.Lines + 1 > maxLines + scrollH.Gui.Visible = totalWidth > hSize + + local oldOffsets = self.FrameOffsets + self.FrameOffsets = Vector2.new(scrollV.Gui.Visible and -16 or 0, scrollH.Gui.Visible and -16 or 0) + if oldOffsets ~= self.FrameOffsets then + self:UpdateView() + else + scrollV:ScrollTo(self.ViewY,true) + scrollH:ScrollTo(self.ViewX,true) + + if scrollV.Gui.Visible and scrollH.Gui.Visible then + scrollV.Gui.Size = UDim2.new(0,16,1,-16) + scrollH.Gui.Size = UDim2.new(1,-16,0,16) + self.GuiElems.ScrollCorner.Visible = true + else + scrollV.Gui.Size = UDim2.new(0,16,1,0) + scrollH.Gui.Size = UDim2.new(1,0,0,16) + self.GuiElems.ScrollCorner.Visible = false + end + + self.ViewY = scrollV.Index + self.ViewX = scrollH.Index + self.Frame.Lines.Position = UDim2.new(0,linesOffset,0,0) + self.Frame.Lines.Size = UDim2.new(1,-linesOffset+oldOffsets.X,1,oldOffsets.Y) + self.Frame.LineNumbers.Position = UDim2.new(0,fontWidth,0,0) + self.Frame.LineNumbers.Size = UDim2.new(0,#totalLinesStr*fontWidth,1,oldOffsets.Y) + self.Frame.LineNumbers.TextSize = self.FontSize + end + end + + funcs.ProcessTextChange = function(self) + local maxCols = 0 + local lines = self.Lines + + for i = 1,#lines do + local lineLen = #lines[i] + if lineLen > maxCols then + maxCols = lineLen + end + end + + self.MaxTextCols = maxCols + self:UpdateView() + self.Text = table.concat(self.Lines,"\n") + self:MapNewLines() + self:PreHighlight() + self:Refresh() + --self.TextChanged:Fire() + end + + funcs.ConvertText = function(self,text,toEditor) + if toEditor then + return text:gsub("\t",(" %s%s "):format(tabSub,tabSub)) + else + return text:gsub((" %s%s "):format(tabSub,tabSub),"\t") + end + end + + funcs.GetText = function(self) -- TODO: better (use new tab format) + local source = table.concat(self.Lines,"\n") + return self:ConvertText(source,false) -- Tab Convert + end + + funcs.SetText = function(self,txt) + txt = self:ConvertText(txt,true) -- Tab Convert + local lines = self.Lines + table.clear(lines) + local count = 1 + + for line in txt:gmatch("([^\n\r]*)[\n\r]?") do + local len = #line + lines[count] = line + count = count + 1 + end + + self:ProcessTextChange() + end + + funcs.MakeRichTemplates = function(self) + local floor = math.floor + local templates = {} + + for name,color in pairs(self.Colors) do + templates[name] = (''):format(floor(color.r*255),floor(color.g*255),floor(color.b*255)) + end + + self.RichTemplates = templates + end + + funcs.ApplyTheme = function(self) + local colors = Settings.Theme.Syntax + self.Colors = colors + self.Frame.LineNumbers.TextColor3 = colors.Text + self.Frame.BackgroundColor3 = colors.Background + end + + local mt = {__index = funcs} + + local function new() + if not builtInInited then initBuiltIn() end + + local scrollV = Lib.ScrollBar.new() + local scrollH = Lib.ScrollBar.new(true) + scrollH.Gui.Position = UDim2.new(0,0,1,-16) + local obj = setmetatable({ + FontSize = 15, + ViewX = 0, + ViewY = 0, + Colors = Settings.Theme.Syntax, + ColoredLines = {}, + Lines = {""}, + LineFrames = {}, + Editable = true, + Editing = false, + CursorX = 0, + CursorY = 0, + FloatCursorX = 0, + Text = "", + PreHighlights = {}, + SelectionRange = {{-1,-1},{-1,-1}}, + NewLines = {}, + FrameOffsets = Vector2.new(0,0), + MaxTextCols = 0, + ScrollV = scrollV, + ScrollH = scrollH + },mt) + + scrollV.WheelIncrement = 3 + scrollH.Increment = 2 + scrollH.WheelIncrement = 7 + + scrollV.Scrolled:Connect(function() + obj.ViewY = scrollV.Index + obj:Refresh() + end) + + scrollH.Scrolled:Connect(function() + obj.ViewX = scrollH.Index + obj:Refresh() + end) + + makeFrame(obj) + obj:MakeRichTemplates() + obj:ApplyTheme() + scrollV:SetScrollFrame(obj.Frame.Lines) + scrollV.Gui.Parent = obj.Frame + scrollH.Gui.Parent = obj.Frame + + obj:UpdateView() + obj.Frame:GetPropertyChangedSignal("AbsoluteSize"):Connect(function() + obj:UpdateView() + obj:Refresh() + end) + + return obj + end + + return {new = new} + end)() + + Lib.Checkbox = (function() + local funcs = {} + local c3 = Color3.fromRGB + local v2 = Vector2.new + local ud2s = UDim2.fromScale + local ud2o = UDim2.fromOffset + local ud = UDim.new + local max = math.max + local new = Instance.new + local TweenSize = new("Frame").TweenSize + local ti = TweenInfo.new + local delay = delay + + local function ripple(object, color) + local circle = new('Frame') + circle.BackgroundColor3 = color + circle.BackgroundTransparency = 0.75 + circle.BorderSizePixel = 0 + circle.AnchorPoint = v2(0.5, 0.5) + circle.Size = ud2o() + circle.Position = ud2s(0.5, 0.5) + circle.Parent = object + local rounding = new('UICorner') + rounding.CornerRadius = ud(1) + rounding.Parent = circle + + local abssz = object.AbsoluteSize + local size = max(abssz.X, abssz.Y) * 5/3 + + TweenSize(circle, ud2o(size, size), "Out", "Quart", 0.4) + service.TweenService:Create(circle, ti(0.4, Enum.EasingStyle.Quart, Enum.EasingDirection.In), {BackgroundTransparency = 1}):Play() + + service.Debris:AddItem(circle, 0.4) + end + + local function initGui(self,frame) + local checkbox = frame or create({ + {1,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="Checkbox",Position=UDim2.new(0,3,0,3),Size=UDim2.new(0,16,0,16),}}, + {2,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="ripples",Parent={1},Size=UDim2.new(1,0,1,0),}}, + {3,"Frame",{BackgroundColor3=Color3.new(0.10196078568697,0.10196078568697,0.10196078568697),BorderSizePixel=0,Name="outline",Parent={1},Size=UDim2.new(0,16,0,16),}}, + {4,"Frame",{BackgroundColor3=Color3.new(0.14117647707462,0.14117647707462,0.14117647707462),BorderSizePixel=0,Name="filler",Parent={3},Position=UDim2.new(0,1,0,1),Size=UDim2.new(0,14,0,14),}}, + {5,"Frame",{BackgroundColor3=Color3.new(0.90196084976196,0.90196084976196,0.90196084976196),BorderSizePixel=0,Name="top",Parent={4},Size=UDim2.new(0,16,0,0),}}, + {6,"Frame",{AnchorPoint=Vector2.new(0,1),BackgroundColor3=Color3.new(0.90196084976196,0.90196084976196,0.90196084976196),BorderSizePixel=0,Name="bottom",Parent={4},Position=UDim2.new(0,0,0,14),Size=UDim2.new(0,16,0,0),}}, + {7,"Frame",{BackgroundColor3=Color3.new(0.90196084976196,0.90196084976196,0.90196084976196),BorderSizePixel=0,Name="left",Parent={4},Size=UDim2.new(0,0,0,16),}}, + {8,"Frame",{AnchorPoint=Vector2.new(1,0),BackgroundColor3=Color3.new(0.90196084976196,0.90196084976196,0.90196084976196),BorderSizePixel=0,Name="right",Parent={4},Position=UDim2.new(0,14,0,0),Size=UDim2.new(0,0,0,16),}}, + {9,"Frame",{AnchorPoint=Vector2.new(0.5,0.5),BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,ClipsDescendants=true,Name="checkmark",Parent={4},Position=UDim2.new(0.5,0,0.5,0),Size=UDim2.new(0,0,0,20),}}, + {10,"ImageLabel",{AnchorPoint=Vector2.new(0.5,0.5),BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Image="rbxassetid://6234266378",Parent={9},Position=UDim2.new(0.5,0,0.5,0),ScaleType=3,Size=UDim2.new(0,15,0,11),}}, + {11,"ImageLabel",{AnchorPoint=Vector2.new(0.5,0.5),BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://6401617475",ImageColor3=Color3.new(0.20784313976765,0.69803923368454,0.98431372642517),Name="checkmark2",Parent={4},Position=UDim2.new(0.5,0,0.5,0),Size=UDim2.new(0,12,0,12),Visible=false,}}, + {12,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://6425281788",ImageTransparency=0.20000000298023,Name="middle",Parent={4},ScaleType=2,Size=UDim2.new(1,0,1,0),TileSize=UDim2.new(0,2,0,2),Visible=false,}}, + {13,"UICorner",{CornerRadius=UDim.new(0,2),Parent={3},}}, + }) + local outline = checkbox.outline + local filler = outline.filler + local checkmark = filler.checkmark + local ripples_container = checkbox.ripples + + -- walls + local top, bottom, left, right = filler.top, filler.bottom, filler.left, filler.right + + self.Gui = checkbox + self.GuiElems = { + Top = top, + Bottom = bottom, + Left = left, + Right = right, + Outline = outline, + Filler = filler, + Checkmark = checkmark, + Checkmark2 = filler.checkmark2, + Middle = filler.middle + } + + checkbox.InputBegan:Connect(function(i) + if i.UserInputType == Enum.UserInputType.MouseButton1 then + local release + release = service.UserInputService.InputEnded:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseButton1 then + release:Disconnect() + + if Lib.CheckMouseInGui(checkbox) then + if self.Style == 0 then + ripple(ripples_container, self.Disabled and self.Colors.Disabled or self.Colors.Primary) + end + + if not self.Disabled then + self:SetState(not self.Toggled,true) + else + self:Paint() + end + + self.OnInput:Fire() + end + end + end) + end + end) + + self:Paint() + end + + funcs.Collapse = function(self,anim) + local guiElems = self.GuiElems + if anim then + TweenSize(guiElems.Top, ud2o(14, 14), "In", "Quart", 4/15, true) + TweenSize(guiElems.Bottom, ud2o(14, 14), "In", "Quart", 4/15, true) + TweenSize(guiElems.Left, ud2o(14, 14), "In", "Quart", 4/15, true) + TweenSize(guiElems.Right, ud2o(14, 14), "In", "Quart", 4/15, true) + else + guiElems.Top.Size = ud2o(14, 14) + guiElems.Bottom.Size = ud2o(14, 14) + guiElems.Left.Size = ud2o(14, 14) + guiElems.Right.Size = ud2o(14, 14) + end + end + + funcs.Expand = function(self,anim) + local guiElems = self.GuiElems + if anim then + TweenSize(guiElems.Top, ud2o(14, 0), "InOut", "Quart", 4/15, true) + TweenSize(guiElems.Bottom, ud2o(14, 0), "InOut", "Quart", 4/15, true) + TweenSize(guiElems.Left, ud2o(0, 14), "InOut", "Quart", 4/15, true) + TweenSize(guiElems.Right, ud2o(0, 14), "InOut", "Quart", 4/15, true) + else + guiElems.Top.Size = ud2o(14, 0) + guiElems.Bottom.Size = ud2o(14, 0) + guiElems.Left.Size = ud2o(0, 14) + guiElems.Right.Size = ud2o(0, 14) + end + end + + funcs.Paint = function(self) + local guiElems = self.GuiElems + + if self.Style == 0 then + local color_base = self.Disabled and self.Colors.Disabled + guiElems.Outline.BackgroundColor3 = color_base or (self.Toggled and self.Colors.Primary) or self.Colors.Secondary + local walls_color = color_base or self.Colors.Primary + guiElems.Top.BackgroundColor3 = walls_color + guiElems.Bottom.BackgroundColor3 = walls_color + guiElems.Left.BackgroundColor3 = walls_color + guiElems.Right.BackgroundColor3 = walls_color + else + guiElems.Outline.BackgroundColor3 = self.Disabled and self.Colors.Disabled or self.Colors.Secondary + guiElems.Filler.BackgroundColor3 = self.Disabled and self.Colors.DisabledBackground or self.Colors.Background + guiElems.Checkmark2.ImageColor3 = self.Disabled and self.Colors.DisabledCheck or self.Colors.Primary + end + end + + funcs.SetState = function(self,val,anim) + self.Toggled = val + + if self.OutlineColorTween then self.OutlineColorTween:Cancel() end + local setStateTime = tick() + self.LastSetStateTime = setStateTime + + if self.Toggled then + if self.Style == 0 then + if anim then + self.OutlineColorTween = service.TweenService:Create(self.GuiElems.Outline, ti(4/15, Enum.EasingStyle.Circular, Enum.EasingDirection.Out), {BackgroundColor3 = self.Colors.Primary}) + self.OutlineColorTween:Play() + delay(0.15, function() + if setStateTime ~= self.LastSetStateTime then return end + self:Paint() + TweenSize(self.GuiElems.Checkmark, ud2o(14, 20), "Out", "Bounce", 2/15, true) + end) + else + self.GuiElems.Outline.BackgroundColor3 = self.Colors.Primary + self:Paint() + self.GuiElems.Checkmark.Size = ud2o(14, 20) + end + self:Collapse(anim) + else + self:Paint() + self.GuiElems.Checkmark2.Visible = true + self.GuiElems.Middle.Visible = false + end + else + if self.Style == 0 then + if anim then + self.OutlineColorTween = service.TweenService:Create(self.GuiElems.Outline, ti(4/15, Enum.EasingStyle.Circular, Enum.EasingDirection.In), {BackgroundColor3 = self.Colors.Secondary}) + self.OutlineColorTween:Play() + delay(0.15, function() + if setStateTime ~= self.LastSetStateTime then return end + self:Paint() + TweenSize(self.GuiElems.Checkmark, ud2o(0, 20), "Out", "Quad", 1/15, true) + end) + else + self.GuiElems.Outline.BackgroundColor3 = self.Colors.Secondary + self:Paint() + self.GuiElems.Checkmark.Size = ud2o(0, 20) + end + self:Expand(anim) + else + self:Paint() + self.GuiElems.Checkmark2.Visible = false + self.GuiElems.Middle.Visible = self.Toggled == nil + end + end + end + + local mt = {__index = funcs} + + local function new(style) + local obj = setmetatable({ + Toggled = false, + Disabled = false, + OnInput = Lib.Signal.new(), + Style = style or 0, + Colors = { + Background = c3(36,36,36), + Primary = c3(49,176,230), + Secondary = c3(25,25,25), + Disabled = c3(64,64,64), + DisabledBackground = c3(52,52,52), + DisabledCheck = c3(80,80,80) + } + },mt) + initGui(obj) + return obj + end + + local function fromFrame(frame) + local obj = setmetatable({ + Toggled = false, + Disabled = false, + Colors = { + Background = c3(36,36,36), + Primary = c3(49,176,230), + Secondary = c3(25,25,25), + Disabled = c3(64,64,64), + DisabledBackground = c3(52,52,52) + } + },mt) + initGui(obj,frame) + return obj + end + + return {new = new, fromFrame} + end)() + + Lib.BrickColorPicker = (function() + local funcs = {} + local paletteCount = 0 + local mouse = service.Players.LocalPlayer:GetMouse() + local hexStartX = 4 + local hexSizeX = 27 + local hexTriangleStart = 1 + local hexTriangleSize = 8 + + local bottomColors = { + Color3.fromRGB(17,17,17), + Color3.fromRGB(99,95,98), + Color3.fromRGB(163,162,165), + Color3.fromRGB(205,205,205), + Color3.fromRGB(223,223,222), + Color3.fromRGB(237,234,234), + Color3.fromRGB(27,42,53), + Color3.fromRGB(91,93,105), + Color3.fromRGB(159,161,172), + Color3.fromRGB(202,203,209), + Color3.fromRGB(231,231,236), + Color3.fromRGB(248,248,248) + } + + local function isMouseInHexagon(hex) + local relativeX = mouse.X - hex.AbsolutePosition.X + local relativeY = mouse.Y - hex.AbsolutePosition.Y + if relativeX >= hexStartX and relativeX < hexStartX + hexSizeX then + relativeX = relativeX - 4 + local relativeWidth = (13-math.min(relativeX,26 - relativeX))/13 + if relativeY >= hexTriangleStart + hexTriangleSize*relativeWidth and relativeY < hex.AbsoluteSize.Y - hexTriangleStart - hexTriangleSize*relativeWidth then + return true + end + end + + return false + end + + local function hexInput(self,hex,color) + hex.InputBegan:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseButton1 and isMouseInHexagon(hex) then + self.OnSelect:Fire(color) + self:Close() + end + end) + + hex.InputChanged:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement and isMouseInHexagon(hex) then + self.OnPreview:Fire(color) + end + end) + end + + local function createGui(self) + local gui = create({ + {1,"ScreenGui",{Name="Dex_BrickColor",ResetOnSpawn=false}}, + {2,"Frame",{Active=true,BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BorderColor3=Color3.new(0.1294117718935,0.1294117718935,0.1294117718935),Parent={1},Position=UDim2.new(0.40000000596046,0,0.40000000596046,0),Size=UDim2.new(0,337,0,380),}}, + {3,"TextButton",{BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),BorderSizePixel=0,Font=3,Name="MoreColors",Parent={2},Position=UDim2.new(0,5,1,-30),Size=UDim2.new(1,-10,0,25),Text="More Colors",TextColor3=Color3.new(1,1,1),TextSize=14,}}, + {4,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Image="rbxassetid://1281023007",ImageColor3=Color3.new(0.33333334326744,0.33333334326744,0.49803924560547),Name="Hex",Parent={2},Size=UDim2.new(0,35,0,35),Visible=false,}}, + }) + local colorFrame = gui.Frame + local hex = colorFrame.Hex + + for row = 1,13 do + local columns = math.min(row,14-row)+6 + for column = 1,columns do + local nextColor = BrickColor.palette(paletteCount).Color + local newHex = hex:Clone() + newHex.Position = UDim2.new(0, (column-1)*25-(columns-7)*13+3*26 + 1, 0, (row-1)*23 + 4) + newHex.ImageColor3 = nextColor + newHex.Visible = true + hexInput(self,newHex,nextColor) + newHex.Parent = colorFrame + paletteCount = paletteCount + 1 + end + end + + for column = 1,12 do + local nextColor = bottomColors[column] + local newHex = hex:Clone() + newHex.Position = UDim2.new(0, (column-1)*25-(12-7)*13+3*26 + 3, 0, 308) + newHex.ImageColor3 = nextColor + newHex.Visible = true + hexInput(self,newHex,nextColor) + newHex.Parent = colorFrame + paletteCount = paletteCount + 1 + end + + colorFrame.MoreColors.MouseButton1Click:Connect(function() + self.OnMoreColors:Fire() + self:Close() + end) + + self.Gui = gui + end + + funcs.SetMoreColorsVisible = function(self,vis) + local colorFrame = self.Gui.Frame + colorFrame.Size = UDim2.new(0,337,0,380 - (not vis and 33 or 0)) + colorFrame.MoreColors.Visible = vis + end + + funcs.Show = function(self,x,y,prevColor) + self.PrevColor = prevColor or self.PrevColor + + local reverseY = false + + local x,y = x or mouse.X, y or mouse.Y + local maxX,maxY = mouse.ViewSizeX,mouse.ViewSizeY + Lib.ShowGui(self.Gui) + local sizeX,sizeY = self.Gui.Frame.AbsoluteSize.X,self.Gui.Frame.AbsoluteSize.Y + + if x + sizeX > maxX then x = self.ReverseX and x - sizeX or maxX - sizeX end + if y + sizeY > maxY then reverseY = true end + + local closable = false + if self.CloseEvent then self.CloseEvent:Disconnect() end + self.CloseEvent = service.UserInputService.InputBegan:Connect(function(input) + if not closable or input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + + if not Lib.CheckMouseInGui(self.Gui.Frame) then + self.CloseEvent:Disconnect() + self:Close() + end + end) + + if reverseY then + local newY = y - sizeY - (self.ReverseYOffset or 0) + y = newY >= 0 and newY or 0 + end + + self.Gui.Frame.Position = UDim2.new(0,x,0,y) + + Lib.FastWait() + closable = true + end + + funcs.Close = function(self) + self.Gui.Parent = nil + self.OnCancel:Fire() + end + + local mt = {__index = funcs} + + local function new() + local obj = setmetatable({ + OnPreview = Lib.Signal.new(), + OnSelect = Lib.Signal.new(), + OnCancel = Lib.Signal.new(), + OnMoreColors = Lib.Signal.new(), + PrevColor = Color3.new(0,0,0) + },mt) + createGui(obj) + return obj + end + + return {new = new} + end)() + + Lib.ColorPicker = (function() -- TODO: Convert to newer class model + local funcs = {} + + local function new() + local newMt = setmetatable({},{}) + + newMt.OnSelect = Lib.Signal.new() + newMt.OnCancel = Lib.Signal.new() + newMt.OnPreview = Lib.Signal.new() + + local guiContents = create({ + {1,"Frame",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BorderSizePixel=0,ClipsDescendants=true,Name="Content",Position=UDim2.new(0,0,0,20),Size=UDim2.new(1,0,1,-20),}}, + {2,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Name="BasicColors",Parent={1},Position=UDim2.new(0,5,0,5),Size=UDim2.new(0,180,0,200),}}, + {3,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={2},Position=UDim2.new(0,0,0,-5),Size=UDim2.new(1,0,0,26),Text="Basic Colors",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, + {4,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),Name="Blue",Parent={1},Position=UDim2.new(1,-63,0,255),Size=UDim2.new(0,52,0,16),}}, + {5,"TextBox",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),Font=3,Name="Input",Parent={4},Position=UDim2.new(0,2,0,0),Size=UDim2.new(0,50,0,16),Text="0",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, + {6,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="ArrowFrame",Parent={5},Position=UDim2.new(1,-16,0,0),Size=UDim2.new(0,16,1,0),}}, + {7,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Up",Parent={6},Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, + {8,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={7},Size=UDim2.new(0,16,0,8),}}, + {9,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={8},Position=UDim2.new(0,8,0,3),Size=UDim2.new(0,1,0,1),}}, + {10,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={8},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, + {11,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={8},Position=UDim2.new(0,6,0,5),Size=UDim2.new(0,5,0,1),}}, + {12,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Down",Parent={6},Position=UDim2.new(0,0,0,8),Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, + {13,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={12},Size=UDim2.new(0,16,0,8),}}, + {14,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={13},Position=UDim2.new(0,8,0,5),Size=UDim2.new(0,1,0,1),}}, + {15,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={13},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, + {16,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={13},Position=UDim2.new(0,6,0,3),Size=UDim2.new(0,5,0,1),}}, + {17,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={4},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Blue:",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, + {18,"Frame",{BackgroundColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),BorderSizePixel=0,ClipsDescendants=true,Name="ColorSpaceFrame",Parent={1},Position=UDim2.new(1,-261,0,4),Size=UDim2.new(0,222,0,202),}}, + {19,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),BorderSizePixel=0,Image="rbxassetid://1072518406",Name="ColorSpace",Parent={18},Position=UDim2.new(0,1,0,1),Size=UDim2.new(0,220,0,200),}}, + {20,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="Scope",Parent={19},Position=UDim2.new(0,210,0,190),Size=UDim2.new(0,20,0,20),}}, + {21,"Frame",{BackgroundColor3=Color3.new(0,0,0),BorderSizePixel=0,Name="Line",Parent={20},Position=UDim2.new(0,9,0,0),Size=UDim2.new(0,2,0,20),}}, + {22,"Frame",{BackgroundColor3=Color3.new(0,0,0),BorderSizePixel=0,Name="Line",Parent={20},Position=UDim2.new(0,0,0,9),Size=UDim2.new(0,20,0,2),}}, + {23,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Name="CustomColors",Parent={1},Position=UDim2.new(0,5,0,210),Size=UDim2.new(0,180,0,90),}}, + {24,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={23},Size=UDim2.new(1,0,0,20),Text="Custom Colors (RC = Set)",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, + {25,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),Name="Green",Parent={1},Position=UDim2.new(1,-63,0,233),Size=UDim2.new(0,52,0,16),}}, + {26,"TextBox",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),Font=3,Name="Input",Parent={25},Position=UDim2.new(0,2,0,0),Size=UDim2.new(0,50,0,16),Text="0",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, + {27,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="ArrowFrame",Parent={26},Position=UDim2.new(1,-16,0,0),Size=UDim2.new(0,16,1,0),}}, + {28,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Up",Parent={27},Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, + {29,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={28},Size=UDim2.new(0,16,0,8),}}, + {30,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={29},Position=UDim2.new(0,8,0,3),Size=UDim2.new(0,1,0,1),}}, + {31,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={29},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, + {32,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={29},Position=UDim2.new(0,6,0,5),Size=UDim2.new(0,5,0,1),}}, + {33,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Down",Parent={27},Position=UDim2.new(0,0,0,8),Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, + {34,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={33},Size=UDim2.new(0,16,0,8),}}, + {35,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={34},Position=UDim2.new(0,8,0,5),Size=UDim2.new(0,1,0,1),}}, + {36,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={34},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, + {37,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={34},Position=UDim2.new(0,6,0,3),Size=UDim2.new(0,5,0,1),}}, + {38,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={25},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Green:",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, + {39,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),Name="Hue",Parent={1},Position=UDim2.new(1,-180,0,211),Size=UDim2.new(0,52,0,16),}}, + {40,"TextBox",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),Font=3,Name="Input",Parent={39},Position=UDim2.new(0,2,0,0),Size=UDim2.new(0,50,0,16),Text="0",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, + {41,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="ArrowFrame",Parent={40},Position=UDim2.new(1,-16,0,0),Size=UDim2.new(0,16,1,0),}}, + {42,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Up",Parent={41},Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, + {43,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={42},Size=UDim2.new(0,16,0,8),}}, + {44,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={43},Position=UDim2.new(0,8,0,3),Size=UDim2.new(0,1,0,1),}}, + {45,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={43},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, + {46,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={43},Position=UDim2.new(0,6,0,5),Size=UDim2.new(0,5,0,1),}}, + {47,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Down",Parent={41},Position=UDim2.new(0,0,0,8),Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, + {48,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={47},Size=UDim2.new(0,16,0,8),}}, + {49,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={48},Position=UDim2.new(0,8,0,5),Size=UDim2.new(0,1,0,1),}}, + {50,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={48},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, + {51,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={48},Position=UDim2.new(0,6,0,3),Size=UDim2.new(0,5,0,1),}}, + {52,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={39},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Hue:",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, + {53,"Frame",{BackgroundColor3=Color3.new(1,1,1),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),Name="Preview",Parent={1},Position=UDim2.new(1,-260,0,211),Size=UDim2.new(0,35,1,-245),}}, + {54,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),Name="Red",Parent={1},Position=UDim2.new(1,-63,0,211),Size=UDim2.new(0,52,0,16),}}, + {55,"TextBox",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),Font=3,Name="Input",Parent={54},Position=UDim2.new(0,2,0,0),Size=UDim2.new(0,50,0,16),Text="0",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, + {56,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="ArrowFrame",Parent={55},Position=UDim2.new(1,-16,0,0),Size=UDim2.new(0,16,1,0),}}, + {57,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Up",Parent={56},Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, + {58,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={57},Size=UDim2.new(0,16,0,8),}}, + {59,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={58},Position=UDim2.new(0,8,0,3),Size=UDim2.new(0,1,0,1),}}, + {60,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={58},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, + {61,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={58},Position=UDim2.new(0,6,0,5),Size=UDim2.new(0,5,0,1),}}, + {62,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Down",Parent={56},Position=UDim2.new(0,0,0,8),Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, + {63,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={62},Size=UDim2.new(0,16,0,8),}}, + {64,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={63},Position=UDim2.new(0,8,0,5),Size=UDim2.new(0,1,0,1),}}, + {65,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={63},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, + {66,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={63},Position=UDim2.new(0,6,0,3),Size=UDim2.new(0,5,0,1),}}, + {67,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={54},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Red:",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, + {68,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),Name="Sat",Parent={1},Position=UDim2.new(1,-180,0,233),Size=UDim2.new(0,52,0,16),}}, + {69,"TextBox",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),Font=3,Name="Input",Parent={68},Position=UDim2.new(0,2,0,0),Size=UDim2.new(0,50,0,16),Text="0",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, + {70,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="ArrowFrame",Parent={69},Position=UDim2.new(1,-16,0,0),Size=UDim2.new(0,16,1,0),}}, + {71,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Up",Parent={70},Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, + {72,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={71},Size=UDim2.new(0,16,0,8),}}, + {73,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={72},Position=UDim2.new(0,8,0,3),Size=UDim2.new(0,1,0,1),}}, + {74,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={72},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, + {75,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={72},Position=UDim2.new(0,6,0,5),Size=UDim2.new(0,5,0,1),}}, + {76,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Down",Parent={70},Position=UDim2.new(0,0,0,8),Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, + {77,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={76},Size=UDim2.new(0,16,0,8),}}, + {78,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={77},Position=UDim2.new(0,8,0,5),Size=UDim2.new(0,1,0,1),}}, + {79,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={77},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, + {80,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={77},Position=UDim2.new(0,6,0,3),Size=UDim2.new(0,5,0,1),}}, + {81,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={68},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Sat:",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, + {82,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),Name="Val",Parent={1},Position=UDim2.new(1,-180,0,255),Size=UDim2.new(0,52,0,16),}}, + {83,"TextBox",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),Font=3,Name="Input",Parent={82},Position=UDim2.new(0,2,0,0),Size=UDim2.new(0,50,0,16),Text="255",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, + {84,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="ArrowFrame",Parent={83},Position=UDim2.new(1,-16,0,0),Size=UDim2.new(0,16,1,0),}}, + {85,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Up",Parent={84},Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, + {86,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={85},Size=UDim2.new(0,16,0,8),}}, + {87,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={86},Position=UDim2.new(0,8,0,3),Size=UDim2.new(0,1,0,1),}}, + {88,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={86},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, + {89,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={86},Position=UDim2.new(0,6,0,5),Size=UDim2.new(0,5,0,1),}}, + {90,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Down",Parent={84},Position=UDim2.new(0,0,0,8),Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, + {91,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={90},Size=UDim2.new(0,16,0,8),}}, + {92,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={91},Position=UDim2.new(0,8,0,5),Size=UDim2.new(0,1,0,1),}}, + {93,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={91},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, + {94,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={91},Position=UDim2.new(0,6,0,3),Size=UDim2.new(0,5,0,1),}}, + {95,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={82},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Val:",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, + {96,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),Font=3,Name="Cancel",Parent={1},Position=UDim2.new(1,-105,1,-28),Size=UDim2.new(0,100,0,25),Text="Cancel",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,}}, + {97,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),Font=3,Name="Ok",Parent={1},Position=UDim2.new(1,-210,1,-28),Size=UDim2.new(0,100,0,25),Text="OK",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,}}, + {98,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),Image="rbxassetid://1072518502",Name="ColorStrip",Parent={1},Position=UDim2.new(1,-30,0,5),Size=UDim2.new(0,13,0,200),}}, + {99,"Frame",{BackgroundColor3=Color3.new(0.3137255012989,0.3137255012989,0.3137255012989),BackgroundTransparency=1,BorderSizePixel=0,Name="ArrowFrame",Parent={1},Position=UDim2.new(1,-16,0,1),Size=UDim2.new(0,5,0,208),}}, + {100,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={99},Position=UDim2.new(0,-2,0,-4),Size=UDim2.new(0,8,0,16),}}, + {101,"Frame",{BackgroundColor3=Color3.new(0,0,0),BorderSizePixel=0,Parent={100},Position=UDim2.new(0,2,0,8),Size=UDim2.new(0,1,0,1),}}, + {102,"Frame",{BackgroundColor3=Color3.new(0,0,0),BorderSizePixel=0,Parent={100},Position=UDim2.new(0,3,0,7),Size=UDim2.new(0,1,0,3),}}, + {103,"Frame",{BackgroundColor3=Color3.new(0,0,0),BorderSizePixel=0,Parent={100},Position=UDim2.new(0,4,0,6),Size=UDim2.new(0,1,0,5),}}, + {104,"Frame",{BackgroundColor3=Color3.new(0,0,0),BorderSizePixel=0,Parent={100},Position=UDim2.new(0,5,0,5),Size=UDim2.new(0,1,0,7),}}, + {105,"Frame",{BackgroundColor3=Color3.new(0,0,0),BorderSizePixel=0,Parent={100},Position=UDim2.new(0,6,0,4),Size=UDim2.new(0,1,0,9),}}, + }) + local window = Lib.Window.new() + window.Resizable = false + window.Alignable = false + window:SetTitle("Color Picker") + window:Resize(450,330) + for i,v in pairs(guiContents:GetChildren()) do + v.Parent = window.GuiElems.Content + end + newMt.Window = window + newMt.Gui = window.Gui + local pickerGui = window.Gui.Main + local pickerTopBar = pickerGui.TopBar + local pickerFrame = pickerGui.Content + local colorSpace = pickerFrame.ColorSpaceFrame.ColorSpace + local colorStrip = pickerFrame.ColorStrip + local previewFrame = pickerFrame.Preview + local basicColorsFrame = pickerFrame.BasicColors + local customColorsFrame = pickerFrame.CustomColors + local okButton = pickerFrame.Ok + local cancelButton = pickerFrame.Cancel + local closeButton = pickerTopBar.Close + + local colorScope = colorSpace.Scope + local colorArrow = pickerFrame.ArrowFrame.Arrow + + local hueInput = pickerFrame.Hue.Input + local satInput = pickerFrame.Sat.Input + local valInput = pickerFrame.Val.Input + + local redInput = pickerFrame.Red.Input + local greenInput = pickerFrame.Green.Input + local blueInput = pickerFrame.Blue.Input + + local user = game:GetService("UserInputService") + local mouse = game:GetService("Players").LocalPlayer:GetMouse() + + local hue,sat,val = 0,0,1 + local red,green,blue = 1,1,1 + local chosenColor = Color3.new(0,0,0) + + local basicColors = {Color3.new(0,0,0),Color3.new(0.66666668653488,0,0),Color3.new(0,0.33333334326744,0),Color3.new(0.66666668653488,0.33333334326744,0),Color3.new(0,0.66666668653488,0),Color3.new(0.66666668653488,0.66666668653488,0),Color3.new(0,1,0),Color3.new(0.66666668653488,1,0),Color3.new(0,0,0.49803924560547),Color3.new(0.66666668653488,0,0.49803924560547),Color3.new(0,0.33333334326744,0.49803924560547),Color3.new(0.66666668653488,0.33333334326744,0.49803924560547),Color3.new(0,0.66666668653488,0.49803924560547),Color3.new(0.66666668653488,0.66666668653488,0.49803924560547),Color3.new(0,1,0.49803924560547),Color3.new(0.66666668653488,1,0.49803924560547),Color3.new(0,0,1),Color3.new(0.66666668653488,0,1),Color3.new(0,0.33333334326744,1),Color3.new(0.66666668653488,0.33333334326744,1),Color3.new(0,0.66666668653488,1),Color3.new(0.66666668653488,0.66666668653488,1),Color3.new(0,1,1),Color3.new(0.66666668653488,1,1),Color3.new(0.33333334326744,0,0),Color3.new(1,0,0),Color3.new(0.33333334326744,0.33333334326744,0),Color3.new(1,0.33333334326744,0),Color3.new(0.33333334326744,0.66666668653488,0),Color3.new(1,0.66666668653488,0),Color3.new(0.33333334326744,1,0),Color3.new(1,1,0),Color3.new(0.33333334326744,0,0.49803924560547),Color3.new(1,0,0.49803924560547),Color3.new(0.33333334326744,0.33333334326744,0.49803924560547),Color3.new(1,0.33333334326744,0.49803924560547),Color3.new(0.33333334326744,0.66666668653488,0.49803924560547),Color3.new(1,0.66666668653488,0.49803924560547),Color3.new(0.33333334326744,1,0.49803924560547),Color3.new(1,1,0.49803924560547),Color3.new(0.33333334326744,0,1),Color3.new(1,0,1),Color3.new(0.33333334326744,0.33333334326744,1),Color3.new(1,0.33333334326744,1),Color3.new(0.33333334326744,0.66666668653488,1),Color3.new(1,0.66666668653488,1),Color3.new(0.33333334326744,1,1),Color3.new(1,1,1)} + local customColors = {} + + local function updateColor(noupdate) + local relativeX,relativeY,relativeStripY = 219 - hue*219, 199 - sat*199, 199 - val*199 + local hsvColor = Color3.fromHSV(hue,sat,val) + + if noupdate == 2 or not noupdate then + hueInput.Text = tostring(math.ceil(359*hue)) + satInput.Text = tostring(math.ceil(255*sat)) + valInput.Text = tostring(math.floor(255*val)) + end + if noupdate == 1 or not noupdate then + redInput.Text = tostring(math.floor(255*red)) + greenInput.Text = tostring(math.floor(255*green)) + blueInput.Text = tostring(math.floor(255*blue)) + end + + chosenColor = Color3.new(red,green,blue) + + colorScope.Position = UDim2.new(0,relativeX-9,0,relativeY-9) + colorStrip.ImageColor3 = Color3.fromHSV(hue,sat,1) + colorArrow.Position = UDim2.new(0,-2,0,relativeStripY-4) + previewFrame.BackgroundColor3 = chosenColor + + newMt.Color = chosenColor + newMt.OnPreview:Fire(chosenColor) + end + + local function colorSpaceInput() + local relativeX = mouse.X - colorSpace.AbsolutePosition.X + local relativeY = mouse.Y - colorSpace.AbsolutePosition.Y + + if relativeX < 0 then relativeX = 0 elseif relativeX > 219 then relativeX = 219 end + if relativeY < 0 then relativeY = 0 elseif relativeY > 199 then relativeY = 199 end + + hue = (219 - relativeX)/219 + sat = (199 - relativeY)/199 + + local hsvColor = Color3.fromHSV(hue,sat,val) + red,green,blue = hsvColor.r,hsvColor.g,hsvColor.b + + updateColor() + end + + local function colorStripInput() + local relativeY = mouse.Y - colorStrip.AbsolutePosition.Y + + if relativeY < 0 then relativeY = 0 elseif relativeY > 199 then relativeY = 199 end + + val = (199 - relativeY)/199 + + local hsvColor = Color3.fromHSV(hue,sat,val) + red,green,blue = hsvColor.r,hsvColor.g,hsvColor.b + + updateColor() + end + + local function hookButtons(frame,func) + frame.ArrowFrame.Up.InputBegan:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + frame.ArrowFrame.Up.BackgroundTransparency = 0.5 + elseif input.UserInputType == Enum.UserInputType.MouseButton1 then + local releaseEvent,runEvent + + local startTime = tick() + local pressing = true + local startNum = tonumber(frame.Text) + + if not startNum then return end + + releaseEvent = user.InputEnded:Connect(function(input) + if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + releaseEvent:Disconnect() + pressing = false + end) + + startNum = startNum + 1 + func(startNum) + while pressing do + if tick()-startTime > 0.3 then + startNum = startNum + 1 + func(startNum) + end + wait(0.1) + end + end + end) + + frame.ArrowFrame.Up.InputEnded:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + frame.ArrowFrame.Up.BackgroundTransparency = 1 + end + end) + + frame.ArrowFrame.Down.InputBegan:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + frame.ArrowFrame.Down.BackgroundTransparency = 0.5 + elseif input.UserInputType == Enum.UserInputType.MouseButton1 then + local releaseEvent,runEvent + + local startTime = tick() + local pressing = true + local startNum = tonumber(frame.Text) + + if not startNum then return end + + releaseEvent = user.InputEnded:Connect(function(input) + if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + releaseEvent:Disconnect() + pressing = false + end) + + startNum = startNum - 1 + func(startNum) + while pressing do + if tick()-startTime > 0.3 then + startNum = startNum - 1 + func(startNum) + end + wait(0.1) + end + end + end) + + frame.ArrowFrame.Down.InputEnded:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + frame.ArrowFrame.Down.BackgroundTransparency = 1 + end + end) + end + + colorSpace.InputBegan:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseButton1 then + local releaseEvent,mouseEvent + + releaseEvent = user.InputEnded:Connect(function(input) + if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + releaseEvent:Disconnect() + mouseEvent:Disconnect() + end) + + mouseEvent = user.InputChanged:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + colorSpaceInput() + end + end) + + colorSpaceInput() + end + end) + + colorStrip.InputBegan:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseButton1 then + local releaseEvent,mouseEvent + + releaseEvent = user.InputEnded:Connect(function(input) + if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + releaseEvent:Disconnect() + mouseEvent:Disconnect() + end) + + mouseEvent = user.InputChanged:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + colorStripInput() + end + end) + + colorStripInput() + end + end) + + local function updateHue(str) + local num = tonumber(str) + if num then + hue = math.clamp(math.floor(num),0,359)/359 + local hsvColor = Color3.fromHSV(hue,sat,val) + red,green,blue = hsvColor.r,hsvColor.g,hsvColor.b + hueInput.Text = tostring(hue*359) + updateColor(1) + end + end + hueInput.FocusLost:Connect(function() updateHue(hueInput.Text) end) hookButtons(hueInput,updateHue) + + local function updateSat(str) + local num = tonumber(str) + if num then + sat = math.clamp(math.floor(num),0,255)/255 + local hsvColor = Color3.fromHSV(hue,sat,val) + red,green,blue = hsvColor.r,hsvColor.g,hsvColor.b + satInput.Text = tostring(sat*255) + updateColor(1) + end + end + satInput.FocusLost:Connect(function() updateSat(satInput.Text) end) hookButtons(satInput,updateSat) + + local function updateVal(str) + local num = tonumber(str) + if num then + val = math.clamp(math.floor(num),0,255)/255 + local hsvColor = Color3.fromHSV(hue,sat,val) + red,green,blue = hsvColor.r,hsvColor.g,hsvColor.b + valInput.Text = tostring(val*255) + updateColor(1) + end + end + valInput.FocusLost:Connect(function() updateVal(valInput.Text) end) hookButtons(valInput,updateVal) + + local function updateRed(str) + local num = tonumber(str) + if num then + red = math.clamp(math.floor(num),0,255)/255 + local newColor = Color3.new(red,green,blue) + hue,sat,val = newColor:ToHSV() + redInput.Text = tostring(red*255) + updateColor(2) + end + end + redInput.FocusLost:Connect(function() updateRed(redInput.Text) end) hookButtons(redInput,updateRed) + + local function updateGreen(str) + local num = tonumber(str) + if num then + green = math.clamp(math.floor(num),0,255)/255 + local newColor = Color3.new(red,green,blue) + hue,sat,val = newColor:ToHSV() + greenInput.Text = tostring(green*255) + updateColor(2) + end + end + greenInput.FocusLost:Connect(function() updateGreen(greenInput.Text) end) hookButtons(greenInput,updateGreen) + + local function updateBlue(str) + local num = tonumber(str) + if num then + blue = math.clamp(math.floor(num),0,255)/255 + local newColor = Color3.new(red,green,blue) + hue,sat,val = newColor:ToHSV() + blueInput.Text = tostring(blue*255) + updateColor(2) + end + end + blueInput.FocusLost:Connect(function() updateBlue(blueInput.Text) end) hookButtons(blueInput,updateBlue) + + local colorChoice = Instance.new("TextButton") + colorChoice.Name = "Choice" + colorChoice.Size = UDim2.new(0,25,0,18) + colorChoice.BorderColor3 = Color3.fromRGB(55,55,55) + colorChoice.Text = "" + colorChoice.AutoButtonColor = false + + local row = 0 + local column = 0 + for i,v in pairs(basicColors) do + local newColor = colorChoice:Clone() + newColor.BackgroundColor3 = v + newColor.Position = UDim2.new(0,1 + 30*column,0,21 + 23*row) + + newColor.MouseButton1Click:Connect(function() + red,green,blue = v.r,v.g,v.b + local newColor = Color3.new(red,green,blue) + hue,sat,val = newColor:toHSV() + updateColor() + end) + + newColor.Parent = basicColorsFrame + column = column + 1 + if column == 6 then row = row + 1 column = 0 end + end + + row = 0 + column = 0 + for i = 1,12 do + local color = customColors[i] or Color3.new(0,0,0) + local newColor = colorChoice:Clone() + newColor.BackgroundColor3 = color + newColor.Position = UDim2.new(0,1 + 30*column,0,20 + 23*row) + + newColor.MouseButton1Click:Connect(function() + local curColor = (customColors[i] or Color3.new(0,0,0)) :: Color3 + red,green,blue = curColor.r,curColor.g,curColor.b + hue,sat,val = curColor:ToHSV() + updateColor() + end) + + newColor.MouseButton2Click:Connect(function() + customColors[i] = chosenColor + newColor.BackgroundColor3 = chosenColor + end) + + newColor.Parent = customColorsFrame + column = column + 1 + if column == 6 then row = row + 1 column = 0 end + end + + okButton.MouseButton1Click:Connect(function() newMt.OnSelect:Fire(chosenColor) window:Close() end) + okButton.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then okButton.BackgroundTransparency = 0.4 end end) + okButton.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then okButton.BackgroundTransparency = 0 end end) + + cancelButton.MouseButton1Click:Connect(function() newMt.OnCancel:Fire() window:Close() end) + cancelButton.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then cancelButton.BackgroundTransparency = 0.4 end end) + cancelButton.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then cancelButton.BackgroundTransparency = 0 end end) + + updateColor() + + newMt.SetColor = function(self,color: Color3) + red,green,blue = color.R,color.G,color.B + hue,sat,val = color:ToHSV() + updateColor() + end + + newMt.Show = function(self) + self.Window:Show() + end + + return newMt + end + + return {new = new} + end)() + + Lib.NumberSequenceEditor = (function() + local function new() -- TODO: Convert to newer class model + local newMt = setmetatable({},{}) + newMt.OnSelect = Lib.Signal.new() + newMt.OnCancel = Lib.Signal.new() + newMt.OnPreview = Lib.Signal.new() + + local guiContents = create({ + {1,"Frame",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BorderSizePixel=0,ClipsDescendants=true,Name="Content",Position=UDim2.new(0,0,0,20),Size=UDim2.new(1,0,1,-20),}}, + {2,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),Name="Time",Parent={1},Position=UDim2.new(0,40,0,210),Size=UDim2.new(0,60,0,20),}}, + {3,"TextBox",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),ClipsDescendants=true,Font=3,Name="Input",Parent={2},Position=UDim2.new(0,2,0,0),Size=UDim2.new(0,58,0,20),Text="0",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, + {4,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={2},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Time",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, + {5,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),Font=3,Name="Close",Parent={1},Position=UDim2.new(1,-90,0,210),Size=UDim2.new(0,80,0,20),Text="Close",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,}}, + {6,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),Font=3,Name="Reset",Parent={1},Position=UDim2.new(1,-180,0,210),Size=UDim2.new(0,80,0,20),Text="Reset",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,}}, + {7,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),Font=3,Name="Delete",Parent={1},Position=UDim2.new(0,380,0,210),Size=UDim2.new(0,80,0,20),Text="Delete",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,}}, + {8,"Frame",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),Name="NumberLineOutlines",Parent={1},Position=UDim2.new(0,10,0,20),Size=UDim2.new(1,-20,0,170),}}, + {9,"Frame",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),Name="NumberLine",Parent={1},Position=UDim2.new(0,10,0,20),Size=UDim2.new(1,-20,0,170),}}, + {10,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),Name="Value",Parent={1},Position=UDim2.new(0,170,0,210),Size=UDim2.new(0,60,0,20),}}, + {11,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={10},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Value",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, + {12,"TextBox",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),ClipsDescendants=true,Font=3,Name="Input",Parent={10},Position=UDim2.new(0,2,0,0),Size=UDim2.new(0,58,0,20),Text="0",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, + {13,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),Name="Envelope",Parent={1},Position=UDim2.new(0,300,0,210),Size=UDim2.new(0,60,0,20),}}, + {14,"TextBox",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),ClipsDescendants=true,Font=3,Name="Input",Parent={13},Position=UDim2.new(0,2,0,0),Size=UDim2.new(0,58,0,20),Text="0",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, + {15,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={13},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Envelope",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, + }) + local window = Lib.Window.new() + window.Resizable = false + window:Resize(680,265) + window:SetTitle("NumberSequence Editor") + newMt.Window = window + newMt.Gui = window.Gui + for i,v in pairs(guiContents:GetChildren()) do + v.Parent = window.GuiElems.Content + end + local gui = window.Gui + local pickerGui = gui.Main + local pickerTopBar = pickerGui.TopBar + local pickerFrame = pickerGui.Content + local numberLine = pickerFrame.NumberLine + local numberLineOutlines = pickerFrame.NumberLineOutlines + local timeBox = pickerFrame.Time.Input + local valueBox = pickerFrame.Value.Input + local envelopeBox = pickerFrame.Envelope.Input + local deleteButton = pickerFrame.Delete + local resetButton = pickerFrame.Reset + local closeButton = pickerFrame.Close + local topClose = pickerTopBar.Close + + local points = {{1,0,3},{8,0.05,1},{5,0.6,2},{4,0.7,4},{6,1,4}} + local lines = {} + local eLines = {} + local beginPoint = points[1] + local endPoint = points[#points] + local currentlySelected = nil + local currentPoint = nil + local resetSequence = nil + + local user = game:GetService("UserInputService") + local mouse = game:GetService("Players").LocalPlayer:GetMouse() + + for i = 2,10 do + local newLine = Instance.new("Frame") + newLine.BackgroundTransparency = 0.5 + newLine.BackgroundColor3 = Color3.new(96/255,96/255,96/255) + newLine.BorderSizePixel = 0 + newLine.Size = UDim2.new(0,1,1,0) + newLine.Position = UDim2.new((i-1)/(11-1),0,0,0) + newLine.Parent = numberLineOutlines + end + + for i = 2,4 do + local newLine = Instance.new("Frame") + newLine.BackgroundTransparency = 0.5 + newLine.BackgroundColor3 = Color3.new(96/255,96/255,96/255) + newLine.BorderSizePixel = 0 + newLine.Size = UDim2.new(1,0,0,1) + newLine.Position = UDim2.new(0,0,(i-1)/(5-1),0) + newLine.Parent = numberLineOutlines + end + + local lineTemp = Instance.new("Frame") + lineTemp.BackgroundColor3 = Color3.new(0,0,0) + lineTemp.BorderSizePixel = 0 + lineTemp.Size = UDim2.new(0,1,0,1) + + local sequenceLine = Instance.new("Frame") + sequenceLine.BackgroundColor3 = Color3.new(0,0,0) + sequenceLine.BorderSizePixel = 0 + sequenceLine.Size = UDim2.new(0,1,0,0) + + for i = 1,numberLine.AbsoluteSize.X do + local line = sequenceLine:Clone() + eLines[i] = line + line.Name = "E"..tostring(i) + line.BackgroundTransparency = 0.5 + line.BackgroundColor3 = Color3.new(199/255,44/255,28/255) + line.Position = UDim2.new(0,i-1,0,0) + line.Parent = numberLine + end + + for i = 1,numberLine.AbsoluteSize.X do + local line = sequenceLine:Clone() + lines[i] = line + line.Name = tostring(i) + line.Position = UDim2.new(0,i-1,0,0) + line.Parent = numberLine + end + + local envelopeDrag = Instance.new("Frame") + envelopeDrag.BackgroundTransparency = 1 + envelopeDrag.BackgroundColor3 = Color3.new(0,0,0) + envelopeDrag.BorderSizePixel = 0 + envelopeDrag.Size = UDim2.new(0,7,0,20) + envelopeDrag.Visible = false + envelopeDrag.ZIndex = 2 + local envelopeDragLine = Instance.new("Frame",envelopeDrag) + envelopeDragLine.Name = "Line" + envelopeDragLine.BackgroundColor3 = Color3.new(0,0,0) + envelopeDragLine.BorderSizePixel = 0 + envelopeDragLine.Position = UDim2.new(0,3,0,0) + envelopeDragLine.Size = UDim2.new(0,1,0,20) + envelopeDragLine.ZIndex = 2 + + local envelopeDragTop,envelopeDragBottom = envelopeDrag:Clone(),envelopeDrag:Clone() + envelopeDragTop.Parent = numberLine + envelopeDragBottom.Parent = numberLine + + local function buildSequence() + local newPoints = {} + for i,v in pairs(points) do + table.insert(newPoints,NumberSequenceKeypoint.new(v[2],v[1],v[3])) + end + newMt.Sequence = NumberSequence.new(newPoints) + newMt.OnSelect:Fire(newMt.Sequence) + end + + local function round(num,places) + local multi = 10^places + return math.floor(num*multi + 0.5)/multi + end + + local function updateInputs(point) + if point then + currentPoint = point + local rawT,rawV,rawE = point[2],point[1],point[3] + timeBox.Text = round(rawT,(rawT < 0.01 and 5) or (rawT < 0.1 and 4) or 3) + valueBox.Text = round(rawV,(rawV < 0.01 and 5) or (rawV < 0.1 and 4) or (rawV < 1 and 3) or 2) + envelopeBox.Text = round(rawE,(rawE < 0.01 and 5) or (rawE < 0.1 and 4) or (rawV < 1 and 3) or 2) + + local envelopeDistance = numberLine.AbsoluteSize.Y*(point[3]/10) + envelopeDragTop.Position = UDim2.new(0,point[4].Position.X.Offset-1,0,point[4].Position.Y.Offset-envelopeDistance-17) + envelopeDragTop.Visible = true + envelopeDragBottom.Position = UDim2.new(0,point[4].Position.X.Offset-1,0,point[4].Position.Y.Offset+envelopeDistance+2) + envelopeDragBottom.Visible = true + end + end + + envelopeDragTop.InputBegan:Connect(function(input) + if input.UserInputType ~= Enum.UserInputType.MouseButton1 or not currentPoint or Lib.CheckMouseInGui(currentPoint[4].Select) then return end + local mouseEvent,releaseEvent + local maxSize = numberLine.AbsoluteSize.Y + + local mouseDelta = math.abs(envelopeDragTop.AbsolutePosition.Y - mouse.Y) + + envelopeDragTop.Line.Position = UDim2.new(0,2,0,0) + envelopeDragTop.Line.Size = UDim2.new(0,3,0,20) + + releaseEvent = user.InputEnded:Connect(function(input) + if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + mouseEvent:Disconnect() + releaseEvent:Disconnect() + envelopeDragTop.Line.Position = UDim2.new(0,3,0,0) + envelopeDragTop.Line.Size = UDim2.new(0,1,0,20) + end) + + mouseEvent = user.InputChanged:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + local topDiff = (currentPoint[4].AbsolutePosition.Y+2)-(mouse.Y-mouseDelta)-19 + local newEnvelope = 10*(math.max(topDiff,0)/maxSize) + local maxEnvelope = math.min(currentPoint[1],10-currentPoint[1]) + currentPoint[3] = math.min(newEnvelope,maxEnvelope) + newMt:Redraw() + buildSequence() + updateInputs(currentPoint) + end + end) + end) + + envelopeDragBottom.InputBegan:Connect(function(input) + if input.UserInputType ~= Enum.UserInputType.MouseButton1 or not currentPoint or Lib.CheckMouseInGui(currentPoint[4].Select) then return end + local mouseEvent,releaseEvent + local maxSize = numberLine.AbsoluteSize.Y + + local mouseDelta = math.abs(envelopeDragBottom.AbsolutePosition.Y - mouse.Y) + + envelopeDragBottom.Line.Position = UDim2.new(0,2,0,0) + envelopeDragBottom.Line.Size = UDim2.new(0,3,0,20) + + releaseEvent = user.InputEnded:Connect(function(input) + if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + mouseEvent:Disconnect() + releaseEvent:Disconnect() + envelopeDragBottom.Line.Position = UDim2.new(0,3,0,0) + envelopeDragBottom.Line.Size = UDim2.new(0,1,0,20) + end) + + mouseEvent = user.InputChanged:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + local bottomDiff = (mouse.Y+(20-mouseDelta))-(currentPoint[4].AbsolutePosition.Y+2)-19 + local newEnvelope = 10*(math.max(bottomDiff,0)/maxSize) + local maxEnvelope = math.min(currentPoint[1],10-currentPoint[1]) + currentPoint[3] = math.min(newEnvelope,maxEnvelope) + newMt:Redraw() + buildSequence() + updateInputs(currentPoint) + end + end) + end) + + local function placePoint(point) + local newPoint = Instance.new("Frame") + newPoint.Name = "Point" + newPoint.BorderSizePixel = 0 + newPoint.Size = UDim2.new(0,5,0,5) + newPoint.Position = UDim2.new(0,math.floor((numberLine.AbsoluteSize.X-1) * point[2])-2,0,numberLine.AbsoluteSize.Y*(10-point[1])/10-2) + newPoint.BackgroundColor3 = Color3.new(0,0,0) + + local newSelect = Instance.new("Frame") + newSelect.Name = "Select" + newSelect.BackgroundTransparency = 1 + newSelect.BackgroundColor3 = Color3.new(199/255,44/255,28/255) + newSelect.Position = UDim2.new(0,-2,0,-2) + newSelect.Size = UDim2.new(0,9,0,9) + newSelect.Parent = newPoint + + newPoint.Parent = numberLine + + newSelect.InputBegan:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + for i,v in pairs(points) do v[4].Select.BackgroundTransparency = 1 end + newSelect.BackgroundTransparency = 0 + updateInputs(point) + end + if input.UserInputType == Enum.UserInputType.MouseButton1 and not currentlySelected then + currentPoint = point + local mouseEvent,releaseEvent + currentlySelected = true + newSelect.BackgroundColor3 = Color3.new(249/255,191/255,59/255) + + local oldEnvelope = point[3] + + releaseEvent = user.InputEnded:Connect(function(input) + if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + mouseEvent:Disconnect() + releaseEvent:Disconnect() + currentlySelected = nil + newSelect.BackgroundColor3 = Color3.new(199/255,44/255,28/255) + end) + + mouseEvent = user.InputChanged:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + local maxX = numberLine.AbsoluteSize.X-1 + local relativeX = mouse.X - numberLine.AbsolutePosition.X + if relativeX < 0 then relativeX = 0 end + if relativeX > maxX then relativeX = maxX end + local maxY = numberLine.AbsoluteSize.Y-1 + local relativeY = mouse.Y - numberLine.AbsolutePosition.Y + if relativeY < 0 then relativeY = 0 end + if relativeY > maxY then relativeY = maxY end + if point ~= beginPoint and point ~= endPoint then + point[2] = relativeX/maxX + end + point[1] = 10-(relativeY/maxY)*10 + local maxEnvelope = math.min(point[1],10-point[1]) + point[3] = math.min(oldEnvelope,maxEnvelope) + newMt:Redraw() + updateInputs(point) + for i,v in pairs(points) do v[4].Select.BackgroundTransparency = 1 end + newSelect.BackgroundTransparency = 0 + buildSequence() + end + end) + end + end) + + return newPoint + end + + local function placePoints() + for i,v in pairs(points) do + v[4] = placePoint(v) + end + end + + local function redraw(self) + local numberLineSize = numberLine.AbsoluteSize + table.sort(points,function(a,b) return a[2] < b[2] end) + for i,v in pairs(points) do + v[4].Position = UDim2.new(0,math.floor((numberLineSize.X-1) * v[2])-2,0,(numberLineSize.Y-1)*(10-v[1])/10-2) + end + lines[1].Size = UDim2.new(0,1,0,0) + for i = 1,#points-1 do + local fromPoint = points[i] + local toPoint = points[i+1] + local deltaY = toPoint[4].Position.Y.Offset-fromPoint[4].Position.Y.Offset + local deltaX = toPoint[4].Position.X.Offset-fromPoint[4].Position.X.Offset + local slope = deltaY/deltaX + + local fromEnvelope = fromPoint[3] + local nextEnvelope = toPoint[3] + + local currentRise = math.abs(slope) + local totalRise = 0 + local maxRise = math.abs(toPoint[4].Position.Y.Offset-fromPoint[4].Position.Y.Offset) + + for lineCount = math.min(fromPoint[4].Position.X.Offset+1,toPoint[4].Position.X.Offset),toPoint[4].Position.X.Offset do + if deltaX == 0 and deltaY == 0 then return end + local riseNow = math.floor(currentRise) + local line = lines[lineCount+3] + if line then + if totalRise+riseNow > maxRise then riseNow = maxRise-totalRise end + if math.sign(slope) == -1 then + line.Position = UDim2.new(0,lineCount+2,0,fromPoint[4].Position.Y.Offset + -(totalRise+riseNow)+2) + else + line.Position = UDim2.new(0,lineCount+2,0,fromPoint[4].Position.Y.Offset + totalRise+2) + end + line.Size = UDim2.new(0,1,0,math.max(riseNow,1)) + end + totalRise = totalRise + riseNow + currentRise = currentRise - riseNow + math.abs(slope) + + local envPercent = (lineCount-fromPoint[4].Position.X.Offset)/(toPoint[4].Position.X.Offset-fromPoint[4].Position.X.Offset) + local envLerp = fromEnvelope+(nextEnvelope-fromEnvelope)*envPercent + local relativeSize = (envLerp/10)*numberLineSize.Y + + local line = eLines[lineCount + 3] + if line then + line.Position = UDim2.new(0,lineCount+2,0,lines[lineCount+3].Position.Y.Offset-math.floor(relativeSize)) + line.Size = UDim2.new(0,1,0,math.floor(relativeSize*2)) + end + end + end + end + newMt.Redraw = redraw + + local function loadSequence(self,seq) + resetSequence = seq + for i,v in pairs(points) do if v[4] then v[4]:Destroy() end end + points = {} + for i,v in pairs(seq.Keypoints) do + local maxEnvelope = math.min(v.Value,10-v.Value) + local newPoint = {v.Value,v.Time,math.min(v.Envelope,maxEnvelope)} + newPoint[4] = placePoint(newPoint) + table.insert(points,newPoint) + end + beginPoint = points[1] + endPoint = points[#points] + currentlySelected = nil + redraw() + envelopeDragTop.Visible = false + envelopeDragBottom.Visible = false + end + newMt.SetSequence = loadSequence + + timeBox.FocusLost:Connect(function() + local point = currentPoint + local num = tonumber(timeBox.Text) + if point and num and point ~= beginPoint and point ~= endPoint then + num = math.clamp(num,0,1) + point[2] = num + redraw() + buildSequence() + updateInputs(point) + end + end) + + valueBox.FocusLost:Connect(function() + local point = currentPoint + local num = tonumber(valueBox.Text) + if point and num then + local oldEnvelope = point[3] + num = math.clamp(num,0,10) + point[1] = num + local maxEnvelope = math.min(point[1],10-point[1]) + point[3] = math.min(oldEnvelope,maxEnvelope) + redraw() + buildSequence() + updateInputs(point) + end + end) + + envelopeBox.FocusLost:Connect(function() + local point = currentPoint + local num = tonumber(envelopeBox.Text) + if point and num then + num = math.clamp(num,0,5) + local maxEnvelope = math.min(point[1],10-point[1]) + point[3] = math.min(num,maxEnvelope) + redraw() + buildSequence() + updateInputs(point) + end + end) + + local function buttonAnimations(button,inverse) + button.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then button.BackgroundTransparency = (inverse and 0.5 or 0.4) end end) + button.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then button.BackgroundTransparency = (inverse and 1 or 0) end end) + end + + numberLine.InputBegan:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseButton1 and #points < 20 then + if Lib.CheckMouseInGui(envelopeDragTop) or Lib.CheckMouseInGui(envelopeDragBottom) then return end + for i,v in pairs(points) do + if Lib.CheckMouseInGui(v[4].Select) then return end + end + local maxX = numberLine.AbsoluteSize.X-1 + local relativeX = mouse.X - numberLine.AbsolutePosition.X + if relativeX < 0 then relativeX = 0 end + if relativeX > maxX then relativeX = maxX end + local maxY = numberLine.AbsoluteSize.Y-1 + local relativeY = mouse.Y - numberLine.AbsolutePosition.Y + if relativeY < 0 then relativeY = 0 end + if relativeY > maxY then relativeY = maxY end + + local raw = relativeX/maxX + local newPoint = {10-(relativeY/maxY)*10,raw,0} + newPoint[4] = placePoint(newPoint) + table.insert(points,newPoint) + redraw() + buildSequence() + end + end) + + deleteButton.MouseButton1Click:Connect(function() + if currentPoint and currentPoint ~= beginPoint and currentPoint ~= endPoint then + for i,v in pairs(points) do + if v == currentPoint then + v[4]:Destroy() + table.remove(points,i) + break + end + end + currentlySelected = nil + redraw() + buildSequence() + updateInputs(points[1]) + end + end) + + resetButton.MouseButton1Click:Connect(function() + if resetSequence then + newMt:SetSequence(resetSequence) + buildSequence() + end + end) + + closeButton.MouseButton1Click:Connect(function() + window:Close() + end) + + buttonAnimations(deleteButton) + buttonAnimations(resetButton) + buttonAnimations(closeButton) + + placePoints() + redraw() + + newMt.Show = function(self) + window:Show() + end + + return newMt + end + + return {new = new} + end)() + + Lib.ColorSequenceEditor = (function() -- TODO: Convert to newer class model + local function new() + local newMt = setmetatable({},{}) + newMt.OnSelect = Lib.Signal.new() + newMt.OnCancel = Lib.Signal.new() + newMt.OnPreview = Lib.Signal.new() + newMt.OnPickColor = Lib.Signal.new() + + local guiContents = create({ + {1,"Frame",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BorderSizePixel=0,ClipsDescendants=true,Name="Content",Position=UDim2.new(0,0,0,20),Size=UDim2.new(1,0,1,-20),}}, + {2,"Frame",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),Name="ColorLine",Parent={1},Position=UDim2.new(0,10,0,5),Size=UDim2.new(1,-20,0,70),}}, + {3,"Frame",{BackgroundColor3=Color3.new(1,1,1),BorderSizePixel=0,Name="Gradient",Parent={2},Size=UDim2.new(1,0,1,0),}}, + {4,"UIGradient",{Parent={3},}}, + {5,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="Arrows",Parent={1},Position=UDim2.new(0,1,0,73),Size=UDim2.new(1,-2,0,16),}}, + {6,"Frame",{BackgroundColor3=Color3.new(0,0,0),BackgroundTransparency=0.5,BorderSizePixel=0,Name="Cursor",Parent={1},Position=UDim2.new(0,10,0,0),Size=UDim2.new(0,1,0,80),}}, + {7,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),Name="Time",Parent={1},Position=UDim2.new(0,40,0,95),Size=UDim2.new(0,100,0,20),}}, + {8,"TextBox",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),ClipsDescendants=true,Font=3,Name="Input",Parent={7},Position=UDim2.new(0,2,0,0),Size=UDim2.new(0,98,0,20),Text="0",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, + {9,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={7},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Time",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, + {10,"Frame",{BackgroundColor3=Color3.new(1,1,1),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),Name="ColorBox",Parent={1},Position=UDim2.new(0,220,0,95),Size=UDim2.new(0,20,0,20),}}, + {11,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={10},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Color",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, + {12,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),BorderSizePixel=0,Font=3,Name="Close",Parent={1},Position=UDim2.new(1,-90,0,95),Size=UDim2.new(0,80,0,20),Text="Close",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,}}, + {13,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),BorderSizePixel=0,Font=3,Name="Reset",Parent={1},Position=UDim2.new(1,-180,0,95),Size=UDim2.new(0,80,0,20),Text="Reset",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,}}, + {14,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),BorderSizePixel=0,Font=3,Name="Delete",Parent={1},Position=UDim2.new(0,280,0,95),Size=UDim2.new(0,80,0,20),Text="Delete",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,}}, + {15,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={1},Size=UDim2.new(0,16,0,16),Visible=false,}}, + {16,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={15},Position=UDim2.new(0,8,0,3),Size=UDim2.new(0,1,0,2),}}, + {17,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={15},Position=UDim2.new(0,7,0,5),Size=UDim2.new(0,3,0,2),}}, + {18,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={15},Position=UDim2.new(0,6,0,7),Size=UDim2.new(0,5,0,2),}}, + {19,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={15},Position=UDim2.new(0,5,0,9),Size=UDim2.new(0,7,0,2),}}, + {20,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={15},Position=UDim2.new(0,4,0,11),Size=UDim2.new(0,9,0,2),}}, + }) + local window = Lib.Window.new() + window.Resizable = false + window:Resize(650,150) + window:SetTitle("ColorSequence Editor") + newMt.Window = window + newMt.Gui = window.Gui + for i,v in pairs(guiContents:GetChildren()) do + v.Parent = window.GuiElems.Content + end + local gui = window.Gui + local pickerGui = gui.Main + local pickerTopBar = pickerGui.TopBar + local pickerFrame = pickerGui.Content + local colorLine = pickerFrame.ColorLine + local gradient = colorLine.Gradient.UIGradient + local arrowFrame = pickerFrame.Arrows + local arrow = pickerFrame.Arrow + local cursor = pickerFrame.Cursor + local timeBox = pickerFrame.Time.Input + local colorBox = pickerFrame.ColorBox + local deleteButton = pickerFrame.Delete + local resetButton = pickerFrame.Reset + local closeButton = pickerFrame.Close + local topClose = pickerTopBar.Close + + local user = game:GetService("UserInputService") + local mouse = game:GetService("Players").LocalPlayer:GetMouse() + + local colors = {{Color3.new(1,0,1),0},{Color3.new(0.2,0.9,0.2),0.2},{Color3.new(0.4,0.5,0.9),0.7},{Color3.new(0.6,1,1),1}} + local resetSequence = nil + + local beginPoint = colors[1] + local endPoint = colors[#colors] + + local currentlySelected = nil + local currentPoint = nil + + local sequenceLine = Instance.new("Frame") + sequenceLine.BorderSizePixel = 0 + sequenceLine.Size = UDim2.new(0,1,1,0) + + newMt.Sequence = ColorSequence.new(Color3.new(1,1,1)) + local function buildSequence(noupdate) + local newPoints = {} + table.sort(colors,function(a,b) return a[2] < b[2] end) + for i,v in pairs(colors) do + table.insert(newPoints,ColorSequenceKeypoint.new(v[2],v[1])) + end + newMt.Sequence = ColorSequence.new(newPoints) + if not noupdate then newMt.OnSelect:Fire(newMt.Sequence) end + end + + local function round(num,places) + local multi = 10^places + return math.floor(num*multi + 0.5)/multi + end + + local function updateInputs(point) + if point then + currentPoint = point + local raw = point[2] + timeBox.Text = round(raw,(raw < 0.01 and 5) or (raw < 0.1 and 4) or 3) + colorBox.BackgroundColor3 = point[1] + end + end + + local function placeArrow(ind,point) + local newArrow = arrow:Clone() + newArrow.Position = UDim2.new(0,ind-1,0,0) + newArrow.Visible = true + newArrow.Parent = arrowFrame + + newArrow.InputBegan:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + cursor.Visible = true + cursor.Position = UDim2.new(0,9 + newArrow.Position.X.Offset,0,0) + end + if input.UserInputType == Enum.UserInputType.MouseButton1 then + updateInputs(point) + if point == beginPoint or point == endPoint or currentlySelected then return end + + local mouseEvent,releaseEvent + currentlySelected = true + + releaseEvent = user.InputEnded:Connect(function(input) + if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + mouseEvent:Disconnect() + releaseEvent:Disconnect() + currentlySelected = nil + cursor.Visible = false + end) + + mouseEvent = user.InputChanged:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + local maxSize = colorLine.AbsoluteSize.X-1 + local relativeX = mouse.X - colorLine.AbsolutePosition.X + if relativeX < 0 then relativeX = 0 end + if relativeX > maxSize then relativeX = maxSize end + local raw = relativeX/maxSize + point[2] = relativeX/maxSize + updateInputs(point) + cursor.Visible = true + cursor.Position = UDim2.new(0,9 + newArrow.Position.X.Offset,0,0) + buildSequence() + newMt:Redraw() + end + end) + end + end) + + newArrow.InputEnded:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + cursor.Visible = false + end + end) + + return newArrow + end + + local function placeArrows() + for i,v in pairs(colors) do + v[3] = placeArrow(math.floor((colorLine.AbsoluteSize.X-1) * v[2]) + 1,v) + end + end + + local function redraw(self) + gradient.Color = newMt.Sequence or ColorSequence.new(Color3.new(1,1,1)) + + for i = 2,#colors do + local nextColor = colors[i] + local endPos = math.floor((colorLine.AbsoluteSize.X-1) * nextColor[2]) + 1 + nextColor[3].Position = UDim2.new(0,endPos,0,0) + end + end + newMt.Redraw = redraw + + local function loadSequence(self,seq) + resetSequence = seq + for i,v in pairs(colors) do if v[3] then v[3]:Destroy() end end + colors = {} + currentlySelected = nil + for i,v in pairs(seq.Keypoints) do + local newPoint = {v.Value,v.Time} + newPoint[3] = placeArrow(v.Time,newPoint) + table.insert(colors,newPoint) + end + beginPoint = colors[1] + endPoint = colors[#colors] + currentlySelected = nil + updateInputs(colors[1]) + buildSequence(true) + redraw() + end + newMt.SetSequence = loadSequence + + local function buttonAnimations(button,inverse) + button.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then button.BackgroundTransparency = (inverse and 0.5 or 0.4) end end) + button.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then button.BackgroundTransparency = (inverse and 1 or 0) end end) + end + + colorLine.InputBegan:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseButton1 and #colors < 20 then + local maxSize = colorLine.AbsoluteSize.X-1 + local relativeX = mouse.X - colorLine.AbsolutePosition.X + if relativeX < 0 then relativeX = 0 end + if relativeX > maxSize then relativeX = maxSize end + + local raw = relativeX/maxSize + local fromColor = nil + local toColor = nil + for i,col in pairs(colors) do + if col[2] >= raw then + fromColor = colors[math.max(i-1,1)] + toColor = colors[i] + break + end + end + local lerpColor = fromColor[1]:lerp(toColor[1],(raw-fromColor[2])/(toColor[2]-fromColor[2])) + local newPoint = {lerpColor,raw} + newPoint[3] = placeArrow(newPoint[2],newPoint) + table.insert(colors,newPoint) + updateInputs(newPoint) + buildSequence() + redraw() + end + end) + + colorLine.InputChanged:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + local maxSize = colorLine.AbsoluteSize.X-1 + local relativeX = mouse.X - colorLine.AbsolutePosition.X + if relativeX < 0 then relativeX = 0 end + if relativeX > maxSize then relativeX = maxSize end + cursor.Visible = true + cursor.Position = UDim2.new(0,10 + relativeX,0,0) + end + end) + + colorLine.InputEnded:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + local inArrow = false + for i,v in pairs(colors) do + if Lib.CheckMouseInGui(v[3]) then + inArrow = v[3] + end + end + cursor.Visible = inArrow and true or false + if inArrow then cursor.Position = UDim2.new(0,9 + inArrow.Position.X.Offset,0,0) end + end + end) + + timeBox:GetPropertyChangedSignal("Text"):Connect(function() + local point = currentPoint + local num = tonumber(timeBox.Text) + if point and num and point ~= beginPoint and point ~= endPoint then + num = math.clamp(num,0,1) + point[2] = num + buildSequence() + redraw() + end + end) + + colorBox.InputBegan:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseButton1 then + local editor = newMt.ColorPicker + if not editor then + editor = Lib.ColorPicker.new() + editor.Window:SetTitle("ColorSequence Color Picker") + + editor.OnSelect:Connect(function(col) + if currentPoint then + currentPoint[1] = col + end + buildSequence() + redraw() + end) + + newMt.ColorPicker = editor + end + + editor.Window:ShowAndFocus() + end + end) + + deleteButton.MouseButton1Click:Connect(function() + if currentPoint and currentPoint ~= beginPoint and currentPoint ~= endPoint then + for i,v in pairs(colors) do + if v == currentPoint then + v[3]:Destroy() + table.remove(colors,i) + break + end + end + currentlySelected = nil + updateInputs(colors[1]) + buildSequence() + redraw() + end + end) + + resetButton.MouseButton1Click:Connect(function() + if resetSequence then + newMt:SetSequence(resetSequence) + end + end) + + closeButton.MouseButton1Click:Connect(function() + window:Close() + end) + + topClose.MouseButton1Click:Connect(function() + window:Close() + end) + + buttonAnimations(deleteButton) + buttonAnimations(resetButton) + buttonAnimations(closeButton) + + placeArrows() + redraw() + + newMt.Show = function(self) + window:Show() + end + + return newMt + end + + return {new = new} + end)() + + Lib.ViewportTextBox = (function() + local textService = game:GetService("TextService") + + local props = { + OffsetX = 0, + TextBox = PH, + CursorPos = -1, + Gui = PH, + View = PH + } + local funcs = {} + funcs.Update = function(self) + local cursorPos = self.CursorPos or -1 + local text = self.TextBox.Text + if text == "" then self.TextBox.Position = UDim2.new(0,0,0,0) return end + if cursorPos == -1 then return end + + local cursorText = text:sub(1,cursorPos-1) + local pos = nil + local leftEnd = -self.TextBox.Position.X.Offset + local rightEnd = leftEnd + self.View.AbsoluteSize.X + + local totalTextSize = textService:GetTextSize(text,self.TextBox.TextSize,self.TextBox.Font,Vector2.new(999999999,100)).X + local cursorTextSize = textService:GetTextSize(cursorText,self.TextBox.TextSize,self.TextBox.Font,Vector2.new(999999999,100)).X + + if cursorTextSize > rightEnd then + pos = math.max(-1,cursorTextSize - self.View.AbsoluteSize.X + 2) + elseif cursorTextSize < leftEnd then + pos = math.max(-1,cursorTextSize-2) + elseif totalTextSize < rightEnd then + pos = math.max(-1,totalTextSize - self.View.AbsoluteSize.X + 2) + end + + if pos then + self.TextBox.Position = UDim2.new(0,-pos,0,0) + self.TextBox.Size = UDim2.new(1,pos,1,0) + end + end + + funcs.GetText = function(self) + return self.TextBox.Text + end + + funcs.SetText = function(self,text) + self.TextBox.Text = text + end + + local mt = getGuiMT(props,funcs) + + local function convert(textbox) + local obj = initObj(props,mt) + + local view = Instance.new("Frame") + view.BackgroundTransparency = textbox.BackgroundTransparency + view.BackgroundColor3 = textbox.BackgroundColor3 + view.BorderSizePixel = textbox.BorderSizePixel + view.BorderColor3 = textbox.BorderColor3 + view.Position = textbox.Position + view.Size = textbox.Size + view.ClipsDescendants = true + view.Name = textbox.Name + textbox.BackgroundTransparency = 1 + textbox.Position = UDim2.new(0,0,0,0) + textbox.Size = UDim2.new(1,0,1,0) + textbox.TextXAlignment = Enum.TextXAlignment.Left + textbox.Name = "Input" + + obj.TextBox = textbox + obj.View = view + obj.Gui = view + + textbox.Changed:Connect(function(prop) + if prop == "Text" or prop == "CursorPosition" or prop == "AbsoluteSize" then + local cursorPos = obj.TextBox.CursorPosition + if cursorPos ~= -1 then obj.CursorPos = cursorPos end + obj:Update() + end + end) + + obj:Update() + + view.Parent = textbox.Parent + textbox.Parent = view + + return obj + end + + local function new() + local textBox = Instance.new("TextBox") + textBox.Size = UDim2.new(0,100,0,20) + textBox.BackgroundColor3 = Settings.Theme.TextBox + textBox.BorderColor3 = Settings.Theme.Outline3 + textBox.ClearTextOnFocus = false + textBox.TextColor3 = Settings.Theme.Text + textBox.Font = Enum.Font.SourceSans + textBox.TextSize = 14 + textBox.Text = "" + return convert(textBox) + end + + return {new = new, convert = convert} + end)() + + Lib.Label = (function() + local props,funcs = {},{} + + local mt = getGuiMT(props,funcs) + + local function new() + local label = Instance.new("TextLabel") + label.BackgroundTransparency = 1 + label.TextXAlignment = Enum.TextXAlignment.Left + label.TextColor3 = Settings.Theme.Text + label.TextTransparency = 0.1 + label.Size = UDim2.new(0,100,0,20) + label.Font = Enum.Font.SourceSans + label.TextSize = 14 + + local obj = setmetatable({ + Gui = label + },mt) + return obj + end + + return {new = new} + end)() + + Lib.Frame = (function() + local props,funcs = {},{} + + local mt = getGuiMT(props,funcs) + + local function new() + local fr = Instance.new("Frame") + fr.BackgroundColor3 = Settings.Theme.Main1 + fr.BorderColor3 = Settings.Theme.Outline1 + fr.Size = UDim2.new(0,50,0,50) + + local obj = setmetatable({ + Gui = fr + },mt) + return obj + end + + return {new = new} + end)() + + Lib.Button = (function() + local props = { + Gui = PH, + Anim = PH, + Disabled = false, + OnClick = SIGNAL, + OnDown = SIGNAL, + OnUp = SIGNAL, + AllowedButtons = {1} + } + local funcs = {} + local tableFind = table.find + + funcs.Trigger = function(self,event,button) + if not self.Disabled and tableFind(self.AllowedButtons,button) then + self["On"..event]:Fire(button) + end + end + + funcs.SetDisabled = function(self,dis) + self.Disabled = dis + + if dis then + self.Anim:Disable() + self.Gui.TextTransparency = 0.5 + else + self.Anim.Enable() + self.Gui.TextTransparency = 0 + end + end + + local mt = getGuiMT(props,funcs) + + local function new() + local b = Instance.new("TextButton") + b.AutoButtonColor = false + b.TextColor3 = Settings.Theme.Text + b.TextTransparency = 0.1 + b.Size = UDim2.new(0,100,0,20) + b.Font = Enum.Font.SourceSans + b.TextSize = 14 + b.BackgroundColor3 = Settings.Theme.Button + b.BorderColor3 = Settings.Theme.Outline2 + + local obj = initObj(props,mt) + obj.Gui = b + obj.Anim = Lib.ButtonAnim(b,{Mode = 2, StartColor = Settings.Theme.Button, HoverColor = Settings.Theme.ButtonHover, PressColor = Settings.Theme.ButtonPress, OutlineColor = Settings.Theme.Outline2}) + + b.MouseButton1Click:Connect(function() obj:Trigger("Click",1) end) + b.MouseButton1Down:Connect(function() obj:Trigger("Down",1) end) + b.MouseButton1Up:Connect(function() obj:Trigger("Up",1) end) + + b.MouseButton2Click:Connect(function() obj:Trigger("Click",2) end) + b.MouseButton2Down:Connect(function() obj:Trigger("Down",2) end) + b.MouseButton2Up:Connect(function() obj:Trigger("Up",2) end) + + return obj + end + + return {new = new} + end)() + + Lib.DropDown = (function() + local props = { + Gui = PH, + Anim = PH, + Context = PH, + Selected = PH, + Disabled = false, + CanBeEmpty = true, + Options = {}, + GuiElems = {}, + OnSelect = SIGNAL + } + local funcs = {} + + funcs.Update = function(self) + local options = self.Options + + if #options > 0 then + if not self.Selected then + if not self.CanBeEmpty then + self.Selected = options[1] + self.GuiElems.Label.Text = options[1] + else + self.GuiElems.Label.Text = "- Select -" + end + else + self.GuiElems.Label.Text = self.Selected + end + else + self.GuiElems.Label.Text = "- Select -" + end + end + + funcs.ShowOptions = function(self) + local context = self.Context + + context.Width = self.Gui.AbsoluteSize.X + context.ReverseYOffset = self.Gui.AbsoluteSize.Y + context:Show(self.Gui.AbsolutePosition.X, self.Gui.AbsolutePosition.Y + context.ReverseYOffset) + end + + funcs.SetOptions = function(self,opts) + self.Options = opts + + local context = self.Context + local options = self.Options + context:Clear() + + local onClick = function(option) self.Selected = option self.OnSelect:Fire(option) self:Update() end + + if self.CanBeEmpty then + context:Add({Name = "- Select -", OnClick = function() self.Selected = nil self.OnSelect:Fire(nil) self:Update() end}) + end + + for i = 1,#options do + context:Add({Name = options[i], OnClick = onClick}) + end + + self:Update() + end + + funcs.SetSelected = function(self,opt) + self.Selected = type(opt) == "number" and self.Options[opt] or opt + self:Update() + end + + local mt = getGuiMT(props,funcs) + + local function new() + local f = Instance.new("TextButton") + f.AutoButtonColor = false + f.Text = "" + f.Size = UDim2.new(0,100,0,20) + f.BackgroundColor3 = Settings.Theme.TextBox + f.BorderColor3 = Settings.Theme.Outline3 + + local label = Lib.Label.new() + label.Position = UDim2.new(0,2,0,0) + label.Size = UDim2.new(1,-22,1,0) + label.TextTruncate = Enum.TextTruncate.AtEnd + label.Parent = f + local arrow = create({ + {1,"Frame",{BackgroundTransparency=1,Name="EnumArrow",Position=UDim2.new(1,-16,0,2),Size=UDim2.new(0,16,0,16),}}, + {2,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={1},Position=UDim2.new(0,8,0,9),Size=UDim2.new(0,1,0,1),}}, + {3,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={1},Position=UDim2.new(0,7,0,8),Size=UDim2.new(0,3,0,1),}}, + {4,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={1},Position=UDim2.new(0,6,0,7),Size=UDim2.new(0,5,0,1),}}, + }) + arrow.Parent = f + + local obj = initObj(props,mt) + obj.Gui = f + obj.Anim = Lib.ButtonAnim(f,{Mode = 2, StartColor = Settings.Theme.TextBox, LerpTo = Settings.Theme.Button, LerpDelta = 0.15}) + obj.Context = Lib.ContextMenu.new() + obj.Context.Iconless = true + obj.Context.MaxHeight = 200 + obj.Selected = nil + obj.GuiElems = {Label = label} + f.MouseButton1Down:Connect(function() obj:ShowOptions() end) + obj:Update() + return obj + end + + return {new = new} + end)() + + Lib.ClickSystem = (function() + local props = { + LastItem = PH, + OnDown = SIGNAL, + OnRelease = SIGNAL, + AllowedButtons = {1}, + Combo = 0, + MaxCombo = 2, + ComboTime = 0.5, + Items = {}, + ItemCons = {}, + ClickId = -1, + LastButton = "" + } + local funcs = {} + local tostring = tostring + + local disconnect = function(con) + local pos = table.find(con.Signal.Connections,con) + if pos then table.remove(con.Signal.Connections,pos) end + end + + funcs.Trigger = function(self,item,button) + if table.find(self.AllowedButtons,button) then + if self.LastButton ~= button or self.LastItem ~= item or self.Combo == self.MaxCombo or tick() - self.ClickId > self.ComboTime then + self.Combo = 0 + self.LastButton = button + self.LastItem = item + end + self.Combo = self.Combo + 1 + self.ClickId = tick() + + local release + release = service.UserInputService.InputEnded:Connect(function(input) + if input.UserInputType == Enum.UserInputType["MouseButton"..button] then + release:Disconnect() + if Lib.CheckMouseInGui(item) and self.LastButton == button and self.LastItem == item then + self["OnRelease"]:Fire(item,self.Combo,button) + end + end + end) + + self["OnDown"]:Fire(item,self.Combo,button) + end + end + + funcs.Add = function(self,item) + if table.find(self.Items,item) then return end + + local cons = {} + cons[1] = item.MouseButton1Down:Connect(function() self:Trigger(item,1) end) + cons[2] = item.MouseButton2Down:Connect(function() self:Trigger(item,2) end) + + self.ItemCons[item] = cons + self.Items[#self.Items+1] = item + end + + funcs.Remove = function(self,item) + local ind = table.find(self.Items,item) + if not ind then return end + + for i,v in pairs(self.ItemCons[item]) do + v:Disconnect() + end + self.ItemCons[item] = nil + table.remove(self.Items,ind) + end + + local mt = {__index = funcs} + + local function new() + local obj = initObj(props,mt) + + return obj + end + + return {new = new} + end)() + + return Lib +end + +return {InitDeps = initDeps, InitAfterMain = initAfterMain, Main = main} \ No newline at end of file diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Properties.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Properties.lua new file mode 100644 index 0000000000..f796ed6341 --- /dev/null +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Properties.lua @@ -0,0 +1,1998 @@ +--[[ + Properties App Module + + The main properties interface +]] + +-- ADONIS +local ReplicatedStorage = game:GetService("ReplicatedStorage") +local Dex_RemoteFunction = ReplicatedStorage:WaitForChild("NewDex_Event") :: RemoteFunction + +-- Common Locals +local Main,Lib,Apps,Settings -- Main Containers +local Explorer, Properties, ScriptViewer, Notebook -- Major Apps +local API,RMD,env,service,plr,create,createSimple -- Main Locals + +local function initDeps(data) + Main = data.Main + Lib = data.Lib + Apps = data.Apps + Settings = data.Settings + + API = data.API + RMD = data.RMD + env = data.env + service = data.service + plr = data.plr + create = data.create + createSimple = data.createSimple +end + +local function initAfterMain() + Explorer = Apps.Explorer + Properties = Apps.Properties + ScriptViewer = Apps.ScriptViewer + Notebook = Apps.Notebook +end + +local function main() + local Properties = {} + + local window, toolBar, propsFrame + local scrollV, scrollH + local categoryOrder + local props,viewList,expanded,indexableProps,propEntries,autoUpdateObjs = {},{},{},{},{},{} + local inputBox,inputTextBox,inputProp + local checkboxes,propCons = {},{} + local table,string = table,string + local getPropChangedSignal = game.GetPropertyChangedSignal + local getAttributeChangedSignal = game.GetAttributeChangedSignal + local isa = game.IsA + local getAttribute = game.GetAttribute + local setAttribute = game.SetAttribute + + Properties.GuiElems = {} + Properties.Index = 0 + Properties.ViewWidth = 0 + Properties.MinInputWidth = 100 + Properties.EntryIndent = 16 + Properties.EntryOffset = 4 + Properties.NameWidthCache = {} + Properties.SubPropCache = {} + Properties.ClassLists = {} + Properties.SearchText = "" + + Properties.AddAttributeProp = {Category = "Attributes", Class = "", Name = "", SpecialRow = "AddAttribute", Tags = {}} + Properties.SoundPreviewProp = {Category = "Data", ValueType = {Name = "SoundPlayer"}, Class = "Sound", Name = "Preview", Tags = {}, IsSoundPreview = true,} + + -- silencer + Properties.Refresh = nil + Properties.Update = nil + Properties.UpdateView = nil + Properties.ShowExplorerProps = nil + Properties.ComputeConflicts = nil + Properties.MakeSubProp = nil + Properties.GetExpandedProps = nil + Properties.NewPropEntry = nil + Properties.GetSoundPreviewEntry = nil + Properties.SetSoundPreview = nil + Properties.DisplayAttributeContext = nil + Properties.DisplayAddAttributeWindow = nil + Properties.IsTextEditable = nil + Properties.DisplayEnumDropdown = nil + Properties.DisplayBrickColorEditor = nil + Properties.DisplayColorEditor = nil + Properties.DisplayNumberSequenceEditor = nil + Properties.DisplayColorSequenceEditor = nil + Properties.GetFirstPropVal = nil + Properties.GetPropVal = nil + Properties.SelectObject = nil + Properties.DisplayProp = nil + Properties.SetProp = nil + Properties.InitInputBox = nil + Properties.SetInputProp = nil + Properties.InitSearch = nil + Properties.InitEntryStuff = nil + Properties.Init = nil + Properties.EditingAttribute = nil + Properties.EnumContext = nil + Properties.BrickColorEditor = nil + Properties.ColorEditor = nil + Properties.NumberSequenceEditor = nil + Properties.ColorSequenceEditor = nil + Properties.FullNameFrame = nil + Properties.FullNameFrameAttach = nil + Properties.Window = nil + Properties.EntryTemplate = nil + Properties.PreviewSound = nil + Properties.AttributeContext = nil + Properties.AddAttributeWindow = nil + + Properties.IgnoreProps = { + ["DataModel"] = { + ["PrivateServerId"] = true, + ["PrivateServerOwnerId"] = true, + ["VIPServerId"] = true, + ["VIPServerOwnerId"] = true + } + } + + Properties.ExpandableTypes = { + ["Vector2"] = true, + ["Vector3"] = true, + ["UDim"] = true, + ["UDim2"] = true, + ["CFrame"] = true, + ["Rect"] = true, + ["PhysicalProperties"] = true, + ["Ray"] = true, + ["NumberRange"] = true, + ["Faces"] = true, + ["Axes"] = true, + } + + Properties.ExpandableProps = { + ["Sound.SoundId"] = true, + ["AudioPlayer.Asset"] = true + } + + + Properties.CollapsedCategories = { + ["Surface Inputs"] = true, + ["Surface"] = true + } + + Properties.ConflictSubProps = { + ["Vector2"] = {"X","Y"}, + ["Vector3"] = {"X","Y","Z"}, + ["UDim"] = {"Scale","Offset"}, + ["UDim2"] = {"X","X.Scale","X.Offset","Y","Y.Scale","Y.Offset"}, + ["CFrame"] = {"Position","Position.X","Position.Y","Position.Z", + "RightVector","RightVector.X","RightVector.Y","RightVector.Z", + "UpVector","UpVector.X","UpVector.Y","UpVector.Z", + "LookVector","LookVector.X","LookVector.Y","LookVector.Z"}, + ["Rect"] = {"Min.X","Min.Y","Max.X","Max.Y"}, + ["PhysicalProperties"] = {"Density","Elasticity","ElasticityWeight","Friction","FrictionWeight"}, + ["Ray"] = {"Origin","Origin.X","Origin.Y","Origin.Z","Direction","Direction.X","Direction.Y","Direction.Z"}, + ["NumberRange"] = {"Min","Max"}, + ["Faces"] = {"Back","Bottom","Front","Left","Right","Top"}, + ["Axes"] = {"X","Y","Z"} + } + + Properties.ConflictIgnore = { + ["BasePart"] = { + ["ResizableFaces"] = true + } + } + + Properties.RoundableTypes = { + ["float"] = true, + ["double"] = true, + ["Color3"] = true, + ["UDim"] = true, + ["UDim2"] = true, + ["Vector2"] = true, + ["Vector3"] = true, + ["NumberRange"] = true, + ["Rect"] = true, + ["NumberSequence"] = true, + ["ColorSequence"] = true, + ["Ray"] = true, + ["CFrame"] = true + } + + Properties.TypeNameConvert = { + ["number"] = "double", + ["boolean"] = "bool" + } + + Properties.ToNumberTypes = { + ["int"] = true, + ["int64"] = true, + ["float"] = true, + ["double"] = true + } + + Properties.DefaultPropValue = { + string = "", + bool = false, + double = 0, + UDim = UDim.new(0,0), + UDim2 = UDim2.new(0,0,0,0), + BrickColor = BrickColor.new("Medium stone grey"), + Color3 = Color3.new(1,1,1), + Vector2 = Vector2.new(0,0), + Vector3 = Vector3.new(0,0,0), + NumberSequence = NumberSequence.new(1), + ColorSequence = ColorSequence.new(Color3.new(1,1,1)), + NumberRange = NumberRange.new(0), + Rect = Rect.new(0,0,0,0) + } + + Properties.AllowedAttributeTypes = {"string","boolean","number","UDim","UDim2","BrickColor","Color3","Vector2","Vector3","NumberSequence","ColorSequence","NumberRange","Rect"} + + Properties.StringToValue = function(prop,str) + local typeData = prop.ValueType + local typeName = typeData.Name + + if typeName == "string" or typeName == "Content" then + return str + elseif Properties.ToNumberTypes[typeName] then + return tonumber(str) + elseif typeName == "Vector2" then + local vals = str:split(",") + local x,y = tonumber(vals[1]),tonumber(vals[2]) + if x and y and #vals >= 2 then return Vector2.new(x,y) end + elseif typeName == "Vector3" then + local vals = str:split(",") + local x,y,z = tonumber(vals[1]),tonumber(vals[2]),tonumber(vals[3]) + if x and y and z and #vals >= 3 then return Vector3.new(x,y,z) end + elseif typeName == "UDim" then + local vals = str:split(",") + local scale,offset = tonumber(vals[1]),tonumber(vals[2]) + if scale and offset and #vals >= 2 then return UDim.new(scale,offset) end + elseif typeName == "UDim2" then + local vals = str:gsub("[{}]",""):split(",") + local xScale,xOffset,yScale,yOffset = tonumber(vals[1]),tonumber(vals[2]),tonumber(vals[3]),tonumber(vals[4]) + if xScale and xOffset and yScale and yOffset and #vals >= 4 then return UDim2.new(xScale,xOffset,yScale,yOffset) end + elseif typeName == "CFrame" then + local vals = str:split(",") + local s,result = pcall(CFrame.new,unpack(vals)) + if s and #vals >= 12 then return result end + elseif typeName == "Rect" then + local vals = str:split(",") + local s,result = pcall(Rect.new,unpack(vals)) + if s and #vals >= 4 then return result end + elseif typeName == "Ray" then + local vals = str:gsub("[{}]",""):split(",") + local s,origin = pcall(Vector3.new,unpack(vals,1,3)) + local s2,direction = pcall(Vector3.new,unpack(vals,4,6)) + if s and s2 and #vals >= 6 then return Ray.new(origin,direction) end + elseif typeName == "NumberRange" then + local vals = str:split(",") + local s,result = pcall(NumberRange.new,unpack(vals)) + if s and #vals >= 1 then return result end + elseif typeName == "Color3" then + local vals = str:gsub("[{}]",""):split(",") + local s,result = pcall(Color3.fromRGB,unpack(vals)) + if s and #vals >= 3 then return result end + end + + return nil + end + + Properties.ValueToString = function(prop,val) + local typeData = prop.ValueType + local typeName = typeData.Name + + if typeName == "Color3" then + return Lib.ColorToBytes(val) + elseif typeName == "NumberRange" then + return val.Min..", "..val.Max + end + + return tostring(val) + end + + Properties.GetIndexableProps = function(obj,classData) + if not Main.Elevated then + if not pcall(function() return obj.ClassName end) then return nil end + end + + local ignoreProps = Properties.IgnoreProps[classData.Name] or {} + + local result = {} + local count = 1 + local props = classData.Properties + for i = 1,#props do + local prop = props[i] + if not ignoreProps[prop.Name] then + local s = pcall(function() return obj[prop.Name] end) + if s then + result[count] = prop + count = count + 1 + end + end + end + + return result + end + + Properties.FindFirstObjWhichIsA = function(class) + local classList = Properties.ClassLists[class] or {} + if classList and #classList > 0 then + return classList[1] + end + + return nil + end + + Properties.ComputeConflicts = function(p) + local maxConflictCheck = Settings.Properties.MaxConflictCheck + local sList = Explorer.Selection.List + local classLists = Properties.ClassLists + local stringSplit = string.split + local t_clear = table.clear + local conflictIgnore = Properties.ConflictIgnore + local conflictMap = {} + local propList = p and {p} or props + + if p then + local gName = p.Class.."."..p.Name + autoUpdateObjs[gName] = nil + local subProps = Properties.ConflictSubProps[p.ValueType.Name] or {} + for i = 1,#subProps do + autoUpdateObjs[gName.."."..subProps[i]] = nil + end + else + table.clear(autoUpdateObjs) + end + + if #sList > 0 then + for i = 1,#propList do + local prop = propList[i] + local propName,propClass = prop.Name,prop.Class + local typeData = prop.RootType or prop.ValueType + local typeName = typeData.Name + local attributeName = prop.AttributeName + local gName = propClass.."."..propName + + local checked = 0 + local subProps = Properties.ConflictSubProps[typeName] or {} + local subPropCount = #subProps + local toCheck = subPropCount + 1 + local conflictsFound = 0 + local indexNames = {} + local ignored = conflictIgnore[propClass] and conflictIgnore[propClass][propName] + local truthyCheck = (typeName == "PhysicalProperties") + local isAttribute = prop.IsAttribute + local isMultiType = prop.MultiType + + t_clear(conflictMap) + + if not isMultiType then + local firstVal,firstObj,firstSet + local classList = classLists[prop.Class] or {} + for c = 1,#classList do + local obj = classList[c] + if not firstSet then + if isAttribute then + firstVal = getAttribute(obj,attributeName) + if firstVal ~= nil then + firstObj = obj + firstSet = true + end + else + firstVal = obj[propName] + firstObj = obj + firstSet = true + end + if ignored then break end + else + local propVal,skip + if isAttribute then + propVal = getAttribute(obj,attributeName) + if propVal == nil then skip = true end + else + propVal = obj[propName] + end + + if not skip then + if not conflictMap[1] then + if truthyCheck then + if (firstVal and true or false) ~= (propVal and true or false) then + conflictMap[1] = true + conflictsFound = conflictsFound + 1 + end + elseif firstVal ~= propVal then + conflictMap[1] = true + conflictsFound = conflictsFound + 1 + end + end + + if subPropCount > 0 then + for sPropInd = 1,subPropCount do + local indexes = indexNames[sPropInd] + if not indexes then indexes = stringSplit(subProps[sPropInd],".") indexNames[sPropInd] = indexes end + + local firstValSub = firstVal + local propValSub = propVal + + for j = 1,#indexes do + if not firstValSub or not propValSub then break end -- PhysicalProperties + local indexName = indexes[j] + firstValSub = firstValSub[indexName] + propValSub = propValSub[indexName] + end + + local mapInd = sPropInd + 1 + if not conflictMap[mapInd] and firstValSub ~= propValSub then + conflictMap[mapInd] = true + conflictsFound = conflictsFound + 1 + end + end + end + + if conflictsFound == toCheck then break end + end + end + + checked = checked + 1 + if checked == maxConflictCheck then break end + end + + if not conflictMap[1] then autoUpdateObjs[gName] = firstObj end + for sPropInd = 1,subPropCount do + if not conflictMap[sPropInd+1] then + autoUpdateObjs[gName.."."..subProps[sPropInd]] = firstObj + end + end + end + end + end + + if p then + Properties.Refresh() + end + end + + -- Fetches the properties to be displayed based on the explorer selection + Properties.ShowExplorerProps = function() + local maxConflictCheck = Settings.Properties.MaxConflictCheck + local sList = Explorer.Selection.List + local foundClasses = {} + local propCount = 1 + local elevated = Main.Elevated + local showDeprecated,showHidden = Settings.Properties.ShowDeprecated,Settings.Properties.ShowHidden + local Classes = API.Classes + local classLists = {} + local lower = string.lower + local RMDCustomOrders = RMD.PropertyOrders + local getAttributes = game.GetAttributes + local maxAttrs = Settings.Properties.MaxAttributes + local showingAttrs = Settings.Properties.ShowAttributes + local foundAttrs = {} + local attrCount = 0 + local typeof = typeof + local typeNameConvert = Properties.TypeNameConvert + + table.clear(props) + + for i = 1,#sList do + local node = sList[i] + local obj = node.Obj + local class = node.Class + if not class then class = obj.ClassName node.Class = class end + + local apiClass = Classes[class] + while apiClass do + local APIClassName = apiClass.Name + if not foundClasses[APIClassName] then + local apiProps = indexableProps[APIClassName] + if not apiProps then apiProps = Properties.GetIndexableProps(obj,apiClass) indexableProps[APIClassName] = apiProps end + + for i = 1,#apiProps do + local prop = apiProps[i] + local tags = prop.Tags + if (not tags.Deprecated or showDeprecated) and (not tags.Hidden or showHidden) then + props[propCount] = prop + propCount = propCount + 1 + end + end + foundClasses[APIClassName] = true + end + + local classList = classLists[APIClassName] + if not classList then classList = {} classLists[APIClassName] = classList end + classList[#classList+1] = obj + + apiClass = apiClass.Superclass + end + + if showingAttrs and attrCount < maxAttrs then + local attrs = getAttributes(obj) + for name,val in pairs(attrs) do + local typ = typeof(val) + if not foundAttrs[name] then + local category = (typ == "Instance" and "Class") or (typ == "EnumItem" and "Enum") or "Other" + local valType = {Name = typeNameConvert[typ] or typ, Category = category} + local attrProp = {IsAttribute = true, Name = "ATTR_"..name, AttributeName = name, DisplayName = name, Class = "Instance", ValueType = valType, Category = "Attributes", Tags = {}} + props[propCount] = attrProp + propCount = propCount + 1 + attrCount = attrCount + 1 + foundAttrs[name] = {typ,attrProp} + if attrCount == maxAttrs then break end + elseif foundAttrs[name][1] ~= typ then + foundAttrs[name][2].MultiType = true + foundAttrs[name][2].Tags.ReadOnly = true + foundAttrs[name][2].ValueType = {Name = "string"} + end + end + end + end + + table.sort(props,function(a,b) + if a.Category ~= b.Category then + return (categoryOrder[a.Category] or 9999) < (categoryOrder[b.Category] or 9999) + else + local aOrder = (RMDCustomOrders[a.Class] and RMDCustomOrders[a.Class][a.Name]) or 9999999 + local bOrder = (RMDCustomOrders[b.Class] and RMDCustomOrders[b.Class][b.Name]) or 9999999 + if aOrder ~= bOrder then + return aOrder < bOrder + else + return lower(a.Name) < lower(b.Name) + end + end + end) + + -- Find conflicts and get auto-update instances + Properties.ClassLists = classLists + Properties.ComputeConflicts() + --warn("CONFLICT",tick()-start) + if #props > 0 then + props[#props+1] = Properties.AddAttributeProp + end + + Properties.Update() + Properties.Refresh() + end + + Properties.UpdateView = function() + local maxEntries = math.ceil(propsFrame.AbsoluteSize.Y / 23) + local maxX = propsFrame.AbsoluteSize.X + local totalWidth = Properties.ViewWidth + Properties.MinInputWidth + + scrollV.VisibleSpace = maxEntries + scrollV.TotalSpace = #viewList + 1 + scrollH.VisibleSpace = maxX + scrollH.TotalSpace = totalWidth + + scrollV.Gui.Visible = #viewList + 1 > maxEntries + scrollH.Gui.Visible = Settings.Properties.ScaleType == 0 and totalWidth > maxX + + local oldSize = propsFrame.Size + propsFrame.Size = UDim2.new(1,(scrollV.Gui.Visible and -16 or 0),1,(scrollH.Gui.Visible and -39 or -23)) + if oldSize ~= propsFrame.Size then + Properties.UpdateView() + else + scrollV:Update() + scrollH:Update() + + if scrollV.Gui.Visible and scrollH.Gui.Visible then + scrollV.Gui.Size = UDim2.new(0,16,1,-39) + scrollH.Gui.Size = UDim2.new(1,-16,0,16) + Properties.Window.GuiElems.Content.ScrollCorner.Visible = true + else + scrollV.Gui.Size = UDim2.new(0,16,1,-23) + scrollH.Gui.Size = UDim2.new(1,0,0,16) + Properties.Window.GuiElems.Content.ScrollCorner.Visible = false + end + + Properties.Index = scrollV.Index + end + end + + Properties.MakeSubProp = function(prop,subName,valueType,displayName) + local subProp = {} + for i,v in pairs(prop) do + subProp[i] = v + end + subProp.RootType = subProp.RootType or subProp.ValueType + subProp.ValueType = valueType + subProp.SubName = subProp.SubName and (subProp.SubName..subName) or subName + subProp.DisplayName = displayName + + return subProp + end + + Properties.GetExpandedProps = function(prop) -- TODO: Optimize using table + local result = {} + local typeData = prop.ValueType + local typeName = typeData.Name + local makeSubProp = Properties.MakeSubProp + + if typeName == "Vector2" then + result[1] = makeSubProp(prop,".X",{Name = "float"}) + result[2] = makeSubProp(prop,".Y",{Name = "float"}) + elseif typeName == "Vector3" then + result[1] = makeSubProp(prop,".X",{Name = "float"}) + result[2] = makeSubProp(prop,".Y",{Name = "float"}) + result[3] = makeSubProp(prop,".Z",{Name = "float"}) + elseif typeName == "CFrame" then + result[1] = makeSubProp(prop,".Position",{Name = "Vector3"}) + result[2] = makeSubProp(prop,".RightVector",{Name = "Vector3"}) + result[3] = makeSubProp(prop,".UpVector",{Name = "Vector3"}) + result[4] = makeSubProp(prop,".LookVector",{Name = "Vector3"}) + elseif typeName == "UDim" then + result[1] = makeSubProp(prop,".Scale",{Name = "float"}) + result[2] = makeSubProp(prop,".Offset",{Name = "int"}) + elseif typeName == "UDim2" then + result[1] = makeSubProp(prop,".X",{Name = "UDim"}) + result[2] = makeSubProp(prop,".Y",{Name = "UDim"}) + elseif typeName == "Rect" then + result[1] = makeSubProp(prop,".Min.X",{Name = "float"},"X0") + result[2] = makeSubProp(prop,".Min.Y",{Name = "float"},"Y0") + result[3] = makeSubProp(prop,".Max.X",{Name = "float"},"X1") + result[4] = makeSubProp(prop,".Max.Y",{Name = "float"},"Y1") + elseif typeName == "PhysicalProperties" then + result[1] = makeSubProp(prop,".Density",{Name = "float"}) + result[2] = makeSubProp(prop,".Elasticity",{Name = "float"}) + result[3] = makeSubProp(prop,".ElasticityWeight",{Name = "float"}) + result[4] = makeSubProp(prop,".Friction",{Name = "float"}) + result[5] = makeSubProp(prop,".FrictionWeight",{Name = "float"}) + elseif typeName == "Ray" then + result[1] = makeSubProp(prop,".Origin",{Name = "Vector3"}) + result[2] = makeSubProp(prop,".Direction",{Name = "Vector3"}) + elseif typeName == "NumberRange" then + result[1] = makeSubProp(prop,".Min",{Name = "float"}) + result[2] = makeSubProp(prop,".Max",{Name = "float"}) + elseif typeName == "Faces" then + result[1] = makeSubProp(prop,".Back",{Name = "bool"}) + result[2] = makeSubProp(prop,".Bottom",{Name = "bool"}) + result[3] = makeSubProp(prop,".Front",{Name = "bool"}) + result[4] = makeSubProp(prop,".Left",{Name = "bool"}) + result[5] = makeSubProp(prop,".Right",{Name = "bool"}) + result[6] = makeSubProp(prop,".Top",{Name = "bool"}) + elseif typeName == "Axes" then + result[1] = makeSubProp(prop,".X",{Name = "bool"}) + result[2] = makeSubProp(prop,".Y",{Name = "bool"}) + result[3] = makeSubProp(prop,".Z",{Name = "bool"}) + end + + if (prop.Name == "SoundId" and prop.Class == "Sound") or (prop.Name == "Asset" and prop.Class == "AudioPlayer") then + local preview = {} + local preview = {} + for k,v in pairs(Properties.SoundPreviewProp) do preview[k] = v end + preview.Class = prop.Class + preview.Category = prop.Category + preview.IsSoundPreview = true + result[1] = preview + + end + + + return result + end + + Properties.Update = function() + table.clear(viewList) + + local nameWidthCache = Properties.NameWidthCache + local lastCategory + local count = 1 + local maxWidth,maxDepth = 0,1 + + local textServ = service.TextService + local getTextSize = textServ.GetTextSize + local font = Enum.Font.SourceSans + local size = Vector2.new(math.huge,20) + local stringSplit = string.split + local entryIndent = Properties.EntryIndent + local isFirstScaleType = Settings.Properties.ScaleType == 0 + local find,lower = string.find,string.lower + local searchText = (#Properties.SearchText > 0 and lower(Properties.SearchText)) + + local function recur(props,depth) + for i = 1,#props do + local prop = props[i] + local propName = prop.Name + local subName = prop.SubName + local category = prop.Category + + local visible + if searchText and depth == 1 then + if find(lower(propName),searchText,1,true) then + visible = true + end + else + visible = true + end + + if visible and lastCategory ~= category then + viewList[count] = {CategoryName = category} + count = count + 1 + lastCategory = category + end + + if (expanded["CAT_"..category] and visible) or prop.SpecialRow then + if depth > 1 then prop.Depth = depth if depth > maxDepth then maxDepth = depth end end + + if isFirstScaleType then + local nameArr = subName and stringSplit(subName,".") + local displayName = prop.DisplayName or (nameArr and nameArr[#nameArr]) or propName + + local nameWidth = nameWidthCache[displayName] + if not nameWidth then nameWidth = getTextSize(textServ,displayName,14,font,size).X nameWidthCache[displayName] = nameWidth end + + local totalWidth = nameWidth + entryIndent*depth + if totalWidth > maxWidth then + maxWidth = totalWidth + end + end + + viewList[count] = prop + count = count + 1 + + local fullName = prop.Class.."."..prop.Name..(prop.SubName or "") + if expanded[fullName] then + local nextDepth = depth+1 + local expandedProps = Properties.GetExpandedProps(prop) + if #expandedProps > 0 then + recur(expandedProps,nextDepth) + end + end + end + end + end + recur(props,1) + + inputProp = nil + Properties.ViewWidth = maxWidth + 9 + Properties.EntryOffset + Properties.UpdateView() + end + + Properties.NewPropEntry = function(index) + local newEntry = Properties.EntryTemplate:Clone() + local nameFrame = newEntry.NameFrame + local valueFrame = newEntry.ValueFrame + local newCheckbox = Lib.Checkbox.new(0) + newCheckbox.Gui.Position = UDim2.new(0,3,0,3) + newCheckbox.Gui.Parent = valueFrame + newCheckbox.OnInput:Connect(function() + local prop = viewList[index + Properties.Index] + if not prop then return end + + if prop.ValueType.Name == "PhysicalProperties" then + Properties.SetProp(prop,newCheckbox.Toggled and true or nil) + else + Properties.SetProp(prop,newCheckbox.Toggled) + end + end) + checkboxes[index] = newCheckbox + + local iconFrame = Main.MiscIcons:GetLabel() + iconFrame.Position = UDim2.new(0,2,0,3) + iconFrame.Parent = newEntry.ValueFrame.RightButton + + newEntry.Position = UDim2.new(0,0,0,23*(index-1)) + + nameFrame.Expand.InputBegan:Connect(function(input) + local prop = viewList[index + Properties.Index] + if not prop or input.UserInputType ~= Enum.UserInputType.MouseMovement then return end + + local fullName = (prop.CategoryName and "CAT_"..prop.CategoryName) or prop.Class.."."..prop.Name..(prop.SubName or "") + + Main.MiscIcons:DisplayByKey(newEntry.NameFrame.Expand.Icon, expanded[fullName] and "Collapse_Over" or "Expand_Over") + end) + + nameFrame.Expand.InputEnded:Connect(function(input) + local prop = viewList[index + Properties.Index] + if not prop or input.UserInputType ~= Enum.UserInputType.MouseMovement then return end + + local fullName = (prop.CategoryName and "CAT_"..prop.CategoryName) or prop.Class.."."..prop.Name..(prop.SubName or "") + + Main.MiscIcons:DisplayByKey(newEntry.NameFrame.Expand.Icon, expanded[fullName] and "Collapse" or "Expand") + end) + + nameFrame.Expand.MouseButton1Down:Connect(function() + local prop = viewList[index + Properties.Index] + if not prop then return end + + local fullName = (prop.CategoryName and "CAT_"..prop.CategoryName) or prop.Class.."."..prop.Name..(prop.SubName or "") + if not prop.CategoryName and not Properties.ExpandableTypes[prop.ValueType and prop.ValueType.Name] and not Properties.ExpandableProps[fullName] then return end + + expanded[fullName] = not expanded[fullName] + Properties.Update() + Properties.Refresh() + end) + + nameFrame.PropName.InputBegan:Connect(function(input) + local prop = viewList[index + Properties.Index] + if not prop then return end + if input.UserInputType == Enum.UserInputType.MouseMovement and not nameFrame.PropName.TextFits then + local fullNameFrame = Properties.FullNameFrame + local nameArr = string.split(prop.Class.."."..prop.Name..(prop.SubName or ""),".") + local dispName = prop.DisplayName or nameArr[#nameArr] + local sizeX = service.TextService:GetTextSize(dispName,14,Enum.Font.SourceSans,Vector2.new(math.huge,20)).X + + fullNameFrame.TextLabel.Text = dispName + --fullNameFrame.Position = UDim2.new(0,Properties.EntryIndent*(prop.Depth or 1) + Properties.EntryOffset,0,23*(index-1)) + fullNameFrame.Size = UDim2.new(0,sizeX + 4,0,22) + fullNameFrame.Visible = true + Properties.FullNameFrameIndex = index + Properties.FullNameFrameAttach.SetData(fullNameFrame, {Target = nameFrame}) + Properties.FullNameFrameAttach.Enable() + end + end) + + nameFrame.PropName.InputEnded:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement and Properties.FullNameFrameIndex == index then + Properties.FullNameFrame.Visible = false + Properties.FullNameFrameAttach.Disable() + end + end) + + valueFrame.ValueBox.MouseButton1Down:Connect(function() + local prop = viewList[index + Properties.Index] + if not prop then return end + + Properties.SetInputProp(prop,index) + end) + + valueFrame.ColorButton.MouseButton1Down:Connect(function() + local prop = viewList[index + Properties.Index] + if not prop then return end + + Properties.SetInputProp(prop,index,"color") + end) + + valueFrame.RightButton.MouseButton1Click:Connect(function() + local prop = viewList[index + Properties.Index] + if not prop then return end + + local fullName = prop.Class.."."..prop.Name..(prop.SubName or "") + local inputFullName = inputProp and (inputProp.Class.."."..inputProp.Name..(inputProp.SubName or "")) + + if fullName == inputFullName and inputProp.ValueType.Category == "Class" then + inputProp = nil + Properties.SetProp(prop,nil) + else + Properties.SetInputProp(prop,index,"right") + end + end) + + nameFrame.ToggleAttributes.MouseButton1Click:Connect(function() + Settings.Properties.ShowAttributes = not Settings.Properties.ShowAttributes + Properties.ShowExplorerProps() + end) + + newEntry.RowButton.MouseButton1Click:Connect(function() + Properties.DisplayAddAttributeWindow() + end) + + newEntry.EditAttributeButton.MouseButton1Down:Connect(function() + local prop = viewList[index + Properties.Index] + if not prop then return end + + Properties.DisplayAttributeContext(prop) + end) + + valueFrame.SoundPreview.ControlButton.MouseButton1Click:Connect(function() + if Properties.PreviewSound and Properties.PreviewSound.Playing then + Properties.SetSoundPreview(false) + else + local soundObj = Properties.FindFirstObjWhichIsA("Sound") or Properties.FindFirstObjWhichIsA("AudioPlayer") + if soundObj then Properties.SetSoundPreview(soundObj) end + end + end) + + valueFrame.SoundPreview.InputBegan:Connect(function(input) + if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + + local releaseEvent,mouseEvent + releaseEvent = service.UserInputService.InputEnded:Connect(function(input) + if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + releaseEvent:Disconnect() + mouseEvent:Disconnect() + end) + + local timeLine = newEntry.ValueFrame.SoundPreview.TimeLine + local soundObj = Properties.FindFirstObjWhichIsA("Sound") or Properties.FindFirstObjWhichIsA("AudioPlayer") + if soundObj then Properties.SetSoundPreview(soundObj,true) end + + local function update(input) + local sound = Properties.PreviewSound + if not sound or sound.TimeLength == 0 then return end + + local mouseX = input.Position.X + local timeLineSize = timeLine.AbsoluteSize + local relaX = mouseX - timeLine.AbsolutePosition.X + + if timeLineSize.X <= 1 then return end + if relaX < 0 then relaX = 0 elseif relaX >= timeLineSize.X then relaX = timeLineSize.X-1 end + + local perc = (relaX/(timeLineSize.X-1)) + sound.TimePosition = perc*sound.TimeLength + timeLine.Slider.Position = UDim2.new(perc,-4,0,-8) + end + update(input) + + mouseEvent = service.UserInputService.InputChanged:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + update(input) + end + end) + end) + + newEntry.Parent = propsFrame + + return { + Gui = newEntry, + GuiElems = { + NameFrame = nameFrame, + ValueFrame = valueFrame, + PropName = nameFrame.PropName, + ValueBox = valueFrame.ValueBox, + Expand = nameFrame.Expand, + ColorButton = valueFrame.ColorButton, + ColorPreview = valueFrame.ColorButton.ColorPreview, + Gradient = valueFrame.ColorButton.ColorPreview.UIGradient, + EnumArrow = valueFrame.EnumArrow, + Checkbox = valueFrame.Checkbox, + RightButton = valueFrame.RightButton, + RightButtonIcon = iconFrame, + RowButton = newEntry.RowButton, + EditAttributeButton = newEntry.EditAttributeButton, + ToggleAttributes = nameFrame.ToggleAttributes, + SoundPreview = valueFrame.SoundPreview, + SoundPreviewSlider = valueFrame.SoundPreview.TimeLine.Slider + } + } + end + + Properties.GetSoundPreviewEntry = function() + for i = 1, #viewList do + local p = viewList[i] + if type(p) == "table" and p.IsSoundPreview then + return propEntries[i - Properties.Index] + end + end + end + + + Properties.SetSoundPreview = function(soundObj:Sound?,noplay:boolean) + local sound = Properties.PreviewSound + if not sound then + sound = Instance.new("Sound") + sound.Name = "Preview" + sound.Paused:Connect(function() + local entry = Properties.GetSoundPreviewEntry() + if entry then Main.MiscIcons:DisplayByKey(entry.GuiElems.SoundPreview.ControlButton.Icon, "Play") end + end) + sound.Resumed:Connect(function() Properties.Refresh() end) + sound.Ended:Connect(function() + local entry = Properties.GetSoundPreviewEntry() + if entry then entry.GuiElems.SoundPreviewSlider.Position = UDim2.new(0,-4,0,-8) end + Properties.Refresh() + end) + sound.Parent = window.Gui + Properties.PreviewSound = sound + end + + if not soundObj then + sound:Pause() + for i,v in pairs(sound:GetChildren()) do + v:Destroy() + end + else + local newId + if soundObj:IsA("Sound") then + newId = sound.SoundId ~= soundObj.SoundId + sound.SoundId = soundObj.SoundId + sound.PlaybackSpeed = soundObj.PlaybackSpeed + sound.Volume = soundObj.Volume + elseif soundObj:IsA("AudioPlayer") then + newId = sound.SoundId ~= soundObj.Asset + sound.SoundId = soundObj.Asset + if soundObj:FindFirstChild("PlaybackSpeed") then + sound.PlaybackSpeed = soundObj.PlaybackSpeed + end + if soundObj:FindFirstChild("Volume") then + sound.Volume = soundObj.Volume + end + else + return + end + if newId then + for _,v in ipairs(sound:GetChildren()) do v:Destroy() end + sound.TimePosition = 0 + end + for _,v in ipairs(soundObj:GetChildren()) do + v:Clone().Parent = sound + end + if not noplay then sound:Resume() end + task.spawn(function() + local previewTime = tick() + Properties.SoundPreviewTime = previewTime + while previewTime == Properties.SoundPreviewTime and sound.Playing do + local entry = Properties.GetSoundPreviewEntry() + if entry then + local tl = sound.TimeLength + local perc = sound.TimePosition/(tl == 0 and 1 or tl) + entry.GuiElems.SoundPreviewSlider.Position = UDim2.new(perc,-4,0,-8) + end + Lib.FastWait() + end + end) + Properties.Refresh() + end + end + + Properties.DisplayAttributeContext = function(prop) + local context = Properties.AttributeContext + if not context then + context = Lib.ContextMenu.new() + context.Iconless = true + context.Width = 80 + end + context:Clear() + + context:Add({Name = "Edit", OnClick = function() + Properties.DisplayAddAttributeWindow(prop) + end}) + context:Add({Name = "Delete", OnClick = function() + Properties.SetProp(prop,nil,true) + Properties.ShowExplorerProps() + end}) + + context:Show() + end + + Properties.DisplayAddAttributeWindow = function(editAttr) + local win = Properties.AddAttributeWindow + if not win then + win = Lib.Window.new() + win.Alignable = false + win.Resizable = false + win:SetTitle("Add Attribute") + win:SetSize(200,130) + + local saveButton = Lib.Button.new() + local nameLabel = Lib.Label.new() + nameLabel.Text = "Name" + nameLabel.Position = UDim2.new(0,30,0,10) + nameLabel.Size = UDim2.new(0,40,0,20) + win:Add(nameLabel) + + local nameBox = Lib.ViewportTextBox.new() + nameBox.Position = UDim2.new(0,75,0,10) + nameBox.Size = UDim2.new(0,120,0,20) + win:Add(nameBox,"NameBox") + nameBox.TextBox:GetPropertyChangedSignal("Text"):Connect(function() + saveButton:SetDisabled(#nameBox:GetText() == 0) + end) + + local typeLabel = Lib.Label.new() + typeLabel.Text = "Type" + typeLabel.Position = UDim2.new(0,30,0,40) + typeLabel.Size = UDim2.new(0,40,0,20) + win:Add(typeLabel) + + local typeChooser = Lib.DropDown.new() + typeChooser.CanBeEmpty = false + typeChooser.Position = UDim2.new(0,75,0,40) + typeChooser.Size = UDim2.new(0,120,0,20) + typeChooser:SetOptions(Properties.AllowedAttributeTypes) + win:Add(typeChooser,"TypeChooser") + + local errorLabel = Lib.Label.new() + errorLabel.Text = "" + errorLabel.Position = UDim2.new(0,5,1,-45) + errorLabel.Size = UDim2.new(1,-10,0,20) + errorLabel.TextColor3 = Settings.Theme.Important + win.ErrorLabel = errorLabel + win:Add(errorLabel,"Error") + + local cancelButton = Lib.Button.new() + cancelButton.Text = "Cancel" + cancelButton.Position = UDim2.new(1,-97,1,-25) + cancelButton.Size = UDim2.new(0,92,0,20) + cancelButton.OnClick:Connect(function() + win:Close() + end) + win:Add(cancelButton) + + saveButton.Text = "Save" + saveButton.Position = UDim2.new(0,5,1,-25) + saveButton.Size = UDim2.new(0,92,0,20) + saveButton.OnClick:Connect(function() + local name = nameBox:GetText() + if #name > 100 then + errorLabel.Text = "Error: Name over 100 chars" + return + elseif name:sub(1,3) == "RBX" then + errorLabel.Text = "Error: Name begins with 'RBX'" + return + end + + local typ = typeChooser.Selected + local valType = {Name = Properties.TypeNameConvert[typ] or typ, Category = "DataType"} + local attrProp = {IsAttribute = true, Name = "ATTR_"..name, AttributeName = name, DisplayName = name, Class = "Instance", ValueType = valType, Category = "Attributes", Tags = {}} + + Settings.Properties.ShowAttributes = true + Properties.SetProp(attrProp,Properties.DefaultPropValue[valType.Name],true,Properties.EditingAttribute) + Properties.ShowExplorerProps() + win:Close() + end) + win:Add(saveButton,"SaveButton") + + Properties.AddAttributeWindow = win + end + + Properties.EditingAttribute = editAttr + win:SetTitle(editAttr and "Edit Attribute "..editAttr.AttributeName or "Add Attribute") + win.Elements.Error.Text = "" + win.Elements.NameBox:SetText("") + win.Elements.SaveButton:SetDisabled(true) + win.Elements.TypeChooser:SetSelected(1) + win:Show() + end + + Properties.IsTextEditable = function(prop) + local typeData = prop.ValueType + local typeName = typeData.Name + + return typeName ~= "bool" and typeData.Category ~= "Enum" and typeData.Category ~= "Class" and typeName ~= "BrickColor" + end + + Properties.DisplayEnumDropdown = function(entryIndex) + local context = Properties.EnumContext + if not context then + context = Lib.ContextMenu.new() + context.Iconless = true + context.MaxHeight = 200 + context.ReverseYOffset = 22 + Properties.EnumDropdown = context + end + + if not inputProp or inputProp.ValueType.Category ~= "Enum" then return end + local prop = inputProp + + local entry = propEntries[entryIndex] + local valueFrame = entry.GuiElems.ValueFrame + + local enum = Enum[prop.ValueType.Name] + if not enum then return end + + local sorted = {} + for name,enum in next,enum:GetEnumItems() do + sorted[#sorted+1] = enum + end + table.sort(sorted,function(a,b) return a.Name < b.Name end) + + context:Clear() + + local function onClick(name) + if prop ~= inputProp then return end + + local enumItem = enum[name] + inputProp = nil + Properties.SetProp(prop,enumItem) + end + + for i = 1,#sorted do + local enumItem = sorted[i] + context:Add({Name = enumItem.Name, OnClick = onClick}) + end + + context.Width = valueFrame.AbsoluteSize.X + context:Show(valueFrame.AbsolutePosition.X, valueFrame.AbsolutePosition.Y + 22) + end + + Properties.DisplayBrickColorEditor = function(prop,entryIndex,col) + local editor = Properties.BrickColorEditor + if not editor then + editor = Lib.BrickColorPicker.new() + editor.Gui.DisplayOrder = Main.DisplayOrders.Menu + editor.ReverseYOffset = 22 + + editor.OnSelect:Connect(function(col) + if not editor.CurrentProp or editor.CurrentProp.ValueType.Name ~= "BrickColor" then return end + + if editor.CurrentProp == inputProp then inputProp = nil end + Properties.SetProp(editor.CurrentProp,BrickColor.new(col)) + end) + + editor.OnMoreColors:Connect(function() -- TODO: Special Case BasePart.BrickColor to BasePart.Color + editor:Close() + local colProp + for i,v in pairs(API.Classes.BasePart.Properties) do + if v.Name == "Color" then + colProp = v + break + end + end + Properties.DisplayColorEditor(colProp,editor.SavedColor.Color) + end) + + Properties.BrickColorEditor = editor + end + + local entry = propEntries[entryIndex] + local valueFrame = entry.GuiElems.ValueFrame + + editor.CurrentProp = prop + editor.SavedColor = col + if prop and prop.Class == "BasePart" and prop.Name == "BrickColor" then + editor:SetMoreColorsVisible(true) + else + editor:SetMoreColorsVisible(false) + end + editor:Show(valueFrame.AbsolutePosition.X, valueFrame.AbsolutePosition.Y + 22) + end + + Properties.DisplayColorEditor = function(prop,col) + local editor = Properties.ColorEditor + if not editor then + editor = Lib.ColorPicker.new() + + editor.OnSelect:Connect(function(col) + if not editor.CurrentProp then return end + local typeName = editor.CurrentProp.ValueType.Name + if typeName ~= "Color3" and typeName ~= "BrickColor" then return end + + local colVal = (typeName == "Color3" and col or BrickColor.new(col)) + + if editor.CurrentProp == inputProp then inputProp = nil end + Properties.SetProp(editor.CurrentProp,colVal) + end) + + Properties.ColorEditor = editor + end + + editor.CurrentProp = prop + if col then + editor:SetColor(col) + else + local firstVal = Properties.GetFirstPropVal(prop) + if firstVal then editor:SetColor(firstVal) end + end + editor:Show() + end + + Properties.DisplayNumberSequenceEditor = function(prop,seq) + local editor = Properties.NumberSequenceEditor + if not editor then + editor = Lib.NumberSequenceEditor.new() + + editor.OnSelect:Connect(function(val) + if not editor.CurrentProp or editor.CurrentProp.ValueType.Name ~= "NumberSequence" then return end + + if editor.CurrentProp == inputProp then inputProp = nil end + Properties.SetProp(editor.CurrentProp,val) + end) + + Properties.NumberSequenceEditor = editor + end + + editor.CurrentProp = prop + if seq then + editor:SetSequence(seq) + else + local firstVal = Properties.GetFirstPropVal(prop) + if firstVal then editor:SetSequence(firstVal) end + end + editor:Show() + end + + Properties.DisplayColorSequenceEditor = function(prop,seq) + local editor = Properties.ColorSequenceEditor + if not editor then + editor = Lib.ColorSequenceEditor.new() + + editor.OnSelect:Connect(function(val) + if not editor.CurrentProp or editor.CurrentProp.ValueType.Name ~= "ColorSequence" then return end + + if editor.CurrentProp == inputProp then inputProp = nil end + Properties.SetProp(editor.CurrentProp,val) + end) + + Properties.ColorSequenceEditor = editor + end + + editor.CurrentProp = prop + if seq then + editor:SetSequence(seq) + else + local firstVal = Properties.GetFirstPropVal(prop) + if firstVal then editor:SetSequence(firstVal) end + end + editor:Show() + end + + Properties.GetFirstPropVal = function(prop) + local first = Properties.FindFirstObjWhichIsA(prop.Class) + if first then + return Properties.GetPropVal(prop,first) + end + end + + Properties.GetPropVal = function(prop,obj) + if prop.MultiType then return "" end + if not obj then return end + + local propVal + if prop.IsAttribute then + propVal = getAttribute(obj,prop.AttributeName) + if propVal == nil then return nil end + + local typ = typeof(propVal) + local currentType = Properties.TypeNameConvert[typ] or typ + if prop.RootType then + if prop.RootType.Name ~= currentType then + return nil + end + elseif prop.ValueType.Name ~= currentType then + return nil + end + else + propVal = obj[prop.Name] + end + if prop.SubName then + local indexes = string.split(prop.SubName,".") + for i = 1,#indexes do + local indexName = indexes[i] + if #indexName > 0 and propVal then + propVal = propVal[indexName] + end + end + end + + return propVal + end + + Properties.SelectObject = function(obj) + if inputProp and inputProp.ValueType.Category == "Class" then + local prop = inputProp + inputProp = nil + + if isa(obj,prop.ValueType.Name) then + Properties.SetProp(prop,obj) + else + Properties.Refresh() + end + + return true + end + + return false + end + + Properties.DisplayProp = function(prop,entryIndex) + local propName = prop.Name + local typeData = prop.ValueType + local typeName = typeData.Name + local tags = prop.Tags + local gName = prop.Class.."."..prop.Name..(prop.SubName or "") + local propObj = autoUpdateObjs[gName] + local entryData = propEntries[entryIndex] + local UDim2 = UDim2 + + local guiElems = entryData.GuiElems + local valueFrame = guiElems.ValueFrame + local valueBox = guiElems.ValueBox + local colorButton = guiElems.ColorButton + local colorPreview = guiElems.ColorPreview + local gradient = guiElems.Gradient + local enumArrow = guiElems.EnumArrow + local checkbox = guiElems.Checkbox + local rightButton = guiElems.RightButton + local soundPreview = guiElems.SoundPreview + + local propVal = Properties.GetPropVal(prop,propObj) + local inputFullName = inputProp and (inputProp.Class.."."..inputProp.Name..(inputProp.SubName or "")) + + local offset = 4 + local endOffset = 6 + + -- Offsetting the ValueBox for ValueType specific buttons + if (typeName == "Color3" or typeName == "BrickColor" or typeName == "ColorSequence") then + colorButton.Visible = true + enumArrow.Visible = false + if propVal then + gradient.Color = (typeName == "Color3" and ColorSequence.new(propVal)) or (typeName == "BrickColor" and ColorSequence.new(propVal.Color)) or propVal + else + gradient.Color = ColorSequence.new(Color3.new(1,1,1)) + end + colorPreview.BorderColor3 = (typeName == "ColorSequence" and Color3.new(1,1,1) or Color3.new(0,0,0)) + offset = 22 + endOffset = 24 + (typeName == "ColorSequence" and 20 or 0) + elseif typeData.Category == "Enum" then + colorButton.Visible = false + enumArrow.Visible = not prop.Tags.ReadOnly + endOffset = 22 + elseif (gName == inputFullName and typeData.Category == "Class") or typeName == "NumberSequence" then + colorButton.Visible = false + enumArrow.Visible = false + endOffset = 26 + else + colorButton.Visible = false + enumArrow.Visible = false + end + + valueBox.Position = UDim2.new(0,offset,0,0) + valueBox.Size = UDim2.new(1,-endOffset,1,0) + + -- Right button + if inputFullName == gName and typeData.Category == "Class" then + Main.MiscIcons:DisplayByKey(guiElems.RightButtonIcon, "Delete") + guiElems.RightButtonIcon.Visible = true + rightButton.Text = "" + rightButton.Visible = true + elseif typeName == "NumberSequence" or typeName == "ColorSequence" then + guiElems.RightButtonIcon.Visible = false + rightButton.Text = "..." + rightButton.Visible = true + else + rightButton.Visible = false + end + + -- Displays the correct ValueBox for the ValueType, and sets it to the prop value + if typeName == "bool" or typeName == "PhysicalProperties" then + valueBox.Visible = false + checkbox.Visible = true + soundPreview.Visible = false + checkboxes[entryIndex].Disabled = tags.ReadOnly + if typeName == "PhysicalProperties" and autoUpdateObjs[gName] then + checkboxes[entryIndex]:SetState(propVal and true or false) + else + checkboxes[entryIndex]:SetState(propVal) + end + elseif typeName == "SoundPlayer" then + valueBox.Visible = false + checkbox.Visible = false + soundPreview.Visible = true + local playing = Properties.PreviewSound and Properties.PreviewSound.Playing + Main.MiscIcons:DisplayByKey(soundPreview.ControlButton.Icon, playing and "Pause" or "Play") + else + valueBox.Visible = true + checkbox.Visible = false + soundPreview.Visible = false + + if propVal ~= nil then + if typeName == "Color3" then + valueBox.Text = "["..Lib.ColorToBytes(propVal).."]" + elseif typeData.Category == "Enum" then + valueBox.Text = propVal.Name + elseif Properties.RoundableTypes[typeName] and Settings.Properties.NumberRounding then + local rawStr = Properties.ValueToString(prop,propVal) + valueBox.Text = rawStr:gsub("-?%d+%.%d+",function(num) + return tostring(tonumber(("%."..Settings.Properties.NumberRounding.."f"):format(num))) + end) + else + valueBox.Text = Properties.ValueToString(prop,propVal) + end + else + valueBox.Text = "" + end + + valueBox.TextColor3 = tags.ReadOnly and Settings.Theme.PlaceholderText or Settings.Theme.Text + end + end + + Properties.Refresh = function() + local maxEntries = math.max(math.ceil((propsFrame.AbsoluteSize.Y) / 23),0) + local maxX = propsFrame.AbsoluteSize.X + local valueWidth = math.max(Properties.MinInputWidth,maxX-Properties.ViewWidth) + local inputPropVisible = false + local isa = game.IsA + local UDim2 = UDim2 + local stringSplit = string.split + local scaleType = Settings.Properties.ScaleType + + -- Clear connections + for i = 1,#propCons do + propCons[i]:Disconnect() + end + table.clear(propCons) + + -- Hide full name viewer + Properties.FullNameFrame.Visible = false + Properties.FullNameFrameAttach.Disable() + + for i = 1,maxEntries do + local entryData = propEntries[i] + if not propEntries[i] then entryData = Properties.NewPropEntry(i) propEntries[i] = entryData end + + local entry = entryData.Gui + local guiElems = entryData.GuiElems + local nameFrame = guiElems.NameFrame + local propNameLabel = guiElems.PropName + local valueFrame = guiElems.ValueFrame + local expand = guiElems.Expand + local valueBox = guiElems.ValueBox + local propNameBox = guiElems.PropName + local rightButton = guiElems.RightButton + local editAttributeButton = guiElems.EditAttributeButton + local toggleAttributes = guiElems.ToggleAttributes + + local prop = viewList[i + Properties.Index] + if prop then + local entryXOffset = (scaleType == 0 and scrollH.Index or 0) + entry.Visible = true + entry.Position = UDim2.new(0,-entryXOffset,0,entry.Position.Y.Offset) + entry.Size = UDim2.new(scaleType == 0 and 0 or 1, scaleType == 0 and Properties.ViewWidth + valueWidth or 0,0,22) + + if prop.SpecialRow then + if prop.SpecialRow == "AddAttribute" then + nameFrame.Visible = false + valueFrame.Visible = false + guiElems.RowButton.Visible = true + end + else + -- Revert special row stuff + nameFrame.Visible = true + guiElems.RowButton.Visible = false + + local depth = Properties.EntryIndent*(prop.Depth or 1) + local leftOffset = depth + Properties.EntryOffset + nameFrame.Position = UDim2.new(0,leftOffset,0,0) + propNameLabel.Size = UDim2.new(1,-2 - (scaleType == 0 and 0 or 6),1,0) + + local gName = (prop.CategoryName and "CAT_"..prop.CategoryName) or prop.Class.."."..prop.Name..(prop.SubName or "") + + if prop.CategoryName then + entry.BackgroundColor3 = Settings.Theme.Main1 + valueFrame.Visible = false + + propNameBox.Text = prop.CategoryName + propNameBox.Font = Enum.Font.SourceSansBold + expand.Visible = true + propNameBox.TextColor3 = Settings.Theme.Text + nameFrame.BackgroundTransparency = 1 + nameFrame.Size = UDim2.new(1,0,1,0) + editAttributeButton.Visible = false + + local showingAttrs = Settings.Properties.ShowAttributes + toggleAttributes.Position = UDim2.new(1,-85-leftOffset,0,0) + toggleAttributes.Text = (showingAttrs and "[Setting: ON]" or "[Setting: OFF]") + toggleAttributes.TextColor3 = Settings.Theme.Text + toggleAttributes.Visible = (prop.CategoryName == "Attributes") + else + local propName = prop.Name + local typeData = prop.ValueType + local typeName = typeData.Name + local tags = prop.Tags + local propObj = autoUpdateObjs[gName] + + local attributeOffset = (prop.IsAttribute and 20 or 0) + editAttributeButton.Visible = (prop.IsAttribute and not prop.RootType) + toggleAttributes.Visible = false + + -- Moving around the frames + if scaleType == 0 then + nameFrame.Size = UDim2.new(0,Properties.ViewWidth - leftOffset - 1,1,0) + valueFrame.Position = UDim2.new(0,Properties.ViewWidth,0,0) + valueFrame.Size = UDim2.new(0,valueWidth - attributeOffset,1,0) + else + nameFrame.Size = UDim2.new(0.5,-leftOffset - 1,1,0) + valueFrame.Position = UDim2.new(0.5,0,0,0) + valueFrame.Size = UDim2.new(0.5,-attributeOffset,1,0) + end + + local nameArr = stringSplit(gName,".") + propNameBox.Text = prop.DisplayName or nameArr[#nameArr] + propNameBox.Font = Enum.Font.SourceSans + entry.BackgroundColor3 = Settings.Theme.Main2 + valueFrame.Visible = true + + expand.Visible = typeData.Category == "DataType" and Properties.ExpandableTypes[typeName] or Properties.ExpandableProps[gName] + propNameBox.TextColor3 = tags.ReadOnly and Settings.Theme.PlaceholderText or Settings.Theme.Text + + -- Display property value + Properties.DisplayProp(prop,i) + if propObj then + if prop.IsAttribute then + propCons[#propCons+1] = getAttributeChangedSignal(propObj,prop.AttributeName):Connect(function() + Properties.DisplayProp(prop,i) + end) + else + propCons[#propCons+1] = getPropChangedSignal(propObj,propName):Connect(function() + Properties.DisplayProp(prop,i) + end) + end + end + + -- Position and resize Input Box + local beforeVisible = valueBox.Visible + local inputFullName = inputProp and (inputProp.Class.."."..inputProp.Name..(inputProp.SubName or "")) + if gName == inputFullName then + nameFrame.BackgroundColor3 = Settings.Theme.ListSelection + nameFrame.BackgroundTransparency = 0 + if typeData.Category == "Class" or typeData.Category == "Enum" or typeName == "BrickColor" then + valueFrame.BackgroundColor3 = Settings.Theme.TextBox + valueFrame.BackgroundTransparency = 0 + valueBox.Visible = true + else + inputPropVisible = true + local scale = (scaleType == 0 and 0 or 0.5) + local offset = (scaleType == 0 and Properties.ViewWidth-scrollH.Index or 0) + local endOffset = 0 + + if typeName == "Color3" or typeName == "ColorSequence" then + offset = offset + 22 + end + + if typeName == "NumberSequence" or typeName == "ColorSequence" then + endOffset = 20 + end + + inputBox.Position = UDim2.new(scale,offset,0,entry.Position.Y.Offset) + inputBox.Size = UDim2.new(1-scale,-offset-endOffset-attributeOffset,0,22) + inputBox.Visible = true + valueBox.Visible = false + end + else + nameFrame.BackgroundColor3 = Settings.Theme.Main1 + nameFrame.BackgroundTransparency = 1 + valueFrame.BackgroundColor3 = Settings.Theme.Main1 + valueFrame.BackgroundTransparency = 1 + valueBox.Visible = beforeVisible + end + end + + -- Expand + if prop.CategoryName or Properties.ExpandableTypes[prop.ValueType and prop.ValueType.Name] or Properties.ExpandableProps[gName] then + if Lib.CheckMouseInGui(expand) then + Main.MiscIcons:DisplayByKey(expand.Icon, expanded[gName] and "Collapse_Over" or "Expand_Over") + else + Main.MiscIcons:DisplayByKey(expand.Icon, expanded[gName] and "Collapse" or "Expand") + end + expand.Visible = true + else + expand.Visible = false + end + end + entry.Visible = true + else + entry.Visible = false + end + end + + if not inputPropVisible then + inputBox.Visible = false + end + + for i = maxEntries+1,#propEntries do + propEntries[i].Gui:Destroy() + propEntries[i] = nil + checkboxes[i] = nil + end + end + + Properties.SetProp = function(prop,val,noupdate,prevAttribute) + local sList = Explorer.Selection.List + local propName = prop.Name + local subName = prop.SubName + local propClass = prop.Class + local typeData = prop.ValueType + local typeName = typeData.Name + local attributeName = prop.AttributeName + local rootTypeData = prop.RootType + local rootTypeName = rootTypeData and rootTypeData.Name + local fullName = prop.Class.."."..prop.Name..(prop.SubName or "") + local Vector3 = Vector3 + + for i = 1,#sList do + local node = sList[i] + local obj = node.Obj + + if isa(obj,propClass) then + pcall(function() + local setVal = val + local root + if prop.IsAttribute then + root = getAttribute(obj,attributeName) + else + root = obj[propName] + end + + if prevAttribute then + if prevAttribute.ValueType.Name == typeName then + setVal = getAttribute(obj,prevAttribute.AttributeName) or setVal + end + setAttribute(obj,prevAttribute.AttributeName,nil) + + -- ADONIS + Dex_RemoteFunction:InvokeServer("SetPropertyAttribute", obj, attributeName, setVal) + end + + if rootTypeName then + if rootTypeName == "Vector2" then + setVal = Vector2.new((subName == ".X" and setVal) or root.X, (subName == ".Y" and setVal) or root.Y) + elseif rootTypeName == "Vector3" then + setVal = Vector3.new((subName == ".X" and setVal) or root.X, (subName == ".Y" and setVal) or root.Y, (subName == ".Z" and setVal) or root.Z) + elseif rootTypeName == "UDim" then + setVal = UDim.new((subName == ".Scale" and setVal) or root.Scale, (subName == ".Offset" and setVal) or root.Offset) + elseif rootTypeName == "UDim2" then + local rootX,rootY = root.X,root.Y + local X_UDim = (subName == ".X" and setVal) or UDim.new((subName == ".X.Scale" and setVal) or rootX.Scale, (subName == ".X.Offset" and setVal) or rootX.Offset) + local Y_UDim = (subName == ".Y" and setVal) or UDim.new((subName == ".Y.Scale" and setVal) or rootY.Scale, (subName == ".Y.Offset" and setVal) or rootY.Offset) + setVal = UDim2.new(X_UDim,Y_UDim) + elseif rootTypeName == "CFrame" then + local rootPos,rootRight,rootUp,rootLook = root.Position,root.RightVector,root.UpVector,root.LookVector + local pos = (subName == ".Position" and setVal) or Vector3.new((subName == ".Position.X" and setVal) or rootPos.X, (subName == ".Position.Y" and setVal) or rootPos.Y, (subName == ".Position.Z" and setVal) or rootPos.Z) + local rightV = (subName == ".RightVector" and setVal) or Vector3.new((subName == ".RightVector.X" and setVal) or rootRight.X, (subName == ".RightVector.Y" and setVal) or rootRight.Y, (subName == ".RightVector.Z" and setVal) or rootRight.Z) + local upV = (subName == ".UpVector" and setVal) or Vector3.new((subName == ".UpVector.X" and setVal) or rootUp.X, (subName == ".UpVector.Y" and setVal) or rootUp.Y, (subName == ".UpVector.Z" and setVal) or rootUp.Z) + local lookV = (subName == ".LookVector" and setVal) or Vector3.new((subName == ".LookVector.X" and setVal) or rootLook.X, (subName == ".RightVector.Y" and setVal) or rootLook.Y, (subName == ".RightVector.Z" and setVal) or rootLook.Z) + setVal = CFrame.fromMatrix(pos,rightV,upV,-lookV) + elseif rootTypeName == "Rect" then + local rootMin,rootMax = root.Min,root.Max + local min = Vector2.new((subName == ".Min.X" and setVal) or rootMin.X, (subName == ".Min.Y" and setVal) or rootMin.Y) + local max = Vector2.new((subName == ".Max.X" and setVal) or rootMax.X, (subName == ".Max.Y" and setVal) or rootMax.Y) + setVal = Rect.new(min,max) + elseif rootTypeName == "PhysicalProperties" then + local rootProps = PhysicalProperties.new(obj.Material) + local density = (subName == ".Density" and setVal) or (root and root.Density) or rootProps.Density + local friction = (subName == ".Friction" and setVal) or (root and root.Friction) or rootProps.Friction + local elasticity = (subName == ".Elasticity" and setVal) or (root and root.Elasticity) or rootProps.Elasticity + local frictionWeight = (subName == ".FrictionWeight" and setVal) or (root and root.FrictionWeight) or rootProps.FrictionWeight + local elasticityWeight = (subName == ".ElasticityWeight" and setVal) or (root and root.ElasticityWeight) or rootProps.ElasticityWeight + setVal = PhysicalProperties.new(density,friction,elasticity,frictionWeight,elasticityWeight) + elseif rootTypeName == "Ray" then + local rootOrigin,rootDirection = root.Origin,root.Direction + local origin = (subName == ".Origin" and setVal) or Vector3.new((subName == ".Origin.X" and setVal) or rootOrigin.X, (subName == ".Origin.Y" and setVal) or rootOrigin.Y, (subName == ".Origin.Z" and setVal) or rootOrigin.Z) + local direction = (subName == ".Direction" and setVal) or Vector3.new((subName == ".Direction.X" and setVal) or rootDirection.X, (subName == ".Direction.Y" and setVal) or rootDirection.Y, (subName == ".Direction.Z" and setVal) or rootDirection.Z) + setVal = Ray.new(origin,direction) + elseif rootTypeName == "Faces" then + local faces = {} + local faceList = {"Back","Bottom","Front","Left","Right","Top"} + for _,face in pairs(faceList) do + local val + if subName == "."..face then + val = setVal + else + val = root[face] + end + if val then faces[#faces+1] = Enum.NormalId[face] end + end + setVal = Faces.new(unpack(faces)) + elseif rootTypeName == "Axes" then + local axes = {} + local axesList = {"X","Y","Z"} + for _,axe in pairs(axesList) do + local val + if subName == "."..axe then + val = setVal + else + val = root[axe] + end + if val then axes[#axes+1] = Enum.Axis[axe] end + end + setVal = Axes.new(unpack(axes)) + elseif rootTypeName == "NumberRange" then + setVal = NumberRange.new(subName == ".Min" and setVal or root.Min, subName == ".Max" and setVal or root.Max) + end + end + + if typeName == "PhysicalProperties" and setVal then + setVal = root or PhysicalProperties.new(obj.Material) + end + + if prop.IsAttribute then + setAttribute(obj,attributeName,setVal) + + -- ADONIS + Dex_RemoteFunction:InvokeServer("SetPropertyAttribute", obj, attributeName, setVal) + else + obj[propName] = setVal + + -- ADONIS + Dex_RemoteFunction:InvokeServer("SetProperty", obj, propName, setVal) + end + end) + end + end + + if not noupdate then + Properties.ComputeConflicts(prop) + end + end + + Properties.InitInputBox = function() + inputBox = create({ + {1,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderSizePixel=0,Name="InputBox",Size=UDim2.new(0,200,0,22),Visible=false,ZIndex=2,}}, + {2,"TextBox",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BackgroundTransparency=1,BorderColor3=Color3.new(0.062745101749897,0.51764708757401,1),BorderSizePixel=0,ClearTextOnFocus=false,Font=3,Parent={1},PlaceholderColor3=Color3.new(0.69803923368454,0.69803923368454,0.69803923368454),Position=UDim2.new(0,3,0,0),Size=UDim2.new(1,-6,1,0),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,TextXAlignment=0,ZIndex=2,}}, + }) + inputTextBox = inputBox.TextBox + inputBox.BackgroundColor3 = Settings.Theme.TextBox + inputBox.Parent = Properties.Window.GuiElems.Content.List + + inputTextBox.FocusLost:Connect(function() + if not inputProp then return end + + local prop = inputProp + inputProp = nil + local val = Properties.StringToValue(prop,inputTextBox.Text) + if val then Properties.SetProp(prop,val) else Properties.Refresh() end + end) + + inputTextBox.Focused:Connect(function() + inputTextBox.SelectionStart = 1 + inputTextBox.CursorPosition = #inputTextBox.Text + 1 + end) + + Lib.ViewportTextBox.convert(inputTextBox) + end + + Properties.SetInputProp = function(prop,entryIndex,special) + local typeData = prop.ValueType + local typeName = typeData.Name + local fullName = prop.Class.."."..prop.Name..(prop.SubName or "") + local propObj = autoUpdateObjs[fullName] + local propVal = Properties.GetPropVal(prop,propObj) + + if prop.Tags.ReadOnly then return end + + inputProp = prop + if special then + if special == "color" then + if typeName == "Color3" then + inputTextBox.Text = propVal and Properties.ValueToString(prop,propVal) or "" + Properties.DisplayColorEditor(prop,propVal) + elseif typeName == "BrickColor" then + Properties.DisplayBrickColorEditor(prop,entryIndex,propVal) + elseif typeName == "ColorSequence" then + inputTextBox.Text = propVal and Properties.ValueToString(prop,propVal) or "" + Properties.DisplayColorSequenceEditor(prop,propVal) + end + elseif special == "right" then + if typeName == "NumberSequence" then + inputTextBox.Text = propVal and Properties.ValueToString(prop,propVal) or "" + Properties.DisplayNumberSequenceEditor(prop,propVal) + elseif typeName == "ColorSequence" then + inputTextBox.Text = propVal and Properties.ValueToString(prop,propVal) or "" + Properties.DisplayColorSequenceEditor(prop,propVal) + end + end + else + if Properties.IsTextEditable(prop) then + -- TODO: A setting maybe. + --inputTextBox.Text = propVal and Properties.ValueToString(prop,propVal) or "" + local rawStr = propVal and Properties.ValueToString(prop,propVal) or "" + inputTextBox.Text = rawStr:gsub("-?%d+%.%d+",function(num) + return tostring(tonumber(("%."..Settings.Properties.NumberRounding.."f"):format(num))) + end) + inputTextBox:CaptureFocus() + elseif typeData.Category == "Enum" then + Properties.DisplayEnumDropdown(entryIndex) + elseif typeName == "BrickColor" then + Properties.DisplayBrickColorEditor(prop,entryIndex,propVal) + end + end + Properties.Refresh() + end + + Properties.InitSearch = function() + local searchBox = Properties.GuiElems.ToolBar.SearchFrame.SearchBox + + Lib.ViewportTextBox.convert(searchBox) + + searchBox:GetPropertyChangedSignal("Text"):Connect(function() + Properties.SearchText = searchBox.Text + Properties.Update() + Properties.Refresh() + end) + end + + Properties.InitEntryStuff = function() + Properties.EntryTemplate = create({ + {1,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BackgroundTransparency=0.2,BorderColor3=Color3.new(0.1294117718935,0.1294117718935,0.1294117718935),Font=3,Name="Entry",Position=UDim2.new(0,1,0,1),Size=UDim2.new(0,250,0,22),Text="",TextSize=14,}}, + {2,"Frame",{BackgroundColor3=Color3.new(0.04313725605607,0.35294118523598,0.68627452850342),BackgroundTransparency=1,BorderColor3=Color3.new(0.33725491166115,0.49019610881805,0.73725491762161),BorderSizePixel=0,Name="NameFrame",Parent={1},Position=UDim2.new(0,20,0,0),Size=UDim2.new(1,-40,1,0),}}, + {3,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="PropName",Parent={2},Position=UDim2.new(0,2,0,0),Size=UDim2.new(1,-2,1,0),Text="Anchored",TextColor3=Color3.new(1,1,1),TextSize=14,TextTransparency=0.10000000149012,TextTruncate=1,TextXAlignment=0,}}, + {4,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,ClipsDescendants=true,Font=3,Name="Expand",Parent={2},Position=UDim2.new(0,-20,0,1),Size=UDim2.new(0,20,0,20),Text="",TextSize=14,Visible=false,}}, + {5,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://5642383285",ImageRectOffset=Vector2.new(144,16),ImageRectSize=Vector2.new(16,16),Name="Icon",Parent={4},Position=UDim2.new(0,2,0,2),ScaleType=4,Size=UDim2.new(0,16,0,16),}}, + {6,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=4,Name="ToggleAttributes",Parent={2},Position=UDim2.new(1,-85,0,0),Size=UDim2.new(0,85,0,22),Text="[SETTING: OFF]",TextColor3=Color3.new(1,1,1),TextSize=14,TextTransparency=0.10000000149012,Visible=false,}}, + {7,"Frame",{BackgroundColor3=Color3.new(0.04313725605607,0.35294118523598,0.68627452850342),BackgroundTransparency=1,BorderColor3=Color3.new(0.33725491166115,0.49019607901573,0.73725491762161),BorderSizePixel=0,Name="ValueFrame",Parent={1},Position=UDim2.new(1,-100,0,0),Size=UDim2.new(0,80,1,0),}}, + {8,"Frame",{BackgroundColor3=Color3.new(0.14117647707462,0.14117647707462,0.14117647707462),BorderColor3=Color3.new(0.33725491166115,0.49019610881805,0.73725491762161),BorderSizePixel=0,Name="Line",Parent={7},Position=UDim2.new(0,-1,0,0),Size=UDim2.new(0,1,1,0),}}, + {9,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="ColorButton",Parent={7},Size=UDim2.new(0,20,0,22),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,Visible=false,}}, + {10,"Frame",{BackgroundColor3=Color3.new(1,1,1),BorderColor3=Color3.new(0,0,0),Name="ColorPreview",Parent={9},Position=UDim2.new(0,5,0,6),Size=UDim2.new(0,10,0,10),}}, + {11,"UIGradient",{Parent={10},}}, + {12,"Frame",{BackgroundTransparency=1,Name="EnumArrow",Parent={7},Position=UDim2.new(1,-16,0,3),Size=UDim2.new(0,16,0,16),Visible=false,}}, + {13,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={12},Position=UDim2.new(0,8,0,9),Size=UDim2.new(0,1,0,1),}}, + {14,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={12},Position=UDim2.new(0,7,0,8),Size=UDim2.new(0,3,0,1),}}, + {15,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={12},Position=UDim2.new(0,6,0,7),Size=UDim2.new(0,5,0,1),}}, + {16,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="ValueBox",Parent={7},Position=UDim2.new(0,4,0,0),Size=UDim2.new(1,-8,1,0),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,TextTransparency=0.10000000149012,TextTruncate=1,TextXAlignment=0,}}, + {17,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="RightButton",Parent={7},Position=UDim2.new(1,-20,0,0),Size=UDim2.new(0,20,0,22),Text="...",TextColor3=Color3.new(1,1,1),TextSize=14,Visible=false,}}, + {18,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="SettingsButton",Parent={7},Position=UDim2.new(1,-20,0,0),Size=UDim2.new(0,20,0,22),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,Visible=false,}}, + {19,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Name="SoundPreview",Parent={7},Size=UDim2.new(1,0,1,0),Visible=false,}}, + {20,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="ControlButton",Parent={19},Size=UDim2.new(0,20,0,22),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,}}, + {21,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://5642383285",ImageRectOffset=Vector2.new(144,16),ImageRectSize=Vector2.new(16,16),Name="Icon",Parent={20},Position=UDim2.new(0,2,0,3),ScaleType=4,Size=UDim2.new(0,16,0,16),}}, + {22,"Frame",{BackgroundColor3=Color3.new(0.3137255012989,0.3137255012989,0.3137255012989),BorderSizePixel=0,Name="TimeLine",Parent={19},Position=UDim2.new(0,26,0.5,-1),Size=UDim2.new(1,-34,0,2),}}, + {23,"Frame",{BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderColor3=Color3.new(0.1294117718935,0.1294117718935,0.1294117718935),Name="Slider",Parent={22},Position=UDim2.new(0,-4,0,-8),Size=UDim2.new(0,8,0,18),}}, + {24,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="EditAttributeButton",Parent={1},Position=UDim2.new(1,-20,0,0),Size=UDim2.new(0,20,0,22),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,}}, + {25,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://5034718180",ImageTransparency=0.20000000298023,Name="Icon",Parent={24},Position=UDim2.new(0,2,0,3),Size=UDim2.new(0,16,0,16),}}, + {26,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderSizePixel=0,Font=3,Name="RowButton",Parent={1},Size=UDim2.new(1,0,1,0),Text="Add Attribute",TextColor3=Color3.new(1,1,1),TextSize=14,TextTransparency=0.10000000149012,Visible=false,}}, + }) + + local fullNameFrame = Lib.Frame.new() + local label = Lib.Label.new() + label.Parent = fullNameFrame.Gui + label.Position = UDim2.new(0,2,0,0) + label.Size = UDim2.new(1,-4,1,0) + fullNameFrame.Visible = false + fullNameFrame.Parent = window.Gui + + Properties.FullNameFrame = fullNameFrame + Properties.FullNameFrameAttach = Lib.AttachTo(fullNameFrame) + end + + Properties.Init = function() -- TODO: MAKE BETTER + local guiItems = create({ + {1,"Folder",{Name="Items",}}, + {2,"Frame",{BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),BorderSizePixel=0,Name="ToolBar",Parent={1},Size=UDim2.new(1,0,0,22),}}, + {3,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.1176470592618,0.1176470592618,0.1176470592618),BorderSizePixel=0,Name="SearchFrame",Parent={2},Position=UDim2.new(0,3,0,1),Size=UDim2.new(1,-6,0,18),}}, + {4,"TextBox",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,ClearTextOnFocus=false,Font=3,Name="SearchBox",Parent={3},PlaceholderColor3=Color3.new(0.39215689897537,0.39215689897537,0.39215689897537),PlaceholderText="Search properties",Position=UDim2.new(0,4,0,0),Size=UDim2.new(1,-24,0,18),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,TextXAlignment=0,}}, + {5,"UICorner",{CornerRadius=UDim.new(0,2),Parent={3},}}, + {6,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Reset",Parent={3},Position=UDim2.new(1,-17,0,1),Size=UDim2.new(0,16,0,16),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,}}, + {7,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://5034718129",ImageColor3=Color3.new(0.39215686917305,0.39215686917305,0.39215686917305),Parent={6},Size=UDim2.new(0,16,0,16),}}, + {8,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Refresh",Parent={2},Position=UDim2.new(1,-20,0,1),Size=UDim2.new(0,18,0,18),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,Visible=false,}}, + {9,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://5642310344",Parent={8},Position=UDim2.new(0,3,0,3),Size=UDim2.new(0,12,0,12),}}, + {10,"Frame",{BackgroundColor3=Color3.new(0.15686275064945,0.15686275064945,0.15686275064945),BorderSizePixel=0,Name="ScrollCorner",Parent={1},Position=UDim2.new(1,-16,1,-16),Size=UDim2.new(0,16,0,16),Visible=false,}}, + {11,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,ClipsDescendants=true,Name="List",Parent={1},Position=UDim2.new(0,0,0,23),Size=UDim2.new(1,0,1,-23),}}, + }) + + -- Vars + categoryOrder = API.CategoryOrder + for category,_ in next,categoryOrder do + if not Properties.CollapsedCategories[category] then + expanded["CAT_"..category] = true + end + end + expanded["Sound.SoundId"] = true + expanded["AudioPlayer.Asset"] = true + + -- Init window + window = Lib.Window.new() + Properties.Window = window + window:SetTitle("Properties") + + toolBar = guiItems.ToolBar + propsFrame = guiItems.List + + Properties.GuiElems.ToolBar = toolBar + Properties.GuiElems.PropsFrame = propsFrame + + Properties.InitEntryStuff() + + -- Window events + window.GuiElems.Main:GetPropertyChangedSignal("AbsoluteSize"):Connect(function() + if Properties.Window:IsContentVisible() then + Properties.UpdateView() + Properties.Refresh() + end + end) + window.OnActivate:Connect(function() + Properties.UpdateView() + Properties.Update() + Properties.Refresh() + end) + window.OnRestore:Connect(function() + Properties.UpdateView() + Properties.Update() + Properties.Refresh() + end) + + -- Init scrollbars + scrollV = Lib.ScrollBar.new() + scrollV.WheelIncrement = 3 + scrollV.Gui.Position = UDim2.new(1,-16,0,23) + scrollV:SetScrollFrame(propsFrame) + scrollV.Scrolled:Connect(function() + Properties.Index = scrollV.Index + Properties.Refresh() + end) + + scrollH = Lib.ScrollBar.new(true) + scrollH.Increment = 5 + scrollH.WheelIncrement = 20 + scrollH.Gui.Position = UDim2.new(0,0,1,-16) + scrollH.Scrolled:Connect(function() + Properties.Refresh() + end) + + -- Setup Gui + window.GuiElems.Line.Position = UDim2.new(0,0,0,22) + toolBar.Parent = window.GuiElems.Content + propsFrame.Parent = window.GuiElems.Content + guiItems.ScrollCorner.Parent = window.GuiElems.Content + scrollV.Gui.Parent = window.GuiElems.Content + scrollH.Gui.Parent = window.GuiElems.Content + Properties.InitInputBox() + Properties.InitSearch() + end + + return Properties +end + +return {InitDeps = initDeps, InitAfterMain = initAfterMain, Main = main} \ No newline at end of file diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/SettingsEditor/init.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/SettingsEditor/init.lua new file mode 100644 index 0000000000..7a9260347d --- /dev/null +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/SettingsEditor/init.lua @@ -0,0 +1,986 @@ +--[[ + Settings Module + + The Module to configure settings +]] + +-- half of the module was written using ai by someone +-- why. + +-- ADONIS +local ReplicatedStorage = game:GetService("ReplicatedStorage") +local Dex_RemoteFunction = ReplicatedStorage:WaitForChild("NewDex_Event") :: RemoteFunction + +-- Common Locals +local Main,Lib,Apps,Settings -- Main Containers +local Explorer, Properties, ScriptViewer, Notebook -- Major Apps +local API,RMD,env,service,plr,create,createSimple -- Main Locals + +local function initDeps(data) + Main = data.Main + Lib = data.Lib + Apps = data.Apps + Settings = data.Settings + + API = data.API + RMD = data.RMD + env = data.env + service = data.service + plr = data.plr + create = data.create + createSimple = data.createSimple +end + +local function initAfterMain() + Explorer = Apps.Explorer + Properties = Apps.Properties + ScriptViewer = Apps.ScriptViewer + Notebook = Apps.Notebook +end + + +local function main() + local SettingsEditor = {} + + local scrollV, scrollH + local settingsListFrame + local expanded, viewList = {}, {} + + local topOffset = 0 --23 for that search bar thingy + + local scrollbarThickness = 6 -- for layout + + SettingsEditor.SettingsInfo = require(script.settingsInfo) + -- Pass Vargs + SettingsEditor.SettingsInfo.initDeps({ + Main = Main, + Lib = Lib, + Apps = Apps, + Settings = Settings + }) + + -- silencer + SettingsEditor.ColorEditor = nil + SettingsEditor.InfoDescBox = nil + SettingsEditor.Window = nil + + SettingsEditor.EntryTemplate = function() + local Entry = Instance.new("TextButton") + Entry.Name = "Entry" + Entry.Size = UDim2.new(1, 0, 0, 22) + Entry.BorderColor3 = Color3.fromRGB(33, 33, 33) + Entry.BackgroundTransparency = 0.2 + Entry.Position = UDim2.new(0, 1, 0, 1) + Entry.BackgroundColor3 = Color3.fromRGB(45, 45, 45) + Entry.AutoButtonColor = false + Entry.FontSize = Enum.FontSize.Size14 + Entry.TextSize = 14 + Entry.Text = "" + Entry.Font = Enum.Font.SourceSans + + local NameFrame = Instance.new("Frame") + NameFrame.Name = "NameFrame" + NameFrame.Size = UDim2.new(1, -40, 1, 0) + NameFrame.BorderColor3 = Color3.fromRGB(86, 125, 188) + NameFrame.BackgroundTransparency = 1 + NameFrame.Position = UDim2.new(0, 20, 0, 0) + NameFrame.BorderSizePixel = 0 + NameFrame.BackgroundColor3 = Color3.fromRGB(11, 90, 175) + NameFrame.Parent = Entry + + local PropName = Instance.new("TextLabel") + PropName.Name = "PropName" + PropName.Size = UDim2.new(1, -2, 1, 0) + PropName.BackgroundTransparency = 1 + PropName.Position = UDim2.new(0, 2, 0, 0) + PropName.BackgroundColor3 = Color3.fromRGB(255, 255, 255) + PropName.FontSize = Enum.FontSize.Size14 + PropName.TextTruncate = Enum.TextTruncate.AtEnd + PropName.TextSize = 14 + PropName.TextColor3 = Color3.fromRGB(255, 255, 255) + PropName.Text = "Anchored" + PropName.Font = Enum.Font.SourceSans + PropName.TextTransparency = 0.1 + PropName.TextXAlignment = Enum.TextXAlignment.Left + PropName.Parent = NameFrame + + local Expand = Instance.new("TextButton") + Expand.Name = "Expand" + Expand.Visible = false + Expand.Size = UDim2.new(0, 20, 0, 20) + Expand.ClipsDescendants = true + Expand.BackgroundTransparency = 1 + Expand.Position = UDim2.new(0, -20, 0, 1) + Expand.BackgroundColor3 = Color3.fromRGB(255, 255, 255) + Expand.FontSize = Enum.FontSize.Size14 + Expand.TextSize = 14 + Expand.Text = "" + Expand.Font = Enum.Font.SourceSans + Expand.Parent = NameFrame + + local Icon = Instance.new("ImageLabel") + Icon.Name = "Icon" + Icon.Size = UDim2.new(0, 16, 0, 16) + Icon.BackgroundTransparency = 1 + Icon.Position = UDim2.new(0, 2, 0, 2) + Icon.BackgroundColor3 = Color3.fromRGB(255, 255, 255) + Icon.ScaleType = Enum.ScaleType.Crop + Icon.ImageRectOffset = Vector2.new(144, 16) + Icon.ImageRectSize = Vector2.new(16, 16) + Icon.Image = "rbxassetid://5642383285" + Icon.Parent = Expand + + local ToggleAttributes = Instance.new("TextButton") + ToggleAttributes.Name = "ToggleAttributes" + ToggleAttributes.Visible = false + ToggleAttributes.Size = UDim2.new(0, 85, 0, 22) + ToggleAttributes.BackgroundTransparency = 1 + ToggleAttributes.Position = UDim2.new(1, -85, 0, 0) + ToggleAttributes.BorderSizePixel = 0 + ToggleAttributes.BackgroundColor3 = Color3.fromRGB(255, 255, 255) + ToggleAttributes.FontSize = Enum.FontSize.Size14 + ToggleAttributes.TextSize = 14 + ToggleAttributes.TextColor3 = Color3.fromRGB(255, 255, 255) + ToggleAttributes.Text = "[SETTING: OFF]" + ToggleAttributes.Font = Enum.Font.SourceSansBold + ToggleAttributes.TextTransparency = 0.1 + ToggleAttributes.Parent = NameFrame + + local ValueFrame = Instance.new("Frame") + ValueFrame.Name = "ValueFrame" + ValueFrame.Size = UDim2.new(0, 80, 1, 0) + ValueFrame.BorderColor3 = Color3.fromRGB(86, 125, 188) + ValueFrame.BackgroundTransparency = 1 + ValueFrame.Position = UDim2.new(1, -100, 0, 0) + ValueFrame.BorderSizePixel = 0 + ValueFrame.BackgroundColor3 = Color3.fromRGB(11, 90, 175) + ValueFrame.Parent = Entry + + local Line = Instance.new("Frame") + Line.Name = "Line" + Line.Size = UDim2.new(0, 1, 1, 0) + Line.BorderColor3 = Color3.fromRGB(86, 125, 188) + Line.Position = UDim2.new(0, -1, 0, 0) + Line.BorderSizePixel = 0 + Line.BackgroundColor3 = Color3.fromRGB(36, 36, 36) + Line.Parent = ValueFrame + + local EnumArrow = Instance.new("Frame") + EnumArrow.Name = "EnumArrow" + EnumArrow.Visible = false + EnumArrow.Size = UDim2.new(0, 16, 0, 16) + EnumArrow.BackgroundTransparency = 1 + EnumArrow.Position = UDim2.new(1, -16, 0, 3) + EnumArrow.Parent = ValueFrame + + local Frame = Instance.new("Frame") + Frame.Size = UDim2.new(0, 1, 0, 1) + Frame.Position = UDim2.new(0, 8, 0, 9) + Frame.BorderSizePixel = 0 + Frame.BackgroundColor3 = Color3.fromRGB(220, 220, 220) + Frame.Parent = EnumArrow + + local Frame1 = Instance.new("Frame") + Frame1.Size = UDim2.new(0, 3, 0, 1) + Frame1.Position = UDim2.new(0, 7, 0, 8) + Frame1.BorderSizePixel = 0 + Frame1.BackgroundColor3 = Color3.fromRGB(220, 220, 220) + Frame1.Parent = EnumArrow + + local Frame2 = Instance.new("Frame") + Frame2.Size = UDim2.new(0, 5, 0, 1) + Frame2.Position = UDim2.new(0, 6, 0, 7) + Frame2.BorderSizePixel = 0 + Frame2.BackgroundColor3 = Color3.fromRGB(220, 220, 220) + Frame2.Parent = EnumArrow + + local ValueBox = Instance.new("TextButton") + ValueBox.Name = "ValueBox" + ValueBox.Size = UDim2.new(1, -8, 1, 0) + ValueBox.BackgroundTransparency = 1 + ValueBox.Position = UDim2.new(0, 4, 0, 0) + ValueBox.BackgroundColor3 = Color3.fromRGB(255, 255, 255) + ValueBox.FontSize = Enum.FontSize.Size14 + ValueBox.TextTruncate = Enum.TextTruncate.AtEnd + ValueBox.TextSize = 14 + ValueBox.TextColor3 = Color3.fromRGB(255, 255, 255) + ValueBox.Text = "" + ValueBox.Font = Enum.Font.SourceSans + ValueBox.TextTransparency = 0.1 + ValueBox.TextXAlignment = Enum.TextXAlignment.Left + ValueBox.Parent = ValueFrame + + local RightButton = Instance.new("TextButton") + RightButton.Name = "RightButton" + RightButton.Visible = false + RightButton.Size = UDim2.new(0, 20, 0, 22) + RightButton.BackgroundTransparency = 1 + RightButton.Position = UDim2.new(1, -20, 0, 0) + RightButton.BorderSizePixel = 0 + RightButton.BackgroundColor3 = Color3.fromRGB(255, 255, 255) + RightButton.FontSize = Enum.FontSize.Size14 + RightButton.TextSize = 14 + RightButton.TextColor3 = Color3.fromRGB(255, 255, 255) + RightButton.Text = "..." + RightButton.Font = Enum.Font.SourceSans + RightButton.Parent = ValueFrame + + local SettingsButton = Instance.new("TextButton") + SettingsButton.Name = "SettingsButton" + SettingsButton.Visible = false + SettingsButton.Size = UDim2.new(0, 20, 0, 22) + SettingsButton.BackgroundTransparency = 1 + SettingsButton.Position = UDim2.new(1, -20, 0, 0) + SettingsButton.BorderSizePixel = 0 + SettingsButton.BackgroundColor3 = Color3.fromRGB(255, 255, 255) + SettingsButton.FontSize = Enum.FontSize.Size14 + SettingsButton.TextSize = 14 + SettingsButton.TextColor3 = Color3.fromRGB(255, 255, 255) + SettingsButton.Text = "" + SettingsButton.Font = Enum.Font.SourceSans + SettingsButton.Parent = ValueFrame + + local SoundPreview = Instance.new("Frame") + SoundPreview.Name = "SoundPreview" + SoundPreview.Visible = false + SoundPreview.Size = UDim2.new(1, 0, 1, 0) + SoundPreview.BackgroundTransparency = 1 + SoundPreview.BackgroundColor3 = Color3.fromRGB(255, 255, 255) + SoundPreview.Parent = ValueFrame + + local ControlButton = Instance.new("TextButton") + ControlButton.Name = "ControlButton" + ControlButton.Size = UDim2.new(0, 20, 0, 22) + ControlButton.BackgroundTransparency = 1 + ControlButton.BorderSizePixel = 0 + ControlButton.BackgroundColor3 = Color3.fromRGB(255, 255, 255) + ControlButton.FontSize = Enum.FontSize.Size14 + ControlButton.TextSize = 14 + ControlButton.TextColor3 = Color3.fromRGB(255, 255, 255) + ControlButton.Text = "" + ControlButton.Font = Enum.Font.SourceSans + ControlButton.Parent = SoundPreview + + local Icon1 = Instance.new("ImageLabel") + Icon1.Name = "Icon" + Icon1.Size = UDim2.new(0, 16, 0, 16) + Icon1.BackgroundTransparency = 1 + Icon1.Position = UDim2.new(0, 2, 0, 3) + Icon1.BackgroundColor3 = Color3.fromRGB(255, 255, 255) + Icon1.ScaleType = Enum.ScaleType.Crop + Icon1.ImageRectOffset = Vector2.new(144, 16) + Icon1.ImageRectSize = Vector2.new(16, 16) + Icon1.Image = "rbxassetid://5642383285" + Icon1.Parent = ControlButton + + local TimeLine = Instance.new("Frame") + TimeLine.Name = "TimeLine" + TimeLine.Size = UDim2.new(1, -34, 0, 2) + TimeLine.Position = UDim2.new(0, 26, 0.5, -1) + TimeLine.BorderSizePixel = 0 + TimeLine.BackgroundColor3 = Color3.fromRGB(80, 80, 80) + TimeLine.Parent = SoundPreview + + local Slider = Instance.new("Frame") + Slider.Name = "Slider" + Slider.Size = UDim2.new(0, 8, 0, 18) + Slider.BorderColor3 = Color3.fromRGB(33, 33, 33) + Slider.Position = UDim2.new(0, -4, 0, -8) + Slider.BackgroundColor3 = Color3.fromRGB(60, 60, 60) + Slider.Parent = TimeLine + + local InfoButton = Instance.new("TextButton") + InfoButton.Name = "InfoButton" + InfoButton.Size = UDim2.new(0, 20, 0, 22) + InfoButton.BackgroundTransparency = 1 + InfoButton.Position = UDim2.new(1, -20, 0, 0) + InfoButton.BorderSizePixel = 0 + InfoButton.BackgroundColor3 = Color3.fromRGB(255, 255, 255) + InfoButton.FontSize = Enum.FontSize.Size14 + InfoButton.TextSize = 14 + InfoButton.TextColor3 = Color3.fromRGB(255, 255, 255) + InfoButton.Text = "" + InfoButton.Font = Enum.Font.SourceSans + InfoButton.Parent = Entry + + local Icon2 = Instance.new("ImageLabel") + Icon2.Name = "Icon" + Icon2.Size = UDim2.new(0, 16, 0, 16) + Icon2.BackgroundTransparency = 1 + Icon2.Position = UDim2.new(0, 2, 0, 3) + Icon2.BackgroundColor3 = Color3.fromRGB(255, 255, 255) + Icon2.ImageTransparency = 0.2 + Icon2.Image = "rbxassetid://6578933307" + Icon2.Parent = InfoButton + + return Entry + end + + + SettingsEditor.StringToValue = function(settingInfo, str) + local typeName = settingInfo.typeName + + -- For numbers and stuff + if Apps.Properties.TypeNameConvert[typeName] then + typeName = Apps.Properties.TypeNameConvert[typeName] + end + + + if typeName == "string" or typeName == "Content" then + return str + elseif Apps.Properties.ToNumberTypes[typeName] then + return tonumber(str) + elseif typeName == "Vector2" then + local vals = str:split(",") + local x,y = tonumber(vals[1]),tonumber(vals[2]) + if x and y and #vals >= 2 then return Vector2.new(x,y) end + elseif typeName == "Vector3" then + local vals = str:split(",") + local x,y,z = tonumber(vals[1]),tonumber(vals[2]),tonumber(vals[3]) + if x and y and z and #vals >= 3 then return Vector3.new(x,y,z) end + elseif typeName == "UDim" then + local vals = str:split(",") + local scale,offset = tonumber(vals[1]),tonumber(vals[2]) + if scale and offset and #vals >= 2 then return UDim.new(scale,offset) end + elseif typeName == "UDim2" then + local vals = str:gsub("[{}]",""):split(",") + local xScale,xOffset,yScale,yOffset = tonumber(vals[1]),tonumber(vals[2]),tonumber(vals[3]),tonumber(vals[4]) + if xScale and xOffset and yScale and yOffset and #vals >= 4 then return UDim2.new(xScale,xOffset,yScale,yOffset) end + elseif typeName == "CFrame" then + local vals = str:split(",") + local s,result = pcall(CFrame.new,unpack(vals)) + if s and #vals >= 12 then return result end + elseif typeName == "Rect" then + local vals = str:split(",") + local s,result = pcall(Rect.new,unpack(vals)) + if s and #vals >= 4 then return result end + elseif typeName == "Ray" then + local vals = str:gsub("[{}]",""):split(",") + local s,origin = pcall(Vector3.new,unpack(vals,1,3)) + local s2,direction = pcall(Vector3.new,unpack(vals,4,6)) + if s and s2 and #vals >= 6 then return Ray.new(origin,direction) end + elseif typeName == "NumberRange" then + local vals = str:split(",") + local s,result = pcall(NumberRange.new,unpack(vals)) + if s and #vals >= 1 then return result end + elseif typeName == "Color3" then + local vals = str:gsub("[{}]",""):split(",") + local s,result = pcall(Color3.fromRGB,unpack(vals)) + if s and #vals >= 3 then return result end + end + + return nil + end + + SettingsEditor.ValueToString = function(val) + local typeName = typeof(val) + + if typeName == "Color3" then + return Lib.ColorToBytes(val) + elseif typeName == "NumberRange" then + return val.Min..", "..val.Max + end + + return tostring(val) + end + + -- InputBox + SettingsEditor.CreateInputBox = function(valueBox) + local inputBox = create({ + {1,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderSizePixel=0,Name="InputBox",Size=UDim2.new(0,200,0,22),Visible=false,ZIndex=2,}}, + {2,"TextBox",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BackgroundTransparency=1,BorderColor3=Color3.new(0.062745101749897,0.51764708757401,1),BorderSizePixel=0,ClearTextOnFocus=false,Font=3,Parent={1},PlaceholderColor3=Color3.new(0.69803923368454,0.69803923368454,0.69803923368454),Position=UDim2.new(0,3,0,0),Size=UDim2.new(1,-6,1,0),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,TextXAlignment=0,ZIndex=2,}}, + }) + local inputTextBox = inputBox.TextBox + inputBox.BackgroundColor3 = Settings.Theme.TextBox + + inputTextBox.FocusLost:Connect(function() + valueBox.Visible = true + inputBox.Visible = false + end) + + inputTextBox.Focused:Connect(function() + inputTextBox.SelectionStart = 1 + inputTextBox.CursorPosition = #inputTextBox.Text + 1 + end) + + valueBox.Changed:Connect(function(property) + if (property == "Text") then + inputTextBox.Text = valueBox.Text + end + end) + + valueBox.MouseButton1Click:Connect(function() + inputBox.Visible = true + valueBox.Visible = false + end) + + + Lib.ViewportTextBox.convert(inputTextBox) + + return inputBox + end + + + SettingsEditor.DisplayColorEditor = function(obj, currentColor) + local editor = SettingsEditor.ColorEditor + + if not editor then + editor = Lib.ColorPicker.new() + + SettingsEditor.ColorEditor = editor + end + + if (editor) then + if (SettingsEditor.ColorEditor.con_OnSelect) then + SettingsEditor.ColorEditor.con_OnSelect:Disconnect() + SettingsEditor.ColorEditor.con_OnSelect = nil + end + + local connection + connection = editor.OnSelect:Connect(function(col) + if not editor.CurrentProp then return end + if not (editor.CurrentProp == obj) then return end + + local colVal = (col or BrickColor.new(col)) + + obj:SetColor3Value(colVal) + + obj.OnColorChange:Fire() + end) + + SettingsEditor.ColorEditor.con_OnSelect = connection + end + + editor.CurrentProp = obj + if currentColor then + editor:SetColor(currentColor) + end + + editor:Show() + + return editor + end + + + SettingsEditor.NewPropEntry = function() + local newEntry = SettingsEditor.EntryTemplate():Clone() + local nameFrame = newEntry.NameFrame + local valueFrame = newEntry.ValueFrame + + local iconFrame = Main.MiscIcons:GetLabel() + iconFrame.Position = UDim2.new(0,2,0,3) + iconFrame.Parent = newEntry.ValueFrame.RightButton + + return { + Gui = newEntry, + GuiElems = { + NameFrame = nameFrame, + ValueFrame = valueFrame, + PropName = nameFrame.PropName, + ValueBox = valueFrame.ValueBox, + Expand = nameFrame.Expand, + EnumArrow = valueFrame.EnumArrow, + RightButton = valueFrame.RightButton, + RightButtonIcon = iconFrame, + SoundPreview = valueFrame.SoundPreview, + SoundPreviewSlider = valueFrame.SoundPreview.TimeLine.Slider, + InfoButton = newEntry.InfoButton + } + } + end + + SettingsEditor.ColorButton = (function() + local funcs = {} + + local function createButton() + local ColorButton = Instance.new("TextButton") + ColorButton.Name = "ColorButton" + ColorButton.Visible = false + ColorButton.Size = UDim2.new(0, 20, 0, 22) + ColorButton.BackgroundTransparency = 1 + ColorButton.BorderSizePixel = 0 + ColorButton.BackgroundColor3 = Color3.fromRGB(255, 255, 255) + ColorButton.FontSize = Enum.FontSize.Size14 + ColorButton.TextSize = 14 + ColorButton.TextColor3 = Color3.fromRGB(255, 255, 255) + ColorButton.Text = "" + ColorButton.Font = Enum.Font.SourceSans + + local ColorPreview = Instance.new("Frame") + ColorPreview.Name = "ColorPreview" + ColorPreview.Size = UDim2.new(0, 10, 0, 10) + ColorPreview.BorderColor3 = Color3.fromRGB(0, 0, 0) + ColorPreview.Position = UDim2.new(0, 5, 0, 6) + ColorPreview.BackgroundColor3 = Color3.fromRGB(255, 255, 255) + ColorPreview.Parent = ColorButton + + local UIGradient = Instance.new("UIGradient") + UIGradient.Parent = ColorPreview + + + return ColorButton + end + + function funcs:SetPreviewColor(color) + self.GuiElems.Gradient.Color = ColorSequence.new(color) + end + + function funcs:SetColor3Value(color) + self.CurrentColor3 = color + self:SetPreviewColor(color) + end + + local mt = {__index = funcs} + + local function new() + local colorButton = createButton() + + local obj = setmetatable({ + Gui = colorButton; + GuiElems = { + ColorButton = colorButton; + ColorPreview = colorButton.ColorPreview; + Gradient = colorButton.ColorPreview.UIGradient; + }; + + OnColorChange = Lib.Signal.new(); + + }, mt) + + obj.CurrentColor3 = Color3.fromRGB(255, 255, 255) + + + colorButton.ZIndex = 2 -- so it's clickable because ColorPreview obstructs it + + colorButton.MouseButton1Click:Connect(function() + SettingsEditor.DisplayColorEditor(obj, obj.CurrentColor3) + end) + + return obj + end + + return {new = new} + end)() + + SettingsEditor.Update = function() + + end + + SettingsEditor.UpdateView = function() + + end + + SettingsEditor.Refresh = function() + + end + + SettingsEditor.ScrollBarFrame = function() + local ScrollingFrame = Instance.new("ScrollingFrame") + ScrollingFrame.Size = UDim2.new(1, 0, 1, 0) + ScrollingFrame.BackgroundTransparency = 1 + ScrollingFrame.BorderSizePixel = 0 + + ScrollingFrame.AutomaticCanvasSize = Enum.AutomaticSize.Y + ScrollingFrame.ScrollBarImageColor3 = Color3.fromRGB(0, 0, 0) + ScrollingFrame.ScrollBarThickness = 6 + + local UILIstLayout = Instance.new("UIListLayout") + UILIstLayout.SortOrder = Enum.SortOrder.LayoutOrder + UILIstLayout.Parent = ScrollingFrame + + return ScrollingFrame + end + + + SettingsEditor.CategoryListFrame = function() + local List = Instance.new("Frame") + List.Name = "List" + List.AutomaticSize = Enum.AutomaticSize.Y + List.Size = UDim2.new(1, -6, 0.1, 0) + List.ClipsDescendants = true + List.BackgroundTransparency = 1 + List.BackgroundColor3 = Color3.fromRGB(255, 255, 255) + + + local UILIstLayout = Instance.new("UIListLayout") + UILIstLayout.SortOrder = Enum.SortOrder.LayoutOrder + UILIstLayout.Parent = List + + return List + end + + + + -- Creates a dropdown + SettingsEditor.CategoryDropdown = (function() + local funcs = {} + + local function createFrame(self) + local Expander = Instance.new("TextButton") + Expander.Name = "Expander" + Expander.Size = UDim2.new(1, -scrollbarThickness, 0, 22) + Expander.BorderColor3 = Color3.fromRGB(33, 33, 33) + Expander.BackgroundTransparency = 0.2 + Expander.Position = UDim2.new(0, 1, 0, 1) + Expander.BackgroundColor3 = Color3.fromRGB(45, 45, 45) + Expander.AutoButtonColor = false + Expander.FontSize = Enum.FontSize.Size14 + Expander.TextSize = 14 + Expander.Text = "" + Expander.Font = Enum.Font.SourceSans + + local NameFrame = Instance.new("Frame") + NameFrame.Name = "NameFrame" + NameFrame.Size = UDim2.new(1, -40, 1, 0) + NameFrame.BorderColor3 = Color3.fromRGB(86, 125, 188) + NameFrame.BackgroundTransparency = 1 + NameFrame.Position = UDim2.new(0, 20, 0, 0) + NameFrame.BorderSizePixel = 0 + NameFrame.BackgroundColor3 = Color3.fromRGB(11, 90, 175) + NameFrame.Parent = Expander + + local PropName = Instance.new("TextLabel") + PropName.Name = "PropName" + PropName.Size = UDim2.new(1, -2, 1, 0) + PropName.BackgroundTransparency = 1 + PropName.Position = UDim2.new(0, 2, 0, 0) + PropName.BackgroundColor3 = Color3.fromRGB(255, 255, 255) + PropName.FontSize = Enum.FontSize.Size14 + PropName.TextTruncate = Enum.TextTruncate.AtEnd + PropName.TextSize = 14 + PropName.TextColor3 = Color3.fromRGB(255, 255, 255) + PropName.Text = "Category" + PropName.Font = Enum.Font.SourceSansBold + PropName.TextTransparency = 0.1 + PropName.TextXAlignment = Enum.TextXAlignment.Left + PropName.Parent = NameFrame + + local Expand = Instance.new("TextButton") + Expand.Name = "Expand" + Expand.Size = UDim2.new(0, 20, 0, 20) + Expand.ClipsDescendants = true + Expand.BackgroundTransparency = 1 + Expand.Position = UDim2.new(0, -20, 0, 1) + Expand.BackgroundColor3 = Color3.fromRGB(255, 255, 255) + Expand.FontSize = Enum.FontSize.Size14 + Expand.TextSize = 14 + Expand.Text = "" + Expand.Font = Enum.Font.SourceSans + Expand.Parent = NameFrame + + local Icon = Instance.new("ImageLabel") + Icon.Name = "Icon" + Icon.Size = UDim2.new(0, 16, 0, 16) + Icon.BackgroundTransparency = 1 + Icon.Position = UDim2.new(0, 2, 0, 2) + Icon.BackgroundColor3 = Color3.fromRGB(255, 255, 255) + Icon.ScaleType = Enum.ScaleType.Crop + Icon.ImageRectOffset = Vector2.new(144, 16) + Icon.ImageRectSize = Vector2.new(16, 16) + Icon.Image = "rbxassetid://5642383285" + Icon.Parent = Expand + + return Expander + end + + local function setupGuiFuncs(self) + local Expander = self.Gui + + local Expand = Expander.NameFrame.Expand + + -- Functions + local function updateIcon() + Apps.Explorer.MiscIcons:DisplayByKey(self.GuiElems.Icon, self.Expanded and "Collapse" or "Expand") + end + + Expand.MouseButton1Click:Connect(function() + if (self.ToggleFrame) then + self.ToggleFrame.Visible = not self.ToggleFrame.Visible + end + + if (self.ToggleFrame.Visible) then + self.Expanded = true + else + self.Expanded = false + end + + -- Update Icon + updateIcon() + end) + + -- Init + updateIcon() + end + + function funcs:SetDisplayName(displayName) + if (self.Gui:FindFirstChild("NameFrame")) then + self.Gui.NameFrame.PropName.Text = displayName + end + end + + -- Set the frame to toggle + function funcs:SetToggleFrame(toggleFrame) + self.ToggleFrame = toggleFrame + + return self.ToggleFrame + end + + + local mt = {} + mt.__index = funcs + + local function new(toggleFrame, displayName) + local obj = setmetatable({}, mt) + + obj.Gui = createFrame(obj) + + obj.GuiElems = { + Icon = obj.Gui.NameFrame.Expand.Icon + } + + obj.Expanded = true -- Whether expanded + + setupGuiFuncs(obj) + + obj:SetDisplayName(displayName) + + obj:SetToggleFrame(toggleFrame) + + + return obj + end + + return {new = new} + end)() + + + -- Change a setting + SettingsEditor.SetSettingValue = function(categoryName, settingName, settingInfo, newValue) + if (settingInfo.OnChange) then + settingInfo.OnChange(newValue) + else + Settings[categoryName][settingName] = newValue + end + end + + + SettingsEditor.SetupInfoDesc = function() + local infoDescBox = SettingsEditor.InfoDescBox + -- TODO: Maybe change this + + if not (infoDescBox) then + local newFrame = Instance.new("Frame") + newFrame.BackgroundColor3 = Color3.fromRGB(0,0,0) + newFrame.BackgroundTransparency = 0.2 + newFrame.BorderSizePixel = 0 + newFrame.Size = UDim2.new(0,0,0,0) + newFrame.AutomaticSize = Enum.AutomaticSize.XY + newFrame.Visible = false -- not visible + + local newTextBox = Instance.new("TextBox") + newTextBox.BackgroundTransparency = 1 + newTextBox.TextColor3 = Color3.fromRGB(255, 255, 255) + newTextBox.Size = UDim2.new(0,0,0,0) + newTextBox.AutomaticSize = Enum.AutomaticSize.XY + newTextBox.Parent = newFrame + + + infoDescBox = newFrame + SettingsEditor.InfoDescBox = infoDescBox + + + infoDescBox.Parent = SettingsEditor.Window.Gui + end + + return infoDescBox + end + + + SettingsEditor.CreateSettingEntry = function(categoryName, settingName, settingInfo) + local newEntry = SettingsEditor.NewPropEntry() + newEntry.Gui.Parent = settingsListFrame + + newEntry.GuiElems.PropName.Text = settingName + + local InfoButton: TextBox = newEntry.GuiElems.InfoButton + + if (settingInfo.desc) then + local infoDescBox:Frame = SettingsEditor.InfoDescBox + local isEnter = false + + InfoButton.MouseEnter:Connect(function(x, y) + isEnter = true + + -- Set setting description + (infoDescBox:WaitForChild("TextBox") :: TextBox).Text = settingInfo.desc + + infoDescBox.Position = UDim2.new(0, x, 0, y) + infoDescBox.Visible = true + end) + + InfoButton.MouseMoved:Connect(function(x, y) + infoDescBox.Position = UDim2.new(0, x, 0, y) + infoDescBox.Visible = true + end) + + InfoButton.MouseLeave:Connect(function(x, y) + if (isEnter == true) then + isEnter = false + infoDescBox.Visible = false + end + end) + else + -- Don't show info button, if there's no description. + InfoButton.Visible = false + end + + + -- ValueBox + local ValueBox: TextButton = newEntry.Gui.ValueFrame.ValueBox + + + -- Boolean + if (settingInfo.typeName == "boolean") then + -- Checkbox + local newCheckbox = Lib.Checkbox.new() + + -- Set current value + newCheckbox:SetState(Settings[categoryName][settingName], false) + + + -- Whenever Checkbox value changes + newCheckbox.OnInput:Connect(function() + local newValue = newCheckbox.Toggled + + -- Sets the value + SettingsEditor.SetSettingValue(categoryName, settingName, settingInfo, newValue) + end) + + newCheckbox.Gui.Parent = newEntry.Gui.ValueFrame + + + -- Color3 + elseif (settingInfo.typeName == "Color3") then + local colorButton = SettingsEditor.ColorButton.new() + colorButton.Gui.Parent = newEntry.Gui.ValueFrame + + -- Set current Color3 + colorButton:SetColor3Value(Settings[categoryName][settingName]) + + colorButton.Gui.Visible = true + + + -- Fired once color input was changed + colorButton.OnColorChange:Connect(function() + local newColor = colorButton.CurrentColor3 + + SettingsEditor.SetSettingValue(categoryName, settingName, settingInfo, newColor) + end) + + + else + -- For anything else + local inputBox = SettingsEditor.CreateInputBox(ValueBox) + local inputTextBox = inputBox.TextBox.Input + + inputBox.Parent = newEntry.Gui.ValueFrame + + inputTextBox.FocusLost:Connect(function() + local convertedVal = SettingsEditor.StringToValue(settingInfo, inputTextBox.Text) + + if (convertedVal) then + ValueBox.Text = SettingsEditor.ValueToString(convertedVal) + + -- Sets value + SettingsEditor.SetSettingValue(categoryName, settingName, settingInfo, convertedVal) + end + end) + + -- Set current value + ValueBox.Text = SettingsEditor.ValueToString(Settings[categoryName][settingName]) + end + + return newEntry + end + + + -- Set up the settings. + SettingsEditor.SetupSettings = function(categoryIndex, parentTo) + local infoTable = SettingsEditor.SettingsInfo[categoryIndex] + + for _, settingName in ipairs(infoTable.Order) do + if (infoTable.Info[settingName]) then + local settingInfo = infoTable.Info[settingName] + + local newEntry = SettingsEditor.CreateSettingEntry(categoryIndex, settingName, settingInfo) + + newEntry.Gui.Parent = parentTo + end + end + end + + + + -- Create new Category + SettingsEditor.NewCategory = function(indexName, displayName, parentTo) + -- indexName, how it should be indexed + -- displayName, how the category should show up + + local categoryListFrame = SettingsEditor.CategoryListFrame():Clone() + categoryListFrame.Name = indexName + --categoryListFrame.Visible = false + + -- Setup settings + SettingsEditor.SetupSettings(indexName, categoryListFrame) + + + local category = SettingsEditor.CategoryDropdown.new(categoryListFrame, displayName) + category.Gui.Parent = parentTo + + -- parent category list + categoryListFrame.Parent = parentTo + + return category + end + + + + + -- Generate Setting buttons and stuff + SettingsEditor.RenderSettings = function() + for _,categoryName in ipairs(SettingsEditor.SettingsInfo._Categories) do + SettingsEditor.NewCategory(categoryName, categoryName, settingsListFrame) + end + end + + + -- Init + SettingsEditor.Init = function() + local window = Lib.Window.new() + SettingsEditor.Window = window + + window:SetTitle("Settings") + window.Resizable = true + + -- Setup Results ScrollingFrame + settingsListFrame = SettingsEditor.ScrollBarFrame() + + SettingsEditor.Window.GuiElems.Main.Parent.Name = "Dex_SettingsWindow" -- Change ScreenGui name + + + -- Setup Gui + SettingsEditor.SetupInfoDesc() -- Hover text description + + SettingsEditor.RenderSettings() -- Sets up UI to change settings + + + -- Window Add, adds things to the "Content" + window:Add(settingsListFrame) + end + + + + return SettingsEditor +end + +return {InitDeps = initDeps, InitAfterMain = initAfterMain, Main = main} \ No newline at end of file diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/SettingsEditor/settingsInfo.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/SettingsEditor/settingsInfo.lua new file mode 100644 index 0000000000..9988db5a57 --- /dev/null +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/SettingsEditor/settingsInfo.lua @@ -0,0 +1,310 @@ +local settingsInfo = {} + +-- Common Locals +local Main,Lib,Apps,Settings -- Main Containers +local Explorer, Properties, ScriptViewer, Notebook -- Major Apps +local API,RMD,env,service,plr,create,createSimple -- Main Locals + + +function settingsInfo.initDeps(data) + Main = data.Main + Lib = data.Lib + Apps = data.Apps + Settings = data.Settings + + --API = data.API + --RMD = data.RMD + --env = data.env + --service = data.service + --plr = data.plr + --create = data.create + --createSimple = data.createSimple +end + + +-- Register Setting +local function RegisterSetting(categoryTable, settingName, data) + categoryTable.Info[settingName] = data + + table.insert(categoryTable.Order, settingName) +end + +--[[ +Example Settings + +-- this is the basic setup +settingInfo.CategoryName + + +]] + +-- The order here, defines the order on how they show up +settingsInfo._Categories = { + --"Main", + "Explorer", + "Properties", + "Theme", +} + +-- TODO: Use "DefaultSettings" for default values perhaps + +settingsInfo.Main = {} +settingsInfo.Main.Info = {} +settingsInfo.Main.Order = {} + +--[[RegisterSetting(settingsInfo["Main"], "ResetOnSpawn", { + desc = "Whether to reset the UI on spawn."; + defaultVal = true; + typeName = "boolean"; + + OnChange = function(newValue) + Settings.Main.ResetOnSpawn = newValue + + if (Main.LocalScript_Gui) then + Main.LocalScript_Gui.ResetOnSpawn = newValue + end + + if (Main.MainGui) then + Main.MainGui.ResetOnSpawn = newValue + end + + if (Lib.SidesGui) then + Lib.SidesGui.ResetOnSpawn = newValue + end + + if (Lib.StoredWindows) then + for k,v in pairs(Lib.StoredWindows) do + if (v.Gui) then + v.Gui.ResetOnSpawn = newValue + end + end + end + end; +})]] + + + +settingsInfo.Explorer = {} +settingsInfo.Explorer.Info = {} +settingsInfo.Explorer.Order = {} + + + +-- Example Setting +RegisterSetting(settingsInfo.Explorer, "Sorting", { + desc = nil; + defaultVal = true; + typeName = "boolean"; + + OnChange = function(newValue) + Apps.Explorer.SetSortingEnabled(newValue) + end; +}) + + +RegisterSetting(settingsInfo.Explorer, "TeleportToOffset", { + desc = "Offset when teleporting to Instances"; + defaultVal = Vector3.new(0,0,0); + typeName = "Vector3"; +}) + +RegisterSetting(settingsInfo.Explorer, "ClickToSelect", { + desc = "Whether clicking will select parts"; + defaultVal = false; + typeName = "boolean"; + + OnChange = function(newValue) + Settings.Explorer.ClickToSelect = newValue + Apps.Explorer.InitClickToSelect() + end, +}) + + +--[[RegisterSetting(settingsInfo.Explorer, "ClickToRename", { + desc = "ClickToRename"; + defaultVal = true; + typeName = "boolean"; +})]] + + +RegisterSetting(settingsInfo.Explorer, "AutoUpdateSearch", { + desc = nil; + defaultVal = true; + typeName = "boolean"; +}) + + +--[[RegisterSetting(settingsInfo.Explorer, "AutoUpdateMode", { + desc = "0 Default, 1 no tree update, 2 no descendant events, 3 frozen"; + defaultVal = 0; + typeName = "number"; +})]] + + +RegisterSetting(settingsInfo.Explorer, "PartSelectionBox", { + desc = "Toggle Selection Box on Objects"; + defaultVal = true; + typeName = "boolean"; +}) + +RegisterSetting(settingsInfo.Explorer, "GuiSelectionBox", { + desc = "Toggle Selection Box on GUIs"; + defaultVal = true; + typeName = "boolean"; +}) + +RegisterSetting(settingsInfo.Explorer, "CopyPathUseGetChildren", { + desc = nil; + defaultVal = true; + typeName = "boolean"; +}) + + + + +settingsInfo.Properties = {} +settingsInfo.Properties.Info = {} +settingsInfo.Properties.Order = {} + +RegisterSetting(settingsInfo.Properties, "MaxConflictCheck", { + desc = nil; + defaultVal = 50; + typeName = "number"; +}) + + +RegisterSetting(settingsInfo.Properties, "ShowDeprecated", { + desc = nil; + defaultVal = false; + typeName = "boolean"; +}) + +RegisterSetting(settingsInfo.Properties, "ShowHidden", { + desc = nil; + defaultVal = false; + typeName = "boolean"; +}) + + +RegisterSetting(settingsInfo.Properties, "NumberRounding", { + desc = nil; + defaultVal = 3; + typeName = "number"; +}) + + +RegisterSetting(settingsInfo.Properties, "ShowAttributes", { + desc = nil; + defaultVal = false; + typeName = "boolean"; +}) + + +RegisterSetting(settingsInfo.Properties, "MaxAttributes", { + desc = nil; + defaultVal = 50; + typeName = "number"; +}) + + +RegisterSetting(settingsInfo.Properties, "ScaleType", { + desc = "0 Full Name Shown, 1 Equal Halves"; + defaultVal = 1; + typeName = "number"; +}) + + +settingsInfo.Theme = {} +settingsInfo.Theme.Info = {} +settingsInfo.Theme.Order = {} + +local rgb = Color3.fromRGB + +RegisterSetting(settingsInfo.Theme, "Main1", { + desc = nil; + defaultVal = rgb(52,52,52); + typeName = "Color3"; +}) + +RegisterSetting(settingsInfo.Theme, "Main2", { + desc = nil; + defaultVal = rgb(45,45,45); + typeName = "Color3"; +}) + +RegisterSetting(settingsInfo.Theme, "Outline1", { + desc = "Mainly frames"; + defaultVal = rgb(33,33,33); + typeName = "Color3"; +}) +RegisterSetting(settingsInfo.Theme, "Outline2", { + desc = "Mainly button"; + defaultVal = rgb(55,55,55); + typeName = "Color3"; +}) +RegisterSetting(settingsInfo.Theme, "Outline3", { + desc = "Mainly textbox"; + defaultVal = rgb(30,30,30); + typeName = "Color3"; +}) + +RegisterSetting(settingsInfo.Theme, "TextBox", { + desc = nil; + defaultVal = rgb(38,38,38); + typeName = "Color3"; +}) + +RegisterSetting(settingsInfo.Theme, "Menu", { + desc = nil; + defaultVal = rgb(32,32,32); + typeName = "Color3"; +}) + +RegisterSetting(settingsInfo.Theme, "ListSelection", { + desc = nil; + defaultVal = rgb(11,90,175); + typeName = "Color3"; +}) + +RegisterSetting(settingsInfo.Theme, "Button", { + desc = nil; + defaultVal = rgb(60,60,60); + typeName = "Color3"; +}) +RegisterSetting(settingsInfo.Theme, "ButtonHover", { + desc = nil; + defaultVal = rgb(68,68,68); + typeName = "Color3"; +}) +RegisterSetting(settingsInfo.Theme, "ButtonPress", { + desc = nil; + defaultVal = rgb(40,40,40); + typeName = "Color3"; +}) + +RegisterSetting(settingsInfo.Theme, "Highlight", { + desc = nil; + defaultVal = rgb(75,75,75); + typeName = "Color3"; +}) + +RegisterSetting(settingsInfo.Theme, "Text", { + desc = nil; + defaultVal = rgb(255,255,255); + typeName = "Color3"; +}) +RegisterSetting(settingsInfo.Theme, "PlaceholderText", { + desc = nil; + defaultVal = rgb(100,100,100); + typeName = "Color3"; +}) + +RegisterSetting(settingsInfo.Theme, "Important", { + desc = nil; + defaultVal = rgb(255,0,0); + typeName = "Color3"; +}) + + + +return settingsInfo \ No newline at end of file diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/init.meta.json b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/init.meta.json new file mode 100644 index 0000000000..1025b06a54 --- /dev/null +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/init.meta.json @@ -0,0 +1,3 @@ +{ + "ignoreUnknownInstances": true +} \ No newline at end of file diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/RMD.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/RMD.lua new file mode 100644 index 0000000000..4d218636a1 --- /dev/null +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/RMD.lua @@ -0,0 +1 @@ +return [==[ Actor Scripting A logical grouping of datamodel nodes which can enable scripts to run in parallel. 10 113 BindableFunction Scripting 40 66 Invoke OnInvoke BindableEvent Scripting 50 67 Fire Event TouchTransmitter false 30 37 ForceField Avatar 30 37 Model PluginManager PluginManagerInterface TeleportService CustomizedTeleportUI true Plugin 30 86 PluginMouse Glue true BasePart CollectionService ItemAdded true ItemRemoved true GetCollection true GetTagged AddTag RemoveTag GetTags HasTag GetInstanceAddedSignal GetInstanceRemovedSignal JointsService true RunService BadgeService LogService AssetService RevertAsset SetPlacePermissions GetPlacePermissions GetAssetVersions GetCreatorAssetID HttpService HttpEnabled true GetAsync Server PostAsync Server AnalyticsService ApiKey true InsertService AllowClientInsertModels true AllowInsertFreeModels false true -1 GetCollection Insert ApproveAssetId true ApproveAssetVersionId true GetBaseSets GetUserSets GetBaseCategories true GetUserCategories true LoadAsset LoadAssetVersion Hat Avatar 30 45 true Accessory Avatar 30 32 Model LocalBackpack LocalBackpackItem MotorFeature true Attachment Constraints 30 81 PVInstance Rotation WorldRotation true Orientation WorldOrientation Axis SecondaryAxis WorldAxis SecondaryWorldAxis WorldCFrame 1000 WrapTarget Effects 32 127 BasePart BasePart Model WrapLayer Effects 32 126 BasePart BasePart Model Bone Animations 30 114 PVInstance PVInstance Bone Constraint Physics 30 86 BasePart Enabled Color Visible Active BallSocketConstraint Constraints 30 86 BasePart LimitsEnabled UpperAngle Restitution TwistLimitsEnabled TwistUpperAngle TwistLowerAngle Radius RopeConstraint Constraints 30 89 BasePart Length Restitution CurrentDistance Thickness RodConstraint Constraints 30 90 BasePart Length CurrentDistance Thickness LimitAngle0 LimitAngle1 LimitsEnabled SpringConstraint Constraints 30 91 BasePart LimitsEnabled Stiffness Damping FreeLength MaxForce MaxLength MinLength Radius Thickness Coils CurrentLength TorsionSpringConstraint Constraints 30 125 BasePart LimitsEnabled Stiffness Damping MaxTorque MaxAngle Restitution Radius Coils CurrentAngle WeldConstraint Constraints 30 94 PVInstance Active NoCollisionConstraint Constraints 30 105 PVInstance Enabled RigidConstraint Constraints 30 135 PVInstance DestructionEnabled 0 SimSolverEnableDestruction Broken 1 SimSolverEnableDestruction DestructionForce 2 SimSolverEnableDestruction DestructionTorque 3 SimSolverEnableDestruction HingeConstraint Constraints 30 87 BasePart ActuatorType LimitsEnabled UpperAngle LowerAngle AngularRestitution AngularVelocity MotorMaxTorque MotorMaxAcceleration AngularSpeed ServoMaxTorque TargetAngle CurrentAngle Radius UniversalConstraint Constraints 30 123 BasePart LimitsEnabled MaxAngle Restitution CurrentAngle Radius SlidingBallConstraint Constraints 30 88 BasePart ActuatorType LimitsEnabled LowerLimit UpperLimit Restitution Velocity MotorMaxForce MotorMaxAcceleration Speed ServoMaxForce TargetPosition CurrentPosition Size PrismaticConstraint Constraints 30 88 BasePart CylindricalConstraint Constraints 30 95 BasePart InclinationAngle AngularActuatorType AngularLimitsEnabled UpperAngle LowerAngle AngularRestitution AngularVelocity MotorMaxTorque MotorMaxAngularAcceleration AngularSpeed ServoMaxTorque TargetAngle CurrentAngle WorldRotationAxis RotationAxisVisible AlignOrientation Constraints 30 100 BasePart AlignPosition Constraints 30 99 BasePart ForceLimitMode Selects the mode for force limit. Options Uniform or Per-component SimAlignPositionVectorForceLimit AnimationConstraint Constraints 30 BasePart SimAnimationConstraint VectorForce Constraints 30 102 Model LineForce Constraints 30 101 BasePart Torque Constraints 30 103 BasePart AngularVelocity Constraints 30 103 BasePart PlaneConstraint Constraints 30 134 BasePart PluginCapabilities 30 Plugin Plane Constraints 30 134 BasePart LinearVelocity Constraints 30 132 BasePart Mode Selects the mode of the velocity constraint. Options Line, Plane, Vector LineDirection Direction of the line used to contraint the velocity to a line. LineVelocity The value of the constraint velocity along a line. PlanePrimaryTangent The primary axis in the plane. PlaneSecondaryTangent The secondary axis in the plane. PlaneVelocity Velocity coefficients in the constraint plane. Velocity Constraint velocity for the Vector mode. MaxForce Maximum force magnitude that is applied to satisfy the constraint. RelativeTo Selects whether the velocity orientation is relative to attachment0, attachment1 or the world. Mouse Hit Icon Origin Origin Target TargetFilter TargetSurface UnitRay ViewSizeX ViewSizeY X Y Button1Down Button1Up Button2Down Button2Up Idle KeyDown KeyUp Move WheelBackward WheelForward ProfilingItem ChangeHistoryService RotateP BasePart RotateV BasePart ScriptContext Selection VelocityMotor BasePart Weld 200 34 BasePart TaskScheduler false SetThreadShare true StatsItem Snap 200 34 BasePart FileMesh BasePart DynamicMesh BasePart ClickDetector 3D Interfaces 30 41 BasePart MaxActivationDistance MouseClick MouseHoverEnter MouseHoverLeave DragDetector 3D Interfaces 30 41 BasePart DragDetectors1 ReferenceInstance ProximityPrompt 3D Interfaces 30 124 BasePart MaxActivationDistance ActionText ObjectText KeyboardKeyCode GamepadKeyCode Enabled HoldDuration Exclusivity Style UIOffset RequiresLineOfSight InputHoldBegin InputHoldEnd Triggered TriggeEnded PromptShown PromptHidden PromptButtonHoldBegan PromptButtonHoldEnded ProximityPromptService false Enabled MaxPromptsVisible Triggered TriggeEnded PromptShown PromptHidden PromptButtonHoldBegan PromptButtonHoldEnded Clothing 20 Smoke Effects 30 59 BasePart TimeScale 0 1 Trail Effects 30 93 Model LightEmission 0 1 LightInfluence 0 1 Brightness 0 10 2000 ZOffset -1 1 Lifetime 0 20 TextureLength 0 5 40 MinLength 0 1 AdGui Ads 200 145 GuiBase2d AdPortal Ads 200 146 Part Beam Effects 30 96 BasePart LightEmission 0 1 LightInfluence 0 1 TextureSpeed -1 1 TextureLength 0 5 40 CurveSize0 -10 10 CurveSize1 -10 10 ZOffset -1 1 Brightness 0 10 2000 SurfaceAppearance 3D Interfaces 40 10 AlphaMode ColorMap MetalnessMap NormalMap RoughnessMap TexturePack ParticleEmitter Effects 30 80 BasePart LightEmission 0 1 LightInfluence 0 1 Size 0 10 Transparency 0 1 Brightness 0 10 2000 Drag 0 5 TimeScale 0 1 VelocityInheritance 0 1 Rate 0 100 100 Squash -3 3 ShapePartial 0 1 Rotation -180 180 72 RotSpeed -360 360 72 Speed 0 100 100 Lifetime 0 5 FlipbookFramerate 0 30 100 Sparkles Effects 30 42 BasePart TimeScale 0 1 Explosion Effects 30 36 BasePart BlastPressure BlastRadius Position ExplosionType TimeScale 0 1 Fire Effects 30 61 BasePart Color Heat SecondaryColor Size TimeScale 0 1 Seat Interaction 30 35 Platform 30 35 SkateboardPlatform true 30 35 VehicleSeat Interaction 30 35 Model Tool Interaction 30 17 StarterPack Flag true 30 38 CanBeDropped TeamColor FlagStand true 30 39 BackpackItem 20 Decal 3D Interfaces 40 7 BasePart Face Shiny Specular Transparency 0 1 JointInstance 200 34 Active Message 110 33 true StarterGui Hint true 110 33 IntValue Values 30 4 RayValue Values 30 4 IntConstrainedValue true Values 30 4 MaxValue MinValue DoubleConstrainedValue true Values 30 4 MaxValue MinValue BoolValue Values 30 4 CustomEvent 30 true 4 CustomEventReceiver 30 true 4 FloorWire true 30 4 CycleOffset From StudsBetweenTextures Texture TextureSize To Velocity WireRadius NumberValue Values 30 4 StringValue Values 30 4 Vector3Value Values 30 4 CFrameValue Values 30 4 Color3Value Values 30 4 BrickColorValue Values 30 4 ValueBase Values 30 4 ObjectValue Values 30 4 SpecialMesh Meshes 30 8 BasePart BlockMesh Meshes 30 8 BasePart CylinderMesh Meshes 30 8 BasePart true BevelMesh Meshes false true DataModelMesh false Texture 3D Interfaces 40 10 BasePart Sound Sounds 10 11 play true PlayOnRemove Volume 0 10 1000 Square PlaybackSpeed 0 20 1000 Square ChannelCount EnableAudioChannelCountProperty PlaybackRegionsEnabled SoundLoopPointApi3 Speaker Sounds 10 11 ChannelCount EnableAudioChannelCountProperty Volume 0 10 1000 Square VoiceSource Sounds 10 11 EchoSoundEffect Sounds 20 84 Sound Delay 0.1 5 100 Feedback 0 1 100 DryLevel -80 10 100 WetLevel -80 100 100 FlangeSoundEffect Sounds 20 84 Sound Mix 0 1 100 Depth 0.01 1 100 Rate 0 20 100 DistortionSoundEffect Sounds 20 84 Sound Level 0 1 100 PitchShiftSoundEffect Sounds 20 84 Sound Octave 0.5 2 100 ChannelSelectorSoundEffect Sounds 20 84 Sound EnableAudioChannelSelector ChorusSoundEffect Sounds 20 84 Sound Mix 0 1 100 Rate 0 20 100 Depth 0 1 100 TremoloSoundEffect Sounds 20 84 Sound Frequency 0.1 20 100 Depth 0 1 100 Duty 0 1 100 ReverbSoundEffect Sounds 20 84 Sound DecayTime 0.1 20 100 Diffusion 0 1 100 Density 0 1 100 DryLevel -80 20 100 WetLevel -80 20 100 EqualizerSoundEffect Sounds 20 84 Sound LowGain -80 10 100 MidGain -80 10 100 HighGain -80 10 100 AudioEqualizer Sounds 20 84 LowGain -80 10 100 MidGain -80 10 100 HighGain -80 10 100 AudioAnalyzer Sounds 20 84 RmsLevel 0 10000 100 PeakLevel 0 10000 100 AudioChorus Sounds 20 84 Depth 0 1 100 Mix 0 1 100 Rate 0 20 100 AudioCompressor Sounds 20 84 Attack 0 0.5 100 MakeupGain 0 -30 100 Ratio 1 50 100 Release 5 0.01 100 Threshold -60 0 100 AudioDeviceInput Sounds 20 11 Volume 0 3 100 AudioDeviceOutput Sounds 20 11 AudioDistortion Sounds 20 84 Level 0 1 100 AudioFilter Sounds 20 84 Frequency 20 22000 100 Gain -30 30 100 Q 0.1 10 100 AudioFlanger Sounds 20 84 Depth 0.01 1 100 Mix 0 1 100 Rate 0 20 100 AudioLimiter Sounds 20 84 MaxLevel 0 -12 100 Release 0.001 1 100 AudioPitchShifter Sounds 20 84 Pitch 0.5 2 100 AudioPlayer Sounds 20 11 PlaybackSpeed 0 20 100 Volume 0 10 100 Wire Sounds 20 17 AudioChannelMixer Sounds 20 84 AudioChannelSplitter Sounds 20 84 AudioGate Sounds 20 84 Attack 0.001 5 100 Release 0.001 5 100 AudioTextToSpeech Sounds 20 84 Pitch -12 12 100 Speed 0.5 2 100 PlaybackSpeed 0 20 100 Volume 0 3 100 AudioTremolo Sounds 20 84 Depth 0 1 100 Duty 0 1 100 Frequency 0 20 100 Shape 0 1 100 Skew -1 1 100 Square 0 1 100 AudioReverb Sounds 20 84 DecayRatio 0.1 1 100 DecayTime 0.1 20 100 Density 0.1 1 100 Diffusion 0.1 1 100 DryLevel -80 20 100 EarlyDelayTime 0 0.1 100 HighCutFrequency 20 20000 100 HighCutFrequency 20 20000 100 LateDelayTime 0 0.1 100 LowShelfFrequency 20 20000 100 LowShelfGain -36 12 100 ReferenceFrequency 20 20000 100 WetLevel -80 20 100 AudioListener Sounds 20 11 AudioEcho Sounds 20 84 DelayTime 0.001 5 100 DryLevel -80 10 100 Feedback 0 1 100 RampTime 0 60000 100 WetLevel -80 10 100 AudioEmitter Sounds 20 11 AudioFader Sounds 20 84 Volume 0 3 100 CompressorSoundEffect Sounds 20 84 Sound Threshold -80 0 100 Attack 0.001 1 100 Release 0.001 5 100 Ratio 1 50 100 GainMakeup 0 30 100 SoundGroup Sounds 20 85 SoundService Volume 0 10 1000 Square StockSound false -1 SoundService 500 31 AmbientReverb RespectFilteringEnabled !DisableSoundServiceRespectFilteringEnabled DopplerScale DistanceFactor RolloffScale VolumetricAudio AudioToggleVolumetricPanning Backpack 30 20 false StarterPack 30 20 StarterPlayer 30 79 DeathStyle AvatarJointUpgrade AvatarJointUpgrade AvatarJointUpgrade HumanoidStateMachineMode EnableStateMachineModes2 StarterGear 30 20 false CoreGui 30 46 CorePackages 30 20 RobloxPluginGuiService 30 46 PluginGuiService 30 46 PluginDebugService 30 46 Studio Show Plugin GUI Service in Explorer Main Volume 0 1 250 UIGridStyleLayout GUI false GuiBase2d SetCustomSortFunction true ApplyLayout SortOrder FillDirection HorizontalAlignment VerticalAlignment UIListLayout 30 26 GUI GuiBase2d Padding UIGridLayout 30 26 GUI GuiBase2d CellSize CellPadding FillDirectionMaxCells AbsoluteSize StartCorner UIPageLayout 30 26 GUI GuiBase2d CurrentPage Circular Padding Animated EasingStyle EasingDirection TweenTime Next Previous JumpTo JumpToIndex PageEnter PageLeave Stopped UITableLayout 30 26 GUI GuiBase2d Padding FillEmptySpaceRows FillEmptySpaceColumns MajorAxis UISizeConstraint 30 26 GUI GuiBase2d MinSize MaxSize UITextSizeConstraint 30 26 GUI GuiBase2d MinTextSize MaxTextSize UIAspectRatioConstraint 30 26 GUI AspectRatio AspectType DominantAxis UIScale 30 26 GUI GuiBase2d Scale UIPadding 30 26 GUI GuiBase2d PaddingLeft PaddingRight PaddingTop PaddingBottom UIGradient 30 26 GUI GuiBase2d Color Transparency Rotation Offset UICorner 30 26 GUI GuiBase2d CornerRadius UIStroke 30 26 GUI GuiBase2d Color Transparency 0 1 Thickness 0 25 250 Enabled LineJoinMode ApplyStrokeMode TweenBase false PlaybackState Play Pause Cancel Completed Tween Instance TweenInfo TweenService Create GetValue StarterGui 30 46 SetCoreGuiEnabled GetCoreGuiEnabled GuiService GetGuiInset ContextActionService BindAction SetTitle SetDescription SetImage SetPosition UnbindAction UnbindAllActions GetBoundActionInfo GetAllBoundActionInfo GetButton PointsService true PointsAwarded AwardPoints GetPointBalance GetGamePointBalance GetAwardablePoints Chat 510 33 2 ChatService 510 33 TextChatService Text Chat 511 143 ChatWindowConfiguration Text Chat 10 141 BackgroundTransparency 0 1 100 TextSize 1 100 99 TextStrokeTransparency 0 1 100 HeightScale 0.5 2 1000 WidthScale 0.5 2 1000 ChatInputBarConfiguration Text Chat 11 142 BackgroundTransparency 0 1 100 TextSize 1 100 99 TextStrokeTransparency 0 1 100 BubbleChatConfiguration Text Chat 12 BackgroundTransparency 0 1 100 TextSize 1 100 99 BubblesSpacing 0 20 200 VerticalStudsOffset 0 10 200 TextChannel Text Chat 13 140 TextChatService TextSource Text Chat 10 139 TextChannel TextChatCommand Text Chat 14 138 TextChatService VoiceChatInternal false false VoiceChatService 520 136 1 EnableDefaultVoice VoiceServiceEnableDefaultVoice LocalizationTable 30 97 Localization LocalizationService 530 92 2 PreferredLanguage GetLocaleId MarketplaceService 46 PromptPurchase GetProductInfo PlayerOwnsAsset ProcessReceipt PromptPurchaseFinished UserInputService TouchEnabled KeyboardEnabled MouseEnabled AccelerometerEnabled GyroscopeEnabled TouchTap TouchPinch TouchSwipe TouchLongPress TouchRotate TouchPan TouchStarted TouchMoved TouchEnded InputBegan InputChanged InputEnded TextBoxFocused TextBoxFocusReleased DeviceAccelerationChanged DeviceGravityChanged DeviceRotationChanged GetDeviceAcceleration GetDeviceGravity GetDeviceRotation Atmosphere Environment 5 28 Lighting Density 0 1 1000 Offset 0 1 1000 Height 0 3 1000 Color Decay Haze 0 10 1000 Glare 0 10 1000 Clouds Environment 5 28 Workspace Enabled Color Cover 0 1 1000 Density 0 1 1000 MaterialVariant 3D Interfaces 41 130 BaseMaterial 0 ColorMap 1 MetalnessMap 2 NormalMap 3 RoughnessMap 4 StudsPerTile 0.1 20 200 TerrainDetail 3D Interfaces 42 144 Face 0 ColorMap 1 MetalnessMap 2 NormalMap 3 RoughnessMap 4 StudsPerTile 0.1 20 200 MaterialService 30 131 Sky Environment 5 28 Lighting ColorCorrectionEffect Post Processing Effects 20 83 Brightness -1 1 Contrast -1 1 Saturation -1 1 BloomEffect Post Processing Effects 20 83 Intensity 0 1 Threshold 0.8 4 1000 Size 0 56 56 BlurEffect Post Processing Effects 20 83 Size 0 56 56 Highlight Effects 20 133 FillTransparency 0 1 OutlineTransparency 0 1 DepthOfFieldEffect Post Processing Effects 20 83 FocusDistance 0 200.0 10000 InFocusRadius 0 50.0 10000 NearIntensity 0 1 10000 FarIntensity 0 1 10000 SunRaysEffect Post Processing Effects 20 83 Intensity 0 1 1000 Spread 0 1 1000 Motor 20 false BasePart ControllerPartSensor SimHumanoidPhysics Avatar 20 BasePart BuoyancySensor SimHumanoidPhysics Avatar 20 BasePart ControllerManager SimHumanoidPhysics Avatar 20 Humanoid GroundController SimHumanoidPhysics Avatar 20 ControllerManager AirController SimHumanoidPhysics Avatar 20 ControllerManager ClimbController SimHumanoidPhysics Avatar 20 ControllerManager SwimController SimHumanoidPhysics Avatar 20 ControllerManager Humanoid Avatar 30 9 Model MoveTo Jump Sit TakeDamage UnequipTools EquipTool ReplaceBodyPartR15 GetBodyPartR15 GetMoveVelocity Returns the movement velocity based on the player input. EnableGetMoveVelocity2 NameOcclusion Health MaxHealth TargetPoint Torso true LeftLeg true RightLeg true CollisionType EvaluateStateMachine EnableEvaluateStateMachine2 BodyColors Avatar 20 Model Shirt Avatar 20 43 Model Pants Avatar 20 44 Model ShirtGraphic Avatar 20 40 Model Skin true 20 DebugSettings false 20 FaceInstance false GameSettings false 20 GlobalSettings false 20 Item false 20 NetworkPeer false NetworkSettings false 20 PVInstance false CoordinateFrame true Origin Orientation 400 Origin Position 300 Pivot Offset Position 300 Pivot Offset Orientation 400 PackageLink 1 98 false Status true RenderSettings false 20 RootInstance false ServiceProvider false service true GetService Instance:isService:0 FindService Instance:isService:0 ProfilingItem false NetworkMarker false Hopper true 20 Instance false Archivable 990 ClassName Parent GetDebugId false Clone clone true isA true IsA Instance:Any:0 FindFirstChild FindFirstChildOfClass Instance:isScriptCreatable:0 FindFirstChildWhichIsA Instance:Any:0 FindFirstAncestor FindFirstAncestorOfClass Instance:isScriptCreatable:0 FindFirstAncestorWhichIsA Instance:Any:0 GetFullName children true getChildren true GetChildren GetDescendants Remove true remove true ClearAllChildren Destroy findFirstChild true AncestryChanged DescendantAdded DescendantRemoving Changed BodyGyro Legacy Body Movers 140 14 BasePart MaxTorque maxTorque true D P CFrame cframe true BodyPosition Legacy Body Movers 140 14 BasePart MaxForce maxForce true D P Position position true RocketPropulsion Legacy Body Movers 140 14 BasePart BodyVelocity Legacy Body Movers 140 14 BasePart MaxForce maxForce true P Velocity velocity true BodyAngularVelocity Legacy Body Movers 140 14 BasePart MaxTorque maxTorque true P AngularVelocity angularVelocity true BodyForce Legacy Body Movers 140 14 BasePart Force force true BodyThrust Legacy Body Movers 140 14 BasePart Force force true Location location true Hole true 20 Feature 20 Teams 140 23 Teams GetPlayers Team Interaction 10 24 Teams SpawnLocation Interaction 30 25 NetworkClient false 30 16 NetworkServer false 30 15 LuaSourceContainer false CurrentEditor true Script Scripting 30 6 LinkedScript LocalScript Scripting 40 18 RenderingTest true Scripting 40 5 NetworkReplicator 30 29 Model 100 2 PVInstance BreakJoints GetModelCFrame GetModelSize MakeJoints MoveTo ResetOrientationToIdentity SetIdentityOrientation TranslateBy GetPrimaryPartCFrame SetPrimaryPartCFrame makeJoints true move true PrimaryPart 200 A Part that serves as a physical reference for the Model's Pivot. If set, the Pivot will follow the PrimaryPart during simulation, otherwise the Pivot will be a fixed world space location. LevelOfDetail World Pivot Position 300 World Pivot Orientation 400 Status true 100 2 move true DataModel OnClose true PrivateServerId true PrivateServerOwnerId true VIPServerId true VIPServerOwnerId true Workspace workspace true ShowMouse true IsLoaded Loaded SetPlaceID true SetCreatorID true DataStoreService GetDataStore GetGlobalDataStore GetOrderedDataStore GlobalDataStore -1 OnUpdate GetAsync IncrementAsync SetAsync UpdateAsync OrderedDataStore -1 GetSortedAsync HopperBin true 240 22 Camera 5 5 Model CameraSubject CameraType CoordinateFrame true CFrame FieldOfViewMode FieldOfView DiagonalFieldOfView MaxAxisFieldOfView Focus ViewportSize NearPlaneZ GetRoll WorldToScreenPoint ScreenPointToRay ViewportPointToRay WorldToViewportPoint SetRoll Players 20 21 CharacterAutoLoads true players true ReplicatedStorage 30 70 RobloxReplicatedStorage false ReplicatedFirst 30 70 RemoveRobloxLoadingScreen ServerStorage 30 69 ServerScriptService 30 71 StudioService Lighting 30 13 GetMinutesAfterMidnight GetMoonDirection GetMoonPhase GetSunDirection SetMinutesAfterMidnight Ambient Brightness 0 10 1000 EnvironmentDiffuseScale 0 1 1000 EnvironmentSpecularScale 0 1 1000 ExposureCompensation -3 3 600 ShadowSoftness 0 1 100 ColorShift_Bottom ColorShift_Top GeographicLatitude 0 360 360 GlobalShadows OutdoorAmbient Outlines ShadowColor TimeOfDay ClockTime 0 24 240 FogColor FogEnd FogStart LightingChanged TestService 1000 68 2 DebuggerManager ScriptDebugger DebuggerBreakpoint DebuggerWatch Debris 30 addItem true AddItem MaxItems true Accoutrement 20 32 false Player false 10 12 CharacterAppearance false Model CameraMode DataReady true DataComplexity true LoadCharacter true LoadData true SaveData true SaveBoolean true SaveInstance true SaveString true LoadBoolean true LoadNumber true LoadString true LoadInstance true SaveNumber true playerFromCharacter true SetUnder13 true WaitForDataReady true true Idled Workspace 5 19 FindPartsInRegion3 FindPartsInRegion3WithIgnoreList FindPartOnRay true FindPartOnRayWithIgnoreList true PGSPhysicsSolverEnabled FallenPartsDestroyHeight BasePart 3 false Color CFrame CanCollide 1000 CanQuery 1001 CanTouch 1002 Anchored 900 Massless RootPriority Elasticity 0 1 Friction 0 2 Locked CastShadow Material Reflectance 0 1 ResizeIncrement ResizeableFaces Transparency 0 1 Velocity Size 50 Position 100 Orientation 200 Rotation CenterOfMass AssemblyMass AssemblyCenterOfMass AssemblyLinearVelocity 1000 AssemblyAngularVelocity 1010 AssemblyRootPart makeJoints true MakeJoints BreakJoints GetMass Resize getMass true OutfitChanged true LocalSimulationTouched true StoppedTouching TouchEnded Part Parts 110 1 Workspace TrussPart Parts 120 1 Model WedgePart Parts 120 1 Model PrismPart false true 120 1 PyramidPart false true 120 1 ParallelRampPart false true 120 1 RightAngleRampPart false true 120 1 CornerWedgePart Parts 120 1 Workspace PlayerGui 130 46 SelectionImageObject PlayerScripts 130 78 StandalonePluginScripts 130 78 true StarterPlayerScripts 130 78 false StarterCharacterScripts 130 78 false GuiMain true 140 47 LayerCollector false Enabled ZIndexBehavior ScreenGui GUI 140 47 BasePlayerGui SafeAreaCompatibility GuiObjectSafeAreaBackgroundExtension ClipToDeviceSafeArea GuiObjectSafeAreaBackgroundExtension ScreenInsets ScreenGuiShowScreenInsetsInStudio FunctionalTest true 10 BillboardGui GUI 140 64 GuiBase2d Adornee AbsolutePosition AbsoluteSize Active AlwaysOnTop Enabled ExtentsOffset PlayerToHideFrom StudsOffset SizeOffset Size LightInfluence 0 1 SurfaceGui GUI 140 64 GuiBase2d Adornee Active Enabled LightInfluence 0 1 2000 Brightness 0 10 2000 GuiBase2d false AbsolutePosition AbsoluteSize SelectionGroup GamepadUISelectionGroup SelectionBehaviorUp GamepadUISelectionGroup SelectionBehaviorDown GamepadUISelectionGroup SelectionBehaviorLeft GamepadUISelectionGroup SelectionBehaviorRight GamepadUISelectionGroup InputObject UserInputType UserInputState Position KeyCode GuiObject false TweenPosition TweenSize TweenSizeAndPosition SelectionOrder GamepadUISelectionOrder Active BackgroundColor3 BackgroundTransparency 0 1 BorderColor3 BorderSizePixel ClipsDescendants Draggable true Size Position SizeConstraint ZIndex BackgroundColor true BorderColor true SelectionImageObject DragBegin true DragStopped true MouseEnter MouseLeave MouseMoved TouchTap TouchPinch TouchSwipe TouchLongPress TouchRotate TouchPan InputBegan InputChanged InputEnded Frame GUI 150 48 GuiBase2d Style ScrollingFrame GUI 150 48 GuiBase2d ScrollingEnabled CanvasSize CanvasPosition AbsoluteWindowSize AbsoluteCanvasSize ScrollBarThickness TopImage MidImage BottomImage ImageLabel GUI 180 49 GuiBase2d Image ImageTransparency 0 1 100 ScaleType SliceCenter TileSize VideoFrame GUI 18 120 GuiBase2d GuiBase2d Volume 0 100 1000 Square CanvasGroup RenderCanvasGroupToTexture GUI 200 48 GuiBase2d GuiBase2d GroupTransparency 0 1 100 TextLabel GUI 190 50 GuiBase2d TextColor true LineHeight 0 3 300 TextSize 1 100 99 TextTransparency 0 1 100 TextStrokeTransparency 0 1 100 ContentText TextButton GUI 170 51 GuiBase2d TextColor true LineHeight 0 3 300 TextSize 1 100 99 TextTransparency 0 1 100 TextStrokeTransparency 0 1 100 ContentText TextBox GUI 170 51 GuiBase2d TextColor true LineHeight 0 3 300 TextSize 1 100 99 TextTransparency 0 1 100 TextStrokeTransparency 0 1 100 ContentText GuiButton GUI false 160 52 AutoButtonColor Modal Style MouseButton1Click MouseButton1Down MouseButton1Up MouseButton2Click MouseButton2Down MouseButton2Up ViewportFrame GUI 30 52 GuiBase2d CurrentCamera ImageTransparency 0 1 ImageColor3 Ambient LightColor LightDirection ImageButton GUI 160 52 GuiBase2d Image ImageTransparency 0 1 100 ScaleType SliceCenter TileSize Handles Adornments 190 53 ArcHandles Adornments 200 56 SelectionBox Adornments 210 54 SelectionSphere Adornments 210 54 SurfaceSelection Adornments 210 55 PathfindingModifier Adornments 210 128 Label PathfindingLink Adornments 210 137 Attachment0 Attachment1 Label IsBidirectional Configuration 220 58 HumanoidDescription 22 104 Folder 10 77 WorldModel true World 22 19 Motor6D Animations 200 106 BoxHandleAdornment Adornments 205 111 ConeHandleAdornment Adornments 205 110 CylinderHandleAdornment Adornments 205 109 SphereHandleAdornment Adornments 205 112 WireframeHandleAdornment Adornments 205 113 LineHandleAdornment Adornments 205 107 ImageHandleAdornment Adornments 205 108 SelectionPartLasso true 220 57 SelectionPointLasso true 220 57 PartPairLasso 220 57 PoseBase 220 60 Pose 220 60 false NumberPose 220 60 false KeyframeMarker 220 60 false Keyframe 220 60 false Animation Animations 220 60 AnimationTrack 220 60 AnimationController Animations 220 60 Animator Animations 220 60 EvaluationThrottled Returns true if animation evaluation for the Animator is throttled. 1001 AnimatorIsThrottledPropertyEnabled IKControl Animations 220 53 Type Specifies how the solver satisfies this control. 1001 EndEffector The part that you are interested in moving to reach the Target. 1002 Target The object that the EndEffector reaches for or points at. 1003 ChainRoot The last part that you are interested in moving your character. 1004 Offset An additional offset applied on top of the Target in its local space. 1005 Enabled Toggles the control on and off. 1010 dWeightSpecifies how much this IK control should affect the final pose. 101101 Priority Specifies the order in which controls are solved. 1012 SmoothTime Specifies the time in seconds to smooth the control by. 1013 GetChainLength Returns the total length of the chain, which is the sum of the lengths of its segments. GetChainCount Returns the number of segments in the chain, which is one less than the number of nodes. GetNodeWorldCFrame Returns the CFrame of the node with the given index in world space. GetNodeLocalCFrame Returns the CFrame of the node with the given index in local space. GetRawFinalTarget Returns the CFrame of the raw final target in world space. GetSmoothedFinalTarget Returns the CFrame of the smoothed final target in world space. FaceControls Animations true true 105 129 MeshPart ChinRaiserUpperLip 0 1 ChinRaiser 0 1 FlatPucker 0 1 Funneler 0 1 LowerLipSuck 0 1 LipPresser 0 1 LipsTogether 0 1 MouthLeft 0 1 MouthRight 0 1 Pucker 0 1 UpperLipSuck 0 1 LeftCheekPuff 0 1 LeftDimpler 0 1 LeftLipCornerDown 0 1 LeftLowerLipDepressor 0 1 LeftLipCornerPuller 0 1 LeftLipStretcher 0 1 LeftUpperLipRaiser 0 1 RightCheekPuff 0 1 RightDimpler 0 1 RightLipCornerDown 0 1 RightLowerLipDepressor 0 1 RightLipCornerPuller 0 1 RightLipStretcher 0 1 RightUpperLipRaiser 0 1 JawDrop 0 1 JawLeft 0 1 JawRight 0 1 Corrugator 0 1 LeftBrowLowerer 0 1 LeftOuterBrowRaiser 0 1 LeftNoseWrinkler 0 1 LeftInnerBrowRaiser 0 1 RightBrowLowerer 0 1 RightOuterBrowRaiser 0 1 RightInnerBrowRaiser 0 1 RightNoseWrinkler 0 1 EyesLookDown 0 1 EyesLookLeft 0 1 EyesLookUp 0 1 EyesLookRight 0 1 LeftCheekRaiser 0 1 LeftEyeUpperLidRaiser 0 1 LeftEyeClosed 0 1 RightCheekRaiser 0 1 RightEyeUpperLidRaiser 0 1 RightEyeClosed 0 1 TongueDown 0 1 TongueOut 0 1 TongueUp 0 1 CharacterMesh Meshes 220 60 Model Dialog 3D Interfaces 220 62 ConversationDistance GoodbyeChoiceActive GoodbyeDialog InUse InitialPrompt Purpose Tone BehaviorType GetCurrentPlayers DialogChoice 3D Interfaces 220 63 UnionOperation true false 105 73 UsePartColor NegateOperation true false 104 72 UsePartColor MeshPart Parts true true 105 73 Model Terrain true false 5 65 WaterTransparency 0 1 WaterWaveSize 0 1 WaterWaveSpeed 0 100 WaterReflectance 0 1 Decoration GetCell GetWaterCell SetWaterCell Light Lights 30 13 PVInstance Brightness 0 40 2000 PointLight Lights 30 13 PVInstance Range 0 60 SpotLight Lights 30 13 PVInstance Range 0 60 Angle 0 180 SurfaceLight Lights 30 13 PVInstance Range 0 60 Angle 0 180 RemoteFunction Scripting 40 74 InvokeClient Server InvokeServer Client OnClientInvoke Client OnServerInvoke Server RemoteEvent Scripting 50 75 FireAllClients Server FireClient Server FireServer Client OnClientEvent Client OnServerEvent Server TerrainRegion true 20 65 false ModuleScript Scripting 50 76 ContextActionResult Sink Pass PartType Ball Block Cylinder Wedge CornerWedge Material Air false Water false Rock true Glacier true Snow true Sandstone true Mud true Basalt true Ground true CrackedLava true Asphalt true LeafyGrass true Salt true Limestone true Pavement true Status true Poison true Confusion true SaveFilter true PrivilegeType true Genre true GearGenreSetting true GearType true SortOrder Name LayoutOrder Custom true ZIndexBehavior Global Sibling ScaleType Stretch Slice Tile Fit Crop ]==] \ No newline at end of file diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua new file mode 100644 index 0000000000..29fb403589 --- /dev/null +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua @@ -0,0 +1,1025 @@ +--[[ + New Dex + Final Version + Developed by Moon + + Dex is a debugging suite designed to help the user debug games and find any potential vulnerabilities. + + This is the final version of this script. + You are encouraged to edit, fork, do whatever with this. I pretty much won't be updating it anymore. + Though I would appreciate it if you kept the credits in the script if you enjoy this hard work. + + If you want more info, you can join the server: https://discord.io/zinnia + Note that very limited to no support will be provided. +]] + +-- Main vars +local Main, Explorer, Properties, ScriptViewer, DefaultSettings, Notebook, Serializer, Lib +local API, RMD +local SettingsEditor +local AboutMenu + +local ReplicatedStorage = game:GetService("ReplicatedStorage") +local Dex_RemoteFunction = ReplicatedStorage:WaitForChild("NewDex_Event") :: RemoteFunction +-- Default Settings +DefaultSettings = (function() + local rgb = Color3.fromRGB + return { + --[[Main = { + ResetOnSpawn = true, + },]] + + Explorer = { + _Recurse = true, + Sorting = true, + TeleportToOffset = Vector3.new(0,0,0), + ClickToSelect = false, -- Click part to select + ClickToRename = true, + AutoUpdateSearch = true, + AutoUpdateMode = 0, -- 0 Default, 1 no tree update, 2 no descendant events, 3 frozen + PartSelectionBox = true, + GuiSelectionBox = true, + CopyPathUseGetChildren = true + }, + Properties = { + _Recurse = true, + MaxConflictCheck = 50, + ShowDeprecated = false, + ShowHidden = false, + ClearOnFocus = false, + LoadstringInput = true, + NumberRounding = 3, + ShowAttributes = false, + MaxAttributes = 50, + ScaleType = 1 -- 0 Full Name Shown, 1 Equal Halves + }, + Theme = { + _Recurse = true, + Main1 = rgb(52,52,52), + Main2 = rgb(45,45,45), + Outline1 = rgb(33,33,33), -- Mainly frames + Outline2 = rgb(55,55,55), -- Mainly button + Outline3 = rgb(30,30,30), -- Mainly textbox + TextBox = rgb(38,38,38), + Menu = rgb(32,32,32), + ListSelection = rgb(11,90,175), + Button = rgb(60,60,60), + ButtonHover = rgb(68,68,68), + ButtonPress = rgb(40,40,40), + Highlight = rgb(75,75,75), + Text = rgb(255,255,255), + PlaceholderText = rgb(100,100,100), + Important = rgb(255,0,0), + ExplorerIconMap = "", + MiscIconMap = "", + Syntax = { + Text = rgb(204,204,204), + Background = rgb(36,36,36), + Selection = rgb(255,255,255), + SelectionBack = rgb(11,90,175), + Operator = rgb(204,204,204), + Number = rgb(255,198,0), + String = rgb(173,241,149), + Comment = rgb(102,102,102), + Keyword = rgb(248,109,124), + Error = rgb(255,0,0), + FindBackground = rgb(141,118,0), + MatchingWord = rgb(85,85,85), + BuiltIn = rgb(132,214,247), + CurrentLine = rgb(45,50,65), + LocalMethod = rgb(253,251,172), + LocalProperty = rgb(97,161,241), + Nil = rgb(255,198,0), + Bool = rgb(255,198,0), + Function = rgb(248,109,124), + Local = rgb(248,109,124), + Self = rgb(248,109,124), + FunctionName = rgb(253,251,172), + Bracket = rgb(204,204,204) + }, + } + } +end)() + +-- Vars +local Settings: any = {} +local Apps = {} +local env = {} +local service = setmetatable({},{__index = function(self,name) + local serv = game:GetService(name) + self[name] = serv + return serv +end}) +local plr = service.Players.LocalPlayer or service.Players.PlayerAdded:wait() + +local create = function(data: { [number]: any }): Instance + -- now Luau knows insts can be indexed by numbers + local insts= {} + + for _, v in ipairs(data) do + insts[v[1]] = Instance.new(v[2]) + end + + for _, v in ipairs(data) do + for prop, val in pairs(v[3]) do + if typeof(val) == "table" then + -- val[1] is a number → insts[val[1]] is an Instance + insts[v[1]][prop] = insts[val[1]] + else + insts[v[1]][prop] = val + end + end + end + + return insts[1] -- guaranteed to be the root +end + +local createSimple = function(class,props) + local inst = Instance.new(class) + for i,v in next,props do + inst[i] = v + end + return inst +end + +Main = (function() + local Main = {} + + Main.ModuleList = {"Explorer","Properties"}--Main.ModuleList = {"Explorer","Properties","ScriptViewer"} + Main.Elevated = false + Main.MissingEnv = {} + Main.Version = "Beta 1.0.5 Adonis" + Main.Mouse = plr:GetMouse() + Main.AppControls = {} + Main.Apps = Apps + Main.MenuApps = {} + Main.GitRepoName = "LorekeeperZinnia/Dex" + + -- silencer + Main.MainGui = nil + Main.AppsFrame = nil + Main.AppsContainer = nil + Main.AppsContainerGrid = nil + Main.AppTemplate = nil + Main.SettingsGuiButton = nil + Main.InformationGuiButton = nil + Main.MainGuiOpen = false + Main.LargeIcons = nil + Main.DepsVersionData = nil + Main.ClientVersion = nil + Main.MainGuiMouseEvent = nil + + Main.DisplayOrders = { + SideWindow = 8, + Window = 10, + Menu = 100000, + Core = 101000 + } + + -- Dex_Client for Adonis + Main.LocalScript_Gui = script.Parent + + Main.GetInitDeps = function() + return { + Main = Main, + Lib = Lib, + Apps = Apps, + Settings = Settings, + + API = API, + RMD = RMD, + env = env, + service = service, + plr = plr, + create = create, + createSimple = createSimple + } + end + + Main.Error = function(str: string) + error(str) + end + + Main.LoadModule = function(name) + local module = script:WaitForChild("Modules"):WaitForChild(name,2) + if not module then Main.Error("Cannot find module "..name) end + + local control = require(module) :: any + Main.AppControls[name] = control + control.InitDeps(Main.GetInitDeps()) + + local moduleData = control.Main() + Apps[name] = moduleData + return moduleData + end + + Main.LoadModules = function() + for i,v in pairs(Main.ModuleList) do + local s,e = pcall(Main.LoadModule,v) + if not s then + Main.Error("Failed loading " .. v .. " because " .. e) + end + end + + -- Init Major Apps and define them in modules + Explorer = Apps.Explorer + Properties = Apps.Properties + ScriptViewer = Apps.ScriptViewer + Notebook = Apps.Notebook + local appTable = { + Explorer = Explorer, + Properties = Properties, + ScriptViewer = ScriptViewer, + Notebook = Notebook + } + + Main.AppControls.Lib.InitAfterMain(appTable) + for i,v in pairs(Main.ModuleList) do + local control = Main.AppControls[v] + if control then + control.InitAfterMain(appTable) + end + end + end + + Main.InitEnv = function() + local done = false + setmetatable(env,{__newindex = function(self,name,func) + if not done and not func then Main.MissingEnv[#Main.MissingEnv+1] = name return end + rawset(self,name,func) + end}) + + -- file + env.readfile = nil + env.writefile = nil + env.appendfile = nil + env.makefolder = nil + env.listfiles = nil + env.loadfile = nil + env.saveinstance = nil + + -- debug + env.getupvalues = nil + env.getconstants = nil + env.islclosure = nil + env.checkcaller = nil + env.getreg = nil + env.getgc = nil + + -- other + env.setfflag = nil + env.decompile = nil + env.protectgui = nil + env.gethui = nil + env.setclipboard = nil + env.getnilinstances = nil + env.getloadedmodules = nil + + Main.GuiHolder = Main.Elevated and service.CoreGui or plr:FindFirstChildOfClass("PlayerGui") + + done = true -- luau typing complains if I try to just reset the new index to rawset + end + + Main.ResetSettings = function() + local function recur(t,res) + for set,val in pairs(t) do + if type(val) == "table" and val._Recurse then + if type(res[set]) ~= "table" then + res[set] = {} + end + recur(val,res[set]) + else + res[set] = val + end + end + return res + end + recur(DefaultSettings :: any,Settings) + end + + Main.LoadSettings = function() + local s,data = pcall(env.readfile or error,"DexSettings.json") + if s and data and data ~= "" then + local s,decoded = service.HttpService:JSONDecode(data) + if s and decoded then + for i,v in next,decoded do + + end + else + -- TODO: Notification + end + else + Main.ResetSettings() + end + end + + Main.FetchAPI = function() + local api,rawAPI + local didwedoit = Dex_RemoteFunction:InvokeServer("fetchapi") + + if didwedoit and type(didwedoit) == "table" then + rawAPI = didwedoit + else + if script:FindFirstChild("API") then + rawAPI = require(script.API) + else + error("No API exists") + end + end + + Main.RawAPI = rawAPI + + local success, result = pcall(service.HttpService.JSONDecode, service.HttpService, rawAPI) + if not success or type(result) ~= "table" then + if type(result) ~= "table" then + error(`Error while decoding Decoded data {result} is not type "table"`) + else + error(`Error while decoding {result}`) + end + else + api = result + end + + local classes,enums = {},{} + local categoryOrder,seenCategories = {},{} + + local function insertAbove(t,item,aboveItem) + local findPos = table.find(t,item) + if not findPos then return end + table.remove(t,findPos) + + local pos = table.find(t,aboveItem) + if not pos then return end + table.insert(t,pos,item) + end + + for _,class in pairs(api.Classes) do + local newClass = {} + newClass.Name = class.Name + newClass.Superclass = class.Superclass + newClass.Properties = {} + newClass.Functions = {} + newClass.Events = {} + newClass.Callbacks = {} + newClass.Tags = {} + + if class.Tags then for c,tag in pairs(class.Tags) do newClass.Tags[tag] = true end end + for __,member in pairs(class.Members) do + local newMember = {} + newMember.Name = member.Name + newMember.Class = class.Name + newMember.Security = member.Security + newMember.Tags ={} + if member.Tags then for c,tag in pairs(member.Tags) do newMember.Tags[tag] = true end end + + local mType = member.MemberType + if mType == "Property" then + local propCategory = member.Category or "Other" + propCategory = propCategory:match("^%s*(.-)%s*$") + if not seenCategories[propCategory] then + categoryOrder[#categoryOrder+1] = propCategory + seenCategories[propCategory] = true + end + newMember.ValueType = member.ValueType + newMember.Category = propCategory + newMember.Serialization = member.Serialization + table.insert(newClass.Properties,newMember) + elseif mType == "Function" then + newMember.Parameters = {} + newMember.ReturnType = member.ReturnType.Name + for c,param in pairs(member.Parameters) do + table.insert(newMember.Parameters,{Name = param.Name, Type = param.Type.Name}) + end + table.insert(newClass.Functions,newMember) + elseif mType == "Event" then + newMember.Parameters = {} + for c,param in pairs(member.Parameters) do + table.insert(newMember.Parameters,{Name = param.Name, Type = param.Type.Name}) + end + table.insert(newClass.Events,newMember) + end + end + + classes[class.Name] = newClass + end + + for _,class in pairs(classes) do + class.Superclass = classes[class.Superclass] + end + + for _,enum in pairs(api.Enums) do + local newEnum = {} + newEnum.Name = enum.Name + newEnum.Items = {} + newEnum.Tags = {} + + if enum.Tags then for c,tag in pairs(enum.Tags) do newEnum.Tags[tag] = true end end + for __,item in pairs(enum.Items) do + local newItem = {} + newItem.Name = item.Name + newItem.Value = item.Value + table.insert(newEnum.Items,newItem) + end + + enums[enum.Name] = newEnum + end + + local function getMember(class,member) + if not classes[class] or not classes[class][member] then return end + local result = {} + + local currentClass = classes[class] + while currentClass do + for _,entry in pairs(currentClass[member]) do + result[#result+1] = entry + end + currentClass = currentClass.Superclass + end + + table.sort(result,function(a,b) return a.Name < b.Name end) + return result + end + + insertAbove(categoryOrder,"Behavior","Tuning") + insertAbove(categoryOrder,"Appearance","Data") + insertAbove(categoryOrder,"Attachments","Axes") + insertAbove(categoryOrder,"Cylinder","Slider") + insertAbove(categoryOrder,"Localization","Jump Settings") + insertAbove(categoryOrder,"Surface","Motion") + insertAbove(categoryOrder,"Surface Inputs","Surface") + insertAbove(categoryOrder,"Part","Surface Inputs") + insertAbove(categoryOrder,"Assembly","Surface Inputs") + insertAbove(categoryOrder,"Character","Controls") + categoryOrder[#categoryOrder+1] = "Unscriptable" + categoryOrder[#categoryOrder+1] = "Attributes" + + local categoryOrderMap = {} + for i = 1,#categoryOrder do + categoryOrderMap[categoryOrder[i]] = i + end + + return { + Classes = classes, + Enums = enums, + CategoryOrder = categoryOrderMap, + GetMember = getMember + } + end + + Main.FetchRMD = function() + local rawXML + local didwedoit = Dex_RemoteFunction:InvokeServer("fetchrmd") + + if didwedoit then + rawXML = didwedoit + else + if script:FindFirstChild("RMD") then + rawXML = require(script.RMD) + else + error("No RMD exists") + end + end + + Main.RawRMD = rawXML + local parsed = Lib.ParseXML(rawXML) + local classList = parsed.children[1].children[1].children + local enumList = parsed.children[1].children[2].children + local propertyOrders = {} + + local classes,enums = {},{} + for _,class in pairs(classList) do + local className = "" + for _,child in pairs(class.children) do + if child.tag == "Properties" then + local data = {Properties = {}, Functions = {}} + local props = child.children + for _,prop in pairs(props) do + local name = prop.attrs.name + name = name:sub(1,1):upper()..name:sub(2) + data[name] = prop.children[1].text + end + className = data.Name + classes[className] = data + elseif child.attrs.class == "ReflectionMetadataProperties" then + local members = child.children + for _,member in pairs(members) do + if member.attrs.class == "ReflectionMetadataMember" then + local data = {} + if member.children[1].tag == "Properties" then + local props = member.children[1].children + for _,prop in pairs(props) do + if prop.attrs then + local name = prop.attrs.name + name = name:sub(1,1):upper()..name:sub(2) + data[name] = prop.children[1].text + end + end + if data.PropertyOrder then + local orders = propertyOrders[className] + if not orders then orders = {} propertyOrders[className] = orders end + orders[data.Name] = tonumber(data.PropertyOrder) + end + classes[className].Properties[data.Name] = data + end + end + end + elseif child.attrs.class == "ReflectionMetadataFunctions" then + local members = child.children + for _,member in pairs(members) do + if member.attrs.class == "ReflectionMetadataMember" then + local data = {} + if member.children[1].tag == "Properties" then + local props = member.children[1].children + for _,prop in pairs(props) do + if prop.attrs then + local name = prop.attrs.name + name = name:sub(1,1):upper()..name:sub(2) + data[name] = prop.children[1].text + end + end + classes[className].Functions[data.Name] = data + end + end + end + end + end + end + + for _,enum in pairs(enumList) do + local enumName = "" + for _,child in pairs(enum.children) do + if child.tag == "Properties" then + local data = {Items = {}} + local props = child.children + for _,prop in pairs(props) do + local name = prop.attrs.name + name = name:sub(1,1):upper()..name:sub(2) + data[name] = prop.children[1].text + end + enumName = data.Name + enums[enumName] = data + elseif child.attrs.class == "ReflectionMetadataEnumItem" then + local data = {} + if child.children[1].tag == "Properties" then + local props = child.children[1].children + for _,prop in pairs(props) do + local name = prop.attrs.name + name = name:sub(1,1):upper()..name:sub(2) + data[name] = prop.children[1].text + end + enums[enumName].Items[data.Name] = data + end + end + end + end + + return {Classes = classes, Enums = enums, PropertyOrders = propertyOrders} + end + + Main.ShowGui = function(gui) + if env.protectgui then + env.protectgui(gui) + end + gui.Parent = Main.GuiHolder + end + + Main.CreateIntro = function(initStatus) -- TODO: Must theme and show errors + local gui = create({ + {1,"ScreenGui",{Name="Dex_Intro",ResetOnSpawn=false}}, + {2,"Frame",{Active=true,BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),BorderSizePixel=0,Name="Main",Parent={1},Position=UDim2.new(0.5,-175,0.5,-100),Size=UDim2.new(0,350,0,200),}}, + {3,"Frame",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BorderSizePixel=0,ClipsDescendants=true,Name="Holder",Parent={2},Size=UDim2.new(1,0,1,0),}}, + {4,"UIGradient",{Parent={3},Rotation=30,Transparency=NumberSequence.new({NumberSequenceKeypoint.new(0,1,0),NumberSequenceKeypoint.new(1,1,0),}),}}, + {5,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=4,Name="Title",Parent={3},Position=UDim2.new(0,-190,0,15),Size=UDim2.new(0,100,0,50),Text="Dex",TextColor3=Color3.new(1,1,1),TextSize=50,TextTransparency=1,}}, + {6,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Desc",Parent={3},Position=UDim2.new(0,-230,0,60),Size=UDim2.new(0,180,0,25),Text="Ultimate Debugging Suite",TextColor3=Color3.new(1,1,1),TextSize=18,TextTransparency=1,}}, + {7,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="StatusText",Parent={3},Position=UDim2.new(0,20,0,110),Size=UDim2.new(0,180,0,25),Text="Fetching API",TextColor3=Color3.new(1,1,1),TextSize=14,TextTransparency=1,}}, + {8,"Frame",{BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),BorderSizePixel=0,Name="ProgressBar",Parent={3},Position=UDim2.new(0,110,0,145),Size=UDim2.new(0,0,0,4),}}, + {9,"Frame",{BackgroundColor3=Color3.new(0.2392156869173,0.56078433990479,0.86274510622025),BorderSizePixel=0,Name="Bar",Parent={8},Size=UDim2.new(0,0,1,0),}}, + {10,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://2764171053",ImageColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),Parent={8},ScaleType=1,Size=UDim2.new(1,0,1,0),SliceCenter=Rect.new(2,2,254,254),}}, + {11,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Creator",Parent={2},Position=UDim2.new(1,-110,1,-20),Size=UDim2.new(0,105,0,20),Text="Developed by Moon",TextColor3=Color3.new(1,1,1),TextSize=14,TextXAlignment=1,}}, + {12,"UIGradient",{Parent={11},Transparency=NumberSequence.new({NumberSequenceKeypoint.new(0,1,0),NumberSequenceKeypoint.new(1,1,0),}),}}, + {13,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Version",Parent={2},Position=UDim2.new(1,-110,1,-35),Size=UDim2.new(0,105,0,20),Text="Beta 1.0.0",TextColor3=Color3.new(1,1,1),TextSize=14,TextXAlignment=1,}}, + {14,"UIGradient",{Parent={13},Transparency=NumberSequence.new({NumberSequenceKeypoint.new(0,1,0),NumberSequenceKeypoint.new(1,1,0),}),}}, + {15,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Image="rbxassetid://1427967925",Name="Outlines",Parent={2},Position=UDim2.new(0,-5,0,-5),ScaleType=1,Size=UDim2.new(1,10,1,10),SliceCenter=Rect.new(6,6,25,25),TileSize=UDim2.new(0,20,0,20),}}, + {16,"UIGradient",{Parent={15},Rotation=-30,Transparency=NumberSequence.new({NumberSequenceKeypoint.new(0,1,0),NumberSequenceKeypoint.new(1,1,0),}),}}, + {17,"UIGradient",{Parent={2},Rotation=-30,Transparency=NumberSequence.new({NumberSequenceKeypoint.new(0,1,0),NumberSequenceKeypoint.new(1,1,0),}),}}, + }) + Main.ShowGui(gui) + local backGradient = gui.Main.UIGradient + local outlinesGradient = gui.Main.Outlines.UIGradient + local holderGradient = gui.Main.Holder.UIGradient + local titleText = gui.Main.Holder.Title + local descText = gui.Main.Holder.Desc + local versionText = gui.Main.Version + local versionGradient = versionText.UIGradient + local creatorText = gui.Main.Creator + local creatorGradient = creatorText.UIGradient + local statusText = gui.Main.Holder.StatusText + local progressBar = gui.Main.Holder.ProgressBar + local tweenS = service.TweenService + + -- Change versionText + versionText.Text = Main.Version + + local renderStepped = service.RunService.RenderStepped + local signalWait = renderStepped.wait + local fastwait = function(s) + if not s then return signalWait(renderStepped) end + local start = tick() + while tick() - start < s do signalWait(renderStepped) end + end + + statusText.Text = initStatus + + local function tweenNumber(n,ti,func) + local tweenVal = Instance.new("IntValue") + tweenVal.Value = 0 + tweenVal.Changed:Connect(func) + local tween = tweenS:Create(tweenVal,ti,{Value = n}) + tween:Play() + tween.Completed:Connect(function() + tweenVal:Destroy() + end) + end + + local ti = TweenInfo.new(0.4,Enum.EasingStyle.Quad,Enum.EasingDirection.Out) + tweenNumber(100,ti,function(val) + val = val/200 + local start = NumberSequenceKeypoint.new(0,0) + local a1 = NumberSequenceKeypoint.new(val,0) + local a2 = NumberSequenceKeypoint.new(math.min(0.5,val+math.min(0.05,val)),1) + if a1.Time == a2.Time then a2 = a1 end + local b1 = NumberSequenceKeypoint.new(1-val,0) + local b2 = NumberSequenceKeypoint.new(math.max(0.5,1-val-math.min(0.05,val)),1) + if b1.Time == b2.Time then b2 = b1 end + local goal = NumberSequenceKeypoint.new(1,0) + backGradient.Transparency = NumberSequence.new({start,a1,a2,b2,b1,goal}) + outlinesGradient.Transparency = NumberSequence.new({start,a1,a2,b2,b1,goal}) + end) + + fastwait(0.4) + + tweenNumber(100,ti,function(val) + val = val/166.66 + local start = NumberSequenceKeypoint.new(0,0) + local a1 = NumberSequenceKeypoint.new(val,0) + local a2 = NumberSequenceKeypoint.new(val+0.01,1) + local goal = NumberSequenceKeypoint.new(1,1) + holderGradient.Transparency = NumberSequence.new({start,a1,a2,goal}) + end) + + tweenS:Create(titleText,ti,{Position = UDim2.new(0,60,0,15), TextTransparency = 0}):Play() + tweenS:Create(descText,ti,{Position = UDim2.new(0,20,0,60), TextTransparency = 0}):Play() + + local function rightTextTransparency(obj) + tweenNumber(100,ti,function(val) + val = val/100 + local a1 = NumberSequenceKeypoint.new(1-val,0) + local a2 = NumberSequenceKeypoint.new(math.max(0,1-val-0.01),1) + if a1.Time == a2.Time then a2 = a1 end + local start = NumberSequenceKeypoint.new(0,a1 == a2 and 0 or 1) + local goal = NumberSequenceKeypoint.new(1,0) + obj.Transparency = NumberSequence.new({start,a2,a1,goal}) + end) + end + rightTextTransparency(versionGradient) + rightTextTransparency(creatorGradient) + + fastwait(0.9) + + local progressTI = TweenInfo.new(0.25,Enum.EasingStyle.Quad,Enum.EasingDirection.Out) + + tweenS:Create(statusText,progressTI,{Position = UDim2.new(0,20,0,120), TextTransparency = 0}):Play() + tweenS:Create(progressBar,progressTI,{Position = UDim2.new(0,60,0,145), Size = UDim2.new(0,100,0,4)}):Play() + + fastwait(0.25) + + local function setProgress(text,n) + statusText.Text = text + tweenS:Create(progressBar.Bar,progressTI,{Size = UDim2.new(n,0,1,0)}):Play() + end + + local function close() + tweenS:Create(titleText,progressTI,{TextTransparency = 1}):Play() + tweenS:Create(descText,progressTI,{TextTransparency = 1}):Play() + tweenS:Create(versionText,progressTI,{TextTransparency = 1}):Play() + tweenS:Create(creatorText,progressTI,{TextTransparency = 1}):Play() + tweenS:Create(statusText,progressTI,{TextTransparency = 1}):Play() + tweenS:Create(progressBar,progressTI,{BackgroundTransparency = 1}):Play() + tweenS:Create(progressBar.Bar,progressTI,{BackgroundTransparency = 1}):Play() + tweenS:Create(progressBar.ImageLabel,progressTI,{ImageTransparency = 1}):Play() + + tweenNumber(100,TweenInfo.new(0.4,Enum.EasingStyle.Back,Enum.EasingDirection.In),function(val) + val = val/250 + local start = NumberSequenceKeypoint.new(0,0) + local a1 = NumberSequenceKeypoint.new(0.6+val,0) + local a2 = NumberSequenceKeypoint.new(math.min(1,0.601+val),1) + if a1.Time == a2.Time then a2 = a1 end + local goal = NumberSequenceKeypoint.new(1,a1 == a2 and 0 or 1) + holderGradient.Transparency = NumberSequence.new({start,a1,a2,goal}) + end) + + fastwait(0.5) + gui.Main.BackgroundTransparency = 1 + outlinesGradient.Rotation = 30 + + tweenNumber(100,ti,function(val) + val = val/100 + local start = NumberSequenceKeypoint.new(0,1) + local a1 = NumberSequenceKeypoint.new(val,1) + local a2 = NumberSequenceKeypoint.new(math.min(1,val+math.min(0.05,val)),0) + if a1.Time == a2.Time then a2 = a1 end + local goal = NumberSequenceKeypoint.new(1,a1 == a2 and 1 or 0) + outlinesGradient.Transparency = NumberSequence.new({start,a1,a2,goal}) + holderGradient.Transparency = NumberSequence.new({start,a1,a2,goal}) + end) + + fastwait(0.45) + gui:Destroy() + end + + return {SetProgress = setProgress, Close = close} + end + + Main.CreateApp = function(data) + if Main.MenuApps[data.Name] then return end -- TODO: Handle conflict + local control = {} + + local app = Main.AppTemplate:Clone() + + local iconIndex = data.Icon + if data.IconMap and iconIndex then + if type(iconIndex) == "number" then + data.IconMap:Display(app.Main.Icon,iconIndex) + elseif type(iconIndex) == "string" then + data.IconMap:DisplayByKey(app.Main.Icon,iconIndex) + end + elseif type(iconIndex) == "string" then + app.Main.Icon.Image = iconIndex + else + app.Main.Icon.Image = "" + end + + local function updateState() + app.Main.BackgroundTransparency = data.Open and 0 or (Lib.CheckMouseInGui(app.Main) and 0 or 1) + app.Main.Highlight.Visible = data.Open + end + + local function enable(silent) + if data.Open then return end + data.Open = true + updateState() + if not silent then + if data.Window then data.Window:Show() end + if data.OnClick then data.OnClick(data.Open) end + end + end + + local function disable(silent) + if not data.Open then return end + data.Open = false + updateState() + if not silent then + if data.Window then data.Window:Hide() end + if data.OnClick then data.OnClick(data.Open) end + end + end + + updateState() + + local ySize = service.TextService:GetTextSize(data.Name,14,Enum.Font.SourceSans,Vector2.new(62,999999)).Y + app.Main.Size = UDim2.new(1,0,0,math.clamp(46+ySize,60,74)) + app.Main.AppName.Text = data.Name + + app.Main.InputBegan:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + app.Main.BackgroundTransparency = 0 + app.Main.BackgroundColor3 = Settings.Theme.ButtonHover + end + end) + + app.Main.InputEnded:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + app.Main.BackgroundTransparency = data.Open and 0 or 1 + app.Main.BackgroundColor3 = Settings.Theme.Button + end + end) + + app.Main.MouseButton1Click:Connect(function() + if data.Open then disable() else enable() end + end) + + local window = data.Window + if window then + window.OnActivate:Connect(function() enable(true) end) + window.OnDeactivate:Connect(function() disable(true) end) + end + + app.Visible = true + app.Parent = Main.AppsContainer + Main.AppsFrame.CanvasSize = UDim2.new(0,0,0,Main.AppsContainerGrid.AbsoluteCellCount.Y*82 + 8) + + control.Enable = enable + control.Disable = disable + Main.MenuApps[data.Name] = control + return control + end + + Main.SetMainGuiOpen = function(val) + Main.MainGuiOpen = val + + Main.MainGui.OpenButton.Text = val and "X" or "Dex" + if val then Main.MainGui.OpenButton.MainFrame.Visible = true end + Main.MainGui.OpenButton.MainFrame:TweenSize(val and UDim2.new(0,224,0,200) or UDim2.new(0,0,0,0),Enum.EasingDirection.Out,Enum.EasingStyle.Quad,0.2,true) + --Main.MainGui.OpenButton.BackgroundTransparency = val and 0 or (Lib.CheckMouseInGui(Main.MainGui.OpenButton) and 0 or 0.2) + service.TweenService:Create(Main.MainGui.OpenButton,TweenInfo.new(0.2,Enum.EasingStyle.Quad,Enum.EasingDirection.Out),{BackgroundTransparency = val and 0 or (Lib.CheckMouseInGui(Main.MainGui.OpenButton) and 0 or 0.2)}):Play() + + if Main.MainGuiMouseEvent then Main.MainGuiMouseEvent:Disconnect() end + + if not val then + local startTime = tick() + Main.MainGuiCloseTime = startTime + task.spawn(function() + Lib.FastWait(0.2) + if not Main.MainGuiOpen and startTime == Main.MainGuiCloseTime then Main.MainGui.OpenButton.MainFrame.Visible = false end + end) + else + Main.MainGuiMouseEvent = service.UserInputService.InputBegan:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseButton1 and not Lib.CheckMouseInGui(Main.MainGui.OpenButton) and not Lib.CheckMouseInGui(Main.MainGui.OpenButton.MainFrame) then + Main.SetMainGuiOpen(false) + end + end) + end + end + + Main.CreateMainGui = function() + local gui = create({ + {1,"ScreenGui",{IgnoreGuiInset=true,Name="Dex_MainMenu",ResetOnSpawn=false}}, + {2,"TextButton",{AnchorPoint=Vector2.new(0.5,0),AutoButtonColor=false,BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BorderSizePixel=0,Font=4,Name="OpenButton",Parent={1},Position=UDim2.new(0.5,0,0,2),Size=UDim2.new(0,32,0,32),Text="Dex",TextColor3=Color3.new(1,1,1),TextSize=16,TextTransparency=0.20000000298023,}}, + {3,"UICorner",{CornerRadius=UDim.new(0,4),Parent={2},}}, + {4,"Frame",{AnchorPoint=Vector2.new(0.5,0),BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),ClipsDescendants=true,Name="MainFrame",Parent={2},Position=UDim2.new(0.5,0,1,-4),Size=UDim2.new(0,224,0,200),}}, + {5,"UICorner",{CornerRadius=UDim.new(0,4),Parent={4},}}, + {6,"Frame",{BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),Name="BottomFrame",Parent={4},Position=UDim2.new(0,0,1,-24),Size=UDim2.new(1,0,0,24),}}, + {7,"UICorner",{CornerRadius=UDim.new(0,4),Parent={6},}}, + {8,"Frame",{BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),BorderSizePixel=0,Name="CoverFrame",Parent={6},Size=UDim2.new(1,0,0,4),}}, + {9,"Frame",{BackgroundColor3=Color3.new(0.1294117718935,0.1294117718935,0.1294117718935),BorderSizePixel=0,Name="Line",Parent={8},Position=UDim2.new(0,0,0,-1),Size=UDim2.new(1,0,0,1),}}, + {10,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Settings",Parent={6},Position=UDim2.new(1,-48,0,0),Size=UDim2.new(0,24,1,0),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,}}, + {11,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://6578871732",ImageTransparency=0.20000000298023,Name="Icon",Parent={10},Position=UDim2.new(0,4,0,4),Size=UDim2.new(0,16,0,16),}}, + {12,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Information",Parent={6},Position=UDim2.new(1,-24,0,0),Size=UDim2.new(0,24,1,0),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,}}, + {13,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://6578933307",ImageTransparency=0.20000000298023,Name="Icon",Parent={12},Position=UDim2.new(0,4,0,4),Size=UDim2.new(0,16,0,16),}}, + {14,"ScrollingFrame",{Active=true,AnchorPoint=Vector2.new(0.5,0),BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderColor3=Color3.new(0.1294117718935,0.1294117718935,0.1294117718935),BorderSizePixel=0,Name="AppsFrame",Parent={4},Position=UDim2.new(0.5,0,0,0),ScrollBarImageColor3=Color3.new(0,0,0),ScrollBarThickness=4,Size=UDim2.new(0,222,1,-25),}}, + {15,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Name="Container",Parent={14},Position=UDim2.new(0,7,0,8),Size=UDim2.new(1,-14,0,2),}}, + {16,"UIGridLayout",{CellSize=UDim2.new(0,66,0,74),Parent={15},SortOrder=2,}}, + {17,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Name="App",Parent={1},Size=UDim2.new(0,100,0,100),Visible=false,}}, + {18,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderSizePixel=0,Font=3,Name="Main",Parent={17},Size=UDim2.new(1,0,0,60),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, + {19,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://6579106223",ImageRectSize=Vector2.new(32,32),Name="Icon",Parent={18},Position=UDim2.new(0.5,-16,0,4),ScaleType=4,Size=UDim2.new(0,32,0,32),}}, + {20,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="AppName",Parent={18},Position=UDim2.new(0,2,0,38),Size=UDim2.new(1,-4,1,-40),Text="Explorer",TextColor3=Color3.new(1,1,1),TextSize=14,TextTransparency=0.10000000149012,TextTruncate=1,TextWrapped=true,TextYAlignment=0,}}, + {21,"Frame",{BackgroundColor3=Color3.new(0,0.66666668653488,1),BorderSizePixel=0,Name="Highlight",Parent={18},Position=UDim2.new(0,0,1,-2),Size=UDim2.new(1,0,0,2),}}, + }) + Main.MainGui = gui + Main.AppsFrame = gui.OpenButton.MainFrame.AppsFrame + Main.AppsContainer = Main.AppsFrame.Container + Main.AppsContainerGrid = Main.AppsContainer.UIGridLayout + Main.AppTemplate = gui.App + Main.SettingsGuiButton = gui.OpenButton.MainFrame.BottomFrame.Settings -- Settings Button + Main.InformationGuiButton = gui.OpenButton.MainFrame.BottomFrame.Information -- Information Button + Main.MainGuiOpen = false + + local openButton = gui.OpenButton + openButton.BackgroundTransparency = 0.2 + openButton.MainFrame.Size = UDim2.new(0,0,0,0) + openButton.MainFrame.Visible = false + openButton.MouseButton1Click:Connect(function() + Main.SetMainGuiOpen(not Main.MainGuiOpen) + end) + + openButton.InputBegan:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + service.TweenService:Create(Main.MainGui.OpenButton,TweenInfo.new(0,Enum.EasingStyle.Quad,Enum.EasingDirection.Out),{BackgroundTransparency = 0}):Play() + end + end) + + openButton.InputEnded:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + service.TweenService:Create(Main.MainGui.OpenButton,TweenInfo.new(0,Enum.EasingStyle.Quad,Enum.EasingDirection.Out),{BackgroundTransparency = Main.MainGuiOpen and 0 or 0.2}):Play() + end + end) + + -- Settings Button + local settingsButton = Main.SettingsGuiButton + settingsButton.MouseButton1Click:Connect(function() + SettingsEditor.Window:Show() + end) + + -- About Menu + local infoButton = Main.InformationGuiButton + infoButton.MouseButton1Click:Connect(function() + AboutMenu.Window:Show() + end) + + -- Create Main Apps + Main.CreateApp({Name = "Explorer", IconMap = Main.LargeIcons, Icon = "Explorer", Open = true, Window = Explorer.Window}) + + Main.CreateApp({Name = "Properties", IconMap = Main.LargeIcons, Icon = "Properties", Open = true, Window = Properties.Window}) + + --Main.CreateApp({Name = "Script Viewer", IconMap = Main.LargeIcons, Icon = "Script_Viewer", Window = ScriptViewer.Window}) + + Lib.ShowGui(gui) + end + + Main.SetupFilesystem = function() + if not env.writefile or not env.makefolder then return end + + local writefile,makefolder = env.writefile,env.makefolder + + makefolder("dex") + makefolder("dex/assets") + makefolder("dex/saved") + makefolder("dex/plugins") + makefolder("dex/ModuleCache") + end + + Main.LocalDepsUpToDate = function() + return Main.DepsVersionData and Main.ClientVersion == Main.DepsVersionData[1] + end + + Main.Init = function() + Main.Elevated = pcall(function() local a = game:GetService("CoreGui"):GetFullName() end) + Main.InitEnv() + Main.LoadSettings() + Main.SetupFilesystem() + + -- Load Lib + local intro = Main.CreateIntro("Initializing Library") + Lib = Main.LoadModule("Lib") + Lib.FastWait() + + -- Init other stuff + --Main.IncompatibleTest() + + -- Init icons + Main.MiscIcons = Lib.IconMap.new("rbxassetid://6511490623",256,256,16,16) + Main.MiscIcons:SetDict({ + Reference = 0, Cut = 1, Cut_Disabled = 2, Copy = 3, Copy_Disabled = 4, Paste = 5, Paste_Disabled = 6, + Delete = 7, Delete_Disabled = 8, Group = 9, Group_Disabled = 10, Ungroup = 11, Ungroup_Disabled = 12, TeleportTo = 13, + Rename = 14, JumpToParent = 15, ExploreData = 16, Save = 17, CallFunction = 18, CallRemote = 19, Undo = 20, + Undo_Disabled = 21, Redo = 22, Redo_Disabled = 23, Expand_Over = 24, Expand = 25, Collapse_Over = 26, Collapse = 27, + SelectChildren = 28, SelectChildren_Disabled = 29, InsertObject = 30, ViewScript = 31, AddStar = 32, RemoveStar = 33, Script_Disabled = 34, + LocalScript_Disabled = 35, Play = 36, Pause = 37, Rename_Disabled = 38 + }) + Main.LargeIcons = Lib.IconMap.new("rbxassetid://6579106223",256,256,32,32) + Main.LargeIcons:SetDict({ + Explorer = 0, Properties = 1, Script_Viewer = 2, + }) + + -- Fetch external deps + intro.SetProgress("Fetching API",0.35) + API = Main.FetchAPI() + Lib.FastWait() + intro.SetProgress("Fetching RMD",0.5) + RMD = Main.FetchRMD() + Lib.FastWait() + + -- Load other modules + intro.SetProgress("Loading Modules",0.75) + SettingsEditor = Main.LoadModule("SettingsEditor") + AboutMenu = Main.LoadModule("AboutMenu") + + Main.AppControls.Lib.InitDeps(Main.GetInitDeps()) -- Missing deps now available + Main.LoadModules() + Lib.FastWait() + + -- Init other modules + intro.SetProgress("Initializing Modules",0.9) + Explorer.Init() + Properties.Init() + --ScriptViewer.Init() + + SettingsEditor.Init() -- init this last + AboutMenu.Init() + Lib.FastWait() + + -- Done + intro.SetProgress("Complete",1) + task.spawn(function() + Lib.FastWait(1.25) + intro.Close() + end) + + -- Init window system, create main menu, show explorer and properties + Lib.Window.Init() + Main.CreateMainGui() + Explorer.Window:Show({Align = "right", Pos = 1, Size = 0.5, Silent = true}) + Properties.Window:Show({Align = "right", Pos = 2, Size = 0.5, Silent = true}) + Lib.DeferFunc(function() Lib.Window.ToggleSide("right") end) + + -- SettingsEditor GUI + --SettingsEditor.Window:Show() + end + + return Main +end)() + +-- Start +Main.Init() + +--for i,v in pairs(Main.MissingEnv) do print(i,v) end \ No newline at end of file diff --git a/MainModule/Server/Plugins/ServerNewDex/init.lua b/MainModule/Server/Plugins/ServerNewDex/init.lua new file mode 100644 index 0000000000..f765c69c01 --- /dev/null +++ b/MainModule/Server/Plugins/ServerNewDex/init.lua @@ -0,0 +1,219 @@ +return function(Vargs) + local Server = Vargs.Server; + local Service = Vargs.Service; + + local Variables = Server.Variables; + local Commands = Server.Commands; + + local Settings = Server.Settings; + local Anti = Server.Anti; + local Functions = Server.Functions; + local Logs = Server.Logs; + local Remote = Server.Remote; + local Admin = Server.Admin; + + local HttpService = Service.HttpService + local Success, APIDump, Reflection = nil + local ServerNewDex = {} + + local newDex_main = script:WaitForChild("Dex_Client", 120) + local Event = ServerNewDex.Event; + + if not newDex_main then + warn("New Dex unable to be located?") + else + newDex_main = newDex_main:Clone() + for _, BaseScript in ipairs(newDex_main:GetDescendants()) do + if BaseScript.ClassName == "LocalScript" then + BaseScript.Disabled = false + end + end + end + + task.delay(0.25, function() -- Load Dex instance data asynchronously + if Server.HTTP.HttpEnabled then + while true do + Success, APIDump = pcall(function() return HttpService:GetAsync("https://github.com/MaximumADHD/Roblox-Client-Tracker/raw/roblox/API-Dump.json") end) + if Success and APIDump then + break + end + task.wait(1) + end + Logs:AddLog("Script", "Successfully loaded instance API dump to Dex") + while true do + Success,Reflection = pcall(function() return HttpService:GetAsync("https://raw.githubusercontent.com/MaximumADHD/Roblox-Client-Tracker/roblox/ReflectionMetadata.xml") end) + if Success and Reflection then + break + end + task.wait(1) + end + Logs:AddLog("Script", "Successfully loaded reflection metadata to Dex") + else + Logs:AddLog("Script", "Access to HttpService is not enabled! Dex API dump could not be fetched!") + Logs:AddLog("Errors", "Access to HttpService is not enabled! Dex API dump could not be fetched!") + --logError("Access to HttpService is not enabled! Dex api dump could not be fetched!") + end + end) + + ServerNewDex.newDex_main = newDex_main + ServerNewDex.Event = nil; + ServerNewDex.Authorized = {}; --// Users who have been given Dex and are authorized to use the remote event + + local Actions = { + destroy = function(p: Player, args, realPlr: Player) + if args[1]:IsA("Player") then + if Admin.GetLevel(args[1]) < Admin.GetLevel(realPlr) then + args[1]:Destroy(); + else + Remote.MakeGui(realPlr, "Output", { + Title = "Missing Permissions"; + Message = `You do not have the permission to delete player {args[1].DisplayName} (@{args[1].Name})`; + }) + end + else + args[1]:Destroy(); + end + return true; + end, + clearclipboard = function(Player: Player, args) + Player.Clipboard = {}; + return true; + end, + duplicate = function(Player: Player, args) + local obj = args[1]; + local par = args[2]; + + local new = obj:Clone() + new.Parent = par; + + return new; + end, + copy = function(Player: Player, args) + local obj = args[1]; + local new = obj:Clone(); + table.insert(Player.Clipboard, new) + + return new; -- It seems like this returns nil to the client, if the parent is nil. + end, + paste = function(Player: Player, args) + local parent = args[1]; + local pastedObjects = {} + + for _,v in pairs(Player.Clipboard) do + local cloned = v:Clone() + cloned.Parent = parent; + table.insert(pastedObjects, cloned) + end + + return pastedObjects; + end, + setproperty = function(Player: Player, args) + local obj = args[1]; + local prop = args[2]; + local value = args[3]; + + if value ~= nil then + obj[prop] = value; + return true; + end + end, + setpropertyattribute = function(Player:Player, args) + local obj = args[1]; + local attributeName = args[2]; + local value = args[3]; + + if (value ~= nil) then + obj:SetAttribute(attributeName, value); + return true; + end + end, + instancenew = function(Player:Player, args) + return Service.New(args[1], args[2]); + end, + callfunction = function(Player:Player, args) + local rets = {pcall(function() return (args[1][args[2]](args[1])) end)} + table.remove(rets,1) + return rets + end, + callremote = function(Player:Player, args) + if args[1]:IsA("RemoteFunction") then + return args[1]:InvokeClient(table.unpack(args[2])) + elseif args[1]:IsA("RemoteEvent") then + args[1]:FireClient(table.unpack(args[2])) + elseif args[1]:IsA("BindableFunction") then + return args[1]:Invoke(table.unpack(args[2])) + elseif args[1]:IsA("BindableEvent") then + args[1]:Fire(table.unpack(args[2])) + end + end, + fetchapi = function(Player:Player) + return APIDump or false + end, + fetchrmd = function(Player:Player) + return Reflection or false + end, + } + + function ServerNewDex.MakeEvent() + if not Event then + Event = Service.New("RemoteFunction", { + Name = "NewDex_Event"; + Parent = game:GetService("ReplicatedStorage"); + }, true, true) + + Event.OnServerInvoke = (function(Plr: Player, Action, ...) + local pData = ServerNewDex.Authorized[Plr]; + + if not pData then + return Anti.Detected(Plr, "kick", "Unauthorized to use the dex event"); + end + + local args = {...}; + local Suppliments = args[1]; + + local Action = string.lower(assert(Action, "Method argument missing!")) + local MethodFunction = assert(Actions[Action], `{Plr.Name} attempted to use an action that wasn't defined: {Action}`) + + return MethodFunction(pData, args, Plr); + end) + end + + end + + function ServerNewDex.MakeLocalDexForPlayer(ply, dexGui, destination) + if ply then + if (dexGui and destination) then + dexGui.Parent = destination + end + end + end + + -- Function used to give Dex to a player. + function ServerNewDex.GiveDexToPlayer(ply) + if ply then + ServerNewDex.Authorized[ply] = { + Clipboard = {}; + }; --// double as per-player explorer-related data + + if not ServerNewDex.Event then ServerNewDex.MakeEvent(); end + ServerNewDex.MakeLocalDexForPlayer(ply, ServerNewDex.newDex_main:Clone(), ply:FindFirstChild("PlayerGui")) + end + end + + Commands.DexExplorerNew = { + Prefix = Settings.Prefix; + Commands = {"dexnew";"dexnewexplorer";"newdex";"dex";"dexexplorer"}; + Args = {}; --// kept for backwards compatibility + Description = "Lets you explore the game using new Dex [Credits to LorekeeperZinnia]"; + AdminLevel = 300; + Function = function(plr, args) + ServerNewDex.Authorized[plr] = { + Clipboard = {}; + }; --// double as per-player explorer-related data + + if not ServerNewDex.Event then ServerNewDex.MakeEvent(); end + Remote.MakeLocal(plr, newDex_main:Clone(), "PlayerGui") + end + }; + Logs:AddLog("Script", "NewDex Module Loaded") +end \ No newline at end of file diff --git a/MainModule/Server/Plugins/ServerNewDex/serviceUtils.lua b/MainModule/Server/Plugins/ServerNewDex/serviceUtils.lua new file mode 100644 index 0000000000..130498b570 --- /dev/null +++ b/MainModule/Server/Plugins/ServerNewDex/serviceUtils.lua @@ -0,0 +1,39 @@ +local serviceUtils = {} + +local CreatedItems = setmetatable({}, {__mode = "v"}) + + +serviceUtils.InstanceNew = function(class, data, noWrap, noAdd) + --local new = noWrap and oldInstNew(class) or Instance.new(class) + local new = Instance.new(class) + if data then + if type(data) == "table" then + local parent = data.Parent + --if service.Wrapped(parent) then parent = parent:GetObject() end + data.Parent = nil + + for val,prop in data do + new[val] = prop + end + + if parent then + new.Parent = parent + end + elseif type(data) == "userdata" then + --[[if service.Wrapped(data) then + new.Parent = data:GetObject() + else + new.Parent = data + end]] + new.Parent = data + end + end + + if new and not noAdd then + table.insert(CreatedItems, new) + end + + return new +end + +return serviceUtils From f083b551b9989254232e569ffc5c628116bba2e8 Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Thu, 27 Nov 2025 23:34:49 -0500 Subject: [PATCH 02/36] Remove ServerNewDex plugin module Deleted the ServerNewDex.rbxmx file from MainModule/Server/Plugins, removing the New Dex explorer plugin and its associated scripts and assets from the server plugins directory. --- MainModule/Server/Plugins/ServerNewDex.rbxmx | 13280 ----------------- 1 file changed, 13280 deletions(-) delete mode 100644 MainModule/Server/Plugins/ServerNewDex.rbxmx diff --git a/MainModule/Server/Plugins/ServerNewDex.rbxmx b/MainModule/Server/Plugins/ServerNewDex.rbxmx deleted file mode 100644 index e9146a5575..0000000000 --- a/MainModule/Server/Plugins/ServerNewDex.rbxmx +++ /dev/null @@ -1,13280 +0,0 @@ - - true - null - nil - - - - - {603a8ef6-d177-41b5-903e-8b13d37f3d07} - - 0 - false - ServerNewDex - -1 - - - - - - - {05489799-c6a2-4f6f-b89d-58f7968ae194} - - 0 - false - serviceUtils - -1 - - - - - - true - 0 - 1 - 1 - false - false - 1 - true - null - 0 - 0 - 0 - 0 - false - - 0 - false - Dex_Client - -1 - - - - - - false - - 0 - {8a9aeb89-260f-4e67-977d-a44994bdbf30} - - 0 - false - main_NewDex - -1 - - - - - - return [==[ { "Classes": [ { "Members": [ { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Archivable", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Attributes", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AttributesReplicate", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AttributesSerialize", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ClassName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DataCost", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HistoryId", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UniqueId" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Name", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Parent", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PropertyStatusStudio", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PropertyStatus" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RobloxLocked", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SourceAssetId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Tags", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UniqueId", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UniqueId" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "archivable", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Archivable", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "className", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "ClassName", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "numExpectedDirectChildren", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "AddTag", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClearAllChildren", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Clone", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Destroy", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindFirstAncestor", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "FindFirstAncestorOfClass", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "FindFirstAncestorWhichIsA", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "FindFirstChild", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "false", "Name": "recursive", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "FindFirstChildOfClass", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "FindFirstChildWhichIsA", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "false", "Name": "recursive", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "FindFirstDescendant", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetActor", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Actor" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetAttribute", "Parameters": [ { "Name": "attribute", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetAttributeChangedSignal", "Parameters": [ { "Name": "attribute", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptSignal" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAttributes", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetChildren", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetDebugId", "Parameters": [ { "Default": "4", "Name": "scopeLength", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "PluginSecurity", "Tags": [ "NotBrowsable" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetDescendants", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetFullName", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetPropertyChangedSignal", "Parameters": [ { "Name": "property", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptSignal" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTags", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "HasTag", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "IsA", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "IsAncestorOf", "Parameters": [ { "Name": "descendant", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "IsDescendantOf", "Parameters": [ { "Name": "ancestor", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "IsPropertyModified", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Remove", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveTag", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ResetPropertyToDefault", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetAttribute", "Parameters": [ { "Name": "attribute", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "WaitForChild", "Parameters": [ { "Name": "childName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "timeOut", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "CustomLuaState", "CanYield" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "children", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetChildren", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "clone", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Clone", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "destroy", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Destroy", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "findFirstChild", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "false", "Name": "recursive", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "FindFirstChild", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "getChildren", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetChildren", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "isA", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated", "CustomLuaState" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "isDescendantOf", "Parameters": [ { "Name": "ancestor", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "IsDescendantOf", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "remove", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Remove", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AncestryChanged", "Parameters": [ { "Name": "child", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "parent", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AttributeChanged", "Parameters": [ { "Name": "attribute", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "property", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ChildAdded", "Parameters": [ { "Name": "child", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ChildRemoved", "Parameters": [ { "Name": "child", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DescendantAdded", "Parameters": [ { "Name": "descendant", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DescendantRemoving", "Parameters": [ { "Name": "descendant", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Destroying", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "childAdded", "Parameters": [ { "Name": "child", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "ChildAdded", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Instance", "Superclass": "<<<ROOT>>>", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Transform", "Default": "-0, -0, -1", "MemberType": "Property", "Name": "AttachmentForward", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Transform", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "AttachmentPoint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Transform", "Default": "0, 0, 0", "MemberType": "Property", "Name": "AttachmentPos", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Transform", "Default": "1, 0, 0", "MemberType": "Property", "Name": "AttachmentRight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Transform", "Default": "0, 1, 0", "MemberType": "Property", "Name": "AttachmentUp", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "BackendAccoutrementState", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Event", "Name": "ServerEquipAccoutrement", "Parameters": [ { "Name": "character", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerUnequipAccoutrement", "Parameters": [ { "Name": "oldCharacter", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Accoutrement", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "Unknown", "MemberType": "Property", "Name": "AccessoryType", "Security": { "Read": "None", "Write": "NotAccessibleSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AccessoryType" } } ], "MemoryCategory": "Instances", "Name": "Accessory", "Superclass": "Accoutrement" }, { "Members": [], "MemoryCategory": "Instances", "Name": "Hat", "Superclass": "Accoutrement", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "State", "Default": "", "MemberType": "Property", "Name": "PortalInvalidReason", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "PortalVersion", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Behavior", "Default": "Inactive", "MemberType": "Property", "Name": "Status", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AdUnitStatus" } }, { "MemberType": "Function", "Name": "TeleportConfirmed", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TeleportRejected", "Parameters": [ { "Name": "shouldCooldown", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "rejectedByDistance", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AdPortal", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "GetAdTeleportInfo", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetReportAdInfo", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReturnToPublisherExperience", "Parameters": [ { "Name": "adTeleportMethod", "Type": { "Category": "Enum", "Name": "AdTeleportMethod" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowVideoAd", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AdTeleportEnded", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AdTeleportInitiated", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PortalPrompt", "Parameters": [ { "Name": "destinationId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "portal", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "requiresNoButton", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ReportImpressionSignal", "Parameters": [ { "Name": "ad_instance_name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "encrypted_ad_tracking_data", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "encryption_metadata", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ReportTeleportSignal", "Parameters": [ { "Name": "ad_instance_name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "encrypted_ad_tracking_data", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "encryption_metadata", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "teleport_type", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "teleport_source_universe_id", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "teleport_source_place_id", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "teleport_dest_place_id", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServeAdResponseSignal", "Parameters": [ { "Name": "uuid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "response", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "isError", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServeAdSignal", "Parameters": [ { "Name": "uuid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "request", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "VideoAdClosed", "Parameters": [ { "Name": "adShown", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AdService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "AdvancedDragger", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ApiKey", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "FireCustomEvent", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "eventCategory", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "customData", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FireEvent", "Parameters": [ { "Name": "category", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FireInGameEconomyEvent", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "itemName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "economyAction", "Type": { "Category": "Enum", "Name": "AnalyticsEconomyAction" } }, { "Name": "itemCategory", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "amount", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "currency", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "location", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "customData", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FireLogEvent", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "logLevel", "Type": { "Category": "Enum", "Name": "AnalyticsLogLevel" } }, { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "debugInfo", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "customData", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FirePlayerProgressionEvent", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "category", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "progressionStatus", "Type": { "Category": "Enum", "Name": "AnalyticsProgressionStatus" } }, { "Name": "location", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "statistics", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "customData", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AnalyticsService", "Superclass": "Instance", "Tags": [ "Service", "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "AnimationId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "Animation", "Name": "Animation", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Guid", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GuidBinaryString", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Loop", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Priority", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AnimationPriority" } } ], "MemoryCategory": "Instances", "Name": "AnimationClip", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "CurveAnimation", "Superclass": "AnimationClip" }, { "Members": [ { "Category": "Data", "Default": "2", "MemberType": "Property", "Name": "AuthoredHipHeight", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "AddKeyframe", "Parameters": [ { "Name": "keyframe", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetKeyframes", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveKeyframe", "Parameters": [ { "Name": "keyframe", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Animation", "Name": "KeyframeSequence", "Superclass": "AnimationClip" }, { "Members": [ { "MemberType": "Function", "Name": "GetAnimationClip", "Parameters": [ { "Name": "assetId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Class", "Name": "AnimationClip" }, "Security": "PluginSecurity", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetAnimationClipAsync", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAnimationClipById", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "useCache", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "AnimationClip" }, "Security": "PluginSecurity", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetAnimationClipAsync", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMemStats", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterActiveAnimationClip", "Parameters": [ { "Name": "animationClip", "Type": { "Category": "Class", "Name": "AnimationClip" } } ], "ReturnType": { "Category": "DataType", "Name": "Content" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterAnimationClip", "Parameters": [ { "Name": "animationClip", "Type": { "Category": "Class", "Name": "AnimationClip" } } ], "ReturnType": { "Category": "DataType", "Name": "Content" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAnimationClipAsync", "Parameters": [ { "Name": "assetId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Class", "Name": "AnimationClip" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAnimations", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Animation", "Name": "AnimationClipProvider", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetPlayingAnimationTracks", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPlayingAnimationTracks", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadAnimation", "Parameters": [ { "Name": "animation", "Type": { "Category": "Class", "Name": "Animation" } } ], "ReturnType": { "Category": "Class", "Name": "AnimationTrack" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "LoadAnimation", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AnimationPlayed", "Parameters": [ { "Name": "animationTrack", "Type": { "Category": "Class", "Name": "AnimationTrack" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "AnimationPlayed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Animation", "Name": "AnimationController", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "CreateJob", "Parameters": [ { "Name": "filePath", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DownloadJobResult", "Parameters": [ { "Name": "jobId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "outputFilePath", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FullProcess", "Parameters": [ { "Name": "videoFilePath", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "progressCallback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetJobStatus", "Parameters": [ { "Name": "jobId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AnimationFromVideoCreatorService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "IsAgeRestricted", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateAnimationByUploadingVideo", "Parameters": [ { "Name": "progressCallback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ImportVideoWithPrompt", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AnimationFromVideoCreatorStudioService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "animation", "Default": "", "MemberType": "Property", "Name": "articulatedJoint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "", "MemberType": "Property", "Name": "endEffectorRotationConstraint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "", "MemberType": "Property", "Name": "endEffectorTranslationConstraint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "", "MemberType": "Property", "Name": "endEffectorWeight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "", "MemberType": "Property", "Name": "facsControl", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "\u0001", "MemberType": "Property", "Name": "label", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "\u0001", "MemberType": "Property", "Name": "name", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "\u0001", "MemberType": "Property", "Name": "parent", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "\u0001", "MemberType": "Property", "Name": "postTransform", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "\u0001", "MemberType": "Property", "Name": "preTransform", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "\u0001", "MemberType": "Property", "Name": "transform", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "\u0001", "MemberType": "Property", "Name": "weight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "MemberType": "Function", "Name": "LoadFromHumanoid", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AnimationRigData", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Animation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "TrackerStreamAnimation" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsPlaying", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Priority", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AnimationPriority" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "WeightCurrent", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "WeightTarget", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "AdjustWeight", "Parameters": [ { "Default": "1", "Name": "weight", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "0.100000001", "Name": "fadeTime", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTrackerData", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Play", "Parameters": [ { "Default": "0.100000001", "Name": "fadeTime", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "1", "Name": "weight", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Stop", "Parameters": [ { "Default": "0.100000001", "Name": "fadeTime", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TogglePause", "Parameters": [ { "Name": "paused", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Stopped", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Animation", "Name": "AnimationStreamTrack", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Animation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Animation" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsPlaying", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Length", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Looped", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Priority", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AnimationPriority" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Speed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TimePosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "WeightCurrent", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "WeightTarget", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "AdjustSpeed", "Parameters": [ { "Default": "1", "Name": "speed", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AdjustWeight", "Parameters": [ { "Default": "1", "Name": "weight", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "0.100000001", "Name": "fadeTime", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMarkerReachedSignal", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptSignal" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTimeOfKeyframe", "Parameters": [ { "Name": "keyframeName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "double" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Play", "Parameters": [ { "Default": "0.100000001", "Name": "fadeTime", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "1", "Name": "weight", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "1", "Name": "speed", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Stop", "Parameters": [ { "Default": "0.100000001", "Name": "fadeTime", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DidLoop", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Ended", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "KeyframeReached", "Parameters": [ { "Name": "keyframeName", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Stopped", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Animation", "Name": "AnimationTrack", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "EvaluationThrottled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "NotBrowsable" ], "ThreadSafety": "Safe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "PreferLodEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "ApplyJointVelocities", "Parameters": [ { "Name": "motors", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPlayingAnimationTracks", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPlayingAnimationTracksCoreScript", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadAnimation", "Parameters": [ { "Name": "animation", "Type": { "Category": "Class", "Name": "Animation" } } ], "ReturnType": { "Category": "Class", "Name": "AnimationTrack" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadAnimationCoreScript", "Parameters": [ { "Name": "animation", "Type": { "Category": "Class", "Name": "Animation" } } ], "ReturnType": { "Category": "Class", "Name": "AnimationTrack" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadStreamAnimation", "Parameters": [ { "Name": "animation", "Type": { "Category": "Class", "Name": "TrackerStreamAnimation" } } ], "ReturnType": { "Category": "Class", "Name": "AnimationStreamTrack" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadStreamAnimationForSelfieView_deprecated", "Parameters": [ { "Name": "animation", "Type": { "Category": "Class", "Name": "TrackerStreamAnimation" } }, { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Class", "Name": "AnimationStreamTrack" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StepAnimations", "Parameters": [ { "Name": "deltaTime", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AnimationPlayed", "Parameters": [ { "Name": "animationTrack", "Type": { "Category": "Class", "Name": "AnimationTrack" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AnimationPlayedCoreScript", "Parameters": [ { "Name": "animationTrack", "Type": { "Category": "Class", "Name": "AnimationTrack" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AnimationStreamTrackPlayed", "Parameters": [ { "Name": "animationTrack", "Type": { "Category": "Class", "Name": "AnimationStreamTrack" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnCombinedUpdate2", "Parameters": [ { "Name": "animation", "Type": { "Category": "DataType", "Name": "Content" } }, { "Name": "playState", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "fadeTime", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "weight", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "speed", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "timePosition", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "priority", "Type": { "Category": "Enum", "Name": "AnimationPriority" } }, { "Name": "valuesUpdated", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnStreamingUpdated", "Parameters": [ { "Name": "fadeTime", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "weight", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "priority", "Type": { "Category": "Enum", "Name": "AnimationPriority" } }, { "Name": "valuesUpdated", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StreamSyncRequest", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Animator", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "CheckForUpdate", "Parameters": [ { "Default": "nil", "Name": "handler", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DisableDUAR", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DisableDUARAndOpenSurvey", "Parameters": [ { "Name": "surveyUrl", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PerformManagedUpdate", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AppUpdateService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "AssetCounterService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Interface", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Port", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "StartServer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "AssetDeliveryProxy", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetAllTemplates", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Map" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTemplate", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Map" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveTemplate", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SaveTemplate", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "importTemplate", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartSessionWithPath", "Parameters": [ { "Name": "filePath", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "AssetImportSession" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PickFileWithPrompt", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PickMultipleFilesWithPrompt", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartSessionWithPrompt", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "AssetImportSession" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AssetImportService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "ApplySettings", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ApplyTemplate", "Parameters": [ { "Name": "template", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Cancel", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCurrentStatusTable", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFilename", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetImportTree", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetInstance", "Parameters": [ { "Name": "nodeId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HasAnimation", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsAvatar", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsGltf", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsR15", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Reset", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Upload", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "usesCustomRestPoseLua", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UploadComplete", "Parameters": [ { "Name": "results", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UploadCompleteDeprecated", "Parameters": [ { "Name": "succeeded", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "errorMap", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UploadProgress", "Parameters": [ { "Name": "progressRatio", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AssetImportSession", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetMeshIdFromAliasName", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMeshIdFromAssetId", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTextureIdFromAliasName", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTextureIdFromAssetId", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HasUnpublishedChangesForLinkedSource", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertAudio", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "assetName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertImage", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertLinkedSourceAsLocalScript", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertLinkedSourceAsModuleScript", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertLinkedSourceAsScript", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertMesh", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "insertWithLocation", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertMeshesWithLocation", "Parameters": [ { "Name": "aliasNames", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertModel", "Parameters": [ { "Name": "modelId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertPackage", "Parameters": [ { "Name": "packageId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertVideo", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "assetName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenLinkedSource", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenPlace", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RefreshLinkedSource", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RevertLinkedSourceToLastPublishedVersion", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowPackageDetails", "Parameters": [ { "Name": "packageId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UpdateAllPackages", "Parameters": [ { "Name": "packageId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ViewPackageOnWebsite", "Parameters": [ { "Name": "packageId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddNewPlace", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateAlias", "Parameters": [ { "Name": "assetType", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DeleteAlias", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PublishLinkedSource", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemovePlace", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RenameAlias", "Parameters": [ { "Name": "assetType", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "oldAliasName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "newAliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RenameModel", "Parameters": [ { "Name": "modelId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "newName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RenamePlace", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "newName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AssetImportedSignal", "Parameters": [ { "Name": "assetType", "Type": { "Category": "Enum", "Name": "AssetType" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "assetName", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ImportSessionFinished", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ImportSessionStarted", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MayBeLinkedSourceModified", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AssetManagerService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ContentId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "OutputPath", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "PatchId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "AssetPatchSettings", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "DeserializeInstance", "Parameters": [ { "Name": "serializedInstance", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBundleDetailsSync", "Parameters": [ { "Name": "bundleId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreatePlaceAsync", "Parameters": [ { "Name": "placeName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "templatePlaceID", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Default": "", "Name": "description", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreatePlaceInPlayerInventoryAsync", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "placeName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "templatePlaceID", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Default": "", "Name": "description", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAssetIdsForPackage", "Parameters": [ { "Name": "packageAssetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBundleDetailsAsync", "Parameters": [ { "Name": "bundleId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCreatorAssetID", "Parameters": [ { "Name": "creationID", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "None", "Tags": [ "Yields", "Deprecated", { "PreferredDescriptorName": "GetProductInfo", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGamePlacesAsync", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadImageAsync", "Parameters": [ { "Name": "textureId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Class", "Name": "DynamicImage" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptCreateAssetAsync", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "assetType", "Type": { "Category": "Enum", "Name": "AssetType" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SavePlaceAsync", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SearchAudio", "Parameters": [ { "Name": "searchParameters", "Type": { "Category": "Class", "Name": "AudioSearchParams" } } ], "ReturnType": { "Category": "Class", "Name": "AudioPages" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenCreateResultModal", "Parameters": [ { "Name": "resultType", "Type": { "Category": "Enum", "Name": "PromptCreateAssetResult" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenPublishResultModal", "Parameters": [ { "Name": "resultType", "Type": { "Category": "Enum", "Name": "PromptPublishAssetResult" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AssetService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "State", "Default": "0.7843, 0.6667, 0.4235", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "State", "Default": "0.3608, 0.2353, 0.0549", "MemberType": "Property", "Name": "Decay", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0.395000011", "MemberType": "Property", "Name": "Density", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "Glare", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "Haze", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "Offset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "Atmosphere", "Superclass": "Instance" }, { "Members": [ { "Category": "Derived Data", "Default": "1, 0, 0", "MemberType": "Property", "Name": "Axis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Transform", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Transform", "Default": "-0, 0, 0", "MemberType": "Property", "Name": "Orientation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Transform", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Transform", "Default": "-0, 0, -0", "MemberType": "Property", "Name": "Rotation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Orientation", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Derived Data", "Default": "0, 1, 0", "MemberType": "Property", "Name": "SecondaryAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "Visible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Derived World Data", "Default": "1, 0, 0", "MemberType": "Property", "Name": "WorldAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Derived World Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "WorldCFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Derived World Data", "Default": "-0, 0, 0", "MemberType": "Property", "Name": "WorldOrientation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Derived World Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "WorldPosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Derived World Data", "Default": "-0, 0, -0", "MemberType": "Property", "Name": "WorldRotation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "WorldOrientation", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Derived World Data", "Default": "0, 1, 0", "MemberType": "Property", "Name": "WorldSecondaryAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "MemberType": "Function", "Name": "GetAxis", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Axis", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetConstraints", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSecondaryAxis", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SecondaryAxis", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetAxis", "Parameters": [ { "Name": "axis", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Axis", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetSecondaryAxis", "Parameters": [ { "Name": "axis", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SecondaryAxis", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Attachment", "Superclass": "Instance" }, { "Members": [ { "Category": "Transform", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Transform", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Derived Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TransformedCFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Derived World Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TransformedWorldCFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } } ], "MemoryCategory": "Instances", "Name": "Bone", "Superclass": "Attachment" }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Album", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Artist", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "Music", "MemberType": "Property", "Name": "AudioSubType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AudioSubType" } }, { "Category": "Data", "Default": "Music", "MemberType": "Property", "Name": "AudioSubtype", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "AudioSubType", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AudioSubType" } }, { "Category": "Data", "Default": "2147483647", "MemberType": "Property", "Name": "MaxDuration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "MinDuration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "SearchKeyword", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Tag", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Title", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "AudioSearchParams", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [ { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "ClientFeatures", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "ClientFeaturesInitialized", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "ServerFeatures", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "IsEnabled", "Parameters": [ { "Name": "mask", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "feature", "Type": { "Category": "Enum", "Name": "AvatarChatServiceFeature" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsPlaceEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsUniverseEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PollClientFeatures", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PollServerFeatures", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetClientFeaturesAsync", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetServerFeaturesAsync", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnClientFeatures", "Parameters": [ { "Name": "features", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AvatarChatService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetAccessoryType", "Parameters": [ { "Name": "avatarAssetType", "Type": { "Category": "Enum", "Name": "AvatarAssetType" } } ], "ReturnType": { "Category": "Enum", "Name": "AccessoryType" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "NoPromptCreateOutfit", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "rigType", "Type": { "Category": "Enum", "Name": "HumanoidRigType" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "NoPromptDeleteOutfit", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "NoPromptRenameOutfit", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "NoPromptSaveAvatar", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "rigType", "Type": { "Category": "Enum", "Name": "HumanoidRigType" } }, { "Name": "saveDict", "Type": { "Category": "Group", "Name": "Dictionary" } }, { "Default": "0", "Name": "gearAssetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "NoPromptSaveAvatarThumbnailCustomization", "Parameters": [ { "Name": "thumbnailType", "Type": { "Category": "Enum", "Name": "AvatarThumbnailCustomizationType" } }, { "Name": "emoteAssetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "cameraDistanceScale", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "yRotDeg", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "0", "Name": "fieldOfViewDeg", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "NoPromptSetFavorite", "Parameters": [ { "Name": "itemId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "itemType", "Type": { "Category": "Enum", "Name": "AvatarItemType" } }, { "Name": "shouldFavorite", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "NoPromptUpdateOutfit", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "rigType", "Type": { "Category": "Enum", "Name": "HumanoidRigType" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PerformCreateOutfitWithDescription", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PerformDeleteOutfit", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PerformRenameOutfit", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PerformSaveAvatarWithDescription", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "addedAssets", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "removedAssets", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PerformSetFavorite", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PerformUpdateOutfit", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptAllowInventoryReadAccess", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptCreateOutfit", "Parameters": [ { "Name": "outfit", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "rigType", "Type": { "Category": "Enum", "Name": "HumanoidRigType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptDeleteOutfit", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptRenameOutfit", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptSaveAvatar", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "rigType", "Type": { "Category": "Enum", "Name": "HumanoidRigType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptSetFavorite", "Parameters": [ { "Name": "itemId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "itemType", "Type": { "Category": "Enum", "Name": "AvatarItemType" } }, { "Name": "shouldFavorite", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptUpdateOutfit", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "updatedOutfit", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "rigType", "Type": { "Category": "Enum", "Name": "HumanoidRigType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetAllowInventoryReadAccess", "Parameters": [ { "Name": "inventoryReadAccessGranted", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalCreateOutfitFailed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalCreateOutfitPermissionDenied", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalDeleteOutfitFailed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalDeleteOutfitPermissionDenied", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalRenameOutfitFailed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalRenameOutfitPermissionDenied", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalSaveAvatarFailed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalSaveAvatarPermissionDenied", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalSetFavoriteFailed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalSetFavoritePermissionDenied", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalUpdateOutfitFailed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalUpdateOutfitPermissionDenied", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CheckApplyDefaultClothing", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } } ], "ReturnType": { "Category": "Class", "Name": "HumanoidDescription" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ConformToAvatarRules", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } } ], "ReturnType": { "Category": "Class", "Name": "HumanoidDescription" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAvatarRules", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBatchItemDetails", "Parameters": [ { "Name": "itemIds", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "itemType", "Type": { "Category": "Enum", "Name": "AvatarItemType" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFavorite", "Parameters": [ { "Name": "itemId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "itemType", "Type": { "Category": "Enum", "Name": "AvatarItemType" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetInventory", "Parameters": [ { "Name": "assetTypes", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Class", "Name": "InventoryPages" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetItemDetails", "Parameters": [ { "Name": "itemId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "itemType", "Type": { "Category": "Enum", "Name": "AvatarItemType" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetOutfitDetails", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetOutfits", "Parameters": [ { "Default": "All", "Name": "outfitSource", "Type": { "Category": "Enum", "Name": "OutfitSource" } }, { "Default": "All", "Name": "outfitType", "Type": { "Category": "Enum", "Name": "OutfitType" } } ], "ReturnType": { "Category": "Class", "Name": "OutfitPages" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRecommendedAssets", "Parameters": [ { "Name": "assetType", "Type": { "Category": "Enum", "Name": "AvatarAssetType" } }, { "Default": "0", "Name": "contextAssetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRecommendedBundles", "Parameters": [ { "Name": "bundleId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SearchCatalog", "Parameters": [ { "Name": "searchParameters", "Type": { "Category": "DataType", "Name": "CatalogSearchParams" } } ], "ReturnType": { "Category": "Class", "Name": "CatalogPages" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenAllowInventoryReadAccess", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenPromptCreateOufit", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "rigType", "Type": { "Category": "Enum", "Name": "HumanoidRigType" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenPromptDeleteOutfit", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenPromptRenameOutfit", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenPromptSaveAvatar", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "rigType", "Type": { "Category": "Enum", "Name": "HumanoidRigType" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenPromptSetFavorite", "Parameters": [ { "Name": "itemId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "itemType", "Type": { "Category": "Enum", "Name": "AvatarItemType" } }, { "Name": "shouldFavorite", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenPromptUpdateOutfit", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "rigType", "Type": { "Category": "Enum", "Name": "HumanoidRigType" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptAllowInventoryReadAccessCompleted", "Parameters": [ { "Name": "result", "Type": { "Category": "Enum", "Name": "AvatarPromptResult" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptCreateOutfitCompleted", "Parameters": [ { "Name": "result", "Type": { "Category": "Enum", "Name": "AvatarPromptResult" } }, { "Name": "failureType", "Type": { "Category": "Group", "Name": "Variant" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptDeleteOutfitCompleted", "Parameters": [ { "Name": "result", "Type": { "Category": "Enum", "Name": "AvatarPromptResult" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptRenameOutfitCompleted", "Parameters": [ { "Name": "result", "Type": { "Category": "Enum", "Name": "AvatarPromptResult" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptSaveAvatarCompleted", "Parameters": [ { "Name": "result", "Type": { "Category": "Enum", "Name": "AvatarPromptResult" } }, { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptSaveAvatarThumbnailCustomizationCompleted", "Parameters": [ { "Name": "result", "Type": { "Category": "Enum", "Name": "AvatarPromptResult" } }, { "Name": "failureType", "Type": { "Category": "Group", "Name": "Variant" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptSetFavoriteCompleted", "Parameters": [ { "Name": "result", "Type": { "Category": "Enum", "Name": "AvatarPromptResult" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptUpdateOutfitCompleted", "Parameters": [ { "Name": "result", "Type": { "Category": "Enum", "Name": "AvatarPromptResult" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AvatarEditorService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "ImportFBXAnimationFromFilePathUserMayChooseModel", "Parameters": [ { "Name": "fbxFilePath", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "selectedRig", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "userChooseModelThenImportCB", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ImportFBXAnimationUserMayChooseModel", "Parameters": [ { "Name": "selectedRig", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "userChooseModelThenImportCB", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ImportFbxRigWithoutSceneLoad", "Parameters": [ { "Default": "true", "Name": "isR15", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ImportLoadedFBXAnimation", "Parameters": [ { "Name": "useFBXModel", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadRigAndDetectType", "Parameters": [ { "Name": "promptR15Callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AvatarImportService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "Backpack", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "AwardBadge", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "badgeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBadgeInfoAsync", "Parameters": [ { "Name": "badgeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsDisabled", "Parameters": [ { "Name": "badgeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsLegal", "Parameters": [ { "Name": "badgeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UserHasBadge", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "badgeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UserHasBadgeAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "badgeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BadgeAwarded", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "badgeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnBadgeAwarded", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "creatorId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "badgeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BadgeService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Id", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ImportName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ShouldImport", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "CreateTemplateFromData", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Map" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetStatuses", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BaseImportData", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "AnimationImportData", "Superclass": "BaseImportData", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "FacsImportData", "Superclass": "BaseImportData", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Anchored", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ImportAsModelAsset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "InsertInWorkspace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "GroupImportData", "Superclass": "BaseImportData", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "JointImportData", "Superclass": "BaseImportData", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DiffuseFilePath", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsPbr", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MetalnessFilePath", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NormalFilePath", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RoughnessFilePath", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "MaterialImportData", "Superclass": "BaseImportData", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Anchored", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageManifold", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageMeshIntersectedPreview", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageMeshNotIntersected", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageNoOverlappingVertices", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageNonManifoldPreview", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageOverlappingVerticesPreview", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageUVMatched", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageUVMisMatchedPreview", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Dimensions", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DoubleSided", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IgnoreVertexColors", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IrrelevantCageModifiedPreview", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MeshHoleDetectedPreview", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MeshNoHoleDetected", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NoIrrelevantCageModified", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NoOuterCageFarExtendedFromMesh", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "OuterCageFarExtendedFromMeshPreview", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PolygonCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UseImportedPivot", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "MeshImportData", "Superclass": "BaseImportData", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AddModelToInventory", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Anchored", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AnimationIdForRestPose", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ExistingPackageId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FileDimensions", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ImportAsModelAsset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ImportAsPackage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "InsertInWorkspace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "InsertWithScenePosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "InvertNegativeFaces", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MergeMeshes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PolygonCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RestPose", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RestPose" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RigScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RigScale" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RigType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RigType" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RigVisualization", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ScaleUnit", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "MeshScaleUnit" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UseSceneOriginAsCFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UseSceneOriginAsPivot", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UsesCages", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "WorldForward", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NormalId" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "WorldUp", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NormalId" } } ], "MemoryCategory": "Instances", "Name": "RootImportData", "Superclass": "BaseImportData", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetGuiObjectsAtPosition", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGuiObjectsInCircle", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "radius", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BasePlayerGui", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionImageObject", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "GuiObject" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Version", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "SetUserGuiRendering", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "guiAdornee", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "faceId", "Type": { "Category": "Enum", "Name": "NormalId" } }, { "Default": "0", "Name": "horizontalCurvature", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TakeScreenshot", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ToggleRecording", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UserGuiRenderingChanged", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "guiAdornee", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "faceId", "Type": { "Category": "Enum", "Name": "NormalId" } }, { "Name": "horizontalCurvature", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CoreGui", "Superclass": "BasePlayerGui", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "LandscapeLeft", "MemberType": "Property", "Name": "CurrentScreenOrientation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ScreenOrientation" } }, { "Category": "Data", "Default": "LandscapeSensor", "MemberType": "Property", "Name": "ScreenOrientation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ScreenOrientation" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "SelectionImageObject", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "GuiObject" } }, { "MemberType": "Function", "Name": "GetTopbarTransparency", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTopbarTransparency", "Parameters": [ { "Name": "transparency", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TopbarTransparencyChangedSignal", "Parameters": [ { "Name": "transparency", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PlayerGui", "Superclass": "BasePlayerGui", "Tags": [ "NotCreatable", "PlayerReplicated" ] }, { "Members": [ { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ProcessUserInput", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ResetPlayerGuiOnSpawn", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RtlTextSupport", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RtlTextSupport" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ScreenOrientation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ScreenOrientation" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ShowDevelopmentGui", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VirtualCursorMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "VirtualCursorMode" } }, { "MemberType": "Function", "Name": "GetCoreGuiEnabled", "Parameters": [ { "Name": "coreGuiType", "Type": { "Category": "Enum", "Name": "CoreGuiType" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterGetCore", "Parameters": [ { "Name": "parameterName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "getFunction", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterSetCore", "Parameters": [ { "Name": "parameterName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "setFunction", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetCore", "Parameters": [ { "Name": "parameterName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetCoreGuiEnabled", "Parameters": [ { "Name": "coreGuiType", "Type": { "Category": "Enum", "Name": "CoreGuiType" } }, { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCore", "Parameters": [ { "Name": "parameterName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CoreGuiChangedSignal", "Parameters": [ { "Name": "coreGuiType", "Type": { "Category": "Enum", "Name": "CoreGuiType" } }, { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StarterGui", "Superclass": "BasePlayerGui", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageMeshId", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageOrigin", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageOriginWorld", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HSRAssetId", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HSRData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SharedString" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HSRMeshIdData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SharedString" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ImportInProcess", "Security": { "Read": "None", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ImportOrigin", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ImportOriginWorld", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TemporaryCageMeshId", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "MemberType": "Function", "Name": "GetFaces", "Parameters": [ { "Name": "cageType", "Type": { "Category": "Enum", "Name": "CageType" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVertices", "Parameters": [ { "Name": "cageType", "Type": { "Category": "Enum", "Name": "CageType" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsHSRReady", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ModifyVertices", "Parameters": [ { "Name": "cageType", "Type": { "Category": "Enum", "Name": "CageType" } }, { "Name": "vertices", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BaseWrap", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Behavior", "Default": "Disabled", "MemberType": "Property", "Name": "AutoSkin", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "WrapLayerAutoSkin" } }, { "Category": "Tuning", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "BindOffset", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Debug", "Default": "1, 1, 1", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Debug", "Default": "None", "MemberType": "Property", "Name": "DebugMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "WrapLayerDebugMode" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "Order", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "Puffiness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "ReferenceMeshId", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "ReferenceOrigin", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "ReferenceOriginWorld", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Tuning", "Default": "0", "MemberType": "Property", "Name": "ShrinkFactor", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "TemporaryReferenceId", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "Instances", "Name": "WrapLayer", "Superclass": "BaseWrap" }, { "Members": [ { "Category": "Debug", "Default": "1, 1, 1", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Debug", "Default": "None", "MemberType": "Property", "Name": "DebugMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "WrapTargetDebugMode" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "Stiffness", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "WrapTarget", "Superclass": "BaseWrap" }, { "Members": [ { "Category": "Shape", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Attachment0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Attachment" } }, { "Category": "Shape", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Attachment1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Attachment" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "Brightness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0 1 1 1 0 1 1 1 1 0 ", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "ColorSequence" } }, { "Category": "Shape", "Default": "0", "MemberType": "Property", "Name": "CurveSize0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Shape", "Default": "0", "MemberType": "Property", "Name": "CurveSize1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Shape", "Default": "false", "MemberType": "Property", "Name": "FaceCamera", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "LightEmission", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "LightInfluence", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Shape", "Default": "10", "MemberType": "Property", "Name": "Segments", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "Texture", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "TextureLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "Stretch", "MemberType": "Property", "Name": "TextureMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextureMode" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "TextureSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0 0.5 0 1 0.5 0 ", "MemberType": "Property", "Name": "Transparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberSequence" } }, { "Category": "Shape", "Default": "1", "MemberType": "Property", "Name": "Width0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Shape", "Default": "1", "MemberType": "Property", "Name": "Width1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "ZOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "SetTextureOffset", "Parameters": [ { "Default": "0", "Name": "offset", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Beam", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "Fire", "Parameters": [ { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Event", "Name": "Event", "Parameters": [ { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BindableEvent", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "Invoke", "Parameters": [ { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "OnInvoke", "Parameters": [ { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BindableFunction", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "BodyMover", "Superclass": "Instance", "Tags": [ "NotCreatable", "Deprecated" ] }, { "Members": [ { "Category": "Goals", "Default": "0, 2, 0", "MemberType": "Property", "Name": "AngularVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "4000, 4000, 4000", "MemberType": "Property", "Name": "MaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "1250", "MemberType": "Property", "Name": "P", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Goals", "Default": "0, 2, 0", "MemberType": "Property", "Name": "angularvelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "AngularVelocity", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "4000, 4000, 4000", "MemberType": "Property", "Name": "maxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "MaxTorque", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "Instances", "Name": "BodyAngularVelocity", "Superclass": "BodyMover", "Tags": [ "Deprecated", { "PreferredDescriptorName": "AngularVelocity", "ThreadSafety": "Unknown" } ] }, { "Members": [ { "Category": "Goals", "Default": "0, 1, 0", "MemberType": "Property", "Name": "Force", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "0, 1, 0", "MemberType": "Property", "Name": "force", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Force", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "Instances", "Name": "BodyForce", "Superclass": "BodyMover", "Tags": [ "Deprecated", { "PreferredDescriptorName": "VectorForce", "ThreadSafety": "Unknown" } ] }, { "Members": [ { "Category": "Goals", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Goals", "Default": "500", "MemberType": "Property", "Name": "D", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Goals", "Default": "400000, 0, 400000", "MemberType": "Property", "Name": "MaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "3000", "MemberType": "Property", "Name": "P", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Goals", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "cframe", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "CFrame", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Goals", "Default": "400000, 0, 400000", "MemberType": "Property", "Name": "maxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "MaxTorque", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "Instances", "Name": "BodyGyro", "Superclass": "BodyMover", "Tags": [ "Deprecated", { "PreferredDescriptorName": "AlignOrientation", "ThreadSafety": "Unknown" } ] }, { "Members": [ { "Category": "Goals", "Default": "1250", "MemberType": "Property", "Name": "D", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Goals", "Default": "4000, 4000, 4000", "MemberType": "Property", "Name": "MaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "10000", "MemberType": "Property", "Name": "P", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Goals", "Default": "0, 50, 0", "MemberType": "Property", "Name": "Position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "4000, 4000, 4000", "MemberType": "Property", "Name": "maxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "MaxForce", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "0, 50, 0", "MemberType": "Property", "Name": "position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Position", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "MemberType": "Function", "Name": "GetLastForce", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "lastForce", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetLastForce", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ReachedTarget", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BodyPosition", "Superclass": "BodyMover", "Tags": [ "Deprecated", { "PreferredDescriptorName": "AlignPosition", "ThreadSafety": "Unknown" } ] }, { "Members": [ { "Category": "Goals", "Default": "0, 1, 0", "MemberType": "Property", "Name": "Force", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Location", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "0, 1, 0", "MemberType": "Property", "Name": "force", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Force", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "0, 0, 0", "MemberType": "Property", "Name": "location", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Location", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "Instances", "Name": "BodyThrust", "Superclass": "BodyMover", "Tags": [ "Deprecated", { "PreferredDescriptorName": "VectorForce", "ThreadSafety": "Unknown" } ] }, { "Members": [ { "Category": "Goals", "Default": "4000, 4000, 4000", "MemberType": "Property", "Name": "MaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "1250", "MemberType": "Property", "Name": "P", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Goals", "Default": "0, 2, 0", "MemberType": "Property", "Name": "Velocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "4000, 4000, 4000", "MemberType": "Property", "Name": "maxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "MaxForce", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "0, 2, 0", "MemberType": "Property", "Name": "velocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Velocity", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "MemberType": "Function", "Name": "GetLastForce", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "lastForce", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BodyVelocity", "Superclass": "BodyMover", "Tags": [ "Deprecated", { "PreferredDescriptorName": "LinearVelocity", "ThreadSafety": "Unknown" } ] }, { "Members": [ { "Category": "Internal", "Default": "false", "MemberType": "Property", "Name": "Active", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Goals", "Default": "0.699999988", "MemberType": "Property", "Name": "CartoonFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Thrust", "Default": "30", "MemberType": "Property", "Name": "MaxSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Thrust", "Default": "4000", "MemberType": "Property", "Name": "MaxThrust", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Turn", "Default": "400000, 400000, 0", "MemberType": "Property", "Name": "MaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Target", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Goals", "Default": "0, 0, 0", "MemberType": "Property", "Name": "TargetOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "4", "MemberType": "Property", "Name": "TargetRadius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Thrust", "Default": "0.00100000005", "MemberType": "Property", "Name": "ThrustD", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Thrust", "Default": "5", "MemberType": "Property", "Name": "ThrustP", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Turn", "Default": "500", "MemberType": "Property", "Name": "TurnD", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Turn", "Default": "3000", "MemberType": "Property", "Name": "TurnP", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "Abort", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Fire", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "fire", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Fire", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ReachedTarget", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RocketPropulsion", "Superclass": "BodyMover", "Tags": [ "Deprecated", { "PreferredDescriptorName": "LineForce", "ThreadSafety": "Unknown" } ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Condition", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "ContinueExecution", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Id", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Line", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "LogMessage", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "MetaBreakpointId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "RemoveOnHit", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Script", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "true", "MemberType": "Property", "Name": "Valid", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Verified", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "Breakpoint", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "CloseBrowserWindow", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CopyAuthCookieFromBrowserToEngine", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "EmitHybridEvent", "Parameters": [ { "Name": "moduleName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "params", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ExecuteJavaScript", "Parameters": [ { "Name": "javascript", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenBrowserWindow", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenNativeOverlay", "Parameters": [ { "Name": "title", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenWeChatAuthWindow", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReturnToJavaScript", "Parameters": [ { "Name": "callbackId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "success", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "params", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendCommand", "Parameters": [ { "Name": "command", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AuthCookieCopiedToEngine", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BrowserWindowClosed", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BrowserWindowWillNavigate", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "JavaScriptCallback", "Parameters": [ { "Name": "content", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BrowserService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Appearance", "Default": "0.980392, 0.980392, 0.980392", "MemberType": "Property", "Name": "BackgroundColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0.10000000149011611938", "MemberType": "Property", "Name": "BackgroundTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "FontFace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Font" } }, { "Category": "Appearance", "Default": "0.223529, 0.231373, 0.239216", "MemberType": "Property", "Name": "TextColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "16", "MemberType": "Property", "Name": "TextSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } } ], "MemoryCategory": "Instances", "Name": "BubbleChatMessageProperties", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "LaunchBulkImport", "Parameters": [ { "Name": "assetTypeToImport", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowBulkImportView", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AssetImported", "Parameters": [ { "Name": "assetType", "Type": { "Category": "Enum", "Name": "AssetType" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "id", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BulkImportFinished", "Parameters": [ { "Name": "state", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BulkImportStarted", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BulkImportService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "CacheableContentProvider", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "HSRDataContentProvider", "Superclass": "CacheableContentProvider", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetContentMemoryData", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MeshContentProvider", "Superclass": "CacheableContentProvider", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "SolidModelContentProvider", "Superclass": "CacheableContentProvider", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "AttachCallout", "Parameters": [ { "Name": "definitionId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "locationId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "target", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DefineCallout", "Parameters": [ { "Name": "definitionId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "title", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "description", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "learnMoreURL", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DetachCalloutsByDefinitionId", "Parameters": [ { "Name": "definitionId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CalloutService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Camera", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CameraSubject", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Camera", "Default": "Fixed", "MemberType": "Property", "Name": "CameraType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "CameraType" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CoordinateFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "CFrame", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Camera", "Default": "88.8765335", "MemberType": "Property", "Name": "DiagonalFieldOfView", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "70", "MemberType": "Property", "Name": "FieldOfView", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "Vertical", "MemberType": "Property", "Name": "FieldOfViewMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FieldOfViewMode" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Focus", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "HeadLocked", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "HeadScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "70", "MemberType": "Property", "Name": "MaxAxisFieldOfView", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "-0.5", "MemberType": "Property", "Name": "NearPlaneZ", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "VRTiltAndRollEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "1, 1", "MemberType": "Property", "Name": "ViewportSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "focus", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Focus", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "MemberType": "Function", "Name": "GetLargestCutoffDistance", "Parameters": [ { "Name": "ignoreList", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPanSpeed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPartsObscuringTarget", "Parameters": [ { "Name": "castPoints", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "ignoreList", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRenderCFrame", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRoll", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTiltSpeed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Interpolate", "Parameters": [ { "Name": "endPos", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "endFocus", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "duration", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PanUnits", "Parameters": [ { "Name": "units", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ScreenPointToRay", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "0", "Name": "depth", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "DataType", "Name": "Ray" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "SetCameraPanMode", "Parameters": [ { "Default": "Classic", "Name": "mode", "Type": { "Category": "Enum", "Name": "CameraPanMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetImageServerView", "Parameters": [ { "Name": "modelCoord", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetRoll", "Parameters": [ { "Name": "rollAngle", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TiltUnits", "Parameters": [ { "Name": "units", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ViewportPointToRay", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "0", "Name": "depth", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "DataType", "Name": "Ray" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "WorldToScreenPoint", "Parameters": [ { "Name": "worldPoint", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "WorldToViewportPoint", "Parameters": [ { "Name": "worldPoint", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "Zoom", "Parameters": [ { "Name": "distance", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ZoomToExtents", "Parameters": [ { "Name": "boundingBoxCFrame", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "boundingBoxSize", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FirstPersonTransition", "Parameters": [ { "Name": "entering", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InterpolationFinished", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Camera", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "RetrieveCaptures", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SaveScreenshotCapture", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCaptureSizeAsync", "Parameters": [ { "Name": "captureContentId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CaptureSaved", "Parameters": [ { "Name": "captureInfo", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CaptureService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "FinishRecording", "Parameters": [ { "Name": "identifier", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "operation", "Type": { "Category": "Enum", "Name": "FinishRecordingOperation" } }, { "Name": "finalOptions", "Type": { "Category": "Group", "Name": "Dictionary?" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCanRedo", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCanUndo", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsRecordingInProgress", "Parameters": [ { "Name": "identifier", "Type": { "Category": "Primitive", "Name": "string?" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Redo", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ResetWaypoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEnabled", "Parameters": [ { "Name": "state", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetWaypoint", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TryBeginRecording", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "displayName", "Type": { "Category": "Primitive", "Name": "string?" } } ], "ReturnType": { "Category": "Primitive", "Name": "string?" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Undo", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnRecordingFinished", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "displayName", "Type": { "Category": "Primitive", "Name": "string?" } }, { "Name": "identifier", "Type": { "Category": "Primitive", "Name": "string?" } }, { "Name": "operationn", "Type": { "Category": "Enum", "Name": "FinishRecordingOperation" } }, { "Name": "finalOptions", "Type": { "Category": "Group", "Name": "Dictionary?" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnRecordingStarted", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "displayName", "Type": { "Category": "Primitive", "Name": "string?" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnRedo", "Parameters": [ { "Name": "waypoint", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnUndo", "Parameters": [ { "Name": "waypoint", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ChangeHistoryService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "CharacterAppearance", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "HeadColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Appearance", "Default": "0.992157, 0.917647, 0.552941", "MemberType": "Property", "Name": "HeadColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "LeftArmColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Appearance", "Default": "0.992157, 0.917647, 0.552941", "MemberType": "Property", "Name": "LeftArmColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "LeftLegColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Appearance", "Default": "0.0509804, 0.411765, 0.67451", "MemberType": "Property", "Name": "LeftLegColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "RightArmColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Appearance", "Default": "0.992157, 0.917647, 0.552941", "MemberType": "Property", "Name": "RightArmColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "RightLegColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Appearance", "Default": "0.0509804, 0.411765, 0.67451", "MemberType": "Property", "Name": "RightLegColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TorsoColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Appearance", "Default": "0.156863, 0.498039, 0.278431", "MemberType": "Property", "Name": "TorsoColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } } ], "MemoryCategory": "Instances", "Name": "BodyColors", "Superclass": "CharacterAppearance" }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "BaseTextureId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "Head", "MemberType": "Property", "Name": "BodyPart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "BodyPart" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "MeshId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "OverlayTextureId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } } ], "MemoryCategory": "Instances", "Name": "CharacterMesh", "Superclass": "CharacterAppearance" }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Color3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Outfit1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Outfit2", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "Instances", "Name": "Clothing", "Superclass": "CharacterAppearance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "PantsTemplate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "Instances", "Name": "Pants", "Superclass": "Clothing" }, { "Members": [ { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "ShirtTemplate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "Instances", "Name": "Shirt", "Superclass": "Clothing" }, { "Members": [ { "Category": "Appearance", "Default": "1, 1, 1", "MemberType": "Property", "Name": "Color3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "Graphic", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "Instances", "Name": "ShirtGraphic", "Superclass": "CharacterAppearance" }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "SkinColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } } ], "MemoryCategory": "Instances", "Name": "Skin", "Superclass": "CharacterAppearance", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "BubbleChatEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "LoadDefaultChat", "Security": { "Read": "None", "Write": "NotAccessibleSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "Chat", "Parameters": [ { "Name": "partOrCharacter", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "Blue", "Name": "color", "Type": { "Category": "Enum", "Name": "ChatColor" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ChatLocal", "Parameters": [ { "Name": "partOrCharacter", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "Blue", "Name": "color", "Type": { "Category": "Enum", "Name": "ChatColor" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetShouldUseLuaChat", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InvokeChatCallback", "Parameters": [ { "Name": "callbackType", "Type": { "Category": "Enum", "Name": "ChatCallbackType" } }, { "Name": "callbackArguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterChatCallback", "Parameters": [ { "Name": "callbackType", "Type": { "Category": "Enum", "Name": "ChatCallbackType" } }, { "Name": "callbackFunction", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetBubbleChatSettings", "Parameters": [ { "Name": "settings", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CanUserChatAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CanUsersChatAsync", "Parameters": [ { "Name": "userIdFrom", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "userIdTo", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FilterStringAsync", "Parameters": [ { "Name": "stringToFilter", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "playerFrom", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "playerTo", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FilterStringForBroadcast", "Parameters": [ { "Name": "stringToFilter", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "playerFrom", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FilterStringForPlayerAsync", "Parameters": [ { "Name": "stringToFilter", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "playerToFilterFor", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields", "Deprecated", { "PreferredDescriptorName": "FilterStringAsync", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BubbleChatSettingsChanged", "Parameters": [ { "Name": "settings", "Type": { "Category": "Group", "Name": "Variant" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Chatted", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "color", "Type": { "Category": "Enum", "Name": "ChatColor" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ClientToServerFilterMessageSignalV2", "Parameters": [ { "Name": "sender", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "receiver", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "unfilteredMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ClientToServerReportUnfilteredSignal", "Parameters": [ { "Name": "unfilteredText", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "match", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "instancePath", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "instanceType", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerToClientUnderOver13FilteredResponseSignal", "Parameters": [ { "Name": "sender", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "unfilteredMessage", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "isError", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "errorStr", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "under13", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "over13", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Chat", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Image", "Default": "", "MemberType": "Property", "Name": "CursorIcon", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Data", "Default": "32", "MemberType": "Property", "Name": "MaxActivationDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Event", "Name": "MouseActionReplicated", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "actionType", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseClick", "Parameters": [ { "Name": "playerWhoClicked", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseHoverEnter", "Parameters": [ { "Name": "playerWhoHovered", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseHoverLeave", "Parameters": [ { "Name": "playerWhoHovered", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RightMouseClick", "Parameters": [ { "Name": "playerWhoClicked", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "mouseClick", "Parameters": [ { "Name": "playerWhoClicked", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "MouseClick", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ClickDetector", "Superclass": "Instance" }, { "Members": [ { "Category": "Image", "Default": "", "MemberType": "Property", "Name": "ActivatedCursorIcon", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Physics Response", "Default": "false", "MemberType": "Property", "Name": "ApplyAtCenterOfMass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Drag Directions", "Default": "0, 1, 0", "MemberType": "Property", "Name": "Axis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Dragged Amount", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "DragFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Behavior", "Default": "TranslatePlane", "MemberType": "Property", "Name": "DragStyle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DragDetectorDragStyle" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Mode Switching", "Default": "ButtonR1", "MemberType": "Property", "Name": "GamepadModeSwitchKeyCode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "KeyCode" } }, { "Category": "Mode Switching", "Default": "LeftControl", "MemberType": "Property", "Name": "KeyboardModeSwitchKeyCode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "KeyCode" } }, { "Category": "Drag Limits", "Default": "0", "MemberType": "Property", "Name": "MaxDragAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Drag Limits", "Default": "0, 0, 0", "MemberType": "Property", "Name": "MaxDragTranslation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Physics Response", "Default": "10000000", "MemberType": "Property", "Name": "MaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Physics Response", "Default": "10000", "MemberType": "Property", "Name": "MaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Drag Limits", "Default": "0", "MemberType": "Property", "Name": "MinDragAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Drag Limits", "Default": "0, 0, 0", "MemberType": "Property", "Name": "MinDragTranslation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Drag Directions", "Default": "-0, 180, 90", "MemberType": "Property", "Name": "Orientation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Internal", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "PhysicalDragClickedPart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Internal", "Default": "0, 0, 0", "MemberType": "Property", "Name": "PhysicalDragHitPoint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Internal", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "PhysicalDragTargetFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "ReferenceInstance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Behavior", "Default": "Physical", "MemberType": "Property", "Name": "ResponseStyle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DragDetectorResponseStyle" } }, { "Category": "Physics Response", "Default": "10", "MemberType": "Property", "Name": "Responsiveness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "RunLocally", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Drag Directions", "Default": "1, 0, 0", "MemberType": "Property", "Name": "SecondaryAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Behavior", "Default": "1", "MemberType": "Property", "Name": "TrackballRadialPullFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "1", "MemberType": "Property", "Name": "TrackballRollFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mode Switching", "Default": "ButtonL2", "MemberType": "Property", "Name": "VRSwitchKeyCode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "KeyCode" } }, { "Category": "Drag Directions", "Default": "0, 1, 0", "MemberType": "Property", "Name": "WorldAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Drag Directions", "Default": "1, 0, 0", "MemberType": "Property", "Name": "WorldSecondaryAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "MemberType": "Function", "Name": "AddConstraintFunction", "Parameters": [ { "Name": "priority", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "function", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptConnection" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetReferenceFrame", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RestartDrag", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetDragStyleFunction", "Parameters": [ { "Name": "function", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DragContinue", "Parameters": [ { "Name": "playerWhoDragged", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "cursorRay", "Type": { "Category": "DataType", "Name": "Ray" } }, { "Name": "viewFrame", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "vrInputFrame", "Type": { "Category": "DataType", "Name": "OptionalCoordinateFrame" } }, { "Name": "isModeSwitchKeyDown", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DragEnd", "Parameters": [ { "Name": "playerWhoDragged", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DragStart", "Parameters": [ { "Name": "playerWhoDragged", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "cursorRay", "Type": { "Category": "DataType", "Name": "Ray" } }, { "Name": "viewFrame", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "hitFrame", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "clickedPart", "Type": { "Category": "Class", "Name": "BasePart" } }, { "Name": "vrInputFrame", "Type": { "Category": "DataType", "Name": "OptionalCoordinateFrame" } }, { "Name": "isModeSwitchKeyDown", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DragDetector", "Superclass": "ClickDetector", "Tags": [ "NotBrowsable" ] }, { "Members": [ { "Category": "State", "Default": "1, 1, 1", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0.5", "MemberType": "Property", "Name": "Cover", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0.699999988", "MemberType": "Property", "Name": "Density", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "Clouds", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ClusterPacketCache", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "AddTag", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAllTags", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetCollection", "Parameters": [ { "Name": "class", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetTagged", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetInstanceAddedSignal", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptSignal" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetInstanceRemovedSignal", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptSignal" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTagged", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetTags", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "HasTag", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "RemoveTag", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ItemAdded", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetInstanceAddedSignal", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ItemRemoved", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetInstanceRemovedSignal", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TagAdded", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TagRemoved", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CollectionService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AllowGUIAccessPoints", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Checked", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DefaultShortcut", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DisplayName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Icon", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Name", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Permission", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "CommandPermission" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "StatusTip", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "EnableGuiAccess", "Parameters": [ { "Name": "displayName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "statusTip", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "defaultShortcut", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterExecutionCallback", "Parameters": [ { "Name": "callbackFunction", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CommandInstance", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "Execute", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "params", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterCommand", "Parameters": [ { "Name": "plugin", "Type": { "Category": "Class", "Name": "Plugin" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "context", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "LocalUser", "Name": "permission", "Type": { "Category": "Enum", "Name": "CommandPermission" } } ], "ReturnType": { "Category": "Class", "Name": "CommandInstance" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CommandExecuting", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "params", "Type": { "Category": "Group", "Name": "Variant" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CommandService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "Configuration", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ConfigureServerService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Active", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Attachments", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Attachment0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Attachment" } }, { "Category": "Attachments", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Attachment1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Attachment" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Visible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "PhysicsParts", "Name": "Constraint", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "AlignOrientation", "Default": "Parallel", "MemberType": "Property", "Name": "AlignType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AlignType" } }, { "Category": "TargetOrientation", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Compliance", "Default": "INF", "MemberType": "Property", "Name": "MaxAngularVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Compliance", "Default": "10000", "MemberType": "Property", "Name": "MaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AlignmentMode", "Default": "TwoAttachment", "MemberType": "Property", "Name": "Mode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "OrientationAlignmentMode" } }, { "Category": "TargetOrientation", "Default": "1, 0, 0", "MemberType": "Property", "Name": "PrimaryAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "AlignOrientation", "Default": "false", "MemberType": "Property", "Name": "PrimaryAxisOnly", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "AlignOrientation", "Default": "false", "MemberType": "Property", "Name": "ReactionTorqueEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Compliance", "Default": "10", "MemberType": "Property", "Name": "Responsiveness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AlignOrientation", "Default": "false", "MemberType": "Property", "Name": "RigidityEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "TargetOrientation", "Default": "0, 1, 0", "MemberType": "Property", "Name": "SecondaryAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "PhysicsParts", "Name": "AlignOrientation", "Superclass": "Constraint" }, { "Members": [ { "Category": "AlignPosition", "Default": "false", "MemberType": "Property", "Name": "ApplyAtCenterOfMass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Compliance", "Default": "Magnitude", "MemberType": "Property", "Name": "ForceLimitMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotBrowsable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ForceLimitMode" } }, { "Category": "Compliance", "Default": "World", "MemberType": "Property", "Name": "ForceRelativeTo", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ActuatorRelativeTo" } }, { "Category": "Compliance", "Default": "10000, 10000, 10000", "MemberType": "Property", "Name": "MaxAxesForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Compliance", "Default": "10000", "MemberType": "Property", "Name": "MaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Compliance", "Default": "INF", "MemberType": "Property", "Name": "MaxVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AlignmentMode", "Default": "TwoAttachment", "MemberType": "Property", "Name": "Mode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PositionAlignmentMode" } }, { "Category": "AlignPosition", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "AlignPosition", "Default": "false", "MemberType": "Property", "Name": "ReactionForceEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Compliance", "Default": "10", "MemberType": "Property", "Name": "Responsiveness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AlignPosition", "Default": "false", "MemberType": "Property", "Name": "RigidityEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "PhysicsParts", "Name": "AlignPosition", "Superclass": "Constraint" }, { "Members": [ { "Category": "Torque", "Default": "0, 0, 0", "MemberType": "Property", "Name": "AngularVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Torque", "Default": "0", "MemberType": "Property", "Name": "MaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Torque", "Default": "false", "MemberType": "Property", "Name": "ReactionTorqueEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Torque", "Default": "World", "MemberType": "Property", "Name": "RelativeTo", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ActuatorRelativeTo" } } ], "MemoryCategory": "PhysicsParts", "Name": "AngularVelocity", "Superclass": "Constraint" }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "IsKinematic", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Compliance", "Default": "10000", "MemberType": "Property", "Name": "MaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Compliance", "Default": "10000", "MemberType": "Property", "Name": "MaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Transform", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } } ], "MemoryCategory": "PhysicsParts", "Name": "AnimationConstraint", "Superclass": "Constraint", "Tags": [ "NotBrowsable" ] }, { "Members": [ { "Category": "BallSocket", "Default": "false", "MemberType": "Property", "Name": "LimitsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Friction", "Default": "0", "MemberType": "Property", "Name": "MaxFrictionTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Friction", "Default": "0", "MemberType": "Property", "Name": "MaxFrictionTorqueXml", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0.150000006", "MemberType": "Property", "Name": "Radius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "0", "MemberType": "Property", "Name": "Restitution", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "false", "MemberType": "Property", "Name": "TwistLimitsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "TwistLimits", "Default": "-45", "MemberType": "Property", "Name": "TwistLowerAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "TwistLimits", "Default": "45", "MemberType": "Property", "Name": "TwistUpperAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "45", "MemberType": "Property", "Name": "UpperAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "PhysicsParts", "Name": "BallSocketConstraint", "Superclass": "Constraint" }, { "Members": [ { "Category": "Hinge", "Default": "None", "MemberType": "Property", "Name": "ActuatorType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ActuatorType" } }, { "Category": "Servo", "Default": "45", "MemberType": "Property", "Name": "AngularResponsiveness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Servo", "Default": "0", "MemberType": "Property", "Name": "AngularSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Motor", "Default": "0", "MemberType": "Property", "Name": "AngularVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Derived", "Default": "0", "MemberType": "Property", "Name": "CurrentAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Hinge", "Default": "false", "MemberType": "Property", "Name": "LimitsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Limits", "Default": "-45", "MemberType": "Property", "Name": "LowerAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Motor", "Default": "INF", "MemberType": "Property", "Name": "MotorMaxAcceleration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Motor", "Default": "0", "MemberType": "Property", "Name": "MotorMaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0.150000006", "MemberType": "Property", "Name": "Radius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "0", "MemberType": "Property", "Name": "Restitution", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Servo", "Default": "0", "MemberType": "Property", "Name": "ServoMaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Servo", "Default": "0", "MemberType": "Property", "Name": "TargetAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "45", "MemberType": "Property", "Name": "UpperAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "PhysicsParts", "Name": "HingeConstraint", "Superclass": "Constraint" }, { "Members": [ { "Category": "LineForce", "Default": "false", "MemberType": "Property", "Name": "ApplyAtCenterOfMass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "LineForce", "Default": "false", "MemberType": "Property", "Name": "InverseSquareLaw", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "LineForce", "Default": "1000", "MemberType": "Property", "Name": "Magnitude", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "LineForce", "Default": "INF", "MemberType": "Property", "Name": "MaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "LineForce", "Default": "false", "MemberType": "Property", "Name": "ReactionForceEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "PhysicsParts", "Name": "LineForce", "Superclass": "Constraint" }, { "Members": [ { "Category": "Limits", "Default": "Magnitude", "MemberType": "Property", "Name": "ForceLimitMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ForceLimitMode" } }, { "Category": "Line", "Default": "1, 0, 0", "MemberType": "Property", "Name": "LineDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Line", "Default": "-0", "MemberType": "Property", "Name": "LineVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "1000, 1000, 1000", "MemberType": "Property", "Name": "MaxAxesForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Limits", "Default": "1000", "MemberType": "Property", "Name": "MaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "1000, 1000", "MemberType": "Property", "Name": "MaxPlanarAxesForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Plane", "Default": "0, 0", "MemberType": "Property", "Name": "PlaneVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Plane", "Default": "1, 0, 0", "MemberType": "Property", "Name": "PrimaryTangentAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Mode", "Default": "World", "MemberType": "Property", "Name": "RelativeTo", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ActuatorRelativeTo" } }, { "Category": "Plane", "Default": "0, 1, 0", "MemberType": "Property", "Name": "SecondaryTangentAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Vector", "Default": "0, 0, 0", "MemberType": "Property", "Name": "VectorVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Mode", "Default": "Vector", "MemberType": "Property", "Name": "VelocityConstraintMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "VelocityConstraintMode" } } ], "MemoryCategory": "PhysicsParts", "Name": "LinearVelocity", "Superclass": "Constraint" }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "PlaneConstraint", "Superclass": "Constraint" }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "Plane", "Superclass": "PlaneConstraint", "Tags": [ "Deprecated", { "PreferredDescriptorName": "PlaneConstraint", "ThreadSafety": "Unknown" } ] }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "RigidConstraint", "Superclass": "Constraint" }, { "Members": [ { "Category": "Derived", "Default": "0", "MemberType": "Property", "Name": "CurrentDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Rod", "Default": "5", "MemberType": "Property", "Name": "Length", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "90", "MemberType": "Property", "Name": "LimitAngle0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "90", "MemberType": "Property", "Name": "LimitAngle1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Rod", "Default": "false", "MemberType": "Property", "Name": "LimitsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0.100000001", "MemberType": "Property", "Name": "Thickness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "PhysicsParts", "Name": "RodConstraint", "Superclass": "Constraint" }, { "Members": [ { "Category": "Derived", "Default": "0", "MemberType": "Property", "Name": "CurrentDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Rope", "Default": "5", "MemberType": "Property", "Name": "Length", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Rope", "Default": "0", "MemberType": "Property", "Name": "Restitution", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0.100000001", "MemberType": "Property", "Name": "Thickness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Rope", "Default": "false", "MemberType": "Property", "Name": "WinchEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Winch", "Default": "10000", "MemberType": "Property", "Name": "WinchForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Winch", "Default": "45", "MemberType": "Property", "Name": "WinchResponsiveness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Winch", "Default": "2", "MemberType": "Property", "Name": "WinchSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Winch", "Default": "5", "MemberType": "Property", "Name": "WinchTarget", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "PhysicsParts", "Name": "RopeConstraint", "Superclass": "Constraint" }, { "Members": [ { "Category": "Slider", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ActuatorType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ActuatorType" } }, { "Category": "Derived", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CurrentPosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Slider", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LimitsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Servo", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LinearResponsiveness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LowerLimit", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Motor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MotorMaxAcceleration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Motor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MotorMaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Restitution", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Servo", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ServoMaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Servo", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Speed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Servo", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TargetPosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UpperLimit", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Motor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Velocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "PhysicsParts", "Name": "SlidingBallConstraint", "Superclass": "Constraint", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Cylinder", "Default": "None", "MemberType": "Property", "Name": "AngularActuatorType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ActuatorType" } }, { "Category": "Cylinder", "Default": "false", "MemberType": "Property", "Name": "AngularLimitsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "AngularServo", "Default": "45", "MemberType": "Property", "Name": "AngularResponsiveness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AngularLimits", "Default": "0", "MemberType": "Property", "Name": "AngularRestitution", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AngularServo", "Default": "0", "MemberType": "Property", "Name": "AngularSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AngularMotor", "Default": "0", "MemberType": "Property", "Name": "AngularVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Derived", "Default": "0", "MemberType": "Property", "Name": "CurrentAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Cylinder", "Default": "0", "MemberType": "Property", "Name": "InclinationAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AngularLimits", "Default": "-45", "MemberType": "Property", "Name": "LowerAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AngularMotor", "Default": "INF", "MemberType": "Property", "Name": "MotorMaxAngularAcceleration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AngularMotor", "Default": "0", "MemberType": "Property", "Name": "MotorMaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "RotationAxisVisible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "AngularServo", "Default": "0", "MemberType": "Property", "Name": "ServoMaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AngularServo", "Default": "0", "MemberType": "Property", "Name": "TargetAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AngularLimits", "Default": "45", "MemberType": "Property", "Name": "UpperAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Derived", "Default": "1, 0, 0", "MemberType": "Property", "Name": "WorldRotationAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "PhysicsParts", "Name": "CylindricalConstraint", "Superclass": "SlidingBallConstraint" }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "PrismaticConstraint", "Superclass": "SlidingBallConstraint" }, { "Members": [ { "Category": "Appearance", "Default": "3", "MemberType": "Property", "Name": "Coils", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Derived", "Default": "0", "MemberType": "Property", "Name": "CurrentLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Spring", "Default": "0", "MemberType": "Property", "Name": "Damping", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Spring", "Default": "1", "MemberType": "Property", "Name": "FreeLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Spring", "Default": "false", "MemberType": "Property", "Name": "LimitsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Spring", "Default": "INF", "MemberType": "Property", "Name": "MaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "5", "MemberType": "Property", "Name": "MaxLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "0", "MemberType": "Property", "Name": "MinLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0.400000006", "MemberType": "Property", "Name": "Radius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Spring", "Default": "0", "MemberType": "Property", "Name": "Stiffness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0.100000001", "MemberType": "Property", "Name": "Thickness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "PhysicsParts", "Name": "SpringConstraint", "Superclass": "Constraint" }, { "Members": [ { "Category": "Torque", "Default": "Attachment0", "MemberType": "Property", "Name": "RelativeTo", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ActuatorRelativeTo" } }, { "Category": "Torque", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Torque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "PhysicsParts", "Name": "Torque", "Superclass": "Constraint" }, { "Members": [ { "Category": "Appearance", "Default": "8", "MemberType": "Property", "Name": "Coils", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Derived", "Default": "0", "MemberType": "Property", "Name": "CurrentAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Spring", "Default": "0.00999999978", "MemberType": "Property", "Name": "Damping", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Spring", "Default": "false", "MemberType": "Property", "Name": "LimitEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated", { "PreferredDescriptorName": "LimitsEnabled", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Spring", "Default": "false", "MemberType": "Property", "Name": "LimitsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Limits", "Default": "45", "MemberType": "Property", "Name": "MaxAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Spring", "Default": "INF", "MemberType": "Property", "Name": "MaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0.400000006", "MemberType": "Property", "Name": "Radius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "0", "MemberType": "Property", "Name": "Restitution", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Spring", "Default": "100", "MemberType": "Property", "Name": "Stiffness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "PhysicsParts", "Name": "TorsionSpringConstraint", "Superclass": "Constraint" }, { "Members": [ { "Category": "Universal", "Default": "false", "MemberType": "Property", "Name": "LimitsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Limits", "Default": "45", "MemberType": "Property", "Name": "MaxAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0.200000003", "MemberType": "Property", "Name": "Radius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "0", "MemberType": "Property", "Name": "Restitution", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "PhysicsParts", "Name": "UniversalConstraint", "Superclass": "Constraint" }, { "Members": [ { "Category": "VectorForce", "Default": "false", "MemberType": "Property", "Name": "ApplyAtCenterOfMass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "VectorForce", "Default": "1000, 0, 0", "MemberType": "Property", "Name": "Force", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "VectorForce", "Default": "Attachment0", "MemberType": "Property", "Name": "RelativeTo", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ActuatorRelativeTo" } } ], "MemoryCategory": "PhysicsParts", "Name": "VectorForce", "Superclass": "Constraint" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BaseUrl", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RequestQueueSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "CalculateNumTrianglesInMeshSync", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAssetFetchStatus", "Parameters": [ { "Name": "contentId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Enum", "Name": "AssetFetchStatus" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAssetFetchStatusChangedSignal", "Parameters": [ { "Name": "contentId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptSignal" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetDetailedFailedRequests", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFailedRequests", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ListEncryptedAssets", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Preload", "Parameters": [ { "Name": "contentId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "PreloadAsync", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterDefaultEncryptionKey", "Parameters": [ { "Name": "encryptionKey", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterDefaultSessionKey", "Parameters": [ { "Name": "sessionKey", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterEncryptedAsset", "Parameters": [ { "Name": "assetId", "Type": { "Category": "DataType", "Name": "Content" } }, { "Name": "encryptionKey", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterSessionEncryptedAsset", "Parameters": [ { "Name": "contentId", "Type": { "Category": "DataType", "Name": "Content" } }, { "Name": "sessionKey", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetBaseUrl", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnregisterDefaultEncryptionKey", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnregisterEncryptedAsset", "Parameters": [ { "Name": "assetId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CalculateNumTrianglesInMesh", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PreloadAsync", "Parameters": [ { "Name": "contentIdList", "Type": { "Category": "Group", "Name": "Array" } }, { "Default": "nil", "Name": "callbackFunction", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AssetFetchFailed", "Parameters": [ { "Name": "assetId", "Type": { "Category": "DataType", "Name": "Content" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ContentProvider", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "BindAction", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "functionToBind", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "createTouchButton", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "inputTypes", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BindActionAtPriority", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "functionToBind", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "createTouchButton", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "priorityLevel", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "inputTypes", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BindActionToInputTypes", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "functionToBind", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "createTouchButton", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "inputTypes", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "BindAction", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BindActivate", "Parameters": [ { "Name": "userInputTypeForActivation", "Type": { "Category": "Enum", "Name": "UserInputType" } }, { "Name": "keyCodesForActivation", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BindCoreAction", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "functionToBind", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "createTouchButton", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "inputTypes", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BindCoreActionAtPriority", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "functionToBind", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "createTouchButton", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "priorityLevel", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "inputTypes", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BindCoreActivate", "Parameters": [ { "Name": "userInputTypeForActivation", "Type": { "Category": "Enum", "Name": "UserInputType" } }, { "Name": "keyCodesForActivation", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CallFunction", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "state", "Type": { "Category": "Enum", "Name": "UserInputState" } }, { "Name": "inputObject", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FireActionButtonFoundSignal", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "actionButton", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAllBoundActionInfo", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAllBoundCoreActionInfo", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBoundActionInfo", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBoundCoreActionInfo", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCurrentLocalToolIcon", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetDescription", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "description", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetImage", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "image", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPosition", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "position", "Type": { "Category": "DataType", "Name": "UDim2" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTitle", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "title", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnbindAction", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnbindActivate", "Parameters": [ { "Name": "userInputTypeForActivation", "Type": { "Category": "Enum", "Name": "UserInputType" } }, { "Default": "Unknown", "Name": "keyCodeForActivation", "Type": { "Category": "Enum", "Name": "KeyCode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnbindAllActions", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnbindCoreAction", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnbindCoreActivate", "Parameters": [ { "Name": "userInputTypeForActivation", "Type": { "Category": "Enum", "Name": "UserInputType" } }, { "Default": "Unknown", "Name": "keyCodeForActivation", "Type": { "Category": "Enum", "Name": "KeyCode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetButton", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BoundActionAdded", "Parameters": [ { "Name": "actionAdded", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "createTouchButton", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "functionInfoTable", "Type": { "Category": "Group", "Name": "Dictionary" } }, { "Name": "isCore", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BoundActionChanged", "Parameters": [ { "Name": "actionChanged", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "changeName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "changeTable", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BoundActionRemoved", "Parameters": [ { "Name": "actionRemoved", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "functionInfoTable", "Type": { "Category": "Group", "Name": "Dictionary" } }, { "Name": "isCore", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GetActionButtonEvent", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LocalToolEquipped", "Parameters": [ { "Name": "toolEquipped", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LocalToolUnequipped", "Parameters": [ { "Name": "toolUnequipped", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ContextActionService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "BindButton", "Parameters": [ { "Name": "button", "Type": { "Category": "Enum", "Name": "Button" } }, { "Name": "caption", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetButton", "Parameters": [ { "Name": "button", "Type": { "Category": "Enum", "Name": "Button" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnbindButton", "Parameters": [ { "Name": "button", "Type": { "Category": "Enum", "Name": "Button" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "bindButton", "Parameters": [ { "Name": "button", "Type": { "Category": "Enum", "Name": "Button" } }, { "Name": "caption", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "BindButton", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "getButton", "Parameters": [ { "Name": "button", "Type": { "Category": "Enum", "Name": "Button" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetButton", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ButtonChanged", "Parameters": [ { "Name": "button", "Type": { "Category": "Enum", "Name": "Button" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Controller", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "HumanoidController", "Superclass": "Controller" }, { "Members": [ { "Category": "Axes", "Default": "0", "MemberType": "Property", "Name": "Steer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Axes", "Default": "0", "MemberType": "Property", "Name": "Throttle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Event", "Name": "AxisChanged", "Parameters": [ { "Name": "axis", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "SkateboardController", "Superclass": "Controller" }, { "Members": [], "MemoryCategory": "Instances", "Name": "VehicleController", "Superclass": "Controller" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Active", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Balance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BalanceRigidityEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Movement", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MoveSpeedFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "ControllerBase", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Balance", "Default": "10000", "MemberType": "Property", "Name": "BalanceMaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Balance", "Default": "100", "MemberType": "Property", "Name": "BalanceSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Movement", "Default": "0, 0, 0", "MemberType": "Property", "Name": "LinearImpulse", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Turn", "Default": "true", "MemberType": "Property", "Name": "MaintainAngularMomentum", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Movement", "Default": "true", "MemberType": "Property", "Name": "MaintainLinearMomentum", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Movement", "Default": "1000", "MemberType": "Property", "Name": "MoveMaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Turn", "Default": "10000", "MemberType": "Property", "Name": "TurnMaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Turn", "Default": "1", "MemberType": "Property", "Name": "TurnSpeedFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AirController", "Superclass": "ControllerBase", "Tags": [ "NotBrowsable" ] }, { "Members": [ { "Category": "Movement", "Default": "0", "MemberType": "Property", "Name": "AccelerationTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Balance", "Default": "10000", "MemberType": "Property", "Name": "BalanceMaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Balance", "Default": "100", "MemberType": "Property", "Name": "BalanceSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Movement", "Default": "10000", "MemberType": "Property", "Name": "MoveMaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "ClimbController", "Superclass": "ControllerBase", "Tags": [ "NotBrowsable" ] }, { "Members": [ { "Category": "Balance", "Default": "1", "MemberType": "Property", "Name": "AccelerationLean", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Movement", "Default": "0", "MemberType": "Property", "Name": "AccelerationTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Balance", "Default": "10000", "MemberType": "Property", "Name": "BalanceMaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Balance", "Default": "100", "MemberType": "Property", "Name": "BalanceSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Movement", "Default": "0", "MemberType": "Property", "Name": "DecelerationTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Movement", "Default": "2", "MemberType": "Property", "Name": "Friction", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Movement", "Default": "1", "MemberType": "Property", "Name": "FrictionWeight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Movement", "Default": "1", "MemberType": "Property", "Name": "GroundOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Movement", "Default": "10000", "MemberType": "Property", "Name": "StandForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Movement", "Default": "100", "MemberType": "Property", "Name": "StandSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Movement", "Default": "1", "MemberType": "Property", "Name": "TurnSpeedFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "GroundController", "Superclass": "ControllerBase", "Tags": [ "NotBrowsable" ] }, { "Members": [ { "Category": "Movement", "Default": "0", "MemberType": "Property", "Name": "AccelerationTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Balance", "Default": "10000", "MemberType": "Property", "Name": "PitchMaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Balance", "Default": "1", "MemberType": "Property", "Name": "PitchSpeedFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Balance", "Default": "10000", "MemberType": "Property", "Name": "RollMaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Balance", "Default": "1", "MemberType": "Property", "Name": "RollSpeedFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "SwimController", "Superclass": "ControllerBase", "Tags": [ "NotBrowsable" ] }, { "Members": [ { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "ActiveController", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "ControllerBase" } }, { "Category": "Behavior", "Default": "16", "MemberType": "Property", "Name": "BaseMoveSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "8", "MemberType": "Property", "Name": "BaseTurnSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "ClimbSensor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "ControllerSensor" } }, { "Category": "Input", "Default": "0, 0, 1", "MemberType": "Property", "Name": "FacingDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "GroundSensor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "ControllerSensor" } }, { "Category": "Input", "Default": "0, 0, 0", "MemberType": "Property", "Name": "MovingDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "RootPart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } } ], "MemoryCategory": "Instances", "Name": "ControllerManager", "Superclass": "Instance", "Tags": [ "NotBrowsable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ControllerService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "CookiesService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "CorePackages", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "CoreScriptDebuggingManagerHelper", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetScriptFilePath", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CoreScriptSyncService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "IsWatchingScriptLine", "Parameters": [ { "Name": "scriptRef", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "lineNumber", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartWatchingScriptLine", "Parameters": [ { "Name": "scriptRef", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "debuggerConnectionId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "lineNumber", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GuidLineContentsChanged", "Parameters": [ { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "lineNumber", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "contents", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GuidNameChanged", "Parameters": [ { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "fullName", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CrossDMScriptChangeListener", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "PersistedCurrentValue", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "GetAttachedReceivers", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetValue", "Parameters": [ { "Name": "newValue", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ReceiverConnected", "Parameters": [ { "Name": "receiver", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ReceiverDisconnected", "Parameters": [ { "Name": "receiver", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CustomEvent", "Superclass": "Instance", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Source", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "MemberType": "Function", "Name": "GetCurrentValue", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "EventConnected", "Parameters": [ { "Name": "event", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "EventDisconnected", "Parameters": [ { "Name": "event", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SourceValueChanged", "Parameters": [ { "Name": "newValue", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CustomEventReceiver", "Superclass": "Instance", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Offset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Scale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VertexColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "Instances", "Name": "DataModelMesh", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Bevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Bevel Roundness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Bulge", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "BevelMesh", "Superclass": "DataModelMesh", "Tags": [ "NotCreatable", "NotBrowsable", "Deprecated" ] }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "BlockMesh", "Superclass": "BevelMesh" }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "CylinderMesh", "Superclass": "BevelMesh", "Tags": [ "Deprecated" ] }, { "Members": [ { "MemberType": "Function", "Name": "AddTriangle", "Parameters": [ { "Name": "vertexId0", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "vertexId1", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "vertexId2", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddVertex", "Parameters": [ { "Name": "p", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindClosestPointOnSurface", "Parameters": [ { "Name": "point", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindClosestVertex", "Parameters": [ { "Name": "toThisPoint", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindVerticesWithinSphere", "Parameters": [ { "Name": "center", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "radius", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAdjacentTriangles", "Parameters": [ { "Name": "triangleId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAdjacentVertices", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPosition", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTriangleVertices", "Parameters": [ { "Name": "triangleId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTriangles", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUV", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVertexColor", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Color3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVertexColorAlpha", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVertexNormal", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVertices", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InitializeFromMeshIdAsync", "Parameters": [ { "Name": "meshId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InitializeFromMeshPartAsync", "Parameters": [ { "Name": "meshPart", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Raycast", "Parameters": [ { "Name": "origin", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "direction", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveTriangle", "Parameters": [ { "Name": "triangleId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveVertex", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPosition", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "p", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetUV", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "uv", "Type": { "Category": "DataType", "Name": "Vector2" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetVertexColor", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "color", "Type": { "Category": "DataType", "Name": "Color3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetVertexColorAlpha", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "alpha", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetVertexNormal", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "vnormal", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateMeshPartAsync", "Parameters": [ { "Name": "collisionFidelity", "Type": { "Category": "Enum", "Name": "CollisionFidelity" } } ], "ReturnType": { "Category": "Class", "Name": "MeshPart" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DynamicMesh", "Superclass": "DataModelMesh" }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "MeshId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "TextureId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "PhysicsParts", "Name": "FileMesh", "Superclass": "DataModelMesh" }, { "Members": [ { "Category": "Data", "Default": "Head", "MemberType": "Property", "Name": "MeshType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "MeshType" } } ], "MemoryCategory": "PhysicsParts", "Name": "SpecialMesh", "Superclass": "FileMesh" }, { "Members": [ { "MemberType": "Function", "Name": "GetPatch", "Parameters": [ { "Name": "patchName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterPatch", "Parameters": [ { "Name": "patchName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "behaviorName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "localConfigPath", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UpdatePatch", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "patchName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callbackFunction", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DataModelPatchService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CurrentDataModelType", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "StudioDataModelType" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SessionId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Event", "Name": "CurrentDataModelTypeAboutToChange", "Parameters": [ { "Name": "dataModelType", "Type": { "Category": "Enum", "Name": "StudioDataModelType" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CurrentDataModelTypeChanged", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DataModelCreated", "Parameters": [ { "Name": "gameStateType", "Type": { "Category": "Enum", "Name": "StudioDataModelType" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DataModelWillBeDestroyed", "Parameters": [ { "Name": "gameStateType", "Type": { "Category": "Enum", "Name": "StudioDataModelType" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DataModelSession", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetMetadata", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMetadata", "Parameters": [ { "Name": "attributes", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DataStoreIncrementOptions", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CreatedTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DataStoreName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UpdatedTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } } ], "MemoryCategory": "Instances", "Name": "DataStoreInfo", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "KeyName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "DataStoreKey", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CreatedTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UpdatedTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Version", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "GetMetadata", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserIds", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DataStoreKeyInfo", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CreatedTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsDeleted", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Version", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "DataStoreObjectVersionInfo", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "AllScopes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "SetExperimentalFeatures", "Parameters": [ { "Name": "experimentalFeatures", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DataStoreOptions", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [ { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "AutomaticRetry", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "LegacyNamingScheme", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "GetDataStore", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "global", "Name": "scope", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "nil", "Name": "options", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Class", "Name": "GlobalDataStore" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGlobalDataStore", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "GlobalDataStore" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetOrderedDataStore", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "global", "Name": "scope", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "OrderedDataStore" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRequestBudgetForRequestType", "Parameters": [ { "Name": "requestType", "Type": { "Category": "Enum", "Name": "DataStoreRequestType" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ListDataStoresAsync", "Parameters": [ { "Default": "", "Name": "prefix", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "0", "Name": "pageSize", "Type": { "Category": "Primitive", "Name": "int" } }, { "Default": "", "Name": "cursor", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "DataStoreListingPages" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DataStoreService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetMetadata", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMetadata", "Parameters": [ { "Name": "attributes", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DataStoreSetOptions", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MaxItems", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "AddItem", "Parameters": [ { "Name": "item", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "10", "Name": "lifetime", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetLegacyMaxItems", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "addItem", "Parameters": [ { "Name": "item", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "10", "Name": "lifetime", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Debris", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Performance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DataModel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Performance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "InstanceCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Errors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsScriptStackTracingEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Performance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "JobCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Performance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PlayerCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Errors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ReportSoundWarnings", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Profile", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RobloxVersion", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Benchmarking", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TickCountPreciseOverride", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TickCountSampleMethod" } } ], "MemoryCategory": "Instances", "Name": "DebugSettings", "Superclass": "Instance", "Tags": [ "NotCreatable", "Settings", "NotBrowsable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "DebuggablePluginWatcher", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Condition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "ContinueExecution", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "IsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Line", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "LogExpression", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "isContextDependentBreakpoint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "line", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } } ], "MemoryCategory": "Instances", "Name": "DebuggerBreakpoint", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ErrorMessage", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HasError", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Id", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsPaused", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "AddBreakpoint", "Parameters": [ { "Name": "script", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "Breakpoint" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Close", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "EvaluateWatch", "Parameters": [ { "Name": "expression", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "frame", "Type": { "Category": "Class", "Name": "StackFrame" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFrameById", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Class", "Name": "StackFrame" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSource", "Parameters": [ { "Name": "scriptRef", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "status", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetThreadById", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Class", "Name": "ThreadState" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetThreads", "Parameters": [ { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVariableById", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Class", "Name": "DebuggerVariable" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Pause", "Parameters": [ { "Name": "thread", "Type": { "Category": "Class", "Name": "ThreadState" } }, { "Name": "status", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Populate", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveBreakpoint", "Parameters": [ { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "Breakpoint" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Resume", "Parameters": [ { "Name": "thread", "Type": { "Category": "Class", "Name": "ThreadState" } }, { "Name": "status", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetExceptionBreakMode", "Parameters": [ { "Name": "breakMode", "Type": { "Category": "Enum", "Name": "DebuggerExceptionBreakMode" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetVariable", "Parameters": [ { "Name": "variable", "Type": { "Category": "Class", "Name": "DebuggerVariable" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Step", "Parameters": [ { "Name": "thread", "Type": { "Category": "Class", "Name": "ThreadState" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StepIn", "Parameters": [ { "Name": "thread", "Type": { "Category": "Class", "Name": "ThreadState" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StepOut", "Parameters": [ { "Name": "thread", "Type": { "Category": "Class", "Name": "ThreadState" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UpdateSelectedFrame", "Parameters": [ { "Name": "threadId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "frameNumber", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BreakpointAdded", "Parameters": [ { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "Breakpoint" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BreakpointChanged", "Parameters": [ { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "Breakpoint" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BreakpointRemoved", "Parameters": [ { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "Breakpoint" } }, { "Name": "reason", "Type": { "Category": "Enum", "Name": "BreakpointRemoveReason" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Paused", "Parameters": [ { "Name": "pausedState", "Type": { "Category": "Class", "Name": "PausedState" } }, { "Name": "reason", "Type": { "Category": "Enum", "Name": "DebuggerPauseReason" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Resumed", "Parameters": [ { "Name": "pausedState", "Type": { "Category": "Class", "Name": "PausedState" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DebuggerConnection", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "LocalDebuggerConnection", "Superclass": "DebuggerConnection", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Timeout", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "MemberType": "Function", "Name": "ConnectLocal", "Parameters": [ { "Name": "dataModel", "Type": { "Category": "Class", "Name": "DataModel" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ConnectRemote", "Parameters": [ { "Name": "host", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "port", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FocusConnection", "Parameters": [ { "Name": "connection", "Type": { "Category": "Class", "Name": "DebuggerConnection" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetConnectionById", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Class", "Name": "DebuggerConnection" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ConnectionEnded", "Parameters": [ { "Name": "connection", "Type": { "Category": "Class", "Name": "DebuggerConnection" } }, { "Name": "reason", "Type": { "Category": "Enum", "Name": "DebuggerEndReason" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ConnectionStarted", "Parameters": [ { "Name": "connection", "Type": { "Category": "Class", "Name": "DebuggerConnection" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FocusChanged", "Parameters": [ { "Name": "connection", "Type": { "Category": "Class", "Name": "DebuggerConnection" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DebuggerConnectionManager", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsError", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsSuccess", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Message", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RequestId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Status", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DebuggerStatus" } }, { "MemberType": "Function", "Name": "GetArg", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DebuggerLuaResponse", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DebuggingEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "AddDebugger", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "EnableDebugging", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetDebuggers", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Resume", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StepIn", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StepOut", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StepOver", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DebuggerAdded", "Parameters": [ { "Name": "debugger", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DebuggerRemoved", "Parameters": [ { "Name": "debugger", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DebuggerManager", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "EditBreakpoint", "Parameters": [ { "Name": "metaBreakpointId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "EditWatch", "Parameters": [ { "Name": "expression", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsConnectionForPlayDataModel", "Parameters": [ { "Name": "debuggerConnectionId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenScriptAtLine", "Parameters": [ { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "debuggerConnectionId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "showErrorOnFail", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Pause", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveScriptLineMarkers", "Parameters": [ { "Name": "debuggerConnectionId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "allMarkers", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Resume", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetCurrentThreadId", "Parameters": [ { "Name": "debuggerThreadId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetScriptLineMarker", "Parameters": [ { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "debuggerConnectionId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "lineMarkerType", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetWatchExpressions", "Parameters": [ { "Name": "expressions", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ExpressionAdded", "Parameters": [ { "Name": "expression", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ExpressionsCleared", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DebuggerUIService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Name", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Populated", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Type", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Value", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VariableId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VariablesCount", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "GetVariableByIndex", "Parameters": [ { "Name": "index", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Class", "Name": "DebuggerVariable" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVariableByName", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "DebuggerVariable" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DebuggerVariable", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Expression", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "DebuggerWatch", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "GetDeviceId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DeviceIdService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "SinglePlayer", "MemberType": "Property", "Name": "BehaviorType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DialogBehaviorType" } }, { "Category": "Data", "Default": "25", "MemberType": "Property", "Name": "ConversationDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "GoodbyeChoiceActive", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "GoodbyeDialog", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "InUse", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "InitialPrompt", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "Help", "MemberType": "Property", "Name": "Purpose", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DialogPurpose" } }, { "Category": "Data", "Default": "Neutral", "MemberType": "Property", "Name": "Tone", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DialogTone" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "TriggerDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "TriggerOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "MemberType": "Function", "Name": "GetCurrentPlayers", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPlayerIsUsing", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "isUsing", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalDialogChoiceSelected", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "dialogChoice", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DialogChoiceSelected", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "dialogChoice", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Dialog", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "GoodbyeChoiceActive", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "GoodbyeDialog", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ResponseDialog", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "UserDialog", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "DialogChoice", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "DiscardEdits", "Parameters": [ { "Name": "scripts", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetDraftStatus", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Enum", "Name": "DraftStatusCode" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetEditors", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RestoreScripts", "Parameters": [ { "Name": "scripts", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowDiffsAgainstBase", "Parameters": [ { "Name": "scripts", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowDiffsAgainstServer", "Parameters": [ { "Name": "scripts", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CommitEdits", "Parameters": [ { "Name": "scripts", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetDrafts", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UpdateToLatestVersion", "Parameters": [ { "Name": "scripts", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CommitStatusChanged", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "status", "Type": { "Category": "Enum", "Name": "DraftStatusCode" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DraftAdded", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DraftRemoved", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DraftStatusChanged", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "EditorsListChanged", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UpdateStatusChanged", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "status", "Type": { "Category": "Enum", "Name": "DraftStatusCode" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DraftsService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "AxisRotate", "Parameters": [ { "Default": "X", "Name": "axis", "Type": { "Category": "Enum", "Name": "Axis" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "MouseDown", "Parameters": [ { "Name": "mousePart", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "pointOnMousePart", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "parts", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "MouseMove", "Parameters": [ { "Name": "mouseRay", "Type": { "Category": "DataType", "Name": "Ray" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "MouseUp", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Dragger", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "AlignDraggedObjects", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "AngleSnapEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "AngleSnapIncrement", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "AnimateHover", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "CollisionsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DraggerCoordinateSpace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DraggerCoordinateSpace" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DraggerMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DraggerMovementMode" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "GeometrySnapColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "HoverAnimateFrequency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "HoverLineThickness", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "HoverThickness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "JointsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "LinearSnapEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "LinearSnapIncrement", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "PivotSnapToGeometry", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "ShowHover", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "ShowPivotIndicator", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "DraggerService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "MemberType": "Function", "Name": "Clear", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DrawCircle", "Parameters": [ { "Name": "center", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "radius", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "color", "Type": { "Category": "DataType", "Name": "Color3" } }, { "Name": "alpha", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReadPixels", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector2" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Resize", "Parameters": [ { "Name": "newSize", "Type": { "Category": "DataType", "Name": "Vector2" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Rotate", "Parameters": [ { "Name": "degrees", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "true", "Name": "resizeCanvas", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "WritePixels", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "pixels", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DynamicImage", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "XYZ", "MemberType": "Property", "Name": "RotationOrder", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RotationOrder" } }, { "MemberType": "Function", "Name": "GetAnglesAtTime", "Parameters": [ { "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRotationAtTime", "Parameters": [ { "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "X", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "FloatCurve" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Y", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "FloatCurve" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Z", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "FloatCurve" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "EulerRotationCurve", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "SendEventDeferred", "Parameters": [ { "Name": "target", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventContext", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "additionalArgs", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendEventImmediately", "Parameters": [ { "Name": "target", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventContext", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "additionalArgs", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetRBXEvent", "Parameters": [ { "Name": "target", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventContext", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "additionalArgs", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetRBXEventStream", "Parameters": [ { "Name": "target", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventContext", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "additionalArgs", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "EventIngestService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "ScopeCheckUIComplete", "Parameters": [ { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "scopes", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "result", "Type": { "Category": "Enum", "Name": "ScopeCheckResult" } }, { "Name": "metadata", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenAuthPrompt", "Parameters": [ { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "scopes", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "metadata", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScopeCheckResult", "Parameters": [ { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "result", "Type": { "Category": "Enum", "Name": "ScopeCheckResult" } }, { "Name": "token", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "scopes", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "metadata", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ExperienceAuthService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "InviteMessageId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "InviteUser", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "LaunchData", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "PromptMessage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "ExperienceInviteOptions", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "500000", "MemberType": "Property", "Name": "BlastPressure", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "4", "MemberType": "Property", "Name": "BlastRadius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "DestroyJointRadiusPercent", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "Craters", "MemberType": "Property", "Name": "ExplosionType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ExplosionType" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "TimeScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "Visible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Event", "Name": "Hit", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "BasePart" } }, { "Name": "distance", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Explosion", "Superclass": "Instance" }, { "Members": [ { "Category": "Control", "Default": "true", "MemberType": "Property", "Name": "AudioAnimationEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "false", "MemberType": "Property", "Name": "FlipHeadOrientation", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "true", "MemberType": "Property", "Name": "VideoAnimationEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "GetTrackerLodController", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "TrackerLodController" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Init", "Parameters": [ { "Name": "videoEnabled", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "audioEnabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsStarted", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Start", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Step", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Stop", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TrackerError", "Parameters": [ { "Name": "error", "Type": { "Category": "Enum", "Name": "TrackerError" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TrackerPrompt", "Parameters": [ { "Name": "prompt", "Type": { "Category": "Enum", "Name": "TrackerPromptEvent" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "FaceAnimatorService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "ChinRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "ChinRaiserUpperLip", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Brows", "Default": "0", "MemberType": "Property", "Name": "Corrugator", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Eyes", "Default": "0", "MemberType": "Property", "Name": "EyesLookDown", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Eyes", "Default": "0", "MemberType": "Property", "Name": "EyesLookLeft", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Eyes", "Default": "0", "MemberType": "Property", "Name": "EyesLookRight", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Eyes", "Default": "0", "MemberType": "Property", "Name": "EyesLookUp", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "FlatPucker", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "Funneler", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Jaw", "Default": "0", "MemberType": "Property", "Name": "JawDrop", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Jaw", "Default": "0", "MemberType": "Property", "Name": "JawLeft", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Jaw", "Default": "0", "MemberType": "Property", "Name": "JawRight", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Brows", "Default": "0", "MemberType": "Property", "Name": "LeftBrowLowerer", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "LeftCheekPuff", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Eyes", "Default": "0", "MemberType": "Property", "Name": "LeftCheekRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "LeftDimpler", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Eyes", "Default": "0", "MemberType": "Property", "Name": "LeftEyeClosed", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Eyes", "Default": "0", "MemberType": "Property", "Name": "LeftEyeUpperLidRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Brows", "Default": "0", "MemberType": "Property", "Name": "LeftInnerBrowRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "LeftLipCornerDown", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "LeftLipCornerPuller", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "LeftLipStretcher", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "LeftLowerLipDepressor", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Brows", "Default": "0", "MemberType": "Property", "Name": "LeftNoseWrinkler", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Brows", "Default": "0", "MemberType": "Property", "Name": "LeftOuterBrowRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "LeftUpperLipRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "LipPresser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "LipsTogether", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "LowerLipSuck", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "MouthLeft", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "MouthRight", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "Pucker", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Brows", "Default": "0", "MemberType": "Property", "Name": "RightBrowLowerer", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "RightCheekPuff", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Eyes", "Default": "0", "MemberType": "Property", "Name": "RightCheekRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "RightDimpler", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Eyes", "Default": "0", "MemberType": "Property", "Name": "RightEyeClosed", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Eyes", "Default": "0", "MemberType": "Property", "Name": "RightEyeUpperLidRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Brows", "Default": "0", "MemberType": "Property", "Name": "RightInnerBrowRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "RightLipCornerDown", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "RightLipCornerPuller", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "RightLipStretcher", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "RightLowerLipDepressor", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Brows", "Default": "0", "MemberType": "Property", "Name": "RightNoseWrinkler", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Brows", "Default": "0", "MemberType": "Property", "Name": "RightOuterBrowRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "RightUpperLipRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Tongue", "Default": "0", "MemberType": "Property", "Name": "TongueDown", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Tongue", "Default": "0", "MemberType": "Property", "Name": "TongueOut", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Tongue", "Default": "0", "MemberType": "Property", "Name": "TongueUp", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "UpperLipSuck", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Animation", "Name": "FaceControls", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Face", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NormalId" } } ], "MemoryCategory": "Instances", "Name": "FaceInstance", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Appearance", "Default": "1, 1, 1", "MemberType": "Property", "Name": "Color3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "LocalTransparencyModifier", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "20", "MemberType": "Property", "Name": "Shiny", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "Specular", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "Texture", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "Transparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "ZIndex", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } } ], "MemoryCategory": "GraphicsTexture", "Name": "Decal", "Superclass": "FaceInstance" }, { "Members": [ { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "OffsetStudsU", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "OffsetStudsV", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "2", "MemberType": "Property", "Name": "StudsPerTileU", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "2", "MemberType": "Property", "Name": "StudsPerTileV", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "GraphicsTexture", "Name": "Texture", "Superclass": "Decal" }, { "Members": [ { "Category": "State", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "BiometricDataConsent", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "IsAgeRestricted", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CheckOrRequestCameraPermission", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "FacialAnimationRecordingService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "Get", "Parameters": [ { "Name": "label", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetWithPlayerId", "Parameters": [ { "Name": "label", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "playerId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "FacialAnimationStreamingServiceStats", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "ServiceState", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "GetStats", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "FacialAnimationStreamingServiceStats" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsAudioEnabled", "Parameters": [ { "Name": "mask", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsPlaceEnabled", "Parameters": [ { "Name": "mask", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsServerEnabled", "Parameters": [ { "Name": "mask", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsVideoEnabled", "Parameters": [ { "Name": "mask", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ResolveStateForUser", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "FacialAnimationStreamingServiceV2", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "FacialAnimationStreamingSubsessionStats", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FaceId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NormalId" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "InOut", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "InOut" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LeftRight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "LeftRight" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TopBottom", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TopBottom" } } ], "MemoryCategory": "Instances", "Name": "Feature", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "Hole", "Superclass": "Feature", "Tags": [ "Deprecated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "MotorFeature", "Superclass": "Feature", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Size", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "MemberType": "Function", "Name": "GetBinaryContents", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTemporaryId", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Content" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "File", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "0.92549, 0.545098, 0.27451", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "9", "MemberType": "Property", "Name": "Heat", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0.545098, 0.313726, 0.215686", "MemberType": "Property", "Name": "SecondaryColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "5", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "TimeScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "9", "MemberType": "Property", "Name": "heat_xml", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "5", "MemberType": "Property", "Name": "size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Size", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "5", "MemberType": "Property", "Name": "size_xml", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "FastForward", "Parameters": [ { "Name": "numFrames", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Fire", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "FlagStandService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Length", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "\u0001", "MemberType": "Property", "Name": "ValuesAndTimes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "MemberType": "Function", "Name": "GetKeyAtIndex", "Parameters": [ { "Name": "index", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "FloatCurveKey" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetKeyIndicesAtTime", "Parameters": [ { "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetKeys", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetValueAtTime", "Parameters": [ { "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "float?" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertKey", "Parameters": [ { "Name": "key", "Type": { "Category": "DataType", "Name": "FloatCurveKey" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveKeyAtIndex", "Parameters": [ { "Name": "startingIndex", "Type": { "Category": "Primitive", "Name": "int" } }, { "Default": "1", "Name": "count", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetKeys", "Parameters": [ { "Name": "keys", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "FloatCurve", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "FlyweightService", "Superclass": "Instance", "Tags": [ "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "CSGDictionaryService", "Superclass": "FlyweightService", "Tags": [ "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "NonReplicatedCSGDictionaryService", "Superclass": "FlyweightService", "Tags": [ "Service" ] }, { "Members": [ { "Category": "Data", "Default": "2147483647", "MemberType": "Property", "Name": "ReplicatedGuiInsertionOrder", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } } ], "MemoryCategory": "Instances", "Name": "Folder", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "Visible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "ForceField", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "GetPlatformFriends", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FriendsUpdated", "Parameters": [ { "Name": "friendData", "Type": { "Category": "Group", "Name": "Array" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteFriendEventSignal", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "event", "Type": { "Category": "Enum", "Name": "FriendRequestEvent" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteFriendStatusSignal", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "status", "Type": { "Category": "Enum", "Name": "FriendStatus" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "FriendService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Physics", "Default": "true", "MemberType": "Property", "Name": "AllowSleep", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "?", "MemberType": "Property", "Name": "Description", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Settings", "Default": "false", "MemberType": "Property", "Name": "HasMigratedSettingsToTestService", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Physics", "Default": "true", "MemberType": "Property", "Name": "Is30FpsThrottleEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Physics", "Default": "true", "MemberType": "Property", "Name": "PhysicsEnvironmentalThrottle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Settings", "Default": "60", "MemberType": "Property", "Name": "Timeout", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "MemberType": "Function", "Name": "Error", "Parameters": [ { "Default": "", "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Failed", "Parameters": [ { "Default": "", "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Pass", "Parameters": [ { "Default": "", "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Passed", "Parameters": [ { "Default": "", "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Warn", "Parameters": [ { "Default": "", "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "FunctionalTest", "Superclass": "Instance", "Tags": [ "Deprecated" ] }, { "Members": [ { "MemberType": "Function", "Name": "PlayerHasPass", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "gamePassId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "GamePassService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Video", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VideoCaptureEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Video", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VideoRecording", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Event", "Name": "VideoRecordingChangeRequest", "Parameters": [ { "Name": "recording", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "GameSettings", "Superclass": "Instance", "Tags": [ "NotCreatable", "Settings", "NotBrowsable" ] }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "GamepadCursorEnabled", "Security": { "Read": "None", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "DisableGamepadCursor", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "EnableGamepadCursor", "Parameters": [ { "Name": "guiObject", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGamepadCursorPosition", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetGamepadCursorPosition", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GamepadThumbstick1Changed", "Parameters": [ { "Name": "event", "Type": { "Category": "DataType", "Name": "Vector2" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "GamepadService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "Geometry", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "CalculateConstraintsToPreserve", "Parameters": [ { "Name": "source", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "destination", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "options", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IntersectAsync", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "parts", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "options", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SubtractAsync", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "parts", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "options", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnionAsync", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "parts", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "options", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "GeometryService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Font", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Font" } }, { "Category": "Data", "Default": "20", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Text", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Width", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "GetTextBoundsParams", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "OnUpdate", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptConnection" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IncrementAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "1", "Name": "delta", "Type": { "Category": "Primitive", "Name": "int" } }, { "Default": "{}", "Name": "userIds", "Type": { "Category": "Group", "Name": "Array" } }, { "Default": "nil", "Name": "options", "Type": { "Category": "Class", "Name": "DataStoreIncrementOptions" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } }, { "Default": "{}", "Name": "userIds", "Type": { "Category": "Group", "Name": "Array" } }, { "Default": "nil", "Name": "options", "Type": { "Category": "Class", "Name": "DataStoreSetOptions" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UpdateAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "transformFunction", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "GlobalDataStore", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetVersionAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "version", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ListKeysAsync", "Parameters": [ { "Default": "", "Name": "prefix", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "0", "Name": "pageSize", "Type": { "Category": "Primitive", "Name": "int" } }, { "Default": "", "Name": "cursor", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "false", "Name": "excludeDeleted", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "DataStoreKeyPages" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ListVersionsAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "Ascending", "Name": "sortDirection", "Type": { "Category": "Enum", "Name": "SortDirection" } }, { "Default": "0", "Name": "minDate", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Default": "0", "Name": "maxDate", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Default": "0", "Name": "pageSize", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Class", "Name": "DataStoreVersionPages" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveVersionAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "version", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DataStore", "Superclass": "GlobalDataStore", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetSortedAsync", "Parameters": [ { "Name": "ascending", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "pagesize", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "minValue", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "maxValue", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "OrderedDataStore", "Superclass": "GlobalDataStore", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Configuration", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "gaID", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "GoogleAnalyticsConfiguration", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetAlliesAsync", "Parameters": [ { "Name": "groupId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "StandardPages" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetEnemiesAsync", "Parameters": [ { "Name": "groupId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "StandardPages" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGroupInfoAsync", "Parameters": [ { "Name": "groupId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGroupsAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "GroupService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "GuiBase", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AbsolutePosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AbsoluteRotation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AbsoluteSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Localization", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AutoLocalize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Debugging", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ClippedRect", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Rect" } }, { "Category": "Debugging", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsNotOccluded", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Localization", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Localize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "AutoLocalize", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Debugging", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RawRect2D", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Rect" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ReplicatedInsertionOrder", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Localization", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RootLocalizationTable", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "LocalizationTable" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionBehaviorDown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SelectionBehavior" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionBehaviorLeft", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SelectionBehavior" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionBehaviorRight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SelectionBehavior" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionBehaviorUp", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SelectionBehavior" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionGroup", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Debugging", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TotalGroupScale", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Event", "Name": "SelectionChanged", "Parameters": [ { "Name": "amISelected", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "previousSelection", "Type": { "Category": "Class", "Name": "GuiObject" } }, { "Name": "newSelection", "Type": { "Category": "Class", "Name": "GuiObject" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "GuiBase2d", "Superclass": "GuiBase", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Active", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AnchorPoint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AutomaticSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AutomaticSize" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BackgroundColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BackgroundColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BackgroundTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BorderColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BorderColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BorderMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "BorderMode" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BorderSizePixel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ClipsDescendants", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DragBeginConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DragStoppedConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Draggable", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LayoutOrder", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseEnterConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseLeaveConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseMovedConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseWheelBackwardConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseWheelForwardConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NextSelectionDown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "GuiObject" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NextSelectionLeft", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "GuiObject" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NextSelectionRight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "GuiObject" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NextSelectionUp", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "GuiObject" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Rotation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Selectable", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionImageObject", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "GuiObject" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionOrder", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SizeConstraint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SizeConstraint" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Transparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Visible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ZIndex", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "TweenPosition", "Parameters": [ { "Name": "endPosition", "Type": { "Category": "DataType", "Name": "UDim2" } }, { "Default": "Out", "Name": "easingDirection", "Type": { "Category": "Enum", "Name": "EasingDirection" } }, { "Default": "Quad", "Name": "easingStyle", "Type": { "Category": "Enum", "Name": "EasingStyle" } }, { "Default": "1", "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "false", "Name": "override", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "nil", "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TweenSize", "Parameters": [ { "Name": "endSize", "Type": { "Category": "DataType", "Name": "UDim2" } }, { "Default": "Out", "Name": "easingDirection", "Type": { "Category": "Enum", "Name": "EasingDirection" } }, { "Default": "Quad", "Name": "easingStyle", "Type": { "Category": "Enum", "Name": "EasingStyle" } }, { "Default": "1", "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "false", "Name": "override", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "nil", "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TweenSizeAndPosition", "Parameters": [ { "Name": "endSize", "Type": { "Category": "DataType", "Name": "UDim2" } }, { "Name": "endPosition", "Type": { "Category": "DataType", "Name": "UDim2" } }, { "Default": "Out", "Name": "easingDirection", "Type": { "Category": "Enum", "Name": "EasingDirection" } }, { "Default": "Quad", "Name": "easingStyle", "Type": { "Category": "Enum", "Name": "EasingStyle" } }, { "Default": "1", "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "false", "Name": "override", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "nil", "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DragBegin", "Parameters": [ { "Name": "initialPosition", "Type": { "Category": "DataType", "Name": "UDim2" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DragStopped", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InputBegan", "Parameters": [ { "Name": "input", "Type": { "Category": "Class", "Name": "InputObject" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InputChanged", "Parameters": [ { "Name": "input", "Type": { "Category": "Class", "Name": "InputObject" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InputEnded", "Parameters": [ { "Name": "input", "Type": { "Category": "Class", "Name": "InputObject" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseEnter", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseLeave", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseMoved", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseWheelBackward", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseWheelForward", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SelectionGained", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SelectionLost", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchLongPress", "Parameters": [ { "Name": "touchPositions", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "state", "Type": { "Category": "Enum", "Name": "UserInputState" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchPan", "Parameters": [ { "Name": "touchPositions", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "totalTranslation", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "velocity", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "state", "Type": { "Category": "Enum", "Name": "UserInputState" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchPinch", "Parameters": [ { "Name": "touchPositions", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "scale", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "velocity", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "state", "Type": { "Category": "Enum", "Name": "UserInputState" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchRotate", "Parameters": [ { "Name": "touchPositions", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "rotation", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "velocity", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "state", "Type": { "Category": "Enum", "Name": "UserInputState" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchSwipe", "Parameters": [ { "Name": "swipeDirection", "Type": { "Category": "Enum", "Name": "SwipeDirection" } }, { "Name": "numberOfTouches", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchTap", "Parameters": [ { "Name": "touchPositions", "Type": { "Category": "Group", "Name": "Array" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "GuiObject", "Superclass": "GuiBase2d", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Appearance", "Default": "1, 1, 1", "MemberType": "Property", "Name": "GroupColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "GroupTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Gui", "Name": "CanvasGroup", "Superclass": "GuiObject" }, { "Members": [ { "Category": "Data", "Default": "Custom", "MemberType": "Property", "Name": "Style", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FrameStyle" } } ], "MemoryCategory": "Gui", "Name": "Frame", "Superclass": "GuiObject" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AutoButtonColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Modal", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseButton1ClickConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseButton1DownConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseButton1UpConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseButton2ClickConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseButton2DownConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseButton2UpConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Selected", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Style", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ButtonStyle" } }, { "MemberType": "Event", "Name": "Activated", "Parameters": [ { "Name": "inputObject", "Type": { "Category": "Class", "Name": "InputObject" } }, { "Name": "clickCount", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseButton1Click", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseButton1Down", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseButton1Up", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseButton2Click", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseButton2Down", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseButton2Up", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "GuiButton", "Superclass": "GuiObject", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Image", "Default": "0, 0", "MemberType": "Property", "Name": "ContentImageSize", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Image", "Default": "", "MemberType": "Property", "Name": "HoverImage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Image", "Default": "", "MemberType": "Property", "Name": "Image", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Image", "Default": "1, 1, 1", "MemberType": "Property", "Name": "ImageColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Image", "Default": "0, 0", "MemberType": "Property", "Name": "ImageRectOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Image", "Default": "0, 0", "MemberType": "Property", "Name": "ImageRectSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Image", "Default": "0", "MemberType": "Property", "Name": "ImageTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Image", "Default": "false", "MemberType": "Property", "Name": "IsLoaded", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Image", "Default": "", "MemberType": "Property", "Name": "PressedImage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Image", "Default": "Default", "MemberType": "Property", "Name": "ResampleMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ResamplerMode" } }, { "Category": "Image", "Default": "Stretch", "MemberType": "Property", "Name": "ScaleType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ScaleType" } }, { "Category": "Image", "Default": "0, 0, 0, 0", "MemberType": "Property", "Name": "SliceCenter", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Rect" } }, { "Category": "Image", "Default": "1", "MemberType": "Property", "Name": "SliceScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Image", "Default": "{1, 0}, {1, 0}", "MemberType": "Property", "Name": "TileSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } }, { "MemberType": "Function", "Name": "SetEnableContentImageSizeChangedEvents", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "ImageButton", "Superclass": "GuiButton" }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "Confidential", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "Button", "MemberType": "Property", "Name": "ContentText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Text", "Default": "Legacy", "MemberType": "Property", "Name": "Font", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Font" } }, { "Category": "Text", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "FontFace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Font" } }, { "Category": "Text", "Default": "Size8", "MemberType": "Property", "Name": "FontSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "TextSize", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FontSize" } }, { "Category": "Text", "Default": "1", "MemberType": "Property", "Name": "LineHeight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "LocalizedText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Text", "Default": "-1", "MemberType": "Property", "Name": "MaxVisibleGraphemes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "RichText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "Button", "MemberType": "Property", "Name": "Text", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Text", "Default": "0, 0", "MemberType": "Property", "Name": "TextBounds", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Text", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TextColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Text", "Default": "0.105882, 0.164706, 0.207843", "MemberType": "Property", "Name": "TextColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Text", "Default": "Auto", "MemberType": "Property", "Name": "TextDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextDirection" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextFits", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextScaled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "8", "MemberType": "Property", "Name": "TextSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Text", "Default": "0, 0, 0", "MemberType": "Property", "Name": "TextStrokeColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Text", "Default": "1", "MemberType": "Property", "Name": "TextStrokeTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Text", "Default": "0", "MemberType": "Property", "Name": "TextTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Text", "Default": "None", "MemberType": "Property", "Name": "TextTruncate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextTruncate" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextWrap", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "TextWrapped", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextWrapped", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "Center", "MemberType": "Property", "Name": "TextXAlignment", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextXAlignment" } }, { "Category": "Text", "Default": "Center", "MemberType": "Property", "Name": "TextYAlignment", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextYAlignment" } }, { "MemberType": "Function", "Name": "SetTextFromInput", "Parameters": [ { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "TextButton", "Superclass": "GuiButton" }, { "Members": [], "MemoryCategory": "Gui", "Name": "GuiLabel", "Superclass": "GuiObject", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Image", "Default": "0, 0", "MemberType": "Property", "Name": "ContentImageSize", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Image", "Default": "", "MemberType": "Property", "Name": "Image", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Image", "Default": "1, 1, 1", "MemberType": "Property", "Name": "ImageColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Image", "Default": "0, 0", "MemberType": "Property", "Name": "ImageRectOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Image", "Default": "0, 0", "MemberType": "Property", "Name": "ImageRectSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Image", "Default": "0", "MemberType": "Property", "Name": "ImageTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Image", "Default": "false", "MemberType": "Property", "Name": "IsLoaded", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Image", "Default": "Default", "MemberType": "Property", "Name": "ResampleMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ResamplerMode" } }, { "Category": "Image", "Default": "Stretch", "MemberType": "Property", "Name": "ScaleType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ScaleType" } }, { "Category": "Image", "Default": "0, 0, 0, 0", "MemberType": "Property", "Name": "SliceCenter", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Rect" } }, { "Category": "Image", "Default": "1", "MemberType": "Property", "Name": "SliceScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Image", "Default": "{1, 0}, {1, 0}", "MemberType": "Property", "Name": "TileSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } }, { "MemberType": "Function", "Name": "SetEnableContentImageSizeChangedEvents", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "ImageLabel", "Superclass": "GuiLabel" }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "Confidential", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "Label", "MemberType": "Property", "Name": "ContentText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Text", "Default": "Legacy", "MemberType": "Property", "Name": "Font", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Font" } }, { "Category": "Text", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "FontFace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Font" } }, { "Category": "Text", "Default": "Size8", "MemberType": "Property", "Name": "FontSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "TextSize", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FontSize" } }, { "Category": "Text", "Default": "1", "MemberType": "Property", "Name": "LineHeight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "LocalizedText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Text", "Default": "-1", "MemberType": "Property", "Name": "MaxVisibleGraphemes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "RichText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "Label", "MemberType": "Property", "Name": "Text", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Text", "Default": "0, 0", "MemberType": "Property", "Name": "TextBounds", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Text", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TextColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Text", "Default": "0.105882, 0.164706, 0.207843", "MemberType": "Property", "Name": "TextColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Text", "Default": "Auto", "MemberType": "Property", "Name": "TextDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextDirection" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextFits", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextScaled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "8", "MemberType": "Property", "Name": "TextSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Text", "Default": "0, 0, 0", "MemberType": "Property", "Name": "TextStrokeColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Text", "Default": "1", "MemberType": "Property", "Name": "TextStrokeTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Text", "Default": "0", "MemberType": "Property", "Name": "TextTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Text", "Default": "None", "MemberType": "Property", "Name": "TextTruncate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextTruncate" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextWrap", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "TextWrapped", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextWrapped", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "Center", "MemberType": "Property", "Name": "TextXAlignment", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextXAlignment" } }, { "Category": "Text", "Default": "Center", "MemberType": "Property", "Name": "TextYAlignment", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextYAlignment" } }, { "MemberType": "Function", "Name": "SetTextFromInput", "Parameters": [ { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "TextLabel", "Superclass": "GuiLabel" }, { "Members": [ { "Category": "Scrolling", "Default": "0, 0", "MemberType": "Property", "Name": "AbsoluteCanvasSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Scrolling", "Default": "0, 0", "MemberType": "Property", "Name": "AbsoluteWindowSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Scrolling", "Default": "None", "MemberType": "Property", "Name": "AutomaticCanvasSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AutomaticSize" } }, { "Category": "Scrolling", "Default": "rbxasset://textures/ui/Scroll/scroll-bottom.png", "MemberType": "Property", "Name": "BottomImage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Scrolling", "Default": "0, 0", "MemberType": "Property", "Name": "CanvasPosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Scrolling", "Default": "{0, 0}, {2, 0}", "MemberType": "Property", "Name": "CanvasSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } }, { "Category": "Scrolling", "Default": "WhenScrollable", "MemberType": "Property", "Name": "ElasticBehavior", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ElasticBehavior" } }, { "Category": "Debugging", "Default": "0, 0, 0, 0", "MemberType": "Property", "Name": "HorizontalBarRect", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Rect" } }, { "Category": "Scrolling", "Default": "None", "MemberType": "Property", "Name": "HorizontalScrollBarInset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ScrollBarInset" } }, { "Category": "Debugging", "Default": "0, 0", "MemberType": "Property", "Name": "MaxCanvasPosition", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Scrolling", "Default": "rbxasset://textures/ui/Scroll/scroll-middle.png", "MemberType": "Property", "Name": "MidImage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Scrolling", "Default": "1, 1, 1", "MemberType": "Property", "Name": "ScrollBarImageColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Scrolling", "Default": "0", "MemberType": "Property", "Name": "ScrollBarImageTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Scrolling", "Default": "12", "MemberType": "Property", "Name": "ScrollBarThickness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Scrolling", "Default": "0, 0", "MemberType": "Property", "Name": "ScrollVelocity", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Scrolling", "Default": "XY", "MemberType": "Property", "Name": "ScrollingDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ScrollingDirection" } }, { "Category": "Scrolling", "Default": "true", "MemberType": "Property", "Name": "ScrollingEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Scrolling", "Default": "rbxasset://textures/ui/Scroll/scroll-top.png", "MemberType": "Property", "Name": "TopImage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Debugging", "Default": "0, 0, 0, 0", "MemberType": "Property", "Name": "VerticalBarRect", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Rect" } }, { "Category": "Scrolling", "Default": "None", "MemberType": "Property", "Name": "VerticalScrollBarInset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ScrollBarInset" } }, { "Category": "Scrolling", "Default": "Right", "MemberType": "Property", "Name": "VerticalScrollBarPosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "VerticalScrollBarPosition" } }, { "MemberType": "Function", "Name": "ClearInertialScrolling", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSampledInertialVelocity", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ScrollToTop", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "ScrollingFrame", "Superclass": "GuiObject" }, { "Members": [ { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "ClearTextOnFocus", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "Confidential", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "TextBox", "MemberType": "Property", "Name": "ContentText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "CursorPosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Text", "Default": "Legacy", "MemberType": "Property", "Name": "Font", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Font" } }, { "Category": "Text", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "FontFace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Font" } }, { "Category": "Text", "Default": "Size8", "MemberType": "Property", "Name": "FontSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "TextSize", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FontSize" } }, { "Category": "Text", "Default": "1", "MemberType": "Property", "Name": "LineHeight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "ManualFocusRelease", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "-1", "MemberType": "Property", "Name": "MaxVisibleGraphemes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "MultiLine", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "OverlayNativeInput", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "0.7, 0.7, 0.7", "MemberType": "Property", "Name": "PlaceholderColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Text", "Default": "", "MemberType": "Property", "Name": "PlaceholderText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "Default", "MemberType": "Property", "Name": "ReturnKeyType", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ReturnKeyType" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "RichText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "-1", "MemberType": "Property", "Name": "SelectionStart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "ShowNativeInput", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "TextBox", "MemberType": "Property", "Name": "Text", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Text", "Default": "0, 0", "MemberType": "Property", "Name": "TextBounds", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Text", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TextColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Text", "Default": "0.105882, 0.164706, 0.207843", "MemberType": "Property", "Name": "TextColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Text", "Default": "Auto", "MemberType": "Property", "Name": "TextDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextDirection" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "TextEditable", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextFits", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "Default", "MemberType": "Property", "Name": "TextInputType", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextInputType" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextScaled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "8", "MemberType": "Property", "Name": "TextSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Text", "Default": "0, 0, 0", "MemberType": "Property", "Name": "TextStrokeColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Text", "Default": "1", "MemberType": "Property", "Name": "TextStrokeTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Text", "Default": "0", "MemberType": "Property", "Name": "TextTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Text", "Default": "None", "MemberType": "Property", "Name": "TextTruncate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextTruncate" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextWrap", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "TextWrapped", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextWrapped", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "Center", "MemberType": "Property", "Name": "TextXAlignment", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextXAlignment" } }, { "Category": "Text", "Default": "Center", "MemberType": "Property", "Name": "TextYAlignment", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextYAlignment" } }, { "MemberType": "Function", "Name": "CaptureFocus", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsFocused", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReleaseFocus", "Parameters": [ { "Default": "false", "Name": "submitted", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ResetKeyboardMode", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTextFromInput", "Parameters": [ { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FocusLost", "Parameters": [ { "Name": "enterPressed", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "inputThatCausedFocusLoss", "Type": { "Category": "Class", "Name": "InputObject" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Focused", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ReturnPressedFromOnScreenKeyboard", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "TextBox", "Superclass": "GuiObject" }, { "Members": [ { "Category": "Video", "Default": "false", "MemberType": "Property", "Name": "IsLoaded", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Video", "Default": "false", "MemberType": "Property", "Name": "Looped", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Video", "Default": "false", "MemberType": "Property", "Name": "Playing", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Video", "Default": "false", "MemberType": "Property", "Name": "PlayingReplicating", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Video", "Default": "0, 0", "MemberType": "Property", "Name": "Resolution", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Video", "Default": "0", "MemberType": "Property", "Name": "TimeLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Video", "Default": "0", "MemberType": "Property", "Name": "TimePosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Video", "Default": "0", "MemberType": "Property", "Name": "TimePositionReplicating", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Video", "Default": "", "MemberType": "Property", "Name": "Video", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Video", "Default": "1", "MemberType": "Property", "Name": "Volume", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "Pause", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Play", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DidLoop", "Parameters": [ { "Name": "video", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Ended", "Parameters": [ { "Name": "video", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Loaded", "Parameters": [ { "Name": "video", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Paused", "Parameters": [ { "Name": "video", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Played", "Parameters": [ { "Name": "video", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayingUpdatedFromServer", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TimePositionUpdatedFromServer", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "VideoFrame", "Superclass": "GuiObject" }, { "Members": [ { "Category": "Appearance", "Default": "0.784314, 0.784314, 0.784314", "MemberType": "Property", "Name": "Ambient", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CameraCFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "1.22173059", "MemberType": "Property", "Name": "CameraFieldOfView", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CurrentCamera", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Camera" } }, { "Category": "Image", "Default": "1, 1, 1", "MemberType": "Property", "Name": "ImageColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Image", "Default": "0", "MemberType": "Property", "Name": "ImageTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "IsMirrored", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0.54902, 0.54902, 0.54902", "MemberType": "Property", "Name": "LightColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "-1, -1, -1", "MemberType": "Property", "Name": "LightDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "Gui", "Name": "ViewportFrame", "Superclass": "GuiObject" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ResetOnSpawn", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ZIndexBehavior", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ZIndexBehavior" } }, { "MemberType": "Function", "Name": "GetLayoutNodeTree", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "LayerCollector", "Superclass": "GuiBase2d", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "Active", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Adornee", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "AlwaysOnTop", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "Brightness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "ClipsDescendants", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "CurrentDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "DistanceLowerLimit", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "DistanceStep", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "-1", "MemberType": "Property", "Name": "DistanceUpperLimit", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "ExtentsOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "ExtentsOffsetWorldSpace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "LightInfluence", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "INF", "MemberType": "Property", "Name": "MaxDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "PlayerToHideFrom", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "{0, 0}, {0, 0}", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } }, { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "SizeOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "StudsOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "StudsOffsetWorldSpace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "MemberType": "Function", "Name": "GetScreenSpaceBounds", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BillboardGui", "Superclass": "LayerCollector" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Title", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "BindToClose", "Parameters": [ { "Default": "nil", "Name": "function", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRelativeMousePosition", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PluginDragDropped", "Parameters": [ { "Name": "dragData", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PluginDragEntered", "Parameters": [ { "Name": "dragData", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PluginDragLeft", "Parameters": [ { "Name": "dragData", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PluginDragMoved", "Parameters": [ { "Name": "dragData", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "WindowFocusReleased", "Parameters": [], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "WindowFocused", "Parameters": [], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PluginGui", "Superclass": "LayerCollector", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "HostWidgetWasRestored", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "RequestRaise", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DockWidgetPluginGui", "Superclass": "PluginGui", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "QWidgetPluginGui", "Superclass": "PluginGui", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Appearance", "Default": "true", "MemberType": "Property", "Name": "ClipToDeviceSafeArea", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotBrowsable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "DisplayOrder", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "IgnoreGuiInset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "OnTopOfCoreBlur", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "FullscreenExtension", "MemberType": "Property", "Name": "SafeAreaCompatibility", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotBrowsable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SafeAreaCompatibility" } }, { "Category": "Appearance", "Default": "CoreUISafeInsets", "MemberType": "Property", "Name": "ScreenInsets", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotBrowsable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ScreenInsets" } } ], "MemoryCategory": "Instances", "Name": "ScreenGui", "Superclass": "LayerCollector" }, { "Members": [], "MemoryCategory": "Instances", "Name": "GuiMain", "Superclass": "ScreenGui", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Active", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Adornee", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Face", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NormalId" } } ], "MemoryCategory": "Instances", "Name": "SurfaceGuiBase", "Superclass": "LayerCollector", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "HorizontalRectangle", "MemberType": "Property", "Name": "AdShape", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AdShape" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "FallbackImage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Behavior", "Default": "Inactive", "MemberType": "Property", "Name": "Status", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AdUnitStatus" } } ], "MemoryCategory": "Internal", "Name": "AdGui", "Superclass": "SurfaceGuiBase" }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "AlwaysOnTop", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "Brightness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Sizing", "Default": "800, 600", "MemberType": "Property", "Name": "CanvasSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "ClipsDescendants", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "HorizontalCurvature", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "LightInfluence", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Sizing", "Default": "50", "MemberType": "Property", "Name": "PixelsPerStud", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "Flat", "MemberType": "Property", "Name": "Shape", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SurfaceGuiShape" } }, { "Category": "Sizing", "Default": "FixedSize", "MemberType": "Property", "Name": "SizingMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SurfaceGuiSizingMode" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "ToolPunchThroughDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "ZOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "SurfaceGui", "Superclass": "SurfaceGuiBase" }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Color3", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Color3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Transparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Visible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "GuiBase3d", "Superclass": "GuiBase", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "CycleOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "From", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Data", "Default": "4", "MemberType": "Property", "Name": "StudsBetweenTextures", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "Texture", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "1, 1", "MemberType": "Property", "Name": "TextureSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "To", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Data", "Default": "2", "MemberType": "Property", "Name": "Velocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0.0625", "MemberType": "Property", "Name": "WireRadius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "FloorWire", "Superclass": "GuiBase3d", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Adornee", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } } ], "MemoryCategory": "Instances", "Name": "InstanceAdornment", "Superclass": "GuiBase3d", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Appearance", "Default": "0.150000006", "MemberType": "Property", "Name": "LineThickness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "StudioSelectionBox", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "SurfaceColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "SurfaceColor3", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Appearance", "Default": "0.0509804, 0.411765, 0.67451", "MemberType": "Property", "Name": "SurfaceColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "SurfaceTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "SelectionBox", "Superclass": "InstanceAdornment" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Adornee", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "PVInstance" } } ], "MemoryCategory": "Instances", "Name": "PVAdornment", "Superclass": "GuiBase3d", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AdornCullingMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AdornCullingMode" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AlwaysOnTop", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SizeRelativeOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ZIndex", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Event", "Name": "MouseButton1Down", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseButton1Up", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseEnter", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseLeave", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "HandleAdornment", "Superclass": "PVAdornment", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "1, 1, 1", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "Instances", "Name": "BoxHandleAdornment", "Superclass": "HandleAdornment" }, { "Members": [ { "Category": "Data", "Default": "2", "MemberType": "Property", "Name": "Height", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0.5", "MemberType": "Property", "Name": "Radius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "ConeHandleAdornment", "Superclass": "HandleAdornment" }, { "Members": [ { "Category": "Data", "Default": "360", "MemberType": "Property", "Name": "Angle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "Height", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "InnerRadius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "Radius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "CylinderHandleAdornment", "Superclass": "HandleAdornment" }, { "Members": [ { "Category": "Data", "Default": "rbxasset://textures/SurfacesDefault.png", "MemberType": "Property", "Name": "Image", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Data", "Default": "1, 1", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } } ], "MemoryCategory": "Instances", "Name": "ImageHandleAdornment", "Superclass": "HandleAdornment" }, { "Members": [ { "Category": "Data", "Default": "5", "MemberType": "Property", "Name": "Length", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "Thickness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "LineHandleAdornment", "Superclass": "HandleAdornment" }, { "Members": [ { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "Radius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "SphereHandleAdornment", "Superclass": "HandleAdornment" }, { "Members": [ { "Category": "Data", "Default": "1, 1, 1", "MemberType": "Property", "Name": "Scale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "MemberType": "Function", "Name": "AddLine", "Parameters": [ { "Name": "from", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "to", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddLines", "Parameters": [ { "Name": "points", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddPath", "Parameters": [ { "Name": "points", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "loop", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Clear", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "WireframeHandleAdornment", "Superclass": "HandleAdornment" }, { "Members": [ { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "A", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "B", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "C", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "Range", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "Thickness", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "FindPartOnParabola", "Parameters": [ { "Name": "ignoreDescendentsTable", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ParabolaAdornment", "Superclass": "PVAdornment" }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "SurfaceColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "SurfaceColor3", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Appearance", "Default": "0.0509804, 0.411765, 0.67451", "MemberType": "Property", "Name": "SurfaceColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "SurfaceTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "SelectionSphere", "Superclass": "PVAdornment" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Adornee", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } } ], "MemoryCategory": "Instances", "Name": "PartAdornment", "Superclass": "GuiBase3d", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "HandlesBase", "Superclass": "PartAdornment", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "X, Y, Z", "MemberType": "Property", "Name": "Axes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Axes" } }, { "Category": "EventReplicator", "Default": "0", "MemberType": "Property", "Name": "MouseButton1DownConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "0", "MemberType": "Property", "Name": "MouseButton1UpConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "0", "MemberType": "Property", "Name": "MouseDragConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "0", "MemberType": "Property", "Name": "MouseEnterConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "0", "MemberType": "Property", "Name": "MouseLeaveConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Event", "Name": "MouseButton1Down", "Parameters": [ { "Name": "axis", "Type": { "Category": "Enum", "Name": "Axis" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseButton1Up", "Parameters": [ { "Name": "axis", "Type": { "Category": "Enum", "Name": "Axis" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseDrag", "Parameters": [ { "Name": "axis", "Type": { "Category": "Enum", "Name": "Axis" } }, { "Name": "relativeAngle", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "deltaRadius", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseEnter", "Parameters": [ { "Name": "axis", "Type": { "Category": "Enum", "Name": "Axis" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseLeave", "Parameters": [ { "Name": "axis", "Type": { "Category": "Enum", "Name": "Axis" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ArcHandles", "Superclass": "HandlesBase" }, { "Members": [ { "Category": "Data", "Default": "Right, Top, Back, Left, Bottom, Front", "MemberType": "Property", "Name": "Faces", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Faces" } }, { "Category": "EventReplicator", "Default": "0", "MemberType": "Property", "Name": "MouseButton1DownConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "0", "MemberType": "Property", "Name": "MouseButton1UpConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "0", "MemberType": "Property", "Name": "MouseDragConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "0", "MemberType": "Property", "Name": "MouseEnterConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "0", "MemberType": "Property", "Name": "MouseLeaveConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Appearance", "Default": "Resize", "MemberType": "Property", "Name": "Style", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HandlesStyle" } }, { "MemberType": "Event", "Name": "MouseButton1Down", "Parameters": [ { "Name": "face", "Type": { "Category": "Enum", "Name": "NormalId" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseButton1Up", "Parameters": [ { "Name": "face", "Type": { "Category": "Enum", "Name": "NormalId" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseDrag", "Parameters": [ { "Name": "face", "Type": { "Category": "Enum", "Name": "NormalId" } }, { "Name": "distance", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseEnter", "Parameters": [ { "Name": "face", "Type": { "Category": "Enum", "Name": "NormalId" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseLeave", "Parameters": [ { "Name": "face", "Type": { "Category": "Enum", "Name": "NormalId" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Handles", "Superclass": "HandlesBase" }, { "Members": [ { "Category": "Data", "Default": "Right", "MemberType": "Property", "Name": "TargetSurface", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NormalId" } } ], "MemoryCategory": "Instances", "Name": "SurfaceSelection", "Superclass": "PartAdornment" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Humanoid", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Humanoid" } } ], "MemoryCategory": "Instances", "Name": "SelectionLasso", "Superclass": "GuiBase3d", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Part", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } } ], "MemoryCategory": "Instances", "Name": "SelectionPartLasso", "Superclass": "SelectionLasso", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Point", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "Instances", "Name": "SelectionPointLasso", "Superclass": "SelectionLasso", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AutoSelectGuiEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CoreEffectFolder", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Folder" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CoreGuiFolder", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Folder" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CoreGuiNavigationEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GuiNavigationEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsModalDialog", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsWindows", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MenuIsOpen", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PreferredTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ReducedMotionEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectedCoreObject", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "GuiObject" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectedObject", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "GuiObject" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TouchControlsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "AddCenterDialog", "Parameters": [ { "Name": "dialog", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "centerDialogType", "Type": { "Category": "Enum", "Name": "CenterDialogType" } }, { "Name": "showFunction", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "hideFunction", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddKey", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddSelectionParent", "Parameters": [ { "Name": "selectionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "selectionParent", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddSelectionTuple", "Parameters": [ { "Name": "selectionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "selections", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddSpecialKey", "Parameters": [ { "Name": "key", "Type": { "Category": "Enum", "Name": "SpecialKey" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BroadcastNotification", "Parameters": [ { "Name": "data", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "notificationType", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClearError", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CloseInspectMenu", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CloseStatsBasedOnInputString", "Parameters": [ { "Name": "input", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ForceTenFootInterface", "Parameters": [ { "Name": "isForced", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBrickCount", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetClosestDialogToPosition", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetEmotesMenuOpen", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetErrorCode", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "ConnectionError" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetErrorMessage", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetUiMessage", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetErrorType", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "ConnectionError" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGameplayPausedNotificationEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGuiInset", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGuiIsVisible", "Parameters": [ { "Name": "guiType", "Type": { "Category": "Enum", "Name": "GuiType" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetInspectMenuEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetNotificationTypeList", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetResolutionScale", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSafeZoneOffsets", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUiMessage", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InspectPlayerFromHumanoidDescription", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InspectPlayerFromUserId", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InspectPlayerFromUserIdWithCtx", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "ctx", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsMemoryTrackerEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsTenFootInterface", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenBrowserWindow", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenNativeOverlay", "Parameters": [ { "Name": "title", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveCenterDialog", "Parameters": [ { "Name": "dialog", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveKey", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveSelectionGroup", "Parameters": [ { "Name": "selectionName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveSpecialKey", "Parameters": [ { "Name": "key", "Type": { "Category": "Enum", "Name": "SpecialKey" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Select", "Parameters": [ { "Name": "selectionParent", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEmotesMenuOpen", "Parameters": [ { "Name": "isOpen", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetGameplayPausedNotificationEnabled", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetGlobalGuiInset", "Parameters": [ { "Name": "x1", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y1", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "x2", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y2", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetHardwareSafeAreaInsets", "Parameters": [ { "Name": "left", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "top", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "right", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "bottom", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetInspectMenuEnabled", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMenuIsOpen", "Parameters": [ { "Name": "open", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "default", "Name": "menuName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPurchasePromptIsShown", "Parameters": [ { "Name": "isShown", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetSafeZoneOffsets", "Parameters": [ { "Name": "top", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "bottom", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "left", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "right", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetUiMessage", "Parameters": [ { "Name": "msgType", "Type": { "Category": "Enum", "Name": "UiMessageType" } }, { "Default": "errorCode", "Name": "uiMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowStatsBasedOnInputString", "Parameters": [ { "Name": "input", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ToggleFullscreen", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ToggleGuiIsVisibleForCaptures", "Parameters": [ { "Name": "guiType", "Type": { "Category": "Enum", "Name": "GuiType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ToggleGuiIsVisibleIfAllowed", "Parameters": [ { "Name": "guiType", "Type": { "Category": "Enum", "Name": "GuiType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetScreenResolution", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BrowserWindowClosed", "Parameters": [], "Security": "RobloxScriptSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CloseInspectMenuRequest", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CoreGuiRenderOverflowed", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "EmotesMenuOpenChanged", "Parameters": [ { "Name": "isOpen", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ErrorMessageChanged", "Parameters": [ { "Name": "newErrorMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "Tags": [ "Deprecated", { "PreferredDescriptorName": "UiMessageChanged", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GuiVisibilityChangedSignal", "Parameters": [ { "Name": "guiType", "Type": { "Category": "Enum", "Name": "GuiType" } }, { "Name": "visible", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InspectMenuEnabledChangedSignal", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InspectPlayerFromHumanoidDescriptionRequest", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InspectPlayerFromUserIdWithCtxRequest", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "ctx", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "KeyPressed", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "modifiers", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MenuClosed", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MenuOpened", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "NativeClose", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "NetworkPausedEnabledChanged", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Open9SliceEditor", "Parameters": [ { "Name": "selectedImageObject", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PurchasePromptShown", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SafeZoneOffsetsChanged", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ShowLeaveConfirmation", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SpecialKeyPressed", "Parameters": [ { "Name": "key", "Type": { "Category": "Enum", "Name": "SpecialKey" } }, { "Name": "modifiers", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UiMessageChanged", "Parameters": [ { "Name": "msgType", "Type": { "Category": "Enum", "Name": "UiMessageType" } }, { "Name": "newUiMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "SendCoreUiNotification", "Parameters": [ { "Name": "title", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "GuiService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "GuidRegistryService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetMotor", "Parameters": [ { "Name": "inputType", "Type": { "Category": "Enum", "Name": "UserInputType" } }, { "Name": "vibrationMotor", "Type": { "Category": "Enum", "Name": "VibrationMotor" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsMotorSupported", "Parameters": [ { "Name": "inputType", "Type": { "Category": "Enum", "Name": "UserInputType" } }, { "Name": "vibrationMotor", "Type": { "Category": "Enum", "Name": "VibrationMotor" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsVibrationSupported", "Parameters": [ { "Name": "inputType", "Type": { "Category": "Enum", "Name": "UserInputType" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMotor", "Parameters": [ { "Name": "inputType", "Type": { "Category": "Enum", "Name": "UserInputType" } }, { "Name": "vibrationMotor", "Type": { "Category": "Enum", "Name": "VibrationMotor" } }, { "Name": "vibrationValues", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "HapticService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "CancelImportHeightmap", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsValidColormap", "Parameters": [ { "Name": "colormapAssetId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsValidHeightmap", "Parameters": [ { "Name": "heightmapAssetId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetImportHeightmapPaused", "Parameters": [ { "Name": "paused", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetHeightmapPreviewAsync", "Parameters": [ { "Name": "heightmapAssetId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ImportHeightmap", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Name": "heightmapAssetId", "Type": { "Category": "DataType", "Name": "Content" } }, { "Name": "colormapAssetId", "Type": { "Category": "DataType", "Name": "Content" } }, { "Name": "defaultMaterial", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ColormapHasUnknownPixels", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ProgressUpdate", "Parameters": [ { "Name": "progressRatio", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "operation", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "HeightmapImporterService", "Superclass": "Instance", "Tags": [ "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "HSRData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "HSRMeshIdData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } } ], "MemoryCategory": "Instances", "Name": "HiddenSurfaceRemovalAsset", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Adornee", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "AlwaysOnTop", "MemberType": "Property", "Name": "DepthMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HighlightDepthMode" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "1, 0, 0", "MemberType": "Property", "Name": "FillColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "0.5", "MemberType": "Property", "Name": "FillTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "LineThickness", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "1, 1, 1", "MemberType": "Property", "Name": "OutlineColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "OutlineTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "Standard", "MemberType": "Property", "Name": "ReservedId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ReservedHighlightId" } } ], "MemoryCategory": "Instances", "Name": "Highlight", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "Hopper", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "Deprecated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetDocumentationUrl", "Parameters": [ { "Name": "partialUrl", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAsync", "Parameters": [ { "Name": "apiUrlPath", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "Default", "Name": "priority", "Type": { "Category": "Enum", "Name": "ThrottlingPriority" } }, { "Default": "Default", "Name": "httpRequestType", "Type": { "Category": "Enum", "Name": "HttpRequestType" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAsyncFullUrl", "Parameters": [ { "Name": "apiUrl", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "Default", "Name": "priority", "Type": { "Category": "Enum", "Name": "ThrottlingPriority" } }, { "Default": "Default", "Name": "httpRequestType", "Type": { "Category": "Enum", "Name": "HttpRequestType" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PostAsync", "Parameters": [ { "Name": "apiUrlPath", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "data", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "Default", "Name": "priority", "Type": { "Category": "Enum", "Name": "ThrottlingPriority" } }, { "Default": "ApplicationJson", "Name": "content_type", "Type": { "Category": "Enum", "Name": "HttpContentType" } }, { "Default": "Default", "Name": "httpRequestType", "Type": { "Category": "Enum", "Name": "HttpRequestType" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PostAsyncFullUrl", "Parameters": [ { "Name": "apiUrl", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "data", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "Default", "Name": "priority", "Type": { "Category": "Enum", "Name": "ThrottlingPriority" } }, { "Default": "ApplicationJson", "Name": "content_type", "Type": { "Category": "Enum", "Name": "HttpContentType" } }, { "Default": "Default", "Name": "httpRequestType", "Type": { "Category": "Enum", "Name": "HttpRequestType" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestAsync", "Parameters": [ { "Name": "requestOptions", "Type": { "Category": "Group", "Name": "Dictionary" } }, { "Default": "Default", "Name": "priority", "Type": { "Category": "Enum", "Name": "ThrottlingPriority" } }, { "Default": "ApplicationJson", "Name": "content_type", "Type": { "Category": "Enum", "Name": "HttpContentType" } }, { "Default": "Default", "Name": "httpRequestType", "Type": { "Category": "Enum", "Name": "HttpRequestType" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestLimitedAsync", "Parameters": [ { "Name": "requestOptions", "Type": { "Category": "Group", "Name": "Dictionary" } }, { "Default": "Default", "Name": "priority", "Type": { "Category": "Enum", "Name": "ThrottlingPriority" } }, { "Default": "ApplicationJson", "Name": "content_type", "Type": { "Category": "Enum", "Name": "HttpContentType" } }, { "Default": "Default", "Name": "httpRequestType", "Type": { "Category": "Enum", "Name": "HttpRequestType" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "HttpRbxApiService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "Cancel", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Start", "Parameters": [ { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "HttpRequest", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "HttpEnabled", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "GenerateGUID", "Parameters": [ { "Default": "true", "Name": "wrapInCurlyBraces", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetHttpEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserAgent", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "JSONDecode", "Parameters": [ { "Name": "input", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "JSONEncode", "Parameters": [ { "Name": "input", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "RequestInternal", "Parameters": [ { "Name": "options", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetHttpEnabled", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UrlEncode", "Parameters": [ { "Name": "input", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetAsync", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "false", "Name": "nocache", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "headers", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PostAsync", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "data", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "ApplicationJson", "Name": "content_type", "Type": { "Category": "Enum", "Name": "HttpContentType" } }, { "Default": "false", "Name": "compress", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "headers", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestAsync", "Parameters": [ { "Name": "requestOptions", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "HttpService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Jump Settings", "Default": "true", "MemberType": "Property", "Name": "AutoJumpEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "true", "MemberType": "Property", "Name": "AutoRotate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Game", "Default": "true", "MemberType": "Property", "Name": "AutomaticScalingEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "BreakJointsOnDeath", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "400", "MemberType": "Property", "Name": "CameraMaxDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "CameraMinDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "Classic", "MemberType": "Property", "Name": "CameraMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "CameraMode" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "CameraOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Behavior", "Default": "OuterBox", "MemberType": "Property", "Name": "CollisionType", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HumanoidCollisionType" } }, { "Category": "Data", "Default": "Viewer", "MemberType": "Property", "Name": "DisplayDistanceType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HumanoidDisplayDistanceType" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "DisplayName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "EvaluateStateMachine", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotBrowsable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "Air", "MemberType": "Property", "Name": "FloorMaterial", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Material" } }, { "Category": "Game", "Default": "100", "MemberType": "Property", "Name": "Health", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "100", "MemberType": "Property", "Name": "HealthDisplayDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "DisplayWhenDamaged", "MemberType": "Property", "Name": "HealthDisplayType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HumanoidHealthDisplayType" } }, { "Category": "Game", "Default": "100", "MemberType": "Property", "Name": "Health_XML", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Game", "Default": "0", "MemberType": "Property", "Name": "HipHeight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1, 1, 1", "MemberType": "Property", "Name": "InternalBodyScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "InternalDisplayName", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "InternalHeadScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "InternalOriginalHipHeight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Control", "Default": "false", "MemberType": "Property", "Name": "Jump", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Jump Settings", "Default": "7.19999981", "MemberType": "Property", "Name": "JumpHeight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Jump Settings", "Default": "50", "MemberType": "Property", "Name": "JumpPower", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Control", "Default": "false", "MemberType": "Property", "Name": "JumpReplicate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "LeftLeg", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Game", "Default": "100", "MemberType": "Property", "Name": "MaxHealth", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Game", "Default": "89", "MemberType": "Property", "Name": "MaxSlopeAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Control", "Default": "0, 0, 0", "MemberType": "Property", "Name": "MoveDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Control", "Default": "0, 0, 0", "MemberType": "Property", "Name": "MoveDirectionInternal", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "100", "MemberType": "Property", "Name": "NameDisplayDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "OccludeAll", "MemberType": "Property", "Name": "NameOcclusion", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NameOcclusion" } }, { "Category": "Data", "Default": "FallingDown", "MemberType": "Property", "Name": "NetworkHumanoidState", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HumanoidStateType" } }, { "Category": "Control", "Default": "false", "MemberType": "Property", "Name": "PlatformStand", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "RequiresNeck", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "R6", "MemberType": "Property", "Name": "RigType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HumanoidRigType" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "RightLeg", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "RootPart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Control", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "SeatPart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Control", "Default": "false", "MemberType": "Property", "Name": "Sit", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "false", "MemberType": "Property", "Name": "Strafe", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "0, 0, 0", "MemberType": "Property", "Name": "TargetPoint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Torso", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Jump Settings", "Default": "true", "MemberType": "Property", "Name": "UseJumpPower", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "0", "MemberType": "Property", "Name": "WalkAngleError", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Control", "Default": "0, 0, 0", "MemberType": "Property", "Name": "WalkDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Game", "Default": "16", "MemberType": "Property", "Name": "WalkSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Control", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "WalkToPart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Control", "Default": "0, 0, 0", "MemberType": "Property", "Name": "WalkToPoint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Game", "Default": "100", "MemberType": "Property", "Name": "maxHealth", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "MaxHealth", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "AddAccessory", "Parameters": [ { "Name": "accessory", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddCustomStatus", "Parameters": [ { "Name": "status", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddStatus", "Parameters": [ { "Default": "Poison", "Name": "status", "Type": { "Category": "Enum", "Name": "Status" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ApplyDescriptionBlocking", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BuildRigFromAttachments", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CacheDefaults", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ChangeState", "Parameters": [ { "Default": "None", "Name": "state", "Type": { "Category": "Enum", "Name": "HumanoidStateType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "EquipTool", "Parameters": [ { "Name": "tool", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAccessories", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAccessoryHandleScale", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "partType", "Type": { "Category": "Enum", "Name": "BodyPartR15" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAppliedDescription", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "HumanoidDescription" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBodyPartR15", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Enum", "Name": "BodyPartR15" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetLimb", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Enum", "Name": "Limb" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMoveVelocity", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "Tags": [ "NotBrowsable" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPlayingAnimationTracks", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPlayingAnimationTracks", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetState", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "HumanoidStateType" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetStateEnabled", "Parameters": [ { "Name": "state", "Type": { "Category": "Enum", "Name": "HumanoidStateType" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetStatuses", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HasCustomStatus", "Parameters": [ { "Name": "status", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HasStatus", "Parameters": [ { "Default": "Poison", "Name": "status", "Type": { "Category": "Enum", "Name": "Status" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadAnimation", "Parameters": [ { "Name": "animation", "Type": { "Category": "Class", "Name": "Animation" } } ], "ReturnType": { "Category": "Class", "Name": "AnimationTrack" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "LoadAnimation", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Move", "Parameters": [ { "Name": "moveDirection", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Default": "false", "Name": "relativeToCamera", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "MoveTo", "Parameters": [ { "Name": "location", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Default": "nil", "Name": "part", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveAccessories", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveCustomStatus", "Parameters": [ { "Name": "status", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveStatus", "Parameters": [ { "Default": "Poison", "Name": "status", "Type": { "Category": "Enum", "Name": "Status" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReplaceBodyPartR15", "Parameters": [ { "Name": "bodyPart", "Type": { "Category": "Enum", "Name": "BodyPartR15" } }, { "Name": "part", "Type": { "Category": "Class", "Name": "BasePart" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetClickToWalkEnabled", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetStateEnabled", "Parameters": [ { "Name": "state", "Type": { "Category": "Enum", "Name": "HumanoidStateType" } }, { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TakeDamage", "Parameters": [ { "Name": "amount", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnequipTools", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "loadAnimation", "Parameters": [ { "Name": "animation", "Type": { "Category": "Class", "Name": "Animation" } } ], "ReturnType": { "Category": "Class", "Name": "AnimationTrack" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "LoadAnimation", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "takeDamage", "Parameters": [ { "Name": "amount", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "TakeDamage", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ApplyDescription", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Default": "Default", "Name": "assetTypeVerification", "Type": { "Category": "Enum", "Name": "AssetTypeVerification" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ApplyDescriptionClientServer", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ApplyDescriptionReset", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Default": "Default", "Name": "assetTypeVerification", "Type": { "Category": "Enum", "Name": "AssetTypeVerification" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PlayEmote", "Parameters": [ { "Name": "emoteName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PlayEmoteAndGetAnimTrackById", "Parameters": [ { "Name": "emoteId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AnimationPlayed", "Parameters": [ { "Name": "animationTrack", "Type": { "Category": "Class", "Name": "AnimationTrack" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "AnimationPlayed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Climbing", "Parameters": [ { "Name": "speed", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ClusterCompositionFinished", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CustomStatusAdded", "Parameters": [ { "Name": "status", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CustomStatusRemoved", "Parameters": [ { "Name": "status", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Died", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "EmoteTriggered", "Parameters": [ { "Name": "success", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "animationTrack", "Type": { "Category": "Class", "Name": "AnimationTrack" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FallingDown", "Parameters": [ { "Name": "active", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FreeFalling", "Parameters": [ { "Name": "active", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GettingUp", "Parameters": [ { "Name": "active", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "HealthChanged", "Parameters": [ { "Name": "health", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Jumping", "Parameters": [ { "Name": "active", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MoveToFinished", "Parameters": [ { "Name": "reached", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlatformStanding", "Parameters": [ { "Name": "active", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Ragdoll", "Parameters": [ { "Name": "active", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Running", "Parameters": [ { "Name": "speed", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Seated", "Parameters": [ { "Name": "active", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "currentSeatPart", "Type": { "Category": "Class", "Name": "BasePart" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerApplyDescription", "Parameters": [ { "Name": "status", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerBreakJoints", "Parameters": [], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerEquipTool", "Parameters": [ { "Name": "tool", "Type": { "Category": "Class", "Name": "Tool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StateChanged", "Parameters": [ { "Name": "old", "Type": { "Category": "Enum", "Name": "HumanoidStateType" } }, { "Name": "new", "Type": { "Category": "Enum", "Name": "HumanoidStateType" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StateEnabledChanged", "Parameters": [ { "Name": "state", "Type": { "Category": "Enum", "Name": "HumanoidStateType" } }, { "Name": "isEnabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StatusAdded", "Parameters": [ { "Name": "status", "Type": { "Category": "Enum", "Name": "Status" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StatusRemoved", "Parameters": [ { "Name": "status", "Type": { "Category": "Enum", "Name": "Status" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Strafing", "Parameters": [ { "Name": "active", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Swimming", "Parameters": [ { "Name": "speed", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Touched", "Parameters": [ { "Name": "touchingPart", "Type": { "Category": "Class", "Name": "BasePart" } }, { "Name": "humanoidPart", "Type": { "Category": "Class", "Name": "BasePart" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Humanoid", "Superclass": "Instance" }, { "Members": [ { "Category": "Accessories", "Default": "[]", "MemberType": "Property", "Name": "AccessoryBlob", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Accessories", "Default": "", "MemberType": "Property", "Name": "BackAccessory", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Scale", "Default": "0.300000012", "MemberType": "Property", "Name": "BodyTypeScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Animation", "Default": "0", "MemberType": "Property", "Name": "ClimbAnimation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Scale", "Default": "1", "MemberType": "Property", "Name": "DepthScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "EmotesDataInternal", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "EquippedEmotesDataInternal", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Body Parts", "Default": "0", "MemberType": "Property", "Name": "Face", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Accessories", "Default": "", "MemberType": "Property", "Name": "FaceAccessory", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Animation", "Default": "0", "MemberType": "Property", "Name": "FallAnimation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Accessories", "Default": "", "MemberType": "Property", "Name": "FrontAccessory", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Clothes", "Default": "0", "MemberType": "Property", "Name": "GraphicTShirt", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Accessories", "Default": "", "MemberType": "Property", "Name": "HairAccessory", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Accessories", "Default": "", "MemberType": "Property", "Name": "HatAccessory", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Body Parts", "Default": "0", "MemberType": "Property", "Name": "Head", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Body Colors", "Default": "0, 0, 0", "MemberType": "Property", "Name": "HeadColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Scale", "Default": "1", "MemberType": "Property", "Name": "HeadScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Scale", "Default": "1", "MemberType": "Property", "Name": "HeightScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Animation", "Default": "0", "MemberType": "Property", "Name": "IdleAnimation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Animation", "Default": "0", "MemberType": "Property", "Name": "JumpAnimation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Body Parts", "Default": "0", "MemberType": "Property", "Name": "LeftArm", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Body Colors", "Default": "0, 0, 0", "MemberType": "Property", "Name": "LeftArmColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Body Parts", "Default": "0", "MemberType": "Property", "Name": "LeftLeg", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Body Colors", "Default": "0, 0, 0", "MemberType": "Property", "Name": "LeftLegColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Animation", "Default": "0", "MemberType": "Property", "Name": "MoodAnimation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Accessories", "Default": "", "MemberType": "Property", "Name": "NeckAccessory", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Animation", "Default": "-1", "MemberType": "Property", "Name": "NumberEmotesLoaded", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Clothes", "Default": "0", "MemberType": "Property", "Name": "Pants", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Scale", "Default": "1", "MemberType": "Property", "Name": "ProportionScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Body Parts", "Default": "0", "MemberType": "Property", "Name": "RightArm", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Body Colors", "Default": "0, 0, 0", "MemberType": "Property", "Name": "RightArmColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Body Parts", "Default": "0", "MemberType": "Property", "Name": "RightLeg", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Body Colors", "Default": "0, 0, 0", "MemberType": "Property", "Name": "RightLegColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Animation", "Default": "0", "MemberType": "Property", "Name": "RunAnimation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Clothes", "Default": "0", "MemberType": "Property", "Name": "Shirt", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Accessories", "Default": "", "MemberType": "Property", "Name": "ShouldersAccessory", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Animation", "Default": "0", "MemberType": "Property", "Name": "SwimAnimation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Body Parts", "Default": "0", "MemberType": "Property", "Name": "Torso", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Body Colors", "Default": "0, 0, 0", "MemberType": "Property", "Name": "TorsoColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Accessories", "Default": "", "MemberType": "Property", "Name": "WaistAccessory", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Animation", "Default": "0", "MemberType": "Property", "Name": "WalkAnimation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Scale", "Default": "1", "MemberType": "Property", "Name": "WidthScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "AddEmote", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAccessories", "Parameters": [ { "Name": "includeRigidAccessories", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetEmotes", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetEquippedEmotes", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveEmote", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetAccessories", "Parameters": [ { "Name": "accessories", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "includeRigidAccessories", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEmotes", "Parameters": [ { "Name": "emotes", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEquippedEmotes", "Parameters": [ { "Name": "equippedEmotes", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "EmotesChanged", "Parameters": [ { "Name": "newEmotes", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "EquippedEmotesChanged", "Parameters": [ { "Name": "newEquippedEmotes", "Type": { "Category": "Group", "Name": "Array" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "HumanoidDescription", "Superclass": "Instance" }, { "Members": [ { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "ChainRoot", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "EndEffector", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "EndEffectorOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Offset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Pole", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Behavior", "Default": "0", "MemberType": "Property", "Name": "Priority", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Behavior", "Default": "0.0500000007", "MemberType": "Property", "Name": "SmoothTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Target", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Behavior", "Default": "Transform", "MemberType": "Property", "Name": "Type", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "IKControlType" } }, { "Category": "Behavior", "Default": "1", "MemberType": "Property", "Name": "Weight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "GetChainCount", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetChainLength", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetNodeLocalCFrame", "Parameters": [ { "Name": "index", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetNodeWorldCFrame", "Parameters": [ { "Name": "index", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRawFinalTarget", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSmoothedFinalTarget", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Animation", "Name": "IKControl", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ILegacyStudioBridge", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "LegacyStudioBridge", "Superclass": "ILegacyStudioBridge", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "ClearUserLayers", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBrowserTrackerLayerLoadingStatus", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "IXPLoadingStatus" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBrowserTrackerLayerVariables", "Parameters": [ { "Name": "layerName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBrowserTrackerStatusForLayer", "Parameters": [ { "Name": "layerName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Enum", "Name": "IXPLoadingStatus?" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRegisteredUserLayersToStatus", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserLayerLoadingStatus", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "IXPLoadingStatus" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserLayerVariables", "Parameters": [ { "Name": "layerName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserStatusForLayer", "Parameters": [ { "Name": "layerName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Enum", "Name": "IXPLoadingStatus?" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InitializeUserLayers", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LogBrowserTrackerLayerExposure", "Parameters": [ { "Name": "layerName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LogUserLayerExposure", "Parameters": [ { "Name": "layerName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterUserLayers", "Parameters": [ { "Name": "userLayers", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnBrowserTrackerLayerLoadingStatusChanged", "Parameters": [ { "Name": "status", "Type": { "Category": "Enum", "Name": "IXPLoadingStatus" } } ], "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnUserLayerLoadingStatusChanged", "Parameters": [ { "Name": "status", "Type": { "Category": "Enum", "Name": "IXPLoadingStatus" } } ], "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "IXPService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "AddPathsToBundle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "0.10000000000000000555", "MemberType": "Property", "Name": "BuildDebouncePeriod", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "HighCompression", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "SerializePatch", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "ZstdCompression", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "IncrementalPatchBuilder", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Delta", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "Unknown", "MemberType": "Property", "Name": "KeyCode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "KeyCode" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "State", "Default": "None", "MemberType": "Property", "Name": "UserInputState", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "UserInputState" } }, { "Category": "Data", "Default": "None", "MemberType": "Property", "Name": "UserInputType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "UserInputType" } }, { "MemberType": "Function", "Name": "IsModifierKeyDown", "Parameters": [ { "Name": "modifierKey", "Type": { "Category": "Enum", "Name": "ModifierKey" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "InputObject", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "AllowClientInsertModels", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "AllowInsertFreeModels", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated", "NotBrowsable", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "ApproveAssetId", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ApproveAssetVersionId", "Parameters": [ { "Name": "assetVersionId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetLocalFileContents", "Parameters": [ { "Name": "contentId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Insert", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadLocalAsset", "Parameters": [ { "Name": "assetPath", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadPackageAsset", "Parameters": [ { "Name": "url", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateMeshPartAsync", "Parameters": [ { "Name": "meshId", "Type": { "Category": "DataType", "Name": "Content" } }, { "Name": "collisionFidelity", "Type": { "Category": "Enum", "Name": "CollisionFidelity" } }, { "Name": "renderFidelity", "Type": { "Category": "Enum", "Name": "RenderFidelity" } } ], "ReturnType": { "Category": "Class", "Name": "MeshPart" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBaseCategories", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields", "Deprecated", { "PreferredDescriptorName": "GetBaseSets", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBaseSets", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCollection", "Parameters": [ { "Name": "categoryId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFreeDecals", "Parameters": [ { "Name": "searchText", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "pageNum", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFreeModels", "Parameters": [ { "Name": "searchText", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "pageNum", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetLatestAssetVersionAsync", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserCategories", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields", "Deprecated", { "PreferredDescriptorName": "GetUserSets", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserSets", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadAsset", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadAssetVersion", "Parameters": [ { "Name": "assetVersionId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadAssetWithFormat", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "format", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadPackageAssetAsync", "Parameters": [ { "Name": "url", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "loadAsset", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields", "Deprecated", { "PreferredDescriptorName": "LoadAsset", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InternalDelete", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "InsertService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "AutoSync", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Path", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Target", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } } ], "MemoryCategory": "Instances", "Name": "InternalSyncItem", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "InternalSyncService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Active", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "C0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "C1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Part0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Part1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "part1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Part1", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } } ], "MemoryCategory": "PhysicsParts", "Name": "JointInstance", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BaseAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "PhysicsParts", "Name": "DynamicRotate", "Superclass": "JointInstance", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "RotateP", "Superclass": "DynamicRotate", "Tags": [ "Deprecated", { "PreferredDescriptorName": "HingeConstraint", "ThreadSafety": "Unknown" } ] }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "RotateV", "Superclass": "DynamicRotate", "Tags": [ "Deprecated", { "PreferredDescriptorName": "HingeConstraint", "ThreadSafety": "Unknown" } ] }, { "Members": [ { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "F0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "F1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "F2", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "F3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "PhysicsParts", "Name": "Glue", "Superclass": "JointInstance", "Tags": [ "Deprecated", { "PreferredDescriptorName": "WeldConstraint", "ThreadSafety": "Unknown" } ] }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "ManualSurfaceJointInstance", "Superclass": "JointInstance", "Tags": [ "NotCreatable", "Deprecated", { "PreferredDescriptorName": "WeldConstraint", "ThreadSafety": "Unknown" } ] }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "ManualGlue", "Superclass": "ManualSurfaceJointInstance", "Tags": [ "Deprecated", { "PreferredDescriptorName": "WeldConstraint", "ThreadSafety": "Unknown" } ] }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "ManualWeld", "Superclass": "ManualSurfaceJointInstance", "Tags": [ "Deprecated", { "PreferredDescriptorName": "WeldConstraint", "ThreadSafety": "Unknown" } ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "CurrentAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "DesiredAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "MaxVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "SetDesiredAngle", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "Motor", "Superclass": "JointInstance" }, { "Members": [ { "Category": "Animatable", "Default": "", "MemberType": "Property", "Name": "ChildName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Animatable", "Default": "", "MemberType": "Property", "Name": "ParentName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Transform", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } } ], "MemoryCategory": "PhysicsParts", "Name": "Motor6D", "Superclass": "Motor" }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "Rotate", "Superclass": "JointInstance", "Tags": [ "Deprecated", { "PreferredDescriptorName": "HingeConstraint", "ThreadSafety": "Unknown" } ] }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "Snap", "Superclass": "JointInstance", "Tags": [ "Deprecated", { "PreferredDescriptorName": "WeldConstraint", "ThreadSafety": "Unknown" } ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "CurrentAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "DesiredAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Hole", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Hole" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "MaxVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "PhysicsParts", "Name": "VelocityMotor", "Superclass": "JointInstance" }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "Weld", "Superclass": "JointInstance" }, { "Members": [ { "MemberType": "Function", "Name": "ClearJoinAfterMoveJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateJoinAfterMoveJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetJoinAfterMoveInstance", "Parameters": [ { "Name": "joinInstance", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetJoinAfterMoveTarget", "Parameters": [ { "Name": "joinTarget", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowPermissibleJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "JointsService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "Deprecated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "KeyboardService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Time", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "AddMarker", "Parameters": [ { "Name": "marker", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddPose", "Parameters": [ { "Name": "pose", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMarkers", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPoses", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveMarker", "Parameters": [ { "Name": "marker", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemovePose", "Parameters": [ { "Name": "pose", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Animation", "Name": "Keyframe", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Animation", "Name": "KeyframeMarker", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "GetKeyframeSequence", "Parameters": [ { "Name": "assetId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetKeyframeSequenceAsync", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetKeyframeSequenceById", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "useCache", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetKeyframeSequenceAsync", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMemStats", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterActiveKeyframeSequence", "Parameters": [ { "Name": "keyframeSequence", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "DataType", "Name": "Content" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterKeyframeSequence", "Parameters": [ { "Name": "keyframeSequence", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "DataType", "Name": "Content" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAnimations", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetKeyframeSequenceAsync", "Parameters": [ { "Name": "assetId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Animation", "Name": "KeyframeSequenceProvider", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "LSPFileSyncService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "LanguageService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Brightness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Shadows", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "Light", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Range", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "PointLight", "Superclass": "Light" }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Angle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Face", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NormalId" } }, { "Category": "Appearance", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Range", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "SpotLight", "Superclass": "Light" }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Angle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Face", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NormalId" } }, { "Category": "Appearance", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Range", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "SurfaceLight", "Superclass": "Light" }, { "Members": [ { "Category": "Appearance", "Default": "0.5, 0.5, 0.5", "MemberType": "Property", "Name": "Ambient", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "Brightness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "14", "MemberType": "Property", "Name": "ClockTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0, 0, 0", "MemberType": "Property", "Name": "ColorShift_Bottom", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0, 0, 0", "MemberType": "Property", "Name": "ColorShift_Top", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "EnvironmentDiffuseScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "EnvironmentSpecularScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Exposure", "Default": "0", "MemberType": "Property", "Name": "ExposureCompensation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Fog", "Default": "0.75, 0.75, 0.75", "MemberType": "Property", "Name": "FogColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Fog", "Default": "100000", "MemberType": "Property", "Name": "FogEnd", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Fog", "Default": "0", "MemberType": "Property", "Name": "FogStart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "41.7332993", "MemberType": "Property", "Name": "GeographicLatitude", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "GlobalShadows", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0.5, 0.5, 0.5", "MemberType": "Property", "Name": "OutdoorAmbient", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "true", "MemberType": "Property", "Name": "Outlines", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0.7, 0.7, 0.72", "MemberType": "Property", "Name": "ShadowColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0.5", "MemberType": "Property", "Name": "ShadowSoftness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "Compatibility", "MemberType": "Property", "Name": "Technology", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Technology" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "TempUseNewSkyRemovalBehaviour", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "14:00:00", "MemberType": "Property", "Name": "TimeOfDay", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "GetMinutesAfterMidnight", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "double" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMoonDirection", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMoonPhase", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSunDirection", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMinutesAfterMidnight", "Parameters": [ { "Name": "minutes", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "getMinutesAfterMidnight", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "double" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetMinutesAfterMidnight", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "setMinutesAfterMidnight", "Parameters": [ { "Name": "minutes", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SetMinutesAfterMidnight", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LightingChanged", "Parameters": [ { "Name": "skyChanged", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Lighting", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Event", "Name": "BeginEdit", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "EndEdit", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FailedToOpen", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "legalToOpenLocal", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "KickFromEdit", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenedWithSource", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "source", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SendOperation", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "op", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "LiveScriptingService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "Flush", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetItem", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetItem", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "WhenLoaded", "Parameters": [ { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ItemWasSet", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StoreWasCleared", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "LocalStorageService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "AppStorageService", "Superclass": "LocalStorageService", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "UserStorageService", "Superclass": "LocalStorageService", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Behavior", "Default": "", "MemberType": "Property", "Name": "ForcePlayModeGameLocaleId", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Behavior", "Default": "", "MemberType": "Property", "Name": "ForcePlayModeRobloxLocaleId", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Localization", "Default": "", "MemberType": "Property", "Name": "GameSourceLanguageId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Localization", "Default": "false", "MemberType": "Property", "Name": "IsTextScraperRunning", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Localization", "Default": "", "MemberType": "Property", "Name": "LocaleManifest", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Behavior", "Default": "", "MemberType": "Property", "Name": "RobloxForcePlayModeGameLocaleId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Behavior", "Default": "", "MemberType": "Property", "Name": "RobloxForcePlayModeRobloxLocaleId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Localization", "Default": "", "MemberType": "Property", "Name": "RobloxLocaleId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Localization", "Default": "false", "MemberType": "Property", "Name": "ShouldUseCloudTable", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Localization", "Default": "", "MemberType": "Property", "Name": "SystemLocaleId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "GetCorescriptLocalizations", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTableEntries", "Parameters": [ { "Default": "nil", "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTranslatorForPlayer", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetRobloxLocaleId", "Parameters": [ { "Name": "locale", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartTextScraper", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StopTextScraper", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCountryRegionForPlayerAsync", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTranslatorForLocaleAsync", "Parameters": [ { "Name": "locale", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTranslatorForPlayerAsync", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptDownloadGameTableToCSV", "Parameters": [ { "Name": "table", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptExportToCSVs", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptImportFromCSVs", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptUploadCSVToGameTable", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AutoTranslateWillRun", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TextScraperClientMessageWithPlayerSignal", "Parameters": [ { "Name": "version", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "message", "Type": { "Category": "Group", "Name": "Tuple" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "LocalizationService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Behavior", "Default": "[]", "MemberType": "Property", "Name": "Contents", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Localization", "Default": "en-us", "MemberType": "Property", "Name": "DevelopmentLanguage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "SourceLocaleId", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Localization", "Default": "false", "MemberType": "Property", "Name": "IsExemptFromUGCAnalytics", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Root", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "RootLocalizationTable", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Localization", "Default": "en-us", "MemberType": "Property", "Name": "SourceLocaleId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "GetContents", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetEntries", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetEntries", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetString", "Parameters": [ { "Name": "targetLocaleId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetTranslator", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTranslator", "Parameters": [ { "Name": "localeId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveEntry", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "source", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "context", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveEntryValue", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "source", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "context", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "localeId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveKey", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "RemoveEntry", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveTargetLocale", "Parameters": [ { "Name": "localeId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetContents", "Parameters": [ { "Name": "contents", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SetEntries", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEntries", "Parameters": [ { "Name": "entries", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEntry", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "targetLocaleId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SetEntryValue", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEntryContext", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "source", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "context", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "newContext", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEntryExample", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "source", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "context", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "example", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEntryKey", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "source", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "context", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "newKey", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEntrySource", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "source", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "context", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "newSource", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEntryValue", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "source", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "context", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "localeId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetIsExemptFromUGCAnalytics", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "LocalizationTable", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "CloudLocalizationTable", "Superclass": "LocalizationTable", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "EntityData", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SharedString" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "EntityLodEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "EntityPosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "EntityScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "EntitySource", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } } ], "MemoryCategory": "Instances", "Name": "LodDataEntity", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "LodDataService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "ClearOutput", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ExecuteScript", "Parameters": [ { "Name": "source", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetHttpResultHistory", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetLogHistory", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestHttpResultApproved", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestServerHttpResult", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestServerOutput", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "HttpResultOut", "Parameters": [ { "Name": "httpResult", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MessageOut", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "messageType", "Type": { "Category": "Enum", "Name": "MessageType" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnHttpResultApproved", "Parameters": [ { "Name": "isApproved", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestHttpResultApprovedSignal", "Parameters": [ { "Name": "requestingPlayer", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestScriptExecutionSignal", "Parameters": [ { "Name": "requestingPlayer", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "source", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestServerHttpResultSignal", "Parameters": [ { "Name": "requestingPlayer", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestServerOutputSignal", "Parameters": [ { "Name": "requestingPlayer", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestSettingsChange", "Parameters": [ { "Name": "requestingPlayer", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "expressivePrinting", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerHttpResultOut", "Parameters": [ { "Name": "httpResult", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerMessageOut", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "messageType", "Type": { "Category": "Enum", "Name": "MessageType" } }, { "Name": "timestamp", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerVariantMessageOut", "Parameters": [ { "Name": "data", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "LogService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "Logout", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptLogin", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LoginFailed", "Parameters": [ { "Name": "loginError", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LoginSucceeded", "Parameters": [ { "Name": "username", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "LoginService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "LuaSettings", "Superclass": "Instance", "Tags": [ "NotCreatable", "Settings" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CachedRemoteSource", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "ProtectedString" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CachedRemoteSourceLoadState", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CurrentEditor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HasAssociatedDrafts", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsDifferentFromFileSystem", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "OriginalScriptGuid", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RuntimeSource", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SandboxedSource", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "ProtectedString" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ScriptGuid", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SyncingEditorText", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Event", "Name": "LockGrantedOrNot", "Parameters": [ { "Name": "granted", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LostLock", "Parameters": [], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestLock", "Parameters": [], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestScriptHash", "Parameters": [], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "VerifyScriptHash", "Parameters": [ { "Name": "hash", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "LuaSourceContainer", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Disabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LinkedSource", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RunContext", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RunContext" } } ], "MemoryCategory": "Script", "Name": "BaseScript", "Superclass": "LuaSourceContainer", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Script", "Name": "CoreScript", "Superclass": "BaseScript", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Source", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "ProtectedString" } }, { "MemberType": "Function", "Name": "GetHash", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Script", "Name": "Script", "Superclass": "BaseScript" }, { "Members": [], "MemoryCategory": "Script", "Name": "LocalScript", "Superclass": "Script" }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "Confidential", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "LinkedSource", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Source", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "ProtectedString" } } ], "MemoryCategory": "Script", "Name": "ModuleScript", "Superclass": "LuaSourceContainer" }, { "Members": [], "MemoryCategory": "Instances", "Name": "LuaWebService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "LuauScriptAnalyzerService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Length", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ValuesAndTimes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "MemberType": "Function", "Name": "GetMarkerAtIndex", "Parameters": [ { "Name": "index", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMarkers", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertMarkerAtTime", "Parameters": [ { "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "marker", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveMarkerAtIndex", "Parameters": [ { "Name": "startingIndex", "Type": { "Category": "Primitive", "Name": "int" } }, { "Default": "1", "Name": "count", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MarkerCurve", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "PlayerCanMakePurchases", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PrepareCollectiblesPurchase", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "collectibleItemId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "collectibleItemInstanceId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "collectibleProductId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "expectedPrice", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptBundlePurchase", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "bundleId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptCollectiblesPurchase", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "collectibleItemId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "collectibleItemInstanceId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "collectibleProductId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "expectedPrice", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptGamePassPurchase", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "gamePassId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptNativePurchase", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptNativePurchaseWithLocalPlayer", "Parameters": [ { "Name": "productId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptPremiumPurchase", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptProductPurchase", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Default": "true", "Name": "equipIfPurchased", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "Default", "Name": "currencyType", "Type": { "Category": "Enum", "Name": "CurrencyType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptPurchase", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Default": "true", "Name": "equipIfPurchased", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "Default", "Name": "currencyType", "Type": { "Category": "Enum", "Name": "CurrencyType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptRobloxPurchase", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "equipIfPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptSubscriptionCancellation", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "subscriptionId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptSubscriptionPurchase", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "subscriptionId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptThirdPartyPurchase", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReportAssetSale", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "robuxAmount", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReportRobuxUpsellStarted", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalAssetTypePurchased", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "assetType", "Type": { "Category": "Enum", "Name": "AssetType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalClientPurchaseSuccess", "Parameters": [ { "Name": "ticket", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "playerId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalMockPurchasePremium", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalPromptBundlePurchaseFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "bundleId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "success", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalPromptGamePassPurchaseFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "gamePassId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "success", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalPromptPremiumPurchaseFinished", "Parameters": [ { "Name": "didTryPurchasing", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalPromptProductPurchaseFinished", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "success", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalPromptPurchaseFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "success", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalPromptSubscriptionCancellationFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "subscriptionId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "wasCanceled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalPromptSubscriptionPurchaseFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "subscriptionId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "wasPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalServerLuaDialogClosed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetDeveloperProductsAsync", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetProductInfo", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Default": "Asset", "Name": "infoType", "Type": { "Category": "Enum", "Name": "InfoType" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRobuxBalance", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsPlayerSubscribed", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "subscriptionId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PerformPurchase", "Parameters": [ { "Name": "infoType", "Type": { "Category": "Enum", "Name": "InfoType" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "expectedPrice", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "requestId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "isRobloxPurchase", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "", "Name": "collectibleItemId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "collectibleProductId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "idempotencyKey", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "purchaseAuthToken", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PerformPurchaseV2", "Parameters": [ { "Name": "infoType", "Type": { "Category": "Enum", "Name": "InfoType" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "expectedPrice", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "requestId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "isRobloxPurchase", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "collectiblesProductDetails", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PlayerOwnsAsset", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PlayerOwnsBundle", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "bundleId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UserOwnsGamePassAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "gamePassId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AssetTypePurchased", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "assetType", "Type": { "Category": "Enum", "Name": "AssetType" } } ], "Security": "RobloxScriptSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ClientLuaDialogRequested", "Parameters": [ { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ClientPurchaseSuccess", "Parameters": [ { "Name": "ticket", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "playerId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ConfirmPlayerMembership", "Parameters": [], "Security": "RobloxScriptSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LuaDialogCallbackSignal", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxScriptSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MockPurchasePremium", "Parameters": [], "Security": "RobloxScriptSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MockPurchaseSubscription", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "subscriptionId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "NativePurchaseFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "wasPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "NativePurchaseFinishedWithLocalPlayer", "Parameters": [ { "Name": "productId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "wasPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PrepareCollectiblesPurchaseRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "collectibleItemId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "collectibleItemInstanceId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "collectibleProductId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "expectedPrice", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptBundlePurchaseFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "bundleId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "wasPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptBundlePurchaseRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "bundleId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptCollectiblesPurchaseRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "collectibleItemId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "collectibleItemInstanceId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "collectibleProductId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "expectedPrice", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "idempotencyKey", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "purchaseAuthToken", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptGamePassPurchaseFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "gamePassId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "wasPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptGamePassPurchaseRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "gamePassId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptNativePurchaseRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptNativePurchaseRequestedWithLocalPlayer", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptPremiumPurchaseFinished", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptPremiumPurchaseRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptProductPurchaseFinished", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "isPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptProductPurchaseRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "equipIfPurchased", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "currencyType", "Type": { "Category": "Enum", "Name": "CurrencyType" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptPurchaseFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "isPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptPurchaseRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "equipIfPurchased", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "currencyType", "Type": { "Category": "Enum", "Name": "CurrencyType" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptPurchaseRequestedV2", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "equipIfPurchased", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "currencyType", "Type": { "Category": "Enum", "Name": "CurrencyType" } }, { "Name": "idempotencyKey", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "purchaseAuthToken", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptRobloxPurchaseRequested", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "equipIfPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptSubscriptionCancellationFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "subscriptionId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "wasCanceled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptSubscriptionCancellationRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "subscriptionId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptSubscriptionPurchaseFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "subscriptionId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "wasPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptSubscriptionPurchaseRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "subscriptionId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptThirdPartyPurchaseRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerPurchaseVerification", "Parameters": [ { "Name": "serverResponseTable", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ThirdPartyPurchaseFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "receipt", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "wasPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "ProcessReceipt", "Parameters": [ { "Name": "receiptInfo", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Enum", "Name": "ProductPurchaseDecision" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MarketplaceService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "StartSession", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "MaterialGenerationSession" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAccountingBalanceAsync", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "double" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RefillAccountingBalanceAsync", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "double" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MaterialGenerationService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GenerateImagesAsync", "Parameters": [ { "Name": "prompt", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "options", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GenerateMaterialMapsAsync", "Parameters": [ { "Name": "imageId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UploadMaterialAsync", "Parameters": [ { "Name": "imageId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MaterialGenerationSession", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Material Overrides", "Default": "Asphalt", "MemberType": "Property", "Name": "AsphaltName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Basalt", "MemberType": "Property", "Name": "BasaltName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Brick", "MemberType": "Property", "Name": "BrickName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Cobblestone", "MemberType": "Property", "Name": "CobblestoneName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Concrete", "MemberType": "Property", "Name": "ConcreteName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "CorrodedMetal", "MemberType": "Property", "Name": "CorrodedMetalName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "CrackedLava", "MemberType": "Property", "Name": "CrackedLavaName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "DiamondPlate", "MemberType": "Property", "Name": "DiamondPlateName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Fabric", "MemberType": "Property", "Name": "FabricName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Foil", "MemberType": "Property", "Name": "FoilName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Glacier", "MemberType": "Property", "Name": "GlacierName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Granite", "MemberType": "Property", "Name": "GraniteName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Grass", "MemberType": "Property", "Name": "GrassName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Ground", "MemberType": "Property", "Name": "GroundName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Ice", "MemberType": "Property", "Name": "IceName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "LeafyGrass", "MemberType": "Property", "Name": "LeafyGrassName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Limestone", "MemberType": "Property", "Name": "LimestoneName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Marble", "MemberType": "Property", "Name": "MarbleName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Metal", "MemberType": "Property", "Name": "MetalName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Mud", "MemberType": "Property", "Name": "MudName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Pavement", "MemberType": "Property", "Name": "PavementName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Pebble", "MemberType": "Property", "Name": "PebbleName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Plastic", "MemberType": "Property", "Name": "PlasticName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Rock", "MemberType": "Property", "Name": "RockName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Salt", "MemberType": "Property", "Name": "SaltName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Sand", "MemberType": "Property", "Name": "SandName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Sandstone", "MemberType": "Property", "Name": "SandstoneName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Slate", "MemberType": "Property", "Name": "SlateName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "SmoothPlastic", "MemberType": "Property", "Name": "SmoothPlasticName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Snow", "MemberType": "Property", "Name": "SnowName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Pack", "Default": "false", "MemberType": "Property", "Name": "Use2022Materials", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Material Pack", "Default": "false", "MemberType": "Property", "Name": "Use2022MaterialsXml", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Material Overrides", "Default": "Wood", "MemberType": "Property", "Name": "WoodName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "WoodPlanks", "MemberType": "Property", "Name": "WoodPlanksName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "GetBaseMaterialOverride", "Parameters": [ { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMaterialOverrideChanged", "Parameters": [ { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptSignal" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMaterialVariant", "Parameters": [ { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "MaterialVariant" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetOverrideStatus", "Parameters": [ { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Enum", "Name": "PropertyStatus" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetBaseMaterialOverride", "Parameters": [ { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OverrideStatusChanged", "Parameters": [ { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MaterialService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Internal", "Default": "0", "MemberType": "Property", "Name": "AvgMetalness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Internal", "Default": "127", "MemberType": "Property", "Name": "AvgRoughness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Appearance", "Default": "Plastic", "MemberType": "Property", "Name": "BaseMaterial", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Material" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "ColorMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Material", "Default": "default", "MemberType": "Property", "Name": "CustomPhysicalProperties", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "PhysicalProperties" } }, { "Category": "Appearance", "Default": "Regular", "MemberType": "Property", "Name": "MaterialPattern", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "MaterialPattern" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "MetalnessMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "NormalMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "RoughnessMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "10", "MemberType": "Property", "Name": "StudsPerTile", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Internal", "Default": "", "MemberType": "Property", "Name": "TexturePack", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "Instances", "Name": "MaterialVariant", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "Disconnect", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MemStorageConnection", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "Bind", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Class", "Name": "MemStorageConnection" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BindAndFire", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Class", "Name": "MemStorageConnection" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Call", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "input", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Fire", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetItem", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "defaultValue", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HasItem", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveItem", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetItem", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MemStorageService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "AddAsync", "Parameters": [ { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "expiration", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Default": "0", "Name": "priority", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReadAsync", "Parameters": [ { "Name": "count", "Type": { "Category": "Primitive", "Name": "int" } }, { "Default": "false", "Name": "allOrNothing", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "-1", "Name": "waitTimeout", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveAsync", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MemoryStoreQueue", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetQueue", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "30", "Name": "invisibilityTimeout", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Class", "Name": "MemoryStoreQueue" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSortedMap", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "MemoryStoreSortedMap" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MemoryStoreService", "Superclass": "Instance", "Tags": [ "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRangeAsync", "Parameters": [ { "Name": "direction", "Type": { "Category": "Enum", "Name": "SortDirection" } }, { "Name": "count", "Type": { "Category": "Primitive", "Name": "int" } }, { "Default": "", "Name": "exclusiveLowerBound", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "exclusiveUpperBound", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "expiration", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UpdateAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "transformFunction", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "expiration", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MemoryStoreSortedMap", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "Text", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "Message", "Superclass": "Instance", "Tags": [ "Deprecated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "Hint", "Superclass": "Message", "Tags": [ "Deprecated" ] }, { "Members": [ { "MemberType": "Function", "Name": "Disconnect", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MessageBusConnection", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "Call", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "input", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetLast", "Parameters": [ { "Name": "mid", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMessageId", "Parameters": [ { "Name": "domainName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "messageName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetProtocolMethodRequestMessageId", "Parameters": [ { "Name": "protocolName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "methodName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetProtocolMethodResponseMessageId", "Parameters": [ { "Name": "protocolName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "methodName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "MakeRequest", "Parameters": [ { "Name": "protocolName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "methodName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "message", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "customTelemetryData", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Publish", "Parameters": [ { "Name": "mid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "params", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PublishProtocolMethodRequest", "Parameters": [ { "Name": "protocolName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "methodName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "message", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "customTelemetryData", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PublishProtocolMethodResponse", "Parameters": [ { "Name": "protocolName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "methodName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "message", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "responseCode", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "customTelemetryData", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetRequestHandler", "Parameters": [ { "Name": "protocolName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "methodName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Subscribe", "Parameters": [ { "Name": "mid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "once", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "sticky", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SubscribeToProtocolMethodRequest", "Parameters": [ { "Name": "protocolName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "methodName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "once", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "sticky", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SubscribeToProtocolMethodResponse", "Parameters": [ { "Name": "protocolName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "methodName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "once", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "sticky", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MessageBusService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "PublishAsync", "Parameters": [ { "Name": "topic", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "message", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SubscribeAsync", "Parameters": [ { "Name": "topic", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptConnection" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MessagingService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Condition", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "ContinueExecution", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "4", "MemberType": "Property", "Name": "Id", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "IsLogpoint", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Line", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "LogMessage", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "RemoveOnHit", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Script", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "true", "MemberType": "Property", "Name": "Valid", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "GetContextBreakpoints", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Remove", "Parameters": [ { "Name": "status", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetChildBreakpointEnabledByScriptAndContext", "Parameters": [ { "Name": "script", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "contextGST", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetContextEnabled", "Parameters": [ { "Name": "context", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetContinueExecution", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEnabled", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetLine", "Parameters": [ { "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "status", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetRemoveOnHit", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MetaBreakpoint", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "0 1 2 ", "MemberType": "Property", "Name": "ContextDataInternal", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "MetaBreakpointContext", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "AddBreakpoint", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "condition", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBreakpointById", "Parameters": [ { "Name": "metaBreakpointId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Class", "Name": "MetaBreakpoint" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveBreakpointById", "Parameters": [ { "Name": "metaBreakpointId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MetaBreakpointAdded", "Parameters": [ { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "MetaBreakpoint" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MetaBreakpointChanged", "Parameters": [ { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "MetaBreakpoint" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MetaBreakpointRemoved", "Parameters": [ { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "MetaBreakpoint" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MetaBreakpointSetChanged", "Parameters": [ { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "MetaBreakpoint" } }, { "Name": "detail", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MetaBreakpointManager", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Hit", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Icon", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Origin", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Target", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TargetFilter", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TargetSurface", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NormalId" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UnitRay", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Ray" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ViewSizeX", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ViewSizeY", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "X", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Y", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "hit", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Hit", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "target", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Target", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "MemberType": "Event", "Name": "Button1Down", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Button1Up", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Button2Down", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Button2Up", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Idle", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "KeyDown", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "InputBegan", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "KeyUp", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "InputEnded", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Move", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "WheelBackward", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "WheelForward", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "keyDown", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "InputBegan", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Mouse", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "PlayerMouse", "Superclass": "Mouse", "Tags": [ "NotCreatable" ] }, { "Members": [ { "MemberType": "Event", "Name": "DragEnter", "Parameters": [ { "Name": "instances", "Type": { "Category": "DataType", "Name": "Objects" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PluginMouse", "Superclass": "Mouse", "Tags": [ "NotCreatable" ] }, { "Members": [ { "MemberType": "Event", "Name": "MouseEnterStudioViewport", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseLeaveStudioViewport", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MouseService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FocusedDataModelSession", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "MemberType": "Event", "Name": "DataModelSessionEnded", "Parameters": [ { "Name": "dataModelSession", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DataModelSessionStarted", "Parameters": [ { "Name": "dataModelSession", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MultipleDocumentInterfaceInstance", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Event", "Name": "Received", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "NetworkMarker", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "MemberType": "Function", "Name": "SetOutgoingKBPSLimit", "Parameters": [ { "Name": "limit", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "NetworkPeer", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "MemberType": "Event", "Name": "ConnectionAccepted", "Parameters": [ { "Name": "peer", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "replicator", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ConnectionFailed", "Parameters": [ { "Name": "peer", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "code", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "reason", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "NetworkClient", "Superclass": "NetworkPeer", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "EncryptStringForPlayerId", "Parameters": [ { "Name": "toEncrypt", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "playerId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "NetworkServer", "Superclass": "NetworkPeer", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetPlayer", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "NetworkReplicator", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "RequestRCCProfilerData", "Parameters": [ { "Name": "frameRate", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "timeFrame", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestServerScriptProfiling", "Parameters": [ { "Name": "start", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "frequency", "Type": { "Category": "Primitive", "Name": "int?" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestServerStats", "Parameters": [ { "Name": "request", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RCCProfilerDataComplete", "Parameters": [ { "Name": "success", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StatsReceived", "Parameters": [ { "Name": "stats", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ClientReplicator", "Superclass": "NetworkReplicator", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ServerReplicator", "Superclass": "NetworkReplicator", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EmulatedTotalMemoryInMB", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FreeMemoryMBytes", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Proxy Settings", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HttpProxyEnabled", "Security": { "Read": "None", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Proxy Settings", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HttpProxyURL", "Security": { "Read": "None", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Diagnostics", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IncomingReplicationLag", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Proxy Settings", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "OpenCertManagerDialog", "Security": { "Read": "NotAccessibleSecurity", "Write": "NotAccessibleSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Diagnostics", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PrintJoinSizeBreakdown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Diagnostics", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PrintPhysicsErrors", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Diagnostics", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PrintStreamInstanceQuota", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Advanced", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RandomizeJoinInstanceOrder", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RenderStreamedRegions", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ShowActiveAnimationAsset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "NetworkSettings", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotBrowsable" ] }, { "Members": [ { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Parts", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Part0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Parts", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Part1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } } ], "MemoryCategory": "PhysicsParts", "Name": "NoCollisionConstraint", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsConnected", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsLuaChatEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsLuaGameDetailsEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectedTheme", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "ActionEnabled", "Parameters": [ { "Name": "actionType", "Type": { "Category": "Enum", "Name": "AppShellActionType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ActionTaken", "Parameters": [ { "Name": "actionType", "Type": { "Category": "Enum", "Name": "AppShellActionType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CancelAllNotification", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CancelNotification", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "alertId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ScheduleNotification", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "alertId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "alertMsg", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "minutesToFire", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SwitchedToAppShellFeature", "Parameters": [ { "Name": "appShellFeature", "Type": { "Category": "Enum", "Name": "AppShellFeature" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetScheduledNotifications", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "LocalUserSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Roblox17sConnectionChanged", "Parameters": [ { "Name": "connectionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "connectionState", "Type": { "Category": "Enum", "Name": "ConnectionState" } }, { "Name": "namespaceSequenceNumbers", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Roblox17sEventReceived", "Parameters": [ { "Name": "eventData", "Type": { "Category": "Group", "Name": "Map" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RobloxConnectionChanged", "Parameters": [ { "Name": "connectionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "connectionState", "Type": { "Category": "Enum", "Name": "ConnectionState" } }, { "Name": "sequenceNumber", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "namespaceSequenceNumbers", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RobloxEventReceived", "Parameters": [ { "Name": "eventData", "Type": { "Category": "Group", "Name": "Map" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "NotificationService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "ClearSessionId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSessionId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "MakeRequest", "Parameters": [ { "Name": "nextPageToken", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "HttpRequest" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "OmniRecommendationsService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "CreateModel", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "OpenCloudModel" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateUserNotificationAsync", "Parameters": [ { "Name": "user", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "userNotification", "Type": { "Category": "DataType", "Name": "OpenCloudModel" } } ], "ReturnType": { "Category": "DataType", "Name": "OpenCloudModel" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "OpenCloudApiV1", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetApiV1", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "OpenCloudApiV1" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "OpenCloudService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Transform", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Origin", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Pivot", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Pivot Offset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "MemberType": "Function", "Name": "GetPivot", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "PivotTo", "Parameters": [ { "Name": "targetCFrame", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PVInstance", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Anchored", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Assembly", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AssemblyAngularVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Assembly", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AssemblyCenterOfMass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Assembly", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AssemblyLinearVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Assembly", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AssemblyMass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Assembly", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AssemblyRootPart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BackParamA", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BackParamB", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BackSurface", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SurfaceType" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BackSurfaceInput", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "InputType" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BottomParamA", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BottomParamB", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BottomSurface", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SurfaceType" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BottomSurfaceInput", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "InputType" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BrickColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Transform", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Collision", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CanCollide", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Collision", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CanQuery", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Collision", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CanTouch", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CastShadow", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CenterOfMass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Collision", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CollisionGroup", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Collision", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CollisionGroupId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "CollisionGroup", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Collision", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CollisionGroupReplicate", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Color3uint8", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3uint8" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CurrentPhysicalProperties", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "PhysicalProperties" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CustomPhysicalProperties", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "PhysicalProperties" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DraggingV1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Elasticity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EnableFluidForces", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Transform", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ExtentsCFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Transform", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ExtentsSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Friction", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FrontParamA", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FrontParamB", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FrontSurface", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SurfaceType" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FrontSurfaceInput", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "InputType" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LeftParamA", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LeftParamB", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LeftSurface", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SurfaceType" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LeftSurfaceInput", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "InputType" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LocalSimulationValidation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LocalTransparencyModifier", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Locked", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Mass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Massless", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Material", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Material" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MaterialVariant", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MaterialVariantSerialized", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NetworkIsSleeping", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NetworkOwnerV3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SystemAddress" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NetworkOwnershipRule", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NetworkOwnership" } }, { "Category": "Transform", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Orientation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Pivot", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PivotOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Transform", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ReceiveAge", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Reflectance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ResizeIncrement", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ResizeableFaces", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Faces" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RightParamA", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RightParamB", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RightSurface", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SurfaceType" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RightSurfaceInput", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "InputType" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RootPriority", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RotVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated", { "PreferredDescriptorName": "AssemblyAngularVelocity", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Rotation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Transform", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SpecificGravity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "SpecificGravity", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TopParamA", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TopParamB", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TopSurface", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SurfaceType" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TopSurfaceInput", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "InputType" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Transparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Velocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated", { "PreferredDescriptorName": "AssemblyLinearVelocity", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "brickColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "BrickColor", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "siz", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "WriteOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "MemberType": "Function", "Name": "ApplyAngularImpulse", "Parameters": [ { "Name": "impulse", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ApplyImpulse", "Parameters": [ { "Name": "impulse", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ApplyImpulseAtPosition", "Parameters": [ { "Name": "impulse", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BreakJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CanCollideWith", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "BasePart" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "CanSetNetworkOwnership", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetClosestPointOnSurface", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetConnectedParts", "Parameters": [ { "Default": "false", "Name": "recursive", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetJoints", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetMass", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetNetworkOwner", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetNetworkOwnershipAuto", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetNoCollisionConstraints", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRenderCFrame", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRootPart", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetTouchingParts", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVelocityAtPosition", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "IsGrounded", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "MakeJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Resize", "Parameters": [ { "Name": "normalId", "Type": { "Category": "Enum", "Name": "NormalId" } }, { "Name": "deltaAmount", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetNetworkOwner", "Parameters": [ { "Default": "nil", "Name": "playerInstance", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetNetworkOwnershipAuto", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "breakJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "BreakJoints", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "getMass", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "makeJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "resize", "Parameters": [ { "Name": "normalId", "Type": { "Category": "Enum", "Name": "NormalId" } }, { "Name": "deltaAmount", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Resize", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IntersectAsync", "Parameters": [ { "Name": "parts", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "Default", "Name": "collisionfidelity", "Type": { "Category": "Enum", "Name": "CollisionFidelity" } }, { "Default": "Automatic", "Name": "renderFidelity", "Type": { "Category": "Enum", "Name": "RenderFidelity" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SubtractAsync", "Parameters": [ { "Name": "parts", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "Default", "Name": "collisionfidelity", "Type": { "Category": "Enum", "Name": "CollisionFidelity" } }, { "Default": "Automatic", "Name": "renderFidelity", "Type": { "Category": "Enum", "Name": "RenderFidelity" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnionAsync", "Parameters": [ { "Name": "parts", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "Default", "Name": "collisionfidelity", "Type": { "Category": "Enum", "Name": "CollisionFidelity" } }, { "Default": "Automatic", "Name": "renderFidelity", "Type": { "Category": "Enum", "Name": "RenderFidelity" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "subtractAsync2_INTERNAL", "Parameters": [ { "Name": "parts", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "Default", "Name": "collisionfidelity", "Type": { "Category": "Enum", "Name": "CollisionFidelity" } }, { "Default": "Automatic", "Name": "renderFidelity", "Type": { "Category": "Enum", "Name": "RenderFidelity" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "unionAsync2_INTERNAL", "Parameters": [ { "Name": "parts", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "Default", "Name": "collisionfidelity", "Type": { "Category": "Enum", "Name": "CollisionFidelity" } }, { "Default": "Automatic", "Name": "renderFidelity", "Type": { "Category": "Enum", "Name": "RenderFidelity" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LocalSimulationTouched", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "BasePart" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "NetworkOwnerChanged", "Parameters": [ { "Name": "systemAddress", "Type": { "Category": "DataType", "Name": "SystemAddress" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OutfitChanged", "Parameters": [], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StoppedTouching", "Parameters": [ { "Name": "otherPart", "Type": { "Category": "Class", "Name": "BasePart" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "TouchEnded", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchEnded", "Parameters": [ { "Name": "otherPart", "Type": { "Category": "Class", "Name": "BasePart" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Touched", "Parameters": [ { "Name": "otherPart", "Type": { "Category": "Class", "Name": "BasePart" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BasePart", "Superclass": "PVInstance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "CornerWedgePart", "Superclass": "BasePart" }, { "Members": [ { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FormFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FormFactor" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "formFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FormFactor" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "formFactorRaw", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FormFactor" } } ], "MemoryCategory": "Instances", "Name": "FormFactorPart", "Superclass": "BasePart", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Part", "Default": "Block", "MemberType": "Property", "Name": "Shape", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PartType" } }, { "Category": "Part", "Default": "__api_dump_write_only_property__", "MemberType": "Property", "Name": "shap", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "WriteOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PartType" } }, { "Category": "Part", "Default": "Block", "MemberType": "Property", "Name": "shape", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PartType" } } ], "MemoryCategory": "PhysicsParts", "Name": "Part", "Superclass": "FormFactorPart" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TeamColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "MemberType": "Event", "Name": "FlagCaptured", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "FlagStand", "Superclass": "Part", "Tags": [ "Deprecated" ] }, { "Members": [ { "MemberType": "Event", "Name": "RemoteCreateMotor6D", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteDestroyMotor6D", "Parameters": [], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "Platform", "Superclass": "Part", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Control", "Default": "false", "MemberType": "Property", "Name": "Disabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Occupant", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Humanoid" } }, { "MemberType": "Function", "Name": "Sit", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteCreateSeatWeld", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteDestroySeatWeld", "Parameters": [], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "Seat", "Superclass": "Part" }, { "Members": [ { "Category": "Control", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Controller", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "SkateboardController" } }, { "Category": "Control", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "ControllingHumanoid", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Humanoid" } }, { "Category": "Control", "Default": "Stopped", "MemberType": "Property", "Name": "MoveState", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "MoveState" } }, { "Category": "Control", "Default": "0", "MemberType": "Property", "Name": "Steer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Control", "Default": "true", "MemberType": "Property", "Name": "StickyWheels", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "0", "MemberType": "Property", "Name": "Throttle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "ApplySpecificImpulse", "Parameters": [ { "Name": "impulseWorld", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Equipped", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "skateboardController", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MoveStateChanged", "Parameters": [ { "Name": "newState", "Type": { "Category": "Enum", "Name": "MoveState" } }, { "Name": "oldState", "Type": { "Category": "Enum", "Name": "MoveState" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteCreateMotor6D", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteDestroyMotor6D", "Parameters": [], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Unequipped", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "equipped", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "skateboardController", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Equipped", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "unequipped", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Unequipped", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "SkateboardPlatform", "Superclass": "Part", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Teams", "Default": "false", "MemberType": "Property", "Name": "AllowTeamChangeOnTouch", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Forcefield", "Default": "10", "MemberType": "Property", "Name": "Duration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Teams", "Default": "true", "MemberType": "Property", "Name": "Neutral", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Teams", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TeamColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } } ], "MemoryCategory": "PhysicsParts", "Name": "SpawnLocation", "Superclass": "Part" }, { "Members": [], "MemoryCategory": "Instances", "Name": "WedgePart", "Superclass": "FormFactorPart" }, { "Members": [ { "Category": "Data", "Default": "None", "MemberType": "Property", "Name": "AcquisitionMethod", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TerrainAcquisitionMethod" } }, { "Category": "Data", "Default": "__api_dump_write_only_property__", "MemberType": "Property", "Name": "ClusterGrid", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "WriteOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_write_only_property__", "MemberType": "Property", "Name": "ClusterGridV2", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "WriteOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_write_only_property__", "MemberType": "Property", "Name": "ClusterGridV3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "WriteOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "Decoration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "IsSmooth", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "None", "MemberType": "Property", "Name": "LastUsedModificationMethod", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TerrainAcquisitionMethod" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "MaterialColors", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "MaxExtents", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Region3int16" } }, { "Category": "Data", "Default": "\u0002\u0003", "MemberType": "Property", "Name": "PhysicsGrid", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "ShorelinesUpgraded", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "\u0001\u0005", "MemberType": "Property", "Name": "SmoothGrid", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "SmoothVoxelsUpgraded", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0.05, 0.33, 0.36", "MemberType": "Property", "Name": "WaterColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "WaterReflectance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0.300000012", "MemberType": "Property", "Name": "WaterTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0.150000006", "MemberType": "Property", "Name": "WaterWaveSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "10", "MemberType": "Property", "Name": "WaterWaveSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "AutowedgeCell", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "z", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AutowedgeCells", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3int16" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CanShorelinesBeUpgraded", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CanSmoothVoxelsBeUpgraded", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CellCenterToWorld", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "z", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CellCornerToWorld", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "z", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Clear", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ConvertToSmooth", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CopyRegion", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3int16" } } ], "ReturnType": { "Category": "Class", "Name": "TerrainRegion" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CountCells", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FillBall", "Parameters": [ { "Name": "center", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "radius", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FillBlock", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FillCylinder", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "height", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "radius", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FillRegion", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Name": "resolution", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FillWedge", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCell", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "z", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMaterialColor", "Parameters": [ { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "DataType", "Name": "Color3" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetTerrainWireframe", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetWaterCell", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "z", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PasteRegion", "Parameters": [ { "Name": "region", "Type": { "Category": "Class", "Name": "TerrainRegion" } }, { "Name": "corner", "Type": { "Category": "DataType", "Name": "Vector3int16" } }, { "Name": "pasteEmptyCells", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReadVoxels", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Name": "resolution", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "ReplaceMaterial", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Name": "resolution", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "sourceMaterial", "Type": { "Category": "Enum", "Name": "Material" } }, { "Name": "targetMaterial", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReplaceMaterialInTransform", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "sourceMaterial", "Type": { "Category": "Enum", "Name": "Material" } }, { "Name": "targetMaterial", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReplaceMaterialInTransformSubregion", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "sourceMaterial", "Type": { "Category": "Enum", "Name": "Material" } }, { "Name": "targetMaterial", "Type": { "Category": "Enum", "Name": "Material" } }, { "Name": "targetRegion", "Type": { "Category": "DataType", "Name": "Region3int16" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetCell", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "z", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "material", "Type": { "Category": "Enum", "Name": "CellMaterial" } }, { "Name": "block", "Type": { "Category": "Enum", "Name": "CellBlock" } }, { "Name": "orientation", "Type": { "Category": "Enum", "Name": "CellOrientation" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetCells", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3int16" } }, { "Name": "material", "Type": { "Category": "Enum", "Name": "CellMaterial" } }, { "Name": "block", "Type": { "Category": "Enum", "Name": "CellBlock" } }, { "Name": "orientation", "Type": { "Category": "Enum", "Name": "CellOrientation" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMaterialColor", "Parameters": [ { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } }, { "Name": "value", "Type": { "Category": "DataType", "Name": "Color3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMaterialInTransform", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "targetMaterial", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMaterialInTransformSubregion", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "targetMaterial", "Type": { "Category": "Enum", "Name": "Material" } }, { "Name": "targetRegion", "Type": { "Category": "DataType", "Name": "Region3int16" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetWaterCell", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "z", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "force", "Type": { "Category": "Enum", "Name": "WaterForce" } }, { "Name": "direction", "Type": { "Category": "Enum", "Name": "WaterDirection" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SmoothRegion", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Name": "resolution", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "strength", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "WorldToCell", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "WorldToCellPreferEmpty", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "WorldToCellPreferSolid", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "WriteVoxels", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Name": "resolution", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "materials", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "occupancy", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Terrain", "Superclass": "BasePart", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Collision", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CollisionFidelity", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "CollisionFidelity" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MeshSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PhysicalConfigData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SharedString" } } ], "MemoryCategory": "Instances", "Name": "TriangleMeshPart", "Superclass": "BasePart", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "AeroMeshData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SharedString" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "AlternateMeshHash", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "DoubleSided", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "HasJointOffset", "Security": { "Read": "None", "Write": "NotAccessibleSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "HasSkinnedMesh", "Security": { "Read": "None", "Write": "NotAccessibleSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "InitialSize", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "JointOffset", "Security": { "Read": "None", "Write": "NotAccessibleSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "MeshID", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable", "Deprecated", { "PreferredDescriptorName": "MeshId", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "MeshId", "Security": { "Read": "None", "Write": "NotAccessibleSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "PhysicsData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Appearance", "Default": "Precise", "MemberType": "Property", "Name": "RenderFidelity", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RenderFidelity" } }, { "Category": "Appearance", "Default": "Precise", "MemberType": "Property", "Name": "RenderFidelityReplicate", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RenderFidelity" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "TextureID", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "VertexCount", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "ApplyMesh", "Parameters": [ { "Name": "meshPart", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "MeshPart", "Superclass": "TriangleMeshPart" }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "AssetId", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CSGMesh2KernelMap", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SharedString" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CSGPropertyData", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CSGPropertyData" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ChildData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "ChildData2", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SharedString" } }, { "Category": "Data", "Default": "Custom", "MemberType": "Property", "Name": "FormFactor", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FormFactor" } }, { "Category": "Data", "Default": "1, 1, 1", "MemberType": "Property", "Name": "InitialSize", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "MeshData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "MeshData2", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SharedString" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "PhysicsData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Appearance", "Default": "Precise", "MemberType": "Property", "Name": "RenderFidelity", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RenderFidelity" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "SerializedCSGTree", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SharedString" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "SmoothingAngle", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "TriangleCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "UsePartColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "SubstituteGeometry", "Parameters": [ { "Name": "source", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MeshDeltaUpdate", "Parameters": [ { "Name": "originalMeshHash", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "newMeshHash", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "mesh", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MeshFullUpdate", "Parameters": [ { "Name": "newMeshHash", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "mesh", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestMeshFullUpdate", "Parameters": [], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PartOperation", "Superclass": "TriangleMeshPart" }, { "Members": [], "MemoryCategory": "Instances", "Name": "IntersectOperation", "Superclass": "PartOperation" }, { "Members": [], "MemoryCategory": "Instances", "Name": "NegateOperation", "Superclass": "PartOperation" }, { "Members": [], "MemoryCategory": "Instances", "Name": "UnionOperation", "Superclass": "PartOperation" }, { "Members": [ { "Category": "Part", "Default": "AlternatingSupports", "MemberType": "Property", "Name": "Style", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Style" } }, { "Category": "Part", "Default": "AlternatingSupports", "MemberType": "Property", "Name": "style", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Style" } } ], "MemoryCategory": "Instances", "Name": "TrussPart", "Superclass": "BasePart" }, { "Members": [ { "Category": "Control", "Default": "0", "MemberType": "Property", "Name": "AreHingesDetected", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Control", "Default": "false", "MemberType": "Property", "Name": "Disabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "true", "MemberType": "Property", "Name": "HeadsUpDisplay", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "25", "MemberType": "Property", "Name": "MaxSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Control", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Occupant", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Humanoid" } }, { "Category": "Control", "Default": "0", "MemberType": "Property", "Name": "Steer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Control", "Default": "0", "MemberType": "Property", "Name": "SteerFloat", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Control", "Default": "0", "MemberType": "Property", "Name": "Throttle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Control", "Default": "0", "MemberType": "Property", "Name": "ThrottleFloat", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Control", "Default": "10", "MemberType": "Property", "Name": "Torque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Control", "Default": "1", "MemberType": "Property", "Name": "TurnSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "Sit", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteCreateSeatWeld", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteDestroySeatWeld", "Parameters": [], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "VehicleSeat", "Superclass": "BasePart" }, { "Members": [ { "Category": "Appearance", "Default": "Automatic", "MemberType": "Property", "Name": "LevelOfDetail", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ModelLevelOfDetail" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "LodEntity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "LodDataEntity" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "ModelMeshCFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "ModelMeshData", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SharedString" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "ModelMeshSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Behavior", "Default": "Default", "MemberType": "Property", "Name": "ModelStreamingMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ModelStreamingMode" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "NeedsPivotMigration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Pivot", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "PrimaryPart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Pivot", "Default": "1", "MemberType": "Property", "Name": "Scale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Pivot", "Default": "1", "MemberType": "Property", "Name": "ScaleFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Pivot", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "WorldPivot", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Pivot", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "WorldPivotData", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "OptionalCoordinateFrame" } }, { "MemberType": "Function", "Name": "AddPersistentPlayer", "Parameters": [ { "Default": "nil", "Name": "playerInstance", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BreakJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBoundingBox", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetExtentsSize", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetModelCFrame", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPrimaryPartCFrame", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetModelSize", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetExtentsSize", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPersistentPlayers", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPrimaryPartCFrame", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPivot", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetScale", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "MakeJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "MoveTo", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemovePersistentPlayer", "Parameters": [ { "Default": "nil", "Name": "playerInstance", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ResetOrientationToIdentity", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SetPrimaryPartCFrame", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ScaleTo", "Parameters": [ { "Name": "newScaleFactor", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetIdentityOrientation", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SetPrimaryPartCFrame", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPrimaryPartCFrame", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "PivotTo", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TranslateBy", "Parameters": [ { "Name": "delta", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "breakJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "BreakJoints", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "makeJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "MakeJoints", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "move", "Parameters": [ { "Name": "location", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "MoveTo", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "moveTo", "Parameters": [ { "Name": "location", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "MoveTo", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "Model", "Superclass": "PVInstance" }, { "Members": [ { "MemberType": "Function", "Name": "BindToMessage", "Parameters": [ { "Name": "topic", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "function", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptConnection" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "BindToMessageParallel", "Parameters": [ { "Name": "topic", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "function", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptConnection" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "SendMessage", "Parameters": [ { "Name": "topic", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "message", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Safe" } ], "MemoryCategory": "PhysicsParts", "Name": "Actor", "Superclass": "Model" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TextureId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "PhysicsParts", "Name": "BackpackItem", "Superclass": "Model", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "Active", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "Script", "MemberType": "Property", "Name": "BinType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "BinType" } }, { "Category": "Data", "Default": "__api_dump_write_only_property__", "MemberType": "Property", "Name": "Command", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "WriteOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_write_only_property__", "MemberType": "Property", "Name": "TextureName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "WriteOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "Disable", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ToggleSelect", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Deselected", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ReplicatedSelected", "Parameters": [], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Selected", "Parameters": [ { "Name": "mouse", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "HopperBin", "Superclass": "BackpackItem", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "CanBeDropped", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Transform", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Grip", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Transform", "Default": "-0, -0, -1", "MemberType": "Property", "Name": "GripForward", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Transform", "Default": "0, 0, 0", "MemberType": "Property", "Name": "GripPos", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Transform", "Default": "1, 0, 0", "MemberType": "Property", "Name": "GripRight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Transform", "Default": "0, 1, 0", "MemberType": "Property", "Name": "GripUp", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "ManualActivationOnly", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "RequiresHandle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "ToolTip", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "Activate", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Deactivate", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Activated", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Deactivated", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Equipped", "Parameters": [ { "Name": "mouse", "Type": { "Category": "Class", "Name": "Mouse" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Unequipped", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "VRLaserPointerClicked", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "Tool", "Superclass": "BackpackItem" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TeamColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } } ], "MemoryCategory": "PhysicsParts", "Name": "Flag", "Superclass": "Tool", "Tags": [ "Deprecated" ] }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "Status", "Superclass": "Model", "Tags": [ "NotCreatable", "Deprecated" ] }, { "Members": [ { "MemberType": "Function", "Name": "ArePartsTouchingOthers", "Parameters": [ { "Name": "partList", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "0.000199999995", "Name": "overlapIgnored", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Blockcast", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "direction", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Default": "RaycastParams{IgnoreWater=false, BruteForceAllSlow=false, RespectCanCollide=false, CollisionGroup=Default, FilterDescendantsInstances={}}", "Name": "params", "Type": { "Category": "DataType", "Name": "RaycastParams" } } ], "ReturnType": { "Category": "DataType", "Name": "RaycastResult" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "BulkMoveTo", "Parameters": [ { "Name": "partList", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "cframeList", "Type": { "Category": "Group", "Name": "Array" } }, { "Default": "FireAllEvents", "Name": "eventMode", "Type": { "Category": "Enum", "Name": "BulkMoveMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CacheCurrentTerrain", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "center", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "radius", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClearCachedTerrain", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindPartOnRay", "Parameters": [ { "Name": "ray", "Type": { "Category": "DataType", "Name": "Ray" } }, { "Default": "nil", "Name": "ignoreDescendantsInstance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "false", "Name": "terrainCellsAreCubes", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "false", "Name": "ignoreWater", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Raycast", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindPartOnRayWithIgnoreList", "Parameters": [ { "Name": "ray", "Type": { "Category": "DataType", "Name": "Ray" } }, { "Name": "ignoreDescendantsTable", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "false", "Name": "terrainCellsAreCubes", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "false", "Name": "ignoreWater", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Raycast", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindPartOnRayWithWhitelist", "Parameters": [ { "Name": "ray", "Type": { "Category": "DataType", "Name": "Ray" } }, { "Name": "whitelistDescendantsTable", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "false", "Name": "ignoreWater", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Raycast", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindPartsInRegion3", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Default": "nil", "Name": "ignoreDescendantsInstance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "20", "Name": "maxParts", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPartBoundsInBox", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindPartsInRegion3WithIgnoreList", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Name": "ignoreDescendantsTable", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "20", "Name": "maxParts", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPartBoundsInBox", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindPartsInRegion3WithWhiteList", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Name": "whitelistDescendantsTable", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "20", "Name": "maxParts", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPartBoundsInBox", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPartBoundsInBox", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Default": "OverlapParams{MaxParts=false, BruteForceAllSlow=false, RespectCanCollide=false, CollisionGroup=Default, FilterDescendantsInstances={}}", "Name": "overlapParams", "Type": { "Category": "DataType", "Name": "OverlapParams" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetPartBoundsInRadius", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "radius", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "OverlapParams{MaxParts=false, BruteForceAllSlow=false, RespectCanCollide=false, CollisionGroup=Default, FilterDescendantsInstances={}}", "Name": "overlapParams", "Type": { "Category": "DataType", "Name": "OverlapParams" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetPartsInPart", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "BasePart" } }, { "Default": "OverlapParams{MaxParts=false, BruteForceAllSlow=false, RespectCanCollide=false, CollisionGroup=Default, FilterDescendantsInstances={}}", "Name": "overlapParams", "Type": { "Category": "DataType", "Name": "OverlapParams" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "IKMoveTo", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "BasePart" } }, { "Name": "target", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Default": "0.5", "Name": "translateStiffness", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "0.5", "Name": "rotateStiffness", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "OtherMechanismsAnchored", "Name": "collisionsMode", "Type": { "Category": "Enum", "Name": "IKCollisionsMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsRegion3Empty", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Default": "nil", "Name": "ignoreDescendentsInstance", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPartBoundsInBox", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsRegion3EmptyWithIgnoreList", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Name": "ignoreDescendentsTable", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPartBoundsInBox", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Raycast", "Parameters": [ { "Name": "origin", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "direction", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Default": "RaycastParams{IgnoreWater=false, BruteForceAllSlow=false, RespectCanCollide=false, CollisionGroup=Default, FilterDescendantsInstances={}}", "Name": "raycastParams", "Type": { "Category": "DataType", "Name": "RaycastParams" } } ], "ReturnType": { "Category": "DataType", "Name": "RaycastResult" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "RaycastCachedTerrain", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "origin", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "direction", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "ignoreWater", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "DataType", "Name": "RaycastResult" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetInsertPoint", "Parameters": [ { "Name": "point", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Default": "false", "Name": "ignoreGrid", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Spherecast", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "radius", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "direction", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Default": "RaycastParams{IgnoreWater=false, BruteForceAllSlow=false, RespectCanCollide=false, CollisionGroup=Default, FilterDescendantsInstances={}}", "Name": "params", "Type": { "Category": "DataType", "Name": "RaycastParams" } } ], "ReturnType": { "Category": "DataType", "Name": "RaycastResult" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "findPartOnRay", "Parameters": [ { "Name": "ray", "Type": { "Category": "DataType", "Name": "Ray" } }, { "Default": "nil", "Name": "ignoreDescendantsInstance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "false", "Name": "terrainCellsAreCubes", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "false", "Name": "ignoreWater", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Raycast", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "findPartsInRegion3", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Default": "nil", "Name": "ignoreDescendantsInstance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "20", "Name": "maxParts", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPartBoundsInBox", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "WorldRoot", "Superclass": "Model", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "AirProperties", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AirDensity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AllowThirdPartySales", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AvatarUnificationMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AvatarUnificationMode" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ClientAnimatorThrottling", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ClientAnimatorThrottlingMode" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CollisionGroupData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CollisionGroups", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "WriteOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CurrentCamera", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Camera" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DataModelPlaceVersion", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DistributedGameTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ExplicitAutoJoints", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FallenPartsDestroyHeight", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FilteringEnabled", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FluidForces", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FluidForces" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GlobalWind", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Gravity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HumanoidOnlySetCollisionsOnStateChange", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HumanoidOnlySetCollisionsOnStateChange" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IKControlConstraintSupport", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "IKControlConstraintSupport" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "InterpolationThrottling", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "InterpolationThrottlingMode" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MeshPartHeadsAndAccessories", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "MeshPartHeadsAndAccessories" } }, { "Category": "Streaming", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ModelStreamingBehavior", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ModelStreamingBehavior" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PhysicsSteppingMethod", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PhysicsSteppingMethod" } }, { "Category": "Networking", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RejectCharacterDeletions", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RejectCharacterDeletions" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ReplicateInstanceDestroySetting", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ReplicateInstanceDestroySetting" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Retargeting", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AnimatorRetargetingMode" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SignalBehavior", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SignalBehavior" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SignalBehavior2", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SignalBehavior" } }, { "Category": "Streaming", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "StreamOutBehavior", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "StreamOutBehavior" } }, { "Category": "Streaming", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "StreamingEnabled", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Streaming", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "StreamingIntegrityMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "StreamingIntegrityMode" } }, { "Category": "Streaming", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "StreamingMinRadius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Streaming", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "StreamingPauseMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "WriteOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "StreamingPauseMode" } }, { "Category": "Streaming", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "StreamingTargetRadius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Terrain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Terrain" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TerrainWeldsFixed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TouchesUseCollisionGroups", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "BreakJoints", "Parameters": [ { "Name": "objects", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CalculateJumpDistance", "Parameters": [ { "Name": "gravity", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "jumpPower", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "walkSpeed", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CalculateJumpHeight", "Parameters": [ { "Name": "gravity", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "jumpPower", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CalculateJumpPower", "Parameters": [ { "Name": "gravity", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "jumpHeight", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ExperimentalSolverIsEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetNumAwakeParts", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetPhysicsThrottling", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetRealPhysicsFPS", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "double" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetServerTimeNow", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "double" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "JoinToOutsiders", "Parameters": [ { "Name": "objects", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "jointType", "Type": { "Category": "Enum", "Name": "JointCreationMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "MakeJoints", "Parameters": [ { "Name": "objects", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PGSIsEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMeshPartHeadsAndAccessories", "Parameters": [ { "Name": "value", "Type": { "Category": "Enum", "Name": "MeshPartHeadsAndAccessories" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPhysicsThrottleEnabled", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnjoinFromOutsiders", "Parameters": [ { "Name": "objects", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ZoomToExtents", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PersistentLoaded", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "Workspace", "Superclass": "WorldRoot", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "WorldModel", "Superclass": "WorldRoot" }, { "Members": [ { "Category": "Link", "Default": "false", "MemberType": "Property", "Name": "AutoUpdate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "CanAutoUpdate", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Creator", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Link", "Default": "0", "MemberType": "Property", "Name": "ModifiedState", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "PackageAssetName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Link", "Default": "0", "MemberType": "Property", "Name": "PackageGuid", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Link", "Default": "", "MemberType": "Property", "Name": "PackageId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Link", "Default": "", "MemberType": "Property", "Name": "PackageIdSerialize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Data", "Default": "None", "MemberType": "Property", "Name": "PermissionLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PackagePermission" } }, { "Category": "Link", "Default": "Up To Date", "MemberType": "Property", "Name": "Status", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Link", "Default": "0", "MemberType": "Property", "Name": "VersionIdSerialize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Link", "Default": "0", "MemberType": "Property", "Name": "VersionNumber", "Security": { "Read": "None", "Write": "NotAccessibleSecurity" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } } ], "MemoryCategory": "Instances", "Name": "PackageLink", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "PackageService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "ConvertToPackageUpload", "Parameters": [ { "Name": "uploadUrl", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "cloneInstances", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "originalInstances", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPackageInfo", "Parameters": [ { "Name": "packageAssetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PublishPackage", "Parameters": [ { "Name": "packageInstance", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPackageVersion", "Parameters": [ { "Name": "packageInstance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "versionNumber", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnConvertToPackageResult", "Parameters": [ { "Name": "isSuccessful", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "errorMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnOpenConvertToPackagePlugin", "Parameters": [ { "Name": "instances", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "cloneInstances", "Type": { "Category": "DataType", "Name": "Objects" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PackageUIService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsFinished", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "GetCurrentPage", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AdvanceToNextPageAsync", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Pages", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "AudioPages", "Superclass": "Pages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "CatalogPages", "Superclass": "Pages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Cursor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "DataStoreKeyPages", "Superclass": "Pages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Cursor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "DataStoreListingPages", "Superclass": "Pages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "DataStorePages", "Superclass": "Pages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "DataStoreVersionPages", "Superclass": "Pages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "FriendPages", "Superclass": "Pages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "InventoryPages", "Superclass": "Pages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "EmotesPages", "Superclass": "InventoryPages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "OutfitPages", "Superclass": "Pages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "StandardPages", "Superclass": "Pages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ChildData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "MeshData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } } ], "MemoryCategory": "Instances", "Name": "PartOperationAsset", "Superclass": "Instance" }, { "Members": [ { "Category": "Motion", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Acceleration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "Brightness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0 1 1 1 0 1 1 1 1 0 ", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "ColorSequence" } }, { "Category": "Particles", "Default": "0", "MemberType": "Property", "Name": "Drag", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Emission", "Default": "Top", "MemberType": "Property", "Name": "EmissionDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NormalId" } }, { "Category": "Emission", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Flipbook", "Default": "1 1 ", "MemberType": "Property", "Name": "FlipbookFramerate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Flipbook", "Default": "Particle texture must be 1024 by 1024 to use flipbooks.", "MemberType": "Property", "Name": "FlipbookIncompatible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Flipbook", "Default": "None", "MemberType": "Property", "Name": "FlipbookLayout", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ParticleFlipbookLayout" } }, { "Category": "Flipbook", "Default": "Loop", "MemberType": "Property", "Name": "FlipbookMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ParticleFlipbookMode" } }, { "Category": "Flipbook", "Default": "false", "MemberType": "Property", "Name": "FlipbookStartRandom", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Flipbook", "Default": "Unknown", "MemberType": "Property", "Name": "FlipbookTextureCompatible", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ParticleFlipbookTextureCompatible" } }, { "Category": "Emission", "Default": "5 10 ", "MemberType": "Property", "Name": "Lifetime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "LightEmission", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "LightInfluence", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Particles", "Default": "false", "MemberType": "Property", "Name": "LockedToPart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "FacingCamera", "MemberType": "Property", "Name": "Orientation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ParticleOrientation" } }, { "Category": "Emission", "Default": "20", "MemberType": "Property", "Name": "Rate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Emission", "Default": "0 0 ", "MemberType": "Property", "Name": "RotSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Emission", "Default": "0 0 ", "MemberType": "Property", "Name": "Rotation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "EmitterShape", "Default": "Box", "MemberType": "Property", "Name": "Shape", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ParticleEmitterShape" } }, { "Category": "EmitterShape", "Default": "Outward", "MemberType": "Property", "Name": "ShapeInOut", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ParticleEmitterShapeInOut" } }, { "Category": "EmitterShape", "Default": "1", "MemberType": "Property", "Name": "ShapePartial", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "EmitterShape", "Default": "Volume", "MemberType": "Property", "Name": "ShapeStyle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ParticleEmitterShapeStyle" } }, { "Category": "Appearance", "Default": "0 1 0 1 1 0 ", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberSequence" } }, { "Category": "Emission", "Default": "5 5 ", "MemberType": "Property", "Name": "Speed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Emission", "Default": "0, 0", "MemberType": "Property", "Name": "SpreadAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Appearance", "Default": "0 0 0 1 0 0 ", "MemberType": "Property", "Name": "Squash", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberSequence" } }, { "Category": "Appearance", "Default": "rbxasset://textures/particles/sparkles_main.dds", "MemberType": "Property", "Name": "Texture", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Particles", "Default": "1", "MemberType": "Property", "Name": "TimeScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0 0 0 1 0 0 ", "MemberType": "Property", "Name": "Transparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberSequence" } }, { "Category": "Particles", "Default": "0", "MemberType": "Property", "Name": "VelocityInheritance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Emission", "Default": "0", "MemberType": "Property", "Name": "VelocitySpread", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "SpreadAngle", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Particles", "Default": "false", "MemberType": "Property", "Name": "WindAffectsDrag", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "ZOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "Clear", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Emit", "Parameters": [ { "Default": "16", "Name": "particleCount", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FastForward", "Parameters": [ { "Name": "numFrames", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnClearRequested", "Parameters": [], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnEmitRequested", "Parameters": [ { "Name": "particleCount", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ParticleEmitter", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "PatchBundlerFileWatch", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "FlattenTree", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "PatchId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "TargetPath", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "PatchMapping", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Status", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PathStatus" } }, { "MemberType": "Function", "Name": "GetPointCoordinates", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetWaypoints", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetWaypoints", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CheckOcclusionAsync", "Parameters": [ { "Name": "start", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ComputeAsync", "Parameters": [ { "Name": "start", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "finish", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Blocked", "Parameters": [ { "Name": "blockedWaypointIdx", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Unblocked", "Parameters": [ { "Name": "unblockedWaypointIdx", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Path", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Attachment0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Attachment" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Attachment1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Attachment" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "IsBidirectional", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Label", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "PathfindingLink", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Label", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "PassThrough", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "PathfindingModifier", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "EmptyCutoff", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "CreatePath", "Parameters": [ { "Default": "nil", "Name": "agentParameters", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ComputeRawPathAsync", "Parameters": [ { "Name": "start", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "finish", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "maxDistance", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields", "Deprecated", { "PreferredDescriptorName": "FindPathAsync", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ComputeSmoothPathAsync", "Parameters": [ { "Name": "start", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "finish", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "maxDistance", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields", "Deprecated", { "PreferredDescriptorName": "FindPathAsync", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindPathAsync", "Parameters": [ { "Name": "start", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "finish", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PathfindingService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AllThreadsPaused", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Reason", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DebuggerPauseReason" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ThreadId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } } ], "MemoryCategory": "Instances", "Name": "PausedState", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Breakpoint", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Breakpoint" } } ], "MemoryCategory": "Instances", "Name": "PausedStateBreakpoint", "Superclass": "PausedState", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ExceptionText", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "PausedStateException", "Superclass": "PausedState", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetIsThirdPartyAssetAllowed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetIsThirdPartyPurchaseAllowed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetIsThirdPartyTeleportAllowed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPermissions", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPermissions", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "permissions", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PermissionsService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "CollisionGroupContainsPart", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "part", "Type": { "Category": "Class", "Name": "BasePart" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "CollisionGroup", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CollisionGroupSetCollidable", "Parameters": [ { "Name": "name1", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "name2", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "collidable", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CollisionGroupsAreCollidable", "Parameters": [ { "Name": "name1", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "name2", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateCollisionGroup", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "RegisterCollisionGroup", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCollisionGroupId", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "CollisionGroup", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCollisionGroupName", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "CollisionGroup", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCollisionGroups", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetRegisteredCollisionGroups", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMaxCollisionGroups", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRegisteredCollisionGroups", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IkSolve", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "BasePart" } }, { "Name": "target", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "translateStiffness", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "rotateStiffness", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsCollisionGroupRegistered", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LocalIkSolve", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "BasePart" } }, { "Name": "target", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "translateStiffness", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "rotateStiffness", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterCollisionGroup", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveCollisionGroup", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "UnregisterCollisionGroup", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RenameCollisionGroup", "Parameters": [ { "Name": "from", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "to", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPartCollisionGroup", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "BasePart" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "CollisionGroup", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnregisterCollisionGroup", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PhysicsService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Performance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AllowSleep", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreAnchorsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreAssembliesShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreAwakePartsHighlighted", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreBodyTypesShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreCollisionCostsShown", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreConstraintForcesShownForSelectedOrHoveredInstances", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreConstraintTorquesShownForSelectedOrHoveredInstances", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreContactForcesShownForSelectedOrHoveredAssemblies", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreContactIslandsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreContactPointsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreJointCoordinatesShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreMagnitudesShownForDrawnForcesAndTorques", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreMechanismsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreModelCoordsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreOwnersShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ArePartCoordsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreRegionsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreSolverIslandsShown", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreTerrainReplicationRegionsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreTimestepsShown", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreUnalignedPartsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreWorldCoordsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DisableCSGv2", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DisableCSGv3ForPlugins", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ForceCSGv2", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ForceDrawScale", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsInterpolationThrottleShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsReceiveAgeShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsTreeShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Performance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PhysicsEnvironmentalThrottle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "EnviromentalPhysicsThrottle" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ShowDecompositionGeometry", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SolverConvergenceVisualizationMode", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SolverConvergenceVisualizationMode" } }, { "Category": "Performance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ThrottleAdjustTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UseCSGv2", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "PhysicsSettings", "Superclass": "Instance", "Tags": [ "NotCreatable", "Settings" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "PlaceStatsService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "StartPlaySolo", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PlacesService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "AccountAge", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "AccountAgeReplicate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "AppearanceDidLoad", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "AutoJumpEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Camera", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "CameraMaxZoomDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "CameraMinZoomDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "CameraMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "CameraMode" } }, { "Category": "Behavior", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "CanLoadCharacterAppearance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Character", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Model" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "CharacterAppearance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotBrowsable", "Deprecated", { "PreferredDescriptorName": "CharacterAppearanceId", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "CharacterAppearanceId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "ChararacterRegionId", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "ChatMode", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ChatMode" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "ChatPrivacyMode", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ChatPrivacyMode" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "CloudEditCameraCoordinateFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "CloudEditPlayerActive", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "CountryRegionCodeReplicate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DataComplexity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DataComplexityLimit", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DataReady", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Camera", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DevCameraOcclusionMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DevCameraOcclusionMode" } }, { "Category": "Camera", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DevComputerCameraMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DevComputerCameraMovementMode" } }, { "Category": "Control", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DevComputerMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DevComputerMovementMode" } }, { "Category": "Camera", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DevEnableMouseLock", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Camera", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DevTouchCameraMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DevTouchCameraMovementMode" } }, { "Category": "Control", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DevTouchMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DevTouchMovementMode" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DisplayName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "FollowUserId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "FollowUserIdReplicated", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Behavior", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "GameplayPaused", "Security": { "Read": "None", "Write": "NotAccessibleSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Guest", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "HasVerifiedBadge", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Camera", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "HealthDisplayDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "InternalCharacterAppearanceLoaded", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "LocaleId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "MaxSimulationRadius", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "MaximumSimulationRadius", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "MembershipType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "MembershipType" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "MembershipTypeReplicate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "MembershipType" } }, { "Category": "Camera", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "NameDisplayDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Team", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Neutral", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "OsPlatform", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "PlatformName", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "RawJoinData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "ReplicationFocus", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "RespawnLocation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "SpawnLocation" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "SimulationRadius", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "SuperSafeChatReplicate", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Team", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Team", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Team" } }, { "Category": "Team", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "TeamColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Teleported", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "TeleportedIn", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "UnfilteredChat", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "UserId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "VRDevice", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "VREnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "userId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Deprecated", { "PreferredDescriptorName": "UserId", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "MemberType": "Function", "Name": "AddToBlockList", "Parameters": [ { "Name": "userIds", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClearCharacterAppearance", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DistanceFromCharacter", "Parameters": [ { "Name": "point", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFriendStatus", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Enum", "Name": "FriendStatus" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGameSessionID", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetJoinData", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMouse", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Mouse" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetNetworkPing", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetUnder13", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HasAppearanceLoaded", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsVerified", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Kick", "Parameters": [ { "Default": "", "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadBoolean", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadCharacterAppearance", "Parameters": [ { "Name": "assetInstance", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadData", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadInstance", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadNumber", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "double" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadString", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Move", "Parameters": [ { "Name": "walkDirection", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Default": "false", "Name": "relativeToCamera", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveCharacter", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestFriendship", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RevokeFriendship", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SaveBoolean", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SaveData", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SaveInstance", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SaveNumber", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SaveString", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetAccountAge", "Parameters": [ { "Name": "accountAge", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetCharacterAppearanceJson", "Parameters": [ { "Name": "jsonBlob", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetExperienceSettingsLocaleId", "Parameters": [ { "Name": "locale", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMembershipType", "Parameters": [ { "Name": "membershipType", "Type": { "Category": "Enum", "Name": "MembershipType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetModerationAccessKey", "Parameters": [ { "Name": "moderationAccessKey", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetSuperSafeChat", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetUnder13", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UpdatePlayerBlocked", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "blocked", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "loadBoolean", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "LoadBoolean", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "loadInstance", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "LoadInstance", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "loadNumber", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "double" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "LoadNumber", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "loadString", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "LoadString", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "saveBoolean", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SaveBoolean", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "saveInstance", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SaveInstance", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "saveNumber", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SaveNumber", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "saveString", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SaveString", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFriendsOnline", "Parameters": [ { "Default": "200", "Name": "maxFriends", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRankInGroup", "Parameters": [ { "Name": "groupId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRoleInGroup", "Parameters": [ { "Name": "groupId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsBestFriendsWith", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsFriendsWith", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsInGroup", "Parameters": [ { "Name": "groupId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadCharacter", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadCharacterBlocking", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadCharacterWithHumanoidDescription", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestStreamAroundAsync", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Default": "0", "Name": "timeOut", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "WaitForDataReady", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "isFriendsWith", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields", "Deprecated", { "PreferredDescriptorName": "IsFriendsWith", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "waitForDataReady", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields", "Deprecated", { "PreferredDescriptorName": "WaitForDataReady", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CharacterAdded", "Parameters": [ { "Name": "character", "Type": { "Category": "Class", "Name": "Model" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CharacterAppearanceLoaded", "Parameters": [ { "Name": "character", "Type": { "Category": "Class", "Name": "Model" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CharacterRemoving", "Parameters": [ { "Name": "character", "Type": { "Category": "Class", "Name": "Model" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Chatted", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "recipient", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CloudEditSelectionChanged", "Parameters": [ { "Name": "newSelection", "Type": { "Category": "Group", "Name": "Array" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ConnectDiedSignalBackend", "Parameters": [], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FriendStatusChanged", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "friendStatus", "Type": { "Category": "Enum", "Name": "FriendStatus" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Idled", "Parameters": [ { "Name": "time", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Kill", "Parameters": [], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnTeleport", "Parameters": [ { "Name": "teleportState", "Type": { "Category": "Enum", "Name": "TeleportState" } }, { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "spawnName", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnTeleportInternal", "Parameters": [ { "Name": "teleportState", "Type": { "Category": "Enum", "Name": "TeleportState" } }, { "Name": "teleportInfo", "Type": { "Category": "Group", "Name": "Dictionary" } }, { "Name": "customLoadingScreen", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayerExperienceSettingsLocaleSetFromLua", "Parameters": [ { "Name": "newLocaleId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ReceivedJoinTelemetry", "Parameters": [ { "Name": "details", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteFriendRequestSignal", "Parameters": [ { "Name": "otherUserId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "eventType", "Type": { "Category": "Enum", "Name": "FriendRequestEvent" } } ], "Security": "RobloxScriptSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteInsert", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScopeCheckInitiated", "Parameters": [ { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "serializedScopes", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "metadata", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptSecurityError", "Parameters": [ { "Name": "hash", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "error", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "stack", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerToClientUnfilteredChatReplicate", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SetShutdownMessage", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SimulationRadiusChanged", "Parameters": [ { "Name": "radius", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StatsAvailable", "Parameters": [ { "Name": "info", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Player", "Superclass": "Instance" }, { "Members": [ { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "CustomPoliciesEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "", "MemberType": "Property", "Name": "EmulatedCountryCode", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Behavior", "Default": "", "MemberType": "Property", "Name": "EmulatedGameLocale", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "PlayerEmulationEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "", "MemberType": "Property", "Name": "SerializedEmulatedPolicyInfo", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "MemberType": "Function", "Name": "GetEmulatedPolicyInfo", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegionCodeWillHaveAutomaticNonCustomPolicies", "Parameters": [ { "Name": "regionCode", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEmulatedPolicyInfo", "Parameters": [ { "Name": "emulatedPolicyInfo", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PlayerEmulatorService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "ClearComputerCameraMovementModes", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClearComputerMovementModes", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClearTouchCameraMovementModes", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClearTouchMovementModes", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRegisteredComputerCameraMovementModes", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRegisteredComputerMovementModes", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRegisteredTouchCameraMovementModes", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRegisteredTouchMovementModes", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterComputerCameraMovementMode", "Parameters": [ { "Name": "cameraMovementMode", "Type": { "Category": "Enum", "Name": "ComputerCameraMovementMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterComputerMovementMode", "Parameters": [ { "Name": "movementMode", "Type": { "Category": "Enum", "Name": "ComputerMovementMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterTouchCameraMovementMode", "Parameters": [ { "Name": "cameraMovementMode", "Type": { "Category": "Enum", "Name": "TouchCameraMovementMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterTouchMovementMode", "Parameters": [ { "Name": "movementMode", "Type": { "Category": "Enum", "Name": "TouchMovementMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ComputerCameraMovementModeRegistered", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ComputerMovementModeRegistered", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchCameraMovementModeRegistered", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchMovementModeRegistered", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PlayerScripts", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BubbleChat", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CharacterAutoLoads", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ClassicChat", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LocalPlayer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Player" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MaxPlayers", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MaxPlayersInternal", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NumPlayers", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "GetPlayers", "ThreadSafety": "Safe" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PreferredPlayers", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PreferredPlayersInternal", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RespawnTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ServerGitHash", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ServerLogPrefix", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UseStrafingAnimations", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "localPlayer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "LocalPlayer", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Player" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "numPlayers", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "NumPlayers", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "Chat", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateLocalPlayer", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Player" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPlayerByUserId", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "Player" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetPlayerFromCharacter", "Parameters": [ { "Name": "character", "Type": { "Category": "Class", "Name": "Model" } } ], "ReturnType": { "Category": "Class", "Name": "Player" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPlayers", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "ReportAbuse", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "reason", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "optionalMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReportAbuseV3", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "jsonTags", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ResetLocalPlayer", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetChatStyle", "Parameters": [ { "Default": "Classic", "Name": "style", "Type": { "Category": "Enum", "Name": "ChatStyle" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetLocalPlayerInfo", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "userName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "displayName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "membershipType", "Type": { "Category": "Enum", "Name": "MembershipType" } }, { "Name": "isUnder13", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TeamChat", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "WhisperChat", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "getPlayers", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPlayers", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "playerFromCharacter", "Parameters": [ { "Name": "character", "Type": { "Category": "Class", "Name": "Model" } } ], "ReturnType": { "Category": "Class", "Name": "Player" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPlayerFromCharacter", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "players", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPlayers", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateHumanoidModelFromDescription", "Parameters": [ { "Name": "description", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "rigType", "Type": { "Category": "Enum", "Name": "HumanoidRigType" } }, { "Default": "Default", "Name": "assetTypeVerification", "Type": { "Category": "Enum", "Name": "AssetTypeVerification" } } ], "ReturnType": { "Category": "Class", "Name": "Model" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateHumanoidModelFromUserId", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "Model" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCharacterAppearanceAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "Model" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCharacterAppearanceInfoAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFriendsAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "FriendPages" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetHumanoidDescriptionFromOutfitId", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "HumanoidDescription" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetHumanoidDescriptionFromUserId", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "HumanoidDescription" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetNameFromUserIdAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserIdFromNameAsync", "Parameters": [ { "Name": "userName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserThumbnailAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "thumbnailType", "Type": { "Category": "Enum", "Name": "ThumbnailType" } }, { "Name": "thumbnailSize", "Type": { "Category": "Enum", "Name": "ThumbnailSize" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CloudEditApplyEditsMessage", "Parameters": [ { "Name": "playerName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "scriptName", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FriendRequestEvent", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "friendRequestEvent", "Type": { "Category": "Enum", "Name": "FriendRequestEvent" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GameAnnounce", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnLinkedScriptsUpdated", "Parameters": [], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayerAdded", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayerChatted", "Parameters": [ { "Name": "chatType", "Type": { "Category": "Enum", "Name": "PlayerChatType" } }, { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "targetPlayer", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayerConnecting", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayerDisconnecting", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayerMembershipChanged", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayerRejoining", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayerRemoving", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptGameServerReportEnrichment", "Parameters": [ { "Name": "reportId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptReportServerEnrichmentAndScan", "Parameters": [ { "Name": "v1comment", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "submitterId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "abuserId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "reportId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestCloudEditImmediatePublishWithContext", "Parameters": [ { "Name": "spanContext", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestCloudEditKick", "Parameters": [ { "Name": "playerId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestCloudEditShutdown", "Parameters": [], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestTeamCreateImmediateSaveWithContext", "Parameters": [ { "Name": "spanContext", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TeamCreatePublishFinished", "Parameters": [ { "Name": "publishSuccessful", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TeamCreateSaveFinished", "Parameters": [ { "Name": "saveSuccessful", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TeamCreateServerMessage", "Parameters": [ { "Name": "messageType", "Type": { "Category": "Enum", "Name": "MessageType" } }, { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "printToStatusBar", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Players", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CollisionEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GridSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HostDataModelType", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "StudioDataModelType" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HostDataModelTypeIsCurrent", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MultipleDocumentInterfaceInstance", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "MultipleDocumentInterfaceInstance" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UsesAssetInsertionDrag", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "Activate", "Parameters": [ { "Name": "exclusiveMouse", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreatePluginAction", "Parameters": [ { "Name": "actionId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "statusTip", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "iconName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "true", "Name": "allowBinding", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "PluginAction" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreatePluginMenu", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "title", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "icon", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "PluginMenu" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateToolbar", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "PluginToolbar" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Deactivate", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetItem", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "defaultValue", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetJoinMode", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "JointCreationMode" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMouse", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "PluginMouse" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSelectedRibbonTool", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "RibbonTool" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSetting", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetStudioUserId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "PluginSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Intersect", "Parameters": [ { "Name": "objects", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Invoke", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsActivated", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsActivatedWithExclusiveMouse", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Negate", "Parameters": [ { "Name": "objects", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OnInvoke", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OnSetItem", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenScript", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "LuaSourceContainer" } }, { "Default": "1", "Name": "lineNumber", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenWikiPage", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PauseSound", "Parameters": [ { "Name": "sound", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PlaySound", "Parameters": [ { "Name": "sound", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "0", "Name": "normalizedTimePosition", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ResumeSound", "Parameters": [ { "Name": "sound", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SaveSelectedToRoblox", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SelectRibbonTool", "Parameters": [ { "Name": "tool", "Type": { "Category": "Enum", "Name": "RibbonTool" } }, { "Name": "position", "Type": { "Category": "DataType", "Name": "UDim2" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Separate", "Parameters": [ { "Name": "objects", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetItem", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetReady", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetSetting", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartDecalDrag", "Parameters": [ { "Name": "decal", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartDrag", "Parameters": [ { "Name": "dragData", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StopAllSounds", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Union", "Parameters": [ { "Name": "objects", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateDockWidgetPluginGui", "Parameters": [ { "Name": "pluginGuiId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "dockWidgetPluginGuiInfo", "Type": { "Category": "DataType", "Name": "DockWidgetPluginGuiInfo" } } ], "ReturnType": { "Category": "Class", "Name": "DockWidgetPluginGui" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateQWidgetPluginGui", "Parameters": [ { "Name": "pluginGuiId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "pluginGuiOptions", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Class", "Name": "QWidgetPluginGui" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ImportFbxAnimation", "Parameters": [ { "Name": "rigModel", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "true", "Name": "isR15", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ImportFbxRig", "Parameters": [ { "Default": "true", "Name": "isR15", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptForExistingAssetId", "Parameters": [ { "Name": "assetType", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptSaveSelection", "Parameters": [ { "Default": "", "Name": "suggestedFileName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Deactivation", "Parameters": [], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Ready", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Unloading", "Parameters": [], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "ProcessAssetInsertionDrag", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "assetTypeId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "instances", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "Tags": [ "NoYield" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "ProcessAssetInsertionDrop", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "NoYield" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Plugin", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ActionId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "AllowBinding", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "Checked", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "DefaultShortcut", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "StatusTip", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Text", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Event", "Name": "Triggered", "Parameters": [], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PluginAction", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "{\"Metadata\":{\"TargetDataModels\": [\"Edit\", \"Server\", \"Client\"]},\"Permissions\":{}}", "MemberType": "Property", "Name": "Manifest", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "PluginCapabilities", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "PluginDebugService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Data", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MimeType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Sender", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "PluginDragEvent", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "PluginGuiService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "SetAutoUpdate", "Parameters": [ { "Name": "pluginId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "state", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetOTAPluginVersion", "Parameters": [ { "Default": "", "Name": "pluginName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PluginManagementService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "CreatePlugin", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "Tags": [ "Deprecated", "CustomLuaState" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ExportPlace", "Parameters": [ { "Default": "", "Name": "filePath", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ExportSelection", "Parameters": [ { "Default": "", "Name": "filePath", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PluginManager", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "MemberType": "Function", "Name": "CreatePlugin", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "Tags": [ "Deprecated", "CustomLuaState" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ExportPlace", "Parameters": [ { "Default": "", "Name": "filePath", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ExportSelection", "Parameters": [ { "Default": "", "Name": "filePath", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PluginManagerInterface", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Icon", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Title", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "AddAction", "Parameters": [ { "Name": "action", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddMenu", "Parameters": [ { "Name": "menu", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddNewAction", "Parameters": [ { "Name": "actionId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "icon", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddSeparator", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Clear", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowAsync", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PluginMenu", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetPluginPolicy", "Parameters": [ { "Name": "pluginName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PluginPolicyService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "CreateButton", "Parameters": [ { "Name": "buttonId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "tooltip", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "iconname", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PluginToolbar", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ClickableWhenViewportHidden", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Icon", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "MemberType": "Function", "Name": "SetActive", "Parameters": [ { "Name": "active", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Click", "Parameters": [], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PluginToolbarButton", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetAwardablePoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AwardPoints", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "amount", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGamePointBalance", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPointBalance", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PointsAwarded", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "pointsAwarded", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "userBalanceInGame", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "userTotalBalance", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PointsService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "Unknown", "MemberType": "Property", "Name": "IsLuobuServer", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TriStateBoolean" } }, { "Category": "Data", "Default": "Unknown", "MemberType": "Property", "Name": "LuobuWhitelisted", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TriStateBoolean" } }, { "MemberType": "Function", "Name": "GetPolicyInfoForPlayerAsync", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPolicyInfoForServerRobloxOnlyAsync", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PolicyService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EasingDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PoseEasingDirection" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EasingStyle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PoseEasingStyle" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Weight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "PoseBase", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } } ], "MemoryCategory": "Animation", "Name": "NumberPose", "Superclass": "PoseBase" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "MaskWeight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "AddSubPose", "Parameters": [ { "Name": "pose", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSubPoses", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveSubPose", "Parameters": [ { "Name": "pose", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Animation", "Name": "Pose", "Superclass": "PoseBase" }, { "Members": [ { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "PostEffect", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "State", "Default": "0.400000006", "MemberType": "Property", "Name": "Intensity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "24", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.949999988", "MemberType": "Property", "Name": "Threshold", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "BloomEffect", "Superclass": "PostEffect" }, { "Members": [ { "Category": "State", "Default": "24", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "BlurEffect", "Superclass": "PostEffect" }, { "Members": [ { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "Brightness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "Contrast", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "Saturation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "1, 1, 1", "MemberType": "Property", "Name": "TintColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } } ], "MemoryCategory": "Instances", "Name": "ColorCorrectionEffect", "Superclass": "PostEffect" }, { "Members": [ { "Category": "State", "Default": "0.75", "MemberType": "Property", "Name": "FarIntensity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.0500000007", "MemberType": "Property", "Name": "FocusDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "10", "MemberType": "Property", "Name": "InFocusRadius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.75", "MemberType": "Property", "Name": "NearIntensity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "DepthOfFieldEffect", "Superclass": "PostEffect" }, { "Members": [ { "Category": "State", "Default": "0.25", "MemberType": "Property", "Name": "Intensity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Spread", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "SunRaysEffect", "Superclass": "PostEffect" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ProcessInstancePhysicsService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "Interact", "MemberType": "Property", "Name": "ActionText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Localization", "Default": "true", "MemberType": "Property", "Name": "AutoLocalize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "ClickablePrompt", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "OnePerButton", "MemberType": "Property", "Name": "Exclusivity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ProximityPromptExclusivity" } }, { "Category": "Data", "Default": "ButtonX", "MemberType": "Property", "Name": "GamepadKeyCode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "KeyCode" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "HoldDuration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "E", "MemberType": "Property", "Name": "KeyboardKeyCode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "KeyCode" } }, { "Category": "Data", "Default": "10", "MemberType": "Property", "Name": "MaxActivationDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ObjectText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "RequiresLineOfSight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Localization", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "RootLocalizationTable", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "LocalizationTable" } }, { "Category": "Data", "Default": "Default", "MemberType": "Property", "Name": "Style", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ProximityPromptStyle" } }, { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "UIOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "MemberType": "Function", "Name": "InputHoldBegin", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InputHoldEnd", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ButtonHoldBeganActionReplicated", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ButtonHoldEndedActionReplicated", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptButtonHoldBegan", "Parameters": [ { "Name": "playerWhoTriggered", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptButtonHoldEnded", "Parameters": [ { "Name": "playerWhoTriggered", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptHidden", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptShown", "Parameters": [ { "Name": "inputType", "Type": { "Category": "Enum", "Name": "ProximityPromptInputType" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TriggerEnded", "Parameters": [ { "Name": "playerWhoTriggered", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TriggerEndedActionReplicated", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Triggered", "Parameters": [ { "Name": "playerWhoTriggered", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TriggeredActionReplicated", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ProximityPrompt", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "16", "MemberType": "Property", "Name": "MaxPromptsVisible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Event", "Name": "PromptButtonHoldBegan", "Parameters": [ { "Name": "prompt", "Type": { "Category": "Class", "Name": "ProximityPrompt" } }, { "Name": "playerWhoTriggered", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptButtonHoldEnded", "Parameters": [ { "Name": "prompt", "Type": { "Category": "Class", "Name": "ProximityPrompt" } }, { "Name": "playerWhoTriggered", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptHidden", "Parameters": [ { "Name": "prompt", "Type": { "Category": "Class", "Name": "ProximityPrompt" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptShown", "Parameters": [ { "Name": "prompt", "Type": { "Category": "Class", "Name": "ProximityPrompt" } }, { "Name": "inputType", "Type": { "Category": "Enum", "Name": "ProximityPromptInputType" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptTriggerEnded", "Parameters": [ { "Name": "prompt", "Type": { "Category": "Class", "Name": "ProximityPrompt" } }, { "Name": "playerWhoTriggered", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptTriggered", "Parameters": [ { "Name": "prompt", "Type": { "Category": "Class", "Name": "ProximityPrompt" } }, { "Name": "playerWhoTriggered", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ProximityPromptService", "Superclass": "Instance", "Tags": [ "Service", "NotBrowsable" ] }, { "Members": [ { "MemberType": "Function", "Name": "PublishDescendantAssets", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateAssetAndWaitForAssetId", "Parameters": [ { "Name": "instances", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "operationId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "creatorId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "assetType", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "description", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PublishCageMeshAsync", "Parameters": [ { "Name": "wrap", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "cageType", "Type": { "Category": "Enum", "Name": "CageType" } } ], "ReturnType": { "Category": "DataType", "Name": "Content" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PublishService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "AddGlobalPointsField", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddGlobalPointsTag", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DEPRECATED_TrackEvent", "Parameters": [ { "Name": "category", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "action", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "label", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "0", "Name": "value", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DEPRECATED_TrackEventWithArgs", "Parameters": [ { "Name": "category", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "action", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "label", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "args", "Type": { "Category": "Group", "Name": "Dictionary" } }, { "Default": "0", "Name": "value", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetClientId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPlaySessionId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSessionId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReleaseRBXEventStream", "Parameters": [ { "Name": "target", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveGlobalPointsField", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveGlobalPointsTag", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReportCounter", "Parameters": [ { "Name": "counterName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "1", "Name": "amount", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReportInfluxSeries", "Parameters": [ { "Name": "seriesName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "points", "Type": { "Category": "Group", "Name": "Dictionary" } }, { "Name": "throttlingPercentage", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReportStats", "Parameters": [ { "Name": "category", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReportToDiagByCountryCode", "Parameters": [ { "Name": "featureName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "measureName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "seconds", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendEventDeferred", "Parameters": [ { "Name": "target", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventContext", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "additionalArgs", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendEventImmediately", "Parameters": [ { "Name": "target", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventContext", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "additionalArgs", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetRBXEvent", "Parameters": [ { "Name": "target", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventContext", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "additionalArgs", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetRBXEventStream", "Parameters": [ { "Name": "target", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventContext", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "additionalArgs", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TrackEvent", "Parameters": [ { "Name": "category", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "action", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "label", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "0", "Name": "value", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TrackEventWithArgs", "Parameters": [ { "Name": "category", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "action", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "label", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "args", "Type": { "Category": "Group", "Name": "Dictionary" } }, { "Default": "0", "Name": "value", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UpdateHeartbeatObject", "Parameters": [ { "Name": "args", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RbxAnalyticsService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadata", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadataCallbacks", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadataClasses", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadataEnums", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadataEvents", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadataFunctions", "Superclass": "Instance" }, { "Members": [ { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Browsable", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ClassCategory", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ClientOnly", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Constraint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Deprecated", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EditingDisabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EditorType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FFlag", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsBackend", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PropertyOrder", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ScriptContext", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ServerOnly", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SliderScaling", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UIMaximum", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UIMinimum", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UINumTicks", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } } ], "MemoryCategory": "Instances", "Name": "ReflectionMetadataItem", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Reflection", "Default": "0", "MemberType": "Property", "Name": "ExplorerImageIndex", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Reflection", "Default": "2147483647", "MemberType": "Property", "Name": "ExplorerOrder", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Reflection", "Default": "true", "MemberType": "Property", "Name": "Insertable", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Reflection", "Default": "", "MemberType": "Property", "Name": "PreferredParent", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Reflection", "Default": "Always", "MemberType": "Property", "Name": "ServiceVisibility", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ServiceVisibility" } } ], "MemoryCategory": "Instances", "Name": "ReflectionMetadataClass", "Superclass": "ReflectionMetadataItem" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadataEnum", "Superclass": "ReflectionMetadataItem" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadataEnumItem", "Superclass": "ReflectionMetadataItem" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadataMember", "Superclass": "ReflectionMetadataItem" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadataProperties", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadataYieldFunctions", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Event", "Name": "BroadcastRemoteCursorPositions", "Parameters": [ { "Name": "script", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "remoteCursorPosition", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestAllRemoteCursorPositionForScript", "Parameters": [ { "Name": "script", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UpdateClientRemoteCursorPosition", "Parameters": [ { "Name": "script", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "remoteCursorPosition", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RemoteCursorService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "RemoteDebuggerServer", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "FireAllClients", "Parameters": [ { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FireClient", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FireServer", "Parameters": [ { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnClientEvent", "Parameters": [ { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnServerEvent", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RemoteEvent", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "InvokeClient", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InvokeServer", "Parameters": [ { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteOnInvokeClient", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteOnInvokeError", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "arguments", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteOnInvokeServer", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteOnInvokeSuccess", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "OnClientInvoke", "Parameters": [ { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "OnServerInvoke", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RemoteFunction", "Superclass": "Instance" }, { "Members": [ { "Category": "Debug", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AutoFRMLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Performance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EagerBulkExecution", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Performance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EditQualityLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "QualityLevel" } }, { "Category": "Debug", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EnableFRM", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "General", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ExportMergeByMaterial", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "General", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FrameRateManager", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FramerateManagerMode" } }, { "Category": "General", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GraphicsMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "GraphicsMode" } }, { "Category": "Cache", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MeshCacheSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Debug", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MeshPartDetailLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "MeshPartDetailLevel" } }, { "Category": "Performance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "QualityLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "QualityLevel" } }, { "Category": "Debug", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ReloadAssets", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Debug", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RenderCSGTrianglesDebug", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Debug", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ShowBoundingBoxes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Debug", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ViewMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ViewMode" } }, { "MemberType": "Function", "Name": "GetMaxQualityLevel", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RenderSettings", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotBrowsable" ] }, { "Members": [ { "Category": "RenderingTest", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "RenderingTest", "Default": "10", "MemberType": "Property", "Name": "ComparisonDiffThreshold", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "RenderingTest", "Default": "psnr", "MemberType": "Property", "Name": "ComparisonMethod", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RenderingTestComparisonMethod" } }, { "Category": "RenderingTest", "Default": "50", "MemberType": "Property", "Name": "ComparisonPsnrThreshold", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "RenderingTest", "Default": "", "MemberType": "Property", "Name": "Description", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "RenderingTest", "Default": "70", "MemberType": "Property", "Name": "FieldOfView", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "RenderingTest", "Default": "-0, 0, 0", "MemberType": "Property", "Name": "Orientation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "RenderingTest", "Default": "false", "MemberType": "Property", "Name": "PerfTest", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "RenderingTest", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "RenderingTest", "Default": "21", "MemberType": "Property", "Name": "QualityLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "RenderingTest", "Default": "false", "MemberType": "Property", "Name": "ShouldSkip", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "RenderingTest", "Default": "", "MemberType": "Property", "Name": "Ticket", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "RenderingTest", "Default": "10", "MemberType": "Property", "Name": "Timeout", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "RenderdocTriggerCapture", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RenderingTest", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "IsDefaultLoadingGuiRemoved", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsFinishedReplicating", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveDefaultLoadingScreen", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetDefaultLoadingGuiRemoved", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DefaultLoadingGuiRemoved", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FinishedReplicating", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoveDefaultLoadingGuiSignal", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ReplicatedFirst", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReplicatedStorage", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "RobloxPluginGuiService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "RobloxReplicatedStorage", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotBrowsable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "RobloxServerStorage", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "EndRemoteRomarkTest", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RomarkEndOfTest", "Parameters": [], "Security": "RobloxScriptSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RomarkService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Length", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ValuesAndTimes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "MemberType": "Function", "Name": "GetKeyAtIndex", "Parameters": [ { "Name": "index", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "RotationCurveKey" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetKeyIndicesAtTime", "Parameters": [ { "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetKeys", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetValueAtTime", "Parameters": [ { "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "DataType", "Name": "CoordinateFrame?" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertKey", "Parameters": [ { "Name": "key", "Type": { "Category": "DataType", "Name": "RotationCurveKey" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveKeyAtIndex", "Parameters": [ { "Name": "startingIndex", "Type": { "Category": "Primitive", "Name": "int" } }, { "Default": "1", "Name": "count", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetKeys", "Parameters": [ { "Name": "keys", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RotationCurve", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "RtMessagingService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ClientGitHash", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "BindToRenderStep", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "priority", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "function", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCoreScriptVersion", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRobloxClientChannel", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRobloxVersion", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsClient", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "IsEdit", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "PluginSecurity", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "IsRunMode", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "IsRunning", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsServer", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "IsStudio", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "Pause", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Reset", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Run", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Set3dRenderingEnabled", "Parameters": [ { "Name": "enable", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetRobloxGuiFocused", "Parameters": [ { "Name": "focus", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Stop", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnbindFromRenderStep", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "setThrottleFramerateEnabled", "Parameters": [ { "Name": "enable", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Heartbeat", "Parameters": [ { "Name": "deltaTime", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PostSimulation", "Parameters": [ { "Name": "deltaTimeSim", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PreAnimation", "Parameters": [ { "Name": "deltaTimeSim", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PreRender", "Parameters": [ { "Name": "deltaTimeRender", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PreSimulation", "Parameters": [ { "Name": "deltaTimeSim", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RenderStepped", "Parameters": [ { "Name": "deltaTime", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Stepped", "Parameters": [ { "Name": "time", "Type": { "Category": "Primitive", "Name": "double" } }, { "Name": "deltaTime", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RunService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "RuntimeScriptService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "TakeScreenshot", "Parameters": [ { "Name": "screenshotOptions", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FSTriggeredSignal", "Parameters": [ { "Name": "requestId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "playerId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "mac", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "args", "Type": { "Category": "Group", "Name": "Tuple" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScreenshotContentReady", "Parameters": [ { "Name": "screenshotJobId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "contentId", "Type": { "Category": "DataType", "Name": "Content" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScreenshotUploaded", "Parameters": [ { "Name": "screenshotJobId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "screenshotId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "SafetyService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CameraButtonIcon", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CameraButtonPosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CloseButtonPosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CloseWhenScreenshotTaken", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ExperienceNameOverlayEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "OverlayFont", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Font" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UsernameOverlayEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Visible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "ScreenshotHud", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ScriptBuilder", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "CoreScript", "MemberType": "Property", "Name": "CompileTarget", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "CompileTarget" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "CoverageInfo", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "DebugInfo", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "PackAsSource", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "RawBytecode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Deprecated", { "PreferredDescriptorName": "CompileTarget", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "SyncScriptBuilder", "Superclass": "ScriptBuilder", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Event", "Name": "ScriptAdded", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "LuaSourceContainer" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptBeingRemoved", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "LuaSourceContainer" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptChanged", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "LuaSourceContainer" } }, { "Name": "property", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptFullNameChanged", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "LuaSourceContainer" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptSourceChanged", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "LuaSourceContainer" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ScriptChangeService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ScriptCloneWatcher", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ScriptCloneWatcherHelper", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ScriptCommitService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "ScriptsDisabled", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "AddCoreScriptLocal", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "parent", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClearScriptProfilingData", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DeserializeScriptProfilerString", "Parameters": [ { "Name": "jsonString", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCoverageStats", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SaveScriptProfilingData", "Parameters": [ { "Name": "filename", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTimeout", "Parameters": [ { "Name": "seconds", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartScriptProfiling", "Parameters": [ { "Name": "frequency", "Type": { "Category": "Primitive", "Name": "int?" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StopScriptProfiling", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Error", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "stackTrace", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ErrorDetailed", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "stackTrace", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "details", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "securityLevel", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ScriptContext", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "CoreScriptIdentifier", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "CurrentLine", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "IsDebugging", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "IsPaused", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Script", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ScriptGuid", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "AddWatch", "Parameters": [ { "Name": "expression", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBreakpoints", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGlobals", "Parameters": [ { "Default": "0", "Name": "stackFrame", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Map" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetLocals", "Parameters": [ { "Default": "0", "Name": "stackFrame", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Map" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetStack", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUpvalues", "Parameters": [ { "Default": "0", "Name": "stackFrame", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Map" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetWatchValue", "Parameters": [ { "Name": "watch", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetWatches", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetBreakpoint", "Parameters": [ { "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "isContextDependentBreakpoint", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetGlobal", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "stackFrame", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetLocal", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } }, { "Default": "0", "Name": "stackFrame", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetUpvalue", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } }, { "Default": "0", "Name": "stackFrame", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BreakpointAdded", "Parameters": [ { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BreakpointRemoved", "Parameters": [ { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "EncounteredBreak", "Parameters": [ { "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "breakReason", "Type": { "Category": "Enum", "Name": "BreakReason" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Resuming", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "WatchAdded", "Parameters": [ { "Name": "watch", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "WatchRemoved", "Parameters": [ { "Name": "watch", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ScriptDebugger", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetInternalUri", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetLine", "Parameters": [ { "Default": "nil", "Name": "lineIndex", "Type": { "Category": "Primitive", "Name": "int?" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetLineCount", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetScript", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "LuaSourceContainer" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSelectedText", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSelection", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSelectionEnd", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSelectionStart", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetText", "Parameters": [ { "Default": "nil", "Name": "startLine", "Type": { "Category": "Primitive", "Name": "int?" } }, { "Default": "nil", "Name": "startCharacter", "Type": { "Category": "Primitive", "Name": "int?" } }, { "Default": "nil", "Name": "endLine", "Type": { "Category": "Primitive", "Name": "int?" } }, { "Default": "nil", "Name": "endCharacter", "Type": { "Category": "Primitive", "Name": "int?" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetViewport", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HasSelectedText", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsCommandBar", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CloseAsync", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "EditTextAsync", "Parameters": [ { "Name": "newText", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "startLine", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "startCharacter", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "endLine", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "endCharacter", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ForceSetSelectionAsync", "Parameters": [ { "Name": "cursorLine", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "cursorCharacter", "Type": { "Category": "Primitive", "Name": "int" } }, { "Default": "nil", "Name": "anchorLine", "Type": { "Category": "Primitive", "Name": "int?" } }, { "Default": "nil", "Name": "anchorCharacter", "Type": { "Category": "Primitive", "Name": "int?" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestSetSelectionAsync", "Parameters": [ { "Name": "cursorLine", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "cursorCharacter", "Type": { "Category": "Primitive", "Name": "int" } }, { "Default": "nil", "Name": "anchorLine", "Type": { "Category": "Primitive", "Name": "int?" } }, { "Default": "nil", "Name": "anchorCharacter", "Type": { "Category": "Primitive", "Name": "int?" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SelectionChanged", "Parameters": [ { "Name": "positionLine", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "positionCharacter", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "anchorLine", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "anchorCharacter", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ViewportChanged", "Parameters": [ { "Name": "startLine", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "endLine", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ScriptDocument", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "DeregisterAutocompleteCallback", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DeregisterScriptAnalysisCallback", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindScriptDocument", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "LuaSourceContainer" } } ], "ReturnType": { "Category": "Class", "Name": "ScriptDocument" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ForceReloadSource", "Parameters": [ { "Name": "uri", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "newsrc", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetEditorSource", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "LuaSourceContainer" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetScriptDocuments", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterAutocompleteCallback", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "priority", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "callbackFunction", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterScriptAnalysisCallback", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "priority", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "callbackFunction", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenScriptDocumentAsync", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "LuaSourceContainer" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TextDocumentDidChange", "Parameters": [ { "Name": "document", "Type": { "Category": "Class", "Name": "ScriptDocument" } }, { "Name": "changesArray", "Type": { "Category": "Group", "Name": "Variant" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TextDocumentDidClose", "Parameters": [ { "Name": "oldDocument", "Type": { "Category": "Class", "Name": "ScriptDocument" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TextDocumentDidOpen", "Parameters": [ { "Name": "newDocument", "Type": { "Category": "Class", "Name": "ScriptDocument" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ScriptEditorService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetSourceContainerByScriptGuid", "Parameters": [ { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "LuaSourceContainer" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ScriptRegistrationService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ScriptRuntime", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ScriptService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ActiveInstance", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RenderMode", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SelectionRenderMode" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionBoxThickness", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionLineThickness", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionThickness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ShowActiveInstanceHighlight", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "Add", "Parameters": [ { "Name": "instancesToAdd", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClearTerrainSelectionHack", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Get", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Remove", "Parameters": [ { "Name": "instancesToRemove", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Set", "Parameters": [ { "Name": "selection", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTerrainSelectionHack", "Parameters": [ { "Name": "center", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SelectionChanged", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Selection", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "SelectionHighlightManager", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Settings", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UpdateType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SensorUpdateType" } }, { "MemberType": "Function", "Name": "Sense", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnSensorOutputChanged", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "SensorBase", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Output", "Default": "false", "MemberType": "Property", "Name": "FullySubmerged", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Output", "Default": "false", "MemberType": "Property", "Name": "TouchingSurface", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "BuoyancySensor", "Superclass": "SensorBase", "Tags": [ "NotBrowsable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ControllerSensor", "Superclass": "SensorBase", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Output", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "HitFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Output", "Default": "0, 0, 0", "MemberType": "Property", "Name": "HitNormal", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Input", "Default": "0", "MemberType": "Property", "Name": "SearchDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Output", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "SensedPart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Input", "Default": "Floor", "MemberType": "Property", "Name": "SensorMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SensorMode" } } ], "MemoryCategory": "Instances", "Name": "ControllerPartSensor", "Superclass": "ControllerSensor", "Tags": [ "NotBrowsable" ] }, { "Members": [ { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "LoadStringEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "ServerScriptService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ServerStorage", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "FindService", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetService", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "getService", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetService", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "service", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetService", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Close", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CloseLate", "Parameters": [], "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServiceAdded", "Parameters": [ { "Name": "service", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServiceRemoving", "Parameters": [ { "Name": "service", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ServiceProvider", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CreatorId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CreatorType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "CreatorType" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ForceR15", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GameAvatarType", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "GameAvatarType" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GameId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GearGenreSetting", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "GearGenreSetting" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Genre", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Genre" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsSFFlagsLoaded", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "JobInfo", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "JobId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PlaceId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PlaceVersion", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PrivateServerId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PrivateServerOwnerId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "R15CollisionType", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "R15CollisionType" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VIPServerId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "PrivateServerId", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VIPServerOwnerId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "PrivateServerOwnerId", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Workspace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Workspace" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "lighting", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "workspace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Workspace", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Workspace" } }, { "MemberType": "Function", "Name": "BindToClose", "Parameters": [ { "Name": "function", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DefineFastFlag", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "defaultValue", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DefineFastInt", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "defaultValue", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DefineFastString", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "defaultValue", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetEngineFeature", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFastFlag", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFastInt", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFastString", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetJobsInfo", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMessage", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetObjects", "Parameters": [ { "Name": "url", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetObjectsAllOrNone", "Parameters": [ { "Name": "url", "Type": { "Category": "DataType", "Name": "Content" } }, { "Default": "false", "Name": "binaryFormatOnly", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetObjectsList", "Parameters": [ { "Name": "urls", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPlaySessionId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRemoteBuildMode", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsContentLoaded", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsGearTypeAllowed", "Parameters": [ { "Name": "gearType", "Type": { "Category": "Enum", "Name": "GearType" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsLoaded", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsUniverseMetadataLoaded", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Load", "Parameters": [ { "Name": "url", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenScreenshotsFolder", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenVideosFolder", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReportInGoogleAnalytics", "Parameters": [ { "Name": "category", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "custom", "Name": "action", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "none", "Name": "label", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "0", "Name": "value", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetFastFlagForTesting", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "newValue", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetFastIntForTesting", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "newValue", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetFastStringForTesting", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "newValue", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetFlagVersion", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "version", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetIsLoaded", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "placeSizeInBytes", "Type": { "Category": "Primitive", "Name": "int?" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPlaceId", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetUniverseId", "Parameters": [ { "Name": "universeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Shutdown", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetObjectsAsync", "Parameters": [ { "Name": "url", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HttpGetAsync", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "Default", "Name": "httpRequestType", "Type": { "Category": "Enum", "Name": "HttpRequestType" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HttpPostAsync", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "data", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "*/*", "Name": "contentType", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "Default", "Name": "httpRequestType", "Type": { "Category": "Enum", "Name": "HttpRequestType" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertObjectsAndJoinIfLegacyAsync", "Parameters": [ { "Name": "url", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SavePlace", "Parameters": [ { "Default": "SaveAll", "Name": "saveFilter", "Type": { "Category": "Enum", "Name": "SaveFilter" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AllowedGearTypeChanged", "Parameters": [], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GraphicsQualityChangeRequest", "Parameters": [ { "Name": "betterQuality", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ItemChanged", "Parameters": [ { "Name": "object", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "descriptor", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Loaded", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScreenshotReady", "Parameters": [ { "Name": "path", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScreenshotSavedToAlbum", "Parameters": [ { "Name": "filename", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "success", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UniverseMetadataLoaded", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "OnClose", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "BindToClose", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DataModel", "Superclass": "ServiceProvider", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "GenericSettings", "Superclass": "ServiceProvider", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "AnalysticsSettings", "Superclass": "GenericSettings", "Tags": [ "NotCreatable" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetFFlag", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFVariable", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "GlobalSettings", "Superclass": "GenericSettings", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "MemberType": "Function", "Name": "IsUserFeatureEnabled", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Reset", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SaveState", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "UserSettings", "Superclass": "GenericSettings", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "HiddenServices", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Behavior", "Default": "", "MemberType": "Property", "Name": "VisibleServices", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } } ], "MemoryCategory": "Instances", "Name": "ServiceVisibilityService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetCreatedTimestampUtcMs", "Parameters": [ { "Name": "sid", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMetadata", "Parameters": [ { "Name": "sid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRootSID", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveMetadata", "Parameters": [ { "Name": "sid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveSession", "Parameters": [ { "Name": "sid", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveSessionsWithMetadataKey", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReplaceSession", "Parameters": [ { "Name": "sid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SessionExists", "Parameters": [ { "Name": "sid", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMetadata", "Parameters": [ { "Name": "sid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetSession", "Parameters": [ { "Name": "parentSid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "childSid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "SessionService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetSharedTable", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "SharedTable" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "SetSharedTable", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "st", "Type": { "Category": "DataType", "Name": "SharedTable?" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Safe" } ], "MemoryCategory": "Instances", "Name": "SharedTableRegistry", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "Cancel", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Start", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Status", "Parameters": [ { "Name": "progressRatio", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ShorelineUpgraderService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Appearance", "Default": "true", "MemberType": "Property", "Name": "CelestialBodiesShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "11", "MemberType": "Property", "Name": "MoonAngularSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "rbxasset://sky/moon.jpg", "MemberType": "Property", "Name": "MoonTextureId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "rbxasset://textures/sky/sky512_bk.tex", "MemberType": "Property", "Name": "SkyboxBk", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "rbxasset://textures/sky/sky512_dn.tex", "MemberType": "Property", "Name": "SkyboxDn", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "rbxasset://textures/sky/sky512_ft.tex", "MemberType": "Property", "Name": "SkyboxFt", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "rbxasset://textures/sky/sky512_lf.tex", "MemberType": "Property", "Name": "SkyboxLf", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "rbxasset://textures/sky/sky512_rt.tex", "MemberType": "Property", "Name": "SkyboxRt", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "rbxasset://textures/sky/sky512_up.tex", "MemberType": "Property", "Name": "SkyboxUp", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "3000", "MemberType": "Property", "Name": "StarCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Appearance", "Default": "21", "MemberType": "Property", "Name": "SunAngularSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "rbxasset://sky/sun.jpg", "MemberType": "Property", "Name": "SunTextureId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "Instances", "Name": "Sky", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "1, 1, 1", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "0.5", "MemberType": "Property", "Name": "Opacity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "RiseVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "TimeScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0.5", "MemberType": "Property", "Name": "opacity_xml", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "riseVelocity_xml", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "size_xml", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "FastForward", "Parameters": [ { "Name": "numFrames", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Smoke", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "Cancel", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Start", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Status", "Parameters": [ { "Name": "progressRatio", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "SmoothVoxelsUpgraderService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "SnippetService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "HideSelfView", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InvokeGameInvitePromptClosed", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "recipientIds", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InvokeIrisInvite", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "irisParticipantIds", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InvokeIrisInvitePromptClosed", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptGameInvite", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "nil", "Name": "experienceInviteOptions", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptIrisInvite", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowSelfView", "Parameters": [ { "Default": "LastPosition", "Name": "selfViewPosition", "Type": { "Category": "Enum", "Name": "SelfViewPosition" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CanSendGameInviteAsync", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "0", "Name": "recipientId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CanSendIrisInviteAsync", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GameInvitePromptClosed", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "recipientIds", "Type": { "Category": "Group", "Name": "Array" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "IrisInviteInitiated", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "IrisInvitePromptClosed", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptInviteRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "experienceInviteOptions", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptIrisInviteRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SelfViewHidden", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SelfViewVisible", "Parameters": [ { "Name": "selfViewPosition", "Type": { "Category": "Enum", "Name": "SelfViewPosition" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "OnIrisInviteInvoked", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "irisParticipantIds", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "SocialService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Asset", "Default": "0", "MemberType": "Property", "Name": "ChannelCount", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "NotBrowsable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "10", "MemberType": "Property", "Name": "EmitterSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Deprecated", { "PreferredDescriptorName": "RollOffMinDistance", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Asset", "Default": "false", "MemberType": "Property", "Name": "IsLoaded", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Playback", "Default": "true", "MemberType": "Property", "Name": "IsPaused", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "IsPlaying", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "IsSpatial", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Regions", "Default": "0 60000 ", "MemberType": "Property", "Name": "LoopRegion", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "Looped", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "10000", "MemberType": "Property", "Name": "MaxDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Deprecated", { "PreferredDescriptorName": "RollOffMaxDistance", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "10", "MemberType": "Property", "Name": "MinDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Deprecated", { "PreferredDescriptorName": "RollOffMinDistance", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "Pitch", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Deprecated", { "PreferredDescriptorName": "PlaybackSpeed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "PlayOnRemove", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Playback", "Default": "0", "MemberType": "Property", "Name": "PlaybackLoudness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Regions", "Default": "0 60000 ", "MemberType": "Property", "Name": "PlaybackRegion", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "PlaybackRegionsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Playback", "Default": "1", "MemberType": "Property", "Name": "PlaybackSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "Playing", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "PlayingReplicator", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Playback", "Default": "1", "MemberType": "Property", "Name": "RollOffGain", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Emitter", "Default": "10000", "MemberType": "Property", "Name": "RollOffMaxDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Emitter", "Default": "10", "MemberType": "Property", "Name": "RollOffMinDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Emitter", "Default": "Inverse", "MemberType": "Property", "Name": "RollOffMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RollOffMode" } }, { "Category": "Routing", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "SoundGroup", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "SoundGroup" } }, { "Category": "Asset", "Default": "", "MemberType": "Property", "Name": "SoundId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Asset", "Default": "0", "MemberType": "Property", "Name": "TimeLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Playback", "Default": "0", "MemberType": "Property", "Name": "TimePosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "TimePositionReplicator", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Behavior", "Default": "Default", "MemberType": "Property", "Name": "UsageContextPermission", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "UsageContext" } }, { "Category": "Playback", "Default": "0.5", "MemberType": "Property", "Name": "Volume", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "isPlaying", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "IsPlaying", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "10000", "MemberType": "Property", "Name": "xmlRead_MaxDistance_3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "10", "MemberType": "Property", "Name": "xmlRead_MinDistance_3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "Pause", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Play", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Resume", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Stop", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "pause", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Pause", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "play", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Play", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "stop", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Stop", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DidLoop", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "numOfTimesLooped", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Ended", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Loaded", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Paused", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Played", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayingUpdatedFromClient", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayingUpdatedFromServer", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Resumed", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Stopped", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TimePositionUpdatedFromClient", "Parameters": [ { "Name": "newPositionSeconds", "Type": { "Category": "Primitive", "Name": "double" } }, { "Name": "lastLuaSetTimePosition", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TimePositionUpdatedFromServer", "Parameters": [ { "Name": "newPositionSeconds", "Type": { "Category": "Primitive", "Name": "double" } }, { "Name": "lastLuaSetTimePosition", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "playbackActionSync", "Parameters": [ { "Name": "action", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Internal", "Name": "Sound", "Superclass": "Instance" }, { "Members": [ { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Priority", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } } ], "MemoryCategory": "Instances", "Name": "SoundEffect", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "State", "Default": "0.150000006", "MemberType": "Property", "Name": "Depth", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.5", "MemberType": "Property", "Name": "Mix", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.5", "MemberType": "Property", "Name": "Rate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "ChorusSoundEffect", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "0.100000001", "MemberType": "Property", "Name": "Attack", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "GainMakeup", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "40", "MemberType": "Property", "Name": "Ratio", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.100000001", "MemberType": "Property", "Name": "Release", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "SideChain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "State", "Default": "-40", "MemberType": "Property", "Name": "Threshold", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "CompressorSoundEffect", "Superclass": "SoundEffect" }, { "Members": [], "MemoryCategory": "Instances", "Name": "CustomSoundEffect", "Superclass": "SoundEffect", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "AssetSoundEffect", "Superclass": "CustomSoundEffect", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Channel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } } ], "MemoryCategory": "Instances", "Name": "ChannelSelectorSoundEffect", "Superclass": "CustomSoundEffect", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "State", "Default": "0.75", "MemberType": "Property", "Name": "Level", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "DistortionSoundEffect", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Delay", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "DryLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.5", "MemberType": "Property", "Name": "Feedback", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "WetLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "EchoSoundEffect", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "HighGain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "-20", "MemberType": "Property", "Name": "LowGain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "-10", "MemberType": "Property", "Name": "MidGain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "EqualizerSoundEffect", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "HighGain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "LowGain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "MidGain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "400 400 ", "MemberType": "Property", "Name": "MidRange", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } } ], "MemoryCategory": "Instances", "Name": "AudioEqualizer", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "0.449999988", "MemberType": "Property", "Name": "Depth", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.850000024", "MemberType": "Property", "Name": "Mix", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "5", "MemberType": "Property", "Name": "Rate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "FlangeSoundEffect", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "1.25", "MemberType": "Property", "Name": "Octave", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "PitchShiftSoundEffect", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "1.25", "MemberType": "Property", "Name": "Pitch", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "Medium", "MemberType": "Property", "Name": "WindowSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AudioWindowSize" } } ], "MemoryCategory": "Instances", "Name": "AudioPitchShifter", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "Asset", "Default": "0", "MemberType": "Property", "Name": "ChannelCount", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "NotBrowsable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Asset", "Default": "false", "MemberType": "Property", "Name": "IsLoaded", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Playback", "Default": "true", "MemberType": "Property", "Name": "IsPaused", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "IsPlaying", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "IsSpatial", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Regions", "Default": "0 60000 ", "MemberType": "Property", "Name": "LoopRegion", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "Looping", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Regions", "Default": "0 60000 ", "MemberType": "Property", "Name": "PlaybackRegion", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "PlaybackRegionsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Playback", "Default": "1", "MemberType": "Property", "Name": "PlaybackSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "Playing", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "PlayingReplicator", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Asset", "Default": "", "MemberType": "Property", "Name": "Asset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Asset", "Default": "0", "MemberType": "Property", "Name": "TimeLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Playback", "Default": "0", "MemberType": "Property", "Name": "TimePosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "TimePositionReplicator", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Behavior", "Default": "Default", "MemberType": "Property", "Name": "UsageContextPermission", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "UsageContext" } }, { "Category": "Playback", "Default": "1", "MemberType": "Property", "Name": "Volume", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "isPlaying", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "IsPlaying", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "10000", "MemberType": "Property", "Name": "xmlRead_MaxDistance_3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "10", "MemberType": "Property", "Name": "xmlRead_MinDistance_3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "Pause", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Play", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Resume", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Stop", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "pause", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Pause", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "play", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Play", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "stop", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Stop", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DidLoop", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "numOfTimesLooped", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Ended", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Loaded", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Paused", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Played", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayingUpdatedFromClient", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayingUpdatedFromServer", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Resumed", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Stopped", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TimePositionUpdatedFromClient", "Parameters": [ { "Name": "newPositionSeconds", "Type": { "Category": "Primitive", "Name": "double" } }, { "Name": "lastLuaSetTimePosition", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TimePositionUpdatedFromServer", "Parameters": [ { "Name": "newPositionSeconds", "Type": { "Category": "Primitive", "Name": "double" } }, { "Name": "lastLuaSetTimePosition", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "IsReady", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Event", "Name": "playbackActionSync", "Parameters": [ { "Name": "action", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Internal", "Name": "AudioPlayer", "Superclass": "Instance" }, { "Members": [ { "Category": "Connections", "Default": "false", "MemberType": "Property", "Name": "Connected", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Connections", "MemberType": "Property", "Name": "SourceInstance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Connections", "MemberType": "Property", "Name": "TargetInstance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Connections", "MemberType": "Property", "Name": "SourceName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Connections", "MemberType": "Property", "Name": "TargetName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "Wire", "Superclass": "Instance" }, { "Members": [ { "Category": "State", "Default": "Medium", "MemberType": "Property", "Name": "Layout", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AudioChannelLayout" } } ], "MemoryCategory": "Instances", "Name": "AudioChannelMixer", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "Medium", "MemberType": "Property", "Name": "Layout", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AudioChannelLayout" } } ], "MemoryCategory": "Instances", "Name": "AudioChannelSplitter", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "DelayTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "DryLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.5", "MemberType": "Property", "Name": "Feedback", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "RampTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "WetLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioEcho", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "0.45", "MemberType": "Property", "Name": "Depth", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.85", "MemberType": "Property", "Name": "Mix", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "5", "MemberType": "Property", "Name": "Rate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioFlanger", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "MaxLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.01", "MemberType": "Property", "Name": "Release", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioLimiter", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "Interactions", "Default": "", "MemberType": "Property", "Name": "AudioInteractionGroup", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "AcousticSimulationEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Listening", "Default": "false", "MemberType": "Property", "Name": "AngleAttenuation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Listening", "Default": "false", "MemberType": "Property", "Name": "DistanceAttenuation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } } ], "MemoryCategory": "Instances", "Name": "AudioListener", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "PositionOverride", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Interactions", "Default": "", "MemberType": "Property", "Name": "AudioInteractionGroup", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "AcousticSimulationEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Emission", "Default": "false", "MemberType": "Property", "Name": "AngleAttenuation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Emission", "Default": "false", "MemberType": "Property", "Name": "DistanceAttenuation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } } ], "MemoryCategory": "Instances", "Name": "AudioEmitter", "Superclass": "Instance" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "0.45", "MemberType": "Property", "Name": "Depth", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.85", "MemberType": "Property", "Name": "Mix", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "5", "MemberType": "Property", "Name": "Rate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioChorus", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "0.5", "MemberType": "Property", "Name": "DecayRatio", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "1.5", "MemberType": "Property", "Name": "DecayTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Density", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Diffusion", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "DryLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.02", "MemberType": "Property", "Name": "EarlyDelayTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "20000", "MemberType": "Property", "Name": "HighCutFrequency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.04", "MemberType": "Property", "Name": "LastDelayTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "250", "MemberType": "Property", "Name": "LowShelfFrequency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "LowShelfGain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "5000", "MemberType": "Property", "Name": "ReferenceFrequency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "-6", "MemberType": "Property", "Name": "WetLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioReverb", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "0.01", "MemberType": "Property", "Name": "Attack", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.1", "MemberType": "Property", "Name": "Release", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "-36 -24 ", "MemberType": "Property", "Name": "Threshold", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } } ], "MemoryCategory": "Instances", "Name": "AudioGate", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "Asset", "Default": "false", "MemberType": "Property", "Name": "IsLoaded", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Asset", "Default": "0", "MemberType": "Property", "Name": "Pitch", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Asset", "Default": "1", "MemberType": "Property", "Name": "Speed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "", "MemberType": "Property", "Name": "Text", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "", "MemberType": "Property", "Name": "TimeLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "", "MemberType": "Property", "Name": "VoiceId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "IsPlaying", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "Looping", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Asset", "Default": "1", "MemberType": "Property", "Name": "PlaybackSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Asset", "Default": "0", "MemberType": "Property", "Name": "TimePosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Volume", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioTextToSpeech", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Depth", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.5", "MemberType": "Property", "Name": "Duty", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "5", "MemberType": "Property", "Name": "Frequency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "Shape", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "Skew", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "Square", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioTremolo", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "0.1", "MemberType": "Property", "Name": "Attack", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "MakeupGain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "40", "MemberType": "Property", "Name": "Ratio", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.1", "MemberType": "Property", "Name": "Release", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "-40", "MemberType": "Property", "Name": "Threshold", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioCompressor", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Volume", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioFader", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "2000", "MemberType": "Property", "Name": "Frequency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "Gain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.707", "MemberType": "Property", "Name": "Q", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "Medium", "MemberType": "Property", "Name": "FilterType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AudioFilterType" } } ], "MemoryCategory": "Instances", "Name": "AudioFilter", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "Recording", "Default": "true", "MemberType": "Property", "Name": "Active", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Recording", "Default": "false", "MemberType": "Property", "Name": "IsReady", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Recording", "Default": "false", "MemberType": "Property", "Name": "Muted", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Recording", "Default": "false", "MemberType": "Property", "Name": "MutedByLocalUser", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Recording", "MemberType": "Property", "Name": "Player", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Player" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Volume", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioDeviceInput", "Superclass": "Instance" }, { "Members": [ { "Category": "State", "MemberType": "Property", "Name": "Player", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Player" } } ], "MemoryCategory": "Instances", "Name": "AudioDeviceOutput", "Superclass": "Instance" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "0.5", "MemberType": "Property", "Name": "Level", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioDistortion", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "Metering", "Default": "true", "MemberType": "Property", "Name": "SpectrumEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Metering", "Default": "0", "MemberType": "Property", "Name": "PeakLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Metering", "Default": "0", "MemberType": "Property", "Name": "RmsLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "State", "Default": "Medium", "MemberType": "Property", "Name": "WindowSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AudioWindowSize" } } ], "MemoryCategory": "Instances", "Name": "AudioAnalyzer", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "1.5", "MemberType": "Property", "Name": "DecayTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Density", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Diffusion", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "-6", "MemberType": "Property", "Name": "DryLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "WetLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "ReverbSoundEffect", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Depth", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.5", "MemberType": "Property", "Name": "Duty", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "5", "MemberType": "Property", "Name": "Frequency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "TremoloSoundEffect", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "0.5", "MemberType": "Property", "Name": "Volume", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Internal", "Name": "SoundGroup", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "NoReverb", "MemberType": "Property", "Name": "AmbientReverb", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ReverbType" } }, { "Category": "Data", "Default": "3.32999992", "MemberType": "Property", "Name": "DistanceFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "DopplerScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "RespectFilteringEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "RolloffScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "Automatic", "MemberType": "Property", "Name": "VolumetricAudio", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "VolumetricAudio" } }, { "MemberType": "Function", "Name": "BeginRecording", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetInputDevice", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetInputDevices", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetListener", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetOutputDevice", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetOutputDevices", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSoundMemoryData", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PlayLocalSound", "Parameters": [ { "Name": "sound", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetInputDevice", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetListener", "Parameters": [ { "Name": "listenerType", "Type": { "Category": "Enum", "Name": "ListenerType" } }, { "Name": "listener", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetOutputDevice", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetRecordingDevice", "Parameters": [ { "Name": "deviceIndex", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "EndRecording", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRecordingDevices", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ClientLoggedEvent", "Parameters": [ { "Name": "sessionIdRaw", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DeviceListChanged", "Parameters": [ { "Name": "newDevices", "Type": { "Category": "Group", "Name": "Tuple" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "SoundService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "1, 1, 1", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "0.564706, 0.0980392, 1", "MemberType": "Property", "Name": "SparkleColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "TimeScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "FastForward", "Parameters": [ { "Name": "numFrames", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Sparkles", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "SpawnerService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FrameId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FrameName", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FrameType", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DebuggerFrameType" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Globals", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "DebuggerVariable" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Line", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Locals", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "DebuggerVariable" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Populated", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Script", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Upvalues", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "DebuggerVariable" } } ], "MemoryCategory": "Instances", "Name": "StackFrame", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "StandalonePluginScripts", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "StarterGear", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "StarterPack", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Character", "Default": "true", "MemberType": "Property", "Name": "AllowCustomAnimations", "Security": { "Read": "None", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Mobile", "Default": "true", "MemberType": "Property", "Name": "AutoJumpEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Character", "Default": "", "MemberType": "Property", "Name": "AvatarJointUpgrade", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotBrowsable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AvatarJointUpgrade" } }, { "Category": "Camera", "Default": "400", "MemberType": "Property", "Name": "CameraMaxZoomDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "0.5", "MemberType": "Property", "Name": "CameraMinZoomDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "Classic", "MemberType": "Property", "Name": "CameraMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "CameraMode" } }, { "Category": "Character Jump Settings", "Default": "7.19999981", "MemberType": "Property", "Name": "CharacterJumpHeight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Character Jump Settings", "Default": "50", "MemberType": "Property", "Name": "CharacterJumpPower", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Character", "Default": "89", "MemberType": "Property", "Name": "CharacterMaxSlopeAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Character Jump Settings", "Default": "true", "MemberType": "Property", "Name": "CharacterUseJumpPower", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Character", "Default": "16", "MemberType": "Property", "Name": "CharacterWalkSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Character", "Default": "Default", "MemberType": "Property", "Name": "DeathStyle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotBrowsable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DeathStyle" } }, { "Category": "Camera", "Default": "Zoom", "MemberType": "Property", "Name": "DevCameraOcclusionMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DevCameraOcclusionMode" } }, { "Category": "Camera", "Default": "UserChoice", "MemberType": "Property", "Name": "DevComputerCameraMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DevComputerCameraMovementMode" } }, { "Category": "Controls", "Default": "UserChoice", "MemberType": "Property", "Name": "DevComputerMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DevComputerMovementMode" } }, { "Category": "Camera", "Default": "UserChoice", "MemberType": "Property", "Name": "DevTouchCameraMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DevTouchCameraMovementMode" } }, { "Category": "Controls", "Default": "UserChoice", "MemberType": "Property", "Name": "DevTouchMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DevTouchMovementMode" } }, { "Category": "Character", "Default": "Default", "MemberType": "Property", "Name": "EnableDynamicHeads", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "LoadDynamicHeads" } }, { "Category": "Controls", "Default": "true", "MemberType": "Property", "Name": "EnableMouseLockOption", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Character", "Default": "0", "MemberType": "Property", "Name": "GameSettingsAssetIDFace", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Character", "Default": "0", "MemberType": "Property", "Name": "GameSettingsAssetIDHead", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Character", "Default": "0", "MemberType": "Property", "Name": "GameSettingsAssetIDLeftArm", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Character", "Default": "0", "MemberType": "Property", "Name": "GameSettingsAssetIDLeftLeg", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Character", "Default": "0", "MemberType": "Property", "Name": "GameSettingsAssetIDPants", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Character", "Default": "0", "MemberType": "Property", "Name": "GameSettingsAssetIDRightArm", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Character", "Default": "0", "MemberType": "Property", "Name": "GameSettingsAssetIDRightLeg", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Character", "Default": "0", "MemberType": "Property", "Name": "GameSettingsAssetIDShirt", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Character", "Default": "0", "MemberType": "Property", "Name": "GameSettingsAssetIDTeeShirt", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Character", "Default": "0", "MemberType": "Property", "Name": "GameSettingsAssetIDTorso", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Character", "Default": "R15", "MemberType": "Property", "Name": "GameSettingsAvatar", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "GameAvatarType" } }, { "Category": "Character", "Default": "OuterBox", "MemberType": "Property", "Name": "GameSettingsR15Collision", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "R15CollisionType" } }, { "Category": "Character", "Default": "0 1 ", "MemberType": "Property", "Name": "GameSettingsScaleRangeBodyType", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Character", "Default": "0.95 1 ", "MemberType": "Property", "Name": "GameSettingsScaleRangeHead", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Character", "Default": "0.9 1.05 ", "MemberType": "Property", "Name": "GameSettingsScaleRangeHeight", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Character", "Default": "0 1 ", "MemberType": "Property", "Name": "GameSettingsScaleRangeProportion", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Character", "Default": "0.7 1 ", "MemberType": "Property", "Name": "GameSettingsScaleRangeWidth", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Data", "Default": "100", "MemberType": "Property", "Name": "HealthDisplayDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Controls", "Default": "Default", "MemberType": "Property", "Name": "HumanoidStateMachineMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotBrowsable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HumanoidStateMachineMode" } }, { "Category": "Character", "Default": "true", "MemberType": "Property", "Name": "LoadCharacterAppearance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Character", "Default": "Default", "MemberType": "Property", "Name": "LoadCharacterLayeredClothing", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "LoadCharacterLayeredClothing" } }, { "Category": "Character", "Default": "Default", "MemberType": "Property", "Name": "LoadCharacterLayeredClothing ", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "LoadCharacterLayeredClothing" } }, { "Category": "Data", "Default": "100", "MemberType": "Property", "Name": "NameDisplayDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Character", "Default": "true", "MemberType": "Property", "Name": "UserEmotesEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "ClearDefaults", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StarterPlayer", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "StarterPlayerScripts", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "StarterCharacterScripts", "Superclass": "StarterPlayerScripts", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ContactsCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DataReceiveKbps", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DataSendKbps", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HeartbeatTimeMs", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "InstanceCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MovingPrimitivesCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PhysicsReceiveKbps", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PhysicsSendKbps", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PhysicsStepTimeMs", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PrimitivesCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "GetBrowserTrackerId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMemoryUsageMbForTag", "Parameters": [ { "Name": "tag", "Type": { "Category": "Enum", "Name": "DeveloperMemoryTag" } } ], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTotalMemoryUsageMb", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPaginatedMemoryByTexture", "Parameters": [ { "Name": "queryType", "Type": { "Category": "Enum", "Name": "TextureQueryType" } }, { "Name": "pageIndex", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "pageSize", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Stats", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DisplayName", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "GetValue", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "double" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetValueString", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StatsItem", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "RunningAverageItemDouble", "Superclass": "StatsItem", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "RunningAverageItemInt", "Superclass": "StatsItem", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "RunningAverageTimeIntervalItem", "Superclass": "StatsItem", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "TotalCountTimeIntervalItem", "Superclass": "StatsItem", "Tags": [ "NotCreatable" ] }, { "Members": [ { "MemberType": "Function", "Name": "FinishTask", "Parameters": [ { "Name": "taskId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendReport", "Parameters": [ { "Name": "reportName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartTask", "Parameters": [ { "Name": "reportName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "taskName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StopWatchReporter", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "\"TODO\" Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "\"function\" Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "\"local\" Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "\"nil\" Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "\"self\" Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Active Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Active Hover Over Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "General", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Always Save Script Changes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Animate Hover Over", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Auto Clean Empty Line", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Auto Closing Brackets", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Auto Closing Quotes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Auto Delete Closing Brackets and Quotes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Auto Indent Rule", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AutoIndentRule" } }, { "Category": "Auto-Recovery", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Auto-Recovery Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Auto-Recovery", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Auto-Recovery Interval (Minutes)", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Auto-Recovery", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Auto-Recovery Path", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "QDir" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Automatically commit locked scripts when you save or publish to Roblox", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Automatically trigger AI Code Completion", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Background Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "General", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Basic Objects Display Mode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ListDisplayMode" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Bool Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Bracket Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Built-in Function Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Camera", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Camera Mouse Wheel Speed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Camera Pan Speed", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Camera Shift Speed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Camera Speed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Camera Zoom to Mouse Position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Output", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Clear Output On Start", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Lua Debugger", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CommandBarLocalState", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Comment Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Current Line Highlight Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Debugger Current Line Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Debugger Error Line Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Directories", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DefaultScriptFileDir", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "QDir" } }, { "Category": "Browsing", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DeprecatedObjectsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "General", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DisplayLanguage", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Doc View Code Background Color", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Autocomplete", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Autocomplete Doc View", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Advanced", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable CoreScript Debugger", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Advanced", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Http Sandboxing", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Advanced", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Internal Beta Features", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Advanced", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Internal Features", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Script Analysis", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Scrollbar Markers", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Signature Help", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Signature Help Doc View", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Temporary Tabs", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Temporary Tabs In Explorer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Type Hover", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EnableIndentationRulers", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EnableOnTypeAutocomplete", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Error Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Find Selection Background Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Font", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "QFont" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Format On Paste", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Format On Type", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Function Name Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Highlight Current Line", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Highlight Occurances", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HintColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Hover Animate Speed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HoverAnimateSpeed" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Hover Box Thickness", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Hover Line Thickness", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Hover Over Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Directories", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IconOverrideDir", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "QDir" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Indent Using Spaces", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IndentationRulerColor", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "InformationColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Keyword Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Primary Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Line Thickness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Directories", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LocalAssetsFolder", "Security": { "Read": "None", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "QDir" } }, { "Category": "Lua Debugger", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LuaDebuggerEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Lua Debugger", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LuaDebuggerEnabledAtStartup", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Luau Keyword Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Audio", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Main Volume", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Matching Word Background Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Output", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Maximum Output Lines", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Menu Item Background Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Method Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Number Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Audio", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Only Play Audio from Window in Focus", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Operator Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Output", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Output Font", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "QFont" } }, { "Category": "Output", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Output Layout Mode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "OutputLayoutMode" } }, { "Category": "Browsing", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PermissionLevelShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PermissionLevelShown" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Physical Draggers Select Scope By Default", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Pivot Snap To Geometry Color", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Lua Debugger", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PluginDebuggingEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Directories", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PluginsDir", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "QDir" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Primary Text Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Property Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Directories", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ReloadBuiltinPluginsOnChange", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Directories", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ReloadLocalPluginsOnChange", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "General", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Render Throttle Percentage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Advanced", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Respect Studio shortcuts when game has focus", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Ruler Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Rulers", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Undo", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RuntimeUndoBehavior", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RuntimeUndoBehavior" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Script Editor Color Preset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "StudioScriptEditorColorPresets" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Script Editor Scrollbar Background Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Script Editor Scrollbar Handle Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ScriptEditorMenuBorderColor", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ScriptEditorShouldShowPluginMethods", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Lua Debugger", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ScriptTimeoutLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Scroll Past Last Line", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Secondary Text Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Select Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Primary Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Select/Hover Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Selected Menu Item Background Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Selected Text Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Selection Background Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Selection Box Thickness", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Selection Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Selection Line Thickness", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Audio", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Server Audio Behavior", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ServerAudioBehavior" } }, { "Category": "Advanced", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Set Pivot of Imported Parts", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Explorer", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Core GUI in Explorer while Playing", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Advanced", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Diagnostics Bar", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Explorer", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show FileSyncService", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Explorer", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Hidden Objects in Explorer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Hover Over", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Visualization", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Light Guides", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Visualization", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Navigation Labels", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Visualization", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Navigation Mesh", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Visualization", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Pathfinding Links", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Explorer", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Plugin GUI Service in Explorer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Visualization", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Singly Selected Attachment Parent Frame", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Whitespace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Explorer", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show plus button on hover in Explorer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Explorer", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ShowCorePackagesInExplorer", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Skip Closing Brackets and Quotes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "String Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Tab Width", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Text Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Text Wrapping", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "General", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Theme", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "General", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UI Theme", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "UITheme" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Use Bounding Box Move Handles", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Warning Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Whitespace Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "MemberType": "Function", "Name": "GetAvailableThemes", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ThemeChanged", "Parameters": [], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Studio", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "ConvertToPackageUpload", "Parameters": [ { "Name": "uploadUrl", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "cloneInstances", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "originalInstances", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PublishPackage", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "publishInfo", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowSaveToRoblox", "Parameters": [ { "Name": "instances", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "assetType", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SerializeInstances", "Parameters": [ { "Name": "instances", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnConvertToPackageResult", "Parameters": [ { "Name": "isSuccessful", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "errorMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnPublishPackageResult", "Parameters": [ { "Name": "result", "Type": { "Category": "Group", "Name": "Dictionary" } }, { "Name": "errorMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnSaveToRoblox", "Parameters": [ { "Name": "instances", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "assetType", "Type": { "Category": "Group", "Name": "Variant" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StudioAssetService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "0.5, 0", "MemberType": "Property", "Name": "AnchorPoint", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "IsArrowVisible", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "IsNextVisible", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "RowName", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Text", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Title", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "SetOnNextClicked", "Parameters": [ { "Name": "onClick", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StudioCallout", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "EnableScriptCollabByDefaultOnLoad", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "StudioData", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "State", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "HasMultiTouchStarted", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "IsMultiTouchEmulationOn", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "IsMultiTouchEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "PivotPosition", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "MemberType": "Function", "Name": "GetMaxNumTouches", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTouchInBounds", "Parameters": [ { "Name": "index", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTouchPosition", "Parameters": [ { "Name": "index", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "EmulatePCDeviceWithResolution", "Parameters": [ { "Name": "deviceId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "resolution", "Type": { "Category": "DataType", "Name": "Vector2" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCurrentDeviceId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCurrentOrientation", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "ScreenOrientation" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HasDeviceWithId", "Parameters": [ { "Name": "deviceId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetCurrentDeviceId", "Parameters": [ { "Name": "deviceId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetCurrentOrientation", "Parameters": [ { "Name": "orientation", "Type": { "Category": "Enum", "Name": "ScreenOrientation" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CurrentDeviceIdChanged", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OrientationChanged", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchInBoundsChanged", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchPositionsChanged", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StudioDeviceEmulatorService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "StudioObjectBase", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "StudioWidget", "Superclass": "StudioObjectBase" }, { "Members": [ { "MemberType": "Function", "Name": "ClearUploadNames", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PublishAs", "Parameters": [ { "Name": "universeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "groupId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "isPublish", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "publishParameters", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PublishThenTurnOnTeamCreate", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RefreshDocumentDisplayName", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTeamCreateOnPublishInfo", "Parameters": [ { "Name": "shouldTurnOnTcOnPublish", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "newPlaceName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetUniverseDisplayName", "Parameters": [ { "Name": "newName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetUploadNames", "Parameters": [ { "Name": "placeName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "universeName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowSaveOrPublishPlaceToRoblox", "Parameters": [ { "Name": "showGameSelect", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "isPublish", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "closeMode", "Type": { "Category": "Enum", "Name": "StudioCloseMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GameNameUpdated", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GamePublishCancelled", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GamePublishFinished", "Parameters": [ { "Name": "success", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "gameId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnSaveOrPublishPlaceToRoblox", "Parameters": [ { "Name": "showGameSelect", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "isPublish", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "closeMode", "Type": { "Category": "Enum", "Name": "StudioCloseMode" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StudioPublishService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "StudioScriptDebugEventListener", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetSdk", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetSdk", "Parameters": [ { "Name": "sdk", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StudioSdkService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "State", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "ActiveScript", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "AlignDraggedObjects", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DraggerSolveConstraints", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DrawConstraintsOnTop", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "GridSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "HoverInstance", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "InstalledPluginData", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "PivotSnapToGeometry", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "RotateIncrement", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "ShowConstraintDetails", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "StudioLocaleId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "UseLocalSpace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "AnimationIdSelected", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CopyToClipboard", "Parameters": [ { "Name": "stringToCopy", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBadgeConfigureUrl", "Parameters": [ { "Name": "badgeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBadgeUploadUrl", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetClassIcon", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPlaceIsPersistedToCloud", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetResourceByCategory", "Parameters": [ { "Name": "category", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetStartupAssetId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetStartupPluginId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTermsOfUseUrl", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GizmoRaycast", "Parameters": [ { "Name": "origin", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "direction", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Default": "RaycastParams{IgnoreWater=false, BruteForceAllSlow=false, RespectCanCollide=false, CollisionGroup=Default, FilterDescendantsInstances={}}", "Name": "raycastParams", "Type": { "Category": "DataType", "Name": "RaycastParams" } } ], "ReturnType": { "Category": "DataType", "Name": "RaycastResult" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HasInternalPermission", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsPluginInstalled", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsPluginUpToDate", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "currentAssetVersion", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenInBrowser_DONOTUSE", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestClose", "Parameters": [ { "Name": "closeMode", "Type": { "Category": "Enum", "Name": "StudioCloseMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPluginEnabled", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "state", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowPlaceVersionHistoryDialog", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowPublishToRoblox", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UninstallPlugin", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UpdatePluginManagement", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptImportFile", "Parameters": [ { "Default": "{}", "Name": "fileTypeFilter", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptImportFiles", "Parameters": [ { "Default": "{}", "Name": "fileTypeFilter", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TryInstallPlugin", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "assetVersionId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnImportFromRoblox", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnOpenGameSettings", "Parameters": [ { "Name": "pageIdentifier", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnOpenManagePackagePlugin", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnPluginInstalledFromToolbox", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnPluginInstalledFromWeb", "Parameters": [ { "Name": "pluginId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnPublishAsPlugin", "Parameters": [ { "Name": "instances", "Type": { "Category": "DataType", "Name": "Objects" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnSaveToRoblox", "Parameters": [ { "Name": "instances", "Type": { "Category": "DataType", "Name": "Objects" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptTransformPluginCheckEnable", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SaveLocallyAsComplete", "Parameters": [ { "Name": "success", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StudioService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetColor", "Parameters": [ { "Name": "styleguideitem", "Type": { "Category": "Enum", "Name": "StudioStyleGuideColor" } }, { "Default": "Default", "Name": "modifier", "Type": { "Category": "Enum", "Name": "StudioStyleGuideModifier" } } ], "ReturnType": { "Category": "DataType", "Name": "Color3" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StudioTheme", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetStyleRules", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertStyleRule", "Parameters": [ { "Name": "rule", "Type": { "Category": "Class", "Name": "StyleRule" } }, { "Name": "index", "Type": { "Category": "Primitive", "Name": "int?" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetStyleRules", "Parameters": [ { "Name": "rules", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StyleRulesChanged", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "StyleBase", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "-1", "MemberType": "Property", "Name": "Index", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "PropertiesSerialize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Selector", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "SelectorError", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "GetProperties", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPropertiesResolved", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetProperty", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPropertyResolved", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetProperties", "Parameters": [ { "Name": "table", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetProperty", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "StyleRule", "Superclass": "StyleBase" }, { "Members": [ { "MemberType": "Function", "Name": "GetDerives", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetDerives", "Parameters": [ { "Name": "derives", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "StyleSheet", "Superclass": "StyleBase" }, { "Members": [ { "Category": "Data", "Default": "-1", "MemberType": "Property", "Name": "Index", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "StyleSheet", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "StyleSheet" } } ], "MemoryCategory": "Gui", "Name": "StyleDerive", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "StyleSheet", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "StyleSheet" } } ], "MemoryCategory": "Gui", "Name": "StyleLink", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "GetAppliedStyles", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetStyleInfo", "Parameters": [ { "Name": "style", "Type": { "Category": "Class", "Name": "StyleRule" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetStyleSheetDerivesChain", "Parameters": [ { "Name": "styleSheet", "Type": { "Category": "Class", "Name": "StyleSheet" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetStyleSheetInfo", "Parameters": [ { "Name": "styleSheet", "Type": { "Category": "Class", "Name": "StyleSheet" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "StylingService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Appearance", "Default": "Overlay", "MemberType": "Property", "Name": "AlphaMode", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AlphaMode" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "ColorMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "MetalnessMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "NormalMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "RoughnessMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "TexturePack", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "Instances", "Name": "SurfaceAppearance", "Superclass": "Instance" }, { "Members": [ { "Category": "Diagnostics", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SchedulerDutyCycle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Diagnostics", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SchedulerRate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Configuration", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ThreadPoolConfig", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ThreadPoolConfig" } }, { "Category": "Diagnostics", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ThreadPoolSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } } ], "MemoryCategory": "Instances", "Name": "TaskScheduler", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "AutoAssignable", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "AutoColorCharacters", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "-1", "MemberType": "Property", "Name": "ChildOrder", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Score", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TeamColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "MemberType": "Function", "Name": "GetPlayers", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Event", "Name": "PlayerAdded", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayerRemoved", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Team", "Superclass": "Instance" }, { "Members": [ { "Category": "Camera", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "InitialCameraCFrame", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } } ], "MemoryCategory": "Instances", "Name": "TeamCreateData", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Event", "Name": "TeamCreatePublishResult", "Parameters": [ { "Name": "publishSuccessful", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "statusCode", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "errMessage", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "rawMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TeamCreateReplicatedMessage", "Parameters": [ { "Name": "messageType", "Type": { "Category": "Enum", "Name": "MessageType" } }, { "Name": "failureMessage", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "statusCode", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "isPublish", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "authorName", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TeamCreateSaveResult", "Parameters": [ { "Name": "saveSuccessful", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "statusCode", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "errMessage", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "rawMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TeamCreatePublishService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "CloseGameIfUserDoesntHavePerms", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ToggleManageCollaborators", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TeamCreateService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetTeams", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RebalanceTeams", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Teams", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PrivateServerId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ReservedServerAccessCode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "TeleportAsyncResult", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ReservedServerAccessCode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ServerInstanceId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "ShouldReserveServer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "GetTeleportData", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTeleportData", "Parameters": [ { "Name": "teleportData", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TeleportOptions", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CustomizedTeleportUI", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "Block", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetArrivingTeleportGui", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetLocalPlayerTeleportData", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTeleportSetting", "Parameters": [ { "Name": "setting", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTeleportGui", "Parameters": [ { "Name": "gui", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTeleportSetting", "Parameters": [ { "Name": "setting", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Teleport", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Default": "nil", "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "teleportData", "Type": { "Category": "Group", "Name": "Variant" } }, { "Default": "nil", "Name": "customLoadingScreen", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TeleportCancel", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TeleportToPlaceInstance", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "instanceId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "nil", "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "", "Name": "spawnName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "teleportData", "Type": { "Category": "Group", "Name": "Variant" } }, { "Default": "nil", "Name": "customLoadingScreen", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TeleportToPrivateServer", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "reservedServerAccessCode", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "players", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "", "Name": "spawnName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "teleportData", "Type": { "Category": "Group", "Name": "Variant" } }, { "Default": "nil", "Name": "customLoadingScreen", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TeleportToSpawnByName", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "spawnName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "nil", "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "teleportData", "Type": { "Category": "Group", "Name": "Variant" } }, { "Default": "nil", "Name": "customLoadingScreen", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPlayerPlaceInstanceAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReserveServer", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TeleportAsync", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "players", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "nil", "Name": "teleportOptions", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TeleportPartyAsync", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "players", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "teleportData", "Type": { "Category": "Group", "Name": "Variant" } }, { "Default": "nil", "Name": "customLoadingScreen", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnblockAsync", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LocalPlayerArrivedFromTeleport", "Parameters": [ { "Name": "loadingGui", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "dataTable", "Type": { "Category": "Group", "Name": "Variant" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MenuTeleportAttempt", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TeleportInProgress", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "teleportInfo", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TeleportInitFailed", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "teleportResult", "Type": { "Category": "Enum", "Name": "TeleportResult" } }, { "Name": "errorMessage", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "teleportOptions", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TeleportInitFailedInternal", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "teleportResult", "Type": { "Category": "Enum", "Name": "TeleportResult" } }, { "Name": "errorMessage", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TeleportService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "TemporaryCageMeshProvider", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "TemporaryScriptService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "ColorMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "Side", "MemberType": "Property", "Name": "Face", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TerrainFace" } }, { "Category": "Appearance", "Default": "Regular", "MemberType": "Property", "Name": "MaterialPattern", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "MaterialPattern" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "MetalnessMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "NormalMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "RoughnessMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "10", "MemberType": "Property", "Name": "StudsPerTile", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Internal", "Default": "", "MemberType": "Property", "Name": "TexturePack", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "Instances", "Name": "TerrainDetail", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "ExtentsMax", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3int16" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "ExtentsMin", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3int16" } }, { "Category": "Data", "Default": "__api_dump_write_only_property__", "MemberType": "Property", "Name": "GridV3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "WriteOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "IsSmooth", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "1, 1, 1", "MemberType": "Property", "Name": "SizeInCells", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "\u0001\u0005", "MemberType": "Property", "Name": "SmoothGrid", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "MemberType": "Function", "Name": "ApplyTransform", "Parameters": [ { "Name": "rotation", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ApplyTransformSubregion", "Parameters": [ { "Name": "rotation", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3int16" } } ], "ReturnType": { "Category": "Class", "Name": "TerrainRegion" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ConvertToSmooth", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRegionWireframe", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TerrainRegion", "Superclass": "Instance" }, { "Members": [ { "Category": "Physics", "Default": "true", "MemberType": "Property", "Name": "AutoRuns", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Description", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Results", "Default": "0", "MemberType": "Property", "Name": "ErrorCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Settings", "Default": "false", "MemberType": "Property", "Name": "ExecuteWithStudioRun", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Physics", "Default": "true", "MemberType": "Property", "Name": "Is30FpsThrottleEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Physics", "Default": "true", "MemberType": "Property", "Name": "IsPhysicsEnvironmentalThrottled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Physics", "Default": "true", "MemberType": "Property", "Name": "IsSleepAllowed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Settings", "Default": "0", "MemberType": "Property", "Name": "NumberOfPlayers", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Settings", "Default": "0", "MemberType": "Property", "Name": "SimulateSecondsLag", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Results", "Default": "0", "MemberType": "Property", "Name": "TestCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Settings", "Default": "10", "MemberType": "Property", "Name": "Timeout", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Results", "Default": "0", "MemberType": "Property", "Name": "WarnCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "Check", "Parameters": [ { "Name": "condition", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "description", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "nil", "Name": "source", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "0", "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Checkpoint", "Parameters": [ { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "nil", "Name": "source", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "0", "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Done", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Error", "Parameters": [ { "Name": "description", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "nil", "Name": "source", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "0", "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Fail", "Parameters": [ { "Name": "description", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "nil", "Name": "source", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "0", "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Message", "Parameters": [ { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "nil", "Name": "source", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "0", "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Require", "Parameters": [ { "Name": "condition", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "description", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "nil", "Name": "source", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "0", "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ScopeTime", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Warn", "Parameters": [ { "Name": "condition", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "description", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "nil", "Name": "source", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "0", "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "isFeatureEnabled", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Run", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerCollectConditionalResult", "Parameters": [ { "Name": "condition", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerCollectResult", "Parameters": [ { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TestService", "Superclass": "Instance", "Tags": [ "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "TextBoxService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "DisplaySystemMessage", "Parameters": [ { "Name": "systemMessage", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "metadata", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "TextChatMessage" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddUserAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendAsync", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "metadata", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "TextChatMessage" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MessageReceived", "Parameters": [ { "Name": "incomingMessage", "Type": { "Category": "Class", "Name": "TextChatMessage" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "OnIncomingMessage", "Parameters": [ { "Name": "message", "Type": { "Category": "Class", "Name": "TextChatMessage" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "ShouldDeliverCallback", "Parameters": [ { "Name": "message", "Type": { "Category": "Class", "Name": "TextChatMessage" } }, { "Name": "textSource", "Type": { "Category": "Class", "Name": "TextSource" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TextChannel", "Superclass": "Instance" }, { "Members": [ { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "", "MemberType": "Property", "Name": "PrimaryAlias", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Behavior", "Default": "", "MemberType": "Property", "Name": "SecondaryAlias", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Event", "Name": "Triggered", "Parameters": [ { "Name": "originTextSource", "Type": { "Category": "Class", "Name": "TextSource" } }, { "Name": "unfilteredText", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TextChatCommand", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "TextChatConfigurations", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Behavior", "Default": "HumanoidRootPart", "MemberType": "Property", "Name": "AdorneeName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Appearance", "Default": "0.980392, 0.980392, 0.980392", "MemberType": "Property", "Name": "BackgroundColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0.10000000000000000555", "MemberType": "Property", "Name": "BackgroundTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Behavior", "Default": "15", "MemberType": "Property", "Name": "BubbleDuration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "6", "MemberType": "Property", "Name": "BubblesSpacing", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "GothamMedium", "MemberType": "Property", "Name": "Font", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Font" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "FontFace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Font" } }, { "Category": "Behavior", "Default": "0, 0, 0", "MemberType": "Property", "Name": "LocalPlayerStudsOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Behavior", "Default": "3", "MemberType": "Property", "Name": "MaxBubbles", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "100", "MemberType": "Property", "Name": "MaxDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "40", "MemberType": "Property", "Name": "MinimizeDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "true", "MemberType": "Property", "Name": "TailVisible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0.223529, 0.231373, 0.239216", "MemberType": "Property", "Name": "TextColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "16", "MemberType": "Property", "Name": "TextSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Behavior", "Default": "0", "MemberType": "Property", "Name": "VerticalStudsOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "BubbleChatConfiguration", "Superclass": "TextChatConfigurations", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "AbsolutePosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "AbsolutePositionWrite", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "AbsoluteSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "AbsoluteSizeWrite", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Appearance", "Default": "0.0980392, 0.105882, 0.113725", "MemberType": "Property", "Name": "BackgroundColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0.2000000000000000111", "MemberType": "Property", "Name": "BackgroundTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "FontFace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Font" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "IsFocused", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "IsFocusedWrite", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "Slash", "MemberType": "Property", "Name": "KeyboardKeyCode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "KeyCode" } }, { "Category": "Appearance", "Default": "0.698039, 0.698039, 0.698039", "MemberType": "Property", "Name": "PlaceholderColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TargetTextChannel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "TextChannel" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TextBox", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "TextBox" } }, { "Category": "Appearance", "Default": "1, 1, 1", "MemberType": "Property", "Name": "TextColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "14", "MemberType": "Property", "Name": "TextSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Appearance", "Default": "0, 0, 0", "MemberType": "Property", "Name": "TextStrokeColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0.5", "MemberType": "Property", "Name": "TextStrokeTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } } ], "MemoryCategory": "Instances", "Name": "ChatInputBarConfiguration", "Superclass": "TextChatConfigurations", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "AbsolutePosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "AbsolutePositionWrite", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "AbsoluteSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "AbsoluteSizeWrite", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Appearance", "Default": "0.0980392, 0.105882, 0.113725", "MemberType": "Property", "Name": "BackgroundColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0.2999999999999999889", "MemberType": "Property", "Name": "BackgroundTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "FontFace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Font" } }, { "Category": "Behavior", "Default": "1", "MemberType": "Property", "Name": "HeightScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "Left", "MemberType": "Property", "Name": "HorizontalAlignment", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "Unsafe", "ValueType": { "Category": "Enum", "Name": "HorizontalAlignment" } }, { "Category": "Appearance", "Default": "1, 1, 1", "MemberType": "Property", "Name": "TextColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "14", "MemberType": "Property", "Name": "TextSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Appearance", "Default": "0, 0, 0", "MemberType": "Property", "Name": "TextStrokeColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0.5", "MemberType": "Property", "Name": "TextStrokeTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Data", "Default": "Top", "MemberType": "Property", "Name": "VerticalAlignment", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "Unsafe", "ValueType": { "Category": "Enum", "Name": "VerticalAlignment" } }, { "Category": "Behavior", "Default": "1", "MemberType": "Property", "Name": "WidthScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "ChatWindowConfiguration", "Superclass": "TextChatConfigurations", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "BubbleChatMessageProperties", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BubbleChatMessageProperties" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "MessageId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Metadata", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "PrefixText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Status", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextChatMessageStatus" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Text", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TextChannel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "TextChannel" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TextSource", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "TextSource" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Timestamp", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "DateTime" } } ], "MemoryCategory": "Instances", "Name": "TextChatMessage", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "PrefixText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Text", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "TextChatMessageProperties", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "LegacyChatService", "MemberType": "Property", "Name": "ChatVersion", "Security": { "Read": "None", "Write": "NotAccessibleSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ChatVersion" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "CreateDefaultCommands", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "CreateDefaultTextChannels", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "DisplayBubble", "Parameters": [ { "Name": "partOrCharacter", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CanUserChatAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CanUsersChatAsync", "Parameters": [ { "Name": "userIdFrom", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "userIdTo", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BubbleDisplayed", "Parameters": [ { "Name": "partOrCharacter", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "textChatMessage", "Type": { "Category": "Class", "Name": "TextChatMessage" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ClientToServerMessageReplicateSignal", "Parameters": [ { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "prefixText", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "metadata", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "messageId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "textSource", "Type": { "Category": "Class", "Name": "TextSource" } }, { "Name": "textChannel", "Type": { "Category": "Class", "Name": "TextChannel" } }, { "Name": "status", "Type": { "Category": "Enum", "Name": "TextChatMessageStatus" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ClientToServerMessageReplicateSignalV2", "Parameters": [ { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "metadata", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "messageId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "textSource", "Type": { "Category": "Class", "Name": "TextSource" } }, { "Name": "textChannel", "Type": { "Category": "Class", "Name": "TextChannel" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MessageReceived", "Parameters": [ { "Name": "textChatMessage", "Type": { "Category": "Class", "Name": "TextChatMessage" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SendingMessage", "Parameters": [ { "Name": "textChatMessage", "Type": { "Category": "Class", "Name": "TextChatMessage" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerToClientMessageReplicateSignal", "Parameters": [ { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "prefixText", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "metadata", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "messageId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "textSource", "Type": { "Category": "Class", "Name": "TextSource" } }, { "Name": "textChannel", "Type": { "Category": "Class", "Name": "TextChannel" } }, { "Name": "timestamp", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "status", "Type": { "Category": "Enum", "Name": "TextChatMessageStatus" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "OnBubbleAdded", "Parameters": [ { "Name": "message", "Type": { "Category": "Class", "Name": "TextChatMessage" } }, { "Name": "adornee", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "OnIncomingMessage", "Parameters": [ { "Name": "message", "Type": { "Category": "Class", "Name": "TextChatMessage" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TextChatService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetChatForUserAsync", "Parameters": [ { "Name": "toUserId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetNonChatStringForBroadcastAsync", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetNonChatStringForUserAsync", "Parameters": [ { "Name": "toUserId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TextFilterResult", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SourceLanguage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SourceText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "TextFilterResult" } }, { "MemberType": "Function", "Name": "GetTranslationForLocale", "Parameters": [ { "Name": "locale", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "TextFilterResult" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTranslations", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TextFilterTranslatedResult", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetFontMemoryData", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTextSize", "Parameters": [ { "Name": "string", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "fontSize", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "font", "Type": { "Category": "Enum", "Name": "Font" } }, { "Name": "frameSize", "Type": { "Category": "DataType", "Name": "Vector2" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetResolutionScale", "Parameters": [ { "Name": "scale", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FilterAndTranslateStringAsync", "Parameters": [ { "Name": "stringToFilter", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "fromUserId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "targetLocales", "Type": { "Category": "Group", "Name": "Array" } }, { "Default": "PrivateChat", "Name": "textContext", "Type": { "Category": "Enum", "Name": "TextFilterContext" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FilterStringAsync", "Parameters": [ { "Name": "stringToFilter", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "fromUserId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Default": "PrivateChat", "Name": "textContext", "Type": { "Category": "Enum", "Name": "TextFilterContext" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFamilyInfoAsync", "Parameters": [ { "Name": "assetId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTextBoundsAsync", "Parameters": [ { "Name": "params", "Type": { "Category": "Class", "Name": "GetTextBoundsParams" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TextService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "CanSend", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "UserId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "UserIdReplicated", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } } ], "MemoryCategory": "Instances", "Name": "TextSource", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetUserPlatformId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserPlatformName", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HaveActiveUser", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsOver13", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReturnToEngagement", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowAccountPicker", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterActiveUser", "Parameters": [ { "Name": "gamepadId", "Type": { "Category": "Enum", "Name": "UserInputType" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ActiveUserSignedOut", "Parameters": [ { "Name": "signOutStatus", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ThirdPartyUserService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FrameCount", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Populated", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ThreadId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ThreadName", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "GetFrame", "Parameters": [ { "Name": "index", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ThreadState", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "TimerService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "HideNotification", "Parameters": [ { "Name": "notificationId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowNotification", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "notificationId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ToastNotificationService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "TouchInputService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "TouchTransmitter", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "MemberType": "Function", "Name": "FinishSpan", "Parameters": [ { "Name": "spanId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartSpan", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "parentId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TracerService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AudioMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TrackerLodFlagMode" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VideoExtrapolationMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TrackerExtrapolationFlagMode" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VideoLodMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TrackerLodValueMode" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VideoMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TrackerLodFlagMode" } }, { "MemberType": "Function", "Name": "getExtrapolation", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "getVideoLod", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "isAudioEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "isVideoEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UpdateState", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TrackerLodController", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Animation", "Name": "TrackerStreamAnimation", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Attachment0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Attachment" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Attachment1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Attachment" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "Brightness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0 1 1 1 0 1 1 1 1 0 ", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "ColorSequence" } }, { "Category": "Emission", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "FaceCamera", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Emission", "Default": "2", "MemberType": "Property", "Name": "Lifetime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "LightEmission", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "LightInfluence", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Emission", "Default": "0", "MemberType": "Property", "Name": "MaxLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Emission", "Default": "0.100000001", "MemberType": "Property", "Name": "MinLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "Texture", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "TextureLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "Stretch", "MemberType": "Property", "Name": "TextureMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextureMode" } }, { "Category": "Appearance", "Default": "0 0.5 0 1 0.5 0 ", "MemberType": "Property", "Name": "Transparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberSequence" } }, { "Category": "Emission", "Default": "0 1 0 1 1 0 ", "MemberType": "Property", "Name": "WidthScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberSequence" } }, { "MemberType": "Function", "Name": "Clear", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnClearRequested", "Parameters": [], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Trail", "Superclass": "Instance" }, { "Members": [ { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LocaleId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "FormatByKey", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "args", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RobloxOnlyTranslate", "Parameters": [ { "Name": "context", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Translate", "Parameters": [ { "Name": "context", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Translator", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetMainViewSessionId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetStudioWidgetFromLabel", "Parameters": [ { "Name": "label", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "StudioWidget" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HasUserCompletedTutorial", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptClosePlace", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTutorialCompletionStatus", "Parameters": [ { "Name": "completed", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShouldLaunchTutorial", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TutorialService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PlaybackState", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PlaybackState" } }, { "MemberType": "Function", "Name": "Cancel", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Pause", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Play", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Completed", "Parameters": [ { "Name": "playbackState", "Type": { "Category": "Enum", "Name": "PlaybackState" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TweenBase", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Instance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "Time:1 DelayTime:0 RepeatCount:0 Reverses:False EasingDirection:Out EasingStyle:Quad", "MemberType": "Property", "Name": "TweenInfo", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "TweenInfo" } } ], "MemoryCategory": "Instances", "Name": "Tween", "Superclass": "TweenBase" }, { "Members": [ { "MemberType": "Function", "Name": "Create", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "tweenInfo", "Type": { "Category": "DataType", "Name": "TweenInfo" } }, { "Name": "propertyTable", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Class", "Name": "Tween" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetValue", "Parameters": [ { "Name": "alpha", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "easingStyle", "Type": { "Category": "Enum", "Name": "EasingStyle" } }, { "Name": "easingDirection", "Type": { "Category": "Enum", "Name": "EasingDirection" } } ], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TweenService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "UGCAvatarService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetPropertyValue", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "property", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ResetCollisionFidelity", "Parameters": [ { "Name": "meshPart", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMeshIdBlocking", "Parameters": [ { "Name": "meshPart", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CalculateUniqueUVCount", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CanLoadAsset", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FetchAssetWithFormat", "Parameters": [ { "Name": "url", "Type": { "Category": "DataType", "Name": "Content" } }, { "Name": "assetFormat", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMeshTriCount", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMeshVertColors", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMeshVerts", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTextureSize", "Parameters": [ { "Name": "textureId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateCageMeshIntersection", "Parameters": [ { "Name": "innerCageMeshId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "outerCageMeshId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "refMeshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateCageNonManifoldAndHoles", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateDynamicHeadMesh", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateFullBodyCageDeletion", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateMeshBounds", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "meshScale", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "boundsOffset", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "attachmentCF", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "handleCF", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateMeshTriangles", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateMeshVertColors", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "true", "Name": "includeAlpha", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateMisMatchUV", "Parameters": [ { "Name": "innerCageMeshId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "outerCageMeshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateNumTextureChannels", "Parameters": [ { "Name": "textureId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "numChannelsRequired", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateOverlappingVertices", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateSkinnedMesh", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateTextureSize", "Parameters": [ { "Name": "textureId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateUVSpace", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateUniqueUVCount", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "numRequired", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "UGCValidationService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "UIBase", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "UIComponent", "Superclass": "UIBase", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "UIConstraint", "Superclass": "UIComponent", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Behavior", "Default": "1", "MemberType": "Property", "Name": "AspectRatio", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "FitWithinMaxSize", "MemberType": "Property", "Name": "AspectType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AspectType" } }, { "Category": "Behavior", "Default": "Width", "MemberType": "Property", "Name": "DominantAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DominantAxis" } } ], "MemoryCategory": "Instances", "Name": "UIAspectRatioConstraint", "Superclass": "UIConstraint" }, { "Members": [ { "Category": "Behavior", "Default": "INF, INF", "MemberType": "Property", "Name": "MaxSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Behavior", "Default": "0, 0", "MemberType": "Property", "Name": "MinSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } } ], "MemoryCategory": "Instances", "Name": "UISizeConstraint", "Superclass": "UIConstraint" }, { "Members": [ { "Category": "Behavior", "Default": "100", "MemberType": "Property", "Name": "MaxTextSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Behavior", "Default": "1", "MemberType": "Property", "Name": "MinTextSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } } ], "MemoryCategory": "Instances", "Name": "UITextSizeConstraint", "Superclass": "UIConstraint" }, { "Members": [ { "Category": "Appearance", "Default": "0, 8", "MemberType": "Property", "Name": "CornerRadius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim" } } ], "MemoryCategory": "Instances", "Name": "UICorner", "Superclass": "UIComponent" }, { "Members": [ { "Category": "Appearance", "Default": "0 1 1 1 0 1 1 1 1 0 ", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "ColorSequence" } }, { "Category": "Appearance", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0, 0", "MemberType": "Property", "Name": "Offset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "Rotation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0 0 0 1 0 0 ", "MemberType": "Property", "Name": "Transparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberSequence" } } ], "MemoryCategory": "Instances", "Name": "UIGradient", "Superclass": "UIComponent" }, { "Members": [], "MemoryCategory": "Instances", "Name": "UILayout", "Superclass": "UIComponent", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AbsoluteContentSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FillDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FillDirection" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HorizontalAlignment", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HorizontalAlignment" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SortOrder", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SortOrder" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VerticalAlignment", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "VerticalAlignment" } }, { "MemberType": "Function", "Name": "ApplyLayout", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetCustomSortFunction", "Parameters": [ { "Default": "nil", "Name": "function", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "UIGridStyleLayout", "Superclass": "UILayout", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "AbsoluteCellCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "100, 100", "MemberType": "Property", "Name": "AbsoluteCellSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Appearance", "Default": "{0, 5}, {0, 5}", "MemberType": "Property", "Name": "CellPadding", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } }, { "Category": "Appearance", "Default": "{0, 100}, {0, 100}", "MemberType": "Property", "Name": "CellSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } }, { "Category": "Behavior", "Default": "0", "MemberType": "Property", "Name": "FillDirectionMaxCells", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Behavior", "Default": "TopLeft", "MemberType": "Property", "Name": "StartCorner", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "StartCorner" } } ], "MemoryCategory": "Instances", "Name": "UIGridLayout", "Superclass": "UIGridStyleLayout" }, { "Members": [ { "Category": "Appearance", "Default": "0, 0", "MemberType": "Property", "Name": "Padding", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim" } } ], "MemoryCategory": "Instances", "Name": "UIListLayout", "Superclass": "UIGridStyleLayout" }, { "Members": [ { "Category": "Appearance", "Default": "true", "MemberType": "Property", "Name": "Animated", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "Circular", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CurrentPage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "GuiObject" } }, { "Category": "Appearance", "Default": "Out", "MemberType": "Property", "Name": "EasingDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "EasingDirection" } }, { "Category": "Appearance", "Default": "Back", "MemberType": "Property", "Name": "EasingStyle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "EasingStyle" } }, { "Category": "Input", "Default": "true", "MemberType": "Property", "Name": "GamepadInputEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0, 0", "MemberType": "Property", "Name": "Padding", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim" } }, { "Category": "Input", "Default": "true", "MemberType": "Property", "Name": "ScrollWheelInputEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Input", "Default": "true", "MemberType": "Property", "Name": "TouchInputEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "TweenTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "JumpTo", "Parameters": [ { "Name": "page", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "JumpToIndex", "Parameters": [ { "Name": "index", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Next", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Previous", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PageEnter", "Parameters": [ { "Name": "page", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PageLeave", "Parameters": [ { "Name": "page", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Stopped", "Parameters": [ { "Name": "currentPage", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "UIPageLayout", "Superclass": "UIGridStyleLayout" }, { "Members": [ { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "FillEmptySpaceColumns", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "FillEmptySpaceRows", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "RowMajor", "MemberType": "Property", "Name": "MajorAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TableMajorAxis" } }, { "Category": "Appearance", "Default": "{0, 0}, {0, 0}", "MemberType": "Property", "Name": "Padding", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } } ], "MemoryCategory": "Instances", "Name": "UITableLayout", "Superclass": "UIGridStyleLayout" }, { "Members": [ { "Category": "Behavior", "Default": "0, 0", "MemberType": "Property", "Name": "PaddingBottom", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim" } }, { "Category": "Behavior", "Default": "0, 0", "MemberType": "Property", "Name": "PaddingLeft", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim" } }, { "Category": "Behavior", "Default": "0, 0", "MemberType": "Property", "Name": "PaddingRight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim" } }, { "Category": "Behavior", "Default": "0, 0", "MemberType": "Property", "Name": "PaddingTop", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim" } } ], "MemoryCategory": "Instances", "Name": "UIPadding", "Superclass": "UIComponent" }, { "Members": [ { "Category": "Behavior", "Default": "1", "MemberType": "Property", "Name": "Scale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "UIScale", "Superclass": "UIComponent" }, { "Members": [ { "Category": "Appearance", "Default": "Contextual", "MemberType": "Property", "Name": "ApplyStrokeMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ApplyStrokeMode" } }, { "Category": "Appearance", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "Round", "MemberType": "Property", "Name": "LineJoinMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "LineJoinMode" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "Thickness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "Transparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "UIStroke", "Superclass": "UIComponent" }, { "Members": [ { "Category": "Data", "Default": "{\"lastSaveTime\":0,\"lastKnownPublishRequest\":0,\"users\":[]}", "MemberType": "Property", "Name": "CachedData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "AppendTempAssetId", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "id", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "lookAt", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "camPos", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "usage", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AppendVantagePoint", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "id", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "lookAt", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "camPos", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UpgradeTempAssetId", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "tempId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "UnvalidatedAssetService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AllTutorialsDisabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CameraMode", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "CustomCameraMode" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CameraYInverted", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ChatVisible", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CompletedTutorials", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ComputerCameraMovementChanged", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ComputerCameraMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ComputerCameraMovementMode" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ComputerMovementChanged", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ComputerMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ComputerMovementMode" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ControlMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ControlMode" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DefaultCameraID", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Fullscreen", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GamepadCameraSensitivity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GraphicsQualityLevel", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HasEverUsedVR", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsUsingCameraYInverted", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsUsingGamepadCameraSensitivity", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MasterVolume", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MicroProfilerWebServerEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MicroProfilerWebServerIP", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MicroProfilerWebServerPort", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseSensitivity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseSensitivityFirstPerson", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseSensitivityThirdPerson", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "OnScreenProfilerEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "OnboardingsCompleted", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PerformanceStatsVisible", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PlayerHeight", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PreferredTransparency", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RCCProfilerRecordFrameRate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RCCProfilerRecordTimeFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ReducedMotion", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RotationType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RotationType" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SavedQualityLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SavedQualitySetting" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "StartMaximized", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "StartScreenPosition", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "StartScreenSize", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TouchCameraMovementChanged", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TouchCameraMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TouchCameraMovementMode" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TouchMovementChanged", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TouchMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TouchMovementMode" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UiNavigationKeyBindEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UsedCoreGuiIsVisibleToggle", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UsedCustomGuiIsVisibleToggle", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UsedHideHudShortcut", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VREnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VRRotationIntensity", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VRSafetyBubbleMode", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "VRSafetyBubbleMode" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VRSmoothRotationEnabled", "Security": { "Read": "None", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VignetteEnabled", "Security": { "Read": "None", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Configuration", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "gaID", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "GetCameraYInvertValue", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetOnboardingCompleted", "Parameters": [ { "Name": "onboardingId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTutorialState", "Parameters": [ { "Name": "tutorialId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InFullScreen", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InStudioMode", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ResetOnboardingCompleted", "Parameters": [ { "Name": "onboardingId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetCameraYInvertVisible", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetGamepadCameraSensitivityVisible", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetOnboardingCompleted", "Parameters": [ { "Name": "onboardingId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTutorialState", "Parameters": [ { "Name": "tutorialId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FullscreenChanged", "Parameters": [ { "Name": "isFullscreen", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PerformanceStatsVisibleChanged", "Parameters": [ { "Name": "isPerformanceStatsVisible", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StudioModeChanged", "Parameters": [ { "Name": "isStudioMode", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "UserGameSettings", "Superclass": "Instance", "Tags": [ "NotCreatable", "UserSettings" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "AccelerometerEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "BottomBarSize", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "GamepadEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "GyroscopeEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "KeyboardEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "LegacyInputEventsEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "ModalEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Deprecated", { "PreferredDescriptorName": "TouchControlsEnabled", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "MouseBehavior", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "MouseBehavior" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "MouseDeltaSensitivity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "MouseEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "MouseIcon", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "MouseIconEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "NavBarSize", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "OnScreenKeyboardAnimationDuration", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "OnScreenKeyboardPosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "OnScreenKeyboardSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "OnScreenKeyboardVisible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "OverrideMouseIconBehavior", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "OverrideMouseIconBehavior" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "RightBarSize", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "StatusBarSize", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "TouchEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "UserHeadCFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "VREnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "GamepadSupports", "Parameters": [ { "Name": "gamepadNum", "Type": { "Category": "Enum", "Name": "UserInputType" } }, { "Name": "gamepadKeyCode", "Type": { "Category": "Enum", "Name": "KeyCode" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetConnectedGamepads", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetDeviceAcceleration", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "InputObject" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetDeviceGravity", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "InputObject" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetDeviceRotation", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetDeviceType", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "DeviceType" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFocusedTextBox", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "TextBox" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGamepadConnected", "Parameters": [ { "Name": "gamepadNum", "Type": { "Category": "Enum", "Name": "UserInputType" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGamepadState", "Parameters": [ { "Name": "gamepadNum", "Type": { "Category": "Enum", "Name": "UserInputType" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetKeysPressed", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetLastInputType", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "UserInputType" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMouseButtonsPressed", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMouseDelta", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMouseLocation", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetNavigationGamepads", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPlatform", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "Platform" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetStringForKeyCode", "Parameters": [ { "Name": "keyCode", "Type": { "Category": "Enum", "Name": "KeyCode" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSupportedGamepadKeyCodes", "Parameters": [ { "Name": "gamepadNum", "Type": { "Category": "Enum", "Name": "UserInputType" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserCFrame", "Parameters": [ { "Name": "type", "Type": { "Category": "Enum", "Name": "UserCFrame" } } ], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsGamepadButtonDown", "Parameters": [ { "Name": "gamepadNum", "Type": { "Category": "Enum", "Name": "UserInputType" } }, { "Name": "gamepadKeyCode", "Type": { "Category": "Enum", "Name": "KeyCode" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsKeyDown", "Parameters": [ { "Name": "keyCode", "Type": { "Category": "Enum", "Name": "KeyCode" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsMouseButtonPressed", "Parameters": [ { "Name": "mouseButton", "Type": { "Category": "Enum", "Name": "UserInputType" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsNavigationGamepad", "Parameters": [ { "Name": "gamepadEnum", "Type": { "Category": "Enum", "Name": "UserInputType" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RecenterUserHeadCFrame", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendAppUISizes", "Parameters": [ { "Name": "statusBarSize", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "navBarSize", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "bottomBarSize", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "rightBarSize", "Type": { "Category": "DataType", "Name": "Vector2" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetNavigationGamepad", "Parameters": [ { "Name": "gamepadEnum", "Type": { "Category": "Enum", "Name": "UserInputType" } }, { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DeviceAccelerationChanged", "Parameters": [ { "Name": "acceleration", "Type": { "Category": "Class", "Name": "InputObject" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DeviceGravityChanged", "Parameters": [ { "Name": "gravity", "Type": { "Category": "Class", "Name": "InputObject" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DeviceRotationChanged", "Parameters": [ { "Name": "rotation", "Type": { "Category": "Class", "Name": "InputObject" } }, { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GamepadConnected", "Parameters": [ { "Name": "gamepadNum", "Type": { "Category": "Enum", "Name": "UserInputType" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GamepadDisconnected", "Parameters": [ { "Name": "gamepadNum", "Type": { "Category": "Enum", "Name": "UserInputType" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InputBegan", "Parameters": [ { "Name": "input", "Type": { "Category": "Class", "Name": "InputObject" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InputChanged", "Parameters": [ { "Name": "input", "Type": { "Category": "Class", "Name": "InputObject" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InputEnded", "Parameters": [ { "Name": "input", "Type": { "Category": "Class", "Name": "InputObject" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "JumpRequest", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LastInputTypeChanged", "Parameters": [ { "Name": "lastInputType", "Type": { "Category": "Enum", "Name": "UserInputType" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PointerAction", "Parameters": [ { "Name": "wheel", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "pan", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "pinch", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StatusBarTapped", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TextBoxFocusReleased", "Parameters": [ { "Name": "textboxReleased", "Type": { "Category": "Class", "Name": "TextBox" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TextBoxFocused", "Parameters": [ { "Name": "textboxFocused", "Type": { "Category": "Class", "Name": "TextBox" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchEnded", "Parameters": [ { "Name": "touch", "Type": { "Category": "Class", "Name": "InputObject" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchLongPress", "Parameters": [ { "Name": "touchPositions", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "state", "Type": { "Category": "Enum", "Name": "UserInputState" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchMoved", "Parameters": [ { "Name": "touch", "Type": { "Category": "Class", "Name": "InputObject" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchPan", "Parameters": [ { "Name": "touchPositions", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "totalTranslation", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "velocity", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "state", "Type": { "Category": "Enum", "Name": "UserInputState" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchPinch", "Parameters": [ { "Name": "touchPositions", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "scale", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "velocity", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "state", "Type": { "Category": "Enum", "Name": "UserInputState" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchRotate", "Parameters": [ { "Name": "touchPositions", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "rotation", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "velocity", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "state", "Type": { "Category": "Enum", "Name": "UserInputState" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchStarted", "Parameters": [ { "Name": "touch", "Type": { "Category": "Class", "Name": "InputObject" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchSwipe", "Parameters": [ { "Name": "swipeDirection", "Type": { "Category": "Enum", "Name": "SwipeDirection" } }, { "Name": "numberOfTouches", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchTap", "Parameters": [ { "Name": "touchPositions", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchTapInWorld", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "processedByUI", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UserCFrameChanged", "Parameters": [ { "Name": "type", "Type": { "Category": "Enum", "Name": "UserCFrame" } }, { "Name": "value", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "WindowFocusReleased", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "WindowFocused", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "UserInputService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetUserInfosByUserIdsAsync", "Parameters": [ { "Name": "userIds", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "UserService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AutomaticScaling", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "VRScaling" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DidPointerHit", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FadeOutViewOnCollision", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GuiInputUserCFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "UserCFrame" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LaserDistance", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PointerHitCFrame", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VRDeviceAvailable", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VRDeviceName", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VREnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VRSessionState", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "VRSessionState" } }, { "MemberType": "Function", "Name": "GetTouchpadMode", "Parameters": [ { "Name": "pad", "Type": { "Category": "Enum", "Name": "VRTouchpad" } } ], "ReturnType": { "Category": "Enum", "Name": "VRTouchpadMode" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserCFrame", "Parameters": [ { "Name": "type", "Type": { "Category": "Enum", "Name": "UserCFrame" } } ], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserCFrameEnabled", "Parameters": [ { "Name": "type", "Type": { "Category": "Enum", "Name": "UserCFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsMaquettes", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsVRAppBuild", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RecenterUserHeadCFrame", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestNavigation", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "inputUserCFrame", "Type": { "Category": "Enum", "Name": "UserCFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTouchpadMode", "Parameters": [ { "Name": "pad", "Type": { "Category": "Enum", "Name": "VRTouchpad" } }, { "Name": "mode", "Type": { "Category": "Enum", "Name": "VRTouchpadMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LaserPointerTriggered", "Parameters": [ { "Name": "input", "Type": { "Category": "Class", "Name": "InputObject" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "NavigationRequested", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "inputUserCFrame", "Type": { "Category": "Enum", "Name": "UserCFrame" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchpadModeChanged", "Parameters": [ { "Name": "pad", "Type": { "Category": "Enum", "Name": "VRTouchpad" } }, { "Name": "mode", "Type": { "Category": "Enum", "Name": "VRTouchpadMode" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UserCFrameChanged", "Parameters": [ { "Name": "type", "Type": { "Category": "Enum", "Name": "UserCFrame" } }, { "Name": "value", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UserCFrameEnabled", "Parameters": [ { "Name": "type", "Type": { "Category": "Enum", "Name": "UserCFrame" } }, { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "VRService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "VRStatusService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ValueBase", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "BinaryString" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BinaryStringValue", "Superclass": "ValueBase" }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BoolValue", "Superclass": "ValueBase" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "BrickColor" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "BrickColor" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BrickColorValue", "Superclass": "ValueBase" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CFrameValue", "Superclass": "ValueBase" }, { "Members": [ { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "Color3" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "Color3" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Color3Value", "Superclass": "ValueBase" }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "ConstrainedValue", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "MaxValue", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "MinValue", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DoubleConstrainedValue", "Superclass": "ValueBase", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "ConstrainedValue", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "10", "MemberType": "Property", "Name": "MaxValue", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "MinValue", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "IntConstrainedValue", "Superclass": "ValueBase", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "IntValue", "Superclass": "ValueBase" }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "NumberValue", "Superclass": "ValueBase" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ObjectValue", "Superclass": "ValueBase" }, { "Members": [ { "Category": "Data", "Default": "{0, 0, 0}, {0, 0, 0}", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Ray" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "Ray" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "Ray" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RayValue", "Superclass": "ValueBase" }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StringValue", "Superclass": "ValueBase" }, { "Members": [ { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Vector3Value", "Superclass": "ValueBase" }, { "Members": [ { "MemberType": "Function", "Name": "GetValueAtTime", "Parameters": [ { "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "X", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "FloatCurve" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Y", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "FloatCurve" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Z", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "FloatCurve" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Vector3Curve", "Superclass": "Instance" }, { "Members": [ { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "ScriptCollabEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "ScriptCollabVersionHistoryEnabled", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Event", "Name": "CommitRejectedInfo", "Parameters": [ { "Name": "reason", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LockedScriptBatchCommit", "Parameters": [ { "Name": "scriptGuidTuple", "Type": { "Category": "Group", "Name": "Tuple" } }, { "Name": "scriptTextTuple", "Type": { "Category": "Group", "Name": "Tuple" } }, { "Name": "commitMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestAllEditorsSignal", "Parameters": [], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptBatchCommit", "Parameters": [ { "Name": "scriptGuidTuple", "Type": { "Category": "Group", "Name": "Tuple" } }, { "Name": "scriptHashBaseTuple", "Type": { "Category": "Group", "Name": "Tuple" } }, { "Name": "scriptTextTuple", "Type": { "Category": "Group", "Name": "Tuple" } }, { "Name": "commitMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptChangesSubmitted", "Parameters": [ { "Name": "scriptGuid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "submitted", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptEditorAdded", "Parameters": [ { "Name": "scriptGuid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "editor", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptEditorRemoved", "Parameters": [ { "Name": "scriptGuid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "editor", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptStartEdit", "Parameters": [ { "Name": "scriptGuid", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptStopEdit", "Parameters": [ { "Name": "scriptGuid", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "VersionControlService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "Active", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "CameraID", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "GetCameraDevices", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Map" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DevicesChanged", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Error", "Parameters": [ { "Name": "cameraid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "errorcode", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Started", "Parameters": [ { "Name": "cameraid", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Stopped", "Parameters": [ { "Name": "cameraid", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "VideoCaptureService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "VideoService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "AdditionalLuaState", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "Dump", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HandleGamepadAxisInput", "Parameters": [ { "Name": "objectId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "keyCode", "Type": { "Category": "Enum", "Name": "KeyCode" } }, { "Name": "x", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "z", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HandleGamepadButtonInput", "Parameters": [ { "Name": "deviceId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "keyCode", "Type": { "Category": "Enum", "Name": "KeyCode" } }, { "Name": "buttonState", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HandleGamepadConnect", "Parameters": [ { "Name": "deviceId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HandleGamepadDisconnect", "Parameters": [ { "Name": "deviceId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendAccelerometerEvent", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "z", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendGravityEvent", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "z", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendGyroscopeEvent", "Parameters": [ { "Name": "quatX", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "quatY", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "quatZ", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "quatW", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendKeyEvent", "Parameters": [ { "Name": "isPressed", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "keyCode", "Type": { "Category": "Enum", "Name": "KeyCode" } }, { "Name": "isRepeatedKey", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "layerCollector", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendMouseButtonEvent", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "mouseButton", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "isDown", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "layerCollector", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "repeatCount", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendMouseMoveEvent", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "layerCollector", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendMouseWheelEvent", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "isForwardScroll", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "layerCollector", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendTextInputCharacterEvent", "Parameters": [ { "Name": "str", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "layerCollector", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendTouchEvent", "Parameters": [ { "Name": "touchId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "state", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "x", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetInputTypesToIgnore", "Parameters": [ { "Name": "inputTypesToIgnore", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartPlaying", "Parameters": [ { "Name": "fileName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartPlayingJSON", "Parameters": [ { "Name": "string", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartRecording", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StopPlaying", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StopRecording", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "sendRobloxEvent", "Parameters": [ { "Name": "namespace", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "detail", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "detailType", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "sendThemeChangeEvent", "Parameters": [ { "Name": "themeName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "WaitForInputEventsProcessed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlaybackCompleted", "Parameters": [ { "Name": "additionalLuaState", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RecordingCompleted", "Parameters": [ { "Name": "result", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "VirtualInputManager", "Superclass": "Instance", "Tags": [ "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "Button1Down", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Default": "Identity", "Name": "camera", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Button1Up", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Default": "Identity", "Name": "camera", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Button2Down", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Default": "Identity", "Name": "camera", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Button2Up", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Default": "Identity", "Name": "camera", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CaptureController", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClickButton1", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Default": "Identity", "Name": "camera", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClickButton2", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Default": "Identity", "Name": "camera", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "MoveMouse", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Default": "Identity", "Name": "camera", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetKeyDown", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetKeyUp", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartRecording", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StopRecording", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TypeKey", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "VirtualUser", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "VisibilityCheckDispatcher", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "VisibilityService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "Visit", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "State", "Default": "Idle", "MemberType": "Property", "Name": "VoiceChatState", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "VoiceChatState" } }, { "MemberType": "Function", "Name": "GetAndClearCallFailureMessage", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAudioProcessingSettings", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetChannelId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGroupId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMicDevices", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetParticipants", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSessionId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSpeakerDevices", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVoiceChatApiVersion", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVoiceChatAvailable", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVoiceExperienceId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsContextVoiceEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsPublishPaused", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsSubscribePaused", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "JoinByGroupId", "Parameters": [ { "Name": "groupId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "false", "Name": "isMicMuted", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "JoinByGroupIdToken", "Parameters": [ { "Name": "groupId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "isMicMuted", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "false", "Name": "isRetry", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Leave", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PublishPause", "Parameters": [ { "Name": "paused", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMicDevice", "Parameters": [ { "Name": "micDeviceName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "micDeviceGuid", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetSpeakerDevice", "Parameters": [ { "Name": "speakerDeviceName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "speakerDeviceGuid", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SubscribeBlock", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SubscribePause", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "paused", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SubscribePauseAll", "Parameters": [ { "Name": "paused", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SubscribeRetry", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SubscribeUnblock", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsVoiceEnabledForUserIdAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LocalPlayerModerated", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ParticipantsStateChanged", "Parameters": [ { "Name": "participantsLeft", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "participantsJoined", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "updatedStates", "Type": { "Category": "Group", "Name": "Array" } } ], "Security": "RobloxScriptSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayerMicActivitySignalChange", "Parameters": [ { "Name": "activityInfo", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxScriptSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StateChanged", "Parameters": [ { "Name": "old", "Type": { "Category": "Enum", "Name": "VoiceChatState" } }, { "Name": "new", "Type": { "Category": "Enum", "Name": "VoiceChatState" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "VoiceChatInternal", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotBrowsable" ] }, { "Members": [ { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "EnableDefaultVoice", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "UseNewJoinFlow", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "VoiceChatEnabledForPlaceOnRcc", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "VoiceChatEnabledForUniverseOnRcc", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "IsVoiceEnabledForUserIdAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ClientRetryJoin", "Parameters": [], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "JoinedVoice", "Parameters": [ { "Name": "channelName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "participantId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "sessionId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "channelId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ReJoinedVoice", "Parameters": [ { "Name": "channelName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "participantId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "sessionId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "channelId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "VoiceChatClientVoiceCapability", "Parameters": [], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "VoiceChatPlayerMuteStateChangedClientToServer", "Parameters": [ { "Name": "muteState", "Type": { "Category": "Enum", "Name": "MuteState" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "VoiceChatPlayerMuteStateChangedServerToClient", "Parameters": [ { "Name": "muteState", "Type": { "Category": "Enum", "Name": "MuteState" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "VoiceChatSampleTaggedEventClientToServer", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "VoiceChatSampleTaggedEventServerToClient", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "VoiceChatService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "Active", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Parts", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CFrame0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Parts", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CFrame1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Parts", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Part0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Parts", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Part0Internal", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Parts", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Part1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Parts", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Part1Internal", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Behavior", "Default": "3", "MemberType": "Property", "Name": "State", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } } ], "MemoryCategory": "PhysicsParts", "Name": "WeldConstraint", "Superclass": "Instance" } ], "Enums": [ { "Items": [ { "Name": "Unknown", "Value": 0 }, { "Name": "Hat", "Value": 1 }, { "Name": "Hair", "Value": 2 }, { "Name": "Face", "Value": 3 }, { "Name": "Neck", "Value": 4 }, { "Name": "Shoulder", "Value": 5 }, { "Name": "Front", "Value": 6 }, { "Name": "Back", "Value": 7 }, { "Name": "Waist", "Value": 8 }, { "LegacyNames": [ "TeeShirt" ], "Name": "TShirt", "Value": 9 }, { "Name": "Shirt", "Value": 10 }, { "Name": "Pants", "Value": 11 }, { "Name": "Jacket", "Value": 12 }, { "Name": "Sweater", "Value": 13 }, { "Name": "Shorts", "Value": 14 }, { "Name": "LeftShoe", "Value": 15 }, { "Name": "RightShoe", "Value": 16 }, { "Name": "DressSkirt", "Value": 17 }, { "Name": "Eyebrow", "Value": 18 }, { "Name": "Eyelash", "Value": 19 } ], "Name": "AccessoryType" }, { "Items": [ { "Name": "Nothing", "Value": 0 }, { "Name": "Pause", "Value": 1 }, { "Name": "Lose", "Value": 2 }, { "Name": "Draw", "Value": 3 }, { "Name": "Win", "Value": 4 } ], "Name": "ActionType" }, { "Items": [ { "Name": "Attachment0", "Value": 0 }, { "Name": "Attachment1", "Value": 1 }, { "Name": "World", "Value": 2 } ], "Name": "ActuatorRelativeTo" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "Motor", "Value": 1 }, { "Name": "Servo", "Value": 2 } ], "Name": "ActuatorType" }, { "Items": [ { "Name": "HorizontalRectangle", "Value": 1 } ], "Name": "AdShape" }, { "Items": [ { "Name": "Undefined", "Value": 0 }, { "Name": "PortalForward", "Value": 1 }, { "Name": "InGameMenuBackButton", "Value": 2 }, { "Name": "UIBackButton", "Value": 3 } ], "Name": "AdTeleportMethod" }, { "Items": [ { "Name": "Inactive", "Value": 0 }, { "Name": "Active", "Value": 1 } ], "Name": "AdUnitStatus" }, { "Items": [ { "Name": "Automatic", "Value": 0 }, { "Name": "Never", "Value": 1 } ], "Name": "AdornCullingMode" }, { "Items": [ { "Name": "Parallel", "Value": 0 }, { "Name": "Perpendicular", "Value": 1 } ], "Name": "AlignType" }, { "Items": [ { "Name": "Overlay", "Value": 0 }, { "Name": "Transparency", "Value": 1 } ], "Name": "AlphaMode" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Acquire", "Value": 1 }, { "Name": "Spend", "Value": 2 } ], "Name": "AnalyticsEconomyAction" }, { "Items": [ { "Name": "Trace", "Value": 0 }, { "Name": "Debug", "Value": 1 }, { "Name": "Information", "Value": 2 }, { "Name": "Warning", "Value": 3 }, { "Name": "Error", "Value": 4 }, { "Name": "Fatal", "Value": 5 } ], "Name": "AnalyticsLogLevel" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Begin", "Value": 1 }, { "Name": "Complete", "Value": 2 }, { "Name": "Abandon", "Value": 3 }, { "Name": "Fail", "Value": 4 } ], "Name": "AnalyticsProgressionStatus" }, { "Items": [ { "Name": "Idle", "Value": 0 }, { "Name": "Movement", "Value": 1 }, { "Name": "Action", "Value": 2 }, { "Name": "Action2", "Value": 3 }, { "Name": "Action3", "Value": 4 }, { "Name": "Action4", "Value": 5 }, { "Name": "Core", "Value": 1000 } ], "Name": "AnimationPriority" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "AnimatorRetargetingMode" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "OpenApp", "Value": 1 }, { "Name": "TapChatTab", "Value": 2 }, { "Name": "TapConversationEntry", "Value": 3 }, { "Name": "TapAvatarTab", "Value": 4 }, { "Name": "ReadConversation", "Value": 5 }, { "Name": "TapGamePageTab", "Value": 6 }, { "Name": "TapHomePageTab", "Value": 7 }, { "Name": "GamePageLoaded", "Value": 8 }, { "Name": "HomePageLoaded", "Value": 9 }, { "Name": "AvatarEditorPageLoaded", "Value": 10 } ], "Name": "AppShellActionType" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "Chat", "Value": 1 }, { "Name": "AvatarEditor", "Value": 2 }, { "Name": "GamePage", "Value": 3 }, { "Name": "HomePage", "Value": 4 }, { "Name": "More", "Value": 5 }, { "Name": "Landing", "Value": 6 } ], "Name": "AppShellFeature" }, { "Items": [ { "Name": "Unknown", "Value": 0 }, { "Name": "NotSupported", "Value": 1 }, { "Name": "Failed", "Value": 2 }, { "Name": "NotAvailable", "Value": 3 }, { "Name": "Available", "Value": 4 } ], "Name": "AppUpdateStatus" }, { "Items": [ { "Name": "Contextual", "Value": 0 }, { "Name": "Border", "Value": 1 } ], "Name": "ApplyStrokeMode" }, { "Items": [ { "Name": "FitWithinMaxSize", "Value": 0 }, { "Name": "ScaleWithParentSize", "Value": 1 } ], "Name": "AspectType" }, { "Items": [ { "Name": "Success", "Value": 0 }, { "Name": "Failure", "Value": 1 }, { "Name": "None", "Value": 2 }, { "Name": "Loading", "Value": 3 }, { "Name": "TimedOut", "Value": 4 } ], "Name": "AssetFetchStatus" }, { "Items": [ { "Name": "Image", "Value": 1 }, { "LegacyNames": [ "TeeShirt" ], "Name": "TShirt", "Value": 2 }, { "Name": "Audio", "Value": 3 }, { "Name": "Mesh", "Value": 4 }, { "Name": "Lua", "Value": 5 }, { "Name": "Hat", "Value": 8 }, { "Name": "Place", "Value": 9 }, { "Name": "Model", "Value": 10 }, { "Name": "Shirt", "Value": 11 }, { "Name": "Pants", "Value": 12 }, { "Name": "Decal", "Value": 13 }, { "Name": "Head", "Value": 17 }, { "Name": "Face", "Value": 18 }, { "Name": "Gear", "Value": 19 }, { "Name": "Badge", "Value": 21 }, { "Name": "Animation", "Value": 24 }, { "Name": "Torso", "Value": 27 }, { "Name": "RightArm", "Value": 28 }, { "Name": "LeftArm", "Value": 29 }, { "Name": "LeftLeg", "Value": 30 }, { "Name": "RightLeg", "Value": 31 }, { "Name": "Package", "Value": 32 }, { "Name": "GamePass", "Value": 34 }, { "Name": "Plugin", "Value": 38 }, { "Name": "MeshPart", "Value": 40 }, { "Name": "HairAccessory", "Value": 41 }, { "Name": "FaceAccessory", "Value": 42 }, { "Name": "NeckAccessory", "Value": 43 }, { "Name": "ShoulderAccessory", "Value": 44 }, { "Name": "FrontAccessory", "Value": 45 }, { "Name": "BackAccessory", "Value": 46 }, { "Name": "WaistAccessory", "Value": 47 }, { "Name": "ClimbAnimation", "Value": 48 }, { "Name": "DeathAnimation", "Value": 49 }, { "Name": "FallAnimation", "Value": 50 }, { "Name": "IdleAnimation", "Value": 51 }, { "Name": "JumpAnimation", "Value": 52 }, { "Name": "RunAnimation", "Value": 53 }, { "Name": "SwimAnimation", "Value": 54 }, { "Name": "WalkAnimation", "Value": 55 }, { "Name": "PoseAnimation", "Value": 56 }, { "Name": "MoodAnimation", "Value": 78 }, { "Name": "EarAccessory", "Value": 57 }, { "Name": "EyeAccessory", "Value": 58 }, { "Name": "EmoteAnimation", "Value": 61 }, { "Name": "Video", "Value": 62 }, { "LegacyNames": [ "TeeShirtAccessory" ], "Name": "TShirtAccessory", "Value": 64 }, { "Name": "ShirtAccessory", "Value": 65 }, { "Name": "PantsAccessory", "Value": 66 }, { "Name": "JacketAccessory", "Value": 67 }, { "Name": "SweaterAccessory", "Value": 68 }, { "Name": "ShortsAccessory", "Value": 69 }, { "Name": "LeftShoeAccessory", "Value": 70 }, { "Name": "RightShoeAccessory", "Value": 71 }, { "Name": "DressSkirtAccessory", "Value": 72 }, { "Name": "EyebrowAccessory", "Value": 76 }, { "Name": "EyelashAccessory", "Value": 77 }, { "Name": "DynamicHead", "Value": 79 }, { "Name": "FontFamily", "Value": 73 } ], "Name": "AssetType" }, { "Items": [ { "Name": "Default", "Value": 1 }, { "Name": "ClientOnly", "Value": 2 }, { "Name": "Always", "Value": 3 } ], "Name": "AssetTypeVerification" }, { "Items": [ { "Name": "Music", "Value": 1 }, { "Name": "SoundEffect", "Value": 2 } ], "Name": "AudioSubType" }, { "Items": [ { "Name": "Off", "Value": 0 }, { "Name": "Absolute", "Value": 1 }, { "Name": "Relative", "Value": 2 } ], "Name": "AutoIndentRule" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "X", "Value": 1 }, { "Name": "Y", "Value": 2 }, { "Name": "XY", "Value": 3 } ], "Name": "AutomaticSize" }, { "Items": [ { "Name": "TShirt", "Value": 2 }, { "Name": "Hat", "Value": 8 }, { "Name": "HairAccessory", "Value": 41 }, { "Name": "FaceAccessory", "Value": 42 }, { "Name": "NeckAccessory", "Value": 43 }, { "Name": "ShoulderAccessory", "Value": 44 }, { "Name": "FrontAccessory", "Value": 45 }, { "Name": "BackAccessory", "Value": 46 }, { "Name": "WaistAccessory", "Value": 47 }, { "Name": "Shirt", "Value": 11 }, { "Name": "Pants", "Value": 12 }, { "Name": "Gear", "Value": 19 }, { "Name": "Head", "Value": 17 }, { "Name": "Face", "Value": 18 }, { "Name": "Torso", "Value": 27 }, { "Name": "RightArm", "Value": 28 }, { "Name": "LeftArm", "Value": 29 }, { "Name": "LeftLeg", "Value": 30 }, { "Name": "RightLeg", "Value": 31 }, { "Name": "ClimbAnimation", "Value": 48 }, { "Name": "FallAnimation", "Value": 50 }, { "Name": "IdleAnimation", "Value": 51 }, { "Name": "JumpAnimation", "Value": 52 }, { "Name": "RunAnimation", "Value": 53 }, { "Name": "SwimAnimation", "Value": 54 }, { "Name": "WalkAnimation", "Value": 55 }, { "Name": "MoodAnimation", "Value": 78 }, { "Name": "EmoteAnimation", "Value": 61 }, { "LegacyNames": [ "TeeShirtAccessory" ], "Name": "TShirtAccessory", "Value": 64 }, { "Name": "ShirtAccessory", "Value": 65 }, { "Name": "PantsAccessory", "Value": 66 }, { "Name": "JacketAccessory", "Value": 67 }, { "Name": "SweaterAccessory", "Value": 68 }, { "Name": "ShortsAccessory", "Value": 69 }, { "Name": "LeftShoeAccessory", "Value": 70 }, { "Name": "RightShoeAccessory", "Value": 71 }, { "Name": "DressSkirtAccessory", "Value": 72 }, { "Name": "EyebrowAccessory", "Value": 76 }, { "Name": "EyelashAccessory", "Value": 77 }, { "Name": "DynamicHead", "Value": 79 } ], "Name": "AvatarAssetType" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "UniverseAudio", "Value": 1 }, { "Name": "UniverseVideo", "Value": 2 }, { "Name": "PlaceAudio", "Value": 4 }, { "Name": "PlaceVideo", "Value": 8 }, { "Name": "UserAudioEligible", "Value": 16 }, { "Name": "UserAudio", "Value": 32 }, { "Name": "UserVideoEligible", "Value": 64 }, { "Name": "UserVideo", "Value": 128 }, { "Name": "UserBanned", "Value": 256 } ], "Name": "AvatarChatServiceFeature" }, { "Items": [ { "Name": "Friend", "Value": 0 }, { "Name": "Chat", "Value": 1 }, { "Name": "Emote", "Value": 2 }, { "Name": "InspectMenu", "Value": 3 } ], "Name": "AvatarContextMenuOption" }, { "Items": [ { "Name": "Asset", "Value": 1 }, { "Name": "Bundle", "Value": 2 } ], "Name": "AvatarItemType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Enabled", "Value": 1 }, { "Name": "Disabled", "Value": 2 } ], "Name": "AvatarJointUpgrade" }, { "Items": [ { "Name": "Success", "Value": 1 }, { "Name": "PermissionDenied", "Value": 2 }, { "Name": "Failed", "Value": 3 } ], "Name": "AvatarPromptResult" }, { "Items": [ { "Name": "Closeup", "Value": 1 }, { "Name": "FullBody", "Value": 2 } ], "Name": "AvatarThumbnailCustomizationType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "AvatarUnificationMode" }, { "Items": [ { "LegacyNames": [ "Left", "Right" ], "Name": "X", "Value": 0 }, { "LegacyNames": [ "Bottom", "Top" ], "Name": "Y", "Value": 1 }, { "LegacyNames": [ "Back", "Front" ], "Name": "Z", "Value": 2 } ], "Name": "Axis" }, { "Items": [ { "LegacyNames": [ "Laser", "Rocket", "Slingshot" ], "Name": "Script", "Value": 0 }, { "Name": "GameTool", "Value": 1 }, { "Name": "Grab", "Value": 2 }, { "Name": "Clone", "Value": 3 }, { "Name": "Hammer", "Value": 4 } ], "Name": "BinType" }, { "Items": [ { "Name": "Head", "Value": 0 }, { "Name": "Torso", "Value": 1 }, { "Name": "LeftArm", "Value": 2 }, { "Name": "RightArm", "Value": 3 }, { "Name": "LeftLeg", "Value": 4 }, { "Name": "RightLeg", "Value": 5 } ], "Name": "BodyPart" }, { "Items": [ { "Name": "Head", "Value": 0 }, { "Name": "UpperTorso", "Value": 1 }, { "Name": "LowerTorso", "Value": 2 }, { "Name": "LeftFoot", "Value": 3 }, { "Name": "LeftLowerLeg", "Value": 4 }, { "Name": "LeftUpperLeg", "Value": 5 }, { "Name": "RightFoot", "Value": 6 }, { "Name": "RightLowerLeg", "Value": 7 }, { "Name": "RightUpperLeg", "Value": 8 }, { "Name": "LeftHand", "Value": 9 }, { "Name": "LeftLowerArm", "Value": 10 }, { "Name": "LeftUpperArm", "Value": 11 }, { "Name": "RightHand", "Value": 12 }, { "Name": "RightLowerArm", "Value": 13 }, { "Name": "RightUpperArm", "Value": 14 }, { "Name": "RootPart", "Value": 15 }, { "Name": "Unknown", "Value": 17 } ], "Name": "BodyPartR15" }, { "Items": [ { "Name": "Outline", "Value": 0 }, { "Name": "Middle", "Value": 1 }, { "Name": "Inset", "Value": 2 } ], "Name": "BorderMode" }, { "Items": [ { "Name": "Other", "Value": 0 }, { "Name": "Error", "Value": 1 }, { "Name": "UserBreakpoint", "Value": 3 }, { "Name": "SpecialBreakpoint", "Value": 2 } ], "Name": "BreakReason" }, { "Items": [ { "Name": "Requested", "Value": 0 }, { "Name": "ScriptChanged", "Value": 1 }, { "Name": "ScriptRemoved", "Value": 2 } ], "Name": "BreakpointRemoveReason" }, { "Items": [ { "Name": "FireAllEvents", "Value": 0 }, { "Name": "FireCFrameChanged", "Value": 1 } ], "Name": "BulkMoveMode" }, { "Items": [ { "Name": "BodyParts", "Value": 1 }, { "Name": "Animations", "Value": 2 }, { "Name": "Shoes", "Value": 3 }, { "Name": "DynamicHead", "Value": 4 }, { "Name": "DynamicHeadAvatar", "Value": 5 } ], "Name": "BundleType" }, { "Items": [ { "Name": "Jump", "Value": 32 }, { "Name": "Dismount", "Value": 8 } ], "Name": "Button" }, { "Items": [ { "Name": "Custom", "Value": 0 }, { "Name": "RobloxButtonDefault", "Value": 1 }, { "Name": "RobloxButton", "Value": 2 }, { "Name": "RobloxRoundButton", "Value": 3 }, { "Name": "RobloxRoundDefaultButton", "Value": 4 }, { "Name": "RobloxRoundDropdownButton", "Value": 5 } ], "Name": "ButtonStyle" }, { "Items": [ { "Name": "Inner", "Value": 0 }, { "Name": "Outer", "Value": 1 } ], "Name": "CageType" }, { "Items": [ { "Name": "Classic", "Value": 0 }, { "Name": "LockFirstPerson", "Value": 1 } ], "Name": "CameraMode" }, { "Items": [ { "Name": "Classic", "Value": 0 }, { "Name": "EdgeBump", "Value": 1 } ], "Name": "CameraPanMode" }, { "Items": [ { "Name": "Fixed", "Value": 0 }, { "Name": "Watch", "Value": 2 }, { "Name": "Attach", "Value": 1 }, { "Name": "Track", "Value": 3 }, { "Name": "Follow", "Value": 4 }, { "Name": "Custom", "Value": 5 }, { "Name": "Scriptable", "Value": 6 }, { "Name": "Orbital", "Value": 7 } ], "Name": "CameraType" }, { "Items": [ { "Name": "None", "Value": 1 }, { "Name": "Featured", "Value": 2 }, { "Name": "Collectibles", "Value": 3 }, { "Name": "CommunityCreations", "Value": 4 }, { "Name": "Premium", "Value": 5 }, { "Name": "Recommended", "Value": 6 } ], "Name": "CatalogCategoryFilter" }, { "Items": [ { "Name": "Past12Hours", "Value": 1 }, { "Name": "PastDay", "Value": 2 }, { "Name": "Past3Days", "Value": 3 }, { "Name": "PastWeek", "Value": 4 }, { "Name": "PastMonth", "Value": 5 }, { "Name": "AllTime", "Value": 6 } ], "Name": "CatalogSortAggregation" }, { "Items": [ { "Name": "Relevance", "Value": 1 }, { "Name": "PriceHighToLow", "Value": 2 }, { "Name": "PriceLowToHigh", "Value": 3 }, { "Name": "MostFavorited", "Value": 5 }, { "LegacyNames": [ "RecentlyUpdated" ], "Name": "RecentlyCreated", "Value": 6 }, { "Name": "Bestselling", "Value": 7 } ], "Name": "CatalogSortType" }, { "Items": [ { "Name": "Solid", "Value": 0 }, { "Name": "VerticalWedge", "Value": 1 }, { "Name": "CornerWedge", "Value": 2 }, { "Name": "InverseCornerWedge", "Value": 3 }, { "Name": "HorizontalWedge", "Value": 4 } ], "Name": "CellBlock" }, { "Items": [ { "Name": "Empty", "Value": 0 }, { "Name": "Grass", "Value": 1 }, { "Name": "Sand", "Value": 2 }, { "Name": "Brick", "Value": 3 }, { "Name": "Granite", "Value": 4 }, { "Name": "Asphalt", "Value": 5 }, { "Name": "Iron", "Value": 6 }, { "Name": "Aluminum", "Value": 7 }, { "Name": "Gold", "Value": 8 }, { "Name": "WoodPlank", "Value": 9 }, { "Name": "WoodLog", "Value": 10 }, { "Name": "Gravel", "Value": 11 }, { "Name": "CinderBlock", "Value": 12 }, { "Name": "MossyStone", "Value": 13 }, { "Name": "Cement", "Value": 14 }, { "Name": "RedPlastic", "Value": 15 }, { "Name": "BluePlastic", "Value": 16 }, { "Name": "Water", "Value": 17 } ], "Name": "CellMaterial" }, { "Items": [ { "Name": "NegZ", "Value": 0 }, { "Name": "X", "Value": 1 }, { "Name": "Z", "Value": 2 }, { "Name": "NegX", "Value": 3 } ], "Name": "CellOrientation" }, { "Items": [ { "Name": "UnsolicitedDialog", "Value": 1 }, { "Name": "PlayerInitiatedDialog", "Value": 2 }, { "Name": "ModalDialog", "Value": 3 }, { "Name": "QuitDialog", "Value": 4 } ], "Name": "CenterDialogType" }, { "Items": [ { "Name": "OnCreatingChatWindow", "Value": 1 }, { "Name": "OnClientSendingMessage", "Value": 2 }, { "Name": "OnClientFormattingMessage", "Value": 3 }, { "Name": "OnServerReceivingMessage", "Value": 17 } ], "Name": "ChatCallbackType" }, { "Items": [ { "Name": "Blue", "Value": 0 }, { "Name": "Green", "Value": 1 }, { "Name": "Red", "Value": 2 }, { "Name": "White", "Value": 3 } ], "Name": "ChatColor" }, { "Items": [ { "Name": "Menu", "Value": 0 }, { "Name": "TextAndMenu", "Value": 1 } ], "Name": "ChatMode" }, { "Items": [ { "Name": "AllUsers", "Value": 0 }, { "Name": "NoOne", "Value": 1 }, { "Name": "Friends", "Value": 2 } ], "Name": "ChatPrivacyMode" }, { "Items": [ { "Name": "Classic", "Value": 0 }, { "Name": "Bubble", "Value": 1 }, { "Name": "ClassicAndBubble", "Value": 2 } ], "Name": "ChatStyle" }, { "Items": [ { "Name": "LegacyChatService", "Value": 0 }, { "Name": "TextChatService", "Value": 1 } ], "Name": "ChatVersion" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "ClientAnimatorThrottlingMode" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Hull", "Value": 1 }, { "Name": "Box", "Value": 2 }, { "Name": "PreciseConvexDecomposition", "Value": 3 }, { "Name": "DynamicPreciseConvexDecomposition", "Value": 4 } ], "Name": "CollisionFidelity" }, { "Items": [ { "Name": "Plugin", "Value": 0 }, { "Name": "LocalUser", "Value": 1 } ], "Name": "CommandPermission" }, { "Items": [ { "Name": "Client", "Value": 0 }, { "Name": "CoreScript", "Value": 1 }, { "Name": "Studio", "Value": 2 }, { "Name": "CoreScriptRaw", "Value": 3 } ], "Name": "CompileTarget" }, { "Items": [ { "Name": "Text", "Value": 1 }, { "Name": "Method", "Value": 2 }, { "Name": "Function", "Value": 3 }, { "Name": "Constructor", "Value": 4 }, { "Name": "Field", "Value": 5 }, { "Name": "Variable", "Value": 6 }, { "Name": "Class", "Value": 7 }, { "Name": "Interface", "Value": 8 }, { "Name": "Module", "Value": 9 }, { "Name": "Property", "Value": 10 }, { "Name": "Unit", "Value": 11 }, { "Name": "Value", "Value": 12 }, { "Name": "Enum", "Value": 13 }, { "Name": "Keyword", "Value": 14 }, { "Name": "Snippet", "Value": 15 }, { "Name": "Color", "Value": 16 }, { "Name": "File", "Value": 17 }, { "Name": "Reference", "Value": 18 }, { "Name": "Folder", "Value": 19 }, { "Name": "EnumMember", "Value": 20 }, { "Name": "Constant", "Value": 21 }, { "Name": "Struct", "Value": 22 }, { "Name": "Event", "Value": 23 }, { "Name": "Operator", "Value": 24 }, { "Name": "TypeParameter", "Value": 25 } ], "Name": "CompletionItemKind" }, { "Items": [ { "Name": "Deprecated", "Value": 1 }, { "Name": "IncorrectIndexType", "Value": 2 }, { "Name": "PluginPermissions", "Value": 3 }, { "Name": "CommandLinePermissions", "Value": 4 }, { "Name": "RobloxPermissions", "Value": 5 }, { "Name": "AddParens", "Value": 6 }, { "Name": "PutCursorInParens", "Value": 7 }, { "Name": "TypeCorrect", "Value": 8 }, { "Name": "ClientServerBoundaryViolation", "Value": 9 } ], "Name": "CompletionItemTag" }, { "Items": [ { "Name": "Invoked", "Value": 1 }, { "Name": "TriggerCharacter", "Value": 2 }, { "Name": "TriggerForIncompleteCompletions", "Value": 3 } ], "Name": "CompletionTriggerKind" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Follow", "Value": 2 }, { "Name": "Classic", "Value": 1 }, { "Name": "Orbital", "Value": 3 }, { "Name": "CameraToggle", "Value": 4 } ], "Name": "ComputerCameraMovementMode" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "KeyboardMouse", "Value": 1 }, { "Name": "ClickToMove", "Value": 2 } ], "Name": "ComputerMovementMode" }, { "Items": [ { "Name": "OK", "Value": 0 }, { "Name": "Unknown", "Value": 1 }, { "Name": "DisconnectErrors", "Value": 256 }, { "Name": "DisconnectBadhash", "Value": 257 }, { "Name": "DisconnectSecurityKeyMismatch", "Value": 258 }, { "Name": "DisconnectNewSecurityKeyMismatch", "Value": 272 }, { "Name": "DisconnectProtocolMismatch", "Value": 259 }, { "Name": "DisconnectReceivePacketError", "Value": 260 }, { "Name": "DisconnectReceivePacketStreamError", "Value": 261 }, { "Name": "DisconnectSendPacketError", "Value": 262 }, { "Name": "DisconnectIllegalTeleport", "Value": 263 }, { "Name": "DisconnectDuplicatePlayer", "Value": 264 }, { "Name": "DisconnectDuplicateTicket", "Value": 265 }, { "Name": "DisconnectTimeout", "Value": 266 }, { "Name": "DisconnectLuaKick", "Value": 267 }, { "Name": "DisconnectOnRemoteSysStats", "Value": 268 }, { "Name": "DisconnectHashTimeout", "Value": 269 }, { "Name": "DisconnectCloudEditKick", "Value": 270 }, { "Name": "DisconnectPlayerless", "Value": 271 }, { "Name": "DisconnectEvicted", "Value": 273 }, { "Name": "DisconnectDevMaintenance", "Value": 274 }, { "Name": "DisconnectRobloxMaintenance", "Value": 275 }, { "Name": "DisconnectRejoin", "Value": 276 }, { "Name": "DisconnectConnectionLost", "Value": 277 }, { "Name": "DisconnectIdle", "Value": 278 }, { "Name": "DisconnectRaknetErrors", "Value": 279 }, { "Name": "DisconnectWrongVersion", "Value": 280 }, { "Name": "DisconnectBySecurityPolicy", "Value": 281 }, { "Name": "DisconnectBlockedIP", "Value": 282 }, { "Name": "DisconnectClientFailure", "Value": 284 }, { "Name": "DisconnectClientRequest", "Value": 285 }, { "Name": "DisconnectPrivateServerKickout", "Value": 286 }, { "Name": "DisconnectModeratedGame", "Value": 287 }, { "Name": "DisconnectRomarkEndOfTest", "Value": 293 }, { "Name": "ReplicatorTimeout", "Value": 290 }, { "Name": "PlayerRemoved", "Value": 291 }, { "Name": "DisconnectOutOfMemoryKeepPlayingLeave", "Value": 292 }, { "Name": "DisconnectCollaboratorPermissionRevoked", "Value": 294 }, { "Name": "DisconnectCollaboratorUnderage", "Value": 295 }, { "Name": "PlacelaunchErrors", "Value": 512 }, { "Name": "PlacelaunchDisabled", "Value": 515 }, { "Name": "PlacelaunchError", "Value": 516 }, { "Name": "PlacelaunchGameEnded", "Value": 517 }, { "Name": "PlacelaunchGameFull", "Value": 518 }, { "Name": "PlacelaunchUserLeft", "Value": 522 }, { "Name": "PlacelaunchRestricted", "Value": 523 }, { "Name": "PlacelaunchUnauthorized", "Value": 524 }, { "Name": "PlacelaunchFlooded", "Value": 525 }, { "Name": "PlacelaunchHashExpired", "Value": 526 }, { "Name": "PlacelaunchHashException", "Value": 527 }, { "Name": "PlacelaunchPartyCannotFit", "Value": 528 }, { "Name": "PlacelaunchHttpError", "Value": 529 }, { "Name": "PlacelaunchUserPrivacyUnauthorized", "Value": 533 }, { "Name": "PlacelaunchCustomMessage", "Value": 610 }, { "Name": "PlacelaunchOtherError", "Value": 611 }, { "Name": "TeleportErrors", "Value": 768 }, { "Name": "TeleportFailure", "Value": 769 }, { "Name": "TeleportGameNotFound", "Value": 770 }, { "Name": "TeleportGameEnded", "Value": 771 }, { "Name": "TeleportGameFull", "Value": 772 }, { "Name": "TeleportUnauthorized", "Value": 773 }, { "Name": "TeleportFlooded", "Value": 774 }, { "Name": "TeleportIsTeleporting", "Value": 775 } ], "Name": "ConnectionError" }, { "Items": [ { "Name": "Connected", "Value": 0 }, { "Name": "Disconnected", "Value": 1 } ], "Name": "ConnectionState" }, { "Items": [ { "Name": "Low", "Value": 1000 }, { "LegacyNames": [ "Default" ], "Name": "Medium", "Value": 2000 }, { "Name": "High", "Value": 3000 } ], "Name": "ContextActionPriority" }, { "Items": [ { "Name": "Pass", "Value": 1 }, { "Name": "Sink", "Value": 0 } ], "Name": "ContextActionResult" }, { "Items": [ { "LegacyNames": [ "Mouse Lock Switch" ], "Name": "MouseLockSwitch", "Value": 1 }, { "Name": "Classic", "Value": 0 } ], "Name": "ControlMode" }, { "Items": [ { "Name": "PlayerList", "Value": 0 }, { "Name": "Health", "Value": 1 }, { "Name": "Backpack", "Value": 2 }, { "Name": "Chat", "Value": 3 }, { "Name": "All", "Value": 4 }, { "Name": "EmotesMenu", "Value": 5 }, { "Name": "SelfView", "Value": 6 } ], "Name": "CoreGuiType" }, { "Items": [ { "Name": "InvalidName", "Value": 1 }, { "Name": "OutfitLimitReached", "Value": 2 }, { "Name": "Other", "Value": 3 } ], "Name": "CreateOutfitFailure" }, { "Items": [ { "Name": "User", "Value": 0 }, { "Name": "Group", "Value": 1 } ], "Name": "CreatorType" }, { "Items": [ { "Name": "User", "Value": 0 }, { "Name": "Group", "Value": 1 }, { "Name": "All", "Value": 2 } ], "Name": "CreatorTypeFilter" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Robux", "Value": 1 }, { "Name": "Tix", "Value": 2 } ], "Name": "CurrencyType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Follow", "Value": 2 }, { "Name": "Classic", "Value": 1 } ], "Name": "CustomCameraMode" }, { "Items": [ { "Name": "GetAsync", "Value": 0 }, { "Name": "SetIncrementAsync", "Value": 1 }, { "Name": "UpdateAsync", "Value": 2 }, { "Name": "GetSortedAsync", "Value": 3 }, { "Name": "SetIncrementSortedAsync", "Value": 4 }, { "Name": "OnUpdate", "Value": 5 } ], "Name": "DataStoreRequestType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "ClassicBreakApart", "Value": 1 }, { "Name": "NonGraphic", "Value": 2 }, { "Name": "Scriptable", "Value": 3 } ], "Name": "DeathStyle" }, { "Items": [ { "Name": "ClientRequest", "Value": 0 }, { "Name": "Timeout", "Value": 1 }, { "Name": "InvalidHost", "Value": 2 }, { "Name": "Disconnected", "Value": 3 }, { "Name": "ServerShutdown", "Value": 4 }, { "Name": "ServerProtocolMismatch", "Value": 5 }, { "Name": "ConfigurationFailed", "Value": 6 }, { "Name": "RpcError", "Value": 7 } ], "Name": "DebuggerEndReason" }, { "Items": [ { "Name": "Never", "Value": 0 }, { "Name": "Unhandled", "Value": 2 }, { "Name": "Always", "Value": 1 } ], "Name": "DebuggerExceptionBreakMode" }, { "Items": [ { "Name": "C", "Value": 0 }, { "Name": "Lua", "Value": 1 } ], "Name": "DebuggerFrameType" }, { "Items": [ { "Name": "Unknown", "Value": 0 }, { "Name": "Requested", "Value": 1 }, { "Name": "Breakpoint", "Value": 2 }, { "Name": "Exception", "Value": 3 }, { "Name": "SingleStep", "Value": 4 }, { "Name": "Entrypoint", "Value": 5 } ], "Name": "DebuggerPauseReason" }, { "Items": [ { "Name": "Success", "Value": 0 }, { "Name": "Timeout", "Value": 1 }, { "Name": "ConnectionLost", "Value": 2 }, { "Name": "InvalidResponse", "Value": 3 }, { "Name": "InternalError", "Value": 4 }, { "Name": "InvalidState", "Value": 5 }, { "Name": "RpcError", "Value": 6 }, { "Name": "InvalidArgument", "Value": 7 }, { "Name": "ConnectionClosed", "Value": 8 } ], "Name": "DebuggerStatus" }, { "Items": [ { "Name": "Zoom", "Value": 0 }, { "Name": "Invisicam", "Value": 1 } ], "Name": "DevCameraOcclusionMode" }, { "Items": [ { "Name": "UserChoice", "Value": 0 }, { "Name": "Classic", "Value": 1 }, { "Name": "Follow", "Value": 2 }, { "Name": "Orbital", "Value": 3 }, { "Name": "CameraToggle", "Value": 4 } ], "Name": "DevComputerCameraMovementMode" }, { "Items": [ { "Name": "UserChoice", "Value": 0 }, { "Name": "KeyboardMouse", "Value": 1 }, { "Name": "ClickToMove", "Value": 2 }, { "Name": "Scriptable", "Value": 3 } ], "Name": "DevComputerMovementMode" }, { "Items": [ { "Name": "UserChoice", "Value": 0 }, { "Name": "Classic", "Value": 1 }, { "Name": "Follow", "Value": 2 }, { "Name": "Orbital", "Value": 3 } ], "Name": "DevTouchCameraMovementMode" }, { "Items": [ { "Name": "UserChoice", "Value": 0 }, { "Name": "Thumbstick", "Value": 1 }, { "Name": "DPad", "Value": 2 }, { "Name": "Thumbpad", "Value": 3 }, { "Name": "ClickToMove", "Value": 4 }, { "Name": "Scriptable", "Value": 5 }, { "Name": "DynamicThumbstick", "Value": 6 } ], "Name": "DevTouchMovementMode" }, { "Items": [ { "Name": "Internal", "Value": 0 }, { "Name": "HttpCache", "Value": 1 }, { "Name": "Instances", "Value": 2 }, { "Name": "Signals", "Value": 3 }, { "Name": "LuaHeap", "Value": 4 }, { "Name": "Script", "Value": 5 }, { "Name": "PhysicsCollision", "Value": 6 }, { "Name": "PhysicsParts", "Value": 7 }, { "Name": "GraphicsSolidModels", "Value": 8 }, { "Name": "GraphicsMeshParts", "Value": 10 }, { "Name": "GraphicsParticles", "Value": 11 }, { "Name": "GraphicsParts", "Value": 12 }, { "Name": "GraphicsSpatialHash", "Value": 13 }, { "Name": "GraphicsTerrain", "Value": 14 }, { "Name": "GraphicsTexture", "Value": 15 }, { "Name": "GraphicsTextureCharacter", "Value": 16 }, { "Name": "Sounds", "Value": 17 }, { "Name": "StreamingSounds", "Value": 18 }, { "Name": "TerrainVoxels", "Value": 19 }, { "Name": "Gui", "Value": 21 }, { "Name": "Animation", "Value": 22 }, { "Name": "Navigation", "Value": 23 }, { "Name": "GeometryCSG", "Value": 24 } ], "Name": "DeveloperMemoryTag" }, { "Items": [ { "Name": "Unknown", "Value": 0 }, { "Name": "Desktop", "Value": 1 }, { "Name": "Tablet", "Value": 2 }, { "Name": "Phone", "Value": 3 } ], "Name": "DeviceType" }, { "Items": [ { "Name": "SinglePlayer", "Value": 0 }, { "Name": "MultiplePlayers", "Value": 1 } ], "Name": "DialogBehaviorType" }, { "Items": [ { "Name": "Quest", "Value": 0 }, { "Name": "Help", "Value": 1 }, { "Name": "Shop", "Value": 2 } ], "Name": "DialogPurpose" }, { "Items": [ { "Name": "Neutral", "Value": 0 }, { "Name": "Friendly", "Value": 1 }, { "Name": "Enemy", "Value": 2 } ], "Name": "DialogTone" }, { "Items": [ { "Name": "Width", "Value": 0 }, { "Name": "Height", "Value": 1 } ], "Name": "DominantAxis" }, { "Items": [ { "Name": "OK", "Value": 0 }, { "Name": "DraftOutdated", "Value": 1 }, { "Name": "ScriptRemoved", "Value": 2 }, { "Name": "DraftCommitted", "Value": 3 } ], "Name": "DraftStatusCode" }, { "Items": [ { "Name": "TranslateLine", "Value": 0 }, { "Name": "TranslatePlane", "Value": 1 }, { "Name": "TranslatePlaneOrLine", "Value": 2 }, { "Name": "TranslateLineOrPlane", "Value": 3 }, { "Name": "TranslateViewPlane", "Value": 4 }, { "Name": "RotateAxis", "Value": 5 }, { "Name": "RotateTrackball", "Value": 6 }, { "Name": "Scriptable", "Value": 7 }, { "Name": "BestForDevice", "Value": 8 } ], "Name": "DragDetectorDragStyle" }, { "Items": [ { "Name": "Geometric", "Value": 0 }, { "Name": "Physical", "Value": 1 }, { "Name": "Custom", "Value": 2 } ], "Name": "DragDetectorResponseStyle" }, { "Items": [ { "Name": "Object", "Value": 0 }, { "Name": "World", "Value": 1 } ], "Name": "DraggerCoordinateSpace" }, { "Items": [ { "Name": "Geometric", "Value": 0 }, { "Name": "Physical", "Value": 1 } ], "Name": "DraggerMovementMode" }, { "Items": [ { "Name": "In", "Value": 0 }, { "Name": "Out", "Value": 1 }, { "Name": "InOut", "Value": 2 } ], "Name": "EasingDirection" }, { "Items": [ { "Name": "Linear", "Value": 0 }, { "Name": "Sine", "Value": 1 }, { "Name": "Back", "Value": 2 }, { "Name": "Quad", "Value": 3 }, { "Name": "Quart", "Value": 4 }, { "Name": "Quint", "Value": 5 }, { "Name": "Bounce", "Value": 6 }, { "Name": "Elastic", "Value": 7 }, { "Name": "Exponential", "Value": 8 }, { "Name": "Circular", "Value": 9 }, { "Name": "Cubic", "Value": 10 } ], "Name": "EasingStyle" }, { "Items": [ { "Name": "WhenScrollable", "Value": 0 }, { "Name": "Always", "Value": 1 }, { "Name": "Never", "Value": 2 } ], "Name": "ElasticBehavior" }, { "Items": [ { "Name": "DefaultAuto", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Always", "Value": 2 }, { "Name": "Skip2", "Value": 3 }, { "Name": "Skip4", "Value": 4 }, { "Name": "Skip8", "Value": 5 }, { "Name": "Skip16", "Value": 6 } ], "Name": "EnviromentalPhysicsThrottle" }, { "Items": [ { "Name": "DefaultScope", "Value": 0 }, { "Name": "CreatorAssetsCreate", "Value": 1 } ], "Name": "ExperienceAuthScope" }, { "Items": [ { "Name": "NoCraters", "Value": 0 }, { "LegacyNames": [ "CratersAndDebris" ], "Name": "Craters", "Value": 1 } ], "Name": "ExplosionType" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "Audio", "Value": 1 }, { "Name": "Video", "Value": 2 }, { "Name": "Place", "Value": 4 }, { "Name": "Server", "Value": 8 } ], "Name": "FacialAnimationStreamingState" }, { "Items": [ { "Name": "Vertical", "Value": 0 }, { "Name": "Diagonal", "Value": 1 }, { "Name": "MaxAxis", "Value": 2 } ], "Name": "FieldOfViewMode" }, { "Items": [ { "Name": "Horizontal", "Value": 0 }, { "Name": "Vertical", "Value": 1 } ], "Name": "FillDirection" }, { "Items": [ { "Name": "Rejected", "Value": 1 }, { "Name": "Accepted", "Value": 0 } ], "Name": "FilterResult" }, { "Items": [ { "Name": "Cancel", "Value": 0 }, { "Name": "Commit", "Value": 1 }, { "Name": "Append", "Value": 2 } ], "Name": "FinishRecordingOperation" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Experimental", "Value": 1 } ], "Name": "FluidForces" }, { "Items": [ { "Name": "Legacy", "Value": 0 }, { "Name": "Arial", "Value": 1 }, { "Name": "ArialBold", "Value": 2 }, { "Name": "SourceSans", "Value": 3 }, { "Name": "SourceSansBold", "Value": 4 }, { "Name": "SourceSansSemibold", "Value": 16 }, { "Name": "SourceSansLight", "Value": 5 }, { "Name": "SourceSansItalic", "Value": 6 }, { "Name": "Bodoni", "Value": 7 }, { "Name": "Garamond", "Value": 8 }, { "Name": "Cartoon", "Value": 9 }, { "Name": "Code", "Value": 10 }, { "Name": "Highway", "Value": 11 }, { "Name": "SciFi", "Value": 12 }, { "Name": "Arcade", "Value": 13 }, { "Name": "Fantasy", "Value": 14 }, { "Name": "Antique", "Value": 15 }, { "LegacyNames": [ "Montserrat" ], "Name": "Gotham", "Value": 17 }, { "LegacyNames": [ "GothamSemibold", "MontserratMedium" ], "Name": "GothamMedium", "Value": 18 }, { "LegacyNames": [ "MontserratBold" ], "Name": "GothamBold", "Value": 19 }, { "LegacyNames": [ "MontserratBlack" ], "Name": "GothamBlack", "Value": 20 }, { "Name": "AmaticSC", "Value": 21 }, { "Name": "Bangers", "Value": 22 }, { "Name": "Creepster", "Value": 23 }, { "Name": "DenkOne", "Value": 24 }, { "Name": "Fondamento", "Value": 25 }, { "Name": "FredokaOne", "Value": 26 }, { "Name": "GrenzeGotisch", "Value": 27 }, { "Name": "IndieFlower", "Value": 28 }, { "Name": "JosefinSans", "Value": 29 }, { "Name": "Jura", "Value": 30 }, { "Name": "Kalam", "Value": 31 }, { "Name": "LuckiestGuy", "Value": 32 }, { "Name": "Merriweather", "Value": 33 }, { "Name": "Michroma", "Value": 34 }, { "Name": "Nunito", "Value": 35 }, { "Name": "Oswald", "Value": 36 }, { "Name": "PatrickHand", "Value": 37 }, { "Name": "PermanentMarker", "Value": 38 }, { "Name": "Roboto", "Value": 39 }, { "Name": "RobotoCondensed", "Value": 40 }, { "Name": "RobotoMono", "Value": 41 }, { "Name": "Sarpanch", "Value": 42 }, { "Name": "SpecialElite", "Value": 43 }, { "Name": "TitilliumWeb", "Value": 44 }, { "Name": "Ubuntu", "Value": 45 }, { "Name": "Unknown", "Value": 100 } ], "Name": "Font" }, { "Items": [ { "Name": "Size8", "Value": 0 }, { "Name": "Size9", "Value": 1 }, { "Name": "Size10", "Value": 2 }, { "Name": "Size11", "Value": 3 }, { "Name": "Size12", "Value": 4 }, { "Name": "Size14", "Value": 5 }, { "Name": "Size18", "Value": 6 }, { "Name": "Size24", "Value": 7 }, { "Name": "Size36", "Value": 8 }, { "Name": "Size48", "Value": 9 }, { "Name": "Size28", "Value": 10 }, { "Name": "Size32", "Value": 11 }, { "Name": "Size42", "Value": 12 }, { "Name": "Size60", "Value": 13 }, { "Name": "Size96", "Value": 14 } ], "Name": "FontSize" }, { "Items": [ { "Name": "Normal", "Value": 0 }, { "Name": "Italic", "Value": 1 } ], "Name": "FontStyle" }, { "Items": [ { "Name": "Thin", "Value": 100 }, { "Name": "ExtraLight", "Value": 200 }, { "Name": "Light", "Value": 300 }, { "Name": "Regular", "Value": 400 }, { "Name": "Medium", "Value": 500 }, { "Name": "SemiBold", "Value": 600 }, { "Name": "Bold", "Value": 700 }, { "Name": "ExtraBold", "Value": 800 }, { "Name": "Heavy", "Value": 900 } ], "Name": "FontWeight" }, { "Items": [ { "Name": "Magnitude", "Value": 0 }, { "Name": "PerAxis", "Value": 1 } ], "Name": "ForceLimitMode" }, { "Items": [ { "Name": "Symmetric", "Value": 0 }, { "LegacyNames": [ "Block" ], "Name": "Brick", "Value": 1 }, { "Name": "Plate", "Value": 2 }, { "Name": "Custom", "Value": 3 } ], "Name": "FormFactor" }, { "Items": [ { "Name": "Custom", "Value": 0 }, { "Name": "ChatBlue", "Value": 1 }, { "Name": "RobloxSquare", "Value": 2 }, { "Name": "RobloxRound", "Value": 3 }, { "Name": "ChatGreen", "Value": 4 }, { "Name": "ChatRed", "Value": 5 }, { "Name": "DropShadow", "Value": 6 } ], "Name": "FrameStyle" }, { "Items": [ { "Name": "Automatic", "Value": 0 }, { "Name": "On", "Value": 1 }, { "Name": "Off", "Value": 2 } ], "Name": "FramerateManagerMode" }, { "Items": [ { "Name": "Issue", "Value": 0 }, { "Name": "Revoke", "Value": 1 }, { "Name": "Accept", "Value": 2 }, { "Name": "Deny", "Value": 3 } ], "Name": "FriendRequestEvent" }, { "Items": [ { "Name": "Unknown", "Value": 0 }, { "Name": "NotFriend", "Value": 1 }, { "Name": "Friend", "Value": 2 }, { "Name": "FriendRequestSent", "Value": 3 }, { "Name": "FriendRequestReceived", "Value": 4 } ], "Name": "FriendStatus" }, { "Items": [ { "Name": "Passed", "Value": 0 }, { "Name": "Warning", "Value": 1 }, { "Name": "Error", "Value": 2 } ], "Name": "FunctionalTestResult" }, { "Items": [ { "Name": "R6", "Value": 0 }, { "Name": "R15", "Value": 1 }, { "Name": "PlayerChoice", "Value": 2 } ], "Name": "GameAvatarType" }, { "Items": [ { "Name": "AllGenres", "Tags": [ "Deprecated" ], "Value": 0 }, { "Name": "MatchingGenreOnly", "Tags": [ "Deprecated" ], "Value": 1 } ], "Name": "GearGenreSetting", "Tags": [ "Deprecated" ] }, { "Items": [ { "Name": "MeleeWeapons", "Tags": [ "Deprecated" ], "Value": 0 }, { "Name": "RangedWeapons", "Tags": [ "Deprecated" ], "Value": 1 }, { "Name": "Explosives", "Tags": [ "Deprecated" ], "Value": 2 }, { "Name": "PowerUps", "Tags": [ "Deprecated" ], "Value": 3 }, { "Name": "NavigationEnhancers", "Tags": [ "Deprecated" ], "Value": 4 }, { "Name": "MusicalInstruments", "Tags": [ "Deprecated" ], "Value": 5 }, { "Name": "SocialItems", "Tags": [ "Deprecated" ], "Value": 6 }, { "Name": "BuildingTools", "Tags": [ "Deprecated" ], "Value": 7 }, { "Name": "Transport", "Tags": [ "Deprecated" ], "Value": 8 } ], "Name": "GearType", "Tags": [ "Deprecated" ] }, { "Items": [ { "Name": "All", "Value": 0 }, { "Name": "TownAndCity", "Value": 1 }, { "Name": "Fantasy", "Value": 2 }, { "Name": "SciFi", "Value": 3 }, { "Name": "Ninja", "Value": 4 }, { "Name": "Scary", "Value": 5 }, { "Name": "Pirate", "Value": 6 }, { "Name": "Adventure", "Value": 7 }, { "Name": "Sports", "Value": 8 }, { "Name": "Funny", "Value": 9 }, { "Name": "WildWest", "Value": 10 }, { "Name": "War", "Value": 11 }, { "Name": "SkatePark", "Value": 12 }, { "Name": "Tutorial", "Value": 13 } ], "Name": "Genre", "Tags": [ "Deprecated" ] }, { "Items": [ { "Name": "Automatic", "Value": 1 }, { "Name": "Direct3D11", "Value": 2 }, { "Name": "OpenGL", "Value": 4 }, { "Name": "Metal", "Value": 5 }, { "Name": "Vulkan", "Value": 6 }, { "Name": "NoGraphics", "Value": 9 } ], "Name": "GraphicsMode" }, { "Items": [ { "Name": "Core", "Value": 0 }, { "Name": "Custom", "Value": 1 }, { "Name": "CustomBillboards", "Value": 3 }, { "Name": "PlayerNameplates", "Value": 2 } ], "Name": "GuiType" }, { "Items": [ { "Name": "Resize", "Value": 0 }, { "Name": "Movement", "Value": 1 } ], "Name": "HandlesStyle" }, { "Items": [ { "Name": "AlwaysOnTop", "Value": 0 }, { "Name": "Occluded", "Value": 1 } ], "Name": "HighlightDepthMode" }, { "Items": [ { "Name": "Center", "Value": 0 }, { "Name": "Left", "Value": 1 }, { "Name": "Right", "Value": 2 } ], "Name": "HorizontalAlignment" }, { "Items": [ { "Name": "VerySlow", "Value": 0 }, { "Name": "Slow", "Value": 1 }, { "Name": "Medium", "Value": 2 }, { "Name": "Fast", "Value": 3 }, { "Name": "VeryFast", "Value": 4 } ], "Name": "HoverAnimateSpeed" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "Full", "Value": 1 }, { "Name": "DataOnly", "Value": 2 }, { "Name": "Default", "Value": 3 }, { "Name": "InternalRedirectRefresh", "Value": 4 } ], "Name": "HttpCachePolicy" }, { "Items": [ { "Name": "ApplicationJson", "Value": 0 }, { "Name": "ApplicationXml", "Value": 1 }, { "Name": "ApplicationUrlEncoded", "Value": 2 }, { "Name": "TextPlain", "Value": 3 }, { "Name": "TextXml", "Value": 4 } ], "Name": "HttpContentType" }, { "Items": [ { "Name": "OK", "Value": 0 }, { "Name": "InvalidUrl", "Value": 1 }, { "Name": "DnsResolve", "Value": 2 }, { "Name": "ConnectFail", "Value": 3 }, { "Name": "OutOfMemory", "Value": 4 }, { "Name": "TimedOut", "Value": 5 }, { "Name": "TooManyRedirects", "Value": 6 }, { "Name": "InvalidRedirect", "Value": 7 }, { "Name": "NetFail", "Value": 8 }, { "Name": "Aborted", "Value": 9 }, { "Name": "SslConnectFail", "Value": 10 }, { "Name": "SslVerificationFail", "Value": 11 }, { "Name": "Unknown", "Value": 12 } ], "Name": "HttpError" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "MarketplaceService", "Value": 2 }, { "Name": "Players", "Value": 7 }, { "Name": "Chat", "Value": 15 }, { "Name": "Avatar", "Value": 16 }, { "Name": "Analytics", "Value": 23 }, { "Name": "Localization", "Value": 25 } ], "Name": "HttpRequestType" }, { "Items": [ { "Name": "OuterBox", "Value": 0 }, { "Name": "InnerBox", "Value": 1 } ], "Name": "HumanoidCollisionType" }, { "Items": [ { "Name": "Viewer", "Value": 0 }, { "Name": "Subject", "Value": 1 }, { "Name": "None", "Value": 2 } ], "Name": "HumanoidDisplayDistanceType" }, { "Items": [ { "Name": "DisplayWhenDamaged", "Value": 0 }, { "Name": "AlwaysOn", "Value": 1 }, { "Name": "AlwaysOff", "Value": 2 } ], "Name": "HumanoidHealthDisplayType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "HumanoidOnlySetCollisionsOnStateChange" }, { "Items": [ { "Name": "R6", "Value": 0 }, { "Name": "R15", "Value": 1 } ], "Name": "HumanoidRigType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Legacy", "Value": 1 }, { "Name": "NoStateMachine", "Value": 2 }, { "Name": "LuaStateMachine", "Value": 3 } ], "Name": "HumanoidStateMachineMode" }, { "Items": [ { "Name": "FallingDown", "Value": 0 }, { "Name": "Running", "Value": 8 }, { "Name": "RunningNoPhysics", "Value": 10 }, { "Name": "Climbing", "Value": 12 }, { "Name": "StrafingNoPhysics", "Value": 11 }, { "Name": "Ragdoll", "Value": 1 }, { "Name": "GettingUp", "Value": 2 }, { "Name": "Jumping", "Value": 3 }, { "Name": "Landed", "Value": 7 }, { "Name": "Flying", "Value": 6 }, { "Name": "Freefall", "Value": 5 }, { "Name": "Seated", "Value": 13 }, { "Name": "PlatformStanding", "Value": 14 }, { "Name": "Dead", "Value": 15 }, { "Name": "Swimming", "Value": 4 }, { "Name": "Physics", "Value": 16 }, { "Name": "None", "Value": 18 } ], "Name": "HumanoidStateType" }, { "Items": [ { "Name": "NoCollisions", "Value": 0 }, { "Name": "OtherMechanismsAnchored", "Value": 1 }, { "Name": "IncludeContactedMechanisms", "Value": 2 } ], "Name": "IKCollisionsMode" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "IKControlConstraintSupport" }, { "Items": [ { "Name": "Transform", "Value": 0 }, { "Name": "Position", "Value": 1 }, { "Name": "Rotation", "Value": 2 }, { "Name": "LookAt", "Value": 3 } ], "Name": "IKControlType" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "Pending", "Value": 1 }, { "Name": "Initialized", "Value": 2 }, { "Name": "ErrorTimedOut", "Value": 6 }, { "Name": "ErrorConnection", "Value": 4 }, { "Name": "ErrorJsonParse", "Value": 5 }, { "Name": "ErrorInvalidUser", "Value": 3 } ], "Name": "IXPLoadingStatus" }, { "Items": [ { "Name": "Edge", "Value": 0 }, { "Name": "Inset", "Value": 1 }, { "Name": "Center", "Value": 2 } ], "Name": "InOut" }, { "Items": [ { "Name": "Asset", "Value": 0 }, { "Name": "Product", "Value": 1 }, { "Name": "GamePass", "Value": 2 }, { "Name": "Subscription", "Value": 3 }, { "Name": "Bundle", "Value": 4 } ], "Name": "InfoType" }, { "Items": [ { "Name": "Top", "Value": 0 }, { "Name": "Bottom", "Value": 1 }, { "Name": "Left", "Value": 2 }, { "Name": "Right", "Value": 3 }, { "Name": "Float", "Value": 4 } ], "Name": "InitialDockState" }, { "Items": [ { "LegacyNames": [ "Action1", "Action2", "Action3", "Action4", "Action5", "LeftTread", "RightTread", "Steer", "Throtle", "Throttle", "UpDown" ], "Name": "NoInput", "Value": 0 }, { "Name": "Constant", "Value": 12 }, { "Name": "Sin", "Value": 13 } ], "Name": "InputType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "InterpolationThrottlingMode" }, { "Items": [ { "Name": "All", "Value": 0 }, { "Name": "Surface", "Value": 1 }, { "Name": "None", "Value": 2 } ], "Name": "JointCreationMode" }, { "Items": [ { "Name": "Unknown", "Value": 0 }, { "Name": "Backspace", "Value": 8 }, { "Name": "Tab", "Value": 9 }, { "Name": "Clear", "Value": 12 }, { "Name": "Return", "Value": 13 }, { "Name": "Pause", "Value": 19 }, { "Name": "Escape", "Value": 27 }, { "Name": "Space", "Value": 32 }, { "Name": "QuotedDouble", "Value": 34 }, { "Name": "Hash", "Value": 35 }, { "Name": "Dollar", "Value": 36 }, { "Name": "Percent", "Value": 37 }, { "Name": "Ampersand", "Value": 38 }, { "Name": "Quote", "Value": 39 }, { "Name": "LeftParenthesis", "Value": 40 }, { "Name": "RightParenthesis", "Value": 41 }, { "Name": "Asterisk", "Value": 42 }, { "Name": "Plus", "Value": 43 }, { "Name": "Comma", "Value": 44 }, { "Name": "Minus", "Value": 45 }, { "Name": "Period", "Value": 46 }, { "Name": "Slash", "Value": 47 }, { "Name": "Zero", "Value": 48 }, { "Name": "One", "Value": 49 }, { "Name": "Two", "Value": 50 }, { "Name": "Three", "Value": 51 }, { "Name": "Four", "Value": 52 }, { "Name": "Five", "Value": 53 }, { "Name": "Six", "Value": 54 }, { "Name": "Seven", "Value": 55 }, { "Name": "Eight", "Value": 56 }, { "Name": "Nine", "Value": 57 }, { "Name": "Colon", "Value": 58 }, { "Name": "Semicolon", "Value": 59 }, { "Name": "LessThan", "Value": 60 }, { "Name": "Equals", "Value": 61 }, { "Name": "GreaterThan", "Value": 62 }, { "Name": "Question", "Value": 63 }, { "Name": "At", "Value": 64 }, { "Name": "LeftBracket", "Value": 91 }, { "Name": "BackSlash", "Value": 92 }, { "Name": "RightBracket", "Value": 93 }, { "Name": "Caret", "Value": 94 }, { "Name": "Underscore", "Value": 95 }, { "Name": "Backquote", "Value": 96 }, { "Name": "A", "Value": 97 }, { "Name": "B", "Value": 98 }, { "Name": "C", "Value": 99 }, { "Name": "D", "Value": 100 }, { "Name": "E", "Value": 101 }, { "Name": "F", "Value": 102 }, { "Name": "G", "Value": 103 }, { "Name": "H", "Value": 104 }, { "Name": "I", "Value": 105 }, { "Name": "J", "Value": 106 }, { "Name": "K", "Value": 107 }, { "Name": "L", "Value": 108 }, { "Name": "M", "Value": 109 }, { "Name": "N", "Value": 110 }, { "Name": "O", "Value": 111 }, { "Name": "P", "Value": 112 }, { "Name": "Q", "Value": 113 }, { "Name": "R", "Value": 114 }, { "Name": "S", "Value": 115 }, { "Name": "T", "Value": 116 }, { "Name": "U", "Value": 117 }, { "Name": "V", "Value": 118 }, { "Name": "W", "Value": 119 }, { "Name": "X", "Value": 120 }, { "Name": "Y", "Value": 121 }, { "Name": "Z", "Value": 122 }, { "Name": "LeftCurly", "Value": 123 }, { "Name": "Pipe", "Value": 124 }, { "Name": "RightCurly", "Value": 125 }, { "Name": "Tilde", "Value": 126 }, { "Name": "Delete", "Value": 127 }, { "Name": "KeypadZero", "Value": 256 }, { "Name": "KeypadOne", "Value": 257 }, { "Name": "KeypadTwo", "Value": 258 }, { "Name": "KeypadThree", "Value": 259 }, { "Name": "KeypadFour", "Value": 260 }, { "Name": "KeypadFive", "Value": 261 }, { "Name": "KeypadSix", "Value": 262 }, { "Name": "KeypadSeven", "Value": 263 }, { "Name": "KeypadEight", "Value": 264 }, { "Name": "KeypadNine", "Value": 265 }, { "Name": "KeypadPeriod", "Value": 266 }, { "Name": "KeypadDivide", "Value": 267 }, { "Name": "KeypadMultiply", "Value": 268 }, { "Name": "KeypadMinus", "Value": 269 }, { "Name": "KeypadPlus", "Value": 270 }, { "Name": "KeypadEnter", "Value": 271 }, { "Name": "KeypadEquals", "Value": 272 }, { "Name": "Up", "Value": 273 }, { "Name": "Down", "Value": 274 }, { "Name": "Right", "Value": 275 }, { "Name": "Left", "Value": 276 }, { "Name": "Insert", "Value": 277 }, { "Name": "Home", "Value": 278 }, { "Name": "End", "Value": 279 }, { "Name": "PageUp", "Value": 280 }, { "Name": "PageDown", "Value": 281 }, { "Name": "LeftShift", "Value": 304 }, { "Name": "RightShift", "Value": 303 }, { "Name": "LeftMeta", "Value": 310 }, { "Name": "RightMeta", "Value": 309 }, { "Name": "LeftAlt", "Value": 308 }, { "Name": "RightAlt", "Value": 307 }, { "Name": "LeftControl", "Value": 306 }, { "Name": "RightControl", "Value": 305 }, { "Name": "CapsLock", "Value": 301 }, { "Name": "NumLock", "Value": 300 }, { "Name": "ScrollLock", "Value": 302 }, { "Name": "LeftSuper", "Value": 311 }, { "Name": "RightSuper", "Value": 312 }, { "Name": "Mode", "Value": 313 }, { "Name": "Compose", "Value": 314 }, { "Name": "Help", "Value": 315 }, { "Name": "Print", "Value": 316 }, { "Name": "SysReq", "Value": 317 }, { "Name": "Break", "Value": 318 }, { "Name": "Menu", "Value": 319 }, { "Name": "Power", "Value": 320 }, { "Name": "Euro", "Value": 321 }, { "Name": "Undo", "Value": 322 }, { "Name": "F1", "Value": 282 }, { "Name": "F2", "Value": 283 }, { "Name": "F3", "Value": 284 }, { "Name": "F4", "Value": 285 }, { "Name": "F5", "Value": 286 }, { "Name": "F6", "Value": 287 }, { "Name": "F7", "Value": 288 }, { "Name": "F8", "Value": 289 }, { "Name": "F9", "Value": 290 }, { "Name": "F10", "Value": 291 }, { "Name": "F11", "Value": 292 }, { "Name": "F12", "Value": 293 }, { "Name": "F13", "Value": 294 }, { "Name": "F14", "Value": 295 }, { "Name": "F15", "Value": 296 }, { "Name": "World0", "Value": 160 }, { "Name": "World1", "Value": 161 }, { "Name": "World2", "Value": 162 }, { "Name": "World3", "Value": 163 }, { "Name": "World4", "Value": 164 }, { "Name": "World5", "Value": 165 }, { "Name": "World6", "Value": 166 }, { "Name": "World7", "Value": 167 }, { "Name": "World8", "Value": 168 }, { "Name": "World9", "Value": 169 }, { "Name": "World10", "Value": 170 }, { "Name": "World11", "Value": 171 }, { "Name": "World12", "Value": 172 }, { "Name": "World13", "Value": 173 }, { "Name": "World14", "Value": 174 }, { "Name": "World15", "Value": 175 }, { "Name": "World16", "Value": 176 }, { "Name": "World17", "Value": 177 }, { "Name": "World18", "Value": 178 }, { "Name": "World19", "Value": 179 }, { "Name": "World20", "Value": 180 }, { "Name": "World21", "Value": 181 }, { "Name": "World22", "Value": 182 }, { "Name": "World23", "Value": 183 }, { "Name": "World24", "Value": 184 }, { "Name": "World25", "Value": 185 }, { "Name": "World26", "Value": 186 }, { "Name": "World27", "Value": 187 }, { "Name": "World28", "Value": 188 }, { "Name": "World29", "Value": 189 }, { "Name": "World30", "Value": 190 }, { "Name": "World31", "Value": 191 }, { "Name": "World32", "Value": 192 }, { "Name": "World33", "Value": 193 }, { "Name": "World34", "Value": 194 }, { "Name": "World35", "Value": 195 }, { "Name": "World36", "Value": 196 }, { "Name": "World37", "Value": 197 }, { "Name": "World38", "Value": 198 }, { "Name": "World39", "Value": 199 }, { "Name": "World40", "Value": 200 }, { "Name": "World41", "Value": 201 }, { "Name": "World42", "Value": 202 }, { "Name": "World43", "Value": 203 }, { "Name": "World44", "Value": 204 }, { "Name": "World45", "Value": 205 }, { "Name": "World46", "Value": 206 }, { "Name": "World47", "Value": 207 }, { "Name": "World48", "Value": 208 }, { "Name": "World49", "Value": 209 }, { "Name": "World50", "Value": 210 }, { "Name": "World51", "Value": 211 }, { "Name": "World52", "Value": 212 }, { "Name": "World53", "Value": 213 }, { "Name": "World54", "Value": 214 }, { "Name": "World55", "Value": 215 }, { "Name": "World56", "Value": 216 }, { "Name": "World57", "Value": 217 }, { "Name": "World58", "Value": 218 }, { "Name": "World59", "Value": 219 }, { "Name": "World60", "Value": 220 }, { "Name": "World61", "Value": 221 }, { "Name": "World62", "Value": 222 }, { "Name": "World63", "Value": 223 }, { "Name": "World64", "Value": 224 }, { "Name": "World65", "Value": 225 }, { "Name": "World66", "Value": 226 }, { "Name": "World67", "Value": 227 }, { "Name": "World68", "Value": 228 }, { "Name": "World69", "Value": 229 }, { "Name": "World70", "Value": 230 }, { "Name": "World71", "Value": 231 }, { "Name": "World72", "Value": 232 }, { "Name": "World73", "Value": 233 }, { "Name": "World74", "Value": 234 }, { "Name": "World75", "Value": 235 }, { "Name": "World76", "Value": 236 }, { "Name": "World77", "Value": 237 }, { "Name": "World78", "Value": 238 }, { "Name": "World79", "Value": 239 }, { "Name": "World80", "Value": 240 }, { "Name": "World81", "Value": 241 }, { "Name": "World82", "Value": 242 }, { "Name": "World83", "Value": 243 }, { "Name": "World84", "Value": 244 }, { "Name": "World85", "Value": 245 }, { "Name": "World86", "Value": 246 }, { "Name": "World87", "Value": 247 }, { "Name": "World88", "Value": 248 }, { "Name": "World89", "Value": 249 }, { "Name": "World90", "Value": 250 }, { "Name": "World91", "Value": 251 }, { "Name": "World92", "Value": 252 }, { "Name": "World93", "Value": 253 }, { "Name": "World94", "Value": 254 }, { "Name": "World95", "Value": 255 }, { "Name": "ButtonX", "Value": 1000 }, { "Name": "ButtonY", "Value": 1001 }, { "Name": "ButtonA", "Value": 1002 }, { "Name": "ButtonB", "Value": 1003 }, { "Name": "ButtonR1", "Value": 1004 }, { "Name": "ButtonL1", "Value": 1005 }, { "Name": "ButtonR2", "Value": 1006 }, { "Name": "ButtonL2", "Value": 1007 }, { "Name": "ButtonR3", "Value": 1008 }, { "Name": "ButtonL3", "Value": 1009 }, { "Name": "ButtonStart", "Value": 1010 }, { "Name": "ButtonSelect", "Value": 1011 }, { "Name": "DPadLeft", "Value": 1012 }, { "Name": "DPadRight", "Value": 1013 }, { "Name": "DPadUp", "Value": 1014 }, { "Name": "DPadDown", "Value": 1015 }, { "Name": "Thumbstick1", "Value": 1016 }, { "Name": "Thumbstick2", "Value": 1017 } ], "Name": "KeyCode" }, { "Items": [ { "Name": "Constant", "Value": 0 }, { "Name": "Linear", "Value": 1 }, { "Name": "Cubic", "Value": 2 } ], "Name": "KeyInterpolationMode" }, { "Items": [ { "Name": "Include", "Value": 0 }, { "Name": "Exclude", "Value": 1 } ], "Name": "KeywordFilterType" }, { "Items": [ { "Name": "Default", "Value": 0 } ], "Name": "Language" }, { "Items": [ { "Name": "Left", "Value": 0 }, { "Name": "Center", "Value": 1 }, { "Name": "Right", "Value": 2 } ], "Name": "LeftRight" }, { "Items": [ { "Name": "Head", "Value": 0 }, { "Name": "Torso", "Value": 1 }, { "Name": "LeftArm", "Value": 2 }, { "Name": "RightArm", "Value": 3 }, { "Name": "LeftLeg", "Value": 4 }, { "Name": "RightLeg", "Value": 5 }, { "Name": "Unknown", "Value": 6 } ], "Name": "Limb" }, { "Items": [ { "Name": "Round", "Value": 0 }, { "Name": "Bevel", "Value": 1 }, { "Name": "Miter", "Value": 2 } ], "Name": "LineJoinMode" }, { "Items": [ { "Name": "Horizontal", "Value": 0 }, { "Name": "Vertical", "Value": 1 } ], "Name": "ListDisplayMode" }, { "Items": [ { "Name": "Camera", "Value": 0 }, { "Name": "CFrame", "Value": 1 }, { "Name": "ObjectPosition", "Value": 2 }, { "Name": "ObjectCFrame", "Value": 3 } ], "Name": "ListenerType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "LoadCharacterLayeredClothing" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "LoadDynamicHeads" }, { "Items": [ { "Name": "PlainText", "Value": 0 }, { "Name": "Markdown", "Value": 1 } ], "Name": "MarkupKind" }, { "Items": [ { "Name": "Plastic", "Value": 256 }, { "Name": "Wood", "Value": 512 }, { "Name": "Slate", "Value": 800 }, { "Name": "Concrete", "Value": 816 }, { "LegacyNames": [ "Corroded Metal" ], "Name": "CorrodedMetal", "Value": 1040 }, { "Name": "DiamondPlate", "Value": 1056 }, { "LegacyNames": [ "Aluminum" ], "Name": "Foil", "Value": 1072 }, { "Name": "Grass", "Value": 1280 }, { "Name": "Ice", "Value": 1536 }, { "Name": "Marble", "Value": 784 }, { "Name": "Granite", "Value": 832 }, { "Name": "Brick", "Value": 848 }, { "Name": "Pebble", "Value": 864 }, { "Name": "Sand", "Value": 1296 }, { "Name": "Fabric", "Value": 1312 }, { "Name": "SmoothPlastic", "Value": 272 }, { "Name": "Metal", "Value": 1088 }, { "Name": "WoodPlanks", "Value": 528 }, { "Name": "Cobblestone", "Value": 880 }, { "Name": "Air", "Tags": [ "NotBrowsable" ], "Value": 1792 }, { "Name": "Water", "Tags": [ "NotBrowsable" ], "Value": 2048 }, { "Name": "Rock", "Value": 896 }, { "Name": "Glacier", "Value": 1552 }, { "Name": "Snow", "Value": 1328 }, { "Name": "Sandstone", "Value": 912 }, { "Name": "Mud", "Value": 1344 }, { "Name": "Basalt", "Value": 788 }, { "Name": "Ground", "Value": 1360 }, { "Name": "CrackedLava", "Value": 804 }, { "Name": "Neon", "Value": 288 }, { "Name": "Glass", "Value": 1568 }, { "Name": "Asphalt", "Value": 1376 }, { "Name": "LeafyGrass", "Value": 1284 }, { "Name": "Salt", "Value": 1392 }, { "Name": "Limestone", "Value": 820 }, { "Name": "Pavement", "Value": 836 }, { "Name": "ForceField", "Value": 1584 } ], "Name": "Material" }, { "Items": [ { "Name": "Regular", "Value": 0 }, { "Name": "Organic", "Value": 1 } ], "Name": "MaterialPattern" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "BuildersClub", "Value": 1 }, { "Name": "TurboBuildersClub", "Value": 2 }, { "Name": "OutrageousBuildersClub", "Value": 3 }, { "Name": "Premium", "Value": 4 } ], "Name": "MembershipType" }, { "Items": [ { "Name": "DistanceBased", "Value": 0 }, { "Name": "Level00", "Value": 1 }, { "Name": "Level01", "Value": 2 }, { "Name": "Level02", "Value": 3 }, { "Name": "Level03", "Value": 4 }, { "Name": "Level04", "Value": 5 } ], "Name": "MeshPartDetailLevel" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "MeshPartHeadsAndAccessories" }, { "Items": [ { "Name": "Stud", "Value": 0 }, { "Name": "Meter", "Value": 1 }, { "Name": "CM", "Value": 2 }, { "Name": "MM", "Value": 3 }, { "Name": "Foot", "Value": 4 }, { "Name": "Inch", "Value": 5 } ], "Name": "MeshScaleUnit" }, { "Items": [ { "Name": "Head", "Value": 0 }, { "Name": "Torso", "Value": 1 }, { "Name": "Wedge", "Value": 2 }, { "Name": "Prism", "Tags": [ "Deprecated" ], "Value": 7 }, { "Name": "Pyramid", "Tags": [ "Deprecated" ], "Value": 8 }, { "Name": "ParallelRamp", "Tags": [ "Deprecated" ], "Value": 9 }, { "Name": "RightAngleRamp", "Tags": [ "Deprecated" ], "Value": 10 }, { "Name": "CornerWedge", "Tags": [ "Deprecated" ], "Value": 11 }, { "Name": "Brick", "Value": 6 }, { "Name": "Sphere", "Value": 3 }, { "Name": "Cylinder", "Value": 4 }, { "Name": "FileMesh", "Value": 5 } ], "Name": "MeshType" }, { "Items": [ { "Name": "MessageOutput", "Value": 0 }, { "Name": "MessageInfo", "Value": 1 }, { "Name": "MessageWarning", "Value": 2 }, { "Name": "MessageError", "Value": 3 } ], "Name": "MessageType" }, { "Items": [ { "Name": "Automatic", "Value": 0 }, { "Name": "StreamingMesh", "Value": 1 }, { "Name": "Disabled", "Value": 2 } ], "Name": "ModelLevelOfDetail" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Legacy", "Value": 1 }, { "Name": "Improved", "Value": 2 } ], "Name": "ModelStreamingBehavior" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Atomic", "Value": 1 }, { "Name": "Persistent", "Value": 2 }, { "Name": "PersistentPerPlayer", "Value": 3 }, { "Name": "Nonatomic", "Value": 4 } ], "Name": "ModelStreamingMode" }, { "Items": [ { "Name": "Alt", "Value": 2 }, { "Name": "Ctrl", "Value": 1 }, { "Name": "Meta", "Value": 3 }, { "Name": "Shift", "Value": 0 } ], "Name": "ModifierKey" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "LockCenter", "Value": 1 }, { "Name": "LockCurrentPosition", "Value": 2 } ], "Name": "MouseBehavior" }, { "Items": [ { "Name": "Stopped", "Value": 0 }, { "Name": "Coasting", "Value": 1 }, { "Name": "Pushing", "Value": 2 }, { "Name": "Stopping", "Value": 3 }, { "Name": "AirFree", "Value": 4 } ], "Name": "MoveState" }, { "Items": [ { "Name": "Unmuted", "Value": 0 }, { "Name": "Muted", "Value": 1 } ], "Name": "MuteState" }, { "Items": [ { "Name": "OccludeAll", "Value": 2 }, { "Name": "EnemyOcclusion", "Value": 1 }, { "Name": "NoOcclusion", "Value": 0 } ], "Name": "NameOcclusion" }, { "Items": [ { "Name": "Automatic", "Value": 0 }, { "Name": "Manual", "Value": 1 }, { "Name": "OnContact", "Value": 2 } ], "Name": "NetworkOwnership" }, { "Items": [ { "Name": "Top", "Value": 1 }, { "Name": "Bottom", "Value": 4 }, { "Name": "Back", "Value": 2 }, { "Name": "Front", "Value": 5 }, { "Name": "Right", "Value": 0 }, { "Name": "Left", "Value": 3 } ], "Name": "NormalId" }, { "Items": [ { "Name": "OneAttachment", "Value": 0 }, { "Name": "TwoAttachment", "Value": 1 } ], "Name": "OrientationAlignmentMode" }, { "Items": [ { "Name": "All", "Value": 1 }, { "Name": "Created", "Value": 2 }, { "Name": "Purchased", "Value": 3 } ], "Name": "OutfitSource" }, { "Items": [ { "Name": "All", "Value": 1 }, { "Name": "Avatar", "Value": 2 }, { "Name": "DynamicHead", "Value": 3 } ], "Name": "OutfitType" }, { "Items": [ { "Name": "Horizontal", "Value": 0 }, { "Name": "Vertical", "Value": 1 } ], "Name": "OutputLayoutMode" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "ForceShow", "Value": 1 }, { "Name": "ForceHide", "Value": 2 } ], "Name": "OverrideMouseIconBehavior" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "NoAccess", "Value": 1 }, { "Name": "Revoked", "Value": 2 }, { "Name": "UseView", "Value": 3 }, { "Name": "Edit", "Value": 4 }, { "Name": "Own", "Value": 5 } ], "Name": "PackagePermission" }, { "Items": [ { "Name": "Ball", "Value": 0 }, { "Name": "Block", "Value": 1 }, { "Name": "Cylinder", "Value": 2 }, { "Name": "Wedge", "Value": 3 }, { "Name": "CornerWedge", "Value": 4 } ], "Name": "PartType" }, { "Items": [ { "Name": "Box", "Value": 0 }, { "Name": "Sphere", "Value": 1 }, { "Name": "Cylinder", "Value": 2 }, { "Name": "Disc", "Value": 3 } ], "Name": "ParticleEmitterShape" }, { "Items": [ { "Name": "Outward", "Value": 0 }, { "Name": "Inward", "Value": 1 }, { "Name": "InAndOut", "Value": 2 } ], "Name": "ParticleEmitterShapeInOut" }, { "Items": [ { "Name": "Volume", "Value": 0 }, { "Name": "Surface", "Value": 1 } ], "Name": "ParticleEmitterShapeStyle" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "Grid2x2", "Value": 1 }, { "Name": "Grid4x4", "Value": 2 }, { "Name": "Grid8x8", "Value": 3 } ], "Name": "ParticleFlipbookLayout" }, { "Items": [ { "Name": "Loop", "Value": 0 }, { "Name": "OneShot", "Value": 1 }, { "Name": "PingPong", "Value": 2 }, { "Name": "Random", "Value": 3 } ], "Name": "ParticleFlipbookMode" }, { "Items": [ { "Name": "NotCompatible", "Value": 0 }, { "Name": "Compatible", "Value": 1 }, { "Name": "Unknown", "Value": 2 } ], "Name": "ParticleFlipbookTextureCompatible" }, { "Items": [ { "Name": "FacingCamera", "Value": 0 }, { "Name": "FacingCameraWorldUp", "Value": 1 }, { "Name": "VelocityParallel", "Value": 2 }, { "Name": "VelocityPerpendicular", "Value": 3 } ], "Name": "ParticleOrientation" }, { "Items": [ { "Name": "Success", "Value": 0 }, { "Name": "ClosestNoPath", "Tags": [ "Deprecated" ], "Value": 1 }, { "Name": "ClosestOutOfRange", "Tags": [ "Deprecated" ], "Value": 2 }, { "Name": "FailStartNotEmpty", "Tags": [ "Deprecated" ], "Value": 3 }, { "Name": "FailFinishNotEmpty", "Tags": [ "Deprecated" ], "Value": 4 }, { "Name": "NoPath", "Value": 5 } ], "Name": "PathStatus" }, { "Items": [ { "Name": "Walk", "Value": 0 }, { "Name": "Jump", "Value": 1 }, { "Name": "Custom", "Value": 2 } ], "Name": "PathWaypointAction" }, { "Items": [ { "Name": "Game", "Value": 0 }, { "Name": "RobloxGame", "Value": 1 }, { "Name": "RobloxScript", "Value": 2 }, { "Name": "Studio", "Value": 3 }, { "Name": "Roblox", "Value": 4 } ], "Name": "PermissionLevelShown" }, { "Items": [ { "Name": "Fixed240Hz", "Value": 0 }, { "Name": "Fixed120Hz", "Value": 1 }, { "Name": "Fixed60Hz", "Value": 2 } ], "Name": "PhysicsSimulationRate" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Fixed", "Value": 1 }, { "Name": "Adaptive", "Value": 2 } ], "Name": "PhysicsSteppingMethod" }, { "Items": [ { "Name": "Windows", "Value": 0 }, { "Name": "OSX", "Value": 1 }, { "Name": "IOS", "Value": 2 }, { "Name": "Android", "Value": 3 }, { "Name": "XBoxOne", "Value": 4 }, { "Name": "PS4", "Value": 5 }, { "Name": "PS3", "Value": 6 }, { "Name": "XBox360", "Value": 7 }, { "Name": "WiiU", "Value": 8 }, { "Name": "NX", "Value": 9 }, { "Name": "Ouya", "Value": 10 }, { "Name": "AndroidTV", "Value": 11 }, { "Name": "Chromecast", "Value": 12 }, { "Name": "Linux", "Value": 13 }, { "Name": "SteamOS", "Value": 14 }, { "Name": "WebOS", "Value": 15 }, { "Name": "DOS", "Value": 16 }, { "Name": "BeOS", "Value": 17 }, { "Name": "UWP", "Value": 18 }, { "Name": "None", "Value": 20 } ], "Name": "Platform" }, { "Items": [ { "Name": "Begin", "Value": 0 }, { "Name": "Delayed", "Value": 1 }, { "Name": "Playing", "Value": 2 }, { "Name": "Paused", "Value": 3 }, { "Name": "Completed", "Value": 4 }, { "Name": "Cancelled", "Value": 5 } ], "Name": "PlaybackState" }, { "Items": [ { "Name": "CharacterForward", "Value": 0 }, { "Name": "CharacterBackward", "Value": 1 }, { "Name": "CharacterLeft", "Value": 2 }, { "Name": "CharacterRight", "Value": 3 }, { "Name": "CharacterJump", "Value": 4 } ], "Name": "PlayerActions" }, { "Items": [ { "Name": "All", "Value": 0 }, { "Name": "Team", "Value": 1 }, { "Name": "Whisper", "Value": 2 } ], "Name": "PlayerChatType" }, { "Items": [ { "Name": "Out", "Value": 1 }, { "Name": "InOut", "Value": 2 }, { "Name": "In", "Value": 0 } ], "Name": "PoseEasingDirection" }, { "Items": [ { "Name": "Linear", "Value": 0 }, { "Name": "Constant", "Value": 1 }, { "Name": "Elastic", "Value": 2 }, { "Name": "Cubic", "Value": 3 }, { "Name": "Bounce", "Value": 4 } ], "Name": "PoseEasingStyle" }, { "Items": [ { "Name": "OneAttachment", "Value": 0 }, { "Name": "TwoAttachment", "Value": 1 } ], "Name": "PositionAlignmentMode" }, { "Items": [ { "Name": "Owner", "Value": 255 }, { "Name": "Admin", "Value": 240 }, { "Name": "Member", "Value": 128 }, { "Name": "Visitor", "Value": 10 }, { "Name": "Banned", "Value": 0 } ], "Name": "PrivilegeType", "Tags": [ "Deprecated" ] }, { "Items": [ { "Name": "AvatarShop", "Value": 0 }, { "Name": "AllowedGames", "Value": 1 }, { "Name": "AllGames", "Value": 2 } ], "Name": "ProductLocationRestriction" }, { "Items": [ { "Name": "NotProcessedYet", "Value": 0 }, { "Name": "PurchaseGranted", "Value": 1 } ], "Name": "ProductPurchaseDecision" }, { "Items": [ { "Name": "Success", "Value": 1 }, { "Name": "PermissionDenied", "Value": 2 }, { "Name": "Timeout", "Value": 3 }, { "Name": "UploadFailed", "Value": 4 }, { "Name": "NoUserInput", "Value": 5 }, { "Name": "UnknownFailure", "Value": 6 } ], "Name": "PromptCreateAssetResult" }, { "Items": [ { "Name": "Success", "Value": 1 }, { "Name": "PermissionDenied", "Value": 2 }, { "Name": "Timeout", "Value": 3 }, { "Name": "UploadFailed", "Value": 4 }, { "Name": "NoUserInput", "Value": 5 }, { "Name": "UnknownFailure", "Value": 6 } ], "Name": "PromptPublishAssetResult" }, { "Items": [ { "Name": "Ok", "Value": 0 }, { "Name": "Warning", "Value": 1 }, { "Name": "Error", "Value": 2 } ], "Name": "PropertyStatus" }, { "Items": [ { "Name": "OnePerButton", "Value": 0 }, { "Name": "OneGlobally", "Value": 1 }, { "Name": "AlwaysShow", "Value": 2 } ], "Name": "ProximityPromptExclusivity" }, { "Items": [ { "Name": "Keyboard", "Value": 0 }, { "Name": "Gamepad", "Value": 1 }, { "Name": "Touch", "Value": 2 } ], "Name": "ProximityPromptInputType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Custom", "Value": 1 } ], "Name": "ProximityPromptStyle" }, { "Items": [ { "Name": "Automatic", "Value": 0 }, { "LegacyNames": [ "Level 1" ], "Name": "Level01", "Value": 1 }, { "LegacyNames": [ "Level 2" ], "Name": "Level02", "Value": 2 }, { "LegacyNames": [ "Level 3" ], "Name": "Level03", "Value": 3 }, { "LegacyNames": [ "Level 4" ], "Name": "Level04", "Value": 4 }, { "LegacyNames": [ "Level 5" ], "Name": "Level05", "Value": 5 }, { "LegacyNames": [ "Level 6" ], "Name": "Level06", "Value": 6 }, { "LegacyNames": [ "Level 7" ], "Name": "Level07", "Value": 7 }, { "LegacyNames": [ "Level 8" ], "Name": "Level08", "Value": 8 }, { "LegacyNames": [ "Level 9" ], "Name": "Level09", "Value": 9 }, { "LegacyNames": [ "Level 10" ], "Name": "Level10", "Value": 10 }, { "LegacyNames": [ "Level 11" ], "Name": "Level11", "Value": 11 }, { "LegacyNames": [ "Level 12" ], "Name": "Level12", "Value": 12 }, { "LegacyNames": [ "Level 13" ], "Name": "Level13", "Value": 13 }, { "LegacyNames": [ "Level 14" ], "Name": "Level14", "Value": 14 }, { "LegacyNames": [ "Level 15" ], "Name": "Level15", "Value": 15 }, { "LegacyNames": [ "Level 16" ], "Name": "Level16", "Value": 16 }, { "LegacyNames": [ "Level 17" ], "Name": "Level17", "Value": 17 }, { "LegacyNames": [ "Level 18" ], "Name": "Level18", "Value": 18 }, { "LegacyNames": [ "Level 19" ], "Name": "Level19", "Value": 19 }, { "LegacyNames": [ "Level 20" ], "Name": "Level20", "Value": 20 }, { "LegacyNames": [ "Level 21" ], "Name": "Level21", "Value": 21 } ], "Name": "QualityLevel" }, { "Items": [ { "Name": "OuterBox", "Value": 0 }, { "Name": "InnerBox", "Value": 1 } ], "Name": "R15CollisionType" }, { "Items": [ { "LegacyNames": [ "Blacklist" ], "Name": "Exclude", "Value": 0 }, { "LegacyNames": [ "Whitelist" ], "Name": "Include", "Value": 1 } ], "Name": "RaycastFilterType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "RejectCharacterDeletions" }, { "Items": [ { "Name": "Automatic", "Value": 0 }, { "Name": "Precise", "Value": 1 }, { "Name": "Performance", "Value": 2 } ], "Name": "RenderFidelity" }, { "Items": [ { "Name": "First", "Value": 0 }, { "Name": "Input", "Value": 100 }, { "Name": "Camera", "Value": 200 }, { "Name": "Character", "Value": 300 }, { "Name": "Last", "Value": 2000 } ], "Name": "RenderPriority" }, { "Items": [ { "Name": "psnr", "Value": 0 }, { "Name": "diff", "Value": 1 } ], "Name": "RenderingTestComparisonMethod" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "ReplicateInstanceDestroySetting" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Pixelated", "Value": 1 } ], "Name": "ResamplerMode" }, { "Items": [ { "Name": "Standard", "Value": 0 }, { "Name": "Selection", "Value": 524288 }, { "Name": "Hover", "Value": 262144 }, { "Name": "Active", "Value": 131072 } ], "Name": "ReservedHighlightId" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "RotationsReset", "Value": 1 }, { "Name": "Custom", "Value": 2 } ], "Name": "RestPose" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Done", "Value": 1 }, { "Name": "Go", "Value": 2 }, { "Name": "Next", "Value": 3 }, { "Name": "Search", "Value": 4 }, { "Name": "Send", "Value": 5 } ], "Name": "ReturnKeyType" }, { "Items": [ { "Name": "NoReverb", "Value": 0 }, { "Name": "GenericReverb", "Value": 1 }, { "Name": "PaddedCell", "Value": 2 }, { "Name": "Room", "Value": 3 }, { "Name": "Bathroom", "Value": 4 }, { "Name": "LivingRoom", "Value": 5 }, { "Name": "StoneRoom", "Value": 6 }, { "Name": "Auditorium", "Value": 7 }, { "Name": "ConcertHall", "Value": 8 }, { "Name": "Cave", "Value": 9 }, { "Name": "Arena", "Value": 10 }, { "Name": "Hangar", "Value": 11 }, { "Name": "CarpettedHallway", "Value": 12 }, { "Name": "Hallway", "Value": 13 }, { "Name": "StoneCorridor", "Value": 14 }, { "Name": "Alley", "Value": 15 }, { "Name": "Forest", "Value": 16 }, { "Name": "City", "Value": 17 }, { "Name": "Mountains", "Value": 18 }, { "Name": "Quarry", "Value": 19 }, { "Name": "Plain", "Value": 20 }, { "Name": "ParkingLot", "Value": 21 }, { "Name": "SewerPipe", "Value": 22 }, { "Name": "UnderWater", "Value": 23 } ], "Name": "ReverbType" }, { "Items": [ { "Name": "Select", "Value": 0 }, { "Name": "Scale", "Value": 1 }, { "Name": "Rotate", "Value": 2 }, { "Name": "Move", "Value": 3 }, { "Name": "Transform", "Value": 4 }, { "Name": "ColorPicker", "Value": 5 }, { "Name": "MaterialPicker", "Value": 6 }, { "Name": "Group", "Value": 7 }, { "Name": "Ungroup", "Value": 8 }, { "Name": "None", "Value": 9 } ], "Name": "RibbonTool" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Rthro", "Value": 1 }, { "Name": "RthroNarrow", "Value": 2 } ], "Name": "RigScale" }, { "Items": [ { "Name": "R15", "Value": 0 }, { "Name": "Custom", "Value": 1 }, { "Name": "None", "Value": 2 } ], "Name": "RigType" }, { "Items": [ { "Name": "Inverse", "Value": 0 }, { "Name": "Linear", "Value": 1 }, { "Name": "InverseTapered", "Value": 3 }, { "Name": "LinearSquare", "Value": 2 } ], "Name": "RollOffMode" }, { "Items": [ { "Name": "XYZ", "Value": 0 }, { "Name": "XZY", "Value": 1 }, { "Name": "YZX", "Value": 2 }, { "Name": "YXZ", "Value": 3 }, { "Name": "ZXY", "Value": 4 }, { "Name": "ZYX", "Value": 5 } ], "Name": "RotationOrder" }, { "Items": [ { "Name": "MovementRelative", "Value": 0 }, { "Name": "CameraRelative", "Value": 1 } ], "Name": "RotationType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "RtlTextSupport" }, { "Items": [ { "Name": "Legacy", "Value": 0 }, { "Name": "Server", "Value": 1 }, { "Name": "Client", "Value": 2 }, { "Name": "Plugin", "Value": 3 } ], "Name": "RunContext" }, { "Items": [ { "Name": "Aggregate", "Value": 0 }, { "Name": "Snapshot", "Value": 1 }, { "Name": "Hybrid", "Value": 2 } ], "Name": "RuntimeUndoBehavior" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "FullscreenExtension", "Value": 1 } ], "Name": "SafeAreaCompatibility" }, { "Items": [ { "Name": "All", "Value": 1 }, { "Name": "Collectibles", "Value": 2 }, { "Name": "Premium", "Value": 3 } ], "Name": "SalesTypeFilter" }, { "Items": [ { "Name": "BadThumbnailType", "Value": 1 }, { "Name": "BadYRotDeg", "Value": 2 }, { "Name": "BadFieldOfViewDeg", "Value": 3 }, { "Name": "BadDistanceScale", "Value": 4 }, { "Name": "Other", "Value": 5 } ], "Name": "SaveAvatarThumbnailCustomizationFailure" }, { "Items": [ { "Name": "SaveAll", "Value": 2 }, { "Name": "SaveWorld", "Value": 0 }, { "Name": "SaveGame", "Value": 1 } ], "Name": "SaveFilter", "Tags": [ "Deprecated" ] }, { "Items": [ { "Name": "Automatic", "Value": 0 }, { "Name": "QualityLevel1", "Value": 1 }, { "Name": "QualityLevel2", "Value": 2 }, { "Name": "QualityLevel3", "Value": 3 }, { "Name": "QualityLevel4", "Value": 4 }, { "Name": "QualityLevel5", "Value": 5 }, { "Name": "QualityLevel6", "Value": 6 }, { "Name": "QualityLevel7", "Value": 7 }, { "Name": "QualityLevel8", "Value": 8 }, { "Name": "QualityLevel9", "Value": 9 }, { "Name": "QualityLevel10", "Value": 10 } ], "Name": "SavedQualitySetting" }, { "Items": [ { "Name": "Stretch", "Value": 0 }, { "Name": "Slice", "Value": 1 }, { "Name": "Tile", "Value": 2 }, { "Name": "Fit", "Value": 3 }, { "Name": "Crop", "Value": 4 } ], "Name": "ScaleType" }, { "Items": [ { "Name": "ConsentAccepted", "Value": 0 }, { "Name": "InvalidScopes", "Value": 1 }, { "Name": "Timeout", "Value": 2 }, { "Name": "NoUserInput", "Value": 3 }, { "Name": "BackendError", "Value": 4 }, { "Name": "UnexpectedError", "Value": 5 }, { "Name": "InvalidArgument", "Value": 6 }, { "Name": "ConsentDenied", "Value": 7 } ], "Name": "ScopeCheckResult" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "DeviceSafeInsets", "Value": 1 }, { "Name": "CoreUISafeInsets", "Value": 2 } ], "Name": "ScreenInsets" }, { "Items": [ { "Name": "LandscapeLeft", "Value": 0 }, { "Name": "LandscapeRight", "Value": 1 }, { "Name": "LandscapeSensor", "Value": 2 }, { "Name": "Portrait", "Value": 3 }, { "Name": "Sensor", "Value": 4 } ], "Name": "ScreenOrientation" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "ScrollBar", "Value": 1 }, { "Name": "Always", "Value": 2 } ], "Name": "ScrollBarInset" }, { "Items": [ { "Name": "X", "Value": 1 }, { "Name": "Y", "Value": 2 }, { "Name": "XY", "Value": 4 } ], "Name": "ScrollingDirection" }, { "Items": [ { "Name": "Escape", "Value": 0 }, { "Name": "Stop", "Value": 1 } ], "Name": "SelectionBehavior" }, { "Items": [ { "Name": "Outlines", "Value": 0 }, { "Name": "BoundingBoxes", "Value": 1 }, { "Name": "Both", "Value": 2 } ], "Name": "SelectionRenderMode" }, { "Items": [ { "Name": "LastPosition", "Value": 0 }, { "Name": "TopLeft", "Value": 1 }, { "Name": "TopRight", "Value": 2 }, { "Name": "BottomLeft", "Value": 3 }, { "Name": "BottomRight", "Value": 4 } ], "Name": "SelfViewPosition" }, { "Items": [ { "Name": "Floor", "Value": 0 }, { "Name": "Ladder", "Value": 1 } ], "Name": "SensorMode" }, { "Items": [ { "Name": "OnRead", "Value": 0 }, { "Name": "Manual", "Value": 1 } ], "Name": "SensorUpdateType" }, { "Items": [ { "Name": "Enabled", "Value": 0 }, { "Name": "Muted", "Value": 1 }, { "Name": "OnlineGame", "Value": 2 } ], "Name": "ServerAudioBehavior" }, { "Items": [ { "Name": "Always", "Value": 0 }, { "Name": "Off", "Value": 1 }, { "Name": "WithChildren", "Value": 2 } ], "Name": "ServiceVisibility" }, { "Items": [ { "Name": "Error", "Value": 1 }, { "Name": "Warning", "Value": 2 }, { "Name": "Information", "Value": 3 }, { "Name": "Hint", "Value": 4 } ], "Name": "Severity" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Immediate", "Value": 1 }, { "Name": "Deferred", "Value": 2 }, { "Name": "AncestryDeferred", "Value": 3 } ], "Name": "SignalBehavior" }, { "Items": [ { "Name": "RelativeXY", "Value": 0 }, { "Name": "RelativeXX", "Value": 1 }, { "Name": "RelativeYY", "Value": 2 } ], "Name": "SizeConstraint" }, { "Items": [ { "Name": "Disabled", "Value": 0 }, { "Name": "PerIsland", "Value": 1 }, { "Name": "PerEdge", "Value": 2 } ], "Name": "SolverConvergenceVisualizationMode" }, { "Items": [ { "Name": "Ascending", "Value": 0 }, { "Name": "Descending", "Value": 1 } ], "Name": "SortDirection" }, { "Items": [ { "Name": "LayoutOrder", "Value": 2 }, { "Name": "Name", "Value": 0 }, { "Name": "Custom", "Tags": [ "Deprecated" ], "Value": 1 } ], "Name": "SortOrder" }, { "Items": [ { "Name": "Insert", "Value": 0 }, { "Name": "Home", "Value": 1 }, { "Name": "End", "Value": 2 }, { "Name": "PageUp", "Value": 3 }, { "Name": "PageDown", "Value": 4 }, { "Name": "ChatHotkey", "Value": 5 } ], "Name": "SpecialKey" }, { "Items": [ { "Name": "TopLeft", "Value": 0 }, { "Name": "TopRight", "Value": 1 }, { "Name": "BottomLeft", "Value": 2 }, { "Name": "BottomRight", "Value": 3 } ], "Name": "StartCorner" }, { "Items": [ { "Name": "Poison", "Tags": [ "Deprecated" ], "Value": 0 }, { "Name": "Confusion", "Tags": [ "Deprecated" ], "Value": 1 } ], "Name": "Status", "Tags": [ "Deprecated" ] }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "LowMemory", "Value": 1 }, { "Name": "Opportunistic", "Value": 2 } ], "Name": "StreamOutBehavior" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "MinimumRadiusPause", "Value": 2 }, { "Name": "PauseOutsideLoadedArea", "Value": 3 } ], "Name": "StreamingIntegrityMode" }, { "Items": [ { "Name": "Default", "Tags": [ "Deprecated" ], "Value": 0 }, { "Name": "Disabled", "Tags": [ "Deprecated" ], "Value": 1 }, { "Name": "ClientPhysicsPause", "Tags": [ "Deprecated" ], "Value": 2 } ], "Name": "StreamingPauseMode" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "CloseStudio", "Value": 1 }, { "Name": "CloseDoc", "Value": 2 } ], "Name": "StudioCloseMode" }, { "Items": [ { "Name": "Edit", "Value": 0 }, { "Name": "PlayClient", "Value": 1 }, { "Name": "PlayServer", "Value": 2 }, { "Name": "Standalone", "Value": 3 }, { "Name": "None", "Value": 4 } ], "Name": "StudioDataModelType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Operator", "Value": 1 }, { "Name": "Number", "Value": 2 }, { "Name": "String", "Value": 3 }, { "Name": "Comment", "Value": 4 }, { "Name": "Keyword", "Value": 5 }, { "Name": "Builtin", "Value": 6 }, { "Name": "Method", "Value": 7 }, { "Name": "Property", "Value": 8 }, { "Name": "Nil", "Value": 9 }, { "Name": "Bool", "Value": 10 }, { "Name": "Function", "Value": 11 }, { "Name": "Local", "Value": 12 }, { "Name": "Self", "Value": 13 }, { "Name": "LuauKeyword", "Value": 14 }, { "Name": "FunctionName", "Value": 15 }, { "Name": "TODO", "Value": 16 }, { "Name": "Background", "Value": 17 }, { "Name": "SelectionText", "Value": 18 }, { "Name": "SelectionBackground", "Value": 19 }, { "Name": "FindSelectionBackground", "Value": 20 }, { "Name": "MatchingWordBackground", "Value": 21 }, { "Name": "Warning", "Value": 22 }, { "Name": "Error", "Value": 23 }, { "Name": "Info", "Value": 24 }, { "Name": "Hint", "Value": 25 }, { "Name": "Whitespace", "Value": 26 }, { "Name": "ActiveLine", "Value": 27 }, { "Name": "DebuggerCurrentLine", "Value": 28 }, { "Name": "DebuggerErrorLine", "Value": 29 }, { "Name": "Ruler", "Value": 30 }, { "Name": "Bracket", "Value": 31 }, { "Name": "MenuPrimaryText", "Value": 32 }, { "Name": "MenuSecondaryText", "Value": 33 }, { "Name": "MenuSelectedText", "Value": 34 }, { "Name": "MenuBackground", "Value": 35 }, { "Name": "MenuSelectedBackground", "Value": 36 }, { "Name": "MenuScrollbarBackground", "Value": 37 }, { "Name": "MenuScrollbarHandle", "Value": 38 }, { "Name": "MenuBorder", "Value": 39 }, { "Name": "DocViewCodeBackground", "Value": 40 }, { "Name": "AICOOverlayText", "Value": 41 }, { "Name": "AICOOverlayButtonBackground", "Value": 42 }, { "Name": "AICOOverlayButtonBackgroundHover", "Value": 43 }, { "Name": "AICOOverlayButtonBackgroundPressed", "Value": 44 }, { "Name": "IndentationRuler", "Value": 45 } ], "Name": "StudioScriptEditorColorCategories" }, { "Items": [ { "Name": "RobloxDefault", "Value": 0 }, { "Name": "Extra1", "Value": 1 }, { "Name": "Extra2", "Value": 2 }, { "Name": "Custom", "Value": 3 } ], "Name": "StudioScriptEditorColorPresets" }, { "Items": [ { "Name": "MainBackground", "Value": 0 }, { "Name": "Titlebar", "Value": 1 }, { "Name": "Dropdown", "Value": 2 }, { "Name": "Tooltip", "Value": 3 }, { "Name": "Notification", "Value": 4 }, { "Name": "ScrollBar", "Value": 5 }, { "Name": "ScrollBarBackground", "Value": 6 }, { "Name": "TabBar", "Value": 7 }, { "Name": "Tab", "Value": 8 }, { "Name": "FilterButtonDefault", "Value": 9 }, { "Name": "FilterButtonHover", "Value": 10 }, { "Name": "FilterButtonChecked", "Value": 11 }, { "Name": "FilterButtonAccent", "Value": 12 }, { "Name": "FilterButtonBorder", "Value": 13 }, { "Name": "FilterButtonBorderAlt", "Value": 14 }, { "Name": "RibbonTab", "Value": 15 }, { "Name": "RibbonTabTopBar", "Value": 16 }, { "Name": "Button", "Value": 17 }, { "Name": "MainButton", "Value": 18 }, { "Name": "RibbonButton", "Value": 19 }, { "Name": "ViewPortBackground", "Value": 20 }, { "Name": "InputFieldBackground", "Value": 21 }, { "Name": "Item", "Value": 22 }, { "Name": "TableItem", "Value": 23 }, { "Name": "CategoryItem", "Value": 24 }, { "Name": "GameSettingsTableItem", "Value": 25 }, { "Name": "GameSettingsTooltip", "Value": 26 }, { "Name": "EmulatorBar", "Value": 27 }, { "Name": "EmulatorDropDown", "Value": 28 }, { "Name": "ColorPickerFrame", "Value": 29 }, { "Name": "CurrentMarker", "Value": 30 }, { "Name": "Border", "Value": 31 }, { "Name": "DropShadow", "Value": 32 }, { "Name": "Shadow", "Value": 33 }, { "Name": "Light", "Value": 34 }, { "Name": "Dark", "Value": 35 }, { "Name": "Mid", "Value": 36 }, { "Name": "MainText", "Value": 37 }, { "Name": "SubText", "Value": 38 }, { "Name": "TitlebarText", "Value": 39 }, { "Name": "BrightText", "Value": 40 }, { "Name": "DimmedText", "Value": 41 }, { "Name": "LinkText", "Value": 42 }, { "Name": "WarningText", "Value": 43 }, { "Name": "ErrorText", "Value": 44 }, { "Name": "InfoText", "Value": 45 }, { "Name": "SensitiveText", "Value": 46 }, { "Name": "ScriptSideWidget", "Value": 47 }, { "Name": "ScriptBackground", "Value": 48 }, { "Name": "ScriptText", "Value": 49 }, { "Name": "ScriptSelectionText", "Value": 50 }, { "Name": "ScriptSelectionBackground", "Value": 51 }, { "Name": "ScriptFindSelectionBackground", "Value": 52 }, { "Name": "ScriptMatchingWordSelectionBackground", "Value": 53 }, { "Name": "ScriptOperator", "Value": 54 }, { "Name": "ScriptNumber", "Value": 55 }, { "Name": "ScriptString", "Value": 56 }, { "Name": "ScriptComment", "Value": 57 }, { "Name": "ScriptKeyword", "Value": 58 }, { "Name": "ScriptBuiltInFunction", "Value": 59 }, { "Name": "ScriptWarning", "Value": 60 }, { "Name": "ScriptError", "Value": 61 }, { "Name": "ScriptInformation", "Value": 62 }, { "Name": "ScriptHint", "Value": 63 }, { "Name": "ScriptWhitespace", "Value": 64 }, { "Name": "ScriptRuler", "Value": 65 }, { "Name": "DocViewCodeBackground", "Value": 66 }, { "Name": "DebuggerCurrentLine", "Value": 67 }, { "Name": "DebuggerErrorLine", "Value": 68 }, { "Name": "ScriptEditorCurrentLine", "Value": 107 }, { "Name": "DiffFilePathText", "Value": 69 }, { "Name": "DiffTextHunkInfo", "Value": 70 }, { "Name": "DiffTextNoChange", "Value": 71 }, { "Name": "DiffTextAddition", "Value": 72 }, { "Name": "DiffTextDeletion", "Value": 73 }, { "Name": "DiffTextSeparatorBackground", "Value": 74 }, { "Name": "DiffTextNoChangeBackground", "Value": 75 }, { "Name": "DiffTextAdditionBackground", "Value": 76 }, { "Name": "DiffTextDeletionBackground", "Value": 77 }, { "Name": "DiffLineNum", "Value": 78 }, { "Name": "DiffLineNumSeparatorBackground", "Value": 79 }, { "Name": "DiffLineNumNoChangeBackground", "Value": 80 }, { "Name": "DiffLineNumAdditionBackground", "Value": 81 }, { "Name": "DiffLineNumDeletionBackground", "Value": 82 }, { "Name": "DiffFilePathBackground", "Value": 83 }, { "Name": "DiffFilePathBorder", "Value": 84 }, { "Name": "ChatIncomingBgColor", "Value": 85 }, { "Name": "ChatIncomingTextColor", "Value": 86 }, { "Name": "ChatOutgoingBgColor", "Value": 87 }, { "Name": "ChatOutgoingTextColor", "Value": 88 }, { "Name": "ChatModeratedMessageColor", "Value": 89 }, { "Name": "Separator", "Value": 90 }, { "Name": "ButtonBorder", "Value": 91 }, { "Name": "ButtonText", "Value": 92 }, { "Name": "InputFieldBorder", "Value": 93 }, { "Name": "CheckedFieldBackground", "Value": 94 }, { "Name": "CheckedFieldBorder", "Value": 95 }, { "Name": "CheckedFieldIndicator", "Value": 96 }, { "Name": "HeaderSection", "Value": 97 }, { "Name": "Midlight", "Value": 98 }, { "Name": "StatusBar", "Value": 99 }, { "Name": "DialogButton", "Value": 100 }, { "Name": "DialogButtonText", "Value": 101 }, { "Name": "DialogButtonBorder", "Value": 102 }, { "Name": "DialogMainButton", "Value": 103 }, { "Name": "DialogMainButtonText", "Value": 104 }, { "Name": "InfoBarWarningBackground", "Value": 105 }, { "Name": "InfoBarWarningText", "Value": 106 }, { "Name": "ScriptMethod", "Value": 108 }, { "Name": "ScriptProperty", "Value": 109 }, { "Name": "ScriptNil", "Value": 110 }, { "Name": "ScriptBool", "Value": 111 }, { "Name": "ScriptFunction", "Value": 112 }, { "Name": "ScriptLocal", "Value": 113 }, { "Name": "ScriptSelf", "Value": 114 }, { "Name": "ScriptLuauKeyword", "Value": 115 }, { "Name": "ScriptFunctionName", "Value": 116 }, { "Name": "ScriptTodo", "Value": 117 }, { "Name": "ScriptBracket", "Value": 118 }, { "Name": "AICOOverlayText", "Value": 128 }, { "Name": "AICOOverlayButtonBackground", "Value": 129 }, { "Name": "AICOOverlayButtonBackgroundHover", "Value": 130 }, { "Name": "AICOOverlayButtonBackgroundPressed", "Value": 131 }, { "Name": "AttributeCog", "Value": 119 } ], "Name": "StudioStyleGuideColor" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Selected", "Value": 1 }, { "Name": "Pressed", "Value": 2 }, { "Name": "Disabled", "Value": 3 }, { "Name": "Hover", "Value": 4 } ], "Name": "StudioStyleGuideModifier" }, { "Items": [ { "LegacyNames": [ "Alternating Supports" ], "Name": "AlternatingSupports", "Value": 0 }, { "LegacyNames": [ "Bridge Style Supports" ], "Name": "BridgeStyleSupports", "Value": 1 }, { "LegacyNames": [ "No Supports" ], "Name": "NoSupports", "Value": 2 } ], "Name": "Style" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "Hinge", "Value": 1 }, { "Name": "SteppingMotor", "Value": 2 }, { "Name": "Motor", "Value": 3 } ], "Name": "SurfaceConstraint" }, { "Items": [ { "Name": "Flat", "Value": 0 }, { "Name": "CurvedHorizontally", "Value": 1 } ], "Name": "SurfaceGuiShape" }, { "Items": [ { "Name": "FixedSize", "Value": 0 }, { "Name": "PixelsPerStud", "Value": 1 } ], "Name": "SurfaceGuiSizingMode" }, { "Items": [ { "LegacyNames": [ "Spawn", "Unjoinable" ], "Name": "Smooth", "Value": 0 }, { "LegacyNames": [ "Bumps" ], "Name": "Glue", "Value": 1 }, { "Name": "Weld", "Value": 2 }, { "Name": "Studs", "Value": 3 }, { "Name": "Inlet", "Value": 4 }, { "Name": "Universal", "Value": 5 }, { "Name": "Hinge", "Value": 6 }, { "Name": "Motor", "Value": 7 }, { "Name": "SteppingMotor", "Value": 8 }, { "Name": "SmoothNoOutlines", "Value": 10 } ], "Name": "SurfaceType" }, { "Items": [ { "Name": "Right", "Value": 0 }, { "Name": "Left", "Value": 1 }, { "Name": "Up", "Value": 2 }, { "Name": "Down", "Value": 3 }, { "Name": "None", "Value": 4 } ], "Name": "SwipeDirection" }, { "Items": [ { "Name": "RowMajor", "Value": 0 }, { "Name": "ColumnMajor", "Value": 1 } ], "Name": "TableMajorAxis" }, { "Items": [ { "Name": "Compatibility", "Value": 2 }, { "Name": "Voxel", "Value": 1 }, { "Name": "ShadowMap", "Value": 3 }, { "Name": "Legacy", "Tags": [ "Deprecated" ], "Value": 0 }, { "Name": "Future", "Value": 4 } ], "Name": "Technology" }, { "Items": [ { "Name": "TeleportToSpawnByName", "Value": 0 }, { "Name": "TeleportToPlaceInstance", "Value": 1 }, { "Name": "TeleportToPrivateServer", "Value": 2 }, { "Name": "TeleportPartyAsync", "Value": 3 }, { "Name": "TeleportUnknown", "Value": 4 } ], "Name": "TeleportMethod" }, { "Items": [ { "Name": "Success", "Value": 0 }, { "Name": "Failure", "Value": 1 }, { "Name": "GameNotFound", "Value": 2 }, { "Name": "GameEnded", "Value": 3 }, { "Name": "GameFull", "Value": 4 }, { "Name": "Unauthorized", "Value": 5 }, { "Name": "Flooded", "Value": 6 }, { "Name": "IsTeleporting", "Value": 7 } ], "Name": "TeleportResult" }, { "Items": [ { "Name": "RequestedFromServer", "Value": 0 }, { "Name": "Started", "Value": 1 }, { "Name": "WaitingForServer", "Value": 2 }, { "Name": "Failed", "Value": 3 }, { "Name": "InProgress", "Value": 4 } ], "Name": "TeleportState" }, { "Items": [ { "Name": "ToPlace", "Value": 0 }, { "Name": "ToInstance", "Value": 1 }, { "Name": "ToReservedServer", "Value": 2 } ], "Name": "TeleportType" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "Legacy", "Value": 1 }, { "Name": "Template", "Value": 2 }, { "Name": "Generate", "Value": 3 }, { "Name": "Import", "Value": 4 }, { "Name": "Convert", "Value": 5 }, { "Name": "EditAddTool", "Value": 6 }, { "Name": "EditSeaLevelTool", "Value": 7 }, { "Name": "EditReplaceTool", "Value": 8 }, { "Name": "RegionFillTool", "Value": 9 }, { "Name": "RegionPasteTool", "Value": 10 }, { "Name": "Other", "Value": 11 } ], "Name": "TerrainAcquisitionMethod" }, { "Items": [ { "Name": "Top", "Value": 0 }, { "Name": "Side", "Value": 1 }, { "Name": "Bottom", "Value": 2 } ], "Name": "TerrainFace" }, { "Items": [ { "Name": "Unknown", "Value": 1 }, { "Name": "Success", "Value": 2 }, { "Name": "Sending", "Value": 3 }, { "Name": "TextFilterFailed", "Value": 4 }, { "Name": "Floodchecked", "Value": 5 }, { "Name": "InvalidPrivacySettings", "Value": 6 }, { "Name": "InvalidTextChannelPermissions", "Value": 7 }, { "Name": "MessageTooLong", "Value": 8 } ], "Name": "TextChatMessageStatus" }, { "Items": [ { "Name": "Auto", "Value": 0 }, { "Name": "LeftToRight", "Value": 1 }, { "Name": "RightToLeft", "Value": 2 } ], "Name": "TextDirection" }, { "Items": [ { "Name": "PublicChat", "Value": 1 }, { "Name": "PrivateChat", "Value": 2 } ], "Name": "TextFilterContext" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "NoSuggestions", "Value": 1 }, { "Name": "Number", "Value": 2 }, { "Name": "Email", "Value": 3 }, { "Name": "Phone", "Value": 4 }, { "Name": "Password", "Value": 5 }, { "Name": "PasswordShown", "Value": 6 }, { "Name": "Username", "Value": 7 }, { "Name": "OneTimePassword", "Value": 8 } ], "Name": "TextInputType" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "AtEnd", "Value": 1 } ], "Name": "TextTruncate" }, { "Items": [ { "Name": "Left", "Value": 0 }, { "Name": "Center", "Value": 2 }, { "Name": "Right", "Value": 1 } ], "Name": "TextXAlignment" }, { "Items": [ { "Name": "Top", "Value": 0 }, { "Name": "Center", "Value": 1 }, { "Name": "Bottom", "Value": 2 } ], "Name": "TextYAlignment" }, { "Items": [ { "Name": "Stretch", "Value": 0 }, { "Name": "Wrap", "Value": 1 }, { "Name": "Static", "Value": 2 } ], "Name": "TextureMode" }, { "Items": [ { "Name": "NonHumanoid", "Value": 0 }, { "Name": "NonHumanoidOrphaned", "Value": 1 }, { "Name": "Humanoid", "Value": 2 }, { "Name": "HumanoidOrphaned", "Value": 3 } ], "Name": "TextureQueryType" }, { "Items": [ { "LegacyNames": [ "PartialThread" ], "Name": "Auto", "Value": 0 }, { "Name": "PerCore1", "Value": 101 }, { "Name": "PerCore2", "Value": 102 }, { "Name": "PerCore3", "Value": 103 }, { "Name": "PerCore4", "Value": 104 }, { "Name": "Threads1", "Value": 1 }, { "Name": "Threads2", "Value": 2 }, { "Name": "Threads3", "Value": 3 }, { "Name": "Threads4", "Value": 4 }, { "Name": "Threads8", "Value": 8 }, { "Name": "Threads16", "Value": 16 } ], "Name": "ThreadPoolConfig" }, { "Items": [ { "Name": "Extreme", "Value": 2 }, { "Name": "ElevatedOnServer", "Value": 1 }, { "Name": "Default", "Value": 0 } ], "Name": "ThrottlingPriority" }, { "Items": [ { "Name": "Size48x48", "Value": 0 }, { "Name": "Size180x180", "Value": 1 }, { "Name": "Size420x420", "Value": 2 }, { "Name": "Size60x60", "Value": 3 }, { "Name": "Size100x100", "Value": 4 }, { "Name": "Size150x150", "Value": 5 }, { "Name": "Size352x352", "Value": 6 } ], "Name": "ThumbnailSize" }, { "Items": [ { "Name": "HeadShot", "Value": 0 }, { "Name": "AvatarBust", "Value": 1 }, { "Name": "AvatarThumbnail", "Value": 2 } ], "Name": "ThumbnailType" }, { "Items": [ { "Name": "Fast", "Value": 0 }, { "Name": "Benchmark", "Value": 1 }, { "Name": "Precise", "Value": 2 } ], "Name": "TickCountSampleMethod" }, { "Items": [ { "Name": "Top", "Value": 0 }, { "Name": "Center", "Value": 1 }, { "Name": "Bottom", "Value": 2 } ], "Name": "TopBottom" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Follow", "Value": 2 }, { "Name": "Classic", "Value": 1 }, { "Name": "Orbital", "Value": 3 } ], "Name": "TouchCameraMovementMode" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Thumbstick", "Value": 1 }, { "Name": "DPad", "Value": 2 }, { "Name": "Thumbpad", "Value": 3 }, { "Name": "ClickToMove", "Value": 4 }, { "Name": "DynamicThumbstick", "Value": 5 } ], "Name": "TouchMovementMode" }, { "Items": [ { "Name": "Ok", "Value": 0 }, { "Name": "NoService", "Value": 1 }, { "Name": "InitFailed", "Value": 2 }, { "Name": "NoVideo", "Value": 3 }, { "Name": "VideoError", "Value": 4 }, { "Name": "VideoNoPermission", "Value": 5 }, { "Name": "VideoUnsupported", "Value": 6 }, { "Name": "NoAudio", "Value": 7 }, { "Name": "AudioError", "Value": 8 }, { "Name": "AudioNoPermission", "Value": 9 }, { "Name": "UnsupportedDevice", "Value": 10 } ], "Name": "TrackerError" }, { "Items": [ { "Name": "Auto", "Value": 3 }, { "Name": "ForceDisabled", "Value": 0 }, { "Name": "ExtrapolateFacsAndPose", "Value": 1 }, { "Name": "ExtrapolateFacsOnly", "Value": 2 } ], "Name": "TrackerExtrapolationFlagMode" }, { "Items": [ { "Name": "Auto", "Value": 2 }, { "Name": "ForceFalse", "Value": 0 }, { "Name": "ForceTrue", "Value": 1 } ], "Name": "TrackerLodFlagMode" }, { "Items": [ { "Name": "Auto", "Value": 2 }, { "Name": "Force0", "Value": 0 }, { "Name": "Force1", "Value": 1 } ], "Name": "TrackerLodValueMode" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "Audio", "Value": 1 }, { "Name": "Video", "Value": 2 }, { "Name": "AudioVideo", "Value": 3 } ], "Name": "TrackerMode" }, { "Items": [ { "Name": "LODCameraRecommendDisable", "Value": 0 } ], "Name": "TrackerPromptEvent" }, { "Items": [ { "Name": "Unknown", "Value": 0 }, { "Name": "True", "Value": 1 }, { "Name": "False", "Value": 2 } ], "Name": "TriStateBoolean" }, { "Items": [ { "Name": "Canceled", "Value": 0 }, { "Name": "Completed", "Value": 1 } ], "Name": "TweenStatus" }, { "Items": [ { "Name": "Light", "Tags": [ "Deprecated" ], "Value": 0 }, { "Name": "Dark", "Tags": [ "Deprecated" ], "Value": 1 } ], "Name": "UITheme" }, { "Items": [ { "Name": "UiMessageError", "Value": 0 }, { "Name": "UiMessageInfo", "Value": 1 } ], "Name": "UiMessageType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Preview", "Value": 1 } ], "Name": "UsageContext" }, { "Items": [ { "Name": "Head", "Value": 0 }, { "Name": "LeftHand", "Value": 1 }, { "Name": "RightHand", "Value": 2 }, { "Name": "Floor", "Value": 3 } ], "Name": "UserCFrame" }, { "Items": [ { "Name": "Begin", "Value": 0 }, { "Name": "Change", "Value": 1 }, { "Name": "End", "Value": 2 }, { "Name": "Cancel", "Value": 3 }, { "Name": "None", "Value": 4 } ], "Name": "UserInputState" }, { "Items": [ { "Name": "MouseButton1", "Value": 0 }, { "Name": "MouseButton2", "Value": 1 }, { "Name": "MouseButton3", "Value": 2 }, { "Name": "MouseWheel", "Value": 3 }, { "Name": "MouseMovement", "Value": 4 }, { "Name": "Touch", "Value": 7 }, { "Name": "Keyboard", "Value": 8 }, { "Name": "Focus", "Value": 9 }, { "Name": "Accelerometer", "Value": 10 }, { "Name": "Gyro", "Value": 11 }, { "Name": "Gamepad1", "Value": 12 }, { "Name": "Gamepad2", "Value": 13 }, { "Name": "Gamepad3", "Value": 14 }, { "Name": "Gamepad4", "Value": 15 }, { "Name": "Gamepad5", "Value": 16 }, { "Name": "Gamepad6", "Value": 17 }, { "Name": "Gamepad7", "Value": 18 }, { "Name": "Gamepad8", "Value": 19 }, { "Name": "TextInput", "Value": 20 }, { "Name": "InputMethod", "Value": 21 }, { "Name": "None", "Value": 22 } ], "Name": "UserInputType" }, { "Items": [ { "Name": "NoOne", "Value": 0 }, { "Name": "OnlyFriends", "Value": 1 }, { "Name": "Anyone", "Value": 2 } ], "Name": "VRSafetyBubbleMode" }, { "Items": [ { "Name": "World", "Value": 0 }, { "Name": "Off", "Value": 1 } ], "Name": "VRScaling" }, { "Items": [ { "Name": "Idle", "Value": 1 }, { "Name": "Visible", "Value": 2 }, { "Name": "Focused", "Value": 3 }, { "Name": "Stopping", "Value": 4 }, { "Name": "Undefined", "Value": 0 } ], "Name": "VRSessionState" }, { "Items": [ { "Name": "Left", "Value": 0 }, { "Name": "Right", "Value": 1 } ], "Name": "VRTouchpad" }, { "Items": [ { "Name": "Touch", "Value": 0 }, { "Name": "VirtualThumbstick", "Value": 1 }, { "Name": "ABXY", "Value": 2 } ], "Name": "VRTouchpadMode" }, { "Items": [ { "Name": "Line", "Value": 0 }, { "Name": "Plane", "Value": 1 }, { "Name": "Vector", "Value": 2 } ], "Name": "VelocityConstraintMode" }, { "Items": [ { "Name": "Center", "Value": 0 }, { "Name": "Top", "Value": 1 }, { "Name": "Bottom", "Value": 2 } ], "Name": "VerticalAlignment" }, { "Items": [ { "Name": "Left", "Value": 1 }, { "Name": "Right", "Value": 0 } ], "Name": "VerticalScrollBarPosition" }, { "Items": [ { "Name": "Large", "Value": 0 }, { "Name": "Small", "Value": 1 }, { "Name": "LeftTrigger", "Value": 2 }, { "Name": "RightTrigger", "Value": 3 }, { "Name": "LeftHand", "Value": 4 }, { "Name": "RightHand", "Value": 5 } ], "Name": "VibrationMotor" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "GeometryComplexity", "Value": 1 }, { "Name": "Transparent", "Value": 2 }, { "Name": "Decal", "Value": 3 } ], "Name": "ViewMode" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "VirtualCursorMode" }, { "Items": [ { "Name": "Recording", "Value": 1 }, { "Name": "Playing", "Value": 2 }, { "Name": "None", "Value": 0 } ], "Name": "VirtualInputMode" }, { "Items": [ { "Name": "Idle", "Value": 0 }, { "Name": "Joining", "Value": 1 }, { "Name": "JoiningRetry", "Value": 2 }, { "Name": "Joined", "Value": 3 }, { "Name": "Leaving", "Value": 4 }, { "Name": "Ended", "Value": 5 }, { "Name": "Failed", "Value": 6 } ], "Name": "VoiceChatState" }, { "Items": [ { "Name": "Disabled", "Value": 0 }, { "Name": "Automatic", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "VolumetricAudio" }, { "Items": [ { "Name": "NegX", "Value": 0 }, { "Name": "X", "Value": 1 }, { "Name": "NegY", "Value": 2 }, { "Name": "Y", "Value": 3 }, { "Name": "NegZ", "Value": 4 }, { "Name": "Z", "Value": 5 } ], "Name": "WaterDirection" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "Small", "Value": 1 }, { "Name": "Medium", "Value": 2 }, { "Name": "Strong", "Value": 3 }, { "Name": "Max", "Value": 4 } ], "Name": "WaterForce" }, { "Items": [ { "Name": "All", "Value": 0 }, { "Name": "None", "Value": 1 }, { "Name": "Touching", "Value": 2 } ], "Name": "WeldConstraintPreserve" }, { "Items": [ { "Name": "Disabled", "Value": 0 }, { "Name": "EnabledPreserve", "Value": 1 }, { "Name": "EnabledOverride", "Value": 2 } ], "Name": "WrapLayerAutoSkin" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "BoundCage", "Value": 1 }, { "Name": "LayerCage", "Value": 2 }, { "Name": "BoundCageAndLinks", "Value": 3 }, { "Name": "Reference", "Value": 4 }, { "Name": "Rbf", "Value": 5 }, { "Name": "OuterCage", "Value": 6 }, { "Name": "ReferenceMeshAfterMorph", "Value": 7 }, { "Name": "HSROuterDetail", "Value": 8 }, { "Name": "HSROuter", "Value": 9 }, { "Name": "HSRInner", "Value": 10 }, { "Name": "HSRInnerReverse", "Value": 11 }, { "Name": "LayerCageFittedToBase", "Value": 12 }, { "Name": "LayerCageFittedToPrev", "Value": 13 } ], "Name": "WrapLayerDebugMode" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "TargetCageOriginal", "Value": 1 }, { "Name": "TargetCageCompressed", "Value": 2 }, { "Name": "TargetCageInterface", "Value": 3 }, { "Name": "TargetLayerCageOriginal", "Value": 4 }, { "Name": "TargetLayerCageCompressed", "Value": 5 }, { "Name": "TargetLayerInterface", "Value": 6 }, { "Name": "Rbf", "Value": 7 }, { "Name": "OuterCageDetail", "Value": 8 } ], "Name": "WrapTargetDebugMode" }, { "Items": [ { "Name": "Global", "Value": 0 }, { "Name": "Sibling", "Value": 1 } ], "Name": "ZIndexBehavior" }, { "Items": [ { "Name": "Small", "Value": 0 }, { "Name": "Medium", "Value": 1 }, { "Name": "Large", "Value": 2 } ], "Name": "AudioWindowSize" }, { "Items": [ { "Name": "Peak", "Value": 0 }, { "Name": "LowShelf", "Value": 1 }, { "Name": "HighShelf", "Value": 2 }, { "Name": "Lowpass12dB", "Value": 3 }, { "Name": "Lowpass24dB", "Value": 4 }, { "Name": "Lowpass48dB", "Value": 5 }, { "Name": "Highpass12dB", "Value": 6 }, { "Name": "Highpass24dB", "Value": 7 }, { "Name": "Highpass48dB", "Value": 8 }, { "Name": "Bandpass", "Value": 9 }, { "Name": "Notch", "Value": 10 }, { "Name": "Lowpass6dB", "Value": 11 } ], "Name": "AudioFilterType" }, { "Items": [ { "Name": "Mono", "Value": 0 }, { "Name": "Stereo", "Value": 1 }, { "Name": "Quad", "Value": 2 }, { "Name": "Surround_5", "Value": 3 }, { "Name": "Surround_5_1", "Value": 4 }, { "Name": "Surround_7_1", "Value": 5 }, { "Name": "Surround_7_1_4", "Value": 6 } ], "Name": "AudioChannelLayout" } ], "Version": 1 } ]==] - {fa0b3803-9fa9-449f-a616-cd08d6120eda} - - 0 - false - API - -1 - - - - - - - return [==[ <roblox xmlnsund:xmime="http://www.w3.org/2005/05/xmlmime" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.roblox.com/roblox.xsd" version="4"> <Item class="ReflectionMetadataClasses"> <Properties></Properties> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Actor</string> <string name="ClassCategory">Scripting</string> <string name="summary">A logical grouping of datamodel nodes which can enable scripts to run in parallel.</string> <string name="ExplorerOrder">10</string> <string name="ExplorerImageIndex">113</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">BindableFunction</string> <string name="ClassCategory">Scripting</string> <string name="ExplorerOrder">40</string> <string name="ExplorerImageIndex">66</string> </Properties> <Item class="ReflectionMetadataYieldFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Invoke</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataCallbacks"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">OnInvoke</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">BindableEvent</string> <string name="ClassCategory">Scripting</string> <string name="ExplorerOrder">50</string> <string name="ExplorerImageIndex">67</string> </Properties> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Fire</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataEvents"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Event</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">TouchTransmitter</string> <bool name="Browsable">false</bool> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">37</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ForceField</string> <string name="ClassCategory">Avatar</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">37</string> <string name="PreferredParent">Model</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">PluginManager</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">PluginManagerInterface</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">TeleportService</string> </Properties> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CustomizedTeleportUI</string> <bool name="Deprecated">true</bool> </Properties> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Plugin</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">86</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">PluginMouse</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Glue</string> <bool name="Deprecated">true</bool> <string name="PreferredParent">BasePart</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">CollectionService</string> </Properties> <Item class="ReflectionMetadataEvents"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ItemAdded</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ItemRemoved</string> <bool name="Deprecated">true</bool> </Properties> </Item> </Item> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetCollection</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetTagged</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AddTag</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">RemoveTag</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetTags</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">HasTag</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetInstanceAddedSignal</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetInstanceRemovedSignal</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">JointsService</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">RunService</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">BadgeService</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">LogService</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AssetService</string> </Properties> <Item class="ReflectionMetadataYieldFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">RevertAsset</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SetPlacePermissions</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetPlacePermissions</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetAssetVersions</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetCreatorAssetID</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">HttpService</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">HttpEnabled</string> <bool name="Browsable">true</bool> </Properties> </Item> </Item> <Item class="ReflectionMetadataYieldFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetAsync</string> <string name="ScriptContext">Server</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PostAsync</string> <string name="ScriptContext">Server</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AnalyticsService</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ApiKey</string> <bool name="Browsable">true</bool> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">InsertService</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AllowClientInsertModels</string> <bool name="Browsable">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AllowInsertFreeModels</string> <bool name="Browsable">false</bool> <bool name="Deprecated">true</bool> <string name="ExplorerOrder">-1</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetCollection</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Insert</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ApproveAssetId</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ApproveAssetVersionId</string> <bool name="Deprecated">true</bool> </Properties> </Item> </Item> <Item class="ReflectionMetadataYieldFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetBaseSets</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetUserSets</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetBaseCategories</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetUserCategories</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LoadAsset</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LoadAssetVersion</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Hat</string> <string name="ClassCategory">Avatar</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">45</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Accessory</string> <string name="ClassCategory">Avatar</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">32</string> <string name="PreferredParent">Model</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">LocalBackpack</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">LocalBackpackItem</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">MotorFeature</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Attachment</string> <string name="ClassCategory">Constraints</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">81</string> <string name="PreferredParent">PVInstance</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Rotation</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">WorldRotation</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Orientation</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">WorldOrientation</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Axis</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SecondaryAxis</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">WorldAxis</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SecondaryWorldAxis</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">WorldCFrame</string> <string name="PropertyOrder">1000</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">WrapTarget</string> <string name="ClassCategory">Effects</string> <string name="ExplorerOrder">32</string> <string name="ExplorerImageIndex">127</string> <string name="PreferredParent">BasePart</string> <string name="PreferredParents">BasePart</string> <string name="PreferredParents">Model</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">WrapLayer</string> <string name="ClassCategory">Effects</string> <string name="ExplorerOrder">32</string> <string name="ExplorerImageIndex">126</string> <string name="PreferredParent">BasePart</string> <string name="PreferredParents">BasePart</string> <string name="PreferredParents">Model</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Bone</string> <string name="ClassCategory">Animations</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">114</string> <string name="PreferredParent">PVInstance</string> <string name="PreferredParents">PVInstance</string> <string name="PreferredParents">Bone</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Constraint</string> <string name="ClassCategory">Physics</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">86</string> <string name="PreferredParent">BasePart</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Enabled</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Color</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Visible</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Active</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">BallSocketConstraint</string> <string name="ClassCategory">Constraints</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">86</string> <string name="PreferredParent">BasePart</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LimitsEnabled</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">UpperAngle</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Restitution</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TwistLimitsEnabled</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TwistUpperAngle</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TwistLowerAngle</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Radius</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">RopeConstraint</string> <string name="ClassCategory">Constraints</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">89</string> <string name="PreferredParent">BasePart</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Length</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Restitution</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CurrentDistance</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Thickness</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">RodConstraint</string> <string name="ClassCategory">Constraints</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">90</string> <string name="PreferredParent">BasePart</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Length</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CurrentDistance</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Thickness</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LimitAngle0</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LimitAngle1</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LimitsEnabled</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">SpringConstraint</string> <string name="ClassCategory">Constraints</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">91</string> <string name="PreferredParent">BasePart</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LimitsEnabled</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Stiffness</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Damping</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">FreeLength</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MaxForce</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MaxLength</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MinLength</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Radius</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Thickness</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Coils</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CurrentLength</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">TorsionSpringConstraint</string> <string name="ClassCategory">Constraints</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">125</string> <string name="PreferredParent">BasePart</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LimitsEnabled</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Stiffness</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Damping</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MaxTorque</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MaxAngle</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Restitution</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Radius</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Coils</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CurrentAngle</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">WeldConstraint</string> <string name="ClassCategory">Constraints</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">94</string> <string name="PreferredParent">PVInstance</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Active</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">NoCollisionConstraint</string> <string name="ClassCategory">Constraints</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">105</string> <string name="PreferredParent">PVInstance</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Enabled</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">RigidConstraint</string> <string name="ClassCategory">Constraints</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">135</string> <string name="PreferredParent">PVInstance</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">DestructionEnabled</string> <string name="PropertyOrder">0</string> <string name="FFlag">SimSolverEnableDestruction</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Broken</string> <string name="PropertyOrder">1</string> <string name="FFlag">SimSolverEnableDestruction</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">DestructionForce</string> <string name="PropertyOrder">2</string> <string name="FFlag">SimSolverEnableDestruction</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">DestructionTorque</string> <string name="PropertyOrder">3</string> <string name="FFlag">SimSolverEnableDestruction</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">HingeConstraint</string> <string name="ClassCategory">Constraints</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">87</string> <string name="PreferredParent">BasePart</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ActuatorType</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LimitsEnabled</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">UpperAngle</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LowerAngle</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AngularRestitution</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AngularVelocity</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MotorMaxTorque</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MotorMaxAcceleration</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AngularSpeed</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ServoMaxTorque</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TargetAngle</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CurrentAngle</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Radius</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">UniversalConstraint</string> <string name="ClassCategory">Constraints</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">123</string> <string name="PreferredParent">BasePart</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LimitsEnabled</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MaxAngle</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Restitution</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CurrentAngle</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Radius</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">SlidingBallConstraint</string> <string name="ClassCategory">Constraints</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">88</string> <string name="PreferredParent">BasePart</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ActuatorType</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LimitsEnabled</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LowerLimit</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">UpperLimit</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Restitution</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Velocity</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MotorMaxForce</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MotorMaxAcceleration</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Speed</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ServoMaxForce</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TargetPosition</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CurrentPosition</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Size</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">PrismaticConstraint</string> <string name="ClassCategory">Constraints</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">88</string> <string name="PreferredParent">BasePart</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">CylindricalConstraint</string> <string name="ClassCategory">Constraints</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">95</string> <string name="PreferredParent">BasePart</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">InclinationAngle</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AngularActuatorType</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AngularLimitsEnabled</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">UpperAngle</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LowerAngle</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AngularRestitution</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AngularVelocity</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MotorMaxTorque</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MotorMaxAngularAcceleration</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AngularSpeed</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ServoMaxTorque</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TargetAngle</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CurrentAngle</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">WorldRotationAxis</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">RotationAxisVisible</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AlignOrientation</string> <string name="ClassCategory">Constraints</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">100</string> <string name="PreferredParent">BasePart</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AlignPosition</string> <string name="ClassCategory">Constraints</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">99</string> <string name="PreferredParent">BasePart</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ForceLimitMode</string> <string name="summary">Selects the mode for force limit. Options Uniform or Per-component</string> <bool name="FFlag">SimAlignPositionVectorForceLimit</bool> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AnimationConstraint</string> <string name="ClassCategory">Constraints</string> <string name="ExplorerOrder">30</string> <string name="PreferredParent">BasePart</string> <bool name="FFlag">SimAnimationConstraint</bool> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">VectorForce</string> <string name="ClassCategory">Constraints</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">102</string> <string name="PreferredParent">Model</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">LineForce</string> <string name="ClassCategory">Constraints</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">101</string> <string name="PreferredParent">BasePart</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Torque</string> <string name="ClassCategory">Constraints</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">103</string> <string name="PreferredParent">BasePart</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AngularVelocity</string> <string name="ClassCategory">Constraints</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">103</string> <string name="PreferredParent">BasePart</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">PlaneConstraint</string> <string name="ClassCategory">Constraints</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">134</string> <string name="PreferredParent">BasePart</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">PluginCapabilities</string> <string name="ExplorerOrder">30</string> <string name="PrefferedParent">Plugin</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Plane</string> <string name="ClassCategory">Constraints</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">134</string> <string name="PreferredParent">BasePart</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">LinearVelocity</string> <string name="ClassCategory">Constraints</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">132</string> <string name="PreferredParent">BasePart</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Mode</string> <string name="summary">Selects the mode of the velocity constraint. Options Line, Plane, Vector</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LineDirection</string> <string name="summary">Direction of the line used to contraint the velocity to a line.</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LineVelocity</string> <string name="summary">The value of the constraint velocity along a line.</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PlanePrimaryTangent</string> <string name="summary">The primary axis in the plane.</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PlaneSecondaryTangent</string> <string name="summary">The secondary axis in the plane.</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PlaneVelocity</string> <string name="summary">Velocity coefficients in the constraint plane.</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Velocity</string> <string name="summary">Constraint velocity for the Vector mode.</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MaxForce</string> <string name="summary">Maximum force magnitude that is applied to satisfy the constraint. </string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">RelativeTo</string> <string name="summary">Selects whether the velocity orientation is relative to attachment0, attachment1 or the world. </string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Mouse</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Hit</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Icon</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Origin</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Origin</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Target</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TargetFilter</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TargetSurface</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">UnitRay</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ViewSizeX</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ViewSizeY</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">X</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Y</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataEvents"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Button1Down</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Button1Up</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Button2Down</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Button2Up</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Idle</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">KeyDown</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">KeyUp</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Move</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">WheelBackward</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">WheelForward</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ProfilingItem</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ChangeHistoryService</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">RotateP</string> <string name="PreferredParent">BasePart</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">RotateV</string> <string name="PreferredParent">BasePart</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ScriptContext</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Selection</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">VelocityMotor</string> <string name="PreferredParent">BasePart</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Weld</string> <string name="ExplorerOrder">200</string> <string name="ExplorerImageIndex">34</string> <string name="PreferredParent">BasePart</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">TaskScheduler</string> <bool name="Insertable">false</bool> </Properties> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SetThreadShare</string> <bool name="Deprecated">true</bool> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">StatsItem</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Snap</string> <string name="ExplorerOrder">200</string> <string name="ExplorerImageIndex">34</string> <string name="PreferredParent">BasePart</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">FileMesh</string> <string name="PreferredParent">BasePart</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">DynamicMesh</string> <string name="PreferredParent">BasePart</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ClickDetector</string> <string name="ClassCategory">3D Interfaces</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">41</string> <string name="PreferredParent">BasePart</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MaxActivationDistance</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataEvents"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MouseClick</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MouseHoverEnter</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MouseHoverLeave</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">DragDetector</string> <string name="ClassCategory">3D Interfaces</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">41</string> <string name="PreferredParent">BasePart</string> <bool name="FFlag">DragDetectors1</bool> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ReferenceInstance</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ProximityPrompt</string> <string name="ClassCategory">3D Interfaces</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">124</string> <string name="PreferredParent">BasePart</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MaxActivationDistance</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ActionText</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ObjectText</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">KeyboardKeyCode</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GamepadKeyCode</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Enabled</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">HoldDuration</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Exclusivity</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Style</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">UIOffset</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">RequiresLineOfSight</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">InputHoldBegin</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">InputHoldEnd</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataEvents"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Triggered</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TriggeEnded</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PromptShown</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PromptHidden</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PromptButtonHoldBegan</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PromptButtonHoldEnded</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ProximityPromptService</string> <bool name="Browsable">false</bool> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Enabled</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MaxPromptsVisible</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataEvents"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Triggered</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TriggeEnded</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PromptShown</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PromptHidden</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PromptButtonHoldBegan</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PromptButtonHoldEnded</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Clothing</string> <string name="ExplorerOrder">20</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Smoke</string> <string name="ClassCategory">Effects</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">59</string> <string name="PreferredParent">BasePart</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TimeScale</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Trail</string> <string name="ClassCategory">Effects</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">93</string> <string name="PreferredParent">Model</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LightEmission</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LightInfluence</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Brightness</string> <double name="UIMinimum">0</double> <double name="UIMaximum">10</double> <double name="UINumTicks">2000</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ZOffset</string> <double name="UIMinimum">-1</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Lifetime</string> <double name="UIMinimum">0</double> <double name="UIMaximum">20</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TextureLength</string> <double name="UIMinimum">0</double> <double name="UIMaximum">5</double> <double name="UINumTicks">40</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MinLength</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AdGui</string> <string name="ClassCategory">Ads</string> <string name="ExplorerOrder">200</string> <string name="ExplorerImageIndex">145</string> <string name="PreferredParent">GuiBase2d</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AdPortal</string> <string name="ClassCategory">Ads</string> <string name="ExplorerOrder">200</string> <string name="ExplorerImageIndex">146</string> <string name="PreferredParent">Part</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Beam</string> <string name="ClassCategory">Effects</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">96</string> <string name="PreferredParent">BasePart</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LightEmission</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LightInfluence</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TextureSpeed</string> <double name="UIMinimum">-1</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TextureLength</string> <double name="UIMinimum">0</double> <double name="UIMaximum">5</double> <double name="UINumTicks">40</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CurveSize0</string> <double name="UIMinimum">-10</double> <double name="UIMaximum">10</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CurveSize1</string> <double name="UIMinimum">-10</double> <double name="UIMaximum">10</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ZOffset</string> <double name="UIMinimum">-1</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Brightness</string> <double name="UIMinimum">0</double> <double name="UIMaximum">10</double> <double name="UINumTicks">2000</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">SurfaceAppearance</string> <string name="ClassCategory">3D Interfaces</string> <string name="ExplorerOrder">40</string> <string name="ExplorerImageIndex">10</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AlphaMode</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ColorMap</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MetalnessMap</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">NormalMap</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">RoughnessMap</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TexturePack</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ParticleEmitter</string> <string name="ClassCategory">Effects</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">80</string> <string name="PreferredParent">BasePart</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LightEmission</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LightInfluence</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Size</string> <double name="UIMinimum">0</double> <double name="UIMaximum">10</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Transparency</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Brightness</string> <double name="UIMinimum">0</double> <double name="UIMaximum">10</double> <double name="UINumTicks">2000</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Drag</string> <double name="UIMinimum">0</double> <double name="UIMaximum">5</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TimeScale</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">VelocityInheritance</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Rate</string> <double name="UIMinimum">0</double> <double name="UIMaximum">100</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Squash</string> <double name="UIMinimum">-3</double> <double name="UIMaximum">3</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ShapePartial</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Rotation</string> <double name="UIMinimum">-180</double> <double name="UIMaximum">180</double> <double name="UINumTicks">72</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">RotSpeed</string> <double name="UIMinimum">-360</double> <double name="UIMaximum">360</double> <double name="UINumTicks">72</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Speed</string> <double name="UIMinimum">0</double> <double name="UIMaximum">100</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Lifetime</string> <double name="UIMinimum">0</double> <double name="UIMaximum">5</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">FlipbookFramerate</string> <double name="UIMinimum">0</double> <double name="UIMaximum">30</double> <double name="UINumTicks">100</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Sparkles</string> <string name="ClassCategory">Effects</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">42</string> <string name="PreferredParent">BasePart</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TimeScale</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Explosion</string> <string name="ClassCategory">Effects</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">36</string> <string name="PreferredParent">BasePart</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">BlastPressure</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">BlastRadius</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Position</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ExplosionType</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TimeScale</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Fire</string> <string name="ClassCategory">Effects</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">61</string> <string name="PreferredParent">BasePart</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Color</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Heat</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SecondaryColor</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Size</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TimeScale</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Seat</string> <string name="ClassCategory">Interaction</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">35</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Platform</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">35</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">SkateboardPlatform</string> <bool name="Deprecated">true</bool> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">35</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">VehicleSeat</string> <string name="ClassCategory">Interaction</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">35</string> <string name="PreferredParent">Model</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Tool</string> <string name="ClassCategory">Interaction</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">17</string> <string name="PreferredParent">StarterPack</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Flag</string> <bool name="Deprecated">true</bool> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">38</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CanBeDropped</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TeamColor</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">FlagStand</string> <bool name="Deprecated">true</bool> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">39</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">BackpackItem</string> <string name="ExplorerOrder">20</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Decal</string> <string name="ClassCategory">3D Interfaces</string> <string name="ExplorerOrder">40</string> <string name="ExplorerImageIndex">7</string> <string name="PreferredParent">BasePart</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Face</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Shiny</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Specular</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Transparency</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">JointInstance</string> <string name="ExplorerOrder">200</string> <string name="ExplorerImageIndex">34</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Active</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Message</string> <string name="ExplorerOrder">110</string> <string name="ExplorerImageIndex">33</string> <bool name="Deprecated">true</bool> <string name="PreferredParent">StarterGui</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Hint</string> <bool name="Deprecated">true</bool> <string name="ExplorerOrder">110</string> <string name="ExplorerImageIndex">33</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">IntValue</string> <string name="ClassCategory">Values</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">4</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">RayValue</string> <string name="ClassCategory">Values</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">4</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">IntConstrainedValue</string> <bool name="Deprecated">true</bool> <string name="ClassCategory">Values</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">4</string> </Properties> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MaxValue</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MinValue</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">DoubleConstrainedValue</string> <bool name="Deprecated">true</bool> <string name="ClassCategory">Values</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">4</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MaxValue</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MinValue</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">BoolValue</string> <string name="ClassCategory">Values</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">4</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">CustomEvent</string> <string name="ExplorerOrder">30</string> <bool name="Deprecated">true</bool> <string name="ExplorerImageIndex">4</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">CustomEventReceiver</string> <string name="ExplorerOrder">30</string> <bool name="Deprecated">true</bool> <string name="ExplorerImageIndex">4</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">FloorWire</string> <bool name="Deprecated">true</bool> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">4</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CycleOffset</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">From</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">StudsBetweenTextures</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Texture</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TextureSize</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">To</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Velocity</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">WireRadius</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">NumberValue</string> <string name="ClassCategory">Values</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">4</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">StringValue</string> <string name="ClassCategory">Values</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">4</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Vector3Value</string> <string name="ClassCategory">Values</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">4</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">CFrameValue</string> <string name="ClassCategory">Values</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">4</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Color3Value</string> <string name="ClassCategory">Values</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">4</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">BrickColorValue</string> <string name="ClassCategory">Values</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">4</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ValueBase</string> <string name="ClassCategory">Values</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">4</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ObjectValue</string> <string name="ClassCategory">Values</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">4</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">SpecialMesh</string> <string name="ClassCategory">Meshes</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">8</string> <string name="PreferredParent">BasePart</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">BlockMesh</string> <string name="ClassCategory">Meshes</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">8</string> <string name="PreferredParent">BasePart</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">CylinderMesh</string> <string name="ClassCategory">Meshes</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">8</string> <string name="PreferredParent">BasePart</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">BevelMesh</string> <string name="ClassCategory">Meshes</string> <bool name="Browsable">false</bool> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">DataModelMesh</string> <bool name="Browsable">false</bool> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Texture</string> <string name="ClassCategory">3D Interfaces</string> <string name="ExplorerOrder">40</string> <string name="ExplorerImageIndex">10</string> <string name="PreferredParent">BasePart</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Sound</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">10</string> <string name="ExplorerImageIndex">11</string> </Properties> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">play</string> <bool name="Deprecated">true</bool> </Properties> </Item> </Item> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PlayOnRemove</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Volume</string> <double name="UIMinimum">0</double> <double name="UIMaximum">10</double> <double name="UINumTicks">1000</double> <string name="SliderScaling">Square</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PlaybackSpeed</string> <double name="UIMinimum">0</double> <double name="UIMaximum">20</double> <double name="UINumTicks">1000</double> <string name="SliderScaling">Square</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ChannelCount</string> <bool name="FFlag">EnableAudioChannelCountProperty</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PlaybackRegionsEnabled</string> <bool name="FFlag">SoundLoopPointApi3</bool> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Speaker</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">10</string> <string name="ExplorerImageIndex">11</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ChannelCount</string> <bool name="FFlag">EnableAudioChannelCountProperty</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Volume</string> <double name="UIMinimum">0</double> <double name="UIMaximum">10</double> <double name="UINumTicks">1000</double> <string name="SliderScaling">Square</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">VoiceSource</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">10</string> <string name="ExplorerImageIndex">11</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">EchoSoundEffect</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">84</string> <string name="PreferredParent">Sound</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Delay</string> <double name="UIMinimum">0.1</double> <double name="UIMaximum">5</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Feedback</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">DryLevel</string> <double name="UIMinimum">-80</double> <double name="UIMaximum">10</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">WetLevel</string> <double name="UIMinimum">-80</double> <double name="UIMaximum">100</double> <double name="UINumTicks">100</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">FlangeSoundEffect</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">84</string> <string name="PreferredParent">Sound</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Mix</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Depth</string> <double name="UIMinimum">0.01</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Rate</string> <double name="UIMinimum">0</double> <double name="UIMaximum">20</double> <double name="UINumTicks">100</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">DistortionSoundEffect</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">84</string> <string name="PreferredParent">Sound</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Level</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">PitchShiftSoundEffect</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">84</string> <string name="PreferredParent">Sound</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Octave</string> <double name="UIMinimum">0.5</double> <double name="UIMaximum">2</double> <double name="UINumTicks">100</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ChannelSelectorSoundEffect</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">84</string> <string name="PreferredParent">Sound</string> <string name="FFlag">EnableAudioChannelSelector</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ChorusSoundEffect</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">84</string> <string name="PreferredParent">Sound</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Mix</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Rate</string> <double name="UIMinimum">0</double> <double name="UIMaximum">20</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Depth</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">TremoloSoundEffect</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">84</string> <string name="PreferredParent">Sound</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Frequency</string> <double name="UIMinimum">0.1</double> <double name="UIMaximum">20</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Depth</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Duty</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ReverbSoundEffect</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">84</string> <string name="PreferredParent">Sound</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">DecayTime</string> <double name="UIMinimum">0.1</double> <double name="UIMaximum">20</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Diffusion</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Density</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">DryLevel</string> <double name="UIMinimum">-80</double> <double name="UIMaximum">20</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">WetLevel</string> <double name="UIMinimum">-80</double> <double name="UIMaximum">20</double> <double name="UINumTicks">100</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">EqualizerSoundEffect</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">84</string> <string name="PreferredParent">Sound</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LowGain</string> <double name="UIMinimum">-80</double> <double name="UIMaximum">10</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MidGain</string> <double name="UIMinimum">-80</double> <double name="UIMaximum">10</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">HighGain</string> <double name="UIMinimum">-80</double> <double name="UIMaximum">10</double> <double name="UINumTicks">100</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AudioEqualizer</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">84</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LowGain</string> <double name="UIMinimum">-80</double> <double name="UIMaximum">10</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MidGain</string> <double name="UIMinimum">-80</double> <double name="UIMaximum">10</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">HighGain</string> <double name="UIMinimum">-80</double> <double name="UIMaximum">10</double> <double name="UINumTicks">100</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AudioAnalyzer</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">84</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">RmsLevel</string> <double name="UIMinimum">0</double> <double name="UIMaximum">10000</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PeakLevel</string> <double name="UIMinimum">0</double> <double name="UIMaximum">10000</double> <double name="UINumTicks">100</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AudioChorus</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">84</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Depth</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Mix</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Rate</string> <double name="UIMinimum">0</double> <double name="UIMaximum">20</double> <double name="UINumTicks">100</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AudioCompressor</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">84</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Attack</string> <double name="UIMinimum">0</double> <double name="UIMaximum">0.5</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MakeupGain</string> <double name="UIMinimum">0</double> <double name="UIMaximum">-30</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Ratio</string> <double name="UIMinimum">1</double> <double name="UIMaximum">50</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Release</string> <double name="UIMinimum">5</double> <double name="UIMaximum">0.01</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Threshold</string> <double name="UIMinimum">-60</double> <double name="UIMaximum">0</double> <double name="UINumTicks">100</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AudioDeviceInput</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">11</string> </Properties> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Volume</string> <double name="UIMinimum">0</double> <double name="UIMaximum">3</double> <double name="UINumTicks">100</double> </Properties> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AudioDeviceOutput</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">11</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AudioDistortion</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">84</string> </Properties> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Level</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AudioFilter</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">84</string> </Properties> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Frequency</string> <double name="UIMinimum">20</double> <double name="UIMaximum">22000</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Gain</string> <double name="UIMinimum">-30</double> <double name="UIMaximum">30</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Q</string> <double name="UIMinimum">0.1</double> <double name="UIMaximum">10</double> <double name="UINumTicks">100</double> </Properties> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AudioFlanger</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">84</string> </Properties> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Depth</string> <double name="UIMinimum">0.01</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Mix</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Rate</string> <double name="UIMinimum">0</double> <double name="UIMaximum">20</double> <double name="UINumTicks">100</double> </Properties> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AudioLimiter</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">84</string> </Properties> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MaxLevel</string> <double name="UIMinimum">0</double> <double name="UIMaximum">-12</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Release</string> <double name="UIMinimum">0.001</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AudioPitchShifter</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">84</string> </Properties> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Pitch</string> <double name="UIMinimum">0.5</double> <double name="UIMaximum">2</double> <double name="UINumTicks">100</double> </Properties> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AudioPlayer</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">11</string> </Properties> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PlaybackSpeed</string> <double name="UIMinimum">0</double> <double name="UIMaximum">20</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Volume</string> <double name="UIMinimum">0</double> <double name="UIMaximum">10</double> <double name="UINumTicks">100</double> </Properties> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Wire</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">17</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AudioChannelMixer</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">84</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AudioChannelSplitter</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">84</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AudioGate</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">84</string> </Properties> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Attack</string> <double name="UIMinimum">0.001</double> <double name="UIMaximum">5</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Release</string> <double name="UIMinimum">0.001</double> <double name="UIMaximum">5</double> <double name="UINumTicks">100</double> </Properties> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AudioTextToSpeech</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">84</string> </Properties> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Pitch</string> <double name="UIMinimum">-12</double> <double name="UIMaximum">12</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Speed</string> <double name="UIMinimum">0.5</double> <double name="UIMaximum">2</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PlaybackSpeed</string> <double name="UIMinimum">0</double> <double name="UIMaximum">20</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Volume</string> <double name="UIMinimum">0</double> <double name="UIMaximum">3</double> <double name="UINumTicks">100</double> </Properties> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AudioTremolo</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">84</string> </Properties> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Depth</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Duty</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Frequency</string> <double name="UIMinimum">0</double> <double name="UIMaximum">20</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Shape</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Skew</string> <double name="UIMinimum">-1</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Square</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AudioReverb</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">84</string> </Properties> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">DecayRatio</string> <double name="UIMinimum">0.1</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">DecayTime</string> <double name="UIMinimum">0.1</double> <double name="UIMaximum">20</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Density</string> <double name="UIMinimum">0.1</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Diffusion</string> <double name="UIMinimum">0.1</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">DryLevel</string> <double name="UIMinimum">-80</double> <double name="UIMaximum">20</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">EarlyDelayTime</string> <double name="UIMinimum">0</double> <double name="UIMaximum">0.1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">HighCutFrequency</string> <double name="UIMinimum">20</double> <double name="UIMaximum">20000</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">HighCutFrequency</string> <double name="UIMinimum">20</double> <double name="UIMaximum">20000</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LateDelayTime</string> <double name="UIMinimum">0</double> <double name="UIMaximum">0.1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LowShelfFrequency</string> <double name="UIMinimum">20</double> <double name="UIMaximum">20000</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LowShelfGain</string> <double name="UIMinimum">-36</double> <double name="UIMaximum">12</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ReferenceFrequency</string> <double name="UIMinimum">20</double> <double name="UIMaximum">20000</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">WetLevel</string> <double name="UIMinimum">-80</double> <double name="UIMaximum">20</double> <double name="UINumTicks">100</double> </Properties> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AudioListener</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">11</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AudioEcho</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">84</string> </Properties> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">DelayTime</string> <double name="UIMinimum">0.001</double> <double name="UIMaximum">5</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">DryLevel</string> <double name="UIMinimum">-80</double> <double name="UIMaximum">10</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Feedback</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">RampTime</string> <double name="UIMinimum">0</double> <double name="UIMaximum">60000</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">WetLevel</string> <double name="UIMinimum">-80</double> <double name="UIMaximum">10</double> <double name="UINumTicks">100</double> </Properties> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AudioEmitter</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">11</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AudioFader</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">84</string> </Properties> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Volume</string> <double name="UIMinimum">0</double> <double name="UIMaximum">3</double> <double name="UINumTicks">100</double> </Properties> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">CompressorSoundEffect</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">84</string> <string name="PreferredParent">Sound</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Threshold</string> <double name="UIMinimum">-80</double> <double name="UIMaximum">0</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Attack</string> <double name="UIMinimum">0.001</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Release</string> <double name="UIMinimum">0.001</double> <double name="UIMaximum">5</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Ratio</string> <double name="UIMinimum">1</double> <double name="UIMaximum">50</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GainMakeup</string> <double name="UIMinimum">0</double> <double name="UIMaximum">30</double> <double name="UINumTicks">100</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">SoundGroup</string> <string name="ClassCategory">Sounds</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">85</string> <string name="PreferredParent">SoundService</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Volume</string> <double name="UIMinimum">0</double> <double name="UIMaximum">10</double> <double name="UINumTicks">1000</double> <string name="SliderScaling">Square</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">StockSound</string> <string name="Browsable">false</string> <string name="ExplorerOrder">-1</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">SoundService</string> <string name="ExplorerOrder">500</string> <string name="ExplorerImageIndex">31</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AmbientReverb</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">RespectFilteringEnabled</string> <bool name="FFlag">!DisableSoundServiceRespectFilteringEnabled</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">DopplerScale</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">DistanceFactor</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">RolloffScale</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">VolumetricAudio</string> <bool name="FFlag">AudioToggleVolumetricPanning</bool> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Backpack</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">20</string> <string name="Insertable">false</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">StarterPack</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">20</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">StarterPlayer</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">79</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">DeathStyle</string> <string name="FFlag">AvatarJointUpgrade</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AvatarJointUpgrade</string> <string name="FFlag">AvatarJointUpgrade</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">HumanoidStateMachineMode</string> <string name="FFlag">EnableStateMachineModes2</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">StarterGear</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">20</string> <string name="Insertable">false</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">CoreGui</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">46</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">CorePackages</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">20</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">RobloxPluginGuiService</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">46</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">PluginGuiService</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">46</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">PluginDebugService</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">46</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Studio</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Show Plugin GUI Service in Explorer</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Main Volume</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">250</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">UIGridStyleLayout</string> <string name="ClassCategory">GUI</string> <string name="Browsable">false</string> <string name="PreferredParent">GuiBase2d</string> </Properties> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SetCustomSortFunction</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ApplyLayout</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SortOrder</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">FillDirection</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">HorizontalAlignment</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">VerticalAlignment</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">UIListLayout</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">26</string> <string name="ClassCategory">GUI</string> <string name="PreferredParent">GuiBase2d</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Padding</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">UIGridLayout</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">26</string> <string name="ClassCategory">GUI</string> <string name="PreferredParent">GuiBase2d</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CellSize</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CellPadding</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">FillDirectionMaxCells</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AbsoluteSize</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">StartCorner</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">UIPageLayout</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">26</string> <string name="ClassCategory">GUI</string> <string name="PreferredParent">GuiBase2d</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CurrentPage</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Circular</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Padding</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Animated</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">EasingStyle</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">EasingDirection</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TweenTime</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Next</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Previous</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">JumpTo</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">JumpToIndex</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataEvents"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PageEnter</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PageLeave</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Stopped</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">UITableLayout</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">26</string> <string name="ClassCategory">GUI</string> <string name="PreferredParent">GuiBase2d</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Padding</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">FillEmptySpaceRows</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">FillEmptySpaceColumns</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MajorAxis</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">UISizeConstraint</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">26</string> <string name="ClassCategory">GUI</string> <string name="PreferredParent">GuiBase2d</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MinSize</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MaxSize</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">UITextSizeConstraint</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">26</string> <string name="ClassCategory">GUI</string> <string name="PreferredParent">GuiBase2d</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MinTextSize</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MaxTextSize</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">UIAspectRatioConstraint</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">26</string> <string name="ClassCategory">GUI</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AspectRatio</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AspectType</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">DominantAxis</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">UIScale</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">26</string> <string name="ClassCategory">GUI</string> <string name="PreferredParent">GuiBase2d</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Scale</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">UIPadding</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">26</string> <string name="ClassCategory">GUI</string> <string name="PreferredParent">GuiBase2d</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PaddingLeft</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PaddingRight</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PaddingTop</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PaddingBottom</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">UIGradient</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">26</string> <string name="ClassCategory">GUI</string> <string name="PreferredParent">GuiBase2d</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Color</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Transparency</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Rotation</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Offset</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">UICorner</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">26</string> <string name="ClassCategory">GUI</string> <string name="PreferredParent">GuiBase2d</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CornerRadius</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">UIStroke</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">26</string> <string name="ClassCategory">GUI</string> <string name="PreferredParent">GuiBase2d</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Color</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Transparency</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Thickness</string> <double name="UIMinimum">0</double> <double name="UIMaximum">25</double> <double name="UINumTicks">250</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Enabled</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LineJoinMode</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ApplyStrokeMode</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">TweenBase</string> <string name="Browsable">false</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PlaybackState</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Play</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Pause</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Cancel</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataEvents"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Completed</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Tween</string> </Properties> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Instance</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TweenInfo</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">TweenService</string> </Properties> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataEvents"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Create</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetValue</string> </Properties> </Item> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">StarterGui</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">46</string> </Properties> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SetCoreGuiEnabled</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetCoreGuiEnabled</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">GuiService</string> </Properties> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetGuiInset</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ContextActionService</string> </Properties> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">BindAction</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SetTitle</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SetDescription</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SetImage</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SetPosition</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">UnbindAction</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">UnbindAllActions</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetBoundActionInfo</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetAllBoundActionInfo</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataYieldFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetButton</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">PointsService</string> <bool name="Deprecated">true</bool> </Properties> <Item class="ReflectionMetadataEvents"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PointsAwarded</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataYieldFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AwardPoints</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetPointBalance</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetGamePointBalance</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetAwardablePoints</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Chat</string> <string name="ExplorerOrder">510</string> <string name="ExplorerImageIndex">33</string> <token name="ServiceVisibility">2</token> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ChatService</string> <string name="ExplorerOrder">510</string> <string name="ExplorerImageIndex">33</string> </Properties> <Item class="ReflectionMetadataProperties"></Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">TextChatService</string> <string name="ClassCategory">Text Chat</string> <string name="ExplorerOrder">511</string> <string name="ExplorerImageIndex">143</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ChatWindowConfiguration</string> <string name="ClassCategory">Text Chat</string> <string name="ExplorerOrder">10</string> <string name="ExplorerImageIndex">141</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">BackgroundTransparency</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TextSize</string> <double name="UIMinimum">1</double> <double name="UIMaximum">100</double> <double name="UINumTicks">99</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TextStrokeTransparency</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">HeightScale</string> <double name="UIMinimum">0.5</double> <double name="UIMaximum">2</double> <double name="UINumTicks">1000</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">WidthScale</string> <double name="UIMinimum">0.5</double> <double name="UIMaximum">2</double> <double name="UINumTicks">1000</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ChatInputBarConfiguration</string> <string name="ClassCategory">Text Chat</string> <string name="ExplorerOrder">11</string> <string name="ExplorerImageIndex">142</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">BackgroundTransparency</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TextSize</string> <double name="UIMinimum">1</double> <double name="UIMaximum">100</double> <double name="UINumTicks">99</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TextStrokeTransparency</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">BubbleChatConfiguration</string> <string name="ClassCategory">Text Chat</string> <string name="ExplorerOrder">12</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">BackgroundTransparency</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TextSize</string> <double name="UIMinimum">1</double> <double name="UIMaximum">100</double> <double name="UINumTicks">99</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">BubblesSpacing</string> <double name="UIMinimum">0</double> <double name="UIMaximum">20</double> <double name="UINumTicks">200</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">VerticalStudsOffset</string> <double name="UIMinimum">0</double> <double name="UIMaximum">10</double> <double name="UINumTicks">200</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">TextChannel</string> <string name="ClassCategory">Text Chat</string> <string name="ExplorerOrder">13</string> <string name="ExplorerImageIndex">140</string> <string name="PreferredParent">TextChatService</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">TextSource</string> <string name="ClassCategory">Text Chat</string> <string name="ExplorerOrder">10</string> <string name="ExplorerImageIndex">139</string> <string name="PreferredParent">TextChannel</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">TextChatCommand</string> <string name="ClassCategory">Text Chat</string> <string name="ExplorerOrder">14</string> <string name="ExplorerImageIndex">138</string> <string name="PreferredParent">TextChatService</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">VoiceChatInternal</string> <string name="Insertable">false</string> <string name="Browsable">false</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">VoiceChatService</string> <string name="ExplorerOrder">520</string> <string name="ExplorerImageIndex">136</string> <token name="ServiceVisibility">1</token> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">EnableDefaultVoice</string> <string name="FFlag">VoiceServiceEnableDefaultVoice</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">LocalizationTable</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">97</string> <string name="ClassCategory">Localization</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">LocalizationService</string> <string name="ExplorerOrder">530</string> <string name="ExplorerImageIndex">92</string> <token name="ServiceVisibility">2</token> </Properties> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PreferredLanguage</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetLocaleId</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">MarketplaceService</string> <string name="ExplorerImageIndex">46</string> </Properties> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PromptPurchase</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataYieldFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetProductInfo</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PlayerOwnsAsset</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataCallbacks"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ProcessReceipt</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataEvents"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PromptPurchaseFinished</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">UserInputService</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TouchEnabled</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">KeyboardEnabled</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MouseEnabled</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AccelerometerEnabled</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GyroscopeEnabled</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataEvents"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TouchTap</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TouchPinch</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TouchSwipe</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TouchLongPress</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TouchRotate</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TouchPan</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TouchStarted</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TouchMoved</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TouchEnded</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">InputBegan</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">InputChanged</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">InputEnded</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TextBoxFocused</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TextBoxFocusReleased</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">DeviceAccelerationChanged</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">DeviceGravityChanged</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">DeviceRotationChanged</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetDeviceAcceleration</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetDeviceGravity</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetDeviceRotation</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Atmosphere</string> <string name="ClassCategory">Environment</string> <string name="ExplorerOrder">5</string> <string name="ExplorerImageIndex">28</string> <string name="PreferredParent">Lighting</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Density</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">1000</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Offset</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">1000</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Height</string> <double name="UIMinimum">0</double> <double name="UIMaximum">3</double> <double name="UINumTicks">1000</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Color</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Decay</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Haze</string> <double name="UIMinimum">0</double> <double name="UIMaximum">10</double> <double name="UINumTicks">1000</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Glare</string> <double name="UIMinimum">0</double> <double name="UIMaximum">10</double> <double name="UINumTicks">1000</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Clouds</string> <string name="ClassCategory">Environment</string> <string name="ExplorerOrder">5</string> <string name="ExplorerImageIndex">28</string> <string name="PreferredParent">Workspace</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Enabled</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Color</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Cover</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">1000</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Density</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">1000</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">MaterialVariant</string> <string name="ClassCategory">3D Interfaces</string> <string name="ExplorerOrder">41</string> <string name="ExplorerImageIndex">130</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">BaseMaterial</string> <string name="PropertyOrder">0</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ColorMap</string> <string name="PropertyOrder">1</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MetalnessMap</string> <string name="PropertyOrder">2</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">NormalMap</string> <string name="PropertyOrder">3</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">RoughnessMap</string> <string name="PropertyOrder">4</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">StudsPerTile</string> <double name="UIMinimum">0.1</double> <double name="UIMaximum">20</double> <double name="UINumTicks">200</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">TerrainDetail</string> <string name="ClassCategory">3D Interfaces</string> <string name="ExplorerOrder">42</string> <string name="ExplorerImageIndex">144</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Face</string> <string name="PropertyOrder">0</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ColorMap</string> <string name="PropertyOrder">1</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MetalnessMap</string> <string name="PropertyOrder">2</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">NormalMap</string> <string name="PropertyOrder">3</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">RoughnessMap</string> <string name="PropertyOrder">4</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">StudsPerTile</string> <double name="UIMinimum">0.1</double> <double name="UIMaximum">20</double> <double name="UINumTicks">200</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">MaterialService</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">131</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Sky</string> <string name="ClassCategory">Environment</string> <string name="ExplorerOrder">5</string> <string name="ExplorerImageIndex">28</string> <string name="PreferredParent">Lighting</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ColorCorrectionEffect</string> <string name="ClassCategory">Post Processing Effects</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">83</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Brightness</string> <double name="UIMinimum">-1</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Contrast</string> <double name="UIMinimum">-1</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Saturation</string> <double name="UIMinimum">-1</double> <double name="UIMaximum">1</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">BloomEffect</string> <string name="ClassCategory">Post Processing Effects</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">83</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Intensity</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Threshold</string> <double name="UIMinimum">0.8</double> <double name="UIMaximum">4</double> <double name="UINumTicks">1000</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Size</string> <double name="UIMinimum">0</double> <double name="UIMaximum">56</double> <double name="UINumTicks">56</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">BlurEffect</string> <string name="ClassCategory">Post Processing Effects</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">83</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Size</string> <double name="UIMinimum">0</double> <double name="UIMaximum">56</double> <double name="UINumTicks">56</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Highlight</string> <string name="ClassCategory">Effects</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">133</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">FillTransparency</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">OutlineTransparency</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">DepthOfFieldEffect</string> <string name="ClassCategory">Post Processing Effects</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">83</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">FocusDistance</string> <double name="UIMinimum">0</double> <double name="UIMaximum">200.0</double> <double name="UINumTicks">10000</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">InFocusRadius</string> <double name="UIMinimum">0</double> <double name="UIMaximum">50.0</double> <double name="UINumTicks">10000</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">NearIntensity</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">10000</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">FarIntensity</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">10000</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">SunRaysEffect</string> <string name="ClassCategory">Post Processing Effects</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">83</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Intensity</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">1000</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Spread</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">1000</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Motor</string> <string name="ExplorerOrder">20</string> <string name="Insertable">false</string> <string name="PreferredParent">BasePart</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ControllerPartSensor</string> <string name="FFlag">SimHumanoidPhysics</string> <string name="ClassCategory">Avatar</string> <string name="ExplorerOrder">20</string> <string name="PreferredParent">BasePart</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">BuoyancySensor</string> <string name="FFlag">SimHumanoidPhysics</string> <string name="ClassCategory">Avatar</string> <string name="ExplorerOrder">20</string> <string name="PreferredParent">BasePart</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ControllerManager</string> <string name="FFlag">SimHumanoidPhysics</string> <string name="ClassCategory">Avatar</string> <string name="ExplorerOrder">20</string> <string name="PreferredParent">Humanoid</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">GroundController</string> <string name="FFlag">SimHumanoidPhysics</string> <string name="ClassCategory">Avatar</string> <string name="ExplorerOrder">20</string> <string name="PreferredParent">ControllerManager</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AirController</string> <string name="FFlag">SimHumanoidPhysics</string> <string name="ClassCategory">Avatar</string> <string name="ExplorerOrder">20</string> <string name="PreferredParent">ControllerManager</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ClimbController</string> <string name="FFlag">SimHumanoidPhysics</string> <string name="ClassCategory">Avatar</string> <string name="ExplorerOrder">20</string> <string name="PreferredParent">ControllerManager</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">SwimController</string> <string name="FFlag">SimHumanoidPhysics</string> <string name="ClassCategory">Avatar</string> <string name="ExplorerOrder">20</string> <string name="PreferredParent">ControllerManager</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Humanoid</string> <string name="ClassCategory">Avatar</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">9</string> <string name="PreferredParent">Model</string> </Properties> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MoveTo</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Jump</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Sit</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TakeDamage</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">UnequipTools</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">EquipTool</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ReplaceBodyPartR15</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetBodyPartR15</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetMoveVelocity</string> <string name="Description">Returns the movement velocity based on the player input.</string> <string name="FFlag">EnableGetMoveVelocity2</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">NameOcclusion</string> </Properties> <Properties> <string name="Name">Health</string> </Properties> <Properties> <string name="Name">MaxHealth</string> </Properties> <Properties> <string name="Name">TargetPoint</string> </Properties> <Properties> <string name="Name">Torso</string> <bool name="Deprecated">true</bool> </Properties> <Properties> <string name="Name">LeftLeg</string> <bool name="Deprecated">true</bool> </Properties> <Properties> <string name="Name">RightLeg</string> <bool name="Deprecated">true</bool> </Properties> <Properties> <string name="Name">CollisionType</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">EvaluateStateMachine</string> <string name="FFlag">EnableEvaluateStateMachine2</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">BodyColors</string> <string name="ClassCategory">Avatar</string> <string name="ExplorerOrder">20</string> <string name="PreferredParent">Model</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Shirt</string> <string name="ClassCategory">Avatar</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">43</string> <string name="PreferredParent">Model</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Pants</string> <string name="ClassCategory">Avatar</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">44</string> <string name="PreferredParent">Model</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ShirtGraphic</string> <string name="ClassCategory">Avatar</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">40</string> <string name="PreferredParent">Model</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Skin</string> <bool name="Deprecated">true</bool> <string name="ExplorerOrder">20</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">DebugSettings</string> <bool name="Browsable">false</bool> <string name="ExplorerOrder">20</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">FaceInstance</string> <bool name="Browsable">false</bool> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">GameSettings</string> <bool name="Browsable">false</bool> <string name="ExplorerOrder">20</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">GlobalSettings</string> <bool name="Browsable">false</bool> <string name="ExplorerOrder">20</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Item</string> <bool name="Browsable">false</bool> <string name="ExplorerOrder">20</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">NetworkPeer</string> <bool name="Browsable">false</bool> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">NetworkSettings</string> <bool name="Browsable">false</bool> <string name="ExplorerOrder">20</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">PVInstance</string> <bool name="Browsable">false</bool> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CoordinateFrame</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Origin Orientation</string> <string name="PropertyOrder">400</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Origin Position</string> <string name="PropertyOrder">300</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Pivot Offset Position</string> <string name="PropertyOrder">300</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Pivot Offset Orientation</string> <string name="PropertyOrder">400</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">PackageLink</string> <string name="ExplorerOrder">1</string> <string name="ExplorerImageIndex">98</string> <bool name="Browsable">false</bool> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Status</string> <bool name="Browsable">true</bool> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">RenderSettings</string> <bool name="Browsable">false</bool> <string name="ExplorerOrder">20</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">RootInstance</string> <bool name="Browsable">false</bool> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ServiceProvider</string> <bool name="Browsable">false</bool> </Properties> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">service</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetService</string> <string name="Constraint">Instance:isService:0</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">FindService</string> <string name="Constraint">Instance:isService:0</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ProfilingItem</string> <bool name="Browsable">false</bool> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">NetworkMarker</string> <bool name="Browsable">false</bool> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Hopper</string> <bool name="Deprecated">true</bool> <string name="ExplorerOrder">20</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Instance</string> <bool name="Browsable">false</bool> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Archivable</string> <string name="PropertyOrder">990</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ClassName</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Parent</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetDebugId</string> <bool name="Browsable">false</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Clone</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">clone</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">isA</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">IsA</string> <string name="Constraint">Instance:Any:0</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">FindFirstChild</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">FindFirstChildOfClass</string> <string name="Constraint">Instance:isScriptCreatable:0</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">FindFirstChildWhichIsA</string> <string name="Constraint">Instance:Any:0</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">FindFirstAncestor</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">FindFirstAncestorOfClass</string> <string name="Constraint">Instance:isScriptCreatable:0</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">FindFirstAncestorWhichIsA</string> <string name="Constraint">Instance:Any:0</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetFullName</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">children</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">getChildren</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetChildren</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetDescendants</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Remove</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">remove</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ClearAllChildren</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Destroy</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">findFirstChild</string> <bool name="Deprecated">true</bool> </Properties> </Item> </Item> <Item class="ReflectionMetadataEvents"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AncestryChanged</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">DescendantAdded</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">DescendantRemoving</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Changed</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">BodyGyro</string> <string name="ClassCategory">Legacy Body Movers</string> <string name="ExplorerOrder">140</string> <string name="ExplorerImageIndex">14</string> <string name="PreferredParent">BasePart</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MaxTorque</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">maxTorque</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">D</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">P</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CFrame</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">cframe</string> <bool name="Deprecated">true</bool> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">BodyPosition</string> <string name="ClassCategory">Legacy Body Movers</string> <string name="ExplorerOrder">140</string> <string name="ExplorerImageIndex">14</string> <string name="PreferredParent">BasePart</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MaxForce</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">maxForce</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">D</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">P</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Position</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">position</string> <bool name="Deprecated">true</bool> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">RocketPropulsion</string> <string name="ClassCategory">Legacy Body Movers</string> <string name="ExplorerOrder">140</string> <string name="ExplorerImageIndex">14</string> <string name="PreferredParent">BasePart</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">BodyVelocity</string> <string name="ClassCategory">Legacy Body Movers</string> <string name="ExplorerOrder">140</string> <string name="ExplorerImageIndex">14</string> <string name="PreferredParent">BasePart</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MaxForce</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">maxForce</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">P</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Velocity</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">velocity</string> <bool name="Deprecated">true</bool> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">BodyAngularVelocity</string> <string name="ClassCategory">Legacy Body Movers</string> <string name="ExplorerOrder">140</string> <string name="ExplorerImageIndex">14</string> <string name="PreferredParent">BasePart</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MaxTorque</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">maxTorque</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">P</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AngularVelocity</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">angularVelocity</string> <bool name="Deprecated">true</bool> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">BodyForce</string> <string name="ClassCategory">Legacy Body Movers</string> <string name="ExplorerOrder">140</string> <string name="ExplorerImageIndex">14</string> <string name="PreferredParent">BasePart</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Force</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">force</string> <bool name="Deprecated">true</bool> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">BodyThrust</string> <string name="ClassCategory">Legacy Body Movers</string> <string name="ExplorerOrder">140</string> <string name="ExplorerImageIndex">14</string> <string name="PreferredParent">BasePart</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Force</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">force</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Location</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">location</string> <bool name="Deprecated">true</bool> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Hole</string> <bool name="Deprecated">true</bool> <string name="ExplorerOrder">20</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Feature</string> <string name="ExplorerOrder">20</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Teams</string> <string name="ExplorerOrder">140</string> <string name="ExplorerImageIndex">23</string> <string name="PreferredParent">Teams</string> </Properties> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetPlayers</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Team</string> <string name="ClassCategory">Interaction</string> <string name="ExplorerOrder">10</string> <string name="ExplorerImageIndex">24</string> <string name="PreferredParent">Teams</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">SpawnLocation</string> <string name="ClassCategory">Interaction</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">25</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">NetworkClient</string> <bool name="Insertable">false</bool> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">16</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">NetworkServer</string> <bool name="Insertable">false</bool> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">15</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">LuaSourceContainer</string> <bool name="Browsable">false</bool> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CurrentEditor</string> <bool name="EditingDisabled">true</bool> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Script</string> <string name="ClassCategory">Scripting</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">6</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LinkedScript</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">LocalScript</string> <string name="ClassCategory">Scripting</string> <string name="ExplorerOrder">40</string> <string name="ExplorerImageIndex">18</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">RenderingTest</string> <string name="Insertable">true</string> <string name="ClassCategory">Scripting</string> <string name="ExplorerOrder">40</string> <string name="ExplorerImageIndex">5</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">NetworkReplicator</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">29</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Model</string> <string name="ExplorerOrder">100</string> <string name="ExplorerImageIndex">2</string> <string name="PreferredParent">PVInstance</string> </Properties> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">BreakJoints</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetModelCFrame</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetModelSize</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MakeJoints</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MoveTo</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ResetOrientationToIdentity</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SetIdentityOrientation</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TranslateBy</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetPrimaryPartCFrame</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SetPrimaryPartCFrame</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">makeJoints</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">move</string> <bool name="Deprecated">true</bool> </Properties> </Item> </Item> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PrimaryPart</string> <string name="PropertyOrder">200</string> <string name="Description">A Part that serves as a physical reference for the Model's Pivot. If set, the Pivot will follow the PrimaryPart during simulation, otherwise the Pivot will be a fixed world space location.</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LevelOfDetail</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">World Pivot Position</string> <string name="PropertyOrder">300</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">World Pivot Orientation</string> <string name="PropertyOrder">400</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Status</string> <bool name="Deprecated">true</bool> <string name="ExplorerOrder">100</string> <string name="ExplorerImageIndex">2</string> </Properties> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">move</string> <bool name="Deprecated">true</bool> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">DataModel</string> </Properties> <Item class="ReflectionMetadataCallbacks"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">OnClose</string> <bool name="Deprecated">true</bool> </Properties> </Item> </Item> <Item class="ReflectionMetadataProperties"> <Properties></Properties> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PrivateServerId</string> <bool name="ServerOnly">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PrivateServerOwnerId</string> <bool name="ServerOnly">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">VIPServerId</string> <bool name="ServerOnly">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">VIPServerOwnerId</string> <bool name="ServerOnly">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Workspace</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">workspace</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ShowMouse</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">IsLoaded</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataEvents"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Loaded</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SetPlaceID</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SetCreatorID</string> <bool name="Deprecated">true</bool> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">DataStoreService</string> </Properties> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetDataStore</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetGlobalDataStore</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetOrderedDataStore</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">GlobalDataStore</string> <string name="ExplorerOrder">-1</string> </Properties> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">OnUpdate</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataYieldFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetAsync</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">IncrementAsync</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SetAsync</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">UpdateAsync</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">OrderedDataStore</string> <string name="ExplorerOrder">-1</string> </Properties> <Item class="ReflectionMetadataYieldFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetSortedAsync</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">HopperBin</string> <bool name="Deprecated">true</bool> <string name="ExplorerOrder">240</string> <string name="ExplorerImageIndex">22</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Camera</string> <string name="ExplorerOrder">5</string> <string name="ExplorerImageIndex">5</string> <string name="PreferredParent">Model</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CameraSubject</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CameraType</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CoordinateFrame</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CFrame</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">FieldOfViewMode</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">FieldOfView</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">DiagonalFieldOfView</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MaxAxisFieldOfView</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Focus</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ViewportSize</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">NearPlaneZ</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetRoll</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">WorldToScreenPoint</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ScreenPointToRay</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ViewportPointToRay</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">WorldToViewportPoint</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SetRoll</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Players</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">21</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CharacterAutoLoads</string> <bool name="Browsable">true</bool> </Properties> </Item> </Item> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">players</string> <bool name="Deprecated">true</bool> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ReplicatedStorage</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">70</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">RobloxReplicatedStorage</string> <bool name="Browsable">false</bool> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ReplicatedFirst</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">70</string> </Properties> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">RemoveRobloxLoadingScreen</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ServerStorage</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">69</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ServerScriptService</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">71</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">StudioService</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Lighting</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">13</string> </Properties> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetMinutesAfterMidnight</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetMoonDirection</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetMoonPhase</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetSunDirection</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SetMinutesAfterMidnight</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Ambient</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Brightness</string> <double name="UIMinimum">0</double> <double name="UIMaximum">10</double> <double name="UINumTicks">1000</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">EnvironmentDiffuseScale</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">1000</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">EnvironmentSpecularScale</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">1000</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ExposureCompensation</string> <double name="UIMinimum">-3</double> <double name="UIMaximum">3</double> <double name="UINumTicks">600</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ShadowSoftness</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ColorShift_Bottom</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ColorShift_Top</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GeographicLatitude</string> <double name="UIMinimum">0</double> <double name="UIMaximum">360</double> <double name="UINumTicks">360</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GlobalShadows</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">OutdoorAmbient</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Outlines</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ShadowColor</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TimeOfDay</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ClockTime</string> <double name="UIMinimum">0</double> <double name="UIMaximum">24</double> <double name="UINumTicks">240</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">FogColor</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">FogEnd</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">FogStart</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataEvents"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LightingChanged</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">TestService</string> <string name="ExplorerOrder">1000</string> <string name="ExplorerImageIndex">68</string> <token name="ServiceVisibility">2</token> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">DebuggerManager</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ScriptDebugger</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">DebuggerBreakpoint</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">DebuggerWatch</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Debris</string> <string name="ExplorerImageIndex">30</string> </Properties> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">addItem</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AddItem</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MaxItems</string> <bool name="Deprecated">true</bool> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Accoutrement</string> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">32</string> <string name="Insertable">false</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Player</string> <bool name="Insertable">false</bool> <string name="ExplorerOrder">10</string> <string name="ExplorerImageIndex">12</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CharacterAppearance</string> <bool name="Browsable">false</bool> <string name="PreferredParent">Model</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CameraMode</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">DataReady</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">DataComplexity</string> <bool name="Deprecated">true</bool> </Properties> </Item> </Item> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LoadCharacter</string> <bool name="Browsable">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LoadData</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SaveData</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SaveBoolean</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SaveInstance</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SaveString</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LoadBoolean</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LoadNumber</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LoadString</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LoadInstance</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SaveNumber</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">playerFromCharacter</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SetUnder13</string> <bool name="Deprecated">true</bool> </Properties> </Item> </Item> <Item class="ReflectionMetadataYieldFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">WaitForDataReady</string> <bool name="Deprecated">true</bool> <bool name="Browsable">true</bool> </Properties> </Item> </Item> <Item class="ReflectionMetadataEvents"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Idled</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Workspace</string> <string name="ExplorerOrder">5</string> <string name="ExplorerImageIndex">19</string> </Properties> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">FindPartsInRegion3</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">FindPartsInRegion3WithIgnoreList</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">FindPartOnRay</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">FindPartOnRayWithIgnoreList</string> <bool name="Deprecated">true</bool> </Properties> </Item> </Item> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PGSPhysicsSolverEnabled</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">FallenPartsDestroyHeight</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">BasePart</string> <string name="ExplorerOrder">3</string> <bool name="Browsable">false</bool> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Color</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CFrame</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CanCollide</string> <string name="PropertyOrder">1000</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CanQuery</string> <string name="PropertyOrder">1001</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CanTouch</string> <string name="PropertyOrder">1002</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Anchored</string> <string name="PropertyOrder">900</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Massless</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">RootPriority</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Elasticity</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Friction</string> <double name="UIMinimum">0</double> <double name="UIMaximum">2</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Locked</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CastShadow</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Material</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Reflectance</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ResizeIncrement</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ResizeableFaces</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Transparency</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Velocity</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Size</string> <string name="PropertyOrder">50</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Position</string> <string name="PropertyOrder">100</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Orientation</string> <string name="PropertyOrder">200</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Rotation</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CenterOfMass</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AssemblyMass</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AssemblyCenterOfMass</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AssemblyLinearVelocity</string> <string name="PropertyOrder">1000</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AssemblyAngularVelocity</string> <string name="PropertyOrder">1010</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AssemblyRootPart</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">makeJoints</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MakeJoints</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">BreakJoints</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetMass</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Resize</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">getMass</string> <bool name="Deprecated">true</bool> </Properties> </Item> </Item> <Item class="ReflectionMetadataEvents"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">OutfitChanged</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LocalSimulationTouched</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">StoppedTouching</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TouchEnded</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Part</string> <string name="ClassCategory">Parts</string> <string name="ExplorerOrder">110</string> <string name="ExplorerImageIndex">1</string> <string name="PreferredParent">Workspace</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">TrussPart</string> <string name="ClassCategory">Parts</string> <string name="ExplorerOrder">120</string> <string name="ExplorerImageIndex">1</string> <string name="PreferredParent">Model</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">WedgePart</string> <string name="ClassCategory">Parts</string> <string name="ExplorerOrder">120</string> <string name="ExplorerImageIndex">1</string> <string name="PreferredParent">Model</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">PrismPart</string> <bool name="Browsable">false</bool> <bool name="Deprecated">true</bool> <string name="ExplorerOrder">120</string> <string name="ExplorerImageIndex">1</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">PyramidPart</string> <bool name="Browsable">false</bool> <bool name="Deprecated">true</bool> <string name="ExplorerOrder">120</string> <string name="ExplorerImageIndex">1</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ParallelRampPart</string> <bool name="Browsable">false</bool> <bool name="Deprecated">true</bool> <string name="ExplorerOrder">120</string> <string name="ExplorerImageIndex">1</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">RightAngleRampPart</string> <bool name="Browsable">false</bool> <bool name="Deprecated">true</bool> <string name="ExplorerOrder">120</string> <string name="ExplorerImageIndex">1</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">CornerWedgePart</string> <string name="ClassCategory">Parts</string> <string name="ExplorerOrder">120</string> <string name="ExplorerImageIndex">1</string> <string name="PreferredParent">Workspace</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">PlayerGui</string> <string name="ExplorerOrder">130</string> <string name="ExplorerImageIndex">46</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SelectionImageObject</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">PlayerScripts</string> <string name="ExplorerOrder">130</string> <string name="ExplorerImageIndex">78</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">StandalonePluginScripts</string> <string name="ExplorerOrder">130</string> <string name="ExplorerImageIndex">78</string> <string name="Insertable">true</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">StarterPlayerScripts</string> <string name="ExplorerOrder">130</string> <string name="ExplorerImageIndex">78</string> <string name="Insertable">false</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">StarterCharacterScripts</string> <string name="ExplorerOrder">130</string> <string name="ExplorerImageIndex">78</string> <string name="Insertable">false</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">GuiMain</string> <bool name="Deprecated">true</bool> <string name="ExplorerOrder">140</string> <string name="ExplorerImageIndex">47</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">LayerCollector</string> <string name="Browsable">false</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Enabled</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ZIndexBehavior</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ScreenGui</string> <string name="ClassCategory">GUI</string> <string name="ExplorerOrder">140</string> <string name="ExplorerImageIndex">47</string> <string name="PreferredParent">BasePlayerGui</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SafeAreaCompatibility</string> <string name="FFlag">GuiObjectSafeAreaBackgroundExtension</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ClipToDeviceSafeArea</string> <string name="FFlag">GuiObjectSafeAreaBackgroundExtension</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ScreenInsets</string> <string name="FFlag">ScreenGuiShowScreenInsetsInStudio</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">FunctionalTest</string> <bool name="Deprecated">true</bool> <string name="ExplorerOrder">10</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">BillboardGui</string> <string name="ClassCategory">GUI</string> <string name="ExplorerOrder">140</string> <string name="ExplorerImageIndex">64</string> <string name="PreferredParent">GuiBase2d</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Adornee</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AbsolutePosition</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AbsoluteSize</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Active</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AlwaysOnTop</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Enabled</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ExtentsOffset</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">PlayerToHideFrom</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">StudsOffset</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SizeOffset</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Size</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LightInfluence</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">SurfaceGui</string> <string name="ClassCategory">GUI</string> <string name="ExplorerOrder">140</string> <string name="ExplorerImageIndex">64</string> <string name="PreferredParent">GuiBase2d</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Adornee</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Active</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Enabled</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LightInfluence</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">2000</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Brightness</string> <double name="UIMinimum">0</double> <double name="UIMaximum">10</double> <double name="UINumTicks">2000</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">GuiBase2d</string> <bool name="Browsable">false</bool> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AbsolutePosition</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AbsoluteSize</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SelectionGroup</string> <string name="FFlag">GamepadUISelectionGroup</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SelectionBehaviorUp</string> <string name="FFlag">GamepadUISelectionGroup</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SelectionBehaviorDown</string> <string name="FFlag">GamepadUISelectionGroup</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SelectionBehaviorLeft</string> <string name="FFlag">GamepadUISelectionGroup</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SelectionBehaviorRight</string> <string name="FFlag">GamepadUISelectionGroup</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">InputObject</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">UserInputType</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">UserInputState</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Position</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">KeyCode</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">GuiObject</string> <bool name="Browsable">false</bool> </Properties> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TweenPosition</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TweenSize</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TweenSizeAndPosition</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SelectionOrder</string> <string name="FFlag">GamepadUISelectionOrder</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Active</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">BackgroundColor3</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">BackgroundTransparency</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">BorderColor3</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">BorderSizePixel</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ClipsDescendants</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Draggable</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Size</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Position</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SizeConstraint</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ZIndex</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">BackgroundColor</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">BorderColor</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SelectionImageObject</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataEvents"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">DragBegin</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">DragStopped</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MouseEnter</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MouseLeave</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MouseMoved</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TouchTap</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TouchPinch</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TouchSwipe</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TouchLongPress</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TouchRotate</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TouchPan</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">InputBegan</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">InputChanged</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">InputEnded</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Frame</string> <string name="ClassCategory">GUI</string> <string name="ExplorerOrder">150</string> <string name="ExplorerImageIndex">48</string> <string name="PreferredParent">GuiBase2d</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Style</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ScrollingFrame</string> <string name="ClassCategory">GUI</string> <string name="ExplorerOrder">150</string> <string name="ExplorerImageIndex">48</string> <string name="PreferredParent">GuiBase2d</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ScrollingEnabled</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CanvasSize</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CanvasPosition</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AbsoluteWindowSize</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AbsoluteCanvasSize</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ScrollBarThickness</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TopImage</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MidImage</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">BottomImage</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ImageLabel</string> <string name="ClassCategory">GUI</string> <string name="ExplorerOrder">180</string> <string name="ExplorerImageIndex">49</string> <string name="PreferredParent">GuiBase2d</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Image</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ImageTransparency</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ScaleType</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SliceCenter</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TileSize</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">VideoFrame</string> <string name="ClassCategory">GUI</string> <string name="ExplorerOrder">18</string> <string name="ExplorerImageIndex">120</string> <string name="PreferredParent">GuiBase2d</string> <string name="PreferredParents">GuiBase2d</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Volume</string> <double name="UIMinimum">0</double> <double name="UIMaximum">100</double> <double name="UINumTicks">1000</double> <string name="SliderScaling">Square</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">CanvasGroup</string> <string name="FFlag">RenderCanvasGroupToTexture</string> <string name="ClassCategory">GUI</string> <string name="ExplorerOrder">200</string> <string name="ExplorerImageIndex">48</string> <string name="PreferredParent">GuiBase2d</string> <string name="PreferredParents">GuiBase2d</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GroupTransparency</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">TextLabel</string> <string name="ClassCategory">GUI</string> <string name="ExplorerOrder">190</string> <string name="ExplorerImageIndex">50</string> <string name="PreferredParent">GuiBase2d</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TextColor</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LineHeight</string> <double name="UIMinimum">0</double> <double name="UIMaximum">3</double> <double name="UINumTicks">300</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TextSize</string> <double name="UIMinimum">1</double> <double name="UIMaximum">100</double> <double name="UINumTicks">99</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TextTransparency</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TextStrokeTransparency</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ContentText</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">TextButton</string> <string name="ClassCategory">GUI</string> <string name="ExplorerOrder">170</string> <string name="ExplorerImageIndex">51</string> <string name="PreferredParent">GuiBase2d</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TextColor</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LineHeight</string> <double name="UIMinimum">0</double> <double name="UIMaximum">3</double> <double name="UINumTicks">300</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TextSize</string> <double name="UIMinimum">1</double> <double name="UIMaximum">100</double> <double name="UINumTicks">99</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TextTransparency</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TextStrokeTransparency</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ContentText</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">TextBox</string> <string name="ClassCategory">GUI</string> <string name="ExplorerOrder">170</string> <string name="ExplorerImageIndex">51</string> <string name="PreferredParent">GuiBase2d</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TextColor</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LineHeight</string> <double name="UIMinimum">0</double> <double name="UIMaximum">3</double> <double name="UINumTicks">300</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TextSize</string> <double name="UIMinimum">1</double> <double name="UIMaximum">100</double> <double name="UINumTicks">99</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TextTransparency</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TextStrokeTransparency</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ContentText</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">GuiButton</string> <string name="ClassCategory">GUI</string> <bool name="Browsable">false</bool> <string name="ExplorerOrder">160</string> <string name="ExplorerImageIndex">52</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">AutoButtonColor</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Modal</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Style</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataEvents"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MouseButton1Click</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MouseButton1Down</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MouseButton1Up</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MouseButton2Click</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MouseButton2Down</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MouseButton2Up</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ViewportFrame</string> <string name="ClassCategory">GUI</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">52</string> <string name="PreferredParent">GuiBase2d</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">CurrentCamera</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ImageTransparency</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ImageColor3</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Ambient</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LightColor</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LightDirection</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ImageButton</string> <string name="ClassCategory">GUI</string> <string name="ExplorerOrder">160</string> <string name="ExplorerImageIndex">52</string> <string name="PreferredParent">GuiBase2d</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Image</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ImageTransparency</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> <double name="UINumTicks">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ScaleType</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SliceCenter</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TileSize</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Handles</string> <string name="ClassCategory">Adornments</string> <string name="ExplorerOrder">190</string> <string name="ExplorerImageIndex">53</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ArcHandles</string> <string name="ClassCategory">Adornments</string> <string name="ExplorerOrder">200</string> <string name="ExplorerImageIndex">56</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">SelectionBox</string> <string name="ClassCategory">Adornments</string> <string name="ExplorerOrder">210</string> <string name="ExplorerImageIndex">54</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">SelectionSphere</string> <string name="ClassCategory">Adornments</string> <string name="ExplorerOrder">210</string> <string name="ExplorerImageIndex">54</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">SurfaceSelection</string> <string name="ClassCategory">Adornments</string> <string name="ExplorerOrder">210</string> <string name="ExplorerImageIndex">55</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">PathfindingModifier</string> <string name="ClassCategory">Adornments</string> <string name="ExplorerOrder">210</string> <string name="ExplorerImageIndex">128</string> </Properties> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Label</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">PathfindingLink</string> <string name="ClassCategory">Adornments</string> <string name="ExplorerOrder">210</string> <string name="ExplorerImageIndex">137</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Attachment0</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Attachment1</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Label</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">IsBidirectional</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Configuration</string> <string name="ExplorerOrder">220</string> <string name="ExplorerImageIndex">58</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">HumanoidDescription</string> <string name="ExplorerOrder">22</string> <string name="ExplorerImageIndex">104</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Folder</string> <string name="ExplorerOrder">10</string> <string name="ExplorerImageIndex">77</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">WorldModel</string> <bool name="Insertable">true</bool> <string name="ClassCategory">World</string> <string name="ExplorerOrder">22</string> <string name="ExplorerImageIndex">19</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Motor6D</string> <string name="ClassCategory">Animations</string> <string name="ExplorerOrder">200</string> <string name="ExplorerImageIndex">106</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">BoxHandleAdornment</string> <string name="ClassCategory">Adornments</string> <string name="ExplorerOrder">205</string> <string name="ExplorerImageIndex">111</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ConeHandleAdornment</string> <string name="ClassCategory">Adornments</string> <string name="ExplorerOrder">205</string> <string name="ExplorerImageIndex">110</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">CylinderHandleAdornment</string> <string name="ClassCategory">Adornments</string> <string name="ExplorerOrder">205</string> <string name="ExplorerImageIndex">109</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">SphereHandleAdornment</string> <string name="ClassCategory">Adornments</string> <string name="ExplorerOrder">205</string> <string name="ExplorerImageIndex">112</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">WireframeHandleAdornment</string> <string name="ClassCategory">Adornments</string> <string name="ExplorerOrder">205</string> <string name="ExplorerImageIndex">113</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">LineHandleAdornment</string> <string name="ClassCategory">Adornments</string> <string name="ExplorerOrder">205</string> <string name="ExplorerImageIndex">107</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ImageHandleAdornment</string> <string name="ClassCategory">Adornments</string> <string name="ExplorerOrder">205</string> <string name="ExplorerImageIndex">108</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">SelectionPartLasso</string> <bool name="Deprecated">true</bool> <string name="ExplorerOrder">220</string> <string name="ExplorerImageIndex">57</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">SelectionPointLasso</string> <bool name="Deprecated">true</bool> <string name="ExplorerOrder">220</string> <string name="ExplorerImageIndex">57</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">PartPairLasso</string> <string name="ExplorerOrder">220</string> <string name="ExplorerImageIndex">57</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">PoseBase</string> <string name="ExplorerOrder">220</string> <string name="ExplorerImageIndex">60</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Pose</string> <string name="ExplorerOrder">220</string> <string name="ExplorerImageIndex">60</string> <string name="Insertable">false</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">NumberPose</string> <string name="ExplorerOrder">220</string> <string name="ExplorerImageIndex">60</string> <string name="Insertable">false</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">KeyframeMarker</string> <string name="ExplorerOrder">220</string> <string name="ExplorerImageIndex">60</string> <string name="Insertable">false</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Keyframe</string> <string name="ExplorerOrder">220</string> <string name="ExplorerImageIndex">60</string> <string name="Insertable">false</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Animation</string> <string name="ClassCategory">Animations</string> <string name="ExplorerOrder">220</string> <string name="ExplorerImageIndex">60</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AnimationTrack</string> <string name="ExplorerOrder">220</string> <string name="ExplorerImageIndex">60</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">AnimationController</string> <string name="ClassCategory">Animations</string> <string name="ExplorerOrder">220</string> <string name="ExplorerImageIndex">60</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Animator</string> <string name="ClassCategory">Animations</string> <string name="ExplorerOrder">220</string> <string name="ExplorerImageIndex">60</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">EvaluationThrottled</string> <string name="Description">Returns true if animation evaluation for the Animator is throttled.</string> <string name="PropertyOrder">1001</string> <bool name="FFlag">AnimatorIsThrottledPropertyEnabled</bool> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">IKControl</string> <string name="ClassCategory">Animations</string> <string name="ExplorerOrder">220</string> <string name="ExplorerImageIndex">53</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Type</string> <string name="Description">Specifies how the solver satisfies this control.</string> <string name="PropertyOrder">1001</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">EndEffector</string> <string name="Description">The part that you are interested in moving to reach the Target.</string> <string name="PropertyOrder">1002</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Target</string> <string name="Description">The object that the EndEffector reaches for or points at.</string> <string name="PropertyOrder">1003</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ChainRoot</string> <string name="Description">The last part that you are interested in moving your character.</string> <string name="PropertyOrder">1004</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Offset</string> <string name="Description">An additional offset applied on top of the Target in its local space.</string> <string name="PropertyOrder">1005</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Enabled</string> <string name="Description">Toggles the control on and off.</string> <string name="PropertyOrder">1010</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties>d<string name="Name">Weight</string><string name="Description">Specifies how much this IK control should affect the final pose.</string><string name="PropertyOrder"> 1011</string><double name="UIMinimum">0</double><double name="UIMaximum">1</double></Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Priority</string> <string name="Description">Specifies the order in which controls are solved.</string> <string name="PropertyOrder">1012</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SmoothTime</string> <string name="Description">Specifies the time in seconds to smooth the control by.</string> <string name="PropertyOrder">1013</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetChainLength</string> <string name="Description">Returns the total length of the chain, which is the sum of the lengths of its segments.</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetChainCount</string> <string name="Description">Returns the number of segments in the chain, which is one less than the number of nodes.</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetNodeWorldCFrame</string> <string name="Description">Returns the CFrame of the node with the given index in world space.</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetNodeLocalCFrame</string> <string name="Description">Returns the CFrame of the node with the given index in local space.</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetRawFinalTarget</string> <string name="Description">Returns the CFrame of the raw final target in world space.</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetSmoothedFinalTarget</string> <string name="Description">Returns the CFrame of the smoothed final target in world space.</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">FaceControls</string> <string name="ClassCategory">Animations</string> <bool name="Browsable">true</bool> <bool name="Insertable">true</bool> <string name="ExplorerOrder">105</string> <string name="ExplorerImageIndex">129</string> <string name="PreferredParent">MeshPart</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ChinRaiserUpperLip</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ChinRaiser</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">FlatPucker</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Funneler</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LowerLipSuck</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LipPresser</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LipsTogether</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MouthLeft</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">MouthRight</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Pucker</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">UpperLipSuck</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LeftCheekPuff</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LeftDimpler</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LeftLipCornerDown</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LeftLowerLipDepressor</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LeftLipCornerPuller</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LeftLipStretcher</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LeftUpperLipRaiser</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">RightCheekPuff</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">RightDimpler</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">RightLipCornerDown</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">RightLowerLipDepressor</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">RightLipCornerPuller</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">RightLipStretcher</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">RightUpperLipRaiser</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">JawDrop</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">JawLeft</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">JawRight</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Corrugator</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LeftBrowLowerer</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LeftOuterBrowRaiser</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LeftNoseWrinkler</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LeftInnerBrowRaiser</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">RightBrowLowerer</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">RightOuterBrowRaiser</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">RightInnerBrowRaiser</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">RightNoseWrinkler</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">EyesLookDown</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">EyesLookLeft</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">EyesLookUp</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">EyesLookRight</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LeftCheekRaiser</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LeftEyeUpperLidRaiser</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">LeftEyeClosed</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">RightCheekRaiser</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">RightEyeUpperLidRaiser</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">RightEyeClosed</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TongueDown</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TongueOut</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">TongueUp</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">CharacterMesh</string> <string name="ClassCategory">Meshes</string> <string name="ExplorerOrder">220</string> <string name="ExplorerImageIndex">60</string> <string name="PreferredParent">Model</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Dialog</string> <string name="ClassCategory">3D Interfaces</string> <string name="ExplorerOrder">220</string> <string name="ExplorerImageIndex">62</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">ConversationDistance</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GoodbyeChoiceActive</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GoodbyeDialog</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">InUse</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">InitialPrompt</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Purpose</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Tone</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">BehaviorType</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetCurrentPlayers</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">DialogChoice</string> <string name="ClassCategory">3D Interfaces</string> <string name="ExplorerOrder">220</string> <string name="ExplorerImageIndex">63</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">UnionOperation</string> <bool name="Browsable">true</bool> <bool name="Insertable">false</bool> <string name="ExplorerOrder">105</string> <string name="ExplorerImageIndex">73</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">UsePartColor</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">NegateOperation</string> <bool name="Browsable">true</bool> <bool name="Insertable">false</bool> <string name="ExplorerOrder">104</string> <string name="ExplorerImageIndex">72</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">UsePartColor</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">MeshPart</string> <string name="ClassCategory">Parts</string> <bool name="Browsable">true</bool> <bool name="Insertable">true</bool> <string name="ExplorerOrder">105</string> <string name="ExplorerImageIndex">73</string> <string name="PreferredParent">Model</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Terrain</string> <bool name="Browsable">true</bool> <bool name="Insertable">false</bool> <string name="ExplorerOrder">5</string> <string name="ExplorerImageIndex">65</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">WaterTransparency</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">WaterWaveSize</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">WaterWaveSpeed</string> <double name="UIMinimum">0</double> <double name="UIMaximum">100</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">WaterReflectance</string> <double name="UIMinimum">0</double> <double name="UIMaximum">1</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Decoration</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetCell</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">GetWaterCell</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">SetWaterCell</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">Light</string> <string name="ClassCategory">Lights</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">13</string> <string name="PreferredParent">PVInstance</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Brightness</string> <double name="UIMinimum">0</double> <double name="UIMaximum">40</double> <double name="UINumTicks">2000</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">PointLight</string> <string name="ClassCategory">Lights</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">13</string> <string name="PreferredParent">PVInstance</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Range</string> <double name="UIMinimum">0</double> <double name="UIMaximum">60</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">SpotLight</string> <string name="ClassCategory">Lights</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">13</string> <string name="PreferredParent">PVInstance</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Range</string> <double name="UIMinimum">0</double> <double name="UIMaximum">60</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Angle</string> <double name="UIMinimum">0</double> <double name="UIMaximum">180</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">SurfaceLight</string> <string name="ClassCategory">Lights</string> <string name="ExplorerOrder">30</string> <string name="ExplorerImageIndex">13</string> <string name="PreferredParent">PVInstance</string> </Properties> <Item class="ReflectionMetadataProperties"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Range</string> <double name="UIMinimum">0</double> <double name="UIMaximum">60</double> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">Angle</string> <double name="UIMinimum">0</double> <double name="UIMaximum">180</double> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">RemoteFunction</string> <string name="ClassCategory">Scripting</string> <string name="ExplorerOrder">40</string> <string name="ExplorerImageIndex">74</string> </Properties> <Item class="ReflectionMetadataYieldFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">InvokeClient</string> <string name="ScriptContext">Server</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">InvokeServer</string> <string name="ScriptContext">Client</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataCallbacks"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">OnClientInvoke</string> <string name="ScriptContext">Client</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">OnServerInvoke</string> <string name="ScriptContext">Server</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">RemoteEvent</string> <string name="ClassCategory">Scripting</string> <string name="ExplorerOrder">50</string> <string name="ExplorerImageIndex">75</string> </Properties> <Item class="ReflectionMetadataFunctions"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">FireAllClients</string> <string name="ScriptContext">Server</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">FireClient</string> <string name="ScriptContext">Server</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">FireServer</string> <string name="ScriptContext">Client</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataEvents"> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">OnClientEvent</string> <string name="ScriptContext">Client</string> </Properties> </Item> <Item class="ReflectionMetadataMember"> <Properties> <string name="Name">OnServerEvent</string> <string name="ScriptContext">Server</string> </Properties> </Item> </Item> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">TerrainRegion</string> <bool name="Browsable">true</bool> <string name="ExplorerOrder">20</string> <string name="ExplorerImageIndex">65</string> <string name="Insertable">false</string> </Properties> </Item> <Item class="ReflectionMetadataClass"> <Properties> <string name="Name">ModuleScript</string> <string name="ClassCategory">Scripting</string> <string name="ExplorerOrder">50</string> <string name="ExplorerImageIndex">76</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataEnums"> <Properties></Properties> <Item class="ReflectionMetadataEnum"> <Properties> <string name="Name">ContextActionResult</string> </Properties> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">Sink</string> </Properties> </Item> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">Pass</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataEnum"> <Properties> <string name="Name">PartType</string> </Properties> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">Ball</string> </Properties> </Item> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">Block</string> </Properties> </Item> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">Cylinder</string> </Properties> </Item> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">Wedge</string> </Properties> </Item> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">CornerWedge</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataEnum"> <Properties> <string name="Name">Material</string> </Properties> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">Air</string> <bool name="Browsable">false</bool> </Properties> </Item> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">Water</string> <bool name="Browsable">false</bool> </Properties> </Item> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">Rock</string> <bool name="Browsable">true</bool> </Properties> </Item> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">Glacier</string> <bool name="Browsable">true</bool> </Properties> </Item> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">Snow</string> <bool name="Browsable">true</bool> </Properties> </Item> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">Sandstone</string> <bool name="Browsable">true</bool> </Properties> </Item> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">Mud</string> <bool name="Browsable">true</bool> </Properties> </Item> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">Basalt</string> <bool name="Browsable">true</bool> </Properties> </Item> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">Ground</string> <bool name="Browsable">true</bool> </Properties> </Item> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">CrackedLava</string> <bool name="Browsable">true</bool> </Properties> </Item> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">Asphalt</string> <bool name="Browsable">true</bool> </Properties> </Item> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">LeafyGrass</string> <bool name="Browsable">true</bool> </Properties> </Item> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">Salt</string> <bool name="Browsable">true</bool> </Properties> </Item> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">Limestone</string> <bool name="Browsable">true</bool> </Properties> </Item> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">Pavement</string> <bool name="Browsable">true</bool> </Properties> </Item> </Item> <Item class="ReflectionMetadataEnum"> <Properties> <string name="Name">Status</string> <bool name="Deprecated">true</bool> </Properties> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">Poison</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">Confusion</string> <bool name="Deprecated">true</bool> </Properties> </Item> </Item> <Item class="ReflectionMetadataEnum"> <Properties> <string name="Name">SaveFilter</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataEnum"> <Properties> <string name="Name">PrivilegeType</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataEnum"> <Properties> <string name="Name">Genre</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataEnum"> <Properties> <string name="Name">GearGenreSetting</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataEnum"> <Properties> <string name="Name">GearType</string> <bool name="Deprecated">true</bool> </Properties> </Item> <Item class="ReflectionMetadataEnum"> <Properties> <string name="Name">SortOrder</string> </Properties> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">Name</string> </Properties> </Item> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">LayoutOrder</string> </Properties> </Item> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">Custom</string> <bool name="Deprecated">true</bool> </Properties> </Item> </Item> <Item class="ReflectionMetadataEnum"> <Properties> <string name="Name">ZIndexBehavior</string> </Properties> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">Global</string> </Properties> </Item> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">Sibling</string> </Properties> </Item> </Item> <Item class="ReflectionMetadataEnum"> <Properties> <string name="Name">ScaleType</string> </Properties> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">Stretch</string> </Properties> </Item> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">Slice</string> </Properties> </Item> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">Tile</string> </Properties> </Item> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">Fit</string> </Properties> </Item> <Item class="ReflectionMetadataEnumItem"> <Properties> <string name="Name">Crop</string> </Properties> </Item> </Item> </Item> </roblox>]==] - {2db21a66-d282-44a9-9870-2132f35bac55} - - 0 - false - RMD - -1 - - - - - - - 0 - false - Modules - -1 - - - - - - = 2 then return Vector2.new(x,y) end - elseif typeName == "Vector3" then - local vals = str:split(",") - local x,y,z = tonumber(vals[1]),tonumber(vals[2]),tonumber(vals[3]) - if x and y and z and #vals >= 3 then return Vector3.new(x,y,z) end - elseif typeName == "UDim" then - local vals = str:split(",") - local scale,offset = tonumber(vals[1]),tonumber(vals[2]) - if scale and offset and #vals >= 2 then return UDim.new(scale,offset) end - elseif typeName == "UDim2" then - local vals = str:gsub("[{}]",""):split(",") - local xScale,xOffset,yScale,yOffset = tonumber(vals[1]),tonumber(vals[2]),tonumber(vals[3]),tonumber(vals[4]) - if xScale and xOffset and yScale and yOffset and #vals >= 4 then return UDim2.new(xScale,xOffset,yScale,yOffset) end - elseif typeName == "CFrame" then - local vals = str:split(",") - local s,result = pcall(CFrame.new,unpack(vals)) - if s and #vals >= 12 then return result end - elseif typeName == "Rect" then - local vals = str:split(",") - local s,result = pcall(Rect.new,unpack(vals)) - if s and #vals >= 4 then return result end - elseif typeName == "Ray" then - local vals = str:gsub("[{}]",""):split(",") - local s,origin = pcall(Vector3.new,unpack(vals,1,3)) - local s2,direction = pcall(Vector3.new,unpack(vals,4,6)) - if s and s2 and #vals >= 6 then return Ray.new(origin,direction) end - elseif typeName == "NumberRange" then - local vals = str:split(",") - local s,result = pcall(NumberRange.new,unpack(vals)) - if s and #vals >= 1 then return result end - elseif typeName == "Color3" then - local vals = str:gsub("[{}]",""):split(",") - local s,result = pcall(Color3.fromRGB,unpack(vals)) - if s and #vals >= 3 then return result end - end - - return nil - end - - Properties.ValueToString = function(prop,val) - local typeData = prop.ValueType - local typeName = typeData.Name - - if typeName == "Color3" then - return Lib.ColorToBytes(val) - elseif typeName == "NumberRange" then - return val.Min..", "..val.Max - end - - return tostring(val) - end - - Properties.GetIndexableProps = function(obj,classData) - if not Main.Elevated then - if not pcall(function() return obj.ClassName end) then return nil end - end - - local ignoreProps = Properties.IgnoreProps[classData.Name] or {} - - local result = {} - local count = 1 - local props = classData.Properties - for i = 1,#props do - local prop = props[i] - if not ignoreProps[prop.Name] then - local s = pcall(function() return obj[prop.Name] end) - if s then - result[count] = prop - count = count + 1 - end - end - end - - return result - end - - Properties.FindFirstObjWhichIsA = function(class) - local classList = Properties.ClassLists[class] or {} - if classList and #classList > 0 then - return classList[1] - end - - return nil - end - - Properties.ComputeConflicts = function(p) - local maxConflictCheck = Settings.Properties.MaxConflictCheck - local sList = Explorer.Selection.List - local classLists = Properties.ClassLists - local stringSplit = string.split - local t_clear = table.clear - local conflictIgnore = Properties.ConflictIgnore - local conflictMap = {} - local propList = p and {p} or props - - if p then - local gName = p.Class.."."..p.Name - autoUpdateObjs[gName] = nil - local subProps = Properties.ConflictSubProps[p.ValueType.Name] or {} - for i = 1,#subProps do - autoUpdateObjs[gName.."."..subProps[i]] = nil - end - else - table.clear(autoUpdateObjs) - end - - if #sList > 0 then - for i = 1,#propList do - local prop = propList[i] - local propName,propClass = prop.Name,prop.Class - local typeData = prop.RootType or prop.ValueType - local typeName = typeData.Name - local attributeName = prop.AttributeName - local gName = propClass.."."..propName - - local checked = 0 - local subProps = Properties.ConflictSubProps[typeName] or {} - local subPropCount = #subProps - local toCheck = subPropCount + 1 - local conflictsFound = 0 - local indexNames = {} - local ignored = conflictIgnore[propClass] and conflictIgnore[propClass][propName] - local truthyCheck = (typeName == "PhysicalProperties") - local isAttribute = prop.IsAttribute - local isMultiType = prop.MultiType - - t_clear(conflictMap) - - if not isMultiType then - local firstVal,firstObj,firstSet - local classList = classLists[prop.Class] or {} - for c = 1,#classList do - local obj = classList[c] - if not firstSet then - if isAttribute then - firstVal = getAttribute(obj,attributeName) - if firstVal ~= nil then - firstObj = obj - firstSet = true - end - else - firstVal = obj[propName] - firstObj = obj - firstSet = true - end - if ignored then break end - else - local propVal,skip - if isAttribute then - propVal = getAttribute(obj,attributeName) - if propVal == nil then skip = true end - else - propVal = obj[propName] - end - - if not skip then - if not conflictMap[1] then - if truthyCheck then - if (firstVal and true or false) ~= (propVal and true or false) then - conflictMap[1] = true - conflictsFound = conflictsFound + 1 - end - elseif firstVal ~= propVal then - conflictMap[1] = true - conflictsFound = conflictsFound + 1 - end - end - - if subPropCount > 0 then - for sPropInd = 1,subPropCount do - local indexes = indexNames[sPropInd] - if not indexes then indexes = stringSplit(subProps[sPropInd],".") indexNames[sPropInd] = indexes end - - local firstValSub = firstVal - local propValSub = propVal - - for j = 1,#indexes do - if not firstValSub or not propValSub then break end -- PhysicalProperties - local indexName = indexes[j] - firstValSub = firstValSub[indexName] - propValSub = propValSub[indexName] - end - - local mapInd = sPropInd + 1 - if not conflictMap[mapInd] and firstValSub ~= propValSub then - conflictMap[mapInd] = true - conflictsFound = conflictsFound + 1 - end - end - end - - if conflictsFound == toCheck then break end - end - end - - checked = checked + 1 - if checked == maxConflictCheck then break end - end - - if not conflictMap[1] then autoUpdateObjs[gName] = firstObj end - for sPropInd = 1,subPropCount do - if not conflictMap[sPropInd+1] then - autoUpdateObjs[gName.."."..subProps[sPropInd]] = firstObj - end - end - end - end - end - - if p then - Properties.Refresh() - end - end - - -- Fetches the properties to be displayed based on the explorer selection - Properties.ShowExplorerProps = function() - local maxConflictCheck = Settings.Properties.MaxConflictCheck - local sList = Explorer.Selection.List - local foundClasses = {} - local propCount = 1 - local elevated = Main.Elevated - local showDeprecated,showHidden = Settings.Properties.ShowDeprecated,Settings.Properties.ShowHidden - local Classes = API.Classes - local classLists = {} - local lower = string.lower - local RMDCustomOrders = RMD.PropertyOrders - local getAttributes = game.GetAttributes - local maxAttrs = Settings.Properties.MaxAttributes - local showingAttrs = Settings.Properties.ShowAttributes - local foundAttrs = {} - local attrCount = 0 - local typeof = typeof - local typeNameConvert = Properties.TypeNameConvert - - table.clear(props) - - for i = 1,#sList do - local node = sList[i] - local obj = node.Obj - local class = node.Class - if not class then class = obj.ClassName node.Class = class end - - local apiClass = Classes[class] - while apiClass do - local APIClassName = apiClass.Name - if not foundClasses[APIClassName] then - local apiProps = indexableProps[APIClassName] - if not apiProps then apiProps = Properties.GetIndexableProps(obj,apiClass) indexableProps[APIClassName] = apiProps end - - for i = 1,#apiProps do - local prop = apiProps[i] - local tags = prop.Tags - if (not tags.Deprecated or showDeprecated) and (not tags.Hidden or showHidden) then - props[propCount] = prop - propCount = propCount + 1 - end - end - foundClasses[APIClassName] = true - end - - local classList = classLists[APIClassName] - if not classList then classList = {} classLists[APIClassName] = classList end - classList[#classList+1] = obj - - apiClass = apiClass.Superclass - end - - if showingAttrs and attrCount < maxAttrs then - local attrs = getAttributes(obj) - for name,val in pairs(attrs) do - local typ = typeof(val) - if not foundAttrs[name] then - local category = (typ == "Instance" and "Class") or (typ == "EnumItem" and "Enum") or "Other" - local valType = {Name = typeNameConvert[typ] or typ, Category = category} - local attrProp = {IsAttribute = true, Name = "ATTR_"..name, AttributeName = name, DisplayName = name, Class = "Instance", ValueType = valType, Category = "Attributes", Tags = {}} - props[propCount] = attrProp - propCount = propCount + 1 - attrCount = attrCount + 1 - foundAttrs[name] = {typ,attrProp} - if attrCount == maxAttrs then break end - elseif foundAttrs[name][1] ~= typ then - foundAttrs[name][2].MultiType = true - foundAttrs[name][2].Tags.ReadOnly = true - foundAttrs[name][2].ValueType = {Name = "string"} - end - end - end - end - - table.sort(props,function(a,b) - if a.Category ~= b.Category then - return (categoryOrder[a.Category] or 9999) < (categoryOrder[b.Category] or 9999) - else - local aOrder = (RMDCustomOrders[a.Class] and RMDCustomOrders[a.Class][a.Name]) or 9999999 - local bOrder = (RMDCustomOrders[b.Class] and RMDCustomOrders[b.Class][b.Name]) or 9999999 - if aOrder ~= bOrder then - return aOrder < bOrder - else - return lower(a.Name) < lower(b.Name) - end - end - end) - - -- Find conflicts and get auto-update instances - Properties.ClassLists = classLists - Properties.ComputeConflicts() - --warn("CONFLICT",tick()-start) - if #props > 0 then - props[#props+1] = Properties.AddAttributeProp - end - - Properties.Update() - Properties.Refresh() - end - - Properties.UpdateView = function() - local maxEntries = math.ceil(propsFrame.AbsoluteSize.Y / 23) - local maxX = propsFrame.AbsoluteSize.X - local totalWidth = Properties.ViewWidth + Properties.MinInputWidth - - scrollV.VisibleSpace = maxEntries - scrollV.TotalSpace = #viewList + 1 - scrollH.VisibleSpace = maxX - scrollH.TotalSpace = totalWidth - - scrollV.Gui.Visible = #viewList + 1 > maxEntries - scrollH.Gui.Visible = Settings.Properties.ScaleType == 0 and totalWidth > maxX - - local oldSize = propsFrame.Size - propsFrame.Size = UDim2.new(1,(scrollV.Gui.Visible and -16 or 0),1,(scrollH.Gui.Visible and -39 or -23)) - if oldSize ~= propsFrame.Size then - Properties.UpdateView() - else - scrollV:Update() - scrollH:Update() - - if scrollV.Gui.Visible and scrollH.Gui.Visible then - scrollV.Gui.Size = UDim2.new(0,16,1,-39) - scrollH.Gui.Size = UDim2.new(1,-16,0,16) - Properties.Window.GuiElems.Content.ScrollCorner.Visible = true - else - scrollV.Gui.Size = UDim2.new(0,16,1,-23) - scrollH.Gui.Size = UDim2.new(1,0,0,16) - Properties.Window.GuiElems.Content.ScrollCorner.Visible = false - end - - Properties.Index = scrollV.Index - end - end - - Properties.MakeSubProp = function(prop,subName,valueType,displayName) - local subProp = {} - for i,v in pairs(prop) do - subProp[i] = v - end - subProp.RootType = subProp.RootType or subProp.ValueType - subProp.ValueType = valueType - subProp.SubName = subProp.SubName and (subProp.SubName..subName) or subName - subProp.DisplayName = displayName - - return subProp - end - - Properties.GetExpandedProps = function(prop) -- TODO: Optimize using table - local result = {} - local typeData = prop.ValueType - local typeName = typeData.Name - local makeSubProp = Properties.MakeSubProp - - if typeName == "Vector2" then - result[1] = makeSubProp(prop,".X",{Name = "float"}) - result[2] = makeSubProp(prop,".Y",{Name = "float"}) - elseif typeName == "Vector3" then - result[1] = makeSubProp(prop,".X",{Name = "float"}) - result[2] = makeSubProp(prop,".Y",{Name = "float"}) - result[3] = makeSubProp(prop,".Z",{Name = "float"}) - elseif typeName == "CFrame" then - result[1] = makeSubProp(prop,".Position",{Name = "Vector3"}) - result[2] = makeSubProp(prop,".RightVector",{Name = "Vector3"}) - result[3] = makeSubProp(prop,".UpVector",{Name = "Vector3"}) - result[4] = makeSubProp(prop,".LookVector",{Name = "Vector3"}) - elseif typeName == "UDim" then - result[1] = makeSubProp(prop,".Scale",{Name = "float"}) - result[2] = makeSubProp(prop,".Offset",{Name = "int"}) - elseif typeName == "UDim2" then - result[1] = makeSubProp(prop,".X",{Name = "UDim"}) - result[2] = makeSubProp(prop,".Y",{Name = "UDim"}) - elseif typeName == "Rect" then - result[1] = makeSubProp(prop,".Min.X",{Name = "float"},"X0") - result[2] = makeSubProp(prop,".Min.Y",{Name = "float"},"Y0") - result[3] = makeSubProp(prop,".Max.X",{Name = "float"},"X1") - result[4] = makeSubProp(prop,".Max.Y",{Name = "float"},"Y1") - elseif typeName == "PhysicalProperties" then - result[1] = makeSubProp(prop,".Density",{Name = "float"}) - result[2] = makeSubProp(prop,".Elasticity",{Name = "float"}) - result[3] = makeSubProp(prop,".ElasticityWeight",{Name = "float"}) - result[4] = makeSubProp(prop,".Friction",{Name = "float"}) - result[5] = makeSubProp(prop,".FrictionWeight",{Name = "float"}) - elseif typeName == "Ray" then - result[1] = makeSubProp(prop,".Origin",{Name = "Vector3"}) - result[2] = makeSubProp(prop,".Direction",{Name = "Vector3"}) - elseif typeName == "NumberRange" then - result[1] = makeSubProp(prop,".Min",{Name = "float"}) - result[2] = makeSubProp(prop,".Max",{Name = "float"}) - elseif typeName == "Faces" then - result[1] = makeSubProp(prop,".Back",{Name = "bool"}) - result[2] = makeSubProp(prop,".Bottom",{Name = "bool"}) - result[3] = makeSubProp(prop,".Front",{Name = "bool"}) - result[4] = makeSubProp(prop,".Left",{Name = "bool"}) - result[5] = makeSubProp(prop,".Right",{Name = "bool"}) - result[6] = makeSubProp(prop,".Top",{Name = "bool"}) - elseif typeName == "Axes" then - result[1] = makeSubProp(prop,".X",{Name = "bool"}) - result[2] = makeSubProp(prop,".Y",{Name = "bool"}) - result[3] = makeSubProp(prop,".Z",{Name = "bool"}) - end - - if (prop.Name == "SoundId" and prop.Class == "Sound") or (prop.Name == "Asset" and prop.Class == "AudioPlayer") then - local preview = {} - local preview = {} - for k,v in pairs(Properties.SoundPreviewProp) do preview[k] = v end - preview.Class = prop.Class - preview.Category = prop.Category - preview.IsSoundPreview = true - result[1] = preview - - end - - - return result - end - - Properties.Update = function() - table.clear(viewList) - - local nameWidthCache = Properties.NameWidthCache - local lastCategory - local count = 1 - local maxWidth,maxDepth = 0,1 - - local textServ = service.TextService - local getTextSize = textServ.GetTextSize - local font = Enum.Font.SourceSans - local size = Vector2.new(math.huge,20) - local stringSplit = string.split - local entryIndent = Properties.EntryIndent - local isFirstScaleType = Settings.Properties.ScaleType == 0 - local find,lower = string.find,string.lower - local searchText = (#Properties.SearchText > 0 and lower(Properties.SearchText)) - - local function recur(props,depth) - for i = 1,#props do - local prop = props[i] - local propName = prop.Name - local subName = prop.SubName - local category = prop.Category - - local visible - if searchText and depth == 1 then - if find(lower(propName),searchText,1,true) then - visible = true - end - else - visible = true - end - - if visible and lastCategory ~= category then - viewList[count] = {CategoryName = category} - count = count + 1 - lastCategory = category - end - - if (expanded["CAT_"..category] and visible) or prop.SpecialRow then - if depth > 1 then prop.Depth = depth if depth > maxDepth then maxDepth = depth end end - - if isFirstScaleType then - local nameArr = subName and stringSplit(subName,".") - local displayName = prop.DisplayName or (nameArr and nameArr[#nameArr]) or propName - - local nameWidth = nameWidthCache[displayName] - if not nameWidth then nameWidth = getTextSize(textServ,displayName,14,font,size).X nameWidthCache[displayName] = nameWidth end - - local totalWidth = nameWidth + entryIndent*depth - if totalWidth > maxWidth then - maxWidth = totalWidth - end - end - - viewList[count] = prop - count = count + 1 - - local fullName = prop.Class.."."..prop.Name..(prop.SubName or "") - if expanded[fullName] then - local nextDepth = depth+1 - local expandedProps = Properties.GetExpandedProps(prop) - if #expandedProps > 0 then - recur(expandedProps,nextDepth) - end - end - end - end - end - recur(props,1) - - inputProp = nil - Properties.ViewWidth = maxWidth + 9 + Properties.EntryOffset - Properties.UpdateView() - end - - Properties.NewPropEntry = function(index) - local newEntry = Properties.EntryTemplate:Clone() - local nameFrame = newEntry.NameFrame - local valueFrame = newEntry.ValueFrame - local newCheckbox = Lib.Checkbox.new(0) - newCheckbox.Gui.Position = UDim2.new(0,3,0,3) - newCheckbox.Gui.Parent = valueFrame - newCheckbox.OnInput:Connect(function() - local prop = viewList[index + Properties.Index] - if not prop then return end - - if prop.ValueType.Name == "PhysicalProperties" then - Properties.SetProp(prop,newCheckbox.Toggled and true or nil) - else - Properties.SetProp(prop,newCheckbox.Toggled) - end - end) - checkboxes[index] = newCheckbox - - local iconFrame = Main.MiscIcons:GetLabel() - iconFrame.Position = UDim2.new(0,2,0,3) - iconFrame.Parent = newEntry.ValueFrame.RightButton - - newEntry.Position = UDim2.new(0,0,0,23*(index-1)) - - nameFrame.Expand.InputBegan:Connect(function(input) - local prop = viewList[index + Properties.Index] - if not prop or input.UserInputType ~= Enum.UserInputType.MouseMovement then return end - - local fullName = (prop.CategoryName and "CAT_"..prop.CategoryName) or prop.Class.."."..prop.Name..(prop.SubName or "") - - Main.MiscIcons:DisplayByKey(newEntry.NameFrame.Expand.Icon, expanded[fullName] and "Collapse_Over" or "Expand_Over") - end) - - nameFrame.Expand.InputEnded:Connect(function(input) - local prop = viewList[index + Properties.Index] - if not prop or input.UserInputType ~= Enum.UserInputType.MouseMovement then return end - - local fullName = (prop.CategoryName and "CAT_"..prop.CategoryName) or prop.Class.."."..prop.Name..(prop.SubName or "") - - Main.MiscIcons:DisplayByKey(newEntry.NameFrame.Expand.Icon, expanded[fullName] and "Collapse" or "Expand") - end) - - nameFrame.Expand.MouseButton1Down:Connect(function() - local prop = viewList[index + Properties.Index] - if not prop then return end - - local fullName = (prop.CategoryName and "CAT_"..prop.CategoryName) or prop.Class.."."..prop.Name..(prop.SubName or "") - if not prop.CategoryName and not Properties.ExpandableTypes[prop.ValueType and prop.ValueType.Name] and not Properties.ExpandableProps[fullName] then return end - - expanded[fullName] = not expanded[fullName] - Properties.Update() - Properties.Refresh() - end) - - nameFrame.PropName.InputBegan:Connect(function(input) - local prop = viewList[index + Properties.Index] - if not prop then return end - if input.UserInputType == Enum.UserInputType.MouseMovement and not nameFrame.PropName.TextFits then - local fullNameFrame = Properties.FullNameFrame - local nameArr = string.split(prop.Class.."."..prop.Name..(prop.SubName or ""),".") - local dispName = prop.DisplayName or nameArr[#nameArr] - local sizeX = service.TextService:GetTextSize(dispName,14,Enum.Font.SourceSans,Vector2.new(math.huge,20)).X - - fullNameFrame.TextLabel.Text = dispName - --fullNameFrame.Position = UDim2.new(0,Properties.EntryIndent*(prop.Depth or 1) + Properties.EntryOffset,0,23*(index-1)) - fullNameFrame.Size = UDim2.new(0,sizeX + 4,0,22) - fullNameFrame.Visible = true - Properties.FullNameFrameIndex = index - Properties.FullNameFrameAttach.SetData(fullNameFrame, {Target = nameFrame}) - Properties.FullNameFrameAttach.Enable() - end - end) - - nameFrame.PropName.InputEnded:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement and Properties.FullNameFrameIndex == index then - Properties.FullNameFrame.Visible = false - Properties.FullNameFrameAttach.Disable() - end - end) - - valueFrame.ValueBox.MouseButton1Down:Connect(function() - local prop = viewList[index + Properties.Index] - if not prop then return end - - Properties.SetInputProp(prop,index) - end) - - valueFrame.ColorButton.MouseButton1Down:Connect(function() - local prop = viewList[index + Properties.Index] - if not prop then return end - - Properties.SetInputProp(prop,index,"color") - end) - - valueFrame.RightButton.MouseButton1Click:Connect(function() - local prop = viewList[index + Properties.Index] - if not prop then return end - - local fullName = prop.Class.."."..prop.Name..(prop.SubName or "") - local inputFullName = inputProp and (inputProp.Class.."."..inputProp.Name..(inputProp.SubName or "")) - - if fullName == inputFullName and inputProp.ValueType.Category == "Class" then - inputProp = nil - Properties.SetProp(prop,nil) - else - Properties.SetInputProp(prop,index,"right") - end - end) - - nameFrame.ToggleAttributes.MouseButton1Click:Connect(function() - Settings.Properties.ShowAttributes = not Settings.Properties.ShowAttributes - Properties.ShowExplorerProps() - end) - - newEntry.RowButton.MouseButton1Click:Connect(function() - Properties.DisplayAddAttributeWindow() - end) - - newEntry.EditAttributeButton.MouseButton1Down:Connect(function() - local prop = viewList[index + Properties.Index] - if not prop then return end - - Properties.DisplayAttributeContext(prop) - end) - - valueFrame.SoundPreview.ControlButton.MouseButton1Click:Connect(function() - if Properties.PreviewSound and Properties.PreviewSound.Playing then - Properties.SetSoundPreview(false) - else - local soundObj = Properties.FindFirstObjWhichIsA("Sound") or Properties.FindFirstObjWhichIsA("AudioPlayer") - if soundObj then Properties.SetSoundPreview(soundObj) end - end - end) - - valueFrame.SoundPreview.InputBegan:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end - - local releaseEvent,mouseEvent - releaseEvent = service.UserInputService.InputEnded:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end - releaseEvent:Disconnect() - mouseEvent:Disconnect() - end) - - local timeLine = newEntry.ValueFrame.SoundPreview.TimeLine - local soundObj = Properties.FindFirstObjWhichIsA("Sound") or Properties.FindFirstObjWhichIsA("AudioPlayer") - if soundObj then Properties.SetSoundPreview(soundObj,true) end - - local function update(input) - local sound = Properties.PreviewSound - if not sound or sound.TimeLength == 0 then return end - - local mouseX = input.Position.X - local timeLineSize = timeLine.AbsoluteSize - local relaX = mouseX - timeLine.AbsolutePosition.X - - if timeLineSize.X <= 1 then return end - if relaX < 0 then relaX = 0 elseif relaX >= timeLineSize.X then relaX = timeLineSize.X-1 end - - local perc = (relaX/(timeLineSize.X-1)) - sound.TimePosition = perc*sound.TimeLength - timeLine.Slider.Position = UDim2.new(perc,-4,0,-8) - end - update(input) - - mouseEvent = service.UserInputService.InputChanged:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement then - update(input) - end - end) - end) - - newEntry.Parent = propsFrame - - return { - Gui = newEntry, - GuiElems = { - NameFrame = nameFrame, - ValueFrame = valueFrame, - PropName = nameFrame.PropName, - ValueBox = valueFrame.ValueBox, - Expand = nameFrame.Expand, - ColorButton = valueFrame.ColorButton, - ColorPreview = valueFrame.ColorButton.ColorPreview, - Gradient = valueFrame.ColorButton.ColorPreview.UIGradient, - EnumArrow = valueFrame.EnumArrow, - Checkbox = valueFrame.Checkbox, - RightButton = valueFrame.RightButton, - RightButtonIcon = iconFrame, - RowButton = newEntry.RowButton, - EditAttributeButton = newEntry.EditAttributeButton, - ToggleAttributes = nameFrame.ToggleAttributes, - SoundPreview = valueFrame.SoundPreview, - SoundPreviewSlider = valueFrame.SoundPreview.TimeLine.Slider - } - } - end - - Properties.GetSoundPreviewEntry = function() - for i = 1, #viewList do - local p = viewList[i] - if type(p) == "table" and p.IsSoundPreview then - return propEntries[i - Properties.Index] - end - end - end - - - Properties.SetSoundPreview = function(soundObj:Sound?,noplay:boolean) - local sound = Properties.PreviewSound - if not sound then - sound = Instance.new("Sound") - sound.Name = "Preview" - sound.Paused:Connect(function() - local entry = Properties.GetSoundPreviewEntry() - if entry then Main.MiscIcons:DisplayByKey(entry.GuiElems.SoundPreview.ControlButton.Icon, "Play") end - end) - sound.Resumed:Connect(function() Properties.Refresh() end) - sound.Ended:Connect(function() - local entry = Properties.GetSoundPreviewEntry() - if entry then entry.GuiElems.SoundPreviewSlider.Position = UDim2.new(0,-4,0,-8) end - Properties.Refresh() - end) - sound.Parent = window.Gui - Properties.PreviewSound = sound - end - - if not soundObj then - sound:Pause() - for i,v in pairs(sound:GetChildren()) do - v:Destroy() - end - else - local newId - if soundObj:IsA("Sound") then - newId = sound.SoundId ~= soundObj.SoundId - sound.SoundId = soundObj.SoundId - sound.PlaybackSpeed = soundObj.PlaybackSpeed - sound.Volume = soundObj.Volume - elseif soundObj:IsA("AudioPlayer") then - newId = sound.SoundId ~= soundObj.Asset - sound.SoundId = soundObj.Asset - if soundObj:FindFirstChild("PlaybackSpeed") then - sound.PlaybackSpeed = soundObj.PlaybackSpeed - end - if soundObj:FindFirstChild("Volume") then - sound.Volume = soundObj.Volume - end - else - return - end - if newId then - for _,v in ipairs(sound:GetChildren()) do v:Destroy() end - sound.TimePosition = 0 - end - for _,v in ipairs(soundObj:GetChildren()) do - v:Clone().Parent = sound - end - if not noplay then sound:Resume() end - task.spawn(function() - local previewTime = tick() - Properties.SoundPreviewTime = previewTime - while previewTime == Properties.SoundPreviewTime and sound.Playing do - local entry = Properties.GetSoundPreviewEntry() - if entry then - local tl = sound.TimeLength - local perc = sound.TimePosition/(tl == 0 and 1 or tl) - entry.GuiElems.SoundPreviewSlider.Position = UDim2.new(perc,-4,0,-8) - end - Lib.FastWait() - end - end) - Properties.Refresh() - end - end - - Properties.DisplayAttributeContext = function(prop) - local context = Properties.AttributeContext - if not context then - context = Lib.ContextMenu.new() - context.Iconless = true - context.Width = 80 - end - context:Clear() - - context:Add({Name = "Edit", OnClick = function() - Properties.DisplayAddAttributeWindow(prop) - end}) - context:Add({Name = "Delete", OnClick = function() - Properties.SetProp(prop,nil,true) - Properties.ShowExplorerProps() - end}) - - context:Show() - end - - Properties.DisplayAddAttributeWindow = function(editAttr) - local win = Properties.AddAttributeWindow - if not win then - win = Lib.Window.new() - win.Alignable = false - win.Resizable = false - win:SetTitle("Add Attribute") - win:SetSize(200,130) - - local saveButton = Lib.Button.new() - local nameLabel = Lib.Label.new() - nameLabel.Text = "Name" - nameLabel.Position = UDim2.new(0,30,0,10) - nameLabel.Size = UDim2.new(0,40,0,20) - win:Add(nameLabel) - - local nameBox = Lib.ViewportTextBox.new() - nameBox.Position = UDim2.new(0,75,0,10) - nameBox.Size = UDim2.new(0,120,0,20) - win:Add(nameBox,"NameBox") - nameBox.TextBox:GetPropertyChangedSignal("Text"):Connect(function() - saveButton:SetDisabled(#nameBox:GetText() == 0) - end) - - local typeLabel = Lib.Label.new() - typeLabel.Text = "Type" - typeLabel.Position = UDim2.new(0,30,0,40) - typeLabel.Size = UDim2.new(0,40,0,20) - win:Add(typeLabel) - - local typeChooser = Lib.DropDown.new() - typeChooser.CanBeEmpty = false - typeChooser.Position = UDim2.new(0,75,0,40) - typeChooser.Size = UDim2.new(0,120,0,20) - typeChooser:SetOptions(Properties.AllowedAttributeTypes) - win:Add(typeChooser,"TypeChooser") - - local errorLabel = Lib.Label.new() - errorLabel.Text = "" - errorLabel.Position = UDim2.new(0,5,1,-45) - errorLabel.Size = UDim2.new(1,-10,0,20) - errorLabel.TextColor3 = Settings.Theme.Important - win.ErrorLabel = errorLabel - win:Add(errorLabel,"Error") - - local cancelButton = Lib.Button.new() - cancelButton.Text = "Cancel" - cancelButton.Position = UDim2.new(1,-97,1,-25) - cancelButton.Size = UDim2.new(0,92,0,20) - cancelButton.OnClick:Connect(function() - win:Close() - end) - win:Add(cancelButton) - - saveButton.Text = "Save" - saveButton.Position = UDim2.new(0,5,1,-25) - saveButton.Size = UDim2.new(0,92,0,20) - saveButton.OnClick:Connect(function() - local name = nameBox:GetText() - if #name > 100 then - errorLabel.Text = "Error: Name over 100 chars" - return - elseif name:sub(1,3) == "RBX" then - errorLabel.Text = "Error: Name begins with 'RBX'" - return - end - - local typ = typeChooser.Selected - local valType = {Name = Properties.TypeNameConvert[typ] or typ, Category = "DataType"} - local attrProp = {IsAttribute = true, Name = "ATTR_"..name, AttributeName = name, DisplayName = name, Class = "Instance", ValueType = valType, Category = "Attributes", Tags = {}} - - Settings.Properties.ShowAttributes = true - Properties.SetProp(attrProp,Properties.DefaultPropValue[valType.Name],true,Properties.EditingAttribute) - Properties.ShowExplorerProps() - win:Close() - end) - win:Add(saveButton,"SaveButton") - - Properties.AddAttributeWindow = win - end - - Properties.EditingAttribute = editAttr - win:SetTitle(editAttr and "Edit Attribute "..editAttr.AttributeName or "Add Attribute") - win.Elements.Error.Text = "" - win.Elements.NameBox:SetText("") - win.Elements.SaveButton:SetDisabled(true) - win.Elements.TypeChooser:SetSelected(1) - win:Show() - end - - Properties.IsTextEditable = function(prop) - local typeData = prop.ValueType - local typeName = typeData.Name - - return typeName ~= "bool" and typeData.Category ~= "Enum" and typeData.Category ~= "Class" and typeName ~= "BrickColor" - end - - Properties.DisplayEnumDropdown = function(entryIndex) - local context = Properties.EnumContext - if not context then - context = Lib.ContextMenu.new() - context.Iconless = true - context.MaxHeight = 200 - context.ReverseYOffset = 22 - Properties.EnumDropdown = context - end - - if not inputProp or inputProp.ValueType.Category ~= "Enum" then return end - local prop = inputProp - - local entry = propEntries[entryIndex] - local valueFrame = entry.GuiElems.ValueFrame - - local enum = Enum[prop.ValueType.Name] - if not enum then return end - - local sorted = {} - for name,enum in next,enum:GetEnumItems() do - sorted[#sorted+1] = enum - end - table.sort(sorted,function(a,b) return a.Name < b.Name end) - - context:Clear() - - local function onClick(name) - if prop ~= inputProp then return end - - local enumItem = enum[name] - inputProp = nil - Properties.SetProp(prop,enumItem) - end - - for i = 1,#sorted do - local enumItem = sorted[i] - context:Add({Name = enumItem.Name, OnClick = onClick}) - end - - context.Width = valueFrame.AbsoluteSize.X - context:Show(valueFrame.AbsolutePosition.X, valueFrame.AbsolutePosition.Y + 22) - end - - Properties.DisplayBrickColorEditor = function(prop,entryIndex,col) - local editor = Properties.BrickColorEditor - if not editor then - editor = Lib.BrickColorPicker.new() - editor.Gui.DisplayOrder = Main.DisplayOrders.Menu - editor.ReverseYOffset = 22 - - editor.OnSelect:Connect(function(col) - if not editor.CurrentProp or editor.CurrentProp.ValueType.Name ~= "BrickColor" then return end - - if editor.CurrentProp == inputProp then inputProp = nil end - Properties.SetProp(editor.CurrentProp,BrickColor.new(col)) - end) - - editor.OnMoreColors:Connect(function() -- TODO: Special Case BasePart.BrickColor to BasePart.Color - editor:Close() - local colProp - for i,v in pairs(API.Classes.BasePart.Properties) do - if v.Name == "Color" then - colProp = v - break - end - end - Properties.DisplayColorEditor(colProp,editor.SavedColor.Color) - end) - - Properties.BrickColorEditor = editor - end - - local entry = propEntries[entryIndex] - local valueFrame = entry.GuiElems.ValueFrame - - editor.CurrentProp = prop - editor.SavedColor = col - if prop and prop.Class == "BasePart" and prop.Name == "BrickColor" then - editor:SetMoreColorsVisible(true) - else - editor:SetMoreColorsVisible(false) - end - editor:Show(valueFrame.AbsolutePosition.X, valueFrame.AbsolutePosition.Y + 22) - end - - Properties.DisplayColorEditor = function(prop,col) - local editor = Properties.ColorEditor - if not editor then - editor = Lib.ColorPicker.new() - - editor.OnSelect:Connect(function(col) - if not editor.CurrentProp then return end - local typeName = editor.CurrentProp.ValueType.Name - if typeName ~= "Color3" and typeName ~= "BrickColor" then return end - - local colVal = (typeName == "Color3" and col or BrickColor.new(col)) - - if editor.CurrentProp == inputProp then inputProp = nil end - Properties.SetProp(editor.CurrentProp,colVal) - end) - - Properties.ColorEditor = editor - end - - editor.CurrentProp = prop - if col then - editor:SetColor(col) - else - local firstVal = Properties.GetFirstPropVal(prop) - if firstVal then editor:SetColor(firstVal) end - end - editor:Show() - end - - Properties.DisplayNumberSequenceEditor = function(prop,seq) - local editor = Properties.NumberSequenceEditor - if not editor then - editor = Lib.NumberSequenceEditor.new() - - editor.OnSelect:Connect(function(val) - if not editor.CurrentProp or editor.CurrentProp.ValueType.Name ~= "NumberSequence" then return end - - if editor.CurrentProp == inputProp then inputProp = nil end - Properties.SetProp(editor.CurrentProp,val) - end) - - Properties.NumberSequenceEditor = editor - end - - editor.CurrentProp = prop - if seq then - editor:SetSequence(seq) - else - local firstVal = Properties.GetFirstPropVal(prop) - if firstVal then editor:SetSequence(firstVal) end - end - editor:Show() - end - - Properties.DisplayColorSequenceEditor = function(prop,seq) - local editor = Properties.ColorSequenceEditor - if not editor then - editor = Lib.ColorSequenceEditor.new() - - editor.OnSelect:Connect(function(val) - if not editor.CurrentProp or editor.CurrentProp.ValueType.Name ~= "ColorSequence" then return end - - if editor.CurrentProp == inputProp then inputProp = nil end - Properties.SetProp(editor.CurrentProp,val) - end) - - Properties.ColorSequenceEditor = editor - end - - editor.CurrentProp = prop - if seq then - editor:SetSequence(seq) - else - local firstVal = Properties.GetFirstPropVal(prop) - if firstVal then editor:SetSequence(firstVal) end - end - editor:Show() - end - - Properties.GetFirstPropVal = function(prop) - local first = Properties.FindFirstObjWhichIsA(prop.Class) - if first then - return Properties.GetPropVal(prop,first) - end - end - - Properties.GetPropVal = function(prop,obj) - if prop.MultiType then return "" end - if not obj then return end - - local propVal - if prop.IsAttribute then - propVal = getAttribute(obj,prop.AttributeName) - if propVal == nil then return nil end - - local typ = typeof(propVal) - local currentType = Properties.TypeNameConvert[typ] or typ - if prop.RootType then - if prop.RootType.Name ~= currentType then - return nil - end - elseif prop.ValueType.Name ~= currentType then - return nil - end - else - propVal = obj[prop.Name] - end - if prop.SubName then - local indexes = string.split(prop.SubName,".") - for i = 1,#indexes do - local indexName = indexes[i] - if #indexName > 0 and propVal then - propVal = propVal[indexName] - end - end - end - - return propVal - end - - Properties.SelectObject = function(obj) - if inputProp and inputProp.ValueType.Category == "Class" then - local prop = inputProp - inputProp = nil - - if isa(obj,prop.ValueType.Name) then - Properties.SetProp(prop,obj) - else - Properties.Refresh() - end - - return true - end - - return false - end - - Properties.DisplayProp = function(prop,entryIndex) - local propName = prop.Name - local typeData = prop.ValueType - local typeName = typeData.Name - local tags = prop.Tags - local gName = prop.Class.."."..prop.Name..(prop.SubName or "") - local propObj = autoUpdateObjs[gName] - local entryData = propEntries[entryIndex] - local UDim2 = UDim2 - - local guiElems = entryData.GuiElems - local valueFrame = guiElems.ValueFrame - local valueBox = guiElems.ValueBox - local colorButton = guiElems.ColorButton - local colorPreview = guiElems.ColorPreview - local gradient = guiElems.Gradient - local enumArrow = guiElems.EnumArrow - local checkbox = guiElems.Checkbox - local rightButton = guiElems.RightButton - local soundPreview = guiElems.SoundPreview - - local propVal = Properties.GetPropVal(prop,propObj) - local inputFullName = inputProp and (inputProp.Class.."."..inputProp.Name..(inputProp.SubName or "")) - - local offset = 4 - local endOffset = 6 - - -- Offsetting the ValueBox for ValueType specific buttons - if (typeName == "Color3" or typeName == "BrickColor" or typeName == "ColorSequence") then - colorButton.Visible = true - enumArrow.Visible = false - if propVal then - gradient.Color = (typeName == "Color3" and ColorSequence.new(propVal)) or (typeName == "BrickColor" and ColorSequence.new(propVal.Color)) or propVal - else - gradient.Color = ColorSequence.new(Color3.new(1,1,1)) - end - colorPreview.BorderColor3 = (typeName == "ColorSequence" and Color3.new(1,1,1) or Color3.new(0,0,0)) - offset = 22 - endOffset = 24 + (typeName == "ColorSequence" and 20 or 0) - elseif typeData.Category == "Enum" then - colorButton.Visible = false - enumArrow.Visible = not prop.Tags.ReadOnly - endOffset = 22 - elseif (gName == inputFullName and typeData.Category == "Class") or typeName == "NumberSequence" then - colorButton.Visible = false - enumArrow.Visible = false - endOffset = 26 - else - colorButton.Visible = false - enumArrow.Visible = false - end - - valueBox.Position = UDim2.new(0,offset,0,0) - valueBox.Size = UDim2.new(1,-endOffset,1,0) - - -- Right button - if inputFullName == gName and typeData.Category == "Class" then - Main.MiscIcons:DisplayByKey(guiElems.RightButtonIcon, "Delete") - guiElems.RightButtonIcon.Visible = true - rightButton.Text = "" - rightButton.Visible = true - elseif typeName == "NumberSequence" or typeName == "ColorSequence" then - guiElems.RightButtonIcon.Visible = false - rightButton.Text = "..." - rightButton.Visible = true - else - rightButton.Visible = false - end - - -- Displays the correct ValueBox for the ValueType, and sets it to the prop value - if typeName == "bool" or typeName == "PhysicalProperties" then - valueBox.Visible = false - checkbox.Visible = true - soundPreview.Visible = false - checkboxes[entryIndex].Disabled = tags.ReadOnly - if typeName == "PhysicalProperties" and autoUpdateObjs[gName] then - checkboxes[entryIndex]:SetState(propVal and true or false) - else - checkboxes[entryIndex]:SetState(propVal) - end - elseif typeName == "SoundPlayer" then - valueBox.Visible = false - checkbox.Visible = false - soundPreview.Visible = true - local playing = Properties.PreviewSound and Properties.PreviewSound.Playing - Main.MiscIcons:DisplayByKey(soundPreview.ControlButton.Icon, playing and "Pause" or "Play") - else - valueBox.Visible = true - checkbox.Visible = false - soundPreview.Visible = false - - if propVal ~= nil then - if typeName == "Color3" then - valueBox.Text = "["..Lib.ColorToBytes(propVal).."]" - elseif typeData.Category == "Enum" then - valueBox.Text = propVal.Name - elseif Properties.RoundableTypes[typeName] and Settings.Properties.NumberRounding then - local rawStr = Properties.ValueToString(prop,propVal) - valueBox.Text = rawStr:gsub("-?%d+%.%d+",function(num) - return tostring(tonumber(("%."..Settings.Properties.NumberRounding.."f"):format(num))) - end) - else - valueBox.Text = Properties.ValueToString(prop,propVal) - end - else - valueBox.Text = "" - end - - valueBox.TextColor3 = tags.ReadOnly and Settings.Theme.PlaceholderText or Settings.Theme.Text - end - end - - Properties.Refresh = function() - local maxEntries = math.max(math.ceil((propsFrame.AbsoluteSize.Y) / 23),0) - local maxX = propsFrame.AbsoluteSize.X - local valueWidth = math.max(Properties.MinInputWidth,maxX-Properties.ViewWidth) - local inputPropVisible = false - local isa = game.IsA - local UDim2 = UDim2 - local stringSplit = string.split - local scaleType = Settings.Properties.ScaleType - - -- Clear connections - for i = 1,#propCons do - propCons[i]:Disconnect() - end - table.clear(propCons) - - -- Hide full name viewer - Properties.FullNameFrame.Visible = false - Properties.FullNameFrameAttach.Disable() - - for i = 1,maxEntries do - local entryData = propEntries[i] - if not propEntries[i] then entryData = Properties.NewPropEntry(i) propEntries[i] = entryData end - - local entry = entryData.Gui - local guiElems = entryData.GuiElems - local nameFrame = guiElems.NameFrame - local propNameLabel = guiElems.PropName - local valueFrame = guiElems.ValueFrame - local expand = guiElems.Expand - local valueBox = guiElems.ValueBox - local propNameBox = guiElems.PropName - local rightButton = guiElems.RightButton - local editAttributeButton = guiElems.EditAttributeButton - local toggleAttributes = guiElems.ToggleAttributes - - local prop = viewList[i + Properties.Index] - if prop then - local entryXOffset = (scaleType == 0 and scrollH.Index or 0) - entry.Visible = true - entry.Position = UDim2.new(0,-entryXOffset,0,entry.Position.Y.Offset) - entry.Size = UDim2.new(scaleType == 0 and 0 or 1, scaleType == 0 and Properties.ViewWidth + valueWidth or 0,0,22) - - if prop.SpecialRow then - if prop.SpecialRow == "AddAttribute" then - nameFrame.Visible = false - valueFrame.Visible = false - guiElems.RowButton.Visible = true - end - else - -- Revert special row stuff - nameFrame.Visible = true - guiElems.RowButton.Visible = false - - local depth = Properties.EntryIndent*(prop.Depth or 1) - local leftOffset = depth + Properties.EntryOffset - nameFrame.Position = UDim2.new(0,leftOffset,0,0) - propNameLabel.Size = UDim2.new(1,-2 - (scaleType == 0 and 0 or 6),1,0) - - local gName = (prop.CategoryName and "CAT_"..prop.CategoryName) or prop.Class.."."..prop.Name..(prop.SubName or "") - - if prop.CategoryName then - entry.BackgroundColor3 = Settings.Theme.Main1 - valueFrame.Visible = false - - propNameBox.Text = prop.CategoryName - propNameBox.Font = Enum.Font.SourceSansBold - expand.Visible = true - propNameBox.TextColor3 = Settings.Theme.Text - nameFrame.BackgroundTransparency = 1 - nameFrame.Size = UDim2.new(1,0,1,0) - editAttributeButton.Visible = false - - local showingAttrs = Settings.Properties.ShowAttributes - toggleAttributes.Position = UDim2.new(1,-85-leftOffset,0,0) - toggleAttributes.Text = (showingAttrs and "[Setting: ON]" or "[Setting: OFF]") - toggleAttributes.TextColor3 = Settings.Theme.Text - toggleAttributes.Visible = (prop.CategoryName == "Attributes") - else - local propName = prop.Name - local typeData = prop.ValueType - local typeName = typeData.Name - local tags = prop.Tags - local propObj = autoUpdateObjs[gName] - - local attributeOffset = (prop.IsAttribute and 20 or 0) - editAttributeButton.Visible = (prop.IsAttribute and not prop.RootType) - toggleAttributes.Visible = false - - -- Moving around the frames - if scaleType == 0 then - nameFrame.Size = UDim2.new(0,Properties.ViewWidth - leftOffset - 1,1,0) - valueFrame.Position = UDim2.new(0,Properties.ViewWidth,0,0) - valueFrame.Size = UDim2.new(0,valueWidth - attributeOffset,1,0) - else - nameFrame.Size = UDim2.new(0.5,-leftOffset - 1,1,0) - valueFrame.Position = UDim2.new(0.5,0,0,0) - valueFrame.Size = UDim2.new(0.5,-attributeOffset,1,0) - end - - local nameArr = stringSplit(gName,".") - propNameBox.Text = prop.DisplayName or nameArr[#nameArr] - propNameBox.Font = Enum.Font.SourceSans - entry.BackgroundColor3 = Settings.Theme.Main2 - valueFrame.Visible = true - - expand.Visible = typeData.Category == "DataType" and Properties.ExpandableTypes[typeName] or Properties.ExpandableProps[gName] - propNameBox.TextColor3 = tags.ReadOnly and Settings.Theme.PlaceholderText or Settings.Theme.Text - - -- Display property value - Properties.DisplayProp(prop,i) - if propObj then - if prop.IsAttribute then - propCons[#propCons+1] = getAttributeChangedSignal(propObj,prop.AttributeName):Connect(function() - Properties.DisplayProp(prop,i) - end) - else - propCons[#propCons+1] = getPropChangedSignal(propObj,propName):Connect(function() - Properties.DisplayProp(prop,i) - end) - end - end - - -- Position and resize Input Box - local beforeVisible = valueBox.Visible - local inputFullName = inputProp and (inputProp.Class.."."..inputProp.Name..(inputProp.SubName or "")) - if gName == inputFullName then - nameFrame.BackgroundColor3 = Settings.Theme.ListSelection - nameFrame.BackgroundTransparency = 0 - if typeData.Category == "Class" or typeData.Category == "Enum" or typeName == "BrickColor" then - valueFrame.BackgroundColor3 = Settings.Theme.TextBox - valueFrame.BackgroundTransparency = 0 - valueBox.Visible = true - else - inputPropVisible = true - local scale = (scaleType == 0 and 0 or 0.5) - local offset = (scaleType == 0 and Properties.ViewWidth-scrollH.Index or 0) - local endOffset = 0 - - if typeName == "Color3" or typeName == "ColorSequence" then - offset = offset + 22 - end - - if typeName == "NumberSequence" or typeName == "ColorSequence" then - endOffset = 20 - end - - inputBox.Position = UDim2.new(scale,offset,0,entry.Position.Y.Offset) - inputBox.Size = UDim2.new(1-scale,-offset-endOffset-attributeOffset,0,22) - inputBox.Visible = true - valueBox.Visible = false - end - else - nameFrame.BackgroundColor3 = Settings.Theme.Main1 - nameFrame.BackgroundTransparency = 1 - valueFrame.BackgroundColor3 = Settings.Theme.Main1 - valueFrame.BackgroundTransparency = 1 - valueBox.Visible = beforeVisible - end - end - - -- Expand - if prop.CategoryName or Properties.ExpandableTypes[prop.ValueType and prop.ValueType.Name] or Properties.ExpandableProps[gName] then - if Lib.CheckMouseInGui(expand) then - Main.MiscIcons:DisplayByKey(expand.Icon, expanded[gName] and "Collapse_Over" or "Expand_Over") - else - Main.MiscIcons:DisplayByKey(expand.Icon, expanded[gName] and "Collapse" or "Expand") - end - expand.Visible = true - else - expand.Visible = false - end - end - entry.Visible = true - else - entry.Visible = false - end - end - - if not inputPropVisible then - inputBox.Visible = false - end - - for i = maxEntries+1,#propEntries do - propEntries[i].Gui:Destroy() - propEntries[i] = nil - checkboxes[i] = nil - end - end - - Properties.SetProp = function(prop,val,noupdate,prevAttribute) - local sList = Explorer.Selection.List - local propName = prop.Name - local subName = prop.SubName - local propClass = prop.Class - local typeData = prop.ValueType - local typeName = typeData.Name - local attributeName = prop.AttributeName - local rootTypeData = prop.RootType - local rootTypeName = rootTypeData and rootTypeData.Name - local fullName = prop.Class.."."..prop.Name..(prop.SubName or "") - local Vector3 = Vector3 - - for i = 1,#sList do - local node = sList[i] - local obj = node.Obj - - if isa(obj,propClass) then - pcall(function() - local setVal = val - local root - if prop.IsAttribute then - root = getAttribute(obj,attributeName) - else - root = obj[propName] - end - - if prevAttribute then - if prevAttribute.ValueType.Name == typeName then - setVal = getAttribute(obj,prevAttribute.AttributeName) or setVal - end - setAttribute(obj,prevAttribute.AttributeName,nil) - - -- ADONIS - Dex_RemoteFunction:InvokeServer("SetPropertyAttribute", obj, attributeName, setVal) - end - - if rootTypeName then - if rootTypeName == "Vector2" then - setVal = Vector2.new((subName == ".X" and setVal) or root.X, (subName == ".Y" and setVal) or root.Y) - elseif rootTypeName == "Vector3" then - setVal = Vector3.new((subName == ".X" and setVal) or root.X, (subName == ".Y" and setVal) or root.Y, (subName == ".Z" and setVal) or root.Z) - elseif rootTypeName == "UDim" then - setVal = UDim.new((subName == ".Scale" and setVal) or root.Scale, (subName == ".Offset" and setVal) or root.Offset) - elseif rootTypeName == "UDim2" then - local rootX,rootY = root.X,root.Y - local X_UDim = (subName == ".X" and setVal) or UDim.new((subName == ".X.Scale" and setVal) or rootX.Scale, (subName == ".X.Offset" and setVal) or rootX.Offset) - local Y_UDim = (subName == ".Y" and setVal) or UDim.new((subName == ".Y.Scale" and setVal) or rootY.Scale, (subName == ".Y.Offset" and setVal) or rootY.Offset) - setVal = UDim2.new(X_UDim,Y_UDim) - elseif rootTypeName == "CFrame" then - local rootPos,rootRight,rootUp,rootLook = root.Position,root.RightVector,root.UpVector,root.LookVector - local pos = (subName == ".Position" and setVal) or Vector3.new((subName == ".Position.X" and setVal) or rootPos.X, (subName == ".Position.Y" and setVal) or rootPos.Y, (subName == ".Position.Z" and setVal) or rootPos.Z) - local rightV = (subName == ".RightVector" and setVal) or Vector3.new((subName == ".RightVector.X" and setVal) or rootRight.X, (subName == ".RightVector.Y" and setVal) or rootRight.Y, (subName == ".RightVector.Z" and setVal) or rootRight.Z) - local upV = (subName == ".UpVector" and setVal) or Vector3.new((subName == ".UpVector.X" and setVal) or rootUp.X, (subName == ".UpVector.Y" and setVal) or rootUp.Y, (subName == ".UpVector.Z" and setVal) or rootUp.Z) - local lookV = (subName == ".LookVector" and setVal) or Vector3.new((subName == ".LookVector.X" and setVal) or rootLook.X, (subName == ".RightVector.Y" and setVal) or rootLook.Y, (subName == ".RightVector.Z" and setVal) or rootLook.Z) - setVal = CFrame.fromMatrix(pos,rightV,upV,-lookV) - elseif rootTypeName == "Rect" then - local rootMin,rootMax = root.Min,root.Max - local min = Vector2.new((subName == ".Min.X" and setVal) or rootMin.X, (subName == ".Min.Y" and setVal) or rootMin.Y) - local max = Vector2.new((subName == ".Max.X" and setVal) or rootMax.X, (subName == ".Max.Y" and setVal) or rootMax.Y) - setVal = Rect.new(min,max) - elseif rootTypeName == "PhysicalProperties" then - local rootProps = PhysicalProperties.new(obj.Material) - local density = (subName == ".Density" and setVal) or (root and root.Density) or rootProps.Density - local friction = (subName == ".Friction" and setVal) or (root and root.Friction) or rootProps.Friction - local elasticity = (subName == ".Elasticity" and setVal) or (root and root.Elasticity) or rootProps.Elasticity - local frictionWeight = (subName == ".FrictionWeight" and setVal) or (root and root.FrictionWeight) or rootProps.FrictionWeight - local elasticityWeight = (subName == ".ElasticityWeight" and setVal) or (root and root.ElasticityWeight) or rootProps.ElasticityWeight - setVal = PhysicalProperties.new(density,friction,elasticity,frictionWeight,elasticityWeight) - elseif rootTypeName == "Ray" then - local rootOrigin,rootDirection = root.Origin,root.Direction - local origin = (subName == ".Origin" and setVal) or Vector3.new((subName == ".Origin.X" and setVal) or rootOrigin.X, (subName == ".Origin.Y" and setVal) or rootOrigin.Y, (subName == ".Origin.Z" and setVal) or rootOrigin.Z) - local direction = (subName == ".Direction" and setVal) or Vector3.new((subName == ".Direction.X" and setVal) or rootDirection.X, (subName == ".Direction.Y" and setVal) or rootDirection.Y, (subName == ".Direction.Z" and setVal) or rootDirection.Z) - setVal = Ray.new(origin,direction) - elseif rootTypeName == "Faces" then - local faces = {} - local faceList = {"Back","Bottom","Front","Left","Right","Top"} - for _,face in pairs(faceList) do - local val - if subName == "."..face then - val = setVal - else - val = root[face] - end - if val then faces[#faces+1] = Enum.NormalId[face] end - end - setVal = Faces.new(unpack(faces)) - elseif rootTypeName == "Axes" then - local axes = {} - local axesList = {"X","Y","Z"} - for _,axe in pairs(axesList) do - local val - if subName == "."..axe then - val = setVal - else - val = root[axe] - end - if val then axes[#axes+1] = Enum.Axis[axe] end - end - setVal = Axes.new(unpack(axes)) - elseif rootTypeName == "NumberRange" then - setVal = NumberRange.new(subName == ".Min" and setVal or root.Min, subName == ".Max" and setVal or root.Max) - end - end - - if typeName == "PhysicalProperties" and setVal then - setVal = root or PhysicalProperties.new(obj.Material) - end - - if prop.IsAttribute then - setAttribute(obj,attributeName,setVal) - - -- ADONIS - Dex_RemoteFunction:InvokeServer("SetPropertyAttribute", obj, attributeName, setVal) - else - obj[propName] = setVal - - -- ADONIS - Dex_RemoteFunction:InvokeServer("SetProperty", obj, propName, setVal) - end - end) - end - end - - if not noupdate then - Properties.ComputeConflicts(prop) - end - end - - Properties.InitInputBox = function() - inputBox = create({ - {1,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderSizePixel=0,Name="InputBox",Size=UDim2.new(0,200,0,22),Visible=false,ZIndex=2,}}, - {2,"TextBox",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BackgroundTransparency=1,BorderColor3=Color3.new(0.062745101749897,0.51764708757401,1),BorderSizePixel=0,ClearTextOnFocus=false,Font=3,Parent={1},PlaceholderColor3=Color3.new(0.69803923368454,0.69803923368454,0.69803923368454),Position=UDim2.new(0,3,0,0),Size=UDim2.new(1,-6,1,0),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,TextXAlignment=0,ZIndex=2,}}, - }) - inputTextBox = inputBox.TextBox - inputBox.BackgroundColor3 = Settings.Theme.TextBox - inputBox.Parent = Properties.Window.GuiElems.Content.List - - inputTextBox.FocusLost:Connect(function() - if not inputProp then return end - - local prop = inputProp - inputProp = nil - local val = Properties.StringToValue(prop,inputTextBox.Text) - if val then Properties.SetProp(prop,val) else Properties.Refresh() end - end) - - inputTextBox.Focused:Connect(function() - inputTextBox.SelectionStart = 1 - inputTextBox.CursorPosition = #inputTextBox.Text + 1 - end) - - Lib.ViewportTextBox.convert(inputTextBox) - end - - Properties.SetInputProp = function(prop,entryIndex,special) - local typeData = prop.ValueType - local typeName = typeData.Name - local fullName = prop.Class.."."..prop.Name..(prop.SubName or "") - local propObj = autoUpdateObjs[fullName] - local propVal = Properties.GetPropVal(prop,propObj) - - if prop.Tags.ReadOnly then return end - - inputProp = prop - if special then - if special == "color" then - if typeName == "Color3" then - inputTextBox.Text = propVal and Properties.ValueToString(prop,propVal) or "" - Properties.DisplayColorEditor(prop,propVal) - elseif typeName == "BrickColor" then - Properties.DisplayBrickColorEditor(prop,entryIndex,propVal) - elseif typeName == "ColorSequence" then - inputTextBox.Text = propVal and Properties.ValueToString(prop,propVal) or "" - Properties.DisplayColorSequenceEditor(prop,propVal) - end - elseif special == "right" then - if typeName == "NumberSequence" then - inputTextBox.Text = propVal and Properties.ValueToString(prop,propVal) or "" - Properties.DisplayNumberSequenceEditor(prop,propVal) - elseif typeName == "ColorSequence" then - inputTextBox.Text = propVal and Properties.ValueToString(prop,propVal) or "" - Properties.DisplayColorSequenceEditor(prop,propVal) - end - end - else - if Properties.IsTextEditable(prop) then - -- TODO: A setting maybe. - --inputTextBox.Text = propVal and Properties.ValueToString(prop,propVal) or "" - local rawStr = propVal and Properties.ValueToString(prop,propVal) or "" - inputTextBox.Text = rawStr:gsub("-?%d+%.%d+",function(num) - return tostring(tonumber(("%."..Settings.Properties.NumberRounding.."f"):format(num))) - end) - inputTextBox:CaptureFocus() - elseif typeData.Category == "Enum" then - Properties.DisplayEnumDropdown(entryIndex) - elseif typeName == "BrickColor" then - Properties.DisplayBrickColorEditor(prop,entryIndex,propVal) - end - end - Properties.Refresh() - end - - Properties.InitSearch = function() - local searchBox = Properties.GuiElems.ToolBar.SearchFrame.SearchBox - - Lib.ViewportTextBox.convert(searchBox) - - searchBox:GetPropertyChangedSignal("Text"):Connect(function() - Properties.SearchText = searchBox.Text - Properties.Update() - Properties.Refresh() - end) - end - - Properties.InitEntryStuff = function() - Properties.EntryTemplate = create({ - {1,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BackgroundTransparency=0.2,BorderColor3=Color3.new(0.1294117718935,0.1294117718935,0.1294117718935),Font=3,Name="Entry",Position=UDim2.new(0,1,0,1),Size=UDim2.new(0,250,0,22),Text="",TextSize=14,}}, - {2,"Frame",{BackgroundColor3=Color3.new(0.04313725605607,0.35294118523598,0.68627452850342),BackgroundTransparency=1,BorderColor3=Color3.new(0.33725491166115,0.49019610881805,0.73725491762161),BorderSizePixel=0,Name="NameFrame",Parent={1},Position=UDim2.new(0,20,0,0),Size=UDim2.new(1,-40,1,0),}}, - {3,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="PropName",Parent={2},Position=UDim2.new(0,2,0,0),Size=UDim2.new(1,-2,1,0),Text="Anchored",TextColor3=Color3.new(1,1,1),TextSize=14,TextTransparency=0.10000000149012,TextTruncate=1,TextXAlignment=0,}}, - {4,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,ClipsDescendants=true,Font=3,Name="Expand",Parent={2},Position=UDim2.new(0,-20,0,1),Size=UDim2.new(0,20,0,20),Text="",TextSize=14,Visible=false,}}, - {5,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://5642383285",ImageRectOffset=Vector2.new(144,16),ImageRectSize=Vector2.new(16,16),Name="Icon",Parent={4},Position=UDim2.new(0,2,0,2),ScaleType=4,Size=UDim2.new(0,16,0,16),}}, - {6,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=4,Name="ToggleAttributes",Parent={2},Position=UDim2.new(1,-85,0,0),Size=UDim2.new(0,85,0,22),Text="[SETTING: OFF]",TextColor3=Color3.new(1,1,1),TextSize=14,TextTransparency=0.10000000149012,Visible=false,}}, - {7,"Frame",{BackgroundColor3=Color3.new(0.04313725605607,0.35294118523598,0.68627452850342),BackgroundTransparency=1,BorderColor3=Color3.new(0.33725491166115,0.49019607901573,0.73725491762161),BorderSizePixel=0,Name="ValueFrame",Parent={1},Position=UDim2.new(1,-100,0,0),Size=UDim2.new(0,80,1,0),}}, - {8,"Frame",{BackgroundColor3=Color3.new(0.14117647707462,0.14117647707462,0.14117647707462),BorderColor3=Color3.new(0.33725491166115,0.49019610881805,0.73725491762161),BorderSizePixel=0,Name="Line",Parent={7},Position=UDim2.new(0,-1,0,0),Size=UDim2.new(0,1,1,0),}}, - {9,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="ColorButton",Parent={7},Size=UDim2.new(0,20,0,22),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,Visible=false,}}, - {10,"Frame",{BackgroundColor3=Color3.new(1,1,1),BorderColor3=Color3.new(0,0,0),Name="ColorPreview",Parent={9},Position=UDim2.new(0,5,0,6),Size=UDim2.new(0,10,0,10),}}, - {11,"UIGradient",{Parent={10},}}, - {12,"Frame",{BackgroundTransparency=1,Name="EnumArrow",Parent={7},Position=UDim2.new(1,-16,0,3),Size=UDim2.new(0,16,0,16),Visible=false,}}, - {13,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={12},Position=UDim2.new(0,8,0,9),Size=UDim2.new(0,1,0,1),}}, - {14,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={12},Position=UDim2.new(0,7,0,8),Size=UDim2.new(0,3,0,1),}}, - {15,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={12},Position=UDim2.new(0,6,0,7),Size=UDim2.new(0,5,0,1),}}, - {16,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="ValueBox",Parent={7},Position=UDim2.new(0,4,0,0),Size=UDim2.new(1,-8,1,0),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,TextTransparency=0.10000000149012,TextTruncate=1,TextXAlignment=0,}}, - {17,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="RightButton",Parent={7},Position=UDim2.new(1,-20,0,0),Size=UDim2.new(0,20,0,22),Text="...",TextColor3=Color3.new(1,1,1),TextSize=14,Visible=false,}}, - {18,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="SettingsButton",Parent={7},Position=UDim2.new(1,-20,0,0),Size=UDim2.new(0,20,0,22),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,Visible=false,}}, - {19,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Name="SoundPreview",Parent={7},Size=UDim2.new(1,0,1,0),Visible=false,}}, - {20,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="ControlButton",Parent={19},Size=UDim2.new(0,20,0,22),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,}}, - {21,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://5642383285",ImageRectOffset=Vector2.new(144,16),ImageRectSize=Vector2.new(16,16),Name="Icon",Parent={20},Position=UDim2.new(0,2,0,3),ScaleType=4,Size=UDim2.new(0,16,0,16),}}, - {22,"Frame",{BackgroundColor3=Color3.new(0.3137255012989,0.3137255012989,0.3137255012989),BorderSizePixel=0,Name="TimeLine",Parent={19},Position=UDim2.new(0,26,0.5,-1),Size=UDim2.new(1,-34,0,2),}}, - {23,"Frame",{BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderColor3=Color3.new(0.1294117718935,0.1294117718935,0.1294117718935),Name="Slider",Parent={22},Position=UDim2.new(0,-4,0,-8),Size=UDim2.new(0,8,0,18),}}, - {24,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="EditAttributeButton",Parent={1},Position=UDim2.new(1,-20,0,0),Size=UDim2.new(0,20,0,22),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,}}, - {25,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://5034718180",ImageTransparency=0.20000000298023,Name="Icon",Parent={24},Position=UDim2.new(0,2,0,3),Size=UDim2.new(0,16,0,16),}}, - {26,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderSizePixel=0,Font=3,Name="RowButton",Parent={1},Size=UDim2.new(1,0,1,0),Text="Add Attribute",TextColor3=Color3.new(1,1,1),TextSize=14,TextTransparency=0.10000000149012,Visible=false,}}, - }) - - local fullNameFrame = Lib.Frame.new() - local label = Lib.Label.new() - label.Parent = fullNameFrame.Gui - label.Position = UDim2.new(0,2,0,0) - label.Size = UDim2.new(1,-4,1,0) - fullNameFrame.Visible = false - fullNameFrame.Parent = window.Gui - - Properties.FullNameFrame = fullNameFrame - Properties.FullNameFrameAttach = Lib.AttachTo(fullNameFrame) - end - - Properties.Init = function() -- TODO: MAKE BETTER - local guiItems = create({ - {1,"Folder",{Name="Items",}}, - {2,"Frame",{BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),BorderSizePixel=0,Name="ToolBar",Parent={1},Size=UDim2.new(1,0,0,22),}}, - {3,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.1176470592618,0.1176470592618,0.1176470592618),BorderSizePixel=0,Name="SearchFrame",Parent={2},Position=UDim2.new(0,3,0,1),Size=UDim2.new(1,-6,0,18),}}, - {4,"TextBox",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,ClearTextOnFocus=false,Font=3,Name="SearchBox",Parent={3},PlaceholderColor3=Color3.new(0.39215689897537,0.39215689897537,0.39215689897537),PlaceholderText="Search properties",Position=UDim2.new(0,4,0,0),Size=UDim2.new(1,-24,0,18),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,TextXAlignment=0,}}, - {5,"UICorner",{CornerRadius=UDim.new(0,2),Parent={3},}}, - {6,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Reset",Parent={3},Position=UDim2.new(1,-17,0,1),Size=UDim2.new(0,16,0,16),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,}}, - {7,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://5034718129",ImageColor3=Color3.new(0.39215686917305,0.39215686917305,0.39215686917305),Parent={6},Size=UDim2.new(0,16,0,16),}}, - {8,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Refresh",Parent={2},Position=UDim2.new(1,-20,0,1),Size=UDim2.new(0,18,0,18),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,Visible=false,}}, - {9,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://5642310344",Parent={8},Position=UDim2.new(0,3,0,3),Size=UDim2.new(0,12,0,12),}}, - {10,"Frame",{BackgroundColor3=Color3.new(0.15686275064945,0.15686275064945,0.15686275064945),BorderSizePixel=0,Name="ScrollCorner",Parent={1},Position=UDim2.new(1,-16,1,-16),Size=UDim2.new(0,16,0,16),Visible=false,}}, - {11,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,ClipsDescendants=true,Name="List",Parent={1},Position=UDim2.new(0,0,0,23),Size=UDim2.new(1,0,1,-23),}}, - }) - - -- Vars - categoryOrder = API.CategoryOrder - for category,_ in next,categoryOrder do - if not Properties.CollapsedCategories[category] then - expanded["CAT_"..category] = true - end - end - expanded["Sound.SoundId"] = true - expanded["AudioPlayer.Asset"] = true - - -- Init window - window = Lib.Window.new() - Properties.Window = window - window:SetTitle("Properties") - - toolBar = guiItems.ToolBar - propsFrame = guiItems.List - - Properties.GuiElems.ToolBar = toolBar - Properties.GuiElems.PropsFrame = propsFrame - - Properties.InitEntryStuff() - - -- Window events - window.GuiElems.Main:GetPropertyChangedSignal("AbsoluteSize"):Connect(function() - if Properties.Window:IsContentVisible() then - Properties.UpdateView() - Properties.Refresh() - end - end) - window.OnActivate:Connect(function() - Properties.UpdateView() - Properties.Update() - Properties.Refresh() - end) - window.OnRestore:Connect(function() - Properties.UpdateView() - Properties.Update() - Properties.Refresh() - end) - - -- Init scrollbars - scrollV = Lib.ScrollBar.new() - scrollV.WheelIncrement = 3 - scrollV.Gui.Position = UDim2.new(1,-16,0,23) - scrollV:SetScrollFrame(propsFrame) - scrollV.Scrolled:Connect(function() - Properties.Index = scrollV.Index - Properties.Refresh() - end) - - scrollH = Lib.ScrollBar.new(true) - scrollH.Increment = 5 - scrollH.WheelIncrement = 20 - scrollH.Gui.Position = UDim2.new(0,0,1,-16) - scrollH.Scrolled:Connect(function() - Properties.Refresh() - end) - - -- Setup Gui - window.GuiElems.Line.Position = UDim2.new(0,0,0,22) - toolBar.Parent = window.GuiElems.Content - propsFrame.Parent = window.GuiElems.Content - guiItems.ScrollCorner.Parent = window.GuiElems.Content - scrollV.Gui.Parent = window.GuiElems.Content - scrollH.Gui.Parent = window.GuiElems.Content - Properties.InitInputBox() - Properties.InitSearch() - end - - return Properties -end - -return {InitDeps = initDeps, InitAfterMain = initAfterMain, Main = main}]]> - {ea84f3c3-8fbb-49b2-92b0-c9a2a1e27a1b} - - 0 - false - Properties - -1 - - - - - - - = 2 then return Vector2.new(x,y) end - elseif typeName == "Vector3" then - local vals = str:split(",") - local x,y,z = tonumber(vals[1]),tonumber(vals[2]),tonumber(vals[3]) - if x and y and z and #vals >= 3 then return Vector3.new(x,y,z) end - elseif typeName == "UDim" then - local vals = str:split(",") - local scale,offset = tonumber(vals[1]),tonumber(vals[2]) - if scale and offset and #vals >= 2 then return UDim.new(scale,offset) end - elseif typeName == "UDim2" then - local vals = str:gsub("[{}]",""):split(",") - local xScale,xOffset,yScale,yOffset = tonumber(vals[1]),tonumber(vals[2]),tonumber(vals[3]),tonumber(vals[4]) - if xScale and xOffset and yScale and yOffset and #vals >= 4 then return UDim2.new(xScale,xOffset,yScale,yOffset) end - elseif typeName == "CFrame" then - local vals = str:split(",") - local s,result = pcall(CFrame.new,unpack(vals)) - if s and #vals >= 12 then return result end - elseif typeName == "Rect" then - local vals = str:split(",") - local s,result = pcall(Rect.new,unpack(vals)) - if s and #vals >= 4 then return result end - elseif typeName == "Ray" then - local vals = str:gsub("[{}]",""):split(",") - local s,origin = pcall(Vector3.new,unpack(vals,1,3)) - local s2,direction = pcall(Vector3.new,unpack(vals,4,6)) - if s and s2 and #vals >= 6 then return Ray.new(origin,direction) end - elseif typeName == "NumberRange" then - local vals = str:split(",") - local s,result = pcall(NumberRange.new,unpack(vals)) - if s and #vals >= 1 then return result end - elseif typeName == "Color3" then - local vals = str:gsub("[{}]",""):split(",") - local s,result = pcall(Color3.fromRGB,unpack(vals)) - if s and #vals >= 3 then return result end - end - - return nil - end - - SettingsEditor.ValueToString = function(val) - local typeName = typeof(val) - - if typeName == "Color3" then - return Lib.ColorToBytes(val) - elseif typeName == "NumberRange" then - return val.Min..", "..val.Max - end - - return tostring(val) - end - - -- InputBox - SettingsEditor.CreateInputBox = function(valueBox) - local inputBox = create({ - {1,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderSizePixel=0,Name="InputBox",Size=UDim2.new(0,200,0,22),Visible=false,ZIndex=2,}}, - {2,"TextBox",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BackgroundTransparency=1,BorderColor3=Color3.new(0.062745101749897,0.51764708757401,1),BorderSizePixel=0,ClearTextOnFocus=false,Font=3,Parent={1},PlaceholderColor3=Color3.new(0.69803923368454,0.69803923368454,0.69803923368454),Position=UDim2.new(0,3,0,0),Size=UDim2.new(1,-6,1,0),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,TextXAlignment=0,ZIndex=2,}}, - }) - local inputTextBox = inputBox.TextBox - inputBox.BackgroundColor3 = Settings.Theme.TextBox - - inputTextBox.FocusLost:Connect(function() - valueBox.Visible = true - inputBox.Visible = false - end) - - inputTextBox.Focused:Connect(function() - inputTextBox.SelectionStart = 1 - inputTextBox.CursorPosition = #inputTextBox.Text + 1 - end) - - valueBox.Changed:Connect(function(property) - if (property == "Text") then - inputTextBox.Text = valueBox.Text - end - end) - - valueBox.MouseButton1Click:Connect(function() - inputBox.Visible = true - valueBox.Visible = false - end) - - - Lib.ViewportTextBox.convert(inputTextBox) - - return inputBox - end - - - SettingsEditor.DisplayColorEditor = function(obj, currentColor) - local editor = SettingsEditor.ColorEditor - - if not editor then - editor = Lib.ColorPicker.new() - - SettingsEditor.ColorEditor = editor - end - - if (editor) then - if (SettingsEditor.ColorEditor.con_OnSelect) then - SettingsEditor.ColorEditor.con_OnSelect:Disconnect() - SettingsEditor.ColorEditor.con_OnSelect = nil - end - - local connection - connection = editor.OnSelect:Connect(function(col) - if not editor.CurrentProp then return end - if not (editor.CurrentProp == obj) then return end - - local colVal = (col or BrickColor.new(col)) - - obj:SetColor3Value(colVal) - - obj.OnColorChange:Fire() - end) - - SettingsEditor.ColorEditor.con_OnSelect = connection - end - - editor.CurrentProp = obj - if currentColor then - editor:SetColor(currentColor) - end - - editor:Show() - - return editor - end - - - SettingsEditor.NewPropEntry = function() - local newEntry = SettingsEditor.EntryTemplate():Clone() - local nameFrame = newEntry.NameFrame - local valueFrame = newEntry.ValueFrame - - local iconFrame = Main.MiscIcons:GetLabel() - iconFrame.Position = UDim2.new(0,2,0,3) - iconFrame.Parent = newEntry.ValueFrame.RightButton - - return { - Gui = newEntry, - GuiElems = { - NameFrame = nameFrame, - ValueFrame = valueFrame, - PropName = nameFrame.PropName, - ValueBox = valueFrame.ValueBox, - Expand = nameFrame.Expand, - EnumArrow = valueFrame.EnumArrow, - RightButton = valueFrame.RightButton, - RightButtonIcon = iconFrame, - SoundPreview = valueFrame.SoundPreview, - SoundPreviewSlider = valueFrame.SoundPreview.TimeLine.Slider, - InfoButton = newEntry.InfoButton - } - } - end - - SettingsEditor.ColorButton = (function() - local funcs = {} - - local function createButton() - local ColorButton = Instance.new("TextButton") - ColorButton.Name = "ColorButton" - ColorButton.Visible = false - ColorButton.Size = UDim2.new(0, 20, 0, 22) - ColorButton.BackgroundTransparency = 1 - ColorButton.BorderSizePixel = 0 - ColorButton.BackgroundColor3 = Color3.fromRGB(255, 255, 255) - ColorButton.FontSize = Enum.FontSize.Size14 - ColorButton.TextSize = 14 - ColorButton.TextColor3 = Color3.fromRGB(255, 255, 255) - ColorButton.Text = "" - ColorButton.Font = Enum.Font.SourceSans - - local ColorPreview = Instance.new("Frame") - ColorPreview.Name = "ColorPreview" - ColorPreview.Size = UDim2.new(0, 10, 0, 10) - ColorPreview.BorderColor3 = Color3.fromRGB(0, 0, 0) - ColorPreview.Position = UDim2.new(0, 5, 0, 6) - ColorPreview.BackgroundColor3 = Color3.fromRGB(255, 255, 255) - ColorPreview.Parent = ColorButton - - local UIGradient = Instance.new("UIGradient") - UIGradient.Parent = ColorPreview - - - return ColorButton - end - - function funcs:SetPreviewColor(color) - self.GuiElems.Gradient.Color = ColorSequence.new(color) - end - - function funcs:SetColor3Value(color) - self.CurrentColor3 = color - self:SetPreviewColor(color) - end - - local mt = {__index = funcs} - - local function new() - local colorButton = createButton() - - local obj = setmetatable({ - Gui = colorButton; - GuiElems = { - ColorButton = colorButton; - ColorPreview = colorButton.ColorPreview; - Gradient = colorButton.ColorPreview.UIGradient; - }; - - OnColorChange = Lib.Signal.new(); - - }, mt) - - obj.CurrentColor3 = Color3.fromRGB(255, 255, 255) - - - colorButton.ZIndex = 2 -- so it's clickable because ColorPreview obstructs it - - colorButton.MouseButton1Click:Connect(function() - SettingsEditor.DisplayColorEditor(obj, obj.CurrentColor3) - end) - - return obj - end - - return {new = new} - end)() - - SettingsEditor.Update = function() - - end - - SettingsEditor.UpdateView = function() - - end - - SettingsEditor.Refresh = function() - - end - - SettingsEditor.ScrollBarFrame = function() - local ScrollingFrame = Instance.new("ScrollingFrame") - ScrollingFrame.Size = UDim2.new(1, 0, 1, 0) - ScrollingFrame.BackgroundTransparency = 1 - ScrollingFrame.BorderSizePixel = 0 - - ScrollingFrame.AutomaticCanvasSize = Enum.AutomaticSize.Y - ScrollingFrame.ScrollBarImageColor3 = Color3.fromRGB(0, 0, 0) - ScrollingFrame.ScrollBarThickness = 6 - - local UILIstLayout = Instance.new("UIListLayout") - UILIstLayout.SortOrder = Enum.SortOrder.LayoutOrder - UILIstLayout.Parent = ScrollingFrame - - return ScrollingFrame - end - - - SettingsEditor.CategoryListFrame = function() - local List = Instance.new("Frame") - List.Name = "List" - List.AutomaticSize = Enum.AutomaticSize.Y - List.Size = UDim2.new(1, -6, 0.1, 0) - List.ClipsDescendants = true - List.BackgroundTransparency = 1 - List.BackgroundColor3 = Color3.fromRGB(255, 255, 255) - - - local UILIstLayout = Instance.new("UIListLayout") - UILIstLayout.SortOrder = Enum.SortOrder.LayoutOrder - UILIstLayout.Parent = List - - return List - end - - - - -- Creates a dropdown - SettingsEditor.CategoryDropdown = (function() - local funcs = {} - - local function createFrame(self) - local Expander = Instance.new("TextButton") - Expander.Name = "Expander" - Expander.Size = UDim2.new(1, -scrollbarThickness, 0, 22) - Expander.BorderColor3 = Color3.fromRGB(33, 33, 33) - Expander.BackgroundTransparency = 0.2 - Expander.Position = UDim2.new(0, 1, 0, 1) - Expander.BackgroundColor3 = Color3.fromRGB(45, 45, 45) - Expander.AutoButtonColor = false - Expander.FontSize = Enum.FontSize.Size14 - Expander.TextSize = 14 - Expander.Text = "" - Expander.Font = Enum.Font.SourceSans - - local NameFrame = Instance.new("Frame") - NameFrame.Name = "NameFrame" - NameFrame.Size = UDim2.new(1, -40, 1, 0) - NameFrame.BorderColor3 = Color3.fromRGB(86, 125, 188) - NameFrame.BackgroundTransparency = 1 - NameFrame.Position = UDim2.new(0, 20, 0, 0) - NameFrame.BorderSizePixel = 0 - NameFrame.BackgroundColor3 = Color3.fromRGB(11, 90, 175) - NameFrame.Parent = Expander - - local PropName = Instance.new("TextLabel") - PropName.Name = "PropName" - PropName.Size = UDim2.new(1, -2, 1, 0) - PropName.BackgroundTransparency = 1 - PropName.Position = UDim2.new(0, 2, 0, 0) - PropName.BackgroundColor3 = Color3.fromRGB(255, 255, 255) - PropName.FontSize = Enum.FontSize.Size14 - PropName.TextTruncate = Enum.TextTruncate.AtEnd - PropName.TextSize = 14 - PropName.TextColor3 = Color3.fromRGB(255, 255, 255) - PropName.Text = "Category" - PropName.Font = Enum.Font.SourceSansBold - PropName.TextTransparency = 0.1 - PropName.TextXAlignment = Enum.TextXAlignment.Left - PropName.Parent = NameFrame - - local Expand = Instance.new("TextButton") - Expand.Name = "Expand" - Expand.Size = UDim2.new(0, 20, 0, 20) - Expand.ClipsDescendants = true - Expand.BackgroundTransparency = 1 - Expand.Position = UDim2.new(0, -20, 0, 1) - Expand.BackgroundColor3 = Color3.fromRGB(255, 255, 255) - Expand.FontSize = Enum.FontSize.Size14 - Expand.TextSize = 14 - Expand.Text = "" - Expand.Font = Enum.Font.SourceSans - Expand.Parent = NameFrame - - local Icon = Instance.new("ImageLabel") - Icon.Name = "Icon" - Icon.Size = UDim2.new(0, 16, 0, 16) - Icon.BackgroundTransparency = 1 - Icon.Position = UDim2.new(0, 2, 0, 2) - Icon.BackgroundColor3 = Color3.fromRGB(255, 255, 255) - Icon.ScaleType = Enum.ScaleType.Crop - Icon.ImageRectOffset = Vector2.new(144, 16) - Icon.ImageRectSize = Vector2.new(16, 16) - Icon.Image = "rbxassetid://5642383285" - Icon.Parent = Expand - - return Expander - end - - local function setupGuiFuncs(self) - local Expander = self.Gui - - local Expand = Expander.NameFrame.Expand - - -- Functions - local function updateIcon() - Apps.Explorer.MiscIcons:DisplayByKey(self.GuiElems.Icon, self.Expanded and "Collapse" or "Expand") - end - - Expand.MouseButton1Click:Connect(function() - if (self.ToggleFrame) then - self.ToggleFrame.Visible = not self.ToggleFrame.Visible - end - - if (self.ToggleFrame.Visible) then - self.Expanded = true - else - self.Expanded = false - end - - -- Update Icon - updateIcon() - end) - - -- Init - updateIcon() - end - - function funcs:SetDisplayName(displayName) - if (self.Gui:FindFirstChild("NameFrame")) then - self.Gui.NameFrame.PropName.Text = displayName - end - end - - -- Set the frame to toggle - function funcs:SetToggleFrame(toggleFrame) - self.ToggleFrame = toggleFrame - - return self.ToggleFrame - end - - - local mt = {} - mt.__index = funcs - - local function new(toggleFrame, displayName) - local obj = setmetatable({}, mt) - - obj.Gui = createFrame(obj) - - obj.GuiElems = { - Icon = obj.Gui.NameFrame.Expand.Icon - } - - obj.Expanded = true -- Whether expanded - - setupGuiFuncs(obj) - - obj:SetDisplayName(displayName) - - obj:SetToggleFrame(toggleFrame) - - - return obj - end - - return {new = new} - end)() - - - -- Change a setting - SettingsEditor.SetSettingValue = function(categoryName, settingName, settingInfo, newValue) - if (settingInfo.OnChange) then - settingInfo.OnChange(newValue) - else - Settings[categoryName][settingName] = newValue - end - end - - - SettingsEditor.SetupInfoDesc = function() - local infoDescBox = SettingsEditor.InfoDescBox - -- TODO: Maybe change this - - if not (infoDescBox) then - local newFrame = Instance.new("Frame") - newFrame.BackgroundColor3 = Color3.fromRGB(0,0,0) - newFrame.BackgroundTransparency = 0.2 - newFrame.BorderSizePixel = 0 - newFrame.Size = UDim2.new(0,0,0,0) - newFrame.AutomaticSize = Enum.AutomaticSize.XY - newFrame.Visible = false -- not visible - - local newTextBox = Instance.new("TextBox") - newTextBox.BackgroundTransparency = 1 - newTextBox.TextColor3 = Color3.fromRGB(255, 255, 255) - newTextBox.Size = UDim2.new(0,0,0,0) - newTextBox.AutomaticSize = Enum.AutomaticSize.XY - newTextBox.Parent = newFrame - - - infoDescBox = newFrame - SettingsEditor.InfoDescBox = infoDescBox - - - infoDescBox.Parent = SettingsEditor.Window.Gui - end - - return infoDescBox - end - - - SettingsEditor.CreateSettingEntry = function(categoryName, settingName, settingInfo) - local newEntry = SettingsEditor.NewPropEntry() - newEntry.Gui.Parent = settingsListFrame - - newEntry.GuiElems.PropName.Text = settingName - - local InfoButton: TextBox = newEntry.GuiElems.InfoButton - - if (settingInfo.desc) then - local infoDescBox:Frame = SettingsEditor.InfoDescBox - local isEnter = false - - InfoButton.MouseEnter:Connect(function(x, y) - isEnter = true - - -- Set setting description - (infoDescBox:WaitForChild("TextBox") :: TextBox).Text = settingInfo.desc - - infoDescBox.Position = UDim2.new(0, x, 0, y) - infoDescBox.Visible = true - end) - - InfoButton.MouseMoved:Connect(function(x, y) - infoDescBox.Position = UDim2.new(0, x, 0, y) - infoDescBox.Visible = true - end) - - InfoButton.MouseLeave:Connect(function(x, y) - if (isEnter == true) then - isEnter = false - infoDescBox.Visible = false - end - end) - else - -- Don't show info button, if there's no description. - InfoButton.Visible = false - end - - - -- ValueBox - local ValueBox: TextButton = newEntry.Gui.ValueFrame.ValueBox - - - -- Boolean - if (settingInfo.typeName == "boolean") then - -- Checkbox - local newCheckbox = Lib.Checkbox.new() - - -- Set current value - newCheckbox:SetState(Settings[categoryName][settingName], false) - - - -- Whenever Checkbox value changes - newCheckbox.OnInput:Connect(function() - local newValue = newCheckbox.Toggled - - -- Sets the value - SettingsEditor.SetSettingValue(categoryName, settingName, settingInfo, newValue) - end) - - newCheckbox.Gui.Parent = newEntry.Gui.ValueFrame - - - -- Color3 - elseif (settingInfo.typeName == "Color3") then - local colorButton = SettingsEditor.ColorButton.new() - colorButton.Gui.Parent = newEntry.Gui.ValueFrame - - -- Set current Color3 - colorButton:SetColor3Value(Settings[categoryName][settingName]) - - colorButton.Gui.Visible = true - - - -- Fired once color input was changed - colorButton.OnColorChange:Connect(function() - local newColor = colorButton.CurrentColor3 - - SettingsEditor.SetSettingValue(categoryName, settingName, settingInfo, newColor) - end) - - - else - -- For anything else - local inputBox = SettingsEditor.CreateInputBox(ValueBox) - local inputTextBox = inputBox.TextBox.Input - - inputBox.Parent = newEntry.Gui.ValueFrame - - inputTextBox.FocusLost:Connect(function() - local convertedVal = SettingsEditor.StringToValue(settingInfo, inputTextBox.Text) - - if (convertedVal) then - ValueBox.Text = SettingsEditor.ValueToString(convertedVal) - - -- Sets value - SettingsEditor.SetSettingValue(categoryName, settingName, settingInfo, convertedVal) - end - end) - - -- Set current value - ValueBox.Text = SettingsEditor.ValueToString(Settings[categoryName][settingName]) - end - - return newEntry - end - - - -- Set up the settings. - SettingsEditor.SetupSettings = function(categoryIndex, parentTo) - local infoTable = SettingsEditor.SettingsInfo[categoryIndex] - - for _, settingName in ipairs(infoTable.Order) do - if (infoTable.Info[settingName]) then - local settingInfo = infoTable.Info[settingName] - - local newEntry = SettingsEditor.CreateSettingEntry(categoryIndex, settingName, settingInfo) - - newEntry.Gui.Parent = parentTo - end - end - end - - - - -- Create new Category - SettingsEditor.NewCategory = function(indexName, displayName, parentTo) - -- indexName, how it should be indexed - -- displayName, how the category should show up - - local categoryListFrame = SettingsEditor.CategoryListFrame():Clone() - categoryListFrame.Name = indexName - --categoryListFrame.Visible = false - - -- Setup settings - SettingsEditor.SetupSettings(indexName, categoryListFrame) - - - local category = SettingsEditor.CategoryDropdown.new(categoryListFrame, displayName) - category.Gui.Parent = parentTo - - -- parent category list - categoryListFrame.Parent = parentTo - - return category - end - - - - - -- Generate Setting buttons and stuff - SettingsEditor.RenderSettings = function() - for _,categoryName in ipairs(SettingsEditor.SettingsInfo._Categories) do - SettingsEditor.NewCategory(categoryName, categoryName, settingsListFrame) - end - end - - - -- Init - SettingsEditor.Init = function() - local window = Lib.Window.new() - SettingsEditor.Window = window - - window:SetTitle("Settings") - window.Resizable = true - - -- Setup Results ScrollingFrame - settingsListFrame = SettingsEditor.ScrollBarFrame() - - SettingsEditor.Window.GuiElems.Main.Parent.Name = "Dex_SettingsWindow" -- Change ScreenGui name - - - -- Setup Gui - SettingsEditor.SetupInfoDesc() -- Hover text description - - SettingsEditor.RenderSettings() -- Sets up UI to change settings - - - -- Window Add, adds things to the "Content" - window:Add(settingsListFrame) - end - - - - return SettingsEditor -end - -return {InitDeps = initDeps, InitAfterMain = initAfterMain, Main = main}]]> - {44cffc20-730e-459c-a768-dc15a50a8a15} - - 0 - false - SettingsEditor - -1 - - - - - - - {d0e7b006-cda4-4713-9b3d-e9ce1b52672c} - - 0 - false - settingsInfo - -1 - - - - - - - - About Dex", { - TextSize = 30, - }) - - AboutMenu.AddCreditsEntry("Version: ".. Main.Version) - AboutMenu.AddCreditsEntry("\n", {TextSize = 5}) - AboutMenu.AddCreditsEntry("Developed by Moon aka. LorekeeperZinnia") - AboutMenu.AddCreditsEntry("This version is modified, the official release was never finished.", { - TextSize = 12, - }) - AboutMenu.AddCreditsEntry("\n\n", {TextSize = 10}) - AboutMenu.AddCreditsEntry("Additional Contributors:", {TextSize = 17}) - AboutMenu.AddCreditsEntry("SnowyShiro", {TextSize = 17}) - AboutMenu.AddCreditsEntry("Modified GuiToLuaAE") - AboutMenu.AddCreditsEntry("") - AboutMenu.AddCreditsEntry("karl-police", {TextSize = 17}) - AboutMenu.AddCreditsEntry("EasternBloxxer", {TextSize = 17}) - AboutMenu.AddCreditsEntry("xs4u", {TextSize = 17}) - AboutMenu.AddCreditsEntry("GuestDaProtogen", {TextSize = 17}) - AboutMenu.AddCreditsEntry("Added additional features, Adonis Plugin") - - -- Window Add, adds things to the "Content" - window:Add(aboutFrame) - end - - return AboutMenu -end - -return {InitDeps = initDeps, InitAfterMain = initAfterMain, Main = main}]]> - {00737e39-e1f4-487e-9e31-9a85feda871e} - - 0 - false - AboutMenu - -1 - - - - - - - = right then - if sorter(newNode,par[left]) then - pos = left - else - pos = left+1 - end - break - end - - local mid = floor((left+right)/2) - if sorter(newNode,par[mid]) then - right = mid-1 - else - left = mid+1 - end - end - end - - table.insert(par,pos,newNode) - else - par[#par+1] = newNode - par.Sorted = nil - end - - local insts = getDescendants(root) - for i = 1,#insts do - local obj = insts[i] - if nodes[obj] then continue end -- Deferred - - local par = nodes[ffa(obj,"Instance")] - if not par then continue end - local newNode = {Obj = obj, Parent = par} - nodes[obj] = newNode - par[#par+1] = newNode - - -- Nil Handling - if isNil then - nilMap[obj] = true - nilCons[obj] = nilCons[obj] or { - connectSignal(obj.ChildAdded,addObject), - connectSignal(obj.AncestryChanged,moveObject), - } - end - end - - if searchFunc and autoUpdateSearch then - searchFunc({newNode}) - end - - if not updateDebounce and Explorer.IsNodeVisible(par) then - if expanded[par] then - Explorer.PerformUpdate() - elseif not refreshDebounce then - Explorer.PerformRefresh() - end - end - end - - removeObject = function(root) - local node = nodes[root] - if not node then return end - - -- Nil Handling - if nilMap[node.Obj] then - moveObject(node.Obj) - return - end - - local par = node.Parent - if par then - par.HasDel = true - end - - local function recur(root) - for i = 1,#root do - local node = root[i] - if not node.Del then - nodes[node.Obj] = nil - if #node > 0 then recur(node) end - end - end - end - recur(node) - node.Del = true - nodes[root] = nil - - if par and not updateDebounce and Explorer.IsNodeVisible(par) then - if expanded[par] then - Explorer.PerformUpdate() - elseif not refreshDebounce then - Explorer.PerformRefresh() - end - end - end - - moveObject = function(obj) - local node = nodes[obj] - if not node then return end - - local oldPar = node.Parent - local newPar = nodes[ffa(obj,"Instance")] - if oldPar == newPar then return end - - -- Nil Handling - if not newPar then - if nilMap[obj] then - newPar = nilNode - else - return - end - elseif nilMap[newPar.Obj] or newPar == nilNode then - nilMap[obj] = true - nilCons[obj] = nilCons[obj] or { - connectSignal(obj.ChildAdded,addObject), - connectSignal(obj.AncestryChanged,moveObject), - } - end - - if oldPar then - local parPos = table.find(oldPar,node) - if parPos then table.remove(oldPar,parPos) end - end - - node.Id = nil - node.Parent = newPar - - if sortingEnabled and expanded[newPar] and newPar.Sorted then - local left,right = 1,#newPar - local floor = math.floor - local sorter = Explorer.NodeSorter - local pos = (right == 0 and 1) - - if not pos then - while true do - if left >= right then - if sorter(node,newPar[left]) then - pos = left - else - pos = left+1 - end - break - end - - local mid = floor((left+right)/2) - if sorter(node,newPar[mid]) then - right = mid-1 - else - left = mid+1 - end - end - end - - table.insert(newPar,pos,node) - else - newPar[#newPar+1] = node - newPar.Sorted = nil - end - - if searchFunc and searchResults[node] then - local currentNode = node.Parent - while currentNode and (not searchResults[currentNode] or expanded[currentNode] == 0) do - expanded[currentNode] = true - searchResults[currentNode] = true - currentNode = currentNode.Parent - end - end - - if not updateDebounce and (Explorer.IsNodeVisible(newPar) or Explorer.IsNodeVisible(oldPar)) then - if expanded[newPar] or expanded[oldPar] then - Explorer.PerformUpdate() - elseif not refreshDebounce then - Explorer.PerformRefresh() - end - end - end - - Explorer.ViewWidth = 0 - Explorer.Index = 0 - Explorer.EntryIndent = 20 - Explorer.FreeWidth = 32 - Explorer.GuiElems = {} - - Explorer.InitRenameBox = function() - renameBox = create({{1,"TextBox",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BorderColor3=Color3.new(0.062745101749897,0.51764708757401,1),BorderMode=2,ClearTextOnFocus=false,Font=3,Name="RenameBox",PlaceholderColor3=Color3.new(0.69803923368454,0.69803923368454,0.69803923368454),Position=UDim2.new(0,26,0,2),Size=UDim2.new(0,200,0,16),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,TextXAlignment=0,Visible=false,ZIndex=2}}}) - - renameBox.Parent = Explorer.Window.GuiElems.Content.List - - renameBox.FocusLost:Connect(function() - if not renamingNode then return end - - pcall(function() renamingNode.Obj.Name = renameBox.Text end) - - -- ADONIS - Dex_RemoteFunction:InvokeServer("SetProperty", renamingNode.Obj, "Name", renameBox.Text) - - renamingNode = nil - Explorer.Refresh() - end) - - renameBox.Focused:Connect(function() - renameBox.SelectionStart = 1 - renameBox.CursorPosition = #renameBox.Text + 1 - end) - end - - Explorer.SetRenamingNode = function(node) - renamingNode = node - renameBox.Text = tostring(node.Obj) - renameBox:CaptureFocus() - Explorer.Refresh() - end - - Explorer.SetSortingEnabled = function(val) - sortingEnabled = val - Settings.Explorer.Sorting = val - end - - Explorer.UpdateView = function() - local maxNodes = math.ceil(treeFrame.AbsoluteSize.Y / 20) - local maxX = treeFrame.AbsoluteSize.X - local totalWidth = Explorer.ViewWidth + Explorer.FreeWidth - - scrollV.VisibleSpace = maxNodes - scrollV.TotalSpace = #tree + 1 - scrollH.VisibleSpace = maxX - scrollH.TotalSpace = totalWidth - - scrollV.Gui.Visible = #tree + 1 > maxNodes - scrollH.Gui.Visible = totalWidth > maxX - - local oldSize = treeFrame.Size - treeFrame.Size = UDim2.new(1,(scrollV.Gui.Visible and -16 or 0),1,(scrollH.Gui.Visible and -39 or -23)) - if oldSize ~= treeFrame.Size then - Explorer.UpdateView() - else - scrollV:Update() - scrollH:Update() - - renameBox.Size = UDim2.new(0,maxX-100,0,16) - - if scrollV.Gui.Visible and scrollH.Gui.Visible then - scrollV.Gui.Size = UDim2.new(0,16,1,-39) - scrollH.Gui.Size = UDim2.new(1,-16,0,16) - Explorer.Window.GuiElems.Content.ScrollCorner.Visible = true - else - scrollV.Gui.Size = UDim2.new(0,16,1,-23) - scrollH.Gui.Size = UDim2.new(1,0,0,16) - Explorer.Window.GuiElems.Content.ScrollCorner.Visible = false - end - - Explorer.Index = scrollV.Index - end - end - - Explorer.NodeSorter = function(a,b) - if a.Del or b.Del then return false end -- Ghost node - - local aClass = a.Class - local bClass = b.Class - if not aClass then aClass = a.Obj.ClassName a.Class = aClass end - if not bClass then bClass = b.Obj.ClassName b.Class = bClass end - - local aOrder = explorerOrders[aClass] - local bOrder = explorerOrders[bClass] - if not aOrder then aOrder = RMD.Classes[aClass] and tonumber(RMD.Classes[aClass].ExplorerOrder) or 9999 explorerOrders[aClass] = aOrder end - if not bOrder then bOrder = RMD.Classes [bClass] and tonumber(RMD.Classes[bClass].ExplorerOrder) or 9999 explorerOrders[bClass] = bOrder end - - if aOrder ~= bOrder then - return aOrder < bOrder - else - local aName,bName = tostring(a.Obj),tostring(b.Obj) - if aName ~= bName then - return aName < bName - elseif aClass ~= bClass then - return aClass < bClass - else - local aId = a.Id if not aId then aId = idCounter idCounter = (idCounter+0.001)%999999999 a.Id = aId end - local bId = b.Id if not bId then bId = idCounter idCounter = (idCounter+0.001)%999999999 b.Id = bId end - return aId < bId - end - end - end - - Explorer.Update = function() - table.clear(tree) - local maxNameWidth,maxDepth,count = 0,1,1 - local nameCache = {} - local font = Enum.Font.SourceSans - local size = Vector2.new(math.huge,20) - local useNameWidth = Settings.Explorer.UseNameWidth - local tSort = table.sort - local sortFunc = Explorer.NodeSorter - local isSearching = (expanded == Explorer.SearchExpanded) - local textServ = service.TextService - - local function recur(root,depth) - if depth > maxDepth then maxDepth = depth end - depth = depth + 1 - if sortingEnabled and not root.Sorted then - tSort(root,sortFunc) - root.Sorted = true - end - for i = 1,#root do - local n = root[i] - - if (isSearching and not searchResults[n]) or n.Del then continue end - - if useNameWidth then - local nameWidth = n.NameWidth - if not nameWidth then - local objName = tostring(n.Obj) - nameWidth = nameCache[objName] - if not nameWidth then - nameWidth = getTextSize(textServ,objName,14,font,size).X - nameCache[objName] = nameWidth - end - n.NameWidth = nameWidth - end - if nameWidth > maxNameWidth then - maxNameWidth = nameWidth - end - end - - tree[count] = n - count = count + 1 - if expanded[n] and #n > 0 then - recur(n,depth) - end - end - end - - recur(nodes[game],1) - - -- Nil Instances - if env.getnilinstances then - if not (isSearching and not searchResults[nilNode]) then - tree[count] = nilNode - count = count + 1 - if expanded[nilNode] then - recur(nilNode,2) - end - end - end - - Explorer.MaxNameWidth = maxNameWidth - Explorer.MaxDepth = maxDepth - Explorer.ViewWidth = useNameWidth and Explorer.EntryIndent*maxDepth + maxNameWidth + 26 or Explorer.EntryIndent*maxDepth + 226 - Explorer.UpdateView() - end - - Explorer.StartDrag = function(offX,offY) - if Explorer.Dragging then return end - Explorer.Dragging = true - - local dragTree = treeFrame:Clone() - dragTree:ClearAllChildren() - - for i,v in pairs(listEntries) do - local node = tree[i + Explorer.Index] - if node and selection.Map[node] then - local clone = v:Clone() - clone.Active = false - clone.Indent.Expand.Visible = false - clone.Parent = dragTree - end - end - - local newGui = Instance.new("ScreenGui") - newGui.DisplayOrder = Main.DisplayOrders.Menu - newGui.ResetOnSpawn = false - dragTree.Parent = newGui - Lib.ShowGui(newGui) - - local dragOutline = create({ - {1,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Name="DragSelect",Size=UDim2.new(1,0,1,0),}}, - {2,"Frame",{BackgroundColor3=Color3.new(1,1,1),BorderSizePixel=0,Name="Line",Parent={1},Size=UDim2.new(1,0,0,1),ZIndex=2,}}, - {3,"Frame",{BackgroundColor3=Color3.new(1,1,1),BorderSizePixel=0,Name="Line",Parent={1},Position=UDim2.new(0,0,1,-1),Size=UDim2.new(1,0,0,1),ZIndex=2,}}, - {4,"Frame",{BackgroundColor3=Color3.new(1,1,1),BorderSizePixel=0,Name="Line",Parent={1},Size=UDim2.new(0,1,1,0),ZIndex=2,}}, - {5,"Frame",{BackgroundColor3=Color3.new(1,1,1),BorderSizePixel=0,Name="Line",Parent={1},Position=UDim2.new(1,-1,0,0),Size=UDim2.new(0,1,1,0),ZIndex=2,}}, - }) - dragOutline.Parent = treeFrame - - - local mouse = Main.Mouse or service.Players.LocalPlayer:GetMouse() - local function move() - local posX = mouse.X - offX - local posY = mouse.Y - offY - dragTree.Position = UDim2.new(0,posX,0,posY) - - for i = 1,#listEntries do - local entry = listEntries[i] - if Lib.CheckMouseInGui(entry) then - dragOutline.Position = UDim2.new(0,entry.Indent.Position.X.Offset-scrollH.Index,0,entry.Position.Y.Offset) - dragOutline.Size = UDim2.new(0,entry.Size.X.Offset-entry.Indent.Position.X.Offset,0,20) - dragOutline.Visible = true - return - end - end - dragOutline.Visible = false - end - move() - - local input = service.UserInputService - local mouseEvent,releaseEvent - - mouseEvent = input.InputChanged:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement then - move() - end - end) - - releaseEvent = input.InputEnded:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseButton1 then - releaseEvent:Disconnect() - mouseEvent:Disconnect() - newGui:Destroy() - dragOutline:Destroy() - Explorer.Dragging = false - - for i = 1,#listEntries do - if Lib.CheckMouseInGui(listEntries[i]) then - local node = tree[i + Explorer.Index] - if node then - if selection.Map[node] then return end - local newPar = node.Obj - local sList = selection.List - for i = 1,#sList do - local n = sList[i] - pcall(function() - n.Obj.Parent = newPar - - -- ADONIS - Dex_RemoteFunction:InvokeServer("SetProperty", n.Obj, "Parent", newPar) - end) - end - Explorer.ViewNode(sList[1]) - end - break - end - end - end - end) - end - - Explorer.NewListEntry = function(index) - local newEntry = entryTemplate:Clone() - newEntry.Position = UDim2.new(0,0,0,20*(index-1)) - - local isRenaming = false - - newEntry.InputBegan:Connect(function(input) - local node = tree[index + Explorer.Index] - if not node or selection.Map[node] or input.UserInputType ~= Enum.UserInputType.MouseMovement then return end - - newEntry.Indent.BackgroundColor3 = Settings.Theme.Button - newEntry.Indent.BorderSizePixel = 0 - newEntry.Indent.BackgroundTransparency = 0 - end) - - newEntry.InputEnded:Connect(function(input) - local node = tree[index + Explorer.Index] - if not node or selection.Map[node] or input.UserInputType ~= Enum.UserInputType.MouseMovement then return end - - newEntry.Indent.BackgroundTransparency = 1 - end) - - newEntry.MouseButton1Down:Connect(function() - - end) - - newEntry.MouseButton1Up:Connect(function() - - end) - - newEntry.InputBegan:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseButton1 then - local releaseEvent,mouseEvent - - local mouse = Main.Mouse or plr:GetMouse() - local startX = mouse.X - local startY = mouse.Y - - local listOffsetX = startX - treeFrame.AbsolutePosition.X - local listOffsetY = startY - treeFrame.AbsolutePosition.Y - - releaseEvent = game:GetService("UserInputService").InputEnded:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseButton1 then - releaseEvent:Disconnect() - mouseEvent:Disconnect() - end - end) - - mouseEvent = game:GetService("UserInputService").InputChanged:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement then - local deltaX = mouse.X - startX - local deltaY = mouse.Y - startY - local dist = math.sqrt(deltaX^2 + deltaY^2) - - if dist > 5 then - releaseEvent:Disconnect() - mouseEvent:Disconnect() - isRenaming = false - Explorer.StartDrag(listOffsetX,listOffsetY) - end - end - end) - end - end) - - newEntry.MouseButton2Down:Connect(function() - - end) - - newEntry.Indent.Expand.InputBegan:Connect(function(input) - local node = tree[index + Explorer.Index] - if not node or input.UserInputType ~= Enum.UserInputType.MouseMovement then return end - - Explorer.MiscIcons:DisplayByKey(newEntry.Indent.Expand.Icon, expanded[node] and "Collapse_Over" or "Expand_Over") - end) - - newEntry.Indent.Expand.InputEnded:Connect(function(input) - local node = tree[index + Explorer.Index] - if not node or input.UserInputType ~= Enum.UserInputType.MouseMovement then return end - - Explorer.MiscIcons:DisplayByKey(newEntry.Indent.Expand.Icon, expanded[node] and "Collapse" or "Expand") - end) - - newEntry.Indent.Expand.MouseButton1Down:Connect(function() - local node = tree[index + Explorer.Index] - if not node or #node == 0 then return end - - expanded[node] = not expanded[node] - Explorer.Update() - Explorer.Refresh() - - if expanded[node] then - local arrowPos = newEntry.Indent.Expand.AbsolutePosition - local framePos = treeFrame.AbsolutePosition - - for _, v in ipairs(node) do - local i = table.find(tree, v) - if i then - local listIndex = i - Explorer.Index - local entry= listEntries[listIndex] - if entry then - local X = arrowPos.X - framePos.X - local Y = arrowPos.Y - framePos.Y - local from = UDim2.new(0, X, 0, Y) - local to = entry.Position - tweenInEntry(entry, from, to) - end - end - end - end - - local targetAngle = expanded[node] and 360 or 0 -- don't ask. - TweenService:Create( - newEntry.Indent.Expand, - TweenInfo.new(0.15, Enum.EasingStyle.Quad), - {Rotation = targetAngle} - ):Play() - end) - - newEntry.Parent = treeFrame - return newEntry - end - - Explorer.Refresh = function() - local maxNodes = math.max(math.ceil((treeFrame.AbsoluteSize.Y) / 20),0) - local renameNodeVisible = false - local isa = game.IsA - - for i = 1,maxNodes do - local entry = listEntries[i] - if not listEntries[i] then entry = Explorer.NewListEntry(i) listEntries[i] = entry Explorer.ClickSystem:Add(entry) end - - local node = tree[i + Explorer.Index] - if node then - local obj = node.Obj - local depth = Explorer.EntryIndent*Explorer.NodeDepth(node) - - entry.Visible = true - entry.Position = UDim2.new(0,-scrollH.Index,0,entry.Position.Y.Offset) - entry.Size = UDim2.new(0,Explorer.ViewWidth,0,20) - entry.Indent.EntryName.Text = tostring(node.Obj) - entry.Indent.Position = UDim2.new(0,depth,0,0) - entry.Indent.Size = UDim2.new(1,-depth,1,0) - - entry.Indent.EntryName.TextTruncate = (Settings.Explorer.UseNameWidth and Enum.TextTruncate.None or Enum.TextTruncate.AtEnd) - - if (isa(obj,"LocalScript") or isa(obj,"Script")) and obj.Disabled then - Explorer.MiscIcons:DisplayByKey(entry.Indent.Icon, isa(obj,"LocalScript") and "LocalScript_Disabled" or "Script_Disabled") - else - local rmdEntry = RMD.Classes[obj.ClassName] - Explorer.ClassIcons:Display(entry.Indent.Icon, rmdEntry and rmdEntry.ExplorerImageIndex or 0) - end - - if selection.Map[node] then - entry.Indent.BackgroundColor3 = Settings.Theme.ListSelection - entry.Indent.BorderSizePixel = 0 - entry.Indent.BackgroundTransparency = 0 - else - if Lib.CheckMouseInGui(entry) then - entry.Indent.BackgroundColor3 = Settings.Theme.Button - else - entry.Indent.BackgroundTransparency = 1 - end - end - - if node == renamingNode then - renameNodeVisible = true - renameBox.Position = UDim2.new(0,depth+25-scrollH.Index,0,entry.Position.Y.Offset+2) - renameBox.Visible = true - end - - if #node > 0 and expanded[node] ~= 0 then - if Lib.CheckMouseInGui(entry.Indent.Expand) then - Explorer.MiscIcons:DisplayByKey(entry.Indent.Expand.Icon, expanded[node] and "Collapse_Over" or "Expand_Over") - else - Explorer.MiscIcons:DisplayByKey(entry.Indent.Expand.Icon, expanded[node] and "Collapse" or "Expand") - end - entry.Indent.Expand.Visible = true - else - entry.Indent.Expand.Visible = false - end - else - entry.Visible = false - end - end - - if not renameNodeVisible then - renameBox.Visible = false - end - - for i = maxNodes+1, #listEntries do - Explorer.ClickSystem:Remove(listEntries[i]) - listEntries[i]:Destroy() - listEntries[i] = nil - end - end - - Explorer.PerformUpdate = function(instant) - updateDebounce = true - Lib.FastWait(not instant and 0.1) - if not updateDebounce then return end - updateDebounce = false - if not Explorer.Window:IsVisible() then return end - Explorer.Update() - Explorer.Refresh() - end - - Explorer.ForceUpdate = function(norefresh) - updateDebounce = false - Explorer.Update() - if not norefresh then Explorer.Refresh() end - end - - Explorer.PerformRefresh = function() - refreshDebounce = true - Lib.FastWait(0.1) - refreshDebounce = false - if updateDebounce or not Explorer.Window:IsVisible() then return end - Explorer.Refresh() - end - - Explorer.IsNodeVisible = function(node) - if not node then return end - - local curNode = node.Parent - while curNode do - if not expanded[curNode] then return false end - curNode = curNode.Parent - end - return true - end - - Explorer.NodeDepth = function(node) - local depth = 0 - - if node == nilNode then - return 1 - end - - local curNode = node.Parent - while curNode do - if curNode == nilNode then depth = depth + 1 end - curNode = curNode.Parent - depth = depth + 1 - end - return depth - end - - Explorer.SetupConnections = function() - if descendantAddedCon then descendantAddedCon:Disconnect() end - if descendantRemovingCon then descendantRemovingCon:Disconnect() end - if itemChangedCon then itemChangedCon:Disconnect() end - - if Main.Elevated then - descendantAddedCon = game.DescendantAdded:Connect(addObject) - descendantRemovingCon = game.DescendantRemoving:Connect(removeObject) - else - descendantAddedCon = game.DescendantAdded:Connect(function(obj) pcall(addObject,obj) end) - descendantRemovingCon = game.DescendantRemoving:Connect(function(obj) pcall(removeObject,obj) end) - end - - if Settings.Explorer.UseNameWidth then - itemChangedCon = game.ItemChanged:Connect(function(obj,prop) - if prop == "Parent" and nodes[obj] then - moveObject(obj) - elseif prop == "Name" and nodes[obj] then - nodes[obj].NameWidth = nil - end - end) - else - itemChangedCon = game.ItemChanged:Connect(function(obj,prop) - if prop == "Parent" and nodes[obj] then - moveObject(obj) - end - end) - end - end - - Explorer.ViewNode = function(node) - if not node then return end - - Explorer.MakeNodeVisible(node) - Explorer.ForceUpdate(true) - local visibleSpace = scrollV.VisibleSpace - - for i,v in next,tree do - if v == node then - local relative = i - 1 - if Explorer.Index > relative then - scrollV.Index = relative - elseif Explorer.Index + visibleSpace - 1 <= relative then - scrollV.Index = relative - visibleSpace + 2 - end - end - end - - scrollV:Update() Explorer.Index = scrollV.Index - Explorer.Refresh() - end - - Explorer.ViewObj = function(obj) - Explorer.ViewNode(nodes[obj]) - end - - Explorer.MakeNodeVisible = function(node,expandRoot) - if not node then return end - - local hasExpanded = false - - if expandRoot and not expanded[node] then - expanded[node] = true - hasExpanded = true - end - - local currentNode = node.Parent - while currentNode do - hasExpanded = true - expanded[currentNode] = true - currentNode = currentNode.Parent - end - - if hasExpanded and not updateDebounce then - task.spawn(Explorer.PerformUpdate, true) - end - end - - Explorer.ShowRightClick = function() - local context = Explorer.RightClickContext - context:Clear() - - local sList = selection.List - local sMap = selection.Map - local emptyClipboard = #clipboard == 0 - local presentClasses = {} - local apiClasses = API.Classes - - for i = 1,#sList do - local node = sList[i] - local class = node.Class - if not class then class = node.Obj.ClassName node.Class = class end - - local curClass = apiClasses[class] - while curClass and not presentClasses[curClass.Name] do - presentClasses[curClass.Name] = true - curClass = curClass.Superclass - end - end - - if not presentClasses["Player"] then - context:AddRegistered("CUT") - context:AddRegistered("COPY") - end - context:AddRegistered("PASTE",emptyClipboard) - if not presentClasses["Player"] then - context:AddRegistered("DUPLICATE") - end - context:AddRegistered("DELETE") - if not presentClasses["Player"] then - context:AddRegistered("RENAME",#sList ~= 1) - end - - context:AddDivider() - if not presentClasses["Player"] then - context:AddRegistered("GROUP") - context:AddRegistered("UNGROUP") - end - context:AddRegistered("SELECT_CHILDREN") - context:AddRegistered("JUMP_TO_PARENT") - context:AddRegistered("EXPAND_ALL") - context:AddRegistered("COLLAPSE_ALL") - - context:AddDivider() - if expanded == Explorer.SearchExpanded then - context:AddRegistered("CLEAR_SEARCH_AND_JUMP_TO") - end - if env.setclipboard then - context:AddRegistered("COPY_PATH") - end - context:AddRegistered("INSERT_OBJECT") - --context:AddRegistered("SAVE_INST") - if presentClasses["RemoteEvent"] or presentClasses["RemoteFunction"] or presentClasses["BindableEvent"] or presentClasses["BindableFunction"] then - context:AddRegistered("CALL_FUNCTION") - end - --context:AddRegistered("VIEW_CONNECTIONS") - --context:AddRegistered("GET_REFERENCES") - --context:AddRegistered("VIEW_API") - context:AddRegistered("VIEW_DESCRIPTION") - - context:QueueDivider() - - if presentClasses["BasePart"] or presentClasses["Model"] then - context:AddRegistered("TELEPORT_TO") - context:AddRegistered("VIEW_OBJECT") - end - - if presentClasses["Player"] then - context:AddRegistered("SELECT_CHARACTER") - end - - if presentClasses["LuaSourceContainer"] then - --context:AddRegistered("VIEW_SCRIPT") - end - - if sMap[nilNode] then - context:AddRegistered("REFRESH_NIL") - context:AddRegistered("HIDE_NIL") - end - - Explorer.LastRightClickX,Explorer.LastRightClickY = Main.Mouse.X,Main.Mouse.Y - context:Show() - end - - Explorer.InitRightClick = function() - local context = Lib.ContextMenu.new() - - context:Register("CUT",{Name = "Cut", IconMap = Explorer.MiscIcons, Icon = "Cut", DisabledIcon = "Cut_Disabled", Shortcut = "Ctrl+Z", OnClick = function() - local destroy,clone = game.Destroy,game.Clone - local sList,newClipboard = selection.List,{} - Dex_RemoteFunction:InvokeServer("ClearClipboard") -- ADONIS - - local count = 1 - for i = 1,#sList do - local inst = sList[i].Obj - - -- ADONIS - Dex_RemoteFunction:InvokeServer("Copy", inst) - if (inst) then -- Improvise - newClipboard[count] = inst - count = count + 1 - end - - --[[local s,cloned = pcall(clone,inst) - if s and cloned then - newClipboard[count] = cloned - count = count + 1 - end - pcall(destroy,inst)]] - - -- ADONIS - Dex_RemoteFunction:InvokeServer("Destroy", inst) - end - clipboard = newClipboard - selection:Clear() - end}) - - local CallFunctionWindow = Lib.Window.new() - CallFunctionWindow:SetTitle("Call: Unknown") - CallFunctionWindow:Resize(300,130) - CallFunctionWindow.Resizable = false - CallFunctionWindow.GuiElems.Main.Position = UDim2.new(0.5, -300/2, 0.5, -130/2) - - local content = CallFunctionWindow.GuiElems.Content - local layout = Instance.new("UIListLayout", content) - layout.SortOrder = Enum.SortOrder.LayoutOrder - layout.Padding = UDim.new(0, 6) - layout.HorizontalAlignment = Enum.HorizontalAlignment.Center - layout.VerticalAlignment = Enum.VerticalAlignment.Top - - local lbl = Instance.new("TextLabel") - lbl.Size = UDim2.new(1, -16, 0, 20) - lbl.BackgroundTransparency = 1 - lbl.TextColor3 = Settings.Theme.TextPrimary or Color3.new(1,1,1) - lbl.Font = Enum.Font.SourceSansBold - lbl.TextSize = 14 - lbl.TextXAlignment = Enum.TextXAlignment.Left - lbl.Text = "Arguments:" - lbl.LayoutOrder = 1 - lbl.Parent = content - - local tb = Instance.new("TextBox") - tb.Size = UDim2.new(1, -16, 0, 30) - tb.BackgroundColor3 = Settings.Theme.InputBackground or Color3.fromRGB(30,30,30) - tb.TextColor3 = Settings.Theme.TextPrimary or Color3.new(1,1,1) - tb.Font = Enum.Font.SourceSans - tb.PlaceholderText = [[e.g. "player1", 42, true]] - tb.Text = "" - tb.ClearTextOnFocus = false - tb.TextXAlignment = Enum.TextXAlignment.Left - tb.TextSize = 14 - tb.LayoutOrder = 2 - tb.Parent = content - - local uiCorner = Instance.new("UICorner", tb) - uiCorner.CornerRadius = UDim.new(0, 4) - - local buttoncontainer = Instance.new("Frame") - buttoncontainer.Size = UDim2.new(1, -16, 0, 30) - buttoncontainer.BackgroundTransparency = 1 - buttoncontainer.LayoutOrder = 3 - buttoncontainer.Parent = content - - local filler = Instance.new("Frame", buttoncontainer) - filler.Size = UDim2.new(1, -80, 1, 0) - filler.BackgroundTransparency = 1 - - local call = Instance.new("TextButton") - call.Size = UDim2.new(0,80,1,0) - call.Position = UDim2.new(1, -80, 0, 0) - call.BackgroundColor3 = Settings.Theme.ButtonPrimary or Color3.fromRGB(0, 120, 215) - call.TextColor3 = Settings.Theme.TextButton or Color3.new(1,1,1) - call.Font = Enum.Font.SourceSansBold - call.TextSize = 14 - call.Text = "Call" - call.Parent = buttoncontainer - - local btnCorner = Instance.new("UICorner", call) - btnCorner.CornerRadius = UDim.new(0,4) - - local function activate() - local obj = CallFunctionWindow.currentObj - local text = tb.Text or "" - - local argv = {} - for token in string.gmatch(text, "[^,]+") do - local t = token:match("^%s*(.-)%s*$") - local n = tonumber(t) - if n then - argv[#argv+1] = n - elseif t:lower() == "true" then - argv[#argv+1] = true - elseif t:lower() == "false" then - argv[#argv+1] = false - else - local inner = t:match('^"(.-)"$') or t:match("^'(.-)'$") - argv[#argv+1] = inner or t - end - end - - local ok,err = pcall(function() - if obj:IsA("RemoteFunction") then obj:InvokeServer(unpack(argv)) - elseif obj:IsA("BindableFunction") then obj:Invoke(unpack(argv)) - elseif obj:IsA("RemoteEvent") then obj:FireServer(unpack(argv)) - elseif obj:IsA("BindableEvent") then obj:Fire(unpack(argv)) - end - end) - if not ok then - - warn("Failed to call "..obj:GetFullName()..":",err) - end - - CallFunctionWindow:Hide() - end - - tb.FocusLost:Connect(function(enterPressed) - if enterPressed then - activate() - end - end) - - call.MouseButton1Click:Connect(activate) - - local InstanceInfoWindow = Lib.Window.new() - InstanceInfoWindow:SetTitle("Unknown") - InstanceInfoWindow:Resize(280,120) - InstanceInfoWindow.Resizable = false - InstanceInfoWindow.GuiElems.Main.Position = UDim2.new(0.5, -280/2, 0.5, -120/2) - - local content = InstanceInfoWindow.GuiElems.Content - - local layout = Instance.new("UIListLayout", content) - layout.SortOrder = Enum.SortOrder.LayoutOrder - layout.Padding = UDim.new(0, 4) - layout.HorizontalAlignment = Enum.HorizontalAlignment.Center - layout.VerticalAlignment = Enum.VerticalAlignment.Top - - local description = Instance.new("TextLabel") - description.Size = UDim2.new(1, -16, 0, 80) - description.BackgroundTransparency = 1 - description.Font = Enum.Font.SourceSans - description.TextSize = 14 - description.TextWrapped = true - description.TextXAlignment = Enum.TextXAlignment.Left - description.TextYAlignment = Enum.TextYAlignment.Top - description.TextColor3 = Settings.Theme.TextSecondary or Color3.fromRGB(200,200,200) - description.LayoutOrder = 2 - description.Parent = content - - context:Register("COPY",{Name = "Copy", IconMap = Explorer.MiscIcons, Icon = "Copy", DisabledIcon = "Copy_Disabled", Shortcut = "Ctrl+C", OnClick = function() - local clone = game.Clone - local sList,newClipboard = selection.List,{} - Dex_RemoteFunction:InvokeServer("ClearClipboard") -- ADONIS - - local count = 1 - for i = 1,#sList do - local inst = sList[i].Obj - local s,cloned = pcall(clone,inst) - - -- ADONIS - Dex_RemoteFunction:InvokeServer("Copy", inst) - - if s and cloned then - newClipboard[count] = cloned - count = count + 1 - end - end - clipboard = newClipboard - end}) - - context:Register("PASTE",{Name = "Paste Into", IconMap = Explorer.MiscIcons, Icon = "Paste", DisabledIcon = "Paste_Disabled", Shortcut = "Ctrl+Shift+V", OnClick = function() - local sList = selection.List - local newSelection = {} - local count = 1 - for i = 1,#sList do - local node = sList[i] - local inst = node.Obj - Explorer.MakeNodeVisible(node,true) - - -- ADONIS - local pastedObjects = Dex_RemoteFunction:InvokeServer("Paste", inst) - - for k,v in ipairs(pastedObjects) do - local cloned = v - - local clonedNode = nodes[cloned] - if clonedNode then newSelection[count] = clonedNode count = count + 1 end - end - - --[[for c = 1,#clipboard do - local cloned = clipboard[c]:Clone() - if cloned then - cloned.Parent = inst - local clonedNode = nodes[cloned] - if clonedNode then newSelection[count] = clonedNode count = count + 1 end - end - end]] - end - selection:SetTable(newSelection) - - if #newSelection > 0 then - Explorer.ViewNode(newSelection[1]) - end - end}) - - context:Register("DUPLICATE",{Name = "Duplicate", IconMap = Explorer.MiscIcons, Icon = "Copy", DisabledIcon = "Copy_Disabled", Shortcut = "Ctrl+D", OnClick = function() - local clone = game.Clone - local sList = selection.List - local newSelection = {} - local count = 1 - for i = 1,#sList do - local node = sList[i] - local inst = node.Obj - local instPar = node.Parent and node.Parent.Obj - Explorer.MakeNodeVisible(node) - - -- ADONIS - local cloned = Dex_RemoteFunction:InvokeServer("Duplicate", inst, instPar) - - if (cloned) then - local clonedNode = nodes[cloned] - if clonedNode then newSelection[count] = clonedNode count = count + 1 end - end - - --[[local s,cloned = pcall(clone,inst) - if s and cloned then - cloned.Parent = instPar - local clonedNode = nodes[cloned] - if clonedNode then newSelection[count] = clonedNode count = count + 1 end - end]] - end - - selection:SetTable(newSelection) - if #newSelection > 0 then - Explorer.ViewNode(newSelection[1]) - end - end}) - - context:Register("DELETE",{Name = "Delete", IconMap = Explorer.MiscIcons, Icon = "Delete", DisabledIcon = "Delete_Disabled", Shortcut = "Del", OnClick = function() - local destroy = game.Destroy - local sList = selection.List - for i = 1,#sList do - pcall(function() - if not sList[i].Obj:IsA("Player") then - destroy(sList[i].Obj) - end - end) - - -- ADONIS - Dex_RemoteFunction:InvokeServer("Destroy", sList[i].Obj) - end - selection:Clear() - end}) - - context:Register("RENAME",{Name = "Rename", IconMap = Explorer.MiscIcons, Icon = "Rename", DisabledIcon = "Rename_Disabled", Shortcut = "F2", OnClick = function() - local sList = selection.List - if sList[1] then - Explorer.SetRenamingNode(sList[1]) - end - end}) - - context:Register("GROUP",{Name = "Group", IconMap = Explorer.MiscIcons, Icon = "Group", DisabledIcon = "Group_Disabled", Shortcut = "Ctrl+G", OnClick = function() - local sList = selection.List - if #sList == 0 then return end - - --local model = Instance.new("Model",sList[#sList].Obj.Parent) - local model = Dex_RemoteFunction:InvokeServer("InstanceNew", "Model", sList[#sList].Obj.Parent) or Instance.new("Model",sList[#sList].Obj.Parent) - for i = 1,#sList do - pcall(function() sList[i].Obj.Parent = model end) - - Dex_RemoteFunction:InvokeServer("SetProperty", sList[i].Obj, "Parent", model) - end - - if nodes[model] then - selection:Set(nodes[model]) - Explorer.ViewNode(nodes[model]) - end - end}) - - context:Register("UNGROUP",{Name = "Ungroup", IconMap = Explorer.MiscIcons, Icon = "Ungroup", DisabledIcon = "Ungroup_Disabled", Shortcut = "Ctrl+U", OnClick = function() - local newSelection = {} - local count = 1 - local isa = game.IsA - - local function ungroup(node) - local par = node.Parent.Obj - local ch = {} - local chCount = 1 - - for i = 1,#node do - local n = node[i] - newSelection[count] = n - ch[chCount] = n - count = count + 1 - chCount = chCount + 1 - end - - for i = 1,#ch do - pcall(function() ch[i].Obj.Parent = par end) - - Dex_RemoteFunction:InvokeServer("SetProperty", ch[i].Obj, "Parent", par or workspace) - end - - node.Obj:Destroy() - end - - for i,v in next,selection.List do - if isa(v.Obj,"Model") then - ungroup(v) - end - end - - selection:SetTable(newSelection) - if #newSelection > 0 then - Explorer.ViewNode(newSelection[1]) - end - end}) - - context:Register("SELECT_CHILDREN",{Name = "Select Children", IconMap = Explorer.MiscIcons, Icon = "SelectChildren", DisabledIcon = "SelectChildren_Disabled", OnClick = function() - local newSelection = {} - local count = 1 - local sList = selection.List - - for i = 1,#sList do - local node = sList[i] - for ind = 1,#node do - local cNode = node[ind] - if ind == 1 then Explorer.MakeNodeVisible(cNode) end - - newSelection[count] = cNode - count = count + 1 - end - end - - selection:SetTable(newSelection) - if #newSelection > 0 then - Explorer.ViewNode(newSelection[1]) - else - Explorer.Refresh() - end - end}) - - context:Register("JUMP_TO_PARENT",{Name = "Jump to Parent", IconMap = Explorer.MiscIcons, Icon = "JumpToParent", OnClick = function() - local newSelection = {} - local count = 1 - local sList = selection.List - - for i = 1,#sList do - local node = sList[i] - if node.Parent then - newSelection[count] = node.Parent - count = count + 1 - end - end - - selection:SetTable(newSelection) - if #newSelection > 0 then - Explorer.ViewNode(newSelection[1]) - else - Explorer.Refresh() - end - end}) - - context:Register("TELEPORT_TO",{Name = "Teleport To", IconMap = Explorer.MiscIcons, Icon = "TeleportTo", OnClick = function() - local sList = selection.List - local isa = game.IsA - - local hrp = plr.Character and plr.Character:FindFirstChild("HumanoidRootPart") - if not hrp then return end - - for i = 1,#sList do - local node = sList[i] - - if isa(node.Obj,"BasePart") then - hrp.CFrame = node.Obj.CFrame + Settings.Explorer.TeleportToOffset - break - elseif isa(node.Obj,"Model") then - if node.Obj.PrimaryPart then - hrp.CFrame = node.Obj.PrimaryPart.CFrame + Settings.Explorer.TeleportToOffset - break - else - local part = node.Obj:FindFirstChildWhichIsA("BasePart",true) - if part and nodes[part] then - hrp.CFrame = nodes[part].Obj.CFrame + Settings.Explorer.TeleportToOffset - end - end - end - end - end}) - - context:Register("EXPAND_ALL",{Name = "Expand All", OnClick = function() - local sList = selection.List - - local function expand(node) - expanded[node] = true - for i = 1,#node do - if #node[i] > 0 then - expand(node[i]) - end - end - end - - for i = 1,#sList do - expand(sList[i]) - end - - Explorer.ForceUpdate() - end}) - - context:Register("COLLAPSE_ALL",{Name = "Collapse All", OnClick = function() - local sList = selection.List - - local function expand(node) - expanded[node] = nil - for i = 1,#node do - if #node[i] > 0 then - expand(node[i]) - end - end - end - - for i = 1,#sList do - expand(sList[i]) - end - - Explorer.ForceUpdate() - end}) - - context:Register("CLEAR_SEARCH_AND_JUMP_TO",{Name = "Clear Search and Jump to", OnClick = function() - local newSelection = {} - local count = 1 - local sList = selection.List - - for i = 1,#sList do - newSelection[count] = sList[i] - count = count + 1 - end - - selection:SetTable(newSelection) - Explorer.ClearSearch() - if #newSelection > 0 then - Explorer.ViewNode(newSelection[1]) - end - end}) - - context:Register("COPY_PATH",{Name = "Copy Path", OnClick = function() - local sList = selection.List - if #sList == 1 then - env.setclipboard(Explorer.GetInstancePath(sList[1].Obj)) - elseif #sList > 1 then - local resList = {"{"} - local count = 2 - for i = 1,#sList do - local path = "\t"..Explorer.GetInstancePath(sList[i].Obj).."," - if #path > 0 then - resList[count] = path - count = count+1 - end - end - resList[count] = "}" - env.setclipboard(table.concat(resList,"\n")) - end - end}) - - context:Register("INSERT_OBJECT",{Name = "Insert Object", IconMap = Explorer.MiscIcons, Icon = "InsertObject", OnClick = function() - local mouse = Main.Mouse - local x,y = Explorer.LastRightClickX or mouse.X, Explorer.LastRightClickY or mouse.Y - Explorer.InsertObjectContext:Show(x,y) - end}) - - context:Register("CALL_FUNCTION",{ - Name = "Call Function", - IconMap = Explorer.ClassIcons, - Icon = 66, - OnClick = function() - local node = selection.List[1] - if not node then return end - local obj = node.Obj - - if not (obj:IsA("RemoteFunction") or obj:IsA("RemoteEvent") or obj:IsA("BindableFunction") or obj:IsA("BindableEvent")) then - return - end - - CallFunctionWindow.currentObj = obj - CallFunctionWindow:SetTitle("Call: " ..obj:GetFullName():sub(1,40)) - CallFunctionWindow:Show() - end - }) - - context:Register("GET_REFERENCES",{Name = "Get Lua References", IconMap = Explorer.ClassIcons, Icon = 34, OnClick = function() - - end}) - - context:Register("SAVE_INST",{Name = "Save to File", IconMap = Explorer.MiscIcons, Icon = "Save", OnClick = function() - - end}) - - context:Register("VIEW_CONNECTIONS",{Name = "View Connections", OnClick = function() - - end}) - - context:Register("VIEW_API",{Name = "View API Page", IconMap = Explorer.MiscIcons, Icon = "Reference", OnClick = function() - - end}) - - context:Register("VIEW_DESCRIPTION",{Name = "View Description", IconMap = Explorer.MiscIcons, Icon = 34, OnClick = function() - local node = selection.List[1] - if not node then return end - local obj = node.Obj - local className = obj.ClassName - - local name = RMD.Classes[className].Name - local summary = RMD.Classes[className].summary - local additionalDocs = { - Model = "A Model is a container object, it groups objects together and it's best used to hold collections of BaseParts.", - BasePart = "BasePart is an abstract base class for in-world objects that render and are physically simulated while in the Workspace.", - Part = "The Part object is a type of BasePart. It comes in five different primitive shapes: Ball, Block, Cylinder, Wedge, and CornerWedge.", - MeshPart = "MeshPart is a form of BasePart that includes a physically simulated custom mesh. Unlike with other mesh classes, such as SpecialMesh and BlockMesh, they are not parented to a BasePart but rather behave as a BasePart in their own right.", - Workspace = "Workspace is a service that holds objects that exist in the 3D world, effectively BaseParts and Attachments. While such objects are descendant of Workspace, they will be active." - } - - InstanceInfoWindow:SetTitle(name .." \"".. obj.Name .."\"") - - -- as far as I checked, only a few classes have summary for some reason - description.Text = summary or additionalDocs[className] or "No description available for this class. The RMD may be missing some information." - - InstanceInfoWindow:Show() - end}) - - context:Register("VIEW_OBJECT",{Name = "View Object (Right click to reset)", IconMap = Explorer.ClassIcons, Icon = 5, OnClick = function() - local sList = selection.List - local isa = game.IsA - - for i = 1,#sList do - local node = sList[i] - - if isa(node.Obj,"BasePart") or isa(node.Obj,"Model") then - workspace.CurrentCamera.CameraSubject = node.Obj - break - end - end - end, OnRightClick = function() - workspace.CurrentCamera.CameraSubject = plr.Character - end}) - - context:Register("VIEW_SCRIPT",{Name = "View Script", IconMap = Explorer.MiscIcons, Icon = "ViewScript", OnClick = function() - local scr = selection.List[1] and selection.List[1].Obj - if scr then ScriptViewer.ViewScript(scr) end - end}) - - context:Register("SELECT_CHARACTER",{Name = "Select Character", IconMap = Explorer.ClassIcons, Icon = 9, OnClick = function() - local newSelection = {} - local count = 1 - local sList = selection.List - local isa = game.IsA - - for i = 1,#sList do - local node = sList[i] - if isa(node.Obj,"Player") and nodes[node.Obj.Character] then - newSelection[count] = nodes[node.Obj.Character] - count = count + 1 - end - end - - selection:SetTable(newSelection) - if #newSelection > 0 then - Explorer.ViewNode(newSelection[1]) - else - Explorer.Refresh() - end - end}) - - context:Register("REFRESH_NIL",{Name = "Refresh Nil Instances", OnClick = function() - Explorer.RefreshNilInstances() - end}) - - context:Register("HIDE_NIL",{Name = "Hide Nil Instances", OnClick = function() - Explorer.HideNilInstances() - end}) - - Explorer.RightClickContext = context - end - - Explorer.HideNilInstances = function() - table.clear(nilMap) - - local disconnectCon = Instance.new("Folder").ChildAdded:Connect(function() end).Disconnect - for i,v in next,nilCons do - disconnectCon(v[1]) - disconnectCon(v[2]) - end - table.clear(nilCons) - - for i = 1,#nilNode do - task.spawn(removeObject, nilNode[i].Obj) - end - - Explorer.Update() - Explorer.Refresh() - end - - Explorer.RefreshNilInstances = function() - if not env.getnilinstances then return end - - local nilInsts = env.getnilinstances() - local game = game - local getDescs = game.GetDescendants - --local newNilMap = {} - --local newNilRoots = {} - --local nilRoots = Explorer.NilRoots - --local connect = game.DescendantAdded.Connect - --local disconnect - --if not nilRoots then nilRoots = {} Explorer.NilRoots = nilRoots end - - for i = 1,#nilInsts do - local obj = nilInsts[i] - if obj ~= game then - nilMap[obj] = true - --newNilRoots[obj] = true - - local descs = getDescs(obj) - for j = 1,#descs do - nilMap[descs[j]] = true - end - end - end - - -- Remove unmapped nil nodes - --[[for i = 1,#nilNode do - local node = nilNode[i] - if not newNilMap[node.Obj] then - nilMap[node.Obj] = nil - task.spawn(removeObject, node) - end - end]] - - --nilMap = newNilMap - - for i = 1,#nilInsts do - local obj = nilInsts[i] - local node = nodes[obj] - if not node then task.spawn(addObject, obj) end - end - - --[[ - -- Remove old root connections - for obj in next,nilRoots do - if not newNilRoots[obj] then - if not disconnect then disconnect = obj[1].Disconnect end - disconnect(obj[1]) - disconnect(obj[2]) - end - end - - for obj in next,newNilRoots do - if not nilRoots[obj] then - nilRoots[obj] = { - connect(obj.DescendantAdded,addObject), - connect(obj.DescendantRemoving,removeObject) - } - end - end]] - - --nilMap = newNilMap - --Explorer.NilRoots = newNilRoots - - Explorer.Update() - Explorer.Refresh() - end - - Explorer.GetInstancePath = function(obj) - local ffc = game.FindFirstChild - local getCh = game.GetChildren - local path = "" - local curObj = obj - local ts = tostring - local match = string.match - local gsub = string.gsub - local tableFind = table.find - local useGetCh = Settings.Explorer.CopyPathUseGetChildren - local formatLuaString = Lib.FormatLuaString - - while curObj do - if curObj == game then - path = "game"..path - break - end - - local className = curObj.ClassName - local curName = ts(curObj) - local indexName - if match(curName,"^[%a_][%w_]*$") then - indexName = "."..curName - else - local cleanName = formatLuaString(curName) - indexName = '["'..cleanName..'"]' - end - - local parObj = curObj.Parent - if parObj then - local fc = ffc(parObj,curName) - if useGetCh and fc and fc ~= curObj then - local parCh = getCh(parObj) - local fcInd = tableFind(parCh,curObj) - indexName = ":GetChildren()["..fcInd.."]" - elseif parObj == game and API.Classes[className] and API.Classes[className].Tags.Service then - indexName = ':GetService("'..className..'")' - end - end - - path = indexName..path - curObj = parObj - end - - return path - end - - Explorer.InitInsertObject = function() - local context = Lib.ContextMenu.new() - context.SearchEnabled = true - context.MaxHeight = 400 - context:ApplyTheme({ - ContentColor = Settings.Theme.Main2, - OutlineColor = Settings.Theme.Outline1, - DividerColor = Settings.Theme.Outline1, - TextColor = Settings.Theme.Text, - HighlightColor = Settings.Theme.ButtonHover - }) - - local classes = {} - for i,class in next,API.Classes do - local tags = class.Tags - if not tags.NotCreatable and not tags.Service then - local rmdEntry = RMD.Classes[class.Name] - classes[#classes+1] = {class,rmdEntry and rmdEntry.ClassCategory or "Uncategorized"} - end - end - table.sort(classes,function(a,b) - if a[2] ~= b[2] then - return a[2] < b[2] - else - return a[1].Name < b[1].Name - end - end) - - local function onClick(className) - local sList = selection.List - local instNew = Instance.new - for i = 1,#sList do - local node = sList[i] - local obj = node.Obj - Explorer.MakeNodeVisible(node,true) - --pcall(instNew,className,obj) - - Dex_RemoteFunction:InvokeServer("InstanceNew", className, obj) - end - end - - local lastCategory = "" - for i = 1,#classes do - local class = classes[i][1] - local rmdEntry = RMD.Classes[class.Name] - local iconInd = rmdEntry and tonumber(rmdEntry.ExplorerImageIndex) or 0 - local category = classes[i][2] - - if lastCategory ~= category then - context:AddDivider(category) - lastCategory = category - end - context:Add({Name = class.Name, IconMap = Explorer.ClassIcons, Icon = iconInd, OnClick = onClick}) - end - - Explorer.InsertObjectContext = context - end - - --[[ - ]] - Explorer.InitClickToSelect = function() - local connection = Explorer.ClickToSelect_Connection - - -- If Setting is ON - if (Settings.Explorer.ClickToSelect == true) then - - if not (connection) then - local mouse: Mouse = Main.Mouse or service.Players.LocalPlayer:GetMouse() - connection = mouse.Button1Down:Connect(function() - local mouseLocation = service.UserInputService:GetMouseLocation() - - -- Create a ray from the 2D mouse location - local screenToWorldRay = workspace.CurrentCamera:ViewportPointToRay(mouseLocation.X, mouseLocation.Y) - - local DISTANCE_LIMIT = 900000 - local dirVector = screenToWorldRay.Direction * (DISTANCE_LIMIT) - - local raycastResult = workspace:Raycast(screenToWorldRay.Origin, dirVector) - - if (raycastResult) then - local node = nodes[raycastResult.Instance] - - if (node) then - selection:Set(node) - - Explorer.ViewObj(node.Obj) -- Show in Explorer - end - end - end) - - -- Set connection into the table - Explorer.ClickToSelect_Connection = connection - end - else - -- If OFF - if (connection) then - -- Disconnect - connection:Disconnect() - - Explorer.ClickToSelect_Connection = nil - end - end - end - - --[[ - Headers, Setups, Predicate, ObjectDefs - ]] - Explorer.SearchFilters = { -- TODO: Use data table (so we can disable some if funcs don't exist) - Comparison = { - ["isa"] = function(argString) - local lower = string.lower - local find = string.find - local classQuery = string.split(argString)[1] - if not classQuery then return end - classQuery = lower(classQuery) - - local className - for class,_ in pairs(API.Classes) do - local cName = lower(class) - if cName == classQuery then - className = class - break - elseif find(cName,classQuery,1,true) then - className = class - end - end - if not className then return end - - return { - Headers = {"local isa = game.IsA"}, - Predicate = "isa(obj,'"..className.."')" - } - end, - ["remotes"] = function(argString) - return { - Headers = {"local isa = game.IsA"}, - Predicate = "isa(obj,'RemoteEvent') or isa(obj,'RemoteFunction')" - } - end, - ["bindables"] = function(argString) - return { - Headers = {"local isa = game.IsA"}, - Predicate = "isa(obj,'BindableEvent') or isa(obj,'BindableFunction')" - } - end, - ["rad"] = function(argString) - local num = tonumber(argString) - if not num then return end - - if not service.Players.LocalPlayer.Character or not service.Players.LocalPlayer.Character:FindFirstChild("HumanoidRootPart") or not service.Players.LocalPlayer.Character.HumanoidRootPart:IsA("BasePart") then return end - - return { - Headers = {"local isa = game.IsA", "local hrp = service.Players.LocalPlayer.Character.HumanoidRootPart"}, - Setups = {"local hrpPos = hrp.Position"}, - ObjectDefs = {"local isBasePart = isa(obj,'BasePart')"}, - Predicate = "(isBasePart and (obj.Position-hrpPos).Magnitude <= "..num..")" - } - end, - }, - Specific = { - ["players"] = function() - return function() return service.Players:GetPlayers() end - end, - ["loadedmodules"] = function() - return env.getloadedmodules - end, - }, - Default = function(argString,caseSensitive) - local cleanString = argString:gsub("\"","\\\""):gsub("\n","\\n") - if caseSensitive then - return { - Headers = {"local find = string.find"}, - ObjectDefs = {"local objName = tostring(obj)"}, - Predicate = "find(objName,\"" .. cleanString .. "\",1,true)" - } - else - return { - Headers = {"local lower = string.lower","local find = string.find","local tostring = tostring"}, - ObjectDefs = {"local lowerName = lower(tostring(obj))"}, - Predicate = "find(lowerName,\"" .. cleanString:lower() .. "\",1,true)" - } - end - end, - SpecificDefault = function(n) - return { - Headers = {}, - ObjectDefs = {"local isSpec"..n.." = specResults["..n.."][node]"}, - Predicate = "isSpec"..n - } - end, - } - - Explorer.BuildSearchFunc = function(query) - local specFilterList,specMap = {},{} - local finalPredicate = "" - local rep = string.rep - local formatQuery = query:gsub("\\."," "):gsub('".-"',function(str) return rep(" ",#str) end) - local headers = {} - local objectDefs = {} - local setups = {} - local find = string.find - local sub = string.sub - local lower = string.lower - local match = string.match - local ops = { - ["("] = "(", - [")"] = ")", - ["||"] = " or ", - ["&&"] = " and " - } - local filterCount = 0 - local compFilters = Explorer.SearchFilters.Comparison - local specFilters = Explorer.SearchFilters.Specific - local init = 1 - local lastOp = nil - - local function processFilter(dat) - if dat.Headers then - local t = dat.Headers - for i = 1,#t do - headers[t[i]] = true - end - end - - if dat.ObjectDefs then - local t = dat.ObjectDefs - for i = 1,#t do - objectDefs[t[i]] = true - end - end - - if dat.Setups then - local t = dat.Setups - for i = 1,#t do - setups[t[i]] = true - end - end - - finalPredicate = finalPredicate..dat.Predicate - end - - local found = {} - local foundData = {} - local find = string.find - local sub = string.sub - - local function findAll(str,pattern) - local count = #found+1 - local init = 1 - local sz = #pattern - local x,y,extra = find(str,pattern,init,true) - while x do - found[count] = x - foundData[x] = {sz,pattern} - - count = count+1 - init = y+1 - x,y,extra = find(str,pattern,init,true) - end - end - local start = tick() - findAll(formatQuery,'&&') - findAll(formatQuery,"||") - findAll(formatQuery,"(") - findAll(formatQuery,")") - table.sort(found) - table.insert(found,#formatQuery+1) - - local function inQuotes(str) - local len = #str - if sub(str,1,1) == '"' and sub(str,len,len) == '"' then - return sub(str,2,len-1) - end - end - - for i = 1,#found do - local nextInd = found[i] - local nextData = foundData[nextInd] or {1} - local op = ops[nextData[2]] - local term = sub(query,init,nextInd-1) - term = match(term,"^%s*(.-)%s*$") or "" -- Trim - - if #term > 0 then - if sub(term,1,1) == "!" then - term = sub(term,2) - finalPredicate = finalPredicate.."not " - end - - local qTerm = inQuotes(term) - if qTerm then - processFilter(Explorer.SearchFilters.Default(qTerm,true)) - else - local x,y = find(term,"%S+") - if x then - local first = sub(term,x,y) - local specifier = sub(first,1,1) == "/" and lower(sub(first,2)) - local compFunc = specifier and compFilters[specifier] - local specFunc = specifier and specFilters[specifier] - - if compFunc then - local argStr = sub(term,y+2) - local ret = compFunc(inQuotes(argStr) or argStr) - if ret then - processFilter(ret) - else - finalPredicate = finalPredicate.."false" - end - elseif specFunc then - local argStr = sub(term,y+2) - local ret = specFunc(inQuotes(argStr) or argStr) - if ret then - if not specMap[term] then - specFilterList[#specFilterList + 1] = ret - specMap[term] = #specFilterList - end - processFilter(Explorer.SearchFilters.SpecificDefault(specMap[term])) - else - finalPredicate = finalPredicate.."false" - end - else - processFilter(Explorer.SearchFilters.Default(term)) - end - end - end - end - - if op then - finalPredicate = finalPredicate..op - if op == "(" and (#term > 0 or lastOp == ")") then -- Handle bracket glitch - return - else - lastOp = op - end - end - init = nextInd+nextData[1] - end - - local finalSetups = "" - local finalHeaders = "" - local finalObjectDefs = "" - - for setup,_ in next,setups do finalSetups = finalSetups..setup.."\n" end - for header,_ in next,headers do finalHeaders = finalHeaders..header.."\n" end - for oDef,_ in next,objectDefs do finalObjectDefs = finalObjectDefs..oDef.."\n" end - - return nil,specFilterList - end - - Explorer.DoSearch = function(query) - table.clear(Explorer.SearchExpanded) - table.clear(searchResults) - expanded = (#query == 0 and Explorer.Expanded or Explorer.SearchExpanded) - searchFunc = nil - - if #query > 0 then - local expandTable = Explorer.SearchExpanded - local specFilters - - local lower = string.lower - local find = string.find - local tostring = tostring - - local lowerQuery = lower(query) - - local function defaultSearch(root) - local expandedpar = false - for i = 1,#root do - local node = root[i] - local obj = node.Obj - - if find(lower(tostring(obj)),lowerQuery,1,true) then - expandTable[node] = 0 - searchResults[node] = true - if not expandedpar then - local parnode = node.Parent - while parnode and (not searchResults[parnode] or expandTable[parnode] == 0) do - expanded[parnode] = true - searchResults[parnode] = true - parnode = parnode.Parent - end - expandedpar = true - end - end - - if #node > 0 then defaultSearch(node) end - end - end - - if Main.Elevated then - local start = tick() - searchFunc,specFilters = Explorer.BuildSearchFunc(query) - --print("BUILD SEARCH",tick()-start) - else - searchFunc = defaultSearch - end - - if specFilters then - table.clear(specResults) - for i = 1,#specFilters do -- Specific search filers that returns list of matches - local resMap = {} - specResults[i] = resMap - local objs = specFilters[i]() - for c = 1,#objs do - local node = nodes[objs[c]] - if node then - resMap[node] = true - end - end - end - end - - if searchFunc then - local start = tick() - searchFunc(nodes[game]) - searchFunc(nilNode) - --warn(tick()-start) - end - end - - Explorer.ForceUpdate() - end - - Explorer.ClearSearch = function() - Explorer.GuiElems.SearchBar.Text = "" - expanded = Explorer.Expanded - searchFunc = nil - end - - Explorer.InitSearch = function() - local searchBox = Explorer.GuiElems.ToolBar.SearchFrame.SearchBox - Explorer.GuiElems.SearchBar = searchBox - - Lib.ViewportTextBox.convert(searchBox) - - searchBox.FocusLost:Connect(function() - Explorer.DoSearch(searchBox.Text) - end) - end - - Explorer.InitEntryTemplate = function() - entryTemplate = create({ - {1,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0,0,0),BackgroundTransparency=1,BorderColor3=Color3.new(0,0,0),Font=3,Name="Entry",Position=UDim2.new(0,1,0,1),Size=UDim2.new(0,250,0,20),Text="",TextSize=14,}}, - {2,"Frame",{BackgroundColor3=Color3.new(0.04313725605607,0.35294118523598,0.68627452850342),BackgroundTransparency=1,BorderColor3=Color3.new(0.33725491166115,0.49019610881805,0.73725491762161),BorderSizePixel=0,Name="Indent",Parent={1},Position=UDim2.new(0,20,0,0),Size=UDim2.new(1,-20,1,0),}}, - {3,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="EntryName",Parent={2},Position=UDim2.new(0,26,0,0),Size=UDim2.new(1,-26,1,0),Text="Workspace",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, - {4,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,ClipsDescendants=true,Font=3,Name="Expand",Parent={2},Position=UDim2.new(0,-20,0,0),Size=UDim2.new(0,20,0,20),Text="",TextSize=14,}}, - {5,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://5642383285",ImageRectOffset=Vector2.new(144,16),ImageRectSize=Vector2.new(16,16),Name="Icon",Parent={4},Position=UDim2.new(0,2,0,2),ScaleType=4,Size=UDim2.new(0,16,0,16),}}, - {6,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxasset://textures/ClassImages.png",ImageRectOffset=Vector2.new(304,0),ImageRectSize=Vector2.new(16,16),Name="Icon",Parent={2},Position=UDim2.new(0,4,0,2),ScaleType=4,Size=UDim2.new(0,16,0,16),}}, - }) - - local sys = Lib.ClickSystem.new() - sys.AllowedButtons = {1,2} - sys.OnDown:Connect(function(item,combo,button) - local ind = table.find(listEntries,item) - if not ind then return end - local node = tree[ind + Explorer.Index] - if not node then return end - - local entry = listEntries[ind] - - if button == 1 then - if combo == 2 then - if node.Obj:IsA("LuaSourceContainer") then - ScriptViewer.ViewScript(node.Obj) - elseif #node > 0 and expanded[node] ~= 0 then - expanded[node] = not expanded[node] - Explorer.Update() - end - end - - if Properties.SelectObject(node.Obj) then - sys.IsRenaming = false - return - end - - sys.IsRenaming = selection.Map[node] - - if Lib.IsShiftDown() then - if not selection.Piviot then return end - - local fromIndex = table.find(tree,selection.Piviot) - local toIndex = table.find(tree,node) - if not fromIndex or not toIndex then return end - fromIndex,toIndex = math.min(fromIndex,toIndex),math.max(fromIndex,toIndex) - - local sList = selection.List - for i = #sList,1,-1 do - local elem = sList[i] - if selection.ShiftSet[elem] then - selection.Map[elem] = nil - table.remove(sList,i) - end - end - selection.ShiftSet = {} - for i = fromIndex,toIndex do - local elem = tree[i] - if not selection.Map[elem] then - selection.ShiftSet[elem] = true - selection.Map[elem] = true - sList[#sList+1] = elem - end - end - selection.Changed:Fire() - elseif Lib.IsCtrlDown() then - selection.ShiftSet = {} - if selection.Map[node] then selection:Remove(node) else selection:Add(node) end - selection.Piviot = node - sys.IsRenaming = false - elseif not selection.Map[node] then - selection.ShiftSet = {} - selection:Set(node) - selection.Piviot = node - end - elseif button == 2 then - if Properties.SelectObject(node.Obj) then - return - end - - if not Lib.IsCtrlDown() and not selection.Map[node] then - selection.ShiftSet = {} - selection:Set(node) - selection.Piviot = node - Explorer.Refresh() - end - end - - Explorer.Refresh() - end) - - sys.OnRelease:Connect(function(item,combo,button) - local ind = table.find(listEntries,item) - if not ind then return end - local node = tree[ind + Explorer.Index] - if not node then return end - - if button == 1 then - if selection.Map[node] and not Lib.IsShiftDown() and not Lib.IsCtrlDown() then - selection.ShiftSet = {} - selection:Set(node) - selection.Piviot = node - Explorer.Refresh() - end - - local id = sys.ClickId - Lib.FastWait(sys.ComboTime) - if combo == 1 and id == sys.ClickId and sys.IsRenaming and selection.Map[node] then - Explorer.SetRenamingNode(node) - end - elseif button == 2 then - Explorer.ShowRightClick() - end - end) - Explorer.ClickSystem = sys - end - - Explorer.InitDelCleaner = function() - task.spawn(function() - local fw = Lib.FastWait - while true do - local processed = false - local c = 0 - for _,node in next,nodes do - if node.HasDel then - local delInd - for i = 1,#node do - if node[i].Del then - delInd = i - break - end - end - if delInd then - for i = delInd+1,#node do - local cn = node[i] - if not cn.Del then - node[delInd] = cn - delInd = delInd+1 - end - end - for i = delInd,#node do - node[i] = nil - end - end - node.HasDel = false - processed = true - fw() - end - c = c + 1 - if c > 10000 then - c = 0 - fw() - end - end - if processed and not refreshDebounce then Explorer.PerformRefresh() end - fw(0.5) - end - end) - end - - Explorer.UpdateSelectionVisuals = function() - local holder = Explorer.SelectionVisualsHolder - local isa = game.IsA - local clone = game.Clone - if not holder then - holder = Instance.new("ScreenGui") - holder.Name = "Dex_ExplorerSelections" - holder.DisplayOrder = Main.DisplayOrders.Core - holder.ResetOnSpawn = false - Lib.ShowGui(holder) - Explorer.SelectionVisualsHolder = holder - Explorer.SelectionVisualCons = {} - - local guiTemplate = create({ - {1,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Size=UDim2.new(0,100,0,100),}}, - {2,"Frame",{BackgroundColor3=Color3.new(0.04313725605607,0.35294118523598,0.68627452850342),BorderSizePixel=0,Parent={1},Position=UDim2.new(0,-1,0,-1),Size=UDim2.new(1,2,0,1),}}, - {3,"Frame",{BackgroundColor3=Color3.new(0.04313725605607,0.35294118523598,0.68627452850342),BorderSizePixel=0,Parent={1},Position=UDim2.new(0,-1,1,0),Size=UDim2.new(1,2,0,1),}}, - {4,"Frame",{BackgroundColor3=Color3.new(0.04313725605607,0.35294118523598,0.68627452850342),BorderSizePixel=0,Parent={1},Position=UDim2.new(0,-1,0,0),Size=UDim2.new(0,1,1,0),}}, - {5,"Frame",{BackgroundColor3=Color3.new(0.04313725605607,0.35294118523598,0.68627452850342),BorderSizePixel=0,Parent={1},Position=UDim2.new(1,0,0,0),Size=UDim2.new(0,1,1,0),}}, - }) - Explorer.SelectionVisualGui = guiTemplate - - local boxTemplate = Instance.new("SelectionBox") - boxTemplate.LineThickness = 0.03 - boxTemplate.Color3 = Color3.fromRGB(0, 170, 255) - Explorer.SelectionVisualBox = boxTemplate - end - holder:ClearAllChildren() - - -- Updates theme - for i,v in pairs(Explorer.SelectionVisualGui:GetChildren()) do - v.BackgroundColor3 = Color3.fromRGB(0, 170, 255) - end - - local attachCons = Explorer.SelectionVisualCons - for i = 1,#attachCons do - attachCons[i].Destroy() - end - table.clear(attachCons) - - local partEnabled = Settings.Explorer.PartSelectionBox - local guiEnabled = Settings.Explorer.GuiSelectionBox - if not partEnabled and not guiEnabled then return end - - local svg = Explorer.SelectionVisualGui - local svb = Explorer.SelectionVisualBox - local attachTo = Lib.AttachTo - local sList = selection.List - local count = 1 - local boxCount = 0 - local workspaceNode = nodes[workspace] - for i = 1,#sList do - if boxCount > 1000 then break end - local node = sList[i] - local obj = node.Obj - - if node ~= workspaceNode then - if isa(obj,"GuiObject") and guiEnabled then - local newVisual = clone(svg) - attachCons[count] = attachTo(newVisual,{Target = obj, Resize = true}) - count = count + 1 - newVisual.Parent = holder - boxCount = boxCount + 1 - elseif isa(obj,"PVInstance") and partEnabled then - local newBox = clone(svb) - newBox.Adornee = obj - newBox.Parent = holder - boxCount = boxCount + 1 - end - end - end - end - - Explorer.Init = function() - Explorer.ClassIcons = Lib.IconMap.newLinear("rbxasset://textures/ClassImages.png",16,16) - Explorer.MiscIcons = Main.MiscIcons - - clipboard = {} - - selection = Lib.Set.new() - selection.ShiftSet = {} - selection.Changed:Connect(Properties.ShowExplorerProps) - Explorer.Selection = selection - - Explorer.InitRightClick() - Explorer.InitInsertObject() - - Explorer.InitClickToSelect() - - Explorer.SetSortingEnabled(Settings.Explorer.Sorting) - Explorer.Expanded = setmetatable({},{__mode = "k"}) - Explorer.SearchExpanded = setmetatable({},{__mode = "k"}) - expanded = Explorer.Expanded - - nilNode.Obj.Name = "Nil Instances" - nilNode.Locked = true - - local explorerItems = create({ - {1,"Folder",{Name="ExplorerItems",}}, - {2,"Frame",{BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),BorderSizePixel=0,Name="ToolBar",Parent={1},Size=UDim2.new(1,0,0,22),}}, - {3,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.1176470592618,0.1176470592618,0.1176470592618),BorderSizePixel=0,Name="SearchFrame",Parent={2},Position=UDim2.new(0,3,0,1),Size=UDim2.new(1,-6,0,18),}}, - {4,"TextBox",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,ClearTextOnFocus=false,Font=3,Name="SearchBox",Parent={3},PlaceholderColor3=Color3.new(0.39215689897537,0.39215689897537,0.39215689897537),PlaceholderText="Search workspace",Position=UDim2.new(0,4,0,0),Size=UDim2.new(1,-24,0,18),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,TextXAlignment=0,}}, - {5,"UICorner",{CornerRadius=UDim.new(0,2),Parent={3},}}, - {6,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Reset",Parent={3},Position=UDim2.new(1,-17,0,1),Size=UDim2.new(0,16,0,16),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,}}, - {7,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://5034718129",ImageColor3=Color3.new(0.39215686917305,0.39215686917305,0.39215686917305),Parent={6},Size=UDim2.new(0,16,0,16),}}, - {8,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Refresh",Parent={2},Position=UDim2.new(1,-20,0,1),Size=UDim2.new(0,18,0,18),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,Visible=false,}}, - {9,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://5642310344",Parent={8},Position=UDim2.new(0,3,0,3),Size=UDim2.new(0,12,0,12),}}, - {10,"Frame",{BackgroundColor3=Color3.new(0.15686275064945,0.15686275064945,0.15686275064945),BorderSizePixel=0,Name="ScrollCorner",Parent={1},Position=UDim2.new(1,-16,1,-16),Size=UDim2.new(0,16,0,16),Visible=false,}}, - {11,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,ClipsDescendants=true,Name="List",Parent={1},Position=UDim2.new(0,0,0,23),Size=UDim2.new(1,0,1,-23),}}, - }) - - toolBar = explorerItems.ToolBar - treeFrame = explorerItems.List - - Explorer.GuiElems.ToolBar = toolBar - Explorer.GuiElems.TreeFrame = treeFrame - - scrollV = Lib.ScrollBar.new() - scrollV.WheelIncrement = 3 - scrollV.Gui.Position = UDim2.new(1,-16,0,23) - scrollV:SetScrollFrame(treeFrame) - scrollV.Scrolled:Connect(function() - Explorer.Index = scrollV.Index - Explorer.Refresh() - end) - - scrollH = Lib.ScrollBar.new(true) - scrollH.Increment = 5 - scrollH.WheelIncrement = Explorer.EntryIndent - scrollH.Gui.Position = UDim2.new(0,0,1,-16) - scrollH.Scrolled:Connect(function() - Explorer.Refresh() - end) - - local window = Lib.Window.new() - Explorer.Window = window - window:SetTitle("Explorer") - window.GuiElems.Line.Position = UDim2.new(0,0,0,22) - - Explorer.InitEntryTemplate() - toolBar.Parent = window.GuiElems.Content - treeFrame.Parent = window.GuiElems.Content - explorerItems.ScrollCorner.Parent = window.GuiElems.Content - scrollV.Gui.Parent = window.GuiElems.Content - scrollH.Gui.Parent = window.GuiElems.Content - - -- Init stuff that requires the window - Explorer.InitRenameBox() - Explorer.InitSearch() - Explorer.InitDelCleaner() - selection.Changed:Connect(Explorer.UpdateSelectionVisuals) - - -- Window events - window.GuiElems.Main:GetPropertyChangedSignal("AbsoluteSize"):Connect(function() - if Explorer.Active then - Explorer.UpdateView() - Explorer.Refresh() - end - end) - window.OnActivate:Connect(function() - Explorer.Active = true - Explorer.UpdateView() - Explorer.Update() - Explorer.Refresh() - end) - window.OnRestore:Connect(function() - Explorer.Active = true - Explorer.UpdateView() - Explorer.Update() - Explorer.Refresh() - end) - window.OnDeactivate:Connect(function() Explorer.Active = false end) - window.OnMinimize:Connect(function() Explorer.Active = false end) - - -- Settings - autoUpdateSearch = Settings.Explorer.AutoUpdateSearch - - - -- Fill in nodes - nodes[game] = {Obj = game} - expanded[nodes[game]] = true - - -- Nil Instances - if env.getnilinstances then - nodes[nilNode.Obj] = nilNode - end - - Explorer.SetupConnections() - - local insts = getDescendants(game) - if Main.Elevated then - for i = 1,#insts do - local obj = insts[i] - local par = nodes[ffa(obj,"Instance")] - if not par then continue end - local newNode = { - Obj = obj, - Parent = par, - } - nodes[obj] = newNode - par[#par+1] = newNode - end - else - for i = 1,#insts do - local obj = insts[i] - local s,parObj = pcall(ffa,obj,"Instance") - local par = nodes[parObj] - if not par then continue end - local newNode = { - Obj = obj, - Parent = par, - } - nodes[obj] = newNode - par[#par+1] = newNode - end - end - end - - return Explorer -end - -return {InitDeps = initDeps, InitAfterMain = initAfterMain, Main = main}]]> - {e24eede9-3e01-4546-8fae-888416066252} - - 0 - false - Explorer - -1 - - - - - - - = guiPosition.X and mouse.X < guiPosition.X + guiSize.X and mouse.Y >= guiPosition.Y and mouse.Y < guiPosition.Y + guiSize.Y - end - - Lib.IsShiftDown = function() - return service.UserInputService:IsKeyDown(Enum.KeyCode.LeftShift) or service.UserInputService:IsKeyDown(Enum.KeyCode.RightShift) - end - - Lib.IsCtrlDown = function() - return service.UserInputService:IsKeyDown(Enum.KeyCode.LeftControl) or service.UserInputService:IsKeyDown(Enum.KeyCode.RightControl) - end - - Lib.CreateArrow = function(size,num,dir) - local max = num - local arrowFrame = createSimple("Frame",{ - BackgroundTransparency = 1, - Name = "Arrow", - Size = UDim2.new(0,size,0,size) - }) - if dir == "up" then - for i = 1,num do - local newLine = createSimple("Frame",{ - BackgroundColor3 = Color3.new(220/255,220/255,220/255), - BorderSizePixel = 0, - Position = UDim2.new(0,math.floor(size/2)-(i-1),0,math.floor(size/2)+i-math.floor(max/2)-1), - Size = UDim2.new(0,i+(i-1),0,1), - Parent = arrowFrame - }) - end - return arrowFrame - elseif dir == "down" then - for i = 1,num do - local newLine = createSimple("Frame",{ - BackgroundColor3 = Color3.new(220/255,220/255,220/255), - BorderSizePixel = 0, - Position = UDim2.new(0,math.floor(size/2)-(i-1),0,math.floor(size/2)-i+math.floor(max/2)+1), - Size = UDim2.new(0,i+(i-1),0,1), - Parent = arrowFrame - }) - end - return arrowFrame - elseif dir == "left" then - for i = 1,num do - local newLine = createSimple("Frame",{ - BackgroundColor3 = Color3.new(220/255,220/255,220/255), - BorderSizePixel = 0, - Position = UDim2.new(0,math.floor(size/2)+i-math.floor(max/2)-1,0,math.floor(size/2)-(i-1)), - Size = UDim2.new(0,1,0,i+(i-1)), - Parent = arrowFrame - }) - end - return arrowFrame - elseif dir == "right" then - for i = 1,num do - local newLine = createSimple("Frame",{ - BackgroundColor3 = Color3.new(220/255,220/255,220/255), - BorderSizePixel = 0, - Position = UDim2.new(0,math.floor(size/2)-i+math.floor(max/2)+1,0,math.floor(size/2)-(i-1)), - Size = UDim2.new(0,1,0,i+(i-1)), - Parent = arrowFrame - }) - end - return arrowFrame - end - error("r u ok") - end - - Lib.ParseXML = (function() - local func = function() - -- Only exists to parse RMD - -- from https://github.com/jonathanpoelen/xmlparser - - local string, print, pairs = string, print, pairs - - -- http://lua-users.org/wiki/StringTrim - local trim = function(s) - local from = s:match"^%s*()" - return from > #s and "" or s:match(".*%S", from) - end - - local gtchar = string.byte('>', 1) - local slashchar = string.byte('/', 1) - local D = string.byte('D', 1) - local E = string.byte('E', 1) - - local function defaultEntityTable() - return { quot='"', apos='\'', lt='<', gt='>', amp='&', tab='\t', nbsp=' ', } - end - - local function replaceEntities(s, entities) - return s:gsub('&([^;]+);', entities) - end - - local function createEntityTable(docEntities, resultEntities) - local entities = resultEntities or defaultEntityTable() - for _,e in pairs(docEntities) do - e.value = replaceEntities(e.value, entities) - entities[e.name] = e.value - end - return entities - end - - local function parse(s, evalEntities) - -- remove comments - s = s:gsub('', '') - - local entities, tentities = {}, nil - - if evalEntities then - local pos = s:find('<[_%w]') - if pos then - s:sub(1, pos):gsub('?)([^<]*)', function(type, name, closed, txt) - -- open - if #type == 0 then - local a = {} - if #closed == 0 then - local len = 0 - for all,aname,_,value,starttxt in string.gmatch(txt, "(.-([-_%w]+)%s*=%s*(.)(.-)%3%s*(/?>?))") do - len = len + #all - a[aname] = value - if #starttxt ~= 0 then - txt = txt:sub(len+1) - closed = starttxt - break - end - end - end - t[#t+1] = {tag=name, attrs=a, children={}} - - if closed:byte(1) ~= slashchar then - l[#l+1] = t - t = t[#t].children - end - - addtext(txt) - -- close - elseif '/' == type then - t = l[#l] - l[#l] = nil - - addtext(txt) - -- ENTITY - elseif '!' == type then - if E == name:byte(1) then - txt:gsub('([_%w]+)%s+(.)(.-)%2', function(name, q, entity) - entities[#entities+1] = {name=name, value=entity} - end, 1) - end - -- elseif '?' == type then - -- print('? ' .. name .. ' // ' .. attrs .. '$$') - -- elseif '-' == type then - -- print('comment ' .. name .. ' // ' .. attrs .. '$$') - -- else - -- print('o ' .. #p .. ' // ' .. name .. ' // ' .. attrs .. '$$') - end - end) - - return {children=t, entities=entities, tentities=tentities} - end - - local function parseText(txt) - return parse(txt) - end - - return parseText - end - local newEnv = setmetatable({},{__index = getfenv()}) - setfenv(func,newEnv) - return func() - end)() - - Lib.FastWait = function(s) - if not s then return signalWait(renderStepped) end - local start = tick() - while tick() - start < s do signalWait(renderStepped) end - end - - Lib.ButtonAnim = function(button,data) - local holding = false - local disabled = false - local mode = data and data.Mode or 1 - local control = {} - - if mode == 2 then - local lerpTo = data.LerpTo or Color3.new(0,0,0) - local delta = data.LerpDelta or 0.2 - control.StartColor = data.StartColor or button.BackgroundColor3 - control.PressColor = data.PressColor or control.StartColor:lerp(lerpTo,delta) - control.HoverColor = data.HoverColor or control.StartColor:lerp(control.PressColor,0.6) - control.OutlineColor = data.OutlineColor - end - - button.InputBegan:Connect(function(input) - if disabled then return end - if input.UserInputType == Enum.UserInputType.MouseMovement and not holding then - if mode == 1 then - button.BackgroundTransparency = 0.4 - elseif mode == 2 then - button.BackgroundColor3 = control.HoverColor - end - elseif input.UserInputType == Enum.UserInputType.MouseButton1 then - holding = true - if mode == 1 then - button.BackgroundTransparency = 0 - elseif mode == 2 then - button.BackgroundColor3 = control.PressColor - if control.OutlineColor then button.BorderColor3 = control.PressColor end - end - end - end) - - button.InputEnded:Connect(function(input) - if disabled then return end - if input.UserInputType == Enum.UserInputType.MouseMovement and not holding then - if mode == 1 then - button.BackgroundTransparency = 1 - elseif mode == 2 then - button.BackgroundColor3 = control.StartColor - end - elseif input.UserInputType == Enum.UserInputType.MouseButton1 then - holding = false - if mode == 1 then - button.BackgroundTransparency = Lib.CheckMouseInGui(button) and 0.4 or 1 - elseif mode == 2 then - button.BackgroundColor3 = Lib.CheckMouseInGui(button) and control.HoverColor or control.StartColor - if control.OutlineColor then button.BorderColor3 = control.OutlineColor end - end - end - end) - - control.Disable = function() - disabled = true - holding = false - - if mode == 1 then - button.BackgroundTransparency = 1 - elseif mode == 2 then - button.BackgroundColor3 = control.StartColor - end - end - - control.Enable = function() - disabled = false - end - - return control - end - - Lib.FindAndRemove = function(t,item) - local pos = table.find(t,item) - if pos then table.remove(t,pos) end - end - - Lib.AttachTo = function(obj,data) - local target,posOffX,posOffY,sizeOffX,sizeOffY,resize,con - local disabled = false - - local function update() - if not obj or not target then return end - - local targetPos = target.AbsolutePosition - local targetSize = target.AbsoluteSize - obj.Position = UDim2.new(0,targetPos.X + posOffX,0,targetPos.Y + posOffY) - if resize then obj.Size = UDim2.new(0,targetSize.X + sizeOffX,0,targetSize.Y + sizeOffY) end - end - - local function setup(o,data) - obj = o - data = data or {} - target = data.Target - posOffX = data.PosOffX or 0 - posOffY = data.PosOffY or 0 - sizeOffX = data.SizeOffX or 0 - sizeOffY = data.SizeOffY or 0 - resize = data.Resize or false - - if con then con:Disconnect() con = nil end - if target then - con = target.Changed:Connect(function(prop) - if not disabled and prop == "AbsolutePosition" or prop == "AbsoluteSize" then - update() - end - end) - end - - update() - end - setup(obj,data) - - return { - SetData = function(obj,data) - setup(obj,data) - end, - Enable = function() - disabled = false - update() - end, - Disable = function() - disabled = true - end, - Destroy = function() - con:Disconnect() - con = nil - end, - } - end - - Lib.ProtectedGuis = {} - - Lib.ShowGui = function(gui) - if env.protectgui then - env.protectgui(gui) - end - gui.Parent = Main.GuiHolder - end - - Lib.ColorToBytes = function(col) - local round = math.round - return string.format("%d, %d, %d",round(col.r*255),round(col.g*255),round(col.b*255)) - end - - Lib.ReadFile = function(filename) - if not env.readfile then return end - - local s,contents = pcall(env.readfile,filename) - if s and contents then return contents end - end - - Lib.DeferFunc = function(f,...) - signalWait(renderStepped) - return f(...) - end - - Lib.LoadCustomAsset = function(filepath) - if not env.getcustomasset or not env.isfile or not env.isfile(filepath) then return end - - return env.getcustomasset(filepath) - end - - Lib.FetchCustomAsset = function(url,filepath) - if not env.writefile then return end - - local s,data = pcall(game.HttpGet,game,url) - if not s then return end - - env.writefile(filepath,data) - return Lib.LoadCustomAsset(filepath) - end - - -- Classes - - Lib.Signal = (function() - local funcs = {} - - local disconnect = function(con) - local pos = table.find(con.Signal.Connections,con) - if pos then table.remove(con.Signal.Connections,pos) end - end - - funcs.Connect = function(self,func) - if type(func) ~= "function" then error("Attempt to connect a non-function") end - local con = { - Signal = self, - Func = func, - Disconnect = disconnect - } - self.Connections[#self.Connections+1] = con - return con - end - - funcs.Fire = function(self,...) - for i,v in next,self.Connections do - task.spawn(xpcall, v.Func, function(e) warn(e.."\n"..debug.traceback()) end, ...) - end - end - - local mt = { - __index = funcs, - __tostring = function(self) - return "Signal: " .. tostring(#self.Connections) .. " Connections" - end - } - - local function new() - local obj = {} - obj.Connections = {} - - return setmetatable(obj,mt) - end - - return {new = new} - end)() - - Lib.Set = (function() - local funcs = {} - - funcs.Add = function(self,obj) - if self.Map[obj] then return end - - local list = self.List - list[#list+1] = obj - self.Map[obj] = true - self.Changed:Fire() - end - - funcs.AddTable = function(self,t) - local changed - local list,map = self.List,self.Map - for i = 1,#t do - local elem = t[i] - if not map[elem] then - list[#list+1] = elem - map[elem] = true - changed = true - end - end - if changed then self.Changed:Fire() end - end - - funcs.Remove = function(self,obj) - if not self.Map[obj] then return end - - local list = self.List - local pos = table.find(list,obj) - if pos then table.remove(list,pos) end - self.Map[obj] = nil - self.Changed:Fire() - end - - funcs.RemoveTable = function(self,t) - local changed - local list,map = self.List,self.Map - local removeSet = {} - for i = 1,#t do - local elem = t[i] - map[elem] = nil - removeSet[elem] = true - end - - for i = #list,1,-1 do - local elem = list[i] - if removeSet[elem] then - table.remove(list,i) - changed = true - end - end - if changed then self.Changed:Fire() end - end - - funcs.Set = function(self,obj) - if #self.List == 1 and self.List[1] == obj then return end - - self.List = {obj} - self.Map = {[obj] = true} - self.Changed:Fire() - end - - funcs.SetTable = function(self,t) - local newList,newMap = {},{} - self.List,self.Map = newList,newMap - table.move(t,1,#t,1,newList) - for i = 1,#t do - newMap[t[i]] = true - end - self.Changed:Fire() - end - - funcs.Clear = function(self) - if #self.List == 0 then return end - self.List = {} - self.Map = {} - self.Changed:Fire() - end - - local mt = {__index = funcs} - - local function new() - local obj = setmetatable({ - List = {}, - Map = {}, - Changed = Lib.Signal.new() - },mt) - - return obj - end - - return {new = new} - end)() - - Lib.IconMap = (function() - local funcs = {} - - funcs.GetLabel = function(self) - local label = Instance.new("ImageLabel") - self:SetupLabel(label) - return label - end - - funcs.SetupLabel = function(self,obj) - obj.BackgroundTransparency = 1 - obj.ImageRectOffset = Vector2.new(0,0) - obj.ImageRectSize = Vector2.new(self.IconSizeX,self.IconSizeY) - obj.ScaleType = Enum.ScaleType.Crop - obj.Size = UDim2.new(0,self.IconSizeX,0,self.IconSizeY) - end - - funcs.Display = function(self,obj,index) - obj.Image = self.MapId - if not self.NumX then - obj.ImageRectOffset = Vector2.new(self.IconSizeX*index, 0) - else - obj.ImageRectOffset = Vector2.new(self.IconSizeX*(index % self.NumX), self.IconSizeY*math.floor(index / self.NumX)) - end - end - - funcs.DisplayByKey = function(self,obj,key) - if self.IndexDict[key] then - self:Display(obj,self.IndexDict[key]) - end - end - - funcs.SetDict = function(self,dict) - self.IndexDict = dict - end - - local mt = {} - mt.__index = funcs - - local function new(mapId,mapSizeX,mapSizeY,iconSizeX,iconSizeY) - local obj = setmetatable({ - MapId = mapId, - MapSizeX = mapSizeX, - MapSizeY = mapSizeY, - IconSizeX = iconSizeX, - IconSizeY = iconSizeY, - NumX = mapSizeX/iconSizeX, - IndexDict = {} - },mt) - return obj - end - - local function newLinear(mapId,iconSizeX,iconSizeY) - local obj = setmetatable({ - MapId = mapId, - IconSizeX = iconSizeX, - IconSizeY = iconSizeY, - IndexDict = {} - },mt) - return obj - end - - return {new = new, newLinear = newLinear} - end)() - - Lib.ScrollBar = (function() - local funcs = {} - local user = service.UserInputService - local mouse = plr:GetMouse() - local checkMouseInGui = Lib.CheckMouseInGui - local createArrow = Lib.CreateArrow - - local function drawThumb(self) - local total = self.TotalSpace - local visible = self.VisibleSpace - local index = self.Index - local scrollThumb = self.GuiElems.ScrollThumb - local scrollThumbFrame = self.GuiElems.ScrollThumbFrame - - if not (self:CanScrollUp() or self:CanScrollDown()) then - scrollThumb.Visible = false - else - scrollThumb.Visible = true - end - - if self.Horizontal then - scrollThumb.Size = UDim2.new(visible/total,0,1,0) - if scrollThumb.AbsoluteSize.X < 16 then - scrollThumb.Size = UDim2.new(0,16,1,0) - end - local fs = scrollThumbFrame.AbsoluteSize.X - local bs = scrollThumb.AbsoluteSize.X - scrollThumb.Position = UDim2.new(self:GetScrollPercent()*(fs-bs)/fs,0,0,0) - else - scrollThumb.Size = UDim2.new(1,0,visible/total,0) - if scrollThumb.AbsoluteSize.Y < 16 then - scrollThumb.Size = UDim2.new(1,0,0,16) - end - local fs = scrollThumbFrame.AbsoluteSize.Y - local bs = scrollThumb.AbsoluteSize.Y - scrollThumb.Position = UDim2.new(0,0,self:GetScrollPercent()*(fs-bs)/fs,0) - end - end - - local function createFrame(self) - local newFrame = createSimple("Frame",{Style=0,Active=true,AnchorPoint=Vector2.new(0,0),BackgroundColor3=Color3.new(0.35294118523598,0.35294118523598,0.35294118523598),BackgroundTransparency=0.2,BorderColor3=Color3.new(0.10588236153126,0.16470588743687,0.20784315466881),BorderSizePixel=0,ClipsDescendants=false,Draggable=false,Position=UDim2.new(1,-16,0,0),Rotation=0,Selectable=false,Size=UDim2.new(0,16,1,0),SizeConstraint=0,Visible=true,ZIndex=1,Name="ScrollBar",}) - local button1 = nil - local button2 = nil - - if self.Horizontal then - newFrame.Size = UDim2.new(1,0,0,16) - button1 = createSimple("ImageButton",{ - Parent = newFrame, - Name = "Left", - Size = UDim2.new(0,16,0,16), - BackgroundTransparency = 1, - BorderSizePixel = 0, - AutoButtonColor = false - }) - createArrow(16,4,"left").Parent = button1 - button2 = createSimple("ImageButton",{ - Parent = newFrame, - Name = "Right", - Position = UDim2.new(1,-16,0,0), - Size = UDim2.new(0,16,0,16), - BackgroundTransparency = 1, - BorderSizePixel = 0, - AutoButtonColor = false - }) - createArrow(16,4,"right").Parent = button2 - else - newFrame.Size = UDim2.new(0,16,1,0) - button1 = createSimple("ImageButton",{ - Parent = newFrame, - Name = "Up", - Size = UDim2.new(0,16,0,16), - BackgroundTransparency = 1, - BorderSizePixel = 0, - AutoButtonColor = false - }) - createArrow(16,4,"up").Parent = button1 - button2 = createSimple("ImageButton",{ - Parent = newFrame, - Name = "Down", - Position = UDim2.new(0,0,1,-16), - Size = UDim2.new(0,16,0,16), - BackgroundTransparency = 1, - BorderSizePixel = 0, - AutoButtonColor = false - }) - createArrow(16,4,"down").Parent = button2 - end - - local scrollThumbFrame = createSimple("Frame",{ - BackgroundTransparency = 1, - Parent = newFrame - }) - if self.Horizontal then - scrollThumbFrame.Position = UDim2.new(0,16,0,0) - scrollThumbFrame.Size = UDim2.new(1,-32,1,0) - else - scrollThumbFrame.Position = UDim2.new(0,0,0,16) - scrollThumbFrame.Size = UDim2.new(1,0,1,-32) - end - - local scrollThumb = createSimple("Frame",{ - BackgroundColor3 = Color3.new(120/255,120/255,120/255), - BorderSizePixel = 0, - Parent = scrollThumbFrame - }) - - local markerFrame = createSimple("Frame",{ - BackgroundTransparency = 1, - Name = "Markers", - Size = UDim2.new(1,0,1,0), - Parent = scrollThumbFrame - }) - - local buttonPress = false - local thumbPress = false - local thumbFramePress = false - - --local thumbColor = Color3.new(120/255,120/255,120/255) - --local thumbSelectColor = Color3.new(140/255,140/255,140/255) - button1.InputBegan:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement and not buttonPress and self:CanScrollUp() then button1.BackgroundTransparency = 0.8 end - if input.UserInputType ~= Enum.UserInputType.MouseButton1 and input.UserInputType ~= Enum.UserInputType.Touch or not self:CanScrollUp() then return end - buttonPress = true - button1.BackgroundTransparency = 0.5 - if self:CanScrollUp() then self:ScrollUp() self.Scrolled:Fire() end - local buttonTick = tick() - local releaseEvent - releaseEvent = user.InputEnded:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end - releaseEvent:Disconnect() - if checkMouseInGui(button1) and self:CanScrollUp() then button1.BackgroundTransparency = 0.8 else button1.BackgroundTransparency = 1 end - buttonPress = false - end) - while buttonPress do - if tick() - buttonTick >= 0.3 and self:CanScrollUp() then - self:ScrollUp() - self.Scrolled:Fire() - end - wait() - end - end) - button1.InputEnded:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement and not buttonPress then button1.BackgroundTransparency = 1 end - end) - button2.InputBegan:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement and not buttonPress and self:CanScrollDown() then button2.BackgroundTransparency = 0.8 end - if input.UserInputType ~= Enum.UserInputType.MouseButton1 and input.UserInputType ~= Enum.UserInputType.Touch or not self:CanScrollDown() then return end - buttonPress = true - button2.BackgroundTransparency = 0.5 - if self:CanScrollDown() then self:ScrollDown() self.Scrolled:Fire() end - local buttonTick = tick() - local releaseEvent - releaseEvent = user.InputEnded:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end - releaseEvent:Disconnect() - if checkMouseInGui(button2) and self:CanScrollDown() then button2.BackgroundTransparency = 0.8 else button2.BackgroundTransparency = 1 end - buttonPress = false - end) - while buttonPress do - if tick() - buttonTick >= 0.3 and self:CanScrollDown() then - self:ScrollDown() - self.Scrolled:Fire() - end - wait() - end - end) - button2.InputEnded:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement and not buttonPress then button2.BackgroundTransparency = 1 end - end) - - scrollThumb.InputBegan:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement and not thumbPress then - scrollThumb.BackgroundTransparency = 0.2 - scrollThumb.BackgroundColor3 = self.ThumbSelectColor - end - if input.UserInputType ~= Enum.UserInputType.MouseButton1 - and input.UserInputType ~= Enum.UserInputType.Touch then - return - end - - local dir = self.Horizontal and "X" or "Y" - local lastThumbPos = nil - - buttonPress = false - thumbFramePress = false - thumbPress = true - scrollThumb.BackgroundTransparency = 0 - local mouseOffset = mouse[dir] - scrollThumb.AbsolutePosition[dir] - local mouseStart = mouse[dir] - local releaseEvent - local mouseEvent - releaseEvent = user.InputEnded:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end - releaseEvent:Disconnect() - if mouseEvent then mouseEvent:Disconnect() end - if checkMouseInGui(scrollThumb) then scrollThumb.BackgroundTransparency = 0.2 else scrollThumb.BackgroundTransparency = 0 scrollThumb.BackgroundColor3 = self.ThumbColor end - thumbPress = false - end) - self:Update() - - mouseEvent = user.InputChanged:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement and thumbPress and releaseEvent.Connected then - local thumbFrameSize = scrollThumbFrame.AbsoluteSize[dir]-scrollThumb.AbsoluteSize[dir] - local pos = mouse[dir] - scrollThumbFrame.AbsolutePosition[dir] - mouseOffset - if pos > thumbFrameSize then - pos = thumbFrameSize - elseif pos < 0 then - pos = 0 - end - if lastThumbPos ~= pos then - lastThumbPos = pos - self:ScrollTo(math.floor(0.5+pos/thumbFrameSize*(self.TotalSpace-self.VisibleSpace))) - end - wait() - end - end) - end) - scrollThumb.InputEnded:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement and not thumbPress then scrollThumb.BackgroundTransparency = 0 scrollThumb.BackgroundColor3 = self.ThumbColor end - end) - scrollThumbFrame.InputBegan:Connect(function(input) - if (input.UserInputType ~= Enum.UserInputType.MouseButton1 and input.UserInputType ~= Enum.UserInputType.Touch) or checkMouseInGui(scrollThumb) then return end - - local dir = self.Horizontal and "X" or "Y" - local scrollDir = 0 - if mouse[dir] >= scrollThumb.AbsolutePosition[dir] + scrollThumb.AbsoluteSize[dir] then - scrollDir = 1 - end - - local function doTick() - local scrollSize = self.VisibleSpace - 1 - if scrollDir == 0 and mouse[dir] < scrollThumb.AbsolutePosition[dir] then - self:ScrollTo(self.Index - scrollSize) - elseif scrollDir == 1 and mouse[dir] >= scrollThumb.AbsolutePosition[dir] + scrollThumb.AbsoluteSize[dir] then - self:ScrollTo(self.Index + scrollSize) - end - end - - thumbPress = false - thumbFramePress = true - doTick() - local thumbFrameTick = tick() - local releaseEvent - releaseEvent = user.InputEnded:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end - releaseEvent:Disconnect() - thumbFramePress = false - end) - while thumbFramePress do - if tick() - thumbFrameTick >= 0.3 and checkMouseInGui(scrollThumbFrame) then - doTick() - end - wait() - end - end) - - newFrame.MouseWheelForward:Connect(function() - self:ScrollTo(self.Index - self.WheelIncrement) - end) - - newFrame.MouseWheelBackward:Connect(function() - self:ScrollTo(self.Index + self.WheelIncrement) - end) - - self.GuiElems.ScrollThumb = scrollThumb - self.GuiElems.ScrollThumbFrame = scrollThumbFrame - self.GuiElems.Button1 = button1 - self.GuiElems.Button2 = button2 - self.GuiElems.MarkerFrame = markerFrame - - return newFrame - end - - funcs.Update = function(self,nocallback) - local total = self.TotalSpace - local visible = self.VisibleSpace - local index = self.Index - local button1 = self.GuiElems.Button1 - local button2 = self.GuiElems.Button2 - - self.Index = math.clamp(self.Index,0,math.max(0,total-visible)) - - if self.LastTotalSpace ~= self.TotalSpace then - self.LastTotalSpace = self.TotalSpace - self:UpdateMarkers() - end - - if self:CanScrollUp() then - for i,v in pairs(button1.Arrow:GetChildren()) do - v.BackgroundTransparency = 0 - end - else - button1.BackgroundTransparency = 1 - for i,v in pairs(button1.Arrow:GetChildren()) do - v.BackgroundTransparency = 0.5 - end - end - if self:CanScrollDown() then - for i,v in pairs(button2.Arrow:GetChildren()) do - v.BackgroundTransparency = 0 - end - else - button2.BackgroundTransparency = 1 - for i,v in pairs(button2.Arrow:GetChildren()) do - v.BackgroundTransparency = 0.5 - end - end - - drawThumb(self) - end - - funcs.UpdateMarkers = function(self) - local markerFrame = self.GuiElems.MarkerFrame - markerFrame:ClearAllChildren() - - for i,v in pairs(self.Markers) do - if i < self.TotalSpace then - createSimple("Frame",{ - BackgroundTransparency = 0, - BackgroundColor3 = v, - BorderSizePixel = 0, - Position = self.Horizontal and UDim2.new(i/self.TotalSpace,0,1,-6) or UDim2.new(1,-6,i/self.TotalSpace,0), - Size = self.Horizontal and UDim2.new(0,1,0,6) or UDim2.new(0,6,0,1), - Name = "Marker"..tostring(i), - Parent = markerFrame - }) - end - end - end - - funcs.AddMarker = function(self,ind,color) - self.Markers[ind] = color or Color3.new(0,0,0) - end - funcs.ScrollTo = function(self,ind,nocallback) - self.Index = ind - self:Update() - if not nocallback then - self.Scrolled:Fire() - end - end - funcs.ScrollUp = function(self) - self.Index = self.Index - self.Increment - self:Update() - end - funcs.ScrollDown = function(self) - self.Index = self.Index + self.Increment - self:Update() - end - funcs.CanScrollUp = function(self) - return self.Index > 0 - end - funcs.CanScrollDown = function(self) - return self.Index + self.VisibleSpace < self.TotalSpace - end - funcs.GetScrollPercent = function(self) - return self.Index/(self.TotalSpace-self.VisibleSpace) - end - funcs.SetScrollPercent = function(self,perc) - self.Index = math.floor(perc*(self.TotalSpace-self.VisibleSpace)) - self:Update() - end - - funcs.Texture = function(self,data) - self.ThumbColor = data.ThumbColor or Color3.new(0,0,0) - self.ThumbSelectColor = data.ThumbSelectColor or Color3.new(0,0,0) - self.GuiElems.ScrollThumb.BackgroundColor3 = data.ThumbColor or Color3.new(0,0,0) - self.Gui.BackgroundColor3 = data.FrameColor or Color3.new(0,0,0) - self.GuiElems.Button1.BackgroundColor3 = data.ButtonColor or Color3.new(0,0,0) - self.GuiElems.Button2.BackgroundColor3 = data.ButtonColor or Color3.new(0,0,0) - for i,v in pairs(self.GuiElems.Button1.Arrow:GetChildren()) do - v.BackgroundColor3 = data.ArrowColor or Color3.new(0,0,0) - end - for i,v in pairs(self.GuiElems.Button2.Arrow:GetChildren()) do - v.BackgroundColor3 = data.ArrowColor or Color3.new(0,0,0) - end - end - - funcs.SetScrollFrame = function(self,frame) - if self.ScrollUpEvent then self.ScrollUpEvent:Disconnect() self.ScrollUpEvent = nil end - if self.ScrollDownEvent then self.ScrollDownEvent:Disconnect() self.ScrollDownEvent = nil end - self.ScrollUpEvent = frame.MouseWheelForward:Connect(function() self:ScrollTo(self.Index - self.WheelIncrement) end) - self.ScrollDownEvent = frame.MouseWheelBackward:Connect(function() self:ScrollTo(self.Index + self.WheelIncrement) end) - end - - local mt = {} - mt.__index = funcs - - local function new(hor) - local obj = setmetatable({ - Index = 0, - VisibleSpace = 0, - TotalSpace = 0, - Increment = 1, - WheelIncrement = 1, - Markers = {}, - GuiElems = {}, - Horizontal = hor, - LastTotalSpace = 0, - Scrolled = Lib.Signal.new() - },mt) - obj.Gui = createFrame(obj) - obj:Texture({ - ThumbColor = Color3.fromRGB(60,60,60), - ThumbSelectColor = Color3.fromRGB(75,75,75), - ArrowColor = Color3.new(1,1,1), - FrameColor = Color3.fromRGB(40,40,40), - ButtonColor = Color3.fromRGB(75,75,75) - }) - return obj - end - - return {new = new} - end)() - - Lib.Window = (function() - local funcs = {} - local static = {MinWidth = 200, FreeWidth = 200, ShowWindow = nil, SetSideVisible = nil} - local mouse = plr:GetMouse() - local sidesGui,alignIndicator - local visibleWindows = {} - local leftSide = {Width = 300, Windows = {}, ResizeCons = {}, Hidden = true, Resizing = false} - local rightSide = {Width = 300, Windows = {}, ResizeCons = {}, Hidden = true, Resizing = false} - - local displayOrderStart - local sideDisplayOrder - local sideTweenInfo = TweenInfo.new(0.3,Enum.EasingStyle.Quad,Enum.EasingDirection.Out) - local tweens = {} - local isA = game.IsA - - local theme = { - MainColor1 = Color3.fromRGB(52,52,52), - MainColor2 = Color3.fromRGB(45,45,45), - Button = Color3.fromRGB(60,60,60) - } - - local function stopTweens() - for i = 1,#tweens do - tweens[i]:Cancel() - end - tweens = {} - end - - local function resizeHook(self,resizer,dir) - local guiMain = self.GuiElems.Main - resizer.InputBegan:Connect(function(input) - if not self.Dragging and not self.Resizing and self.Resizable and self.ResizableInternal then - local isH = dir:find("[WE]") and true - local isV = dir:find("[NS]") and true - local signX = dir:find("W",1,true) and -1 or 1 - local signY = dir:find("N",1,true) and -1 or 1 - - if self.Minimized and isV then return end - - if input.UserInputType == Enum.UserInputType.MouseMovement then - resizer.BackgroundTransparency = 0.5 - elseif input.UserInputType == Enum.UserInputType.MouseButton1 then - local releaseEvent,mouseEvent - - local offX = mouse.X - resizer.AbsolutePosition.X - local offY = mouse.Y - resizer.AbsolutePosition.Y - - self.Resizing = resizer - resizer.BackgroundTransparency = 1 - - releaseEvent = service.UserInputService.InputEnded:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseButton1 then - releaseEvent:Disconnect() - mouseEvent:Disconnect() - self.Resizing = false - resizer.BackgroundTransparency = 1 - end - end) - - mouseEvent = service.UserInputService.InputChanged:Connect(function(input) - if self.Resizable and self.ResizableInternal and input.UserInputType == Enum.UserInputType.MouseMovement then - self:StopTweens() - local deltaX = input.Position.X - resizer.AbsolutePosition.X - offX - local deltaY = input.Position.Y - resizer.AbsolutePosition.Y - offY - - if guiMain.AbsoluteSize.X + deltaX*signX < self.MinX then deltaX = signX*(self.MinX - guiMain.AbsoluteSize.X) end - if guiMain.AbsoluteSize.Y + deltaY*signY < self.MinY then deltaY = signY*(self.MinY - guiMain.AbsoluteSize.Y) end - if signY < 0 and guiMain.AbsolutePosition.Y + deltaY < 0 then deltaY = -guiMain.AbsolutePosition.Y end - - guiMain.Position = guiMain.Position + UDim2.new(0,(signX < 0 and deltaX or 0),0,(signY < 0 and deltaY or 0)) - self.SizeX = self.SizeX + (isH and deltaX*signX or 0) - self.SizeY = self.SizeY + (isV and deltaY*signY or 0) - guiMain.Size = UDim2.new(0,self.SizeX,0,self.Minimized and 20 or self.SizeY) - - --if isH then self.SizeX = guiMain.AbsoluteSize.X end - --if isV then self.SizeY = guiMain.AbsoluteSize.Y end - end - end) - end - end - end) - - resizer.InputEnded:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement and self.Resizing ~= resizer then - resizer.BackgroundTransparency = 1 - end - end) - end - - local updateWindows - - local function moveToTop(window) - local found = table.find(visibleWindows,window) - if found then - table.remove(visibleWindows,found) - table.insert(visibleWindows,1,window) - updateWindows() - end - end - - local function sideHasRoom(side,neededSize) - local maxY = sidesGui.AbsoluteSize.Y - (math.max(0,#side.Windows - 1) * 4) - local inc = 0 - for i,v in pairs(side.Windows) do - inc = inc + (v.MinY or 100) - if inc > maxY - neededSize then return false end - end - - return true - end - - local function getSideInsertPos(side,curY) - local pos = #side.Windows + 1 - local range = {0,sidesGui.AbsoluteSize.Y} - - for i,v in pairs(side.Windows) do - local midPos = v.PosY + v.SizeY/2 - if curY <= midPos then - pos = i - range[2] = midPos - break - else - range[1] = midPos - end - end - - return pos,range - end - - local function focusInput(self,obj) - if isA(obj,"GuiButton") then - obj.MouseButton1Down:Connect(function() - moveToTop(self) - end) - elseif isA(obj,"TextBox") then - obj.Focused:Connect(function() - moveToTop(self) - end) - end - end - - local createGui = function(self) - local gui = create({ - {1,"ScreenGui",{Name="Dex_Window",ResetOnSpawn=false}}, - {2,"Frame",{Active=true,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="Main",Parent={1},Position=UDim2.new(0.40000000596046,0,0.40000000596046,0),Size=UDim2.new(0,300,0,300),}}, - {3,"Frame",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BackgroundTransparency=0.1,BorderSizePixel=0,Name="Content",Parent={2},Position=UDim2.new(0,0,0,20),Size=UDim2.new(1,0,1,-20),ClipsDescendants=true}}, - {4,"Frame",{BackgroundColor3=Color3.fromRGB(33,33,33),BorderSizePixel=0,Name="Line",Parent={3},Size=UDim2.new(1,0,0,1),}}, - {5,"Frame",{BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),BorderSizePixel=0,Name="TopBar",Parent={2},Size=UDim2.new(1,0,0,20),}}, - {6,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={5},Position=UDim2.new(0,5,0,0),Size=UDim2.new(1,-10,0,20),Text="Window",TextColor3=Color3.new(1,1,1),TextSize=14,TextXAlignment=0,}}, - {7,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Close",Parent={5},Position=UDim2.new(1,-18,0,2),Size=UDim2.new(0,16,0,16),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,}}, - {8,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://5054663650",Parent={7},Position=UDim2.new(0,3,0,3),Size=UDim2.new(0,10,0,10),}}, - {9,"UICorner",{CornerRadius=UDim.new(0,4),Parent={7},}}, - {10,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Minimize",Parent={5},Position=UDim2.new(1,-36,0,2),Size=UDim2.new(0,16,0,16),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,}}, - {11,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://5034768003",Parent={10},Position=UDim2.new(0,3,0,3),Size=UDim2.new(0,10,0,10),}}, - {12,"UICorner",{CornerRadius=UDim.new(0,4),Parent={10},}}, - {13,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Image="rbxassetid://1427967925",Name="Outlines",Parent={2},Position=UDim2.new(0,-5,0,-5),ScaleType=1,Size=UDim2.new(1,10,1,10),SliceCenter=Rect.new(6,6,25,25),TileSize=UDim2.new(0,20,0,20),}}, - {14,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Name="ResizeControls",Parent={2},Position=UDim2.new(0,-5,0,-5),Size=UDim2.new(1,10,1,10),}}, - {15,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.27450981736183,0.27450981736183,0.27450981736183),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="North",Parent={14},Position=UDim2.new(0,5,0,0),Size=UDim2.new(1,-10,0,5),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, - {16,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.27450981736183,0.27450981736183,0.27450981736183),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="South",Parent={14},Position=UDim2.new(0,5,1,-5),Size=UDim2.new(1,-10,0,5),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, - {17,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.27450981736183,0.27450981736183,0.27450981736183),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="NorthEast",Parent={14},Position=UDim2.new(1,-5,0,0),Size=UDim2.new(0,5,0,5),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, - {18,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.27450981736183,0.27450981736183,0.27450981736183),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="East",Parent={14},Position=UDim2.new(1,-5,0,5),Size=UDim2.new(0,5,1,-10),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, - {19,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.27450981736183,0.27450981736183,0.27450981736183),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="West",Parent={14},Position=UDim2.new(0,0,0,5),Size=UDim2.new(0,5,1,-10),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, - {20,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.27450981736183,0.27450981736183,0.27450981736183),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="SouthEast",Parent={14},Position=UDim2.new(1,-5,1,-5),Size=UDim2.new(0,5,0,5),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, - {21,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.27450981736183,0.27450981736183,0.27450981736183),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="NorthWest",Parent={14},Size=UDim2.new(0,5,0,5),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, - {22,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.27450981736183,0.27450981736183,0.27450981736183),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="SouthWest",Parent={14},Position=UDim2.new(0,0,1,-5),Size=UDim2.new(0,5,0,5),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, - }) - - local guiMain = gui.Main - local guiTopBar = guiMain.TopBar - local guiResizeControls = guiMain.ResizeControls - - self.GuiElems.Main = guiMain - self.GuiElems.TopBar = guiMain.TopBar - self.GuiElems.Content = guiMain.Content - self.GuiElems.Line = guiMain.Content.Line - self.GuiElems.Outlines = guiMain.Outlines - self.GuiElems.Title = guiTopBar.Title - self.GuiElems.Close = guiTopBar.Close - self.GuiElems.Minimize = guiTopBar.Minimize - self.GuiElems.ResizeControls = guiResizeControls - self.ContentPane = guiMain.Content - - guiTopBar.InputBegan:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseButton1 and self.Draggable then - local releaseEvent,mouseEvent - - local maxX = sidesGui.AbsoluteSize.X - local initX = guiMain.AbsolutePosition.X - local initY = guiMain.AbsolutePosition.Y - local offX = mouse.X - initX - local offY = mouse.Y - initY - - local alignInsertPos,alignInsertSide - - local guiDragging = true - - releaseEvent = game:GetService("UserInputService").InputEnded:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseButton1 then - releaseEvent:Disconnect() - mouseEvent:Disconnect() - guiDragging = false - alignIndicator.Parent = nil - if alignInsertSide then - local targetSide = (alignInsertSide == "left" and leftSide) or (alignInsertSide == "right" and rightSide) - self:AlignTo(targetSide,alignInsertPos) - end - end - end) - - mouseEvent = game:GetService("UserInputService").InputChanged:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement and self.Draggable and not self.Closed then - if self.Aligned then - if leftSide.Resizing or rightSide.Resizing then return end - local posX,posY = input.Position.X-offX,input.Position.Y-offY - local delta = math.sqrt((posX-initX)^2 + (posY-initY)^2) - if delta >= 5 then - self:SetAligned(false) - end - else - local inputX,inputY = input.Position.X,input.Position.Y - local posX,posY = inputX-offX,inputY-offY - if posY < 0 then posY = 0 end - guiMain.Position = UDim2.new(0,posX,0,posY) - - if self.Resizable and self.Alignable then - if inputX < 25 then - if sideHasRoom(leftSide,self.MinY or 100) then - local insertPos,range = getSideInsertPos(leftSide,inputY) - alignIndicator.Indicator.Position = UDim2.new(0,-15,0,range[1]) - alignIndicator.Indicator.Size = UDim2.new(0,40,0,range[2]-range[1]) - Lib.ShowGui(alignIndicator) - alignInsertPos = insertPos - alignInsertSide = "left" - return - end - elseif inputX >= maxX - 25 then - if sideHasRoom(rightSide,self.MinY or 100) then - local insertPos,range = getSideInsertPos(rightSide,inputY) - alignIndicator.Indicator.Position = UDim2.new(0,maxX-25,0,range[1]) - alignIndicator.Indicator.Size = UDim2.new(0,40,0,range[2]-range[1]) - Lib.ShowGui(alignIndicator) - alignInsertPos = insertPos - alignInsertSide = "right" - return - end - end - end - alignIndicator.Parent = nil - alignInsertPos = nil - alignInsertSide = nil - end - end - end) - end - end) - - guiTopBar.Close.MouseButton1Click:Connect(function() - if self.Closed then return end - self:Close() - end) - - guiTopBar.Minimize.MouseButton1Click:Connect(function() - if self.Closed then return end - if self.Aligned then - self:SetAligned(false) - else - self:SetMinimized() - end - end) - - guiTopBar.Minimize.MouseButton2Click:Connect(function() - if self.Closed then return end - if not self.Aligned then - self:SetMinimized(nil,2) - guiTopBar.Minimize.BackgroundTransparency = 1 - end - end) - - guiMain.InputBegan:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseButton1 and not self.Aligned and not self.Closed then - moveToTop(self) - end - end) - - guiMain:GetPropertyChangedSignal("AbsolutePosition"):Connect(function() - local absPos = guiMain.AbsolutePosition - self.PosX = absPos.X - self.PosY = absPos.Y - end) - - resizeHook(self,guiResizeControls.North,"N") - resizeHook(self,guiResizeControls.NorthEast,"NE") - resizeHook(self,guiResizeControls.East,"E") - resizeHook(self,guiResizeControls.SouthEast,"SE") - resizeHook(self,guiResizeControls.South,"S") - resizeHook(self,guiResizeControls.SouthWest,"SW") - resizeHook(self,guiResizeControls.West,"W") - resizeHook(self,guiResizeControls.NorthWest,"NW") - - guiMain.Size = UDim2.new(0,self.SizeX,0,self.SizeY) - - gui.DescendantAdded:Connect(function(obj) focusInput(self,obj) end) - local descs = gui:GetDescendants() - for i = 1,#descs do - focusInput(self,descs[i]) - end - - self.MinimizeAnim = Lib.ButtonAnim(guiTopBar.Minimize) - self.CloseAnim = Lib.ButtonAnim(guiTopBar.Close) - - return gui - end - - local function updateSideFrames(noTween) - stopTweens() - leftSide.Frame.Size = UDim2.new(0,leftSide.Width,1,0) - rightSide.Frame.Size = UDim2.new(0,rightSide.Width,1,0) - leftSide.Frame.Resizer.Position = UDim2.new(0,leftSide.Width,0,0) - rightSide.Frame.Resizer.Position = UDim2.new(0,-5,0,0) - - --leftSide.Frame.Visible = (#leftSide.Windows > 0) - --rightSide.Frame.Visible = (#rightSide.Windows > 0) - - --[[if #leftSide.Windows > 0 and leftSide.Frame.Position == UDim2.new(0,-leftSide.Width-5,0,0) then - leftSide.Frame:TweenPosition(UDim2.new(0,0,0,0),Enum.EasingDirection.Out,Enum.EasingStyle.Quad,0.3,true) - elseif #leftSide.Windows == 0 and leftSide.Frame.Position == UDim2.new(0,0,0,0) then - leftSide.Frame:TweenPosition(UDim2.new(0,-leftSide.Width-5,0,0),Enum.EasingDirection.Out,Enum.EasingStyle.Quad,0.3,true) - end - local rightTweenPos = (#rightSide.Windows == 0 and UDim2.new(1,5,0,0) or UDim2.new(1,-rightSide.Width,0,0)) - rightSide.Frame:TweenPosition(rightTweenPos,Enum.EasingDirection.Out,Enum.EasingStyle.Quad,0.3,true)]] - local leftHidden = #leftSide.Windows == 0 or leftSide.Hidden - local rightHidden = #rightSide.Windows == 0 or rightSide.Hidden - local leftPos = (leftHidden and UDim2.new(0,-leftSide.Width-10,0,0) or UDim2.new(0,0,0,0)) - local rightPos = (rightHidden and UDim2.new(1,10,0,0) or UDim2.new(1,-rightSide.Width,0,0)) - - sidesGui.LeftToggle.Text = leftHidden and ">" or "<" - sidesGui.RightToggle.Text = rightHidden and "<" or ">" - - if not noTween then - local function insertTween(...) - local tween = service.TweenService:Create(...) - tweens[#tweens+1] = tween - tween:Play() - end - insertTween(leftSide.Frame,sideTweenInfo,{Position = leftPos}) - insertTween(rightSide.Frame,sideTweenInfo,{Position = rightPos}) - insertTween(sidesGui.LeftToggle,sideTweenInfo,{Position = UDim2.new(0,#leftSide.Windows == 0 and -16 or 0,0,-36)}) - insertTween(sidesGui.RightToggle,sideTweenInfo,{Position = UDim2.new(1,#rightSide.Windows == 0 and 0 or -16,0,-36)}) - else - leftSide.Frame.Position = leftPos - rightSide.Frame.Position = rightPos - sidesGui.LeftToggle.Position = UDim2.new(0,#leftSide.Windows == 0 and -16 or 0,0,-36) - sidesGui.RightToggle.Position = UDim2.new(1,#rightSide.Windows == 0 and 0 or -16,0,-36) - end - end - - local function getSideFramePos(side) - local leftHidden = #leftSide.Windows == 0 or leftSide.Hidden - local rightHidden = #rightSide.Windows == 0 or rightSide.Hidden - if side == leftSide then - return (leftHidden and UDim2.new(0,-leftSide.Width-10,0,0) or UDim2.new(0,0,0,0)) - else - return (rightHidden and UDim2.new(1,10,0,0) or UDim2.new(1,-rightSide.Width,0,0)) - end - end - - local function sideResized(side) - local currentPos = 0 - local sideFramePos = getSideFramePos(side) - for i,v in pairs(side.Windows) do - v.SizeX = side.Width - v.GuiElems.Main.Size = UDim2.new(0,side.Width,0,v.SizeY) - v.GuiElems.Main.Position = UDim2.new(sideFramePos.X.Scale,sideFramePos.X.Offset,0,currentPos) - currentPos = currentPos + v.SizeY+4 - end - end - - local function sideResizerHook(resizer,dir,side,pos) - local mouse = Main.Mouse - local windows = side.Windows - - resizer.InputBegan:Connect(function(input) - if not side.Resizing then - if input.UserInputType == Enum.UserInputType.MouseMovement then - resizer.BackgroundColor3 = theme.MainColor2 - elseif input.UserInputType == Enum.UserInputType.MouseButton1 then - local releaseEvent,mouseEvent - - local offX = mouse.X - resizer.AbsolutePosition.X - local offY = mouse.Y - resizer.AbsolutePosition.Y - - side.Resizing = resizer - resizer.BackgroundColor3 = theme.MainColor2 - - releaseEvent = service.UserInputService.InputEnded:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseButton1 then - releaseEvent:Disconnect() - mouseEvent:Disconnect() - side.Resizing = false - resizer.BackgroundColor3 = theme.Button - end - end) - - mouseEvent = service.UserInputService.InputChanged:Connect(function(input) - if not resizer.Parent then - releaseEvent:Disconnect() - mouseEvent:Disconnect() - side.Resizing = false - return - end - if input.UserInputType == Enum.UserInputType.MouseMovement then - if dir == "V" then - local delta = input.Position.Y - resizer.AbsolutePosition.Y - offY - - if delta > 0 then - local neededSize = delta - for i = pos+1,#windows do - local window = windows[i] - local newSize = math.max(window.SizeY-neededSize,(window.MinY or 100)) - neededSize = neededSize - (window.SizeY - newSize) - window.SizeY = newSize - end - windows[pos].SizeY = windows[pos].SizeY + math.max(0,delta-neededSize) - else - local neededSize = -delta - for i = pos,1,-1 do - local window = windows[i] - local newSize = math.max(window.SizeY-neededSize,(window.MinY or 100)) - neededSize = neededSize - (window.SizeY - newSize) - window.SizeY = newSize - end - windows[pos+1].SizeY = windows[pos+1].SizeY + math.max(0,-delta-neededSize) - end - - updateSideFrames() - sideResized(side) - elseif dir == "H" then - local maxWidth = math.max(300,sidesGui.AbsoluteSize.X-static.FreeWidth) - local otherSide = (side == leftSide and rightSide or leftSide) - local delta = input.Position.X - resizer.AbsolutePosition.X - offX - delta = (side == leftSide and delta or -delta) - - local proposedSize = math.max(static.MinWidth,side.Width + delta) - if proposedSize + otherSide.Width <= maxWidth then - side.Width = proposedSize - else - local newOtherSize = maxWidth - proposedSize - if newOtherSize >= static.MinWidth then - side.Width = proposedSize - otherSide.Width = newOtherSize - else - side.Width = maxWidth - static.MinWidth - otherSide.Width = static.MinWidth - end - end - - updateSideFrames(true) - sideResized(side) - sideResized(otherSide) - end - end - end) - end - end - end) - - resizer.InputEnded:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement and side.Resizing ~= resizer then - resizer.BackgroundColor3 = theme.Button - end - end) - end - - local function renderSide(side,noTween) -- TODO: Use existing resizers - local currentPos = 0 - local sideFramePos = getSideFramePos(side) - local template = side.WindowResizer:Clone() - for i,v in pairs(side.ResizeCons) do v:Disconnect() end - for i,v in pairs(side.Frame:GetChildren()) do if v.Name == "WindowResizer" then v:Destroy() end end - side.ResizeCons = {} - side.Resizing = nil - - for i,v in pairs(side.Windows) do - v.SidePos = i - local isEnd = i == #side.Windows - local size = UDim2.new(0,side.Width,0,v.SizeY) - local pos = UDim2.new(sideFramePos.X.Scale,sideFramePos.X.Offset,0,currentPos) - Lib.ShowGui(v.Gui) - --v.GuiElems.Main:TweenSizeAndPosition(size,pos,Enum.EasingDirection.Out,Enum.EasingStyle.Quad,0.3,true) - if noTween then - v.GuiElems.Main.Size = size - v.GuiElems.Main.Position = pos - else - local tween = service.TweenService:Create(v.GuiElems.Main,sideTweenInfo,{Size = size, Position = pos}) - tweens[#tweens+1] = tween - tween:Play() - end - currentPos = currentPos + v.SizeY+4 - - if not isEnd then - local newTemplate = template:Clone() - newTemplate.Position = UDim2.new(1,-side.Width,0,currentPos-4) - side.ResizeCons[#side.ResizeCons+1] = v.Gui.Main:GetPropertyChangedSignal("Size"):Connect(function() - newTemplate.Position = UDim2.new(1,-side.Width,0, v.GuiElems.Main.Position.Y.Offset + v.GuiElems.Main.Size.Y.Offset) - end) - side.ResizeCons[#side.ResizeCons+1] = v.Gui.Main:GetPropertyChangedSignal("Position"):Connect(function() - newTemplate.Position = UDim2.new(1,-side.Width,0, v.GuiElems.Main.Position.Y.Offset + v.GuiElems.Main.Size.Y.Offset) - end) - sideResizerHook(newTemplate,"V",side,i) - newTemplate.Parent = side.Frame - end - end - - --side.Frame.Back.Position = UDim2.new(0,0,0,0) - --side.Frame.Back.Size = UDim2.new(0,side.Width,1,0) - end - - local function updateSide(side,noTween) - local oldHeight = 0 - local currentPos = 0 - local neededSize = 0 - local windows = side.Windows - local height = sidesGui.AbsoluteSize.Y - (math.max(0,#windows - 1) * 4) - - for i,v in pairs(windows) do oldHeight = oldHeight + v.SizeY end - for i,v in pairs(windows) do - if i == #windows then - v.SizeY = height-currentPos - neededSize = math.max(0,(v.MinY or 100)-v.SizeY) - else - v.SizeY = math.max(math.floor(v.SizeY/oldHeight*height),v.MinY or 100) - end - currentPos = currentPos + v.SizeY - end - - if neededSize > 0 then - for i = #windows-1,1,-1 do - local window = windows[i] - local newSize = math.max(window.SizeY-neededSize,(window.MinY or 100)) - neededSize = neededSize - (window.SizeY - newSize) - window.SizeY = newSize - end - local lastWindow = windows[#windows] - lastWindow.SizeY = (lastWindow.MinY or 100)-neededSize - end - renderSide(side,noTween) - end - - updateWindows = function(noTween) - updateSideFrames(noTween) - updateSide(leftSide,noTween) - updateSide(rightSide,noTween) - local count = 0 - for i = #visibleWindows,1,-1 do - visibleWindows[i].Gui.DisplayOrder = displayOrderStart + count - Lib.ShowGui(visibleWindows[i].Gui) - count = count + 1 - end - - --[[local leftTweenPos = (#leftSide.Windows == 0 and UDim2.new(0,-leftSide.Width-5,0,0) or UDim2.new(0,0,0,0)) - leftSide.Frame:TweenPosition(leftTweenPos,Enum.EasingDirection.Out,Enum.EasingStyle.Quad,0.3,true) - local rightTweenPos = (#rightSide.Windows == 0 and UDim2.new(1,5,0,0) or UDim2.new(1,-rightSide.Width,0,0)) - rightSide.Frame:TweenPosition(rightTweenPos,Enum.EasingDirection.Out,Enum.EasingStyle.Quad,0.3,true)]] - end - - funcs.SetMinimized = function(self,set,mode) - local oldVal = self.Minimized - local newVal - if set == nil then newVal = not self.Minimized else newVal = set end - self.Minimized = newVal - if not mode then mode = 1 end - - local resizeControls = self.GuiElems.ResizeControls - local minimizeControls = {"North","NorthEast","NorthWest","South","SouthEast","SouthWest"} - for i = 1,#minimizeControls do - local control = resizeControls:FindFirstChild(minimizeControls[i]) - if control then control.Visible = not newVal end - end - - if mode == 1 or mode == 2 then - self:StopTweens() - if mode == 1 then - self.GuiElems.Main:TweenSize(UDim2.new(0,self.SizeX,0,newVal and 20 or self.SizeY),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true) - else - local maxY = sidesGui.AbsoluteSize.Y - local newPos = UDim2.new(0,self.PosX,0,newVal and math.min(maxY-20,self.PosY + self.SizeY - 20) or math.max(0,self.PosY - self.SizeY + 20)) - - self.GuiElems.Main:TweenPosition(newPos,Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true) - self.GuiElems.Main:TweenSize(UDim2.new(0,self.SizeX,0,newVal and 20 or self.SizeY),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true) - end - self.GuiElems.Minimize.ImageLabel.Image = newVal and "rbxassetid://5060023708" or "rbxassetid://5034768003" - end - - if oldVal ~= newVal then - if newVal then - self.OnMinimize:Fire() - else - self.OnRestore:Fire() - end - end - end - - funcs.Resize = function(self,sizeX,sizeY) - self.SizeX = sizeX or self.SizeX - self.SizeY = sizeY or self.SizeY - self.GuiElems.Main.Size = UDim2.new(0,self.SizeX,0,self.SizeY) - end - - funcs.SetSize = funcs.Resize - - funcs.SetTitle = function(self,title) - self.GuiElems.Title.Text = title - end - - funcs.SetResizable = function(self,val) - self.Resizable = val - self.GuiElems.ResizeControls.Visible = self.Resizable and self.ResizableInternal - end - - funcs.SetResizableInternal = function(self,val) - self.ResizableInternal = val - self.GuiElems.ResizeControls.Visible = self.Resizable and self.ResizableInternal - end - - funcs.SetAligned = function(self,val) - self.Aligned = val - self:SetResizableInternal(not val) - self.GuiElems.Main.Active = not val - self.GuiElems.Main.Outlines.Visible = not val - if not val then - for i,v in pairs(leftSide.Windows) do if v == self then table.remove(leftSide.Windows,i) break end end - for i,v in pairs(rightSide.Windows) do if v == self then table.remove(rightSide.Windows,i) break end end - if not table.find(visibleWindows,self) then table.insert(visibleWindows,1,self) end - self.GuiElems.Minimize.ImageLabel.Image = "rbxassetid://5034768003" - self.Side = nil - updateWindows() - else - self:SetMinimized(false,3) - for i,v in pairs(visibleWindows) do if v == self then table.remove(visibleWindows,i) break end end - self.GuiElems.Minimize.ImageLabel.Image = "rbxassetid://5448127505" - end - end - - funcs.Add = function(self,obj,name) - if type(obj) == "table" and obj.Gui and obj.Gui:IsA("GuiObject") then - obj.Gui.Parent = self.ContentPane - else - obj.Parent = self.ContentPane - end - if name then self.Elements[name] = obj end - end - - funcs.GetElement = function(self,obj,name) - return self.Elements[name] - end - - funcs.AlignTo = function(self,side,pos,size,silent) - if table.find(side.Windows,self) or self.Closed then return end - - size = size or self.SizeY - if size > 0 and size <= 1 then - local totalSideHeight = 0 - for i,v in pairs(side.Windows) do totalSideHeight = totalSideHeight + v.SizeY end - self.SizeY = (totalSideHeight > 0 and totalSideHeight * size * 2) or size - else - self.SizeY = (size > 0 and size or 100) - end - - self:SetAligned(true) - self.Side = side - self.SizeX = side.Width - self.Gui.DisplayOrder = sideDisplayOrder + 1 - for i,v in pairs(side.Windows) do v.Gui.DisplayOrder = sideDisplayOrder end - pos = math.min(#side.Windows+1, pos or 1) - self.SidePos = pos - table.insert(side.Windows, pos, self) - - if not silent then - side.Hidden = false - end - updateWindows(silent) - end - - funcs.Close = function(self) - self.Closed = true - self:SetResizableInternal(false) - - Lib.FindAndRemove(leftSide.Windows,self) - Lib.FindAndRemove(rightSide.Windows,self) - Lib.FindAndRemove(visibleWindows,self) - - self.MinimizeAnim.Disable() - self.CloseAnim.Disable() - self.ClosedSide = self.Side - self.Side = nil - self.OnDeactivate:Fire() - - if not self.Aligned then - self:StopTweens() - local ti = TweenInfo.new(0.2,Enum.EasingStyle.Quad,Enum.EasingDirection.Out) - - local closeTime = tick() - self.LastClose = closeTime - - self:DoTween(self.GuiElems.Main,ti,{Size = UDim2.new(0,self.SizeX,0,20)}) - self:DoTween(self.GuiElems.Title,ti,{TextTransparency = 1}) - self:DoTween(self.GuiElems.Minimize.ImageLabel,ti,{ImageTransparency = 1}) - self:DoTween(self.GuiElems.Close.ImageLabel,ti,{ImageTransparency = 1}) - Lib.FastWait(0.2) - if closeTime ~= self.LastClose then return end - - self:DoTween(self.GuiElems.TopBar,ti,{BackgroundTransparency = 1}) - self:DoTween(self.GuiElems.Outlines,ti,{ImageTransparency = 1}) - Lib.FastWait(0.2) - if closeTime ~= self.LastClose then return end - end - - self.Aligned = false - self.Gui.Parent = nil - updateWindows(true) - end - - funcs.Hide = funcs.Close - - funcs.IsVisible = function(self) - return not self.Closed and ((self.Side and not self.Side.Hidden) or not self.Side) - end - - funcs.IsContentVisible = function(self) - return self:IsVisible() and not self.Minimized - end - - funcs.Focus = function(self) - moveToTop(self) - end - - funcs.MoveInBoundary = function(self) - local posX,posY = self.PosX,self.PosY - local maxX,maxY = sidesGui.AbsoluteSize.X,sidesGui.AbsoluteSize.Y - posX = math.min(posX,maxX-self.SizeX) - posY = math.min(posY,maxY-20) - self.GuiElems.Main.Position = UDim2.new(0,posX,0,posY) - end - - funcs.DoTween = function(self,...) - local tween = service.TweenService:Create(...) - self.Tweens[#self.Tweens+1] = tween - tween:Play() - end - - funcs.StopTweens = function(self) - for i,v in pairs(self.Tweens) do - v:Cancel() - end - self.Tweens = {} - end - - funcs.Show = function(self,data) - return static.ShowWindow(self,data) - end - - funcs.ShowAndFocus = function(self,data) - static.ShowWindow(self,data) - service.RunService.RenderStepped:wait() - self:Focus() - end - - static.ShowWindow = function(window,data) - data = data or {} - local align = data.Align - local pos = data.Pos - local size = data.Size - local targetSide = (align == "left" and leftSide) or (align == "right" and rightSide) - - if not window.Closed then - if not window.Aligned then - window:SetMinimized(false) - elseif window.Side and not data.Silent then - static.SetSideVisible(window.Side,true) - end - return - end - - window.Closed = false - window.LastClose = tick() - window.GuiElems.Title.TextTransparency = 0 - window.GuiElems.Minimize.ImageLabel.ImageTransparency = 0 - window.GuiElems.Close.ImageLabel.ImageTransparency = 0 - window.GuiElems.TopBar.BackgroundTransparency = 0 - window.GuiElems.Outlines.ImageTransparency = 0 - window.GuiElems.Minimize.ImageLabel.Image = "rbxassetid://5034768003" - window.GuiElems.Main.Active = true - window.GuiElems.Main.Outlines.Visible = true - window:SetMinimized(false,3) - window:SetResizableInternal(true) - window.MinimizeAnim.Enable() - window.CloseAnim.Enable() - - if align then - window:AlignTo(targetSide,pos,size,data.Silent) - else - if align == nil and window.ClosedSide then -- Regular open - window:AlignTo(window.ClosedSide,window.SidePos,size,true) - static.SetSideVisible(window.ClosedSide,true) - else - if table.find(visibleWindows,window) then return end - - -- TODO: make better - window.GuiElems.Main.Size = UDim2.new(0,window.SizeX,0,20) - local ti = TweenInfo.new(0.2,Enum.EasingStyle.Quad,Enum.EasingDirection.Out) - window:StopTweens() - window:DoTween(window.GuiElems.Main,ti,{Size = UDim2.new(0,window.SizeX,0,window.SizeY)}) - - window.SizeY = size or window.SizeY - table.insert(visibleWindows,1,window) - updateWindows() - end - end - - window.ClosedSide = nil - window.OnActivate:Fire() - end - - static.ToggleSide = function(name) - local side = (name == "left" and leftSide or rightSide) - side.Hidden = not side.Hidden - for i,v in pairs(side.Windows) do - if side.Hidden then - v.OnDeactivate:Fire() - else - v.OnActivate:Fire() - end - end - updateWindows() - end - - static.SetSideVisible = function(s,vis) - local side = (type(s) == "table" and s) or (s == "left" and leftSide or rightSide) - side.Hidden = not vis - for i,v in pairs(side.Windows) do - if side.Hidden then - v.OnDeactivate:Fire() - else - v.OnActivate:Fire() - end - end - updateWindows() - end - - static.Init = function() - displayOrderStart = Main.DisplayOrders.Window - sideDisplayOrder = Main.DisplayOrders.SideWindow - - sidesGui = Instance.new("ScreenGui") - sidesGui.Name = "Dex_SidesGui" - sidesGui.ResetOnSpawn = false - local leftFrame = create({ - {1,"Frame",{Active=true,Name="LeftSide",BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BackgroundTransparency=0.9,BorderSizePixel=0,}}, - {2,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2549019753933,0.2549019753933,0.2549019753933),BorderSizePixel=0,Font=3,Name="Resizer",Parent={1},Size=UDim2.new(0,5,1,0),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, - {3,"Frame",{BackgroundColor3=Color3.new(0.14117647707462,0.14117647707462,0.14117647707462),BorderSizePixel=0,Name="Line",Parent={2},Position=UDim2.new(0,0,0,0),Size=UDim2.new(0,1,1,0),}}, - {4,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2549019753933,0.2549019753933,0.2549019753933),BorderSizePixel=0,Font=3,Name="WindowResizer",Parent={1},Position=UDim2.new(1,-300,0,0),Size=UDim2.new(1,0,0,4),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, - {5,"Frame",{BackgroundColor3=Color3.new(0.14117647707462,0.14117647707462,0.14117647707462),BorderSizePixel=0,Name="Line",Parent={4},Size=UDim2.new(1,0,0,1),}}, - }) - leftSide.Frame = leftFrame - leftFrame.Position = UDim2.new(0,-leftSide.Width-10,0,0) - leftSide.WindowResizer = leftFrame.WindowResizer - leftFrame.WindowResizer.Parent = nil - leftFrame.Parent = sidesGui - - local rightFrame = create({ - {1,"Frame",{Active=true,Name="RightSide",BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BackgroundTransparency=0.9,BorderSizePixel=0,}}, - {2,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2549019753933,0.2549019753933,0.2549019753933),BorderSizePixel=0,Font=3,Name="Resizer",Parent={1},Size=UDim2.new(0,5,1,0),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, - {3,"Frame",{BackgroundColor3=Color3.new(0.14117647707462,0.14117647707462,0.14117647707462),BorderSizePixel=0,Name="Line",Parent={2},Position=UDim2.new(0,4,0,0),Size=UDim2.new(0,1,1,0),}}, - {4,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2549019753933,0.2549019753933,0.2549019753933),BorderSizePixel=0,Font=3,Name="WindowResizer",Parent={1},Position=UDim2.new(1,-300,0,0),Size=UDim2.new(1,0,0,4),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, - {5,"Frame",{BackgroundColor3=Color3.new(0.14117647707462,0.14117647707462,0.14117647707462),BorderSizePixel=0,Name="Line",Parent={4},Size=UDim2.new(1,0,0,1),}}, - }) - rightSide.Frame = rightFrame - rightFrame.Position = UDim2.new(1,10,0,0) - rightSide.WindowResizer = rightFrame.WindowResizer - rightFrame.WindowResizer.Parent = nil - rightFrame.Parent = sidesGui - - sideResizerHook(leftFrame.Resizer,"H",leftSide) - sideResizerHook(rightFrame.Resizer,"H",rightSide) - - alignIndicator = Instance.new("ScreenGui") - alignIndicator.DisplayOrder = Main.DisplayOrders.Core - alignIndicator.ResetOnSpawn = false - local indicator = Instance.new("Frame",alignIndicator) - indicator.BackgroundColor3 = Color3.fromRGB(0, 170, 255) - indicator.BorderSizePixel = 0 - indicator.BackgroundTransparency = 0.8 - indicator.Name = "Indicator" - local corner = Instance.new("UICorner",indicator) - corner.CornerRadius = UDim.new(0,10) - - local leftToggle = create({{1,"TextButton",{ - AutoButtonColor = false, - BackgroundColor3 = Color3.new(0.20392157137394,0.20392157137394,0.20392157137394), - BackgroundTransparency = 0.8, - BorderColor3 = Color3.new(0.14117647707462,0.14117647707462,0.14117647707462), - BorderMode = 2, - BorderSizePixel = 0, - Font = 10, - Name = "LeftToggle", - Position = UDim2.new(0,0,0,-36), - Size = UDim2.new(0,16,0,36), - Text = "<", - TextColor3 = Color3.new(1,1,1), - TextSize = 14, - }}}) - local rightToggle = leftToggle:Clone() - rightToggle.Name = "RightToggle" - rightToggle.Position = UDim2.new(1,-16,0,-36) - Lib.ButtonAnim(leftToggle,{Mode = 2,PressColor = Color3.fromRGB(32,32,32)}) - Lib.ButtonAnim(rightToggle,{Mode = 2,PressColor = Color3.fromRGB(32,32,32)}) - - leftToggle.MouseButton1Click:Connect(function() - static.ToggleSide("left") - end) - - rightToggle.MouseButton1Click:Connect(function() - static.ToggleSide("right") - end) - - leftToggle.Parent = sidesGui - rightToggle.Parent = sidesGui - - sidesGui:GetPropertyChangedSignal("AbsoluteSize"):Connect(function() - local maxWidth = math.max(300,sidesGui.AbsoluteSize.X-static.FreeWidth) - leftSide.Width = math.max(static.MinWidth,math.min(leftSide.Width,maxWidth-rightSide.Width)) - rightSide.Width = math.max(static.MinWidth,math.min(rightSide.Width,maxWidth-leftSide.Width)) - for i = 1,#visibleWindows do - visibleWindows[i]:MoveInBoundary() - end - updateWindows(true) - end) - - sidesGui.DisplayOrder = sideDisplayOrder - 1 - --Lib.SidesGui = sidesGui - Lib.ShowGui(sidesGui) - updateSideFrames() - end - - local mt = {__index = funcs} - static.new = function() - local obj = setmetatable({ - Minimized = false, - Dragging = false, - Resizing = false, - Aligned = false, - Draggable = true, - Resizable = true, - ResizableInternal = true, - Alignable = true, - Closed = true, - SizeX = 300, - SizeY = 300, - MinX = 200, - MinY = 200, - PosX = 0, - PosY = 0, - GuiElems = {}, - Tweens = {}, - Elements = {}, - OnActivate = Lib.Signal.new(), - OnDeactivate = Lib.Signal.new(), - OnMinimize = Lib.Signal.new(), - OnRestore = Lib.Signal.new() - },mt) - obj.Gui = createGui(obj) - - -- Add to stored windows - --Lib.StoredWindows[obj] = obj - - return obj - end - - return static - end)() - - Lib.ContextMenu = (function() - local funcs = {} - local mouse - - local function createGui(self) - local contextGui = create({ - {1,"ScreenGui",{DisplayOrder=1000000,Name="Dex_Context",ZIndexBehavior=1,ResetOnSpawn=false}}, - {2,"Frame",{Active=true,BackgroundColor3=Color3.new(0.14117647707462,0.14117647707462,0.14117647707462),BorderColor3=Color3.new(0.14117647707462,0.14117647707462,0.14117647707462),Name="Main",Parent={1},Position=UDim2.new(0.5,-100,0.5,-150),Size=UDim2.new(0,200,0,100),}}, - {3,"UICorner",{CornerRadius=UDim.new(0,4),Parent={2},}}, - {4,"Frame",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),Name="Container",Parent={2},Position=UDim2.new(0,1,0,1),Size=UDim2.new(1,-2,1,-2),}}, - {5,"UICorner",{CornerRadius=UDim.new(0,4),Parent={4},}}, - {6,"ScrollingFrame",{Active=true,BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),BackgroundTransparency=1,BorderSizePixel=0,CanvasSize=UDim2.new(0,0,0,0),Name="List",Parent={4},Position=UDim2.new(0,2,0,2),ScrollBarImageColor3=Color3.new(0,0,0),ScrollBarThickness=4,Size=UDim2.new(1,-4,1,-4),VerticalScrollBarInset=1,}}, - {7,"UIListLayout",{Parent={6},SortOrder=2,}}, - {8,"Frame",{BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),BorderSizePixel=0,Name="SearchFrame",Parent={4},Size=UDim2.new(1,0,0,24),Visible=false,}}, - {9,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.1176470592618,0.1176470592618,0.1176470592618),BorderSizePixel=0,Name="SearchContainer",Parent={8},Position=UDim2.new(0,3,0,3),Size=UDim2.new(1,-6,0,18),}}, - {10,"TextBox",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="SearchBox",Parent={9},PlaceholderColor3=Color3.new(0.39215689897537,0.39215689897537,0.39215689897537),PlaceholderText="Search",Position=UDim2.new(0,4,0,0),Size=UDim2.new(1,-8,0,18),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,TextXAlignment=0,}}, - {11,"UICorner",{CornerRadius=UDim.new(0,2),Parent={9},}}, - {12,"Frame",{BackgroundColor3=Color3.new(0.14117647707462,0.14117647707462,0.14117647707462),BorderSizePixel=0,Name="Line",Parent={8},Position=UDim2.new(0,0,1,0),Size=UDim2.new(1,0,0,1),}}, - {13,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),BorderColor3=Color3.new(0.33725491166115,0.49019610881805,0.73725491762161),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Entry",Parent={1},Size=UDim2.new(1,0,0,22),Text="",TextSize=14,Visible=false,}}, - {14,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="EntryName",Parent={13},Position=UDim2.new(0,24,0,0),Size=UDim2.new(1,-24,1,0),Text="Duplicate",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, - {15,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Shortcut",Parent={13},Position=UDim2.new(0,24,0,0),Size=UDim2.new(1,-30,1,0),Text="Ctrl+D",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, - {16,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,ImageRectOffset=Vector2.new(304,0),ImageRectSize=Vector2.new(16,16),Name="Icon",Parent={13},Position=UDim2.new(0,2,0,3),ScaleType=4,Size=UDim2.new(0,16,0,16),}}, - {17,"UICorner",{CornerRadius=UDim.new(0,4),Parent={13},}}, - {18,"Frame",{BackgroundColor3=Color3.new(0.21568629145622,0.21568629145622,0.21568629145622),BackgroundTransparency=1,BorderSizePixel=0,Name="Divider",Parent={1},Position=UDim2.new(0,0,0,20),Size=UDim2.new(1,0,0,7),Visible=false,}}, - {19,"Frame",{BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),BorderSizePixel=0,Name="Line",Parent={18},Position=UDim2.new(0,0,0.5,0),Size=UDim2.new(1,0,0,1),}}, - {20,"TextLabel",{AnchorPoint=Vector2.new(0,0.5),BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="DividerName",Parent={18},Position=UDim2.new(0,2,0.5,0),Size=UDim2.new(1,-4,1,0),Text="Objects",TextColor3=Color3.new(1,1,1),TextSize=14,TextTransparency=0.60000002384186,TextXAlignment=0,Visible=false,}}, - }) - self.GuiElems.Main = contextGui.Main - self.GuiElems.List = contextGui.Main.Container.List - self.GuiElems.Entry = contextGui.Entry - self.GuiElems.Divider = contextGui.Divider - self.GuiElems.SearchFrame = contextGui.Main.Container.SearchFrame - self.GuiElems.SearchBar = self.GuiElems.SearchFrame.SearchContainer.SearchBox - Lib.ViewportTextBox.convert(self.GuiElems.SearchBar) - - self.GuiElems.SearchBar:GetPropertyChangedSignal("Text"):Connect(function() - local lower,find = string.lower,string.find - local searchText = lower(self.GuiElems.SearchBar.Text) - local items = self.Items - local map = self.ItemToEntryMap - - if searchText ~= "" then - local results = {} - local count = 1 - for i = 1,#items do - local item = items[i] - local entry = map[item] - if entry then - if not item.Divider and find(lower(item.Name),searchText,1,true) then - results[count] = item - count = count + 1 - else - entry.Visible = false - end - end - end - table.sort(results,function(a,b) return a.Name < b.Name end) - for i = 1,#results do - local entry = map[results[i]] - entry.LayoutOrder = i - entry.Visible = true - end - else - for i = 1,#items do - local entry = map[items[i]] - if entry then entry.LayoutOrder = i entry.Visible = true end - end - end - - local toSize = self.GuiElems.List.UIListLayout.AbsoluteContentSize.Y + 6 - self.GuiElems.List.CanvasSize = UDim2.new(0,0,0,toSize-6) - end) - - return contextGui - end - - funcs.Add = function(self,item) - local newItem = { - Name = item.Name or "Item", - Icon = item.Icon or "", - Shortcut = item.Shortcut or "", - OnClick = item.OnClick, - OnHover = item.OnHover, - Disabled = item.Disabled or false, - DisabledIcon = item.DisabledIcon or "", - IconMap = item.IconMap, - OnRightClick = item.OnRightClick - } - if self.QueuedDivider then - local text = self.QueuedDividerText and #self.QueuedDividerText > 0 - self:AddDivider(text) - end - self.Items[#self.Items+1] = newItem - self.Updated = nil - end - - funcs.AddRegistered = function(self,name,disabled) - if not self.Registered[name] then error(name.." is not registered") end - - if self.QueuedDivider then - local text = self.QueuedDividerText and #self.QueuedDividerText > 0 - self:AddDivider(text) - end - self.Registered[name].Disabled = disabled - self.Items[#self.Items+1] = self.Registered[name] - self.Updated = nil - end - - funcs.Register = function(self,name,item) - self.Registered[name] = { - Name = item.Name or "Item", - Icon = item.Icon or "", - Shortcut = item.Shortcut or "", - OnClick = item.OnClick, - OnHover = item.OnHover, - DisabledIcon = item.DisabledIcon or "", - IconMap = item.IconMap, - OnRightClick = item.OnRightClick - } - end - - funcs.UnRegister = function(self,name) - self.Registered[name] = nil - end - - funcs.AddDivider = function(self,text) - self.QueuedDivider = false - local textWidth = text and service.TextService:GetTextSize(text,14,Enum.Font.SourceSans,Vector2.new(999999999,20)).X or nil - table.insert(self.Items,{Divider = true, Text = text, TextSize = textWidth and textWidth+4}) - self.Updated = nil - end - - funcs.QueueDivider = function(self,text) - self.QueuedDivider = true - self.QueuedDividerText = text or "" - end - - funcs.Clear = function(self) - self.Items = {} - self.Updated = nil - end - - funcs.Refresh = function(self) - for i,v in pairs(self.GuiElems.List:GetChildren()) do - if not v:IsA("UIListLayout") then - v:Destroy() - end - end - local map = {} - self.ItemToEntryMap = map - - local dividerFrame = self.GuiElems.Divider - local contextList = self.GuiElems.List - local entryFrame = self.GuiElems.Entry - local items = self.Items - - for i = 1,#items do - local item = items[i] - if item.Divider then - local newDivider = dividerFrame:Clone() - newDivider.Line.BackgroundColor3 = self.Theme.DividerColor - if item.Text then - newDivider.Size = UDim2.new(1,0,0,20) - newDivider.Line.Position = UDim2.new(0,item.TextSize,0.5,0) - newDivider.Line.Size = UDim2.new(1,-item.TextSize,0,1) - newDivider.DividerName.TextColor3 = self.Theme.TextColor - newDivider.DividerName.Text = item.Text - newDivider.DividerName.Visible = true - end - newDivider.Visible = true - map[item] = newDivider - newDivider.Parent = contextList - else - local newEntry = entryFrame:Clone() - newEntry.BackgroundColor3 = self.Theme.HighlightColor - newEntry.EntryName.TextColor3 = self.Theme.TextColor - newEntry.EntryName.Text = item.Name - newEntry.Shortcut.Text = item.Shortcut - if item.Disabled then - newEntry.EntryName.TextColor3 = Color3.new(150/255,150/255,150/255) - newEntry.Shortcut.TextColor3 = Color3.new(150/255,150/255,150/255) - end - - if self.Iconless then - newEntry.EntryName.Position = UDim2.new(0,2,0,0) - newEntry.EntryName.Size = UDim2.new(1,-4,0,20) - newEntry.Icon.Visible = false - else - local iconIndex = item.Disabled and item.DisabledIcon or item.Icon - if item.IconMap then - if type(iconIndex) == "number" then - item.IconMap:Display(newEntry.Icon,iconIndex) - elseif type(iconIndex) == "string" then - item.IconMap:DisplayByKey(newEntry.Icon,iconIndex) - end - elseif type(iconIndex) == "string" then - newEntry.Icon.Image = iconIndex - end - end - - if not item.Disabled then - if item.OnClick then - newEntry.MouseButton1Click:Connect(function() - item.OnClick(item.Name) - if not item.NoHide then - self:Hide() - end - end) - end - - if item.OnRightClick then - newEntry.MouseButton2Click:Connect(function() - item.OnRightClick(item.Name) - if not item.NoHide then - self:Hide() - end - end) - end - end - - newEntry.InputBegan:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement then - newEntry.BackgroundTransparency = 0 - end - end) - - newEntry.InputEnded:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement then - newEntry.BackgroundTransparency = 1 - end - end) - - newEntry.Visible = true - map[item] = newEntry - newEntry.Parent = contextList - end - end - self.Updated = true - end - - funcs.Show = function(self,x,y) - -- Initialize Gui - local elems = self.GuiElems - elems.SearchFrame.Visible = self.SearchEnabled - elems.List.Position = UDim2.new(0,2,0,2 + (self.SearchEnabled and 24 or 0)) - elems.List.Size = UDim2.new(1,-4,1,-4 - (self.SearchEnabled and 24 or 0)) - if self.SearchEnabled and self.ClearSearchOnShow then elems.SearchBar.Text = "" end - self.GuiElems.List.CanvasPosition = Vector2.new(0,0) - - if not self.Updated then - self:Refresh() -- Create entries - end - - -- Vars - local reverseY = false - local x,y = x or mouse.X, y or mouse.Y - local maxX,maxY = mouse.ViewSizeX,mouse.ViewSizeY - - -- Position and show - if x + self.Width > maxX then - x = self.ReverseX and x - self.Width or maxX - self.Width - end - elems.Main.Position = UDim2.new(0,x,0,y) - elems.Main.Size = UDim2.new(0,self.Width,0,0) - self.Gui.DisplayOrder = Main.DisplayOrders.Menu - Lib.ShowGui(self.Gui) - - -- Size adjustment - local toSize = elems.List.UIListLayout.AbsoluteContentSize.Y + 6 -- Padding - if self.MaxHeight and toSize > self.MaxHeight then - elems.List.CanvasSize = UDim2.new(0,0,0,toSize-6) - toSize = self.MaxHeight - else - elems.List.CanvasSize = UDim2.new(0,0,0,0) - end - if y + toSize > maxY then reverseY = true end - - -- Close event - local closable - if self.CloseEvent then self.CloseEvent:Disconnect() end - self.CloseEvent = service.UserInputService.InputBegan:Connect(function(input) - if not closable or input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end - - if not Lib.CheckMouseInGui(elems.Main) then - self.CloseEvent:Disconnect() - self:Hide() - end - end) - - -- Resize - if reverseY then - elems.Main.Position = UDim2.new(0,x,0,y-(self.ReverseYOffset or 0)) - local newY = y - toSize - (self.ReverseYOffset or 0) - y = newY >= 0 and newY or 0 - elems.Main:TweenSizeAndPosition(UDim2.new(0,self.Width,0,toSize),UDim2.new(0,x,0,y),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.2,true) - else - elems.Main:TweenSize(UDim2.new(0,self.Width,0,toSize),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.2,true) - end - - -- Close debounce - Lib.FastWait() - if self.SearchEnabled and self.FocusSearchOnShow then elems.SearchBar:CaptureFocus() end - closable = true - end - - funcs.Hide = function(self) - self.Gui.Parent = nil - end - - funcs.ApplyTheme = function(self,data) - local theme = self.Theme - theme.ContentColor = data.ContentColor or Settings.Theme.Menu - theme.OutlineColor = data.OutlineColor or Settings.Theme.Menu - theme.DividerColor = data.DividerColor or Settings.Theme.Outline2 - theme.TextColor = data.TextColor or Settings.Theme.Text - theme.HighlightColor = data.HighlightColor or Settings.Theme.Main1 - - self.GuiElems.Main.BackgroundColor3 = theme.OutlineColor - self.GuiElems.Main.Container.BackgroundColor3 = theme.ContentColor - end - - local mt = {__index = funcs} - local function new() - if not mouse then mouse = Main.Mouse or service.Players.LocalPlayer:GetMouse() end - - local obj = setmetatable({ - Width = 200, - MaxHeight = nil, - Iconless = false, - SearchEnabled = false, - ClearSearchOnShow = true, - FocusSearchOnShow = true, - Updated = false, - QueuedDivider = false, - QueuedDividerText = "", - Items = {}, - Registered = {}, - GuiElems = {}, - Theme = {} - },mt) - obj.Gui = createGui(obj) - obj:ApplyTheme({}) - return obj - end - - return {new = new} - end)() - - Lib.CodeFrame = (function() - local funcs = {} - - local typeMap = { - [1] = "String", - [2] = "String", - [3] = "String", - [4] = "Comment", - [5] = "Operator", - [6] = "Number", - [7] = "Keyword", - [8] = "BuiltIn", - [9] = "LocalMethod", - [10] = "LocalProperty", - [11] = "Nil", - [12] = "Bool", - [13] = "Function", - [14] = "Local", - [15] = "Self", - [16] = "FunctionName", - [17] = "Bracket" - } - - local specialKeywordsTypes = { - ["nil"] = 11, - ["true"] = 12, - ["false"] = 12, - ["function"] = 13, - ["local"] = 14, - ["self"] = 15 - } - - local keywords = { - ["and"] = true, - ["break"] = true, - ["do"] = true, - ["else"] = true, - ["elseif"] = true, - ["end"] = true, - ["false"] = true, - ["for"] = true, - ["function"] = true, - ["if"] = true, - ["in"] = true, - ["local"] = true, - ["nil"] = true, - ["not"] = true, - ["or"] = true, - ["repeat"] = true, - ["return"] = true, - ["then"] = true, - ["true"] = true, - ["until"] = true, - ["while"] = true, - ["plugin"] = true - } - - local builtIns = { - ["delay"] = true, - ["elapsedTime"] = true, - ["require"] = true, - ["spawn"] = true, - ["tick"] = true, - ["time"] = true, - ["typeof"] = true, - ["UserSettings"] = true, - ["wait"] = true, - ["warn"] = true, - ["game"] = true, - ["shared"] = true, - ["script"] = true, - ["workspace"] = true, - ["assert"] = true, - ["collectgarbage"] = true, - ["error"] = true, - ["getfenv"] = true, - ["getmetatable"] = true, - ["ipairs"] = true, - ["loadstring"] = true, - ["newproxy"] = true, - ["next"] = true, - ["pairs"] = true, - ["pcall"] = true, - ["print"] = true, - ["rawequal"] = true, - ["rawget"] = true, - ["rawset"] = true, - ["select"] = true, - ["setfenv"] = true, - ["setmetatable"] = true, - ["tonumber"] = true, - ["tostring"] = true, - ["type"] = true, - ["unpack"] = true, - ["xpcall"] = true, - ["_G"] = true, - ["_VERSION"] = true, - ["coroutine"] = true, - ["debug"] = true, - ["math"] = true, - ["os"] = true, - ["string"] = true, - ["table"] = true, - ["bit32"] = true, - ["utf8"] = true, - ["Axes"] = true, - ["BrickColor"] = true, - ["CFrame"] = true, - ["Color3"] = true, - ["ColorSequence"] = true, - ["ColorSequenceKeypoint"] = true, - ["DockWidgetPluginGuiInfo"] = true, - ["Enum"] = true, - ["Faces"] = true, - ["Instance"] = true, - ["NumberRange"] = true, - ["NumberSequence"] = true, - ["NumberSequenceKeypoint"] = true, - ["PathWaypoint"] = true, - ["PhysicalProperties"] = true, - ["Random"] = true, - ["Ray"] = true, - ["Rect"] = true, - ["Region3"] = true, - ["Region3int16"] = true, - ["TweenInfo"] = true, - ["UDim"] = true, - ["UDim2"] = true, - ["Vector2"] = true, - ["Vector2int16"] = true, - ["Vector3"] = true, - ["Vector3int16"] = true - } - - local builtInInited = false - - local richReplace = { - ["'"] = "'", - ["\""] = """, - ["<"] = "<", - [">"] = ">", - ["&"] = "&" - } - - local tabSub = "\205" - local tabReplacement = (" %s%s "):format(tabSub,tabSub) - - local tabJumps = { - [("[^%s] %s"):format(tabSub,tabSub)] = 0, - [(" %s%s"):format(tabSub,tabSub)] = -1, - [("%s%s "):format(tabSub,tabSub)] = 2, - [("%s [^%s]"):format(tabSub,tabSub)] = 1, - } - - local tweenService = service.TweenService - local lineTweens = { Invis = nil, Vis = nil } - - local function initBuiltIn() - local env = getfenv() - local type = type - local tostring = tostring - for name,_ in next,builtIns do - local envVal = env[name] - if type(envVal) == "table" then - local items = {} - for i,v in next,envVal do - items[i] = true - end - builtIns[name] = items - end - end - - local enumEntries = {} - local enums = Enum:GetEnums() - for i = 1,#enums do - enumEntries[tostring(enums[i])] = true - end - builtIns["Enum"] = enumEntries - - builtInInited = true - end - - local function setupEditBox(obj) - local editBox = obj.GuiElems.EditBox - - editBox.Focused:Connect(function() - obj:ConnectEditBoxEvent() - obj.Editing = true - end) - - editBox.FocusLost:Connect(function() - obj:DisconnectEditBoxEvent() - obj.Editing = false - end) - - editBox:GetPropertyChangedSignal("Text"):Connect(function() - local text = editBox.Text - if #text == 0 or obj.EditBoxCopying then return end - editBox.Text = "" - obj:AppendText(text) - end) - end - - local function setupMouseSelection(obj) - local mouse = plr:GetMouse() - local codeFrame = obj.GuiElems.LinesFrame - local lines = obj.Lines - - codeFrame.InputBegan:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseButton1 then - local fontSizeX,fontSizeY = math.ceil(obj.FontSize/2),obj.FontSize - - local relX = mouse.X - codeFrame.AbsolutePosition.X - local relY = mouse.Y - codeFrame.AbsolutePosition.Y - local selX = math.round(relX / fontSizeX) + obj.ViewX - local selY = math.floor(relY / fontSizeY) + obj.ViewY - local releaseEvent,mouseEvent,scrollEvent - local scrollPowerV,scrollPowerH = 0,0 - selY = math.min(#lines-1,selY) - local relativeLine = lines[selY+1] or "" - selX = math.min(#relativeLine, selX + obj:TabAdjust(selX,selY)) - - obj.SelectionRange = {{-1,-1},{-1,-1}} - obj:MoveCursor(selX,selY) - obj.FloatCursorX = selX - - local function updateSelection() - local relX = mouse.X - codeFrame.AbsolutePosition.X - local relY = mouse.Y - codeFrame.AbsolutePosition.Y - local sel2X = math.max(0,math.round(relX / fontSizeX) + obj.ViewX) - local sel2Y = math.max(0,math.floor(relY / fontSizeY) + obj.ViewY) - - sel2Y = math.min(#lines-1,sel2Y) - local relativeLine = lines[sel2Y+1] or "" - sel2X = math.min(#relativeLine, sel2X + obj:TabAdjust(sel2X,sel2Y)) - - if sel2Y < selY or (sel2Y == selY and sel2X < selX) then - obj.SelectionRange = {{sel2X,sel2Y},{selX,selY}} - else - obj.SelectionRange = {{selX,selY},{sel2X,sel2Y}} - end - - obj:MoveCursor(sel2X,sel2Y) - obj.FloatCursorX = sel2X - obj:Refresh() - end - - releaseEvent = service.UserInputService.InputEnded:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseButton1 then - releaseEvent:Disconnect() - mouseEvent:Disconnect() - scrollEvent:Disconnect() - obj:SetCopyableSelection() - --updateSelection() - end - end) - - mouseEvent = service.UserInputService.InputChanged:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement then - local upDelta = mouse.Y - codeFrame.AbsolutePosition.Y - local downDelta = mouse.Y - codeFrame.AbsolutePosition.Y - codeFrame.AbsoluteSize.Y - local leftDelta = mouse.X - codeFrame.AbsolutePosition.X - local rightDelta = mouse.X - codeFrame.AbsolutePosition.X - codeFrame.AbsoluteSize.X - scrollPowerV = 0 - scrollPowerH = 0 - if downDelta > 0 then - scrollPowerV = math.floor(downDelta*0.05) + 1 - elseif upDelta < 0 then - scrollPowerV = math.ceil(upDelta*0.05) - 1 - end - if rightDelta > 0 then - scrollPowerH = math.floor(rightDelta*0.05) + 1 - elseif leftDelta < 0 then - scrollPowerH = math.ceil(leftDelta*0.05) - 1 - end - updateSelection() - end - end) - - scrollEvent = game:GetService("RunService").RenderStepped:Connect(function() - if scrollPowerV ~= 0 or scrollPowerH ~= 0 then - obj:ScrollDelta(scrollPowerH,scrollPowerV) - updateSelection() - end - end) - - obj:Refresh() - end - end) - end - - local function makeFrame(obj) - local frame = create({ - {1,"Frame",{BackgroundColor3=Color3.new(0.15686275064945,0.15686275064945,0.15686275064945),BorderSizePixel = 0,Position=UDim2.new(0.5,-300,0.5,-200),Size=UDim2.new(0,600,0,400),}}, - }) - local elems = {} - - local linesFrame = Instance.new("Frame") - linesFrame.Name = "Lines" - linesFrame.BackgroundTransparency = 1 - linesFrame.Size = UDim2.new(1,0,1,0) - linesFrame.ClipsDescendants = true - linesFrame.Parent = frame - - local lineNumbersLabel = Instance.new("TextLabel") - lineNumbersLabel.Name = "LineNumbers" - lineNumbersLabel.BackgroundTransparency = 1 - lineNumbersLabel.Font = Enum.Font.Code - lineNumbersLabel.TextXAlignment = Enum.TextXAlignment.Right - lineNumbersLabel.TextYAlignment = Enum.TextYAlignment.Top - lineNumbersLabel.ClipsDescendants = true - lineNumbersLabel.RichText = true - lineNumbersLabel.Parent = frame - - local cursor = Instance.new("Frame") - cursor.Name = "Cursor" - cursor.BackgroundColor3 = Color3.fromRGB(220,220,220) - cursor.BorderSizePixel = 0 - cursor.Parent = frame - - local editBox = Instance.new("TextBox") - editBox.Name = "EditBox" - editBox.MultiLine = true - editBox.Visible = false - editBox.Parent = frame - - lineTweens.Invis = tweenService:Create(cursor,TweenInfo.new(0.4,Enum.EasingStyle.Quart,Enum.EasingDirection.Out),{BackgroundTransparency = 1}) - lineTweens.Vis = tweenService:Create(cursor,TweenInfo.new(0.2,Enum.EasingStyle.Quart,Enum.EasingDirection.Out),{BackgroundTransparency = 0}) - - elems.LinesFrame = linesFrame - elems.LineNumbersLabel = lineNumbersLabel - elems.Cursor = cursor - elems.EditBox = editBox - elems.ScrollCorner = create({{1,"Frame",{BackgroundColor3=Color3.new(0.15686275064945,0.15686275064945,0.15686275064945),BorderSizePixel=0,Name="ScrollCorner",Position=UDim2.new(1,-16,1,-16),Size=UDim2.new(0,16,0,16),Visible=false,}}}) - - elems.ScrollCorner.Parent = frame - linesFrame.InputBegan:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseButton1 then - obj:SetEditing(true,input) - end - end) - - obj.Frame = frame - obj.Gui = frame - obj.GuiElems = elems - setupEditBox(obj) - setupMouseSelection(obj) - - return frame - end - - funcs.GetSelectionText = function(self) - if not self:IsValidRange() then return "" end - - local selectionRange = self.SelectionRange - local selX,selY = selectionRange[1][1], selectionRange[1][2] - local sel2X,sel2Y = selectionRange[2][1], selectionRange[2][2] - local deltaLines = sel2Y-selY - local lines = self.Lines - - if not lines[selY+1] or not lines[sel2Y+1] then return "" end - - if deltaLines == 0 then - return self:ConvertText(lines[selY+1]:sub(selX+1,sel2X), false) - end - - local leftSub = lines[selY+1]:sub(selX+1) - local rightSub = lines[sel2Y+1]:sub(1,sel2X) - - local result = leftSub.."\n" - for i = selY+1,sel2Y-1 do - result = result..lines[i+1].."\n" - end - result = result..rightSub - - return self:ConvertText(result,false) - end - - funcs.SetCopyableSelection = function(self) - local text = self:GetSelectionText() - local editBox = self.GuiElems.EditBox - - self.EditBoxCopying = true - editBox.Text = text - editBox.SelectionStart = 1 - editBox.CursorPosition = #editBox.Text + 1 - self.EditBoxCopying = false - end - - funcs.ConnectEditBoxEvent = function(self) - if self.EditBoxEvent then - self.EditBoxEvent:Disconnect() - end - - self.EditBoxEvent = service.UserInputService.InputBegan:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.Keyboard then return end - - local keycodes = Enum.KeyCode - local keycode = input.KeyCode - - local function setupMove(key,func) - local endCon,finished - endCon = service.UserInputService.InputEnded:Connect(function(input) - if input.KeyCode ~= key then return end - endCon:Disconnect() - finished = true - end) - func() - Lib.FastWait(0.5) - while not finished do func() Lib.FastWait(0.03) end - end - - if keycode == keycodes.Down then - setupMove(keycodes.Down,function() - self.CursorX = self.FloatCursorX - self.CursorY = self.CursorY + 1 - self:UpdateCursor() - self:JumpToCursor() - end) - elseif keycode == keycodes.Up then - setupMove(keycodes.Up,function() - self.CursorX = self.FloatCursorX - self.CursorY = self.CursorY - 1 - self:UpdateCursor() - self:JumpToCursor() - end) - elseif keycode == keycodes.Left then - setupMove(keycodes.Left,function() - local line = self.Lines[self.CursorY+1] or "" - self.CursorX = self.CursorX - 1 - (line:sub(self.CursorX-3,self.CursorX) == tabReplacement and 3 or 0) - if self.CursorX < 0 then - self.CursorY = self.CursorY - 1 - local line2 = self.Lines[self.CursorY+1] or "" - self.CursorX = #line2 - end - self.FloatCursorX = self.CursorX - self:UpdateCursor() - self:JumpToCursor() - end) - elseif keycode == keycodes.Right then - setupMove(keycodes.Right,function() - local line = self.Lines[self.CursorY+1] or "" - self.CursorX = self.CursorX + 1 + (line:sub(self.CursorX+1,self.CursorX+4) == tabReplacement and 3 or 0) - if self.CursorX > #line then - self.CursorY = self.CursorY + 1 - self.CursorX = 0 - end - self.FloatCursorX = self.CursorX - self:UpdateCursor() - self:JumpToCursor() - end) - elseif keycode == keycodes.Backspace then - setupMove(keycodes.Backspace,function() - local startRange,endRange - if self:IsValidRange() then - startRange = self.SelectionRange[1] - endRange = self.SelectionRange[2] - else - endRange = {self.CursorX,self.CursorY} - end - - if not startRange then - local line = self.Lines[self.CursorY+1] or "" - self.CursorX = self.CursorX - 1 - (line:sub(self.CursorX-3,self.CursorX) == tabReplacement and 3 or 0) - if self.CursorX < 0 then - self.CursorY = self.CursorY - 1 - local line2 = self.Lines[self.CursorY+1] or "" - self.CursorX = #line2 - end - self.FloatCursorX = self.CursorX - self:UpdateCursor() - - startRange = startRange or {self.CursorX,self.CursorY} - end - - self:DeleteRange({startRange,endRange},false,true) - self:ResetSelection(true) - self:JumpToCursor() - end) - elseif keycode == keycodes.Delete then - setupMove(keycodes.Delete,function() - local startRange,endRange - if self:IsValidRange() then - startRange = self.SelectionRange[1] - endRange = self.SelectionRange[2] - else - startRange = {self.CursorX,self.CursorY} - end - - if not endRange then - local line = self.Lines[self.CursorY+1] or "" - local endCursorX = self.CursorX + 1 + (line:sub(self.CursorX+1,self.CursorX+4) == tabReplacement and 3 or 0) - local endCursorY = self.CursorY - if endCursorX > #line then - endCursorY = endCursorY + 1 - endCursorX = 0 - end - self:UpdateCursor() - - endRange = endRange or {endCursorX,endCursorY} - end - - self:DeleteRange({startRange,endRange},false,true) - self:ResetSelection(true) - self:JumpToCursor() - end) - elseif service.UserInputService:IsKeyDown(Enum.KeyCode.LeftControl) then - if keycode == keycodes.A then - self.SelectionRange = {{0,0},{#self.Lines[#self.Lines],#self.Lines-1}} - self:SetCopyableSelection() - self:Refresh() - end - end - end) - end - - funcs.DisconnectEditBoxEvent = function(self) - if self.EditBoxEvent then - self.EditBoxEvent:Disconnect() - end - end - - funcs.ResetSelection = function(self,norefresh) - self.SelectionRange = {{-1,-1},{-1,-1}} - if not norefresh then self:Refresh() end - end - - funcs.IsValidRange = function(self,range) - local selectionRange = range or self.SelectionRange - local selX,selY = selectionRange[1][1], selectionRange[1][2] - local sel2X,sel2Y = selectionRange[2][1], selectionRange[2][2] - - if selX == -1 or (selX == sel2X and selY == sel2Y) then return false end - - return true - end - - funcs.DeleteRange = function(self,range,noprocess,updatemouse) - range = range or self.SelectionRange - if not self:IsValidRange(range) then return end - - local lines = self.Lines - local selX,selY = range[1][1], range[1][2] - local sel2X,sel2Y = range[2][1], range[2][2] - local deltaLines = sel2Y-selY - - if not lines[selY+1] or not lines[sel2Y+1] then return end - - local leftSub = lines[selY+1]:sub(1,selX) - local rightSub = lines[sel2Y+1]:sub(sel2X+1) - lines[selY+1] = leftSub..rightSub - - local remove = table.remove - for i = 1,deltaLines do - remove(lines,selY+2) - end - - if range == self.SelectionRange then self.SelectionRange = {{-1,-1},{-1,-1}} end - if updatemouse then - self.CursorX = selX - self.CursorY = selY - self:UpdateCursor() - end - - if not noprocess then - self:ProcessTextChange() - end - end - - funcs.AppendText = function(self,text) - self:DeleteRange(nil,true,true) - local lines,cursorX,cursorY = self.Lines,self.CursorX,self.CursorY - local line = lines[cursorY+1] - local before = line:sub(1,cursorX) - local after = line:sub(cursorX+1) - - text = text:gsub("\r\n","\n") - text = self:ConvertText(text,true) -- Tab Convert - - local textLines = text:split("\n") - local insert = table.insert - - for i = 1,#textLines do - local linePos = cursorY+i - if i > 1 then insert(lines,linePos,"") end - - local textLine = textLines[i] - local newBefore = (i == 1 and before or "") - local newAfter = (i == #textLines and after or "") - - lines[linePos] = newBefore..textLine..newAfter - end - - if #textLines > 1 then cursorX = 0 end - - self:ProcessTextChange() - self.CursorX = cursorX + #textLines[#textLines] - self.CursorY = cursorY + #textLines-1 - self:UpdateCursor() - end - - funcs.ScrollDelta = function(self,x,y) - self.ScrollV:ScrollTo(self.ScrollV.Index + y) - self.ScrollH:ScrollTo(self.ScrollH.Index + x) - end - - -- x and y starts at 0 - funcs.TabAdjust = function(self,x,y) - local lines = self.Lines - local line = lines[y+1] - x=x+1 - - if line then - local left = line:sub(x-1,x-1) - local middle = line:sub(x,x) - local right = line:sub(x+1,x+1) - local selRange = (#left > 0 and left or " ") .. (#middle > 0 and middle or " ") .. (#right > 0 and right or " ") - - for i,v in pairs(tabJumps) do - if selRange:find(i) then - return v - end - end - end - return 0 - end - - funcs.SetEditing = function(self,on,input) - self:UpdateCursor(input) - - if on then - if self.Editable then - self.GuiElems.EditBox.Text = "" - self.GuiElems.EditBox:CaptureFocus() - end - else - self.GuiElems.EditBox:ReleaseFocus() - end - end - - funcs.CursorAnim = function(self,on) - local cursor = self.GuiElems.Cursor - local animTime = tick() - self.LastAnimTime = animTime - - if not on then return end - - lineTweens.Invis:Cancel() - lineTweens.Vis:Cancel() - cursor.BackgroundTransparency = 0 - - task.spawn(function() - while self.Editable do - Lib.FastWait(0.5) - if self.LastAnimTime ~= animTime then return end - lineTweens.Invis:Play() - Lib.FastWait(0.4) - if self.LastAnimTime ~= animTime then return end - lineTweens.Vis:Play() - Lib.FastWait(0.2) - end - end) - end - - funcs.MoveCursor = function(self,x,y) - self.CursorX = x - self.CursorY = y - self:UpdateCursor() - self:JumpToCursor() - end - - funcs.JumpToCursor = function(self) - self:Refresh() - end - - funcs.UpdateCursor = function(self,input) - local linesFrame = self.GuiElems.LinesFrame - local cursor = self.GuiElems.Cursor - local hSize = math.max(0,linesFrame.AbsoluteSize.X) - local vSize = math.max(0,linesFrame.AbsoluteSize.Y) - local maxLines = math.ceil(vSize / self.FontSize) - local maxCols = math.ceil(hSize / math.ceil(self.FontSize/2)) - local viewX,viewY = self.ViewX,self.ViewY - local totalLinesStr = tostring(#self.Lines) - local fontWidth = math.ceil(self.FontSize / 2) - local linesOffset = #totalLinesStr*fontWidth + 4*fontWidth - - if input then - local linesFrame = self.GuiElems.LinesFrame - local frameX,frameY = linesFrame.AbsolutePosition.X,linesFrame.AbsolutePosition.Y - local mouseX,mouseY = input.Position.X,input.Position.Y - local fontSizeX,fontSizeY = math.ceil(self.FontSize/2),self.FontSize - - self.CursorX = self.ViewX + math.round((mouseX - frameX) / fontSizeX) - self.CursorY = self.ViewY + math.floor((mouseY - frameY) / fontSizeY) - end - - local cursorX,cursorY = self.CursorX,self.CursorY - - local line = self.Lines[cursorY+1] or "" - if cursorX > #line then cursorX = #line - elseif cursorX < 0 then cursorX = 0 end - - if cursorY >= #self.Lines then - cursorY = math.max(0,#self.Lines-1) - elseif cursorY < 0 then - cursorY = 0 - end - - cursorX = cursorX + self:TabAdjust(cursorX,cursorY) - - -- Update modified - self.CursorX = cursorX - self.CursorY = cursorY - - local cursorVisible = (cursorX >= viewX) and (cursorY >= viewY) and (cursorX <= viewX + maxCols) and (cursorY <= viewY + maxLines) - if cursorVisible then - local offX = (cursorX - viewX) - local offY = (cursorY - viewY) - cursor.Position = UDim2.new(0,linesOffset + offX*math.ceil(self.FontSize/2) - 1,0,offY*self.FontSize) - cursor.Size = UDim2.new(0,1,0,self.FontSize+2) - cursor.Visible = true - self:CursorAnim(true) - else - cursor.Visible = false - end - end - - funcs.MapNewLines = function(self) - local newLines = {} - local count = 1 - local text = self.Text - local find = string.find - local init = 1 - - local pos = find(text,"\n",init,true) - while pos do - newLines[count] = pos - count = count + 1 - init = pos + 1 - pos = find(text,"\n",init,true) - end - - self.NewLines = newLines - end - - funcs.PreHighlight = function(self) - local start = tick() - local text = self.Text:gsub("\\\\"," ") - --print("BACKSLASH SUB",tick()-start) - local textLen = #text - local found = {} - local foundMap = {} - local extras = {} - local find = string.find - local sub = string.sub - self.ColoredLines = {} - - local function findAll(str,pattern,typ,raw) - local count = #found+1 - local init = 1 - local x,y,extra = find(str,pattern,init,raw) - while x do - found[count] = x - foundMap[x] = typ - if extra then - extras[x] = extra - end - - count = count+1 - init = y+1 - x,y,extra = find(str,pattern,init,raw) - end - end - local start = tick() - findAll(text,'"',1,true) - findAll(text,"'",2,true) - findAll(text,"%[(=*)%[",3) - findAll(text,"--",4,true) - table.sort(found) - - local newLines = self.NewLines - local curLine = 0 - local lineTableCount = 1 - local lineStart = 0 - local lineEnd = 0 - local lastEnding = 0 - local foundHighlights = {} - - for i = 1,#found do - local pos = found[i] - if pos <= lastEnding then continue end - - local ending = pos - local typ = foundMap[pos] - if typ == 1 then - ending = find(text,'"',pos+1,true) - while ending and sub(text,ending-1,ending-1) == "\\" do - ending = find(text,'"',ending+1,true) - end - if not ending then ending = textLen end - elseif typ == 2 then - ending = find(text,"'",pos+1,true) - while ending and sub(text,ending-1,ending-1) == "\\" do - ending = find(text,"'",ending+1,true) - end - if not ending then ending = textLen end - elseif typ == 3 then - _,ending = find(text,"]"..extras[pos].."]",pos+1,true) - if not ending then ending = textLen end - elseif typ == 4 then - local ahead = foundMap[pos+2] - - if ahead == 3 then - _,ending = find(text,"]"..extras[pos+2].."]",pos+1,true) - if not ending then ending = textLen end - else - ending = find(text,"\n",pos+1,true) or textLen - end - end - - while pos > lineEnd do - curLine = curLine + 1 - --lineTableCount = 1 - lineEnd = newLines[curLine] or textLen+1 - end - while true do - local lineTable = foundHighlights[curLine] - if not lineTable then lineTable = {} foundHighlights[curLine] = lineTable end - lineTable[pos] = {typ,ending} - --lineTableCount = lineTableCount + 1 - - if ending > lineEnd then - curLine = curLine + 1 - lineEnd = newLines[curLine] or textLen+1 - else - break - end - end - - lastEnding = ending - --if i < 200 then print(curLine) end - end - self.PreHighlights = foundHighlights - --print(tick()-start) - --print(#found,curLine) - end - - funcs.HighlightLine = function(self,line) - local cached = self.ColoredLines[line] - if cached then return cached end - - local sub = string.sub - local find = string.find - local match = string.match - local highlights = {} - local preHighlights = self.PreHighlights[line] or {} - local lineText = self.Lines[line] or "" - local lineLen = #lineText - local lastEnding = 0 - local currentType = 0 - local lastWord = nil - local wordBeginsDotted = false - local funcStatus = 0 - local lineStart = self.NewLines[line-1] or 0 - - local preHighlightMap = {} - for pos,data in next,preHighlights do - local relativePos = pos-lineStart - if relativePos < 1 then - currentType = data[1] - lastEnding = data[2] - lineStart - --warn(pos,data[2]) - else - preHighlightMap[relativePos] = {data[1],data[2]-lineStart} - end - end - - for col = 1,#lineText do - if col <= lastEnding then highlights[col] = currentType continue end - - local pre = preHighlightMap[col] - if pre then - currentType = pre[1] - lastEnding = pre[2] - highlights[col] = currentType - wordBeginsDotted = false - lastWord = nil - funcStatus = 0 - else - local char = sub(lineText,col,col) - if find(char,"[%a_]") then - local word = match(lineText,"[%a%d_]+",col) - local wordType = (keywords[word] and 7) or (builtIns[word] and 8) - - lastEnding = col+#word-1 - - if wordType ~= 7 then - if wordBeginsDotted then - local prevBuiltIn = lastWord and builtIns[lastWord] - wordType = (prevBuiltIn and type(prevBuiltIn) == "table" and prevBuiltIn[word] and 8) or 10 - end - - if wordType ~= 8 then - local x,y,br = find(lineText,"^%s*([%({\"'])",lastEnding+1) - if x then - wordType = (funcStatus > 0 and br == "(" and 16) or 9 - funcStatus = 0 - end - end - else - wordType = specialKeywordsTypes[word] or wordType - funcStatus = (word == "function" and 1 or 0) - end - - lastWord = word - wordBeginsDotted = false - if funcStatus > 0 then funcStatus = 1 end - - if wordType then - currentType = wordType - highlights[col] = currentType - else - currentType = nil - end - elseif find(char,"%p") then - local isDot = (char == ".") - local isNum = isDot and find(sub(lineText,col+1,col+1),"%d") - highlights[col] = (isNum and 6 or 5) - - if not isNum then - local dotStr = isDot and match(lineText,"%.%.?%.?",col) - if dotStr and #dotStr > 1 then - currentType = 5 - lastEnding = col+#dotStr-1 - wordBeginsDotted = false - lastWord = nil - funcStatus = 0 - else - if isDot then - if wordBeginsDotted then - lastWord = nil - else - wordBeginsDotted = true - end - else - wordBeginsDotted = false - lastWord = nil - end - - funcStatus = ((isDot or char == ":") and funcStatus == 1 and 2) or 0 - end - end - elseif find(char,"%d") then - local _,endPos = find(lineText,"%x+",col) - local endPart = sub(lineText,endPos,endPos+1) - if (endPart == "e+" or endPart == "e-") and find(sub(lineText,endPos+2,endPos+2),"%d") then - endPos = endPos + 1 - end - currentType = 6 - lastEnding = endPos - highlights[col] = 6 - wordBeginsDotted = false - lastWord = nil - funcStatus = 0 - else - highlights[col] = currentType - local _,endPos = find(lineText,"%s+",col) - if endPos then - lastEnding = endPos - end - end - end - end - - self.ColoredLines[line] = highlights - return highlights - end - - funcs.Refresh = function(self) - local start = tick() - - local linesFrame = self.Frame.Lines - local hSize = math.max(0,linesFrame.AbsoluteSize.X) - local vSize = math.max(0,linesFrame.AbsoluteSize.Y) - local maxLines = math.ceil(vSize / self.FontSize) - local maxCols = math.ceil(hSize / math.ceil(self.FontSize/2)) - local gsub = string.gsub - local sub = string.sub - - local viewX,viewY = self.ViewX,self.ViewY - - local lineNumberStr = "" - - for row = 1,maxLines do - local lineFrame = self.LineFrames[row] - if not lineFrame then - lineFrame = Instance.new("Frame") - lineFrame.Name = "Line" - lineFrame.Position = UDim2.new(0,0,0,(row-1)*self.FontSize) - lineFrame.Size = UDim2.new(1,0,0,self.FontSize) - lineFrame.BorderSizePixel = 0 - lineFrame.BackgroundTransparency = 1 - - local selectionHighlight = Instance.new("Frame") - selectionHighlight.Name = "SelectionHighlight" - selectionHighlight.BorderSizePixel = 0 - selectionHighlight.BackgroundColor3 = Settings.Theme.Syntax.SelectionBack - selectionHighlight.Parent = lineFrame - - local label = Instance.new("TextLabel") - label.Name = "Label" - label.BackgroundTransparency = 1 - label.Font = Enum.Font.Code - label.TextSize = self.FontSize - label.Size = UDim2.new(1,0,0,self.FontSize) - label.RichText = true - label.TextXAlignment = Enum.TextXAlignment.Left - label.TextColor3 = self.Colors.Text - label.ZIndex = 2 - label.Parent = lineFrame - - lineFrame.Parent = linesFrame - self.LineFrames[row] = lineFrame - end - - local relaY = viewY + row - local lineText = self.Lines[relaY] or "" - local resText = "" - local highlights = self:HighlightLine(relaY) - local colStart = viewX + 1 - - local richTemplates = self.RichTemplates - local textTemplate = richTemplates.Text - local selectionTemplate = richTemplates.Selection - local curType = highlights[colStart] - local curTemplate = richTemplates[typeMap[curType]] or textTemplate - - -- Selection Highlight - local selectionRange = self.SelectionRange - local selPos1 = selectionRange[1] - local selPos2 = selectionRange[2] - local selRow,selColumn = selPos1[2],selPos1[1] - local sel2Row,sel2Column = selPos2[2],selPos2[1] - local selRelaX,selRelaY = viewX,relaY-1 - - if selRelaY >= selPos1[2] and selRelaY <= selPos2[2] then - local fontSizeX = math.ceil(self.FontSize/2) - local posX = (selRelaY == selPos1[2] and selPos1[1] or 0) - viewX - local sizeX = (selRelaY == selPos2[2] and selPos2[1]-posX-viewX or maxCols+viewX) - - lineFrame.SelectionHighlight.Position = UDim2.new(0,posX*fontSizeX,0,0) - lineFrame.SelectionHighlight.Size = UDim2.new(0,sizeX*fontSizeX,1,0) - lineFrame.SelectionHighlight.Visible = true - else - lineFrame.SelectionHighlight.Visible = false - end - - -- Selection Text Color for first char - local inSelection = selRelaY >= selRow and selRelaY <= sel2Row and (selRelaY == selRow and viewX >= selColumn or selRelaY ~= selRow) and (selRelaY == sel2Row and viewX < sel2Column or selRelaY ~= sel2Row) - if inSelection then - curType = -999 - curTemplate = selectionTemplate - end - - for col = 2,maxCols do - local relaX = viewX + col - local selRelaX = relaX-1 - local posType = highlights[relaX] - - -- Selection Text Color - local inSelection = selRelaY >= selRow and selRelaY <= sel2Row and (selRelaY == selRow and selRelaX >= selColumn or selRelaY ~= selRow) and (selRelaY == sel2Row and selRelaX < sel2Column or selRelaY ~= sel2Row) - if inSelection then - posType = -999 - end - - if posType ~= curType then - local template = (inSelection and selectionTemplate) or richTemplates[typeMap[posType]] or textTemplate - - if template ~= curTemplate then - local nextText = gsub(sub(lineText,colStart,relaX-1),"['\"<>&]",richReplace) - resText = resText .. (curTemplate ~= textTemplate and (curTemplate .. nextText .. "") or nextText) - colStart = relaX - curTemplate = template - end - curType = posType - end - end - - local lastText = gsub(sub(lineText,colStart,viewX+maxCols),"['\"<>&]",richReplace) - --warn("SUB",colStart,viewX+maxCols-1) - if #lastText > 0 then - resText = resText .. (curTemplate ~= textTemplate and (curTemplate .. lastText .. "") or lastText) - end - - if self.Lines[relaY] then - lineNumberStr = lineNumberStr .. (relaY == self.CursorY and (""..relaY.."\n") or relaY .. "\n") - end - - lineFrame.Label.Text = resText - end - - for i = maxLines+1,#self.LineFrames do - self.LineFrames[i]:Destroy() - self.LineFrames[i] = nil - end - - self.Frame.LineNumbers.Text = lineNumberStr - self:UpdateCursor() - - --print("REFRESH TIME",tick()-start) - end - - funcs.UpdateView = function(self) - local totalLinesStr = tostring(#self.Lines) - local fontWidth = math.ceil(self.FontSize / 2) - local linesOffset = #totalLinesStr*fontWidth + 4*fontWidth - - local linesFrame = self.Frame.Lines - local hSize = linesFrame.AbsoluteSize.X - local vSize = linesFrame.AbsoluteSize.Y - local maxLines = math.ceil(vSize / self.FontSize) - local totalWidth = self.MaxTextCols*fontWidth - local scrollV = self.ScrollV - local scrollH = self.ScrollH - - scrollV.VisibleSpace = maxLines - scrollV.TotalSpace = #self.Lines + 1 - scrollH.VisibleSpace = math.ceil(hSize/fontWidth) - scrollH.TotalSpace = self.MaxTextCols + 1 - - scrollV.Gui.Visible = #self.Lines + 1 > maxLines - scrollH.Gui.Visible = totalWidth > hSize - - local oldOffsets = self.FrameOffsets - self.FrameOffsets = Vector2.new(scrollV.Gui.Visible and -16 or 0, scrollH.Gui.Visible and -16 or 0) - if oldOffsets ~= self.FrameOffsets then - self:UpdateView() - else - scrollV:ScrollTo(self.ViewY,true) - scrollH:ScrollTo(self.ViewX,true) - - if scrollV.Gui.Visible and scrollH.Gui.Visible then - scrollV.Gui.Size = UDim2.new(0,16,1,-16) - scrollH.Gui.Size = UDim2.new(1,-16,0,16) - self.GuiElems.ScrollCorner.Visible = true - else - scrollV.Gui.Size = UDim2.new(0,16,1,0) - scrollH.Gui.Size = UDim2.new(1,0,0,16) - self.GuiElems.ScrollCorner.Visible = false - end - - self.ViewY = scrollV.Index - self.ViewX = scrollH.Index - self.Frame.Lines.Position = UDim2.new(0,linesOffset,0,0) - self.Frame.Lines.Size = UDim2.new(1,-linesOffset+oldOffsets.X,1,oldOffsets.Y) - self.Frame.LineNumbers.Position = UDim2.new(0,fontWidth,0,0) - self.Frame.LineNumbers.Size = UDim2.new(0,#totalLinesStr*fontWidth,1,oldOffsets.Y) - self.Frame.LineNumbers.TextSize = self.FontSize - end - end - - funcs.ProcessTextChange = function(self) - local maxCols = 0 - local lines = self.Lines - - for i = 1,#lines do - local lineLen = #lines[i] - if lineLen > maxCols then - maxCols = lineLen - end - end - - self.MaxTextCols = maxCols - self:UpdateView() - self.Text = table.concat(self.Lines,"\n") - self:MapNewLines() - self:PreHighlight() - self:Refresh() - --self.TextChanged:Fire() - end - - funcs.ConvertText = function(self,text,toEditor) - if toEditor then - return text:gsub("\t",(" %s%s "):format(tabSub,tabSub)) - else - return text:gsub((" %s%s "):format(tabSub,tabSub),"\t") - end - end - - funcs.GetText = function(self) -- TODO: better (use new tab format) - local source = table.concat(self.Lines,"\n") - return self:ConvertText(source,false) -- Tab Convert - end - - funcs.SetText = function(self,txt) - txt = self:ConvertText(txt,true) -- Tab Convert - local lines = self.Lines - table.clear(lines) - local count = 1 - - for line in txt:gmatch("([^\n\r]*)[\n\r]?") do - local len = #line - lines[count] = line - count = count + 1 - end - - self:ProcessTextChange() - end - - funcs.MakeRichTemplates = function(self) - local floor = math.floor - local templates = {} - - for name,color in pairs(self.Colors) do - templates[name] = (''):format(floor(color.r*255),floor(color.g*255),floor(color.b*255)) - end - - self.RichTemplates = templates - end - - funcs.ApplyTheme = function(self) - local colors = Settings.Theme.Syntax - self.Colors = colors - self.Frame.LineNumbers.TextColor3 = colors.Text - self.Frame.BackgroundColor3 = colors.Background - end - - local mt = {__index = funcs} - - local function new() - if not builtInInited then initBuiltIn() end - - local scrollV = Lib.ScrollBar.new() - local scrollH = Lib.ScrollBar.new(true) - scrollH.Gui.Position = UDim2.new(0,0,1,-16) - local obj = setmetatable({ - FontSize = 15, - ViewX = 0, - ViewY = 0, - Colors = Settings.Theme.Syntax, - ColoredLines = {}, - Lines = {""}, - LineFrames = {}, - Editable = true, - Editing = false, - CursorX = 0, - CursorY = 0, - FloatCursorX = 0, - Text = "", - PreHighlights = {}, - SelectionRange = {{-1,-1},{-1,-1}}, - NewLines = {}, - FrameOffsets = Vector2.new(0,0), - MaxTextCols = 0, - ScrollV = scrollV, - ScrollH = scrollH - },mt) - - scrollV.WheelIncrement = 3 - scrollH.Increment = 2 - scrollH.WheelIncrement = 7 - - scrollV.Scrolled:Connect(function() - obj.ViewY = scrollV.Index - obj:Refresh() - end) - - scrollH.Scrolled:Connect(function() - obj.ViewX = scrollH.Index - obj:Refresh() - end) - - makeFrame(obj) - obj:MakeRichTemplates() - obj:ApplyTheme() - scrollV:SetScrollFrame(obj.Frame.Lines) - scrollV.Gui.Parent = obj.Frame - scrollH.Gui.Parent = obj.Frame - - obj:UpdateView() - obj.Frame:GetPropertyChangedSignal("AbsoluteSize"):Connect(function() - obj:UpdateView() - obj:Refresh() - end) - - return obj - end - - return {new = new} - end)() - - Lib.Checkbox = (function() - local funcs = {} - local c3 = Color3.fromRGB - local v2 = Vector2.new - local ud2s = UDim2.fromScale - local ud2o = UDim2.fromOffset - local ud = UDim.new - local max = math.max - local new = Instance.new - local TweenSize = new("Frame").TweenSize - local ti = TweenInfo.new - local delay = delay - - local function ripple(object, color) - local circle = new('Frame') - circle.BackgroundColor3 = color - circle.BackgroundTransparency = 0.75 - circle.BorderSizePixel = 0 - circle.AnchorPoint = v2(0.5, 0.5) - circle.Size = ud2o() - circle.Position = ud2s(0.5, 0.5) - circle.Parent = object - local rounding = new('UICorner') - rounding.CornerRadius = ud(1) - rounding.Parent = circle - - local abssz = object.AbsoluteSize - local size = max(abssz.X, abssz.Y) * 5/3 - - TweenSize(circle, ud2o(size, size), "Out", "Quart", 0.4) - service.TweenService:Create(circle, ti(0.4, Enum.EasingStyle.Quart, Enum.EasingDirection.In), {BackgroundTransparency = 1}):Play() - - service.Debris:AddItem(circle, 0.4) - end - - local function initGui(self,frame) - local checkbox = frame or create({ - {1,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="Checkbox",Position=UDim2.new(0,3,0,3),Size=UDim2.new(0,16,0,16),}}, - {2,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="ripples",Parent={1},Size=UDim2.new(1,0,1,0),}}, - {3,"Frame",{BackgroundColor3=Color3.new(0.10196078568697,0.10196078568697,0.10196078568697),BorderSizePixel=0,Name="outline",Parent={1},Size=UDim2.new(0,16,0,16),}}, - {4,"Frame",{BackgroundColor3=Color3.new(0.14117647707462,0.14117647707462,0.14117647707462),BorderSizePixel=0,Name="filler",Parent={3},Position=UDim2.new(0,1,0,1),Size=UDim2.new(0,14,0,14),}}, - {5,"Frame",{BackgroundColor3=Color3.new(0.90196084976196,0.90196084976196,0.90196084976196),BorderSizePixel=0,Name="top",Parent={4},Size=UDim2.new(0,16,0,0),}}, - {6,"Frame",{AnchorPoint=Vector2.new(0,1),BackgroundColor3=Color3.new(0.90196084976196,0.90196084976196,0.90196084976196),BorderSizePixel=0,Name="bottom",Parent={4},Position=UDim2.new(0,0,0,14),Size=UDim2.new(0,16,0,0),}}, - {7,"Frame",{BackgroundColor3=Color3.new(0.90196084976196,0.90196084976196,0.90196084976196),BorderSizePixel=0,Name="left",Parent={4},Size=UDim2.new(0,0,0,16),}}, - {8,"Frame",{AnchorPoint=Vector2.new(1,0),BackgroundColor3=Color3.new(0.90196084976196,0.90196084976196,0.90196084976196),BorderSizePixel=0,Name="right",Parent={4},Position=UDim2.new(0,14,0,0),Size=UDim2.new(0,0,0,16),}}, - {9,"Frame",{AnchorPoint=Vector2.new(0.5,0.5),BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,ClipsDescendants=true,Name="checkmark",Parent={4},Position=UDim2.new(0.5,0,0.5,0),Size=UDim2.new(0,0,0,20),}}, - {10,"ImageLabel",{AnchorPoint=Vector2.new(0.5,0.5),BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Image="rbxassetid://6234266378",Parent={9},Position=UDim2.new(0.5,0,0.5,0),ScaleType=3,Size=UDim2.new(0,15,0,11),}}, - {11,"ImageLabel",{AnchorPoint=Vector2.new(0.5,0.5),BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://6401617475",ImageColor3=Color3.new(0.20784313976765,0.69803923368454,0.98431372642517),Name="checkmark2",Parent={4},Position=UDim2.new(0.5,0,0.5,0),Size=UDim2.new(0,12,0,12),Visible=false,}}, - {12,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://6425281788",ImageTransparency=0.20000000298023,Name="middle",Parent={4},ScaleType=2,Size=UDim2.new(1,0,1,0),TileSize=UDim2.new(0,2,0,2),Visible=false,}}, - {13,"UICorner",{CornerRadius=UDim.new(0,2),Parent={3},}}, - }) - local outline = checkbox.outline - local filler = outline.filler - local checkmark = filler.checkmark - local ripples_container = checkbox.ripples - - -- walls - local top, bottom, left, right = filler.top, filler.bottom, filler.left, filler.right - - self.Gui = checkbox - self.GuiElems = { - Top = top, - Bottom = bottom, - Left = left, - Right = right, - Outline = outline, - Filler = filler, - Checkmark = checkmark, - Checkmark2 = filler.checkmark2, - Middle = filler.middle - } - - checkbox.InputBegan:Connect(function(i) - if i.UserInputType == Enum.UserInputType.MouseButton1 then - local release - release = service.UserInputService.InputEnded:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseButton1 then - release:Disconnect() - - if Lib.CheckMouseInGui(checkbox) then - if self.Style == 0 then - ripple(ripples_container, self.Disabled and self.Colors.Disabled or self.Colors.Primary) - end - - if not self.Disabled then - self:SetState(not self.Toggled,true) - else - self:Paint() - end - - self.OnInput:Fire() - end - end - end) - end - end) - - self:Paint() - end - - funcs.Collapse = function(self,anim) - local guiElems = self.GuiElems - if anim then - TweenSize(guiElems.Top, ud2o(14, 14), "In", "Quart", 4/15, true) - TweenSize(guiElems.Bottom, ud2o(14, 14), "In", "Quart", 4/15, true) - TweenSize(guiElems.Left, ud2o(14, 14), "In", "Quart", 4/15, true) - TweenSize(guiElems.Right, ud2o(14, 14), "In", "Quart", 4/15, true) - else - guiElems.Top.Size = ud2o(14, 14) - guiElems.Bottom.Size = ud2o(14, 14) - guiElems.Left.Size = ud2o(14, 14) - guiElems.Right.Size = ud2o(14, 14) - end - end - - funcs.Expand = function(self,anim) - local guiElems = self.GuiElems - if anim then - TweenSize(guiElems.Top, ud2o(14, 0), "InOut", "Quart", 4/15, true) - TweenSize(guiElems.Bottom, ud2o(14, 0), "InOut", "Quart", 4/15, true) - TweenSize(guiElems.Left, ud2o(0, 14), "InOut", "Quart", 4/15, true) - TweenSize(guiElems.Right, ud2o(0, 14), "InOut", "Quart", 4/15, true) - else - guiElems.Top.Size = ud2o(14, 0) - guiElems.Bottom.Size = ud2o(14, 0) - guiElems.Left.Size = ud2o(0, 14) - guiElems.Right.Size = ud2o(0, 14) - end - end - - funcs.Paint = function(self) - local guiElems = self.GuiElems - - if self.Style == 0 then - local color_base = self.Disabled and self.Colors.Disabled - guiElems.Outline.BackgroundColor3 = color_base or (self.Toggled and self.Colors.Primary) or self.Colors.Secondary - local walls_color = color_base or self.Colors.Primary - guiElems.Top.BackgroundColor3 = walls_color - guiElems.Bottom.BackgroundColor3 = walls_color - guiElems.Left.BackgroundColor3 = walls_color - guiElems.Right.BackgroundColor3 = walls_color - else - guiElems.Outline.BackgroundColor3 = self.Disabled and self.Colors.Disabled or self.Colors.Secondary - guiElems.Filler.BackgroundColor3 = self.Disabled and self.Colors.DisabledBackground or self.Colors.Background - guiElems.Checkmark2.ImageColor3 = self.Disabled and self.Colors.DisabledCheck or self.Colors.Primary - end - end - - funcs.SetState = function(self,val,anim) - self.Toggled = val - - if self.OutlineColorTween then self.OutlineColorTween:Cancel() end - local setStateTime = tick() - self.LastSetStateTime = setStateTime - - if self.Toggled then - if self.Style == 0 then - if anim then - self.OutlineColorTween = service.TweenService:Create(self.GuiElems.Outline, ti(4/15, Enum.EasingStyle.Circular, Enum.EasingDirection.Out), {BackgroundColor3 = self.Colors.Primary}) - self.OutlineColorTween:Play() - delay(0.15, function() - if setStateTime ~= self.LastSetStateTime then return end - self:Paint() - TweenSize(self.GuiElems.Checkmark, ud2o(14, 20), "Out", "Bounce", 2/15, true) - end) - else - self.GuiElems.Outline.BackgroundColor3 = self.Colors.Primary - self:Paint() - self.GuiElems.Checkmark.Size = ud2o(14, 20) - end - self:Collapse(anim) - else - self:Paint() - self.GuiElems.Checkmark2.Visible = true - self.GuiElems.Middle.Visible = false - end - else - if self.Style == 0 then - if anim then - self.OutlineColorTween = service.TweenService:Create(self.GuiElems.Outline, ti(4/15, Enum.EasingStyle.Circular, Enum.EasingDirection.In), {BackgroundColor3 = self.Colors.Secondary}) - self.OutlineColorTween:Play() - delay(0.15, function() - if setStateTime ~= self.LastSetStateTime then return end - self:Paint() - TweenSize(self.GuiElems.Checkmark, ud2o(0, 20), "Out", "Quad", 1/15, true) - end) - else - self.GuiElems.Outline.BackgroundColor3 = self.Colors.Secondary - self:Paint() - self.GuiElems.Checkmark.Size = ud2o(0, 20) - end - self:Expand(anim) - else - self:Paint() - self.GuiElems.Checkmark2.Visible = false - self.GuiElems.Middle.Visible = self.Toggled == nil - end - end - end - - local mt = {__index = funcs} - - local function new(style) - local obj = setmetatable({ - Toggled = false, - Disabled = false, - OnInput = Lib.Signal.new(), - Style = style or 0, - Colors = { - Background = c3(36,36,36), - Primary = c3(49,176,230), - Secondary = c3(25,25,25), - Disabled = c3(64,64,64), - DisabledBackground = c3(52,52,52), - DisabledCheck = c3(80,80,80) - } - },mt) - initGui(obj) - return obj - end - - local function fromFrame(frame) - local obj = setmetatable({ - Toggled = false, - Disabled = false, - Colors = { - Background = c3(36,36,36), - Primary = c3(49,176,230), - Secondary = c3(25,25,25), - Disabled = c3(64,64,64), - DisabledBackground = c3(52,52,52) - } - },mt) - initGui(obj,frame) - return obj - end - - return {new = new, fromFrame} - end)() - - Lib.BrickColorPicker = (function() - local funcs = {} - local paletteCount = 0 - local mouse = service.Players.LocalPlayer:GetMouse() - local hexStartX = 4 - local hexSizeX = 27 - local hexTriangleStart = 1 - local hexTriangleSize = 8 - - local bottomColors = { - Color3.fromRGB(17,17,17), - Color3.fromRGB(99,95,98), - Color3.fromRGB(163,162,165), - Color3.fromRGB(205,205,205), - Color3.fromRGB(223,223,222), - Color3.fromRGB(237,234,234), - Color3.fromRGB(27,42,53), - Color3.fromRGB(91,93,105), - Color3.fromRGB(159,161,172), - Color3.fromRGB(202,203,209), - Color3.fromRGB(231,231,236), - Color3.fromRGB(248,248,248) - } - - local function isMouseInHexagon(hex) - local relativeX = mouse.X - hex.AbsolutePosition.X - local relativeY = mouse.Y - hex.AbsolutePosition.Y - if relativeX >= hexStartX and relativeX < hexStartX + hexSizeX then - relativeX = relativeX - 4 - local relativeWidth = (13-math.min(relativeX,26 - relativeX))/13 - if relativeY >= hexTriangleStart + hexTriangleSize*relativeWidth and relativeY < hex.AbsoluteSize.Y - hexTriangleStart - hexTriangleSize*relativeWidth then - return true - end - end - - return false - end - - local function hexInput(self,hex,color) - hex.InputBegan:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseButton1 and isMouseInHexagon(hex) then - self.OnSelect:Fire(color) - self:Close() - end - end) - - hex.InputChanged:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement and isMouseInHexagon(hex) then - self.OnPreview:Fire(color) - end - end) - end - - local function createGui(self) - local gui = create({ - {1,"ScreenGui",{Name="Dex_BrickColor",ResetOnSpawn=false}}, - {2,"Frame",{Active=true,BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BorderColor3=Color3.new(0.1294117718935,0.1294117718935,0.1294117718935),Parent={1},Position=UDim2.new(0.40000000596046,0,0.40000000596046,0),Size=UDim2.new(0,337,0,380),}}, - {3,"TextButton",{BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),BorderSizePixel=0,Font=3,Name="MoreColors",Parent={2},Position=UDim2.new(0,5,1,-30),Size=UDim2.new(1,-10,0,25),Text="More Colors",TextColor3=Color3.new(1,1,1),TextSize=14,}}, - {4,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Image="rbxassetid://1281023007",ImageColor3=Color3.new(0.33333334326744,0.33333334326744,0.49803924560547),Name="Hex",Parent={2},Size=UDim2.new(0,35,0,35),Visible=false,}}, - }) - local colorFrame = gui.Frame - local hex = colorFrame.Hex - - for row = 1,13 do - local columns = math.min(row,14-row)+6 - for column = 1,columns do - local nextColor = BrickColor.palette(paletteCount).Color - local newHex = hex:Clone() - newHex.Position = UDim2.new(0, (column-1)*25-(columns-7)*13+3*26 + 1, 0, (row-1)*23 + 4) - newHex.ImageColor3 = nextColor - newHex.Visible = true - hexInput(self,newHex,nextColor) - newHex.Parent = colorFrame - paletteCount = paletteCount + 1 - end - end - - for column = 1,12 do - local nextColor = bottomColors[column] - local newHex = hex:Clone() - newHex.Position = UDim2.new(0, (column-1)*25-(12-7)*13+3*26 + 3, 0, 308) - newHex.ImageColor3 = nextColor - newHex.Visible = true - hexInput(self,newHex,nextColor) - newHex.Parent = colorFrame - paletteCount = paletteCount + 1 - end - - colorFrame.MoreColors.MouseButton1Click:Connect(function() - self.OnMoreColors:Fire() - self:Close() - end) - - self.Gui = gui - end - - funcs.SetMoreColorsVisible = function(self,vis) - local colorFrame = self.Gui.Frame - colorFrame.Size = UDim2.new(0,337,0,380 - (not vis and 33 or 0)) - colorFrame.MoreColors.Visible = vis - end - - funcs.Show = function(self,x,y,prevColor) - self.PrevColor = prevColor or self.PrevColor - - local reverseY = false - - local x,y = x or mouse.X, y or mouse.Y - local maxX,maxY = mouse.ViewSizeX,mouse.ViewSizeY - Lib.ShowGui(self.Gui) - local sizeX,sizeY = self.Gui.Frame.AbsoluteSize.X,self.Gui.Frame.AbsoluteSize.Y - - if x + sizeX > maxX then x = self.ReverseX and x - sizeX or maxX - sizeX end - if y + sizeY > maxY then reverseY = true end - - local closable = false - if self.CloseEvent then self.CloseEvent:Disconnect() end - self.CloseEvent = service.UserInputService.InputBegan:Connect(function(input) - if not closable or input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end - - if not Lib.CheckMouseInGui(self.Gui.Frame) then - self.CloseEvent:Disconnect() - self:Close() - end - end) - - if reverseY then - local newY = y - sizeY - (self.ReverseYOffset or 0) - y = newY >= 0 and newY or 0 - end - - self.Gui.Frame.Position = UDim2.new(0,x,0,y) - - Lib.FastWait() - closable = true - end - - funcs.Close = function(self) - self.Gui.Parent = nil - self.OnCancel:Fire() - end - - local mt = {__index = funcs} - - local function new() - local obj = setmetatable({ - OnPreview = Lib.Signal.new(), - OnSelect = Lib.Signal.new(), - OnCancel = Lib.Signal.new(), - OnMoreColors = Lib.Signal.new(), - PrevColor = Color3.new(0,0,0) - },mt) - createGui(obj) - return obj - end - - return {new = new} - end)() - - Lib.ColorPicker = (function() -- TODO: Convert to newer class model - local funcs = {} - - local function new() - local newMt = setmetatable({},{}) - - newMt.OnSelect = Lib.Signal.new() - newMt.OnCancel = Lib.Signal.new() - newMt.OnPreview = Lib.Signal.new() - - local guiContents = create({ - {1,"Frame",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BorderSizePixel=0,ClipsDescendants=true,Name="Content",Position=UDim2.new(0,0,0,20),Size=UDim2.new(1,0,1,-20),}}, - {2,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Name="BasicColors",Parent={1},Position=UDim2.new(0,5,0,5),Size=UDim2.new(0,180,0,200),}}, - {3,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={2},Position=UDim2.new(0,0,0,-5),Size=UDim2.new(1,0,0,26),Text="Basic Colors",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, - {4,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),Name="Blue",Parent={1},Position=UDim2.new(1,-63,0,255),Size=UDim2.new(0,52,0,16),}}, - {5,"TextBox",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),Font=3,Name="Input",Parent={4},Position=UDim2.new(0,2,0,0),Size=UDim2.new(0,50,0,16),Text="0",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, - {6,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="ArrowFrame",Parent={5},Position=UDim2.new(1,-16,0,0),Size=UDim2.new(0,16,1,0),}}, - {7,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Up",Parent={6},Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, - {8,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={7},Size=UDim2.new(0,16,0,8),}}, - {9,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={8},Position=UDim2.new(0,8,0,3),Size=UDim2.new(0,1,0,1),}}, - {10,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={8},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, - {11,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={8},Position=UDim2.new(0,6,0,5),Size=UDim2.new(0,5,0,1),}}, - {12,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Down",Parent={6},Position=UDim2.new(0,0,0,8),Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, - {13,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={12},Size=UDim2.new(0,16,0,8),}}, - {14,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={13},Position=UDim2.new(0,8,0,5),Size=UDim2.new(0,1,0,1),}}, - {15,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={13},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, - {16,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={13},Position=UDim2.new(0,6,0,3),Size=UDim2.new(0,5,0,1),}}, - {17,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={4},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Blue:",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, - {18,"Frame",{BackgroundColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),BorderSizePixel=0,ClipsDescendants=true,Name="ColorSpaceFrame",Parent={1},Position=UDim2.new(1,-261,0,4),Size=UDim2.new(0,222,0,202),}}, - {19,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),BorderSizePixel=0,Image="rbxassetid://1072518406",Name="ColorSpace",Parent={18},Position=UDim2.new(0,1,0,1),Size=UDim2.new(0,220,0,200),}}, - {20,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="Scope",Parent={19},Position=UDim2.new(0,210,0,190),Size=UDim2.new(0,20,0,20),}}, - {21,"Frame",{BackgroundColor3=Color3.new(0,0,0),BorderSizePixel=0,Name="Line",Parent={20},Position=UDim2.new(0,9,0,0),Size=UDim2.new(0,2,0,20),}}, - {22,"Frame",{BackgroundColor3=Color3.new(0,0,0),BorderSizePixel=0,Name="Line",Parent={20},Position=UDim2.new(0,0,0,9),Size=UDim2.new(0,20,0,2),}}, - {23,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Name="CustomColors",Parent={1},Position=UDim2.new(0,5,0,210),Size=UDim2.new(0,180,0,90),}}, - {24,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={23},Size=UDim2.new(1,0,0,20),Text="Custom Colors (RC = Set)",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, - {25,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),Name="Green",Parent={1},Position=UDim2.new(1,-63,0,233),Size=UDim2.new(0,52,0,16),}}, - {26,"TextBox",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),Font=3,Name="Input",Parent={25},Position=UDim2.new(0,2,0,0),Size=UDim2.new(0,50,0,16),Text="0",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, - {27,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="ArrowFrame",Parent={26},Position=UDim2.new(1,-16,0,0),Size=UDim2.new(0,16,1,0),}}, - {28,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Up",Parent={27},Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, - {29,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={28},Size=UDim2.new(0,16,0,8),}}, - {30,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={29},Position=UDim2.new(0,8,0,3),Size=UDim2.new(0,1,0,1),}}, - {31,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={29},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, - {32,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={29},Position=UDim2.new(0,6,0,5),Size=UDim2.new(0,5,0,1),}}, - {33,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Down",Parent={27},Position=UDim2.new(0,0,0,8),Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, - {34,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={33},Size=UDim2.new(0,16,0,8),}}, - {35,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={34},Position=UDim2.new(0,8,0,5),Size=UDim2.new(0,1,0,1),}}, - {36,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={34},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, - {37,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={34},Position=UDim2.new(0,6,0,3),Size=UDim2.new(0,5,0,1),}}, - {38,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={25},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Green:",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, - {39,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),Name="Hue",Parent={1},Position=UDim2.new(1,-180,0,211),Size=UDim2.new(0,52,0,16),}}, - {40,"TextBox",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),Font=3,Name="Input",Parent={39},Position=UDim2.new(0,2,0,0),Size=UDim2.new(0,50,0,16),Text="0",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, - {41,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="ArrowFrame",Parent={40},Position=UDim2.new(1,-16,0,0),Size=UDim2.new(0,16,1,0),}}, - {42,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Up",Parent={41},Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, - {43,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={42},Size=UDim2.new(0,16,0,8),}}, - {44,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={43},Position=UDim2.new(0,8,0,3),Size=UDim2.new(0,1,0,1),}}, - {45,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={43},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, - {46,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={43},Position=UDim2.new(0,6,0,5),Size=UDim2.new(0,5,0,1),}}, - {47,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Down",Parent={41},Position=UDim2.new(0,0,0,8),Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, - {48,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={47},Size=UDim2.new(0,16,0,8),}}, - {49,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={48},Position=UDim2.new(0,8,0,5),Size=UDim2.new(0,1,0,1),}}, - {50,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={48},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, - {51,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={48},Position=UDim2.new(0,6,0,3),Size=UDim2.new(0,5,0,1),}}, - {52,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={39},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Hue:",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, - {53,"Frame",{BackgroundColor3=Color3.new(1,1,1),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),Name="Preview",Parent={1},Position=UDim2.new(1,-260,0,211),Size=UDim2.new(0,35,1,-245),}}, - {54,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),Name="Red",Parent={1},Position=UDim2.new(1,-63,0,211),Size=UDim2.new(0,52,0,16),}}, - {55,"TextBox",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),Font=3,Name="Input",Parent={54},Position=UDim2.new(0,2,0,0),Size=UDim2.new(0,50,0,16),Text="0",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, - {56,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="ArrowFrame",Parent={55},Position=UDim2.new(1,-16,0,0),Size=UDim2.new(0,16,1,0),}}, - {57,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Up",Parent={56},Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, - {58,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={57},Size=UDim2.new(0,16,0,8),}}, - {59,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={58},Position=UDim2.new(0,8,0,3),Size=UDim2.new(0,1,0,1),}}, - {60,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={58},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, - {61,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={58},Position=UDim2.new(0,6,0,5),Size=UDim2.new(0,5,0,1),}}, - {62,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Down",Parent={56},Position=UDim2.new(0,0,0,8),Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, - {63,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={62},Size=UDim2.new(0,16,0,8),}}, - {64,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={63},Position=UDim2.new(0,8,0,5),Size=UDim2.new(0,1,0,1),}}, - {65,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={63},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, - {66,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={63},Position=UDim2.new(0,6,0,3),Size=UDim2.new(0,5,0,1),}}, - {67,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={54},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Red:",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, - {68,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),Name="Sat",Parent={1},Position=UDim2.new(1,-180,0,233),Size=UDim2.new(0,52,0,16),}}, - {69,"TextBox",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),Font=3,Name="Input",Parent={68},Position=UDim2.new(0,2,0,0),Size=UDim2.new(0,50,0,16),Text="0",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, - {70,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="ArrowFrame",Parent={69},Position=UDim2.new(1,-16,0,0),Size=UDim2.new(0,16,1,0),}}, - {71,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Up",Parent={70},Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, - {72,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={71},Size=UDim2.new(0,16,0,8),}}, - {73,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={72},Position=UDim2.new(0,8,0,3),Size=UDim2.new(0,1,0,1),}}, - {74,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={72},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, - {75,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={72},Position=UDim2.new(0,6,0,5),Size=UDim2.new(0,5,0,1),}}, - {76,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Down",Parent={70},Position=UDim2.new(0,0,0,8),Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, - {77,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={76},Size=UDim2.new(0,16,0,8),}}, - {78,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={77},Position=UDim2.new(0,8,0,5),Size=UDim2.new(0,1,0,1),}}, - {79,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={77},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, - {80,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={77},Position=UDim2.new(0,6,0,3),Size=UDim2.new(0,5,0,1),}}, - {81,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={68},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Sat:",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, - {82,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),Name="Val",Parent={1},Position=UDim2.new(1,-180,0,255),Size=UDim2.new(0,52,0,16),}}, - {83,"TextBox",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),Font=3,Name="Input",Parent={82},Position=UDim2.new(0,2,0,0),Size=UDim2.new(0,50,0,16),Text="255",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, - {84,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="ArrowFrame",Parent={83},Position=UDim2.new(1,-16,0,0),Size=UDim2.new(0,16,1,0),}}, - {85,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Up",Parent={84},Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, - {86,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={85},Size=UDim2.new(0,16,0,8),}}, - {87,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={86},Position=UDim2.new(0,8,0,3),Size=UDim2.new(0,1,0,1),}}, - {88,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={86},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, - {89,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={86},Position=UDim2.new(0,6,0,5),Size=UDim2.new(0,5,0,1),}}, - {90,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Down",Parent={84},Position=UDim2.new(0,0,0,8),Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, - {91,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={90},Size=UDim2.new(0,16,0,8),}}, - {92,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={91},Position=UDim2.new(0,8,0,5),Size=UDim2.new(0,1,0,1),}}, - {93,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={91},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, - {94,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={91},Position=UDim2.new(0,6,0,3),Size=UDim2.new(0,5,0,1),}}, - {95,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={82},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Val:",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, - {96,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),Font=3,Name="Cancel",Parent={1},Position=UDim2.new(1,-105,1,-28),Size=UDim2.new(0,100,0,25),Text="Cancel",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,}}, - {97,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),Font=3,Name="Ok",Parent={1},Position=UDim2.new(1,-210,1,-28),Size=UDim2.new(0,100,0,25),Text="OK",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,}}, - {98,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),Image="rbxassetid://1072518502",Name="ColorStrip",Parent={1},Position=UDim2.new(1,-30,0,5),Size=UDim2.new(0,13,0,200),}}, - {99,"Frame",{BackgroundColor3=Color3.new(0.3137255012989,0.3137255012989,0.3137255012989),BackgroundTransparency=1,BorderSizePixel=0,Name="ArrowFrame",Parent={1},Position=UDim2.new(1,-16,0,1),Size=UDim2.new(0,5,0,208),}}, - {100,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={99},Position=UDim2.new(0,-2,0,-4),Size=UDim2.new(0,8,0,16),}}, - {101,"Frame",{BackgroundColor3=Color3.new(0,0,0),BorderSizePixel=0,Parent={100},Position=UDim2.new(0,2,0,8),Size=UDim2.new(0,1,0,1),}}, - {102,"Frame",{BackgroundColor3=Color3.new(0,0,0),BorderSizePixel=0,Parent={100},Position=UDim2.new(0,3,0,7),Size=UDim2.new(0,1,0,3),}}, - {103,"Frame",{BackgroundColor3=Color3.new(0,0,0),BorderSizePixel=0,Parent={100},Position=UDim2.new(0,4,0,6),Size=UDim2.new(0,1,0,5),}}, - {104,"Frame",{BackgroundColor3=Color3.new(0,0,0),BorderSizePixel=0,Parent={100},Position=UDim2.new(0,5,0,5),Size=UDim2.new(0,1,0,7),}}, - {105,"Frame",{BackgroundColor3=Color3.new(0,0,0),BorderSizePixel=0,Parent={100},Position=UDim2.new(0,6,0,4),Size=UDim2.new(0,1,0,9),}}, - }) - local window = Lib.Window.new() - window.Resizable = false - window.Alignable = false - window:SetTitle("Color Picker") - window:Resize(450,330) - for i,v in pairs(guiContents:GetChildren()) do - v.Parent = window.GuiElems.Content - end - newMt.Window = window - newMt.Gui = window.Gui - local pickerGui = window.Gui.Main - local pickerTopBar = pickerGui.TopBar - local pickerFrame = pickerGui.Content - local colorSpace = pickerFrame.ColorSpaceFrame.ColorSpace - local colorStrip = pickerFrame.ColorStrip - local previewFrame = pickerFrame.Preview - local basicColorsFrame = pickerFrame.BasicColors - local customColorsFrame = pickerFrame.CustomColors - local okButton = pickerFrame.Ok - local cancelButton = pickerFrame.Cancel - local closeButton = pickerTopBar.Close - - local colorScope = colorSpace.Scope - local colorArrow = pickerFrame.ArrowFrame.Arrow - - local hueInput = pickerFrame.Hue.Input - local satInput = pickerFrame.Sat.Input - local valInput = pickerFrame.Val.Input - - local redInput = pickerFrame.Red.Input - local greenInput = pickerFrame.Green.Input - local blueInput = pickerFrame.Blue.Input - - local user = game:GetService("UserInputService") - local mouse = game:GetService("Players").LocalPlayer:GetMouse() - - local hue,sat,val = 0,0,1 - local red,green,blue = 1,1,1 - local chosenColor = Color3.new(0,0,0) - - local basicColors = {Color3.new(0,0,0),Color3.new(0.66666668653488,0,0),Color3.new(0,0.33333334326744,0),Color3.new(0.66666668653488,0.33333334326744,0),Color3.new(0,0.66666668653488,0),Color3.new(0.66666668653488,0.66666668653488,0),Color3.new(0,1,0),Color3.new(0.66666668653488,1,0),Color3.new(0,0,0.49803924560547),Color3.new(0.66666668653488,0,0.49803924560547),Color3.new(0,0.33333334326744,0.49803924560547),Color3.new(0.66666668653488,0.33333334326744,0.49803924560547),Color3.new(0,0.66666668653488,0.49803924560547),Color3.new(0.66666668653488,0.66666668653488,0.49803924560547),Color3.new(0,1,0.49803924560547),Color3.new(0.66666668653488,1,0.49803924560547),Color3.new(0,0,1),Color3.new(0.66666668653488,0,1),Color3.new(0,0.33333334326744,1),Color3.new(0.66666668653488,0.33333334326744,1),Color3.new(0,0.66666668653488,1),Color3.new(0.66666668653488,0.66666668653488,1),Color3.new(0,1,1),Color3.new(0.66666668653488,1,1),Color3.new(0.33333334326744,0,0),Color3.new(1,0,0),Color3.new(0.33333334326744,0.33333334326744,0),Color3.new(1,0.33333334326744,0),Color3.new(0.33333334326744,0.66666668653488,0),Color3.new(1,0.66666668653488,0),Color3.new(0.33333334326744,1,0),Color3.new(1,1,0),Color3.new(0.33333334326744,0,0.49803924560547),Color3.new(1,0,0.49803924560547),Color3.new(0.33333334326744,0.33333334326744,0.49803924560547),Color3.new(1,0.33333334326744,0.49803924560547),Color3.new(0.33333334326744,0.66666668653488,0.49803924560547),Color3.new(1,0.66666668653488,0.49803924560547),Color3.new(0.33333334326744,1,0.49803924560547),Color3.new(1,1,0.49803924560547),Color3.new(0.33333334326744,0,1),Color3.new(1,0,1),Color3.new(0.33333334326744,0.33333334326744,1),Color3.new(1,0.33333334326744,1),Color3.new(0.33333334326744,0.66666668653488,1),Color3.new(1,0.66666668653488,1),Color3.new(0.33333334326744,1,1),Color3.new(1,1,1)} - local customColors = {} - - local function updateColor(noupdate) - local relativeX,relativeY,relativeStripY = 219 - hue*219, 199 - sat*199, 199 - val*199 - local hsvColor = Color3.fromHSV(hue,sat,val) - - if noupdate == 2 or not noupdate then - hueInput.Text = tostring(math.ceil(359*hue)) - satInput.Text = tostring(math.ceil(255*sat)) - valInput.Text = tostring(math.floor(255*val)) - end - if noupdate == 1 or not noupdate then - redInput.Text = tostring(math.floor(255*red)) - greenInput.Text = tostring(math.floor(255*green)) - blueInput.Text = tostring(math.floor(255*blue)) - end - - chosenColor = Color3.new(red,green,blue) - - colorScope.Position = UDim2.new(0,relativeX-9,0,relativeY-9) - colorStrip.ImageColor3 = Color3.fromHSV(hue,sat,1) - colorArrow.Position = UDim2.new(0,-2,0,relativeStripY-4) - previewFrame.BackgroundColor3 = chosenColor - - newMt.Color = chosenColor - newMt.OnPreview:Fire(chosenColor) - end - - local function colorSpaceInput() - local relativeX = mouse.X - colorSpace.AbsolutePosition.X - local relativeY = mouse.Y - colorSpace.AbsolutePosition.Y - - if relativeX < 0 then relativeX = 0 elseif relativeX > 219 then relativeX = 219 end - if relativeY < 0 then relativeY = 0 elseif relativeY > 199 then relativeY = 199 end - - hue = (219 - relativeX)/219 - sat = (199 - relativeY)/199 - - local hsvColor = Color3.fromHSV(hue,sat,val) - red,green,blue = hsvColor.r,hsvColor.g,hsvColor.b - - updateColor() - end - - local function colorStripInput() - local relativeY = mouse.Y - colorStrip.AbsolutePosition.Y - - if relativeY < 0 then relativeY = 0 elseif relativeY > 199 then relativeY = 199 end - - val = (199 - relativeY)/199 - - local hsvColor = Color3.fromHSV(hue,sat,val) - red,green,blue = hsvColor.r,hsvColor.g,hsvColor.b - - updateColor() - end - - local function hookButtons(frame,func) - frame.ArrowFrame.Up.InputBegan:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement then - frame.ArrowFrame.Up.BackgroundTransparency = 0.5 - elseif input.UserInputType == Enum.UserInputType.MouseButton1 then - local releaseEvent,runEvent - - local startTime = tick() - local pressing = true - local startNum = tonumber(frame.Text) - - if not startNum then return end - - releaseEvent = user.InputEnded:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end - releaseEvent:Disconnect() - pressing = false - end) - - startNum = startNum + 1 - func(startNum) - while pressing do - if tick()-startTime > 0.3 then - startNum = startNum + 1 - func(startNum) - end - wait(0.1) - end - end - end) - - frame.ArrowFrame.Up.InputEnded:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement then - frame.ArrowFrame.Up.BackgroundTransparency = 1 - end - end) - - frame.ArrowFrame.Down.InputBegan:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement then - frame.ArrowFrame.Down.BackgroundTransparency = 0.5 - elseif input.UserInputType == Enum.UserInputType.MouseButton1 then - local releaseEvent,runEvent - - local startTime = tick() - local pressing = true - local startNum = tonumber(frame.Text) - - if not startNum then return end - - releaseEvent = user.InputEnded:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end - releaseEvent:Disconnect() - pressing = false - end) - - startNum = startNum - 1 - func(startNum) - while pressing do - if tick()-startTime > 0.3 then - startNum = startNum - 1 - func(startNum) - end - wait(0.1) - end - end - end) - - frame.ArrowFrame.Down.InputEnded:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement then - frame.ArrowFrame.Down.BackgroundTransparency = 1 - end - end) - end - - colorSpace.InputBegan:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseButton1 then - local releaseEvent,mouseEvent - - releaseEvent = user.InputEnded:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end - releaseEvent:Disconnect() - mouseEvent:Disconnect() - end) - - mouseEvent = user.InputChanged:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement then - colorSpaceInput() - end - end) - - colorSpaceInput() - end - end) - - colorStrip.InputBegan:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseButton1 then - local releaseEvent,mouseEvent - - releaseEvent = user.InputEnded:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end - releaseEvent:Disconnect() - mouseEvent:Disconnect() - end) - - mouseEvent = user.InputChanged:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement then - colorStripInput() - end - end) - - colorStripInput() - end - end) - - local function updateHue(str) - local num = tonumber(str) - if num then - hue = math.clamp(math.floor(num),0,359)/359 - local hsvColor = Color3.fromHSV(hue,sat,val) - red,green,blue = hsvColor.r,hsvColor.g,hsvColor.b - hueInput.Text = tostring(hue*359) - updateColor(1) - end - end - hueInput.FocusLost:Connect(function() updateHue(hueInput.Text) end) hookButtons(hueInput,updateHue) - - local function updateSat(str) - local num = tonumber(str) - if num then - sat = math.clamp(math.floor(num),0,255)/255 - local hsvColor = Color3.fromHSV(hue,sat,val) - red,green,blue = hsvColor.r,hsvColor.g,hsvColor.b - satInput.Text = tostring(sat*255) - updateColor(1) - end - end - satInput.FocusLost:Connect(function() updateSat(satInput.Text) end) hookButtons(satInput,updateSat) - - local function updateVal(str) - local num = tonumber(str) - if num then - val = math.clamp(math.floor(num),0,255)/255 - local hsvColor = Color3.fromHSV(hue,sat,val) - red,green,blue = hsvColor.r,hsvColor.g,hsvColor.b - valInput.Text = tostring(val*255) - updateColor(1) - end - end - valInput.FocusLost:Connect(function() updateVal(valInput.Text) end) hookButtons(valInput,updateVal) - - local function updateRed(str) - local num = tonumber(str) - if num then - red = math.clamp(math.floor(num),0,255)/255 - local newColor = Color3.new(red,green,blue) - hue,sat,val = newColor:ToHSV() - redInput.Text = tostring(red*255) - updateColor(2) - end - end - redInput.FocusLost:Connect(function() updateRed(redInput.Text) end) hookButtons(redInput,updateRed) - - local function updateGreen(str) - local num = tonumber(str) - if num then - green = math.clamp(math.floor(num),0,255)/255 - local newColor = Color3.new(red,green,blue) - hue,sat,val = newColor:ToHSV() - greenInput.Text = tostring(green*255) - updateColor(2) - end - end - greenInput.FocusLost:Connect(function() updateGreen(greenInput.Text) end) hookButtons(greenInput,updateGreen) - - local function updateBlue(str) - local num = tonumber(str) - if num then - blue = math.clamp(math.floor(num),0,255)/255 - local newColor = Color3.new(red,green,blue) - hue,sat,val = newColor:ToHSV() - blueInput.Text = tostring(blue*255) - updateColor(2) - end - end - blueInput.FocusLost:Connect(function() updateBlue(blueInput.Text) end) hookButtons(blueInput,updateBlue) - - local colorChoice = Instance.new("TextButton") - colorChoice.Name = "Choice" - colorChoice.Size = UDim2.new(0,25,0,18) - colorChoice.BorderColor3 = Color3.fromRGB(55,55,55) - colorChoice.Text = "" - colorChoice.AutoButtonColor = false - - local row = 0 - local column = 0 - for i,v in pairs(basicColors) do - local newColor = colorChoice:Clone() - newColor.BackgroundColor3 = v - newColor.Position = UDim2.new(0,1 + 30*column,0,21 + 23*row) - - newColor.MouseButton1Click:Connect(function() - red,green,blue = v.r,v.g,v.b - local newColor = Color3.new(red,green,blue) - hue,sat,val = newColor:toHSV() - updateColor() - end) - - newColor.Parent = basicColorsFrame - column = column + 1 - if column == 6 then row = row + 1 column = 0 end - end - - row = 0 - column = 0 - for i = 1,12 do - local color = customColors[i] or Color3.new(0,0,0) - local newColor = colorChoice:Clone() - newColor.BackgroundColor3 = color - newColor.Position = UDim2.new(0,1 + 30*column,0,20 + 23*row) - - newColor.MouseButton1Click:Connect(function() - local curColor = (customColors[i] or Color3.new(0,0,0)) :: Color3 - red,green,blue = curColor.r,curColor.g,curColor.b - hue,sat,val = curColor:ToHSV() - updateColor() - end) - - newColor.MouseButton2Click:Connect(function() - customColors[i] = chosenColor - newColor.BackgroundColor3 = chosenColor - end) - - newColor.Parent = customColorsFrame - column = column + 1 - if column == 6 then row = row + 1 column = 0 end - end - - okButton.MouseButton1Click:Connect(function() newMt.OnSelect:Fire(chosenColor) window:Close() end) - okButton.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then okButton.BackgroundTransparency = 0.4 end end) - okButton.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then okButton.BackgroundTransparency = 0 end end) - - cancelButton.MouseButton1Click:Connect(function() newMt.OnCancel:Fire() window:Close() end) - cancelButton.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then cancelButton.BackgroundTransparency = 0.4 end end) - cancelButton.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then cancelButton.BackgroundTransparency = 0 end end) - - updateColor() - - newMt.SetColor = function(self,color: Color3) - red,green,blue = color.R,color.G,color.B - hue,sat,val = color:ToHSV() - updateColor() - end - - newMt.Show = function(self) - self.Window:Show() - end - - return newMt - end - - return {new = new} - end)() - - Lib.NumberSequenceEditor = (function() - local function new() -- TODO: Convert to newer class model - local newMt = setmetatable({},{}) - newMt.OnSelect = Lib.Signal.new() - newMt.OnCancel = Lib.Signal.new() - newMt.OnPreview = Lib.Signal.new() - - local guiContents = create({ - {1,"Frame",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BorderSizePixel=0,ClipsDescendants=true,Name="Content",Position=UDim2.new(0,0,0,20),Size=UDim2.new(1,0,1,-20),}}, - {2,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),Name="Time",Parent={1},Position=UDim2.new(0,40,0,210),Size=UDim2.new(0,60,0,20),}}, - {3,"TextBox",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),ClipsDescendants=true,Font=3,Name="Input",Parent={2},Position=UDim2.new(0,2,0,0),Size=UDim2.new(0,58,0,20),Text="0",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, - {4,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={2},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Time",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, - {5,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),Font=3,Name="Close",Parent={1},Position=UDim2.new(1,-90,0,210),Size=UDim2.new(0,80,0,20),Text="Close",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,}}, - {6,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),Font=3,Name="Reset",Parent={1},Position=UDim2.new(1,-180,0,210),Size=UDim2.new(0,80,0,20),Text="Reset",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,}}, - {7,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),Font=3,Name="Delete",Parent={1},Position=UDim2.new(0,380,0,210),Size=UDim2.new(0,80,0,20),Text="Delete",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,}}, - {8,"Frame",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),Name="NumberLineOutlines",Parent={1},Position=UDim2.new(0,10,0,20),Size=UDim2.new(1,-20,0,170),}}, - {9,"Frame",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),Name="NumberLine",Parent={1},Position=UDim2.new(0,10,0,20),Size=UDim2.new(1,-20,0,170),}}, - {10,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),Name="Value",Parent={1},Position=UDim2.new(0,170,0,210),Size=UDim2.new(0,60,0,20),}}, - {11,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={10},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Value",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, - {12,"TextBox",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),ClipsDescendants=true,Font=3,Name="Input",Parent={10},Position=UDim2.new(0,2,0,0),Size=UDim2.new(0,58,0,20),Text="0",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, - {13,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),Name="Envelope",Parent={1},Position=UDim2.new(0,300,0,210),Size=UDim2.new(0,60,0,20),}}, - {14,"TextBox",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),ClipsDescendants=true,Font=3,Name="Input",Parent={13},Position=UDim2.new(0,2,0,0),Size=UDim2.new(0,58,0,20),Text="0",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, - {15,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={13},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Envelope",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, - }) - local window = Lib.Window.new() - window.Resizable = false - window:Resize(680,265) - window:SetTitle("NumberSequence Editor") - newMt.Window = window - newMt.Gui = window.Gui - for i,v in pairs(guiContents:GetChildren()) do - v.Parent = window.GuiElems.Content - end - local gui = window.Gui - local pickerGui = gui.Main - local pickerTopBar = pickerGui.TopBar - local pickerFrame = pickerGui.Content - local numberLine = pickerFrame.NumberLine - local numberLineOutlines = pickerFrame.NumberLineOutlines - local timeBox = pickerFrame.Time.Input - local valueBox = pickerFrame.Value.Input - local envelopeBox = pickerFrame.Envelope.Input - local deleteButton = pickerFrame.Delete - local resetButton = pickerFrame.Reset - local closeButton = pickerFrame.Close - local topClose = pickerTopBar.Close - - local points = {{1,0,3},{8,0.05,1},{5,0.6,2},{4,0.7,4},{6,1,4}} - local lines = {} - local eLines = {} - local beginPoint = points[1] - local endPoint = points[#points] - local currentlySelected = nil - local currentPoint = nil - local resetSequence = nil - - local user = game:GetService("UserInputService") - local mouse = game:GetService("Players").LocalPlayer:GetMouse() - - for i = 2,10 do - local newLine = Instance.new("Frame") - newLine.BackgroundTransparency = 0.5 - newLine.BackgroundColor3 = Color3.new(96/255,96/255,96/255) - newLine.BorderSizePixel = 0 - newLine.Size = UDim2.new(0,1,1,0) - newLine.Position = UDim2.new((i-1)/(11-1),0,0,0) - newLine.Parent = numberLineOutlines - end - - for i = 2,4 do - local newLine = Instance.new("Frame") - newLine.BackgroundTransparency = 0.5 - newLine.BackgroundColor3 = Color3.new(96/255,96/255,96/255) - newLine.BorderSizePixel = 0 - newLine.Size = UDim2.new(1,0,0,1) - newLine.Position = UDim2.new(0,0,(i-1)/(5-1),0) - newLine.Parent = numberLineOutlines - end - - local lineTemp = Instance.new("Frame") - lineTemp.BackgroundColor3 = Color3.new(0,0,0) - lineTemp.BorderSizePixel = 0 - lineTemp.Size = UDim2.new(0,1,0,1) - - local sequenceLine = Instance.new("Frame") - sequenceLine.BackgroundColor3 = Color3.new(0,0,0) - sequenceLine.BorderSizePixel = 0 - sequenceLine.Size = UDim2.new(0,1,0,0) - - for i = 1,numberLine.AbsoluteSize.X do - local line = sequenceLine:Clone() - eLines[i] = line - line.Name = "E"..tostring(i) - line.BackgroundTransparency = 0.5 - line.BackgroundColor3 = Color3.new(199/255,44/255,28/255) - line.Position = UDim2.new(0,i-1,0,0) - line.Parent = numberLine - end - - for i = 1,numberLine.AbsoluteSize.X do - local line = sequenceLine:Clone() - lines[i] = line - line.Name = tostring(i) - line.Position = UDim2.new(0,i-1,0,0) - line.Parent = numberLine - end - - local envelopeDrag = Instance.new("Frame") - envelopeDrag.BackgroundTransparency = 1 - envelopeDrag.BackgroundColor3 = Color3.new(0,0,0) - envelopeDrag.BorderSizePixel = 0 - envelopeDrag.Size = UDim2.new(0,7,0,20) - envelopeDrag.Visible = false - envelopeDrag.ZIndex = 2 - local envelopeDragLine = Instance.new("Frame",envelopeDrag) - envelopeDragLine.Name = "Line" - envelopeDragLine.BackgroundColor3 = Color3.new(0,0,0) - envelopeDragLine.BorderSizePixel = 0 - envelopeDragLine.Position = UDim2.new(0,3,0,0) - envelopeDragLine.Size = UDim2.new(0,1,0,20) - envelopeDragLine.ZIndex = 2 - - local envelopeDragTop,envelopeDragBottom = envelopeDrag:Clone(),envelopeDrag:Clone() - envelopeDragTop.Parent = numberLine - envelopeDragBottom.Parent = numberLine - - local function buildSequence() - local newPoints = {} - for i,v in pairs(points) do - table.insert(newPoints,NumberSequenceKeypoint.new(v[2],v[1],v[3])) - end - newMt.Sequence = NumberSequence.new(newPoints) - newMt.OnSelect:Fire(newMt.Sequence) - end - - local function round(num,places) - local multi = 10^places - return math.floor(num*multi + 0.5)/multi - end - - local function updateInputs(point) - if point then - currentPoint = point - local rawT,rawV,rawE = point[2],point[1],point[3] - timeBox.Text = round(rawT,(rawT < 0.01 and 5) or (rawT < 0.1 and 4) or 3) - valueBox.Text = round(rawV,(rawV < 0.01 and 5) or (rawV < 0.1 and 4) or (rawV < 1 and 3) or 2) - envelopeBox.Text = round(rawE,(rawE < 0.01 and 5) or (rawE < 0.1 and 4) or (rawV < 1 and 3) or 2) - - local envelopeDistance = numberLine.AbsoluteSize.Y*(point[3]/10) - envelopeDragTop.Position = UDim2.new(0,point[4].Position.X.Offset-1,0,point[4].Position.Y.Offset-envelopeDistance-17) - envelopeDragTop.Visible = true - envelopeDragBottom.Position = UDim2.new(0,point[4].Position.X.Offset-1,0,point[4].Position.Y.Offset+envelopeDistance+2) - envelopeDragBottom.Visible = true - end - end - - envelopeDragTop.InputBegan:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 or not currentPoint or Lib.CheckMouseInGui(currentPoint[4].Select) then return end - local mouseEvent,releaseEvent - local maxSize = numberLine.AbsoluteSize.Y - - local mouseDelta = math.abs(envelopeDragTop.AbsolutePosition.Y - mouse.Y) - - envelopeDragTop.Line.Position = UDim2.new(0,2,0,0) - envelopeDragTop.Line.Size = UDim2.new(0,3,0,20) - - releaseEvent = user.InputEnded:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end - mouseEvent:Disconnect() - releaseEvent:Disconnect() - envelopeDragTop.Line.Position = UDim2.new(0,3,0,0) - envelopeDragTop.Line.Size = UDim2.new(0,1,0,20) - end) - - mouseEvent = user.InputChanged:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement then - local topDiff = (currentPoint[4].AbsolutePosition.Y+2)-(mouse.Y-mouseDelta)-19 - local newEnvelope = 10*(math.max(topDiff,0)/maxSize) - local maxEnvelope = math.min(currentPoint[1],10-currentPoint[1]) - currentPoint[3] = math.min(newEnvelope,maxEnvelope) - newMt:Redraw() - buildSequence() - updateInputs(currentPoint) - end - end) - end) - - envelopeDragBottom.InputBegan:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 or not currentPoint or Lib.CheckMouseInGui(currentPoint[4].Select) then return end - local mouseEvent,releaseEvent - local maxSize = numberLine.AbsoluteSize.Y - - local mouseDelta = math.abs(envelopeDragBottom.AbsolutePosition.Y - mouse.Y) - - envelopeDragBottom.Line.Position = UDim2.new(0,2,0,0) - envelopeDragBottom.Line.Size = UDim2.new(0,3,0,20) - - releaseEvent = user.InputEnded:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end - mouseEvent:Disconnect() - releaseEvent:Disconnect() - envelopeDragBottom.Line.Position = UDim2.new(0,3,0,0) - envelopeDragBottom.Line.Size = UDim2.new(0,1,0,20) - end) - - mouseEvent = user.InputChanged:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement then - local bottomDiff = (mouse.Y+(20-mouseDelta))-(currentPoint[4].AbsolutePosition.Y+2)-19 - local newEnvelope = 10*(math.max(bottomDiff,0)/maxSize) - local maxEnvelope = math.min(currentPoint[1],10-currentPoint[1]) - currentPoint[3] = math.min(newEnvelope,maxEnvelope) - newMt:Redraw() - buildSequence() - updateInputs(currentPoint) - end - end) - end) - - local function placePoint(point) - local newPoint = Instance.new("Frame") - newPoint.Name = "Point" - newPoint.BorderSizePixel = 0 - newPoint.Size = UDim2.new(0,5,0,5) - newPoint.Position = UDim2.new(0,math.floor((numberLine.AbsoluteSize.X-1) * point[2])-2,0,numberLine.AbsoluteSize.Y*(10-point[1])/10-2) - newPoint.BackgroundColor3 = Color3.new(0,0,0) - - local newSelect = Instance.new("Frame") - newSelect.Name = "Select" - newSelect.BackgroundTransparency = 1 - newSelect.BackgroundColor3 = Color3.new(199/255,44/255,28/255) - newSelect.Position = UDim2.new(0,-2,0,-2) - newSelect.Size = UDim2.new(0,9,0,9) - newSelect.Parent = newPoint - - newPoint.Parent = numberLine - - newSelect.InputBegan:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement then - for i,v in pairs(points) do v[4].Select.BackgroundTransparency = 1 end - newSelect.BackgroundTransparency = 0 - updateInputs(point) - end - if input.UserInputType == Enum.UserInputType.MouseButton1 and not currentlySelected then - currentPoint = point - local mouseEvent,releaseEvent - currentlySelected = true - newSelect.BackgroundColor3 = Color3.new(249/255,191/255,59/255) - - local oldEnvelope = point[3] - - releaseEvent = user.InputEnded:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end - mouseEvent:Disconnect() - releaseEvent:Disconnect() - currentlySelected = nil - newSelect.BackgroundColor3 = Color3.new(199/255,44/255,28/255) - end) - - mouseEvent = user.InputChanged:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement then - local maxX = numberLine.AbsoluteSize.X-1 - local relativeX = mouse.X - numberLine.AbsolutePosition.X - if relativeX < 0 then relativeX = 0 end - if relativeX > maxX then relativeX = maxX end - local maxY = numberLine.AbsoluteSize.Y-1 - local relativeY = mouse.Y - numberLine.AbsolutePosition.Y - if relativeY < 0 then relativeY = 0 end - if relativeY > maxY then relativeY = maxY end - if point ~= beginPoint and point ~= endPoint then - point[2] = relativeX/maxX - end - point[1] = 10-(relativeY/maxY)*10 - local maxEnvelope = math.min(point[1],10-point[1]) - point[3] = math.min(oldEnvelope,maxEnvelope) - newMt:Redraw() - updateInputs(point) - for i,v in pairs(points) do v[4].Select.BackgroundTransparency = 1 end - newSelect.BackgroundTransparency = 0 - buildSequence() - end - end) - end - end) - - return newPoint - end - - local function placePoints() - for i,v in pairs(points) do - v[4] = placePoint(v) - end - end - - local function redraw(self) - local numberLineSize = numberLine.AbsoluteSize - table.sort(points,function(a,b) return a[2] < b[2] end) - for i,v in pairs(points) do - v[4].Position = UDim2.new(0,math.floor((numberLineSize.X-1) * v[2])-2,0,(numberLineSize.Y-1)*(10-v[1])/10-2) - end - lines[1].Size = UDim2.new(0,1,0,0) - for i = 1,#points-1 do - local fromPoint = points[i] - local toPoint = points[i+1] - local deltaY = toPoint[4].Position.Y.Offset-fromPoint[4].Position.Y.Offset - local deltaX = toPoint[4].Position.X.Offset-fromPoint[4].Position.X.Offset - local slope = deltaY/deltaX - - local fromEnvelope = fromPoint[3] - local nextEnvelope = toPoint[3] - - local currentRise = math.abs(slope) - local totalRise = 0 - local maxRise = math.abs(toPoint[4].Position.Y.Offset-fromPoint[4].Position.Y.Offset) - - for lineCount = math.min(fromPoint[4].Position.X.Offset+1,toPoint[4].Position.X.Offset),toPoint[4].Position.X.Offset do - if deltaX == 0 and deltaY == 0 then return end - local riseNow = math.floor(currentRise) - local line = lines[lineCount+3] - if line then - if totalRise+riseNow > maxRise then riseNow = maxRise-totalRise end - if math.sign(slope) == -1 then - line.Position = UDim2.new(0,lineCount+2,0,fromPoint[4].Position.Y.Offset + -(totalRise+riseNow)+2) - else - line.Position = UDim2.new(0,lineCount+2,0,fromPoint[4].Position.Y.Offset + totalRise+2) - end - line.Size = UDim2.new(0,1,0,math.max(riseNow,1)) - end - totalRise = totalRise + riseNow - currentRise = currentRise - riseNow + math.abs(slope) - - local envPercent = (lineCount-fromPoint[4].Position.X.Offset)/(toPoint[4].Position.X.Offset-fromPoint[4].Position.X.Offset) - local envLerp = fromEnvelope+(nextEnvelope-fromEnvelope)*envPercent - local relativeSize = (envLerp/10)*numberLineSize.Y - - local line = eLines[lineCount + 3] - if line then - line.Position = UDim2.new(0,lineCount+2,0,lines[lineCount+3].Position.Y.Offset-math.floor(relativeSize)) - line.Size = UDim2.new(0,1,0,math.floor(relativeSize*2)) - end - end - end - end - newMt.Redraw = redraw - - local function loadSequence(self,seq) - resetSequence = seq - for i,v in pairs(points) do if v[4] then v[4]:Destroy() end end - points = {} - for i,v in pairs(seq.Keypoints) do - local maxEnvelope = math.min(v.Value,10-v.Value) - local newPoint = {v.Value,v.Time,math.min(v.Envelope,maxEnvelope)} - newPoint[4] = placePoint(newPoint) - table.insert(points,newPoint) - end - beginPoint = points[1] - endPoint = points[#points] - currentlySelected = nil - redraw() - envelopeDragTop.Visible = false - envelopeDragBottom.Visible = false - end - newMt.SetSequence = loadSequence - - timeBox.FocusLost:Connect(function() - local point = currentPoint - local num = tonumber(timeBox.Text) - if point and num and point ~= beginPoint and point ~= endPoint then - num = math.clamp(num,0,1) - point[2] = num - redraw() - buildSequence() - updateInputs(point) - end - end) - - valueBox.FocusLost:Connect(function() - local point = currentPoint - local num = tonumber(valueBox.Text) - if point and num then - local oldEnvelope = point[3] - num = math.clamp(num,0,10) - point[1] = num - local maxEnvelope = math.min(point[1],10-point[1]) - point[3] = math.min(oldEnvelope,maxEnvelope) - redraw() - buildSequence() - updateInputs(point) - end - end) - - envelopeBox.FocusLost:Connect(function() - local point = currentPoint - local num = tonumber(envelopeBox.Text) - if point and num then - num = math.clamp(num,0,5) - local maxEnvelope = math.min(point[1],10-point[1]) - point[3] = math.min(num,maxEnvelope) - redraw() - buildSequence() - updateInputs(point) - end - end) - - local function buttonAnimations(button,inverse) - button.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then button.BackgroundTransparency = (inverse and 0.5 or 0.4) end end) - button.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then button.BackgroundTransparency = (inverse and 1 or 0) end end) - end - - numberLine.InputBegan:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseButton1 and #points < 20 then - if Lib.CheckMouseInGui(envelopeDragTop) or Lib.CheckMouseInGui(envelopeDragBottom) then return end - for i,v in pairs(points) do - if Lib.CheckMouseInGui(v[4].Select) then return end - end - local maxX = numberLine.AbsoluteSize.X-1 - local relativeX = mouse.X - numberLine.AbsolutePosition.X - if relativeX < 0 then relativeX = 0 end - if relativeX > maxX then relativeX = maxX end - local maxY = numberLine.AbsoluteSize.Y-1 - local relativeY = mouse.Y - numberLine.AbsolutePosition.Y - if relativeY < 0 then relativeY = 0 end - if relativeY > maxY then relativeY = maxY end - - local raw = relativeX/maxX - local newPoint = {10-(relativeY/maxY)*10,raw,0} - newPoint[4] = placePoint(newPoint) - table.insert(points,newPoint) - redraw() - buildSequence() - end - end) - - deleteButton.MouseButton1Click:Connect(function() - if currentPoint and currentPoint ~= beginPoint and currentPoint ~= endPoint then - for i,v in pairs(points) do - if v == currentPoint then - v[4]:Destroy() - table.remove(points,i) - break - end - end - currentlySelected = nil - redraw() - buildSequence() - updateInputs(points[1]) - end - end) - - resetButton.MouseButton1Click:Connect(function() - if resetSequence then - newMt:SetSequence(resetSequence) - buildSequence() - end - end) - - closeButton.MouseButton1Click:Connect(function() - window:Close() - end) - - buttonAnimations(deleteButton) - buttonAnimations(resetButton) - buttonAnimations(closeButton) - - placePoints() - redraw() - - newMt.Show = function(self) - window:Show() - end - - return newMt - end - - return {new = new} - end)() - - Lib.ColorSequenceEditor = (function() -- TODO: Convert to newer class model - local function new() - local newMt = setmetatable({},{}) - newMt.OnSelect = Lib.Signal.new() - newMt.OnCancel = Lib.Signal.new() - newMt.OnPreview = Lib.Signal.new() - newMt.OnPickColor = Lib.Signal.new() - - local guiContents = create({ - {1,"Frame",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BorderSizePixel=0,ClipsDescendants=true,Name="Content",Position=UDim2.new(0,0,0,20),Size=UDim2.new(1,0,1,-20),}}, - {2,"Frame",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),Name="ColorLine",Parent={1},Position=UDim2.new(0,10,0,5),Size=UDim2.new(1,-20,0,70),}}, - {3,"Frame",{BackgroundColor3=Color3.new(1,1,1),BorderSizePixel=0,Name="Gradient",Parent={2},Size=UDim2.new(1,0,1,0),}}, - {4,"UIGradient",{Parent={3},}}, - {5,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="Arrows",Parent={1},Position=UDim2.new(0,1,0,73),Size=UDim2.new(1,-2,0,16),}}, - {6,"Frame",{BackgroundColor3=Color3.new(0,0,0),BackgroundTransparency=0.5,BorderSizePixel=0,Name="Cursor",Parent={1},Position=UDim2.new(0,10,0,0),Size=UDim2.new(0,1,0,80),}}, - {7,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),Name="Time",Parent={1},Position=UDim2.new(0,40,0,95),Size=UDim2.new(0,100,0,20),}}, - {8,"TextBox",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),ClipsDescendants=true,Font=3,Name="Input",Parent={7},Position=UDim2.new(0,2,0,0),Size=UDim2.new(0,98,0,20),Text="0",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, - {9,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={7},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Time",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, - {10,"Frame",{BackgroundColor3=Color3.new(1,1,1),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),Name="ColorBox",Parent={1},Position=UDim2.new(0,220,0,95),Size=UDim2.new(0,20,0,20),}}, - {11,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={10},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Color",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, - {12,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),BorderSizePixel=0,Font=3,Name="Close",Parent={1},Position=UDim2.new(1,-90,0,95),Size=UDim2.new(0,80,0,20),Text="Close",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,}}, - {13,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),BorderSizePixel=0,Font=3,Name="Reset",Parent={1},Position=UDim2.new(1,-180,0,95),Size=UDim2.new(0,80,0,20),Text="Reset",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,}}, - {14,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),BorderSizePixel=0,Font=3,Name="Delete",Parent={1},Position=UDim2.new(0,280,0,95),Size=UDim2.new(0,80,0,20),Text="Delete",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,}}, - {15,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={1},Size=UDim2.new(0,16,0,16),Visible=false,}}, - {16,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={15},Position=UDim2.new(0,8,0,3),Size=UDim2.new(0,1,0,2),}}, - {17,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={15},Position=UDim2.new(0,7,0,5),Size=UDim2.new(0,3,0,2),}}, - {18,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={15},Position=UDim2.new(0,6,0,7),Size=UDim2.new(0,5,0,2),}}, - {19,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={15},Position=UDim2.new(0,5,0,9),Size=UDim2.new(0,7,0,2),}}, - {20,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={15},Position=UDim2.new(0,4,0,11),Size=UDim2.new(0,9,0,2),}}, - }) - local window = Lib.Window.new() - window.Resizable = false - window:Resize(650,150) - window:SetTitle("ColorSequence Editor") - newMt.Window = window - newMt.Gui = window.Gui - for i,v in pairs(guiContents:GetChildren()) do - v.Parent = window.GuiElems.Content - end - local gui = window.Gui - local pickerGui = gui.Main - local pickerTopBar = pickerGui.TopBar - local pickerFrame = pickerGui.Content - local colorLine = pickerFrame.ColorLine - local gradient = colorLine.Gradient.UIGradient - local arrowFrame = pickerFrame.Arrows - local arrow = pickerFrame.Arrow - local cursor = pickerFrame.Cursor - local timeBox = pickerFrame.Time.Input - local colorBox = pickerFrame.ColorBox - local deleteButton = pickerFrame.Delete - local resetButton = pickerFrame.Reset - local closeButton = pickerFrame.Close - local topClose = pickerTopBar.Close - - local user = game:GetService("UserInputService") - local mouse = game:GetService("Players").LocalPlayer:GetMouse() - - local colors = {{Color3.new(1,0,1),0},{Color3.new(0.2,0.9,0.2),0.2},{Color3.new(0.4,0.5,0.9),0.7},{Color3.new(0.6,1,1),1}} - local resetSequence = nil - - local beginPoint = colors[1] - local endPoint = colors[#colors] - - local currentlySelected = nil - local currentPoint = nil - - local sequenceLine = Instance.new("Frame") - sequenceLine.BorderSizePixel = 0 - sequenceLine.Size = UDim2.new(0,1,1,0) - - newMt.Sequence = ColorSequence.new(Color3.new(1,1,1)) - local function buildSequence(noupdate) - local newPoints = {} - table.sort(colors,function(a,b) return a[2] < b[2] end) - for i,v in pairs(colors) do - table.insert(newPoints,ColorSequenceKeypoint.new(v[2],v[1])) - end - newMt.Sequence = ColorSequence.new(newPoints) - if not noupdate then newMt.OnSelect:Fire(newMt.Sequence) end - end - - local function round(num,places) - local multi = 10^places - return math.floor(num*multi + 0.5)/multi - end - - local function updateInputs(point) - if point then - currentPoint = point - local raw = point[2] - timeBox.Text = round(raw,(raw < 0.01 and 5) or (raw < 0.1 and 4) or 3) - colorBox.BackgroundColor3 = point[1] - end - end - - local function placeArrow(ind,point) - local newArrow = arrow:Clone() - newArrow.Position = UDim2.new(0,ind-1,0,0) - newArrow.Visible = true - newArrow.Parent = arrowFrame - - newArrow.InputBegan:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement then - cursor.Visible = true - cursor.Position = UDim2.new(0,9 + newArrow.Position.X.Offset,0,0) - end - if input.UserInputType == Enum.UserInputType.MouseButton1 then - updateInputs(point) - if point == beginPoint or point == endPoint or currentlySelected then return end - - local mouseEvent,releaseEvent - currentlySelected = true - - releaseEvent = user.InputEnded:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end - mouseEvent:Disconnect() - releaseEvent:Disconnect() - currentlySelected = nil - cursor.Visible = false - end) - - mouseEvent = user.InputChanged:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement then - local maxSize = colorLine.AbsoluteSize.X-1 - local relativeX = mouse.X - colorLine.AbsolutePosition.X - if relativeX < 0 then relativeX = 0 end - if relativeX > maxSize then relativeX = maxSize end - local raw = relativeX/maxSize - point[2] = relativeX/maxSize - updateInputs(point) - cursor.Visible = true - cursor.Position = UDim2.new(0,9 + newArrow.Position.X.Offset,0,0) - buildSequence() - newMt:Redraw() - end - end) - end - end) - - newArrow.InputEnded:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement then - cursor.Visible = false - end - end) - - return newArrow - end - - local function placeArrows() - for i,v in pairs(colors) do - v[3] = placeArrow(math.floor((colorLine.AbsoluteSize.X-1) * v[2]) + 1,v) - end - end - - local function redraw(self) - gradient.Color = newMt.Sequence or ColorSequence.new(Color3.new(1,1,1)) - - for i = 2,#colors do - local nextColor = colors[i] - local endPos = math.floor((colorLine.AbsoluteSize.X-1) * nextColor[2]) + 1 - nextColor[3].Position = UDim2.new(0,endPos,0,0) - end - end - newMt.Redraw = redraw - - local function loadSequence(self,seq) - resetSequence = seq - for i,v in pairs(colors) do if v[3] then v[3]:Destroy() end end - colors = {} - currentlySelected = nil - for i,v in pairs(seq.Keypoints) do - local newPoint = {v.Value,v.Time} - newPoint[3] = placeArrow(v.Time,newPoint) - table.insert(colors,newPoint) - end - beginPoint = colors[1] - endPoint = colors[#colors] - currentlySelected = nil - updateInputs(colors[1]) - buildSequence(true) - redraw() - end - newMt.SetSequence = loadSequence - - local function buttonAnimations(button,inverse) - button.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then button.BackgroundTransparency = (inverse and 0.5 or 0.4) end end) - button.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then button.BackgroundTransparency = (inverse and 1 or 0) end end) - end - - colorLine.InputBegan:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseButton1 and #colors < 20 then - local maxSize = colorLine.AbsoluteSize.X-1 - local relativeX = mouse.X - colorLine.AbsolutePosition.X - if relativeX < 0 then relativeX = 0 end - if relativeX > maxSize then relativeX = maxSize end - - local raw = relativeX/maxSize - local fromColor = nil - local toColor = nil - for i,col in pairs(colors) do - if col[2] >= raw then - fromColor = colors[math.max(i-1,1)] - toColor = colors[i] - break - end - end - local lerpColor = fromColor[1]:lerp(toColor[1],(raw-fromColor[2])/(toColor[2]-fromColor[2])) - local newPoint = {lerpColor,raw} - newPoint[3] = placeArrow(newPoint[2],newPoint) - table.insert(colors,newPoint) - updateInputs(newPoint) - buildSequence() - redraw() - end - end) - - colorLine.InputChanged:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement then - local maxSize = colorLine.AbsoluteSize.X-1 - local relativeX = mouse.X - colorLine.AbsolutePosition.X - if relativeX < 0 then relativeX = 0 end - if relativeX > maxSize then relativeX = maxSize end - cursor.Visible = true - cursor.Position = UDim2.new(0,10 + relativeX,0,0) - end - end) - - colorLine.InputEnded:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement then - local inArrow = false - for i,v in pairs(colors) do - if Lib.CheckMouseInGui(v[3]) then - inArrow = v[3] - end - end - cursor.Visible = inArrow and true or false - if inArrow then cursor.Position = UDim2.new(0,9 + inArrow.Position.X.Offset,0,0) end - end - end) - - timeBox:GetPropertyChangedSignal("Text"):Connect(function() - local point = currentPoint - local num = tonumber(timeBox.Text) - if point and num and point ~= beginPoint and point ~= endPoint then - num = math.clamp(num,0,1) - point[2] = num - buildSequence() - redraw() - end - end) - - colorBox.InputBegan:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseButton1 then - local editor = newMt.ColorPicker - if not editor then - editor = Lib.ColorPicker.new() - editor.Window:SetTitle("ColorSequence Color Picker") - - editor.OnSelect:Connect(function(col) - if currentPoint then - currentPoint[1] = col - end - buildSequence() - redraw() - end) - - newMt.ColorPicker = editor - end - - editor.Window:ShowAndFocus() - end - end) - - deleteButton.MouseButton1Click:Connect(function() - if currentPoint and currentPoint ~= beginPoint and currentPoint ~= endPoint then - for i,v in pairs(colors) do - if v == currentPoint then - v[3]:Destroy() - table.remove(colors,i) - break - end - end - currentlySelected = nil - updateInputs(colors[1]) - buildSequence() - redraw() - end - end) - - resetButton.MouseButton1Click:Connect(function() - if resetSequence then - newMt:SetSequence(resetSequence) - end - end) - - closeButton.MouseButton1Click:Connect(function() - window:Close() - end) - - topClose.MouseButton1Click:Connect(function() - window:Close() - end) - - buttonAnimations(deleteButton) - buttonAnimations(resetButton) - buttonAnimations(closeButton) - - placeArrows() - redraw() - - newMt.Show = function(self) - window:Show() - end - - return newMt - end - - return {new = new} - end)() - - Lib.ViewportTextBox = (function() - local textService = game:GetService("TextService") - - local props = { - OffsetX = 0, - TextBox = PH, - CursorPos = -1, - Gui = PH, - View = PH - } - local funcs = {} - funcs.Update = function(self) - local cursorPos = self.CursorPos or -1 - local text = self.TextBox.Text - if text == "" then self.TextBox.Position = UDim2.new(0,0,0,0) return end - if cursorPos == -1 then return end - - local cursorText = text:sub(1,cursorPos-1) - local pos = nil - local leftEnd = -self.TextBox.Position.X.Offset - local rightEnd = leftEnd + self.View.AbsoluteSize.X - - local totalTextSize = textService:GetTextSize(text,self.TextBox.TextSize,self.TextBox.Font,Vector2.new(999999999,100)).X - local cursorTextSize = textService:GetTextSize(cursorText,self.TextBox.TextSize,self.TextBox.Font,Vector2.new(999999999,100)).X - - if cursorTextSize > rightEnd then - pos = math.max(-1,cursorTextSize - self.View.AbsoluteSize.X + 2) - elseif cursorTextSize < leftEnd then - pos = math.max(-1,cursorTextSize-2) - elseif totalTextSize < rightEnd then - pos = math.max(-1,totalTextSize - self.View.AbsoluteSize.X + 2) - end - - if pos then - self.TextBox.Position = UDim2.new(0,-pos,0,0) - self.TextBox.Size = UDim2.new(1,pos,1,0) - end - end - - funcs.GetText = function(self) - return self.TextBox.Text - end - - funcs.SetText = function(self,text) - self.TextBox.Text = text - end - - local mt = getGuiMT(props,funcs) - - local function convert(textbox) - local obj = initObj(props,mt) - - local view = Instance.new("Frame") - view.BackgroundTransparency = textbox.BackgroundTransparency - view.BackgroundColor3 = textbox.BackgroundColor3 - view.BorderSizePixel = textbox.BorderSizePixel - view.BorderColor3 = textbox.BorderColor3 - view.Position = textbox.Position - view.Size = textbox.Size - view.ClipsDescendants = true - view.Name = textbox.Name - textbox.BackgroundTransparency = 1 - textbox.Position = UDim2.new(0,0,0,0) - textbox.Size = UDim2.new(1,0,1,0) - textbox.TextXAlignment = Enum.TextXAlignment.Left - textbox.Name = "Input" - - obj.TextBox = textbox - obj.View = view - obj.Gui = view - - textbox.Changed:Connect(function(prop) - if prop == "Text" or prop == "CursorPosition" or prop == "AbsoluteSize" then - local cursorPos = obj.TextBox.CursorPosition - if cursorPos ~= -1 then obj.CursorPos = cursorPos end - obj:Update() - end - end) - - obj:Update() - - view.Parent = textbox.Parent - textbox.Parent = view - - return obj - end - - local function new() - local textBox = Instance.new("TextBox") - textBox.Size = UDim2.new(0,100,0,20) - textBox.BackgroundColor3 = Settings.Theme.TextBox - textBox.BorderColor3 = Settings.Theme.Outline3 - textBox.ClearTextOnFocus = false - textBox.TextColor3 = Settings.Theme.Text - textBox.Font = Enum.Font.SourceSans - textBox.TextSize = 14 - textBox.Text = "" - return convert(textBox) - end - - return {new = new, convert = convert} - end)() - - Lib.Label = (function() - local props,funcs = {},{} - - local mt = getGuiMT(props,funcs) - - local function new() - local label = Instance.new("TextLabel") - label.BackgroundTransparency = 1 - label.TextXAlignment = Enum.TextXAlignment.Left - label.TextColor3 = Settings.Theme.Text - label.TextTransparency = 0.1 - label.Size = UDim2.new(0,100,0,20) - label.Font = Enum.Font.SourceSans - label.TextSize = 14 - - local obj = setmetatable({ - Gui = label - },mt) - return obj - end - - return {new = new} - end)() - - Lib.Frame = (function() - local props,funcs = {},{} - - local mt = getGuiMT(props,funcs) - - local function new() - local fr = Instance.new("Frame") - fr.BackgroundColor3 = Settings.Theme.Main1 - fr.BorderColor3 = Settings.Theme.Outline1 - fr.Size = UDim2.new(0,50,0,50) - - local obj = setmetatable({ - Gui = fr - },mt) - return obj - end - - return {new = new} - end)() - - Lib.Button = (function() - local props = { - Gui = PH, - Anim = PH, - Disabled = false, - OnClick = SIGNAL, - OnDown = SIGNAL, - OnUp = SIGNAL, - AllowedButtons = {1} - } - local funcs = {} - local tableFind = table.find - - funcs.Trigger = function(self,event,button) - if not self.Disabled and tableFind(self.AllowedButtons,button) then - self["On"..event]:Fire(button) - end - end - - funcs.SetDisabled = function(self,dis) - self.Disabled = dis - - if dis then - self.Anim:Disable() - self.Gui.TextTransparency = 0.5 - else - self.Anim.Enable() - self.Gui.TextTransparency = 0 - end - end - - local mt = getGuiMT(props,funcs) - - local function new() - local b = Instance.new("TextButton") - b.AutoButtonColor = false - b.TextColor3 = Settings.Theme.Text - b.TextTransparency = 0.1 - b.Size = UDim2.new(0,100,0,20) - b.Font = Enum.Font.SourceSans - b.TextSize = 14 - b.BackgroundColor3 = Settings.Theme.Button - b.BorderColor3 = Settings.Theme.Outline2 - - local obj = initObj(props,mt) - obj.Gui = b - obj.Anim = Lib.ButtonAnim(b,{Mode = 2, StartColor = Settings.Theme.Button, HoverColor = Settings.Theme.ButtonHover, PressColor = Settings.Theme.ButtonPress, OutlineColor = Settings.Theme.Outline2}) - - b.MouseButton1Click:Connect(function() obj:Trigger("Click",1) end) - b.MouseButton1Down:Connect(function() obj:Trigger("Down",1) end) - b.MouseButton1Up:Connect(function() obj:Trigger("Up",1) end) - - b.MouseButton2Click:Connect(function() obj:Trigger("Click",2) end) - b.MouseButton2Down:Connect(function() obj:Trigger("Down",2) end) - b.MouseButton2Up:Connect(function() obj:Trigger("Up",2) end) - - return obj - end - - return {new = new} - end)() - - Lib.DropDown = (function() - local props = { - Gui = PH, - Anim = PH, - Context = PH, - Selected = PH, - Disabled = false, - CanBeEmpty = true, - Options = {}, - GuiElems = {}, - OnSelect = SIGNAL - } - local funcs = {} - - funcs.Update = function(self) - local options = self.Options - - if #options > 0 then - if not self.Selected then - if not self.CanBeEmpty then - self.Selected = options[1] - self.GuiElems.Label.Text = options[1] - else - self.GuiElems.Label.Text = "- Select -" - end - else - self.GuiElems.Label.Text = self.Selected - end - else - self.GuiElems.Label.Text = "- Select -" - end - end - - funcs.ShowOptions = function(self) - local context = self.Context - - context.Width = self.Gui.AbsoluteSize.X - context.ReverseYOffset = self.Gui.AbsoluteSize.Y - context:Show(self.Gui.AbsolutePosition.X, self.Gui.AbsolutePosition.Y + context.ReverseYOffset) - end - - funcs.SetOptions = function(self,opts) - self.Options = opts - - local context = self.Context - local options = self.Options - context:Clear() - - local onClick = function(option) self.Selected = option self.OnSelect:Fire(option) self:Update() end - - if self.CanBeEmpty then - context:Add({Name = "- Select -", OnClick = function() self.Selected = nil self.OnSelect:Fire(nil) self:Update() end}) - end - - for i = 1,#options do - context:Add({Name = options[i], OnClick = onClick}) - end - - self:Update() - end - - funcs.SetSelected = function(self,opt) - self.Selected = type(opt) == "number" and self.Options[opt] or opt - self:Update() - end - - local mt = getGuiMT(props,funcs) - - local function new() - local f = Instance.new("TextButton") - f.AutoButtonColor = false - f.Text = "" - f.Size = UDim2.new(0,100,0,20) - f.BackgroundColor3 = Settings.Theme.TextBox - f.BorderColor3 = Settings.Theme.Outline3 - - local label = Lib.Label.new() - label.Position = UDim2.new(0,2,0,0) - label.Size = UDim2.new(1,-22,1,0) - label.TextTruncate = Enum.TextTruncate.AtEnd - label.Parent = f - local arrow = create({ - {1,"Frame",{BackgroundTransparency=1,Name="EnumArrow",Position=UDim2.new(1,-16,0,2),Size=UDim2.new(0,16,0,16),}}, - {2,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={1},Position=UDim2.new(0,8,0,9),Size=UDim2.new(0,1,0,1),}}, - {3,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={1},Position=UDim2.new(0,7,0,8),Size=UDim2.new(0,3,0,1),}}, - {4,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={1},Position=UDim2.new(0,6,0,7),Size=UDim2.new(0,5,0,1),}}, - }) - arrow.Parent = f - - local obj = initObj(props,mt) - obj.Gui = f - obj.Anim = Lib.ButtonAnim(f,{Mode = 2, StartColor = Settings.Theme.TextBox, LerpTo = Settings.Theme.Button, LerpDelta = 0.15}) - obj.Context = Lib.ContextMenu.new() - obj.Context.Iconless = true - obj.Context.MaxHeight = 200 - obj.Selected = nil - obj.GuiElems = {Label = label} - f.MouseButton1Down:Connect(function() obj:ShowOptions() end) - obj:Update() - return obj - end - - return {new = new} - end)() - - Lib.ClickSystem = (function() - local props = { - LastItem = PH, - OnDown = SIGNAL, - OnRelease = SIGNAL, - AllowedButtons = {1}, - Combo = 0, - MaxCombo = 2, - ComboTime = 0.5, - Items = {}, - ItemCons = {}, - ClickId = -1, - LastButton = "" - } - local funcs = {} - local tostring = tostring - - local disconnect = function(con) - local pos = table.find(con.Signal.Connections,con) - if pos then table.remove(con.Signal.Connections,pos) end - end - - funcs.Trigger = function(self,item,button) - if table.find(self.AllowedButtons,button) then - if self.LastButton ~= button or self.LastItem ~= item or self.Combo == self.MaxCombo or tick() - self.ClickId > self.ComboTime then - self.Combo = 0 - self.LastButton = button - self.LastItem = item - end - self.Combo = self.Combo + 1 - self.ClickId = tick() - - local release - release = service.UserInputService.InputEnded:Connect(function(input) - if input.UserInputType == Enum.UserInputType["MouseButton"..button] then - release:Disconnect() - if Lib.CheckMouseInGui(item) and self.LastButton == button and self.LastItem == item then - self["OnRelease"]:Fire(item,self.Combo,button) - end - end - end) - - self["OnDown"]:Fire(item,self.Combo,button) - end - end - - funcs.Add = function(self,item) - if table.find(self.Items,item) then return end - - local cons = {} - cons[1] = item.MouseButton1Down:Connect(function() self:Trigger(item,1) end) - cons[2] = item.MouseButton2Down:Connect(function() self:Trigger(item,2) end) - - self.ItemCons[item] = cons - self.Items[#self.Items+1] = item - end - - funcs.Remove = function(self,item) - local ind = table.find(self.Items,item) - if not ind then return end - - for i,v in pairs(self.ItemCons[item]) do - v:Disconnect() - end - self.ItemCons[item] = nil - table.remove(self.Items,ind) - end - - local mt = {__index = funcs} - - local function new() - local obj = initObj(props,mt) - - return obj - end - - return {new = new} - end)() - - return Lib -end - -return {InitDeps = initDeps, InitAfterMain = initAfterMain, Main = main}]]> - {73e14bfd-5f0d-45da-b408-293fc8e3a660} - - 0 - false - Lib - -1 - - - - - - - - \ No newline at end of file From ec1d6bcdeec71d3d9c3f7b2631544ddee75a73a8 Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Thu, 27 Nov 2025 23:41:51 -0500 Subject: [PATCH 03/36] Increase ScrollBarThickness for ScrollingFrames Updated ScrollBarThickness from 4/6 to 12 in multiple ScrollingFrame UI components to improve visibility and usability across the Dex client modules. --- .../Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Lib.lua | 2 +- .../Dex_Client/main_NewDex/Modules/SettingsEditor/init.lua | 2 +- .../Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Lib.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Lib.lua index b9b58ba04b..e6f12964c5 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Lib.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Lib.lua @@ -2073,7 +2073,7 @@ local function main() {3,"UICorner",{CornerRadius=UDim.new(0,4),Parent={2},}}, {4,"Frame",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),Name="Container",Parent={2},Position=UDim2.new(0,1,0,1),Size=UDim2.new(1,-2,1,-2),}}, {5,"UICorner",{CornerRadius=UDim.new(0,4),Parent={4},}}, - {6,"ScrollingFrame",{Active=true,BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),BackgroundTransparency=1,BorderSizePixel=0,CanvasSize=UDim2.new(0,0,0,0),Name="List",Parent={4},Position=UDim2.new(0,2,0,2),ScrollBarImageColor3=Color3.new(0,0,0),ScrollBarThickness=4,Size=UDim2.new(1,-4,1,-4),VerticalScrollBarInset=1,}}, + {6,"ScrollingFrame",{Active=true,BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),BackgroundTransparency=1,BorderSizePixel=0,CanvasSize=UDim2.new(0,0,0,0),Name="List",Parent={4},Position=UDim2.new(0,2,0,2),ScrollBarImageColor3=Color3.new(0,0,0),ScrollBarThickness=12,Size=UDim2.new(1,-4,1,-4),VerticalScrollBarInset=1,}}, {7,"UIListLayout",{Parent={6},SortOrder=2,}}, {8,"Frame",{BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),BorderSizePixel=0,Name="SearchFrame",Parent={4},Size=UDim2.new(1,0,0,24),Visible=false,}}, {9,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.1176470592618,0.1176470592618,0.1176470592618),BorderSizePixel=0,Name="SearchContainer",Parent={8},Position=UDim2.new(0,3,0,3),Size=UDim2.new(1,-6,0,18),}}, diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/SettingsEditor/init.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/SettingsEditor/init.lua index 7a9260347d..2cd1e2a5ba 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/SettingsEditor/init.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/SettingsEditor/init.lua @@ -582,7 +582,7 @@ local function main() ScrollingFrame.AutomaticCanvasSize = Enum.AutomaticSize.Y ScrollingFrame.ScrollBarImageColor3 = Color3.fromRGB(0, 0, 0) - ScrollingFrame.ScrollBarThickness = 6 + ScrollingFrame.ScrollBarThickness = 12 local UILIstLayout = Instance.new("UIListLayout") UILIstLayout.SortOrder = Enum.SortOrder.LayoutOrder diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua index 29fb403589..7a136bb6f3 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua @@ -866,7 +866,7 @@ Main = (function() {11,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://6578871732",ImageTransparency=0.20000000298023,Name="Icon",Parent={10},Position=UDim2.new(0,4,0,4),Size=UDim2.new(0,16,0,16),}}, {12,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Information",Parent={6},Position=UDim2.new(1,-24,0,0),Size=UDim2.new(0,24,1,0),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,}}, {13,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://6578933307",ImageTransparency=0.20000000298023,Name="Icon",Parent={12},Position=UDim2.new(0,4,0,4),Size=UDim2.new(0,16,0,16),}}, - {14,"ScrollingFrame",{Active=true,AnchorPoint=Vector2.new(0.5,0),BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderColor3=Color3.new(0.1294117718935,0.1294117718935,0.1294117718935),BorderSizePixel=0,Name="AppsFrame",Parent={4},Position=UDim2.new(0.5,0,0,0),ScrollBarImageColor3=Color3.new(0,0,0),ScrollBarThickness=4,Size=UDim2.new(0,222,1,-25),}}, + {14,"ScrollingFrame",{Active=true,AnchorPoint=Vector2.new(0.5,0),BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderColor3=Color3.new(0.1294117718935,0.1294117718935,0.1294117718935),BorderSizePixel=0,Name="AppsFrame",Parent={4},Position=UDim2.new(0.5,0,0,0),ScrollBarImageColor3=Color3.new(0,0,0),ScrollBarThickness=12,Size=UDim2.new(0,222,1,-25),}}, {15,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Name="Container",Parent={14},Position=UDim2.new(0,7,0,8),Size=UDim2.new(1,-14,0,2),}}, {16,"UIGridLayout",{CellSize=UDim2.new(0,66,0,74),Parent={15},SortOrder=2,}}, {17,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Name="App",Parent={1},Size=UDim2.new(0,100,0,100),Visible=false,}}, From 1b23b30e825f98265fce4814b8c98052219bb95c Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Fri, 28 Nov 2025 00:00:33 -0500 Subject: [PATCH 04/36] Refactor Explorer and Misc_Features modules for readability Improves code formatting, spacing, and readability in Misc_Features.luau and Explorer.lua. Refactors function definitions, table initializations, and UI element creation for better maintainability and consistency. No functional changes were made. --- MainModule/Server/Plugins/Misc_Features.luau | 89 +- .../main_NewDex/Modules/Explorer.lua | 2232 +++++++++++------ 2 files changed, 1505 insertions(+), 816 deletions(-) diff --git a/MainModule/Server/Plugins/Misc_Features.luau b/MainModule/Server/Plugins/Misc_Features.luau index 956b83c450..8866d85349 100644 --- a/MainModule/Server/Plugins/Misc_Features.luau +++ b/MainModule/Server/Plugins/Misc_Features.luau @@ -1,16 +1,27 @@ --// NOTE: THIS IS NOT A *CONFIG/USER* PLUGIN! ANYTHING IN THE MAINMODULE PLUGIN FOLDERS IS ALREADY PART OF/LOADED BY THE SCRIPT! DO NOT ADD THEM TO YOUR CONFIG>PLUGINS FOLDER! return function(Vargs, GetEnv) - local server = Vargs.Server; - local service = Vargs.Service; + local server = Vargs.Server + local service = Vargs.Service local Settings = server.Settings local Functions, Commands, Admin, Anti, Core, HTTP, Logs, Remote, Process, Variables, Deps = - server.Functions, server.Commands, server.Admin, server.Anti, server.Core, server.HTTP, server.Logs, server.Remote, server.Process, server.Variables, server.Deps + server.Functions, + server.Commands, + server.Admin, + server.Anti, + server.Core, + server.HTTP, + server.Logs, + server.Remote, + server.Process, + server.Variables, + server.Deps -- // Remove legacy trello board - local epix_board_index = type(Settings.Trello_Secondary) == "table" and table.find(Settings.Trello_Secondary, "9HH6BEX2") - + local epix_board_index = type(Settings.Trello_Secondary) == "table" + and table.find(Settings.Trello_Secondary, "9HH6BEX2") + if epix_board_index then table.remove(Settings.Trello_Secondary, epix_board_index) Logs:AddLog("Script", "Removed legacy trello board") @@ -42,24 +53,40 @@ return function(Vargs, GetEnv) return table.unpack(args, 1 + (shift and shift - 1 or 0), 10 + (shift and shift - 1 or 0)) end service.CloneTable = function(tbl) - return (getmetatable(tbl) and not pcall(setmetatable(tbl, getmetatable(tbl)))) and setmetatable({}, {__index = function(_, k) return tbl[k] end}) or table.clone(tbl) + return (getmetatable(tbl) and not pcall(setmetatable(tbl, getmetatable(tbl)))) + and setmetatable({}, { + __index = function(_, k) + return tbl[k] + end, + }) + or table.clone(tbl) end service.GoodSignal = service.Signal service.Yield = function() local event = service.Signal.new() return { - Release = function(...) event:Fire(...) end; - Wait = function(...) return event:Wait(...) end; - Destroy = function() event:Destroy() end; - Event = event; + Release = function(...) + event:Fire(...) + end, + Wait = function(...) + return event:Wait(...) + end, + Destroy = function() + event:Destroy() + end, + Event = event, } end Remote.UnEncrypted = setmetatable({}, { -- TODO: Start adding a server.Messages message and remove later __newindex = function(_, ind, val) - warn("Unencrypted remote commands are deprecated; moving", ind, "to Remote.Commands. Replace `Remote.Unencrypted` with `Remote.Commands`!") + warn( + "Unencrypted remote commands are deprecated; moving", + ind, + "to Remote.Commands. Replace `Remote.Unencrypted` with `Remote.Commands`!" + ) Remote.Commands[ind] = val Logs:AddLog("Script", `Attempted to add {ind} to legacy Remote.Unencrypted. Moving to Remote.Commands`) - end + end, }) if service.Wrapped(server.Folder) then server.Folder:SetSpecial("Shared", server.Shared) @@ -68,7 +95,7 @@ return function(Vargs, GetEnv) local random = math.random local format = string.format - local Len = (type(pLen) == "number" and pLen) or random(5,10) --// reru + local Len = (type(pLen) == "number" and pLen) or random(5, 10) --// reru local Res = {} for Idx = 1, Len do Res[Idx] = format("%02x", random(255)) @@ -79,7 +106,7 @@ return function(Vargs, GetEnv) HTTP.Trello.API.GenerateRequestID = Functions.GetRandom end --// Old settings/plugins backwards compatibility. Do not remove this because many games use old loader ranks! - for _, rank in {"Owners", "HeadAdmins", "Admins", "Moderators", "Creators"} do + for _, rank in { "Owners", "HeadAdmins", "Admins", "Moderators", "Creators" } do if Settings[rank] and not Settings.CustomRanks[rank] then Settings.Ranks[if rank == "Owners" then "HeadAdmins" else rank].Users = Settings[rank] end @@ -89,26 +116,28 @@ return function(Vargs, GetEnv) for name, users in Settings.CustomRanks do if not Ranks[name] then Ranks[name] = { - Level = 1; - Users = users; + Level = 1, + Users = users, } end end end - for k, v in {-- Legacy aliases - [`{Settings.Prefix}giveppoints `] = `{Settings.Prefix}clientscript game:GetService("StarterGui"):SetCore("SendNotification", \{Title = "Points Awarded", Text = "You received points!", Icon = "rbxassetid://155221172"\})`, - [`{Settings.Prefix}giveplayerpoints `] = `{Settings.Prefix}clientscript game:GetService("StarterGui"):SetCore("SendNotification", \{Title = "Points Awarded", Text = "You received points!", Icon = "rbxassetid://155221172"\})`, - [`{Settings.Prefix}sendplayerpoints `] = `{Settings.Prefix}clientscript game:GetService("StarterGui"):SetCore("SendNotification", \{Title = "Points Awarded", Text = "You received points!", Icon = "rbxassetid://155221172"\})`, - [`{Settings.Prefix}flyclip `] = `{Settings.Prefix}fly true`; - [`{Settings.Prefix}showlogs true `] = `{Settings.Prefix}showlogs true`; -- TODO: Remove legacy :showlogs aliases, only temporarily here. - [`{Settings.Prefix}showlogs false `] = `{Settings.Prefix}showlogs false`; - [`{Settings.Prefix}showlogs yes `] = `{Settings.Prefix}showlogs true`; - [`{Settings.Prefix}showlogs no `] = `{Settings.Prefix}showlogs false`; - [`{Settings.Prefix}showcommandlogs true `] = `{Settings.Prefix}showlogs true`; - [`{Settings.Prefix}showcommandlogs false `] = `{Settings.Prefix}showlogs false`; - [`{Settings.Prefix}showcommandlogs yes `] = `{Settings.Prefix}showlogs true`; - [`{Settings.Prefix}showcommandlogs no `] = `{Settings.Prefix}showlogs false`; - } do + for k, v in + { -- Legacy aliases + [`{Settings.Prefix}giveppoints `] = `{Settings.Prefix}clientscript game:GetService("StarterGui"):SetCore("SendNotification", \{Title = "Points Awarded", Text = "You received points!", Icon = "rbxassetid://155221172"})`, + [`{Settings.Prefix}giveplayerpoints `] = `{Settings.Prefix}clientscript game:GetService("StarterGui"):SetCore("SendNotification", \{Title = "Points Awarded", Text = "You received points!", Icon = "rbxassetid://155221172"})`, + [`{Settings.Prefix}sendplayerpoints `] = `{Settings.Prefix}clientscript game:GetService("StarterGui"):SetCore("SendNotification", \{Title = "Points Awarded", Text = "You received points!", Icon = "rbxassetid://155221172"})`, + [`{Settings.Prefix}flyclip `] = `{Settings.Prefix}fly true`, + [`{Settings.Prefix}showlogs true `] = `{Settings.Prefix}showlogs true`, -- TODO: Remove legacy :showlogs aliases, only temporarily here. + [`{Settings.Prefix}showlogs false `] = `{Settings.Prefix}showlogs false`, + [`{Settings.Prefix}showlogs yes `] = `{Settings.Prefix}showlogs true`, + [`{Settings.Prefix}showlogs no `] = `{Settings.Prefix}showlogs false`, + [`{Settings.Prefix}showcommandlogs true `] = `{Settings.Prefix}showlogs true`, + [`{Settings.Prefix}showcommandlogs false `] = `{Settings.Prefix}showlogs false`, + [`{Settings.Prefix}showcommandlogs yes `] = `{Settings.Prefix}showlogs true`, + [`{Settings.Prefix}showcommandlogs no `] = `{Settings.Prefix}showlogs false`, + } + do if not Variables.Aliases[k] then Variables.Aliases[k] = v end diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Explorer.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Explorer.lua index 1ce5c4432c..0a61c5adf5 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Explorer.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Explorer.lua @@ -10,9 +10,9 @@ local TweenService = game:GetService("TweenService") local Dex_RemoteFunction = ReplicatedStorage:WaitForChild("NewDex_Event") :: RemoteFunction -- Common Locals -local Main,Lib,Apps,Settings -- Main Containers +local Main, Lib, Apps, Settings -- Main Containers local Explorer, Properties, ScriptViewer, Notebook -- Major Apps -local API,RMD,env,service,plr,create,createSimple -- Main Locals +local API, RMD, env, service, plr, create, createSimple -- Main Locals local function tweenInEntry(entry, fromPos, toPos) entry.Position = fromPos @@ -22,13 +22,11 @@ local function tweenInEntry(entry, fromPos, toPos) local lengthScale = 1 -- for fun while I test, e.g 10 for 10 times slower - TweenService:Create(entry, TweenInfo.new(0.2*lengthScale, Enum.EasingStyle.Sine), { Position = toPos }):Play() - TweenService:Create(entry.Indent.EntryName, TweenInfo.new(0.15*lengthScale), { TextTransparency = 0 }):Play() - TweenService:Create(entry.Indent.Icon, TweenInfo.new(0.15*lengthScale), { ImageTransparency = 0 }):Play() + TweenService:Create(entry, TweenInfo.new(0.2 * lengthScale, Enum.EasingStyle.Sine), { Position = toPos }):Play() + TweenService:Create(entry.Indent.EntryName, TweenInfo.new(0.15 * lengthScale), { TextTransparency = 0 }):Play() + TweenService:Create(entry.Indent.Icon, TweenInfo.new(0.15 * lengthScale), { ImageTransparency = 0 }):Play() end - - local function initDeps(data) Main = data.Main Lib = data.Lib @@ -53,22 +51,22 @@ end local function main() local Explorer = {} - local nodes,tree,listEntries,explorerOrders,searchResults,specResults = {},{},{},{},{},{} + local nodes, tree, listEntries, explorerOrders, searchResults, specResults = {}, {}, {}, {}, {}, {} local expanded - local entryTemplate,treeFrame:Frame,toolBar,descendantAddedCon,descendantRemovingCon,itemChangedCon + local entryTemplate, treeFrame: Frame, toolBar, descendantAddedCon, descendantRemovingCon, itemChangedCon local ffa = game.FindFirstAncestorWhichIsA local getDescendants = game.GetDescendants local getTextSize = service.TextService.GetTextSize - local updateDebounce,refreshDebounce = false,false - local nilNode = {Obj = Instance.new("Folder")} :: any + local updateDebounce, refreshDebounce = false, false + local nilNode = { Obj = Instance.new("Folder") } :: any local idCounter = 0 - local scrollV,scrollH,selection,clipboard - local renameBox,renamingNode,searchFunc - local sortingEnabled,autoUpdateSearch - local table,math = table,math - local nilMap,nilCons = {},{} + local scrollV, scrollH, selection, clipboard + local renameBox, renamingNode, searchFunc + local sortingEnabled, autoUpdateSearch + local table, math = table, math + local nilMap, nilCons = {}, {} local connectSignal = game.DescendantAdded.Connect - local addObject,removeObject,moveObject = nil,nil,nil + local addObject, removeObject, moveObject = nil, nil, nil -- silencer, absolute hell!!! Explorer.NodeSorter = nil @@ -129,19 +127,22 @@ local function main() Explorer.ClickToSelect_Connection = nil addObject = function(root) - if nodes[root] then return end + if nodes[root] then + return + end local isNil = false - local rootParObj = ffa(root,"Instance") + local rootParObj = ffa(root, "Instance") local par = nodes[rootParObj] -- Nil Handling if not par then if nilMap[root] then - nilCons[root] = nilCons[root] or { - connectSignal(root.ChildAdded,addObject), - connectSignal(root.AncestryChanged,moveObject), - } + nilCons[root] = nilCons[root] + or { + connectSignal(root.ChildAdded, addObject), + connectSignal(root.AncestryChanged, moveObject), + } par = nilNode isNil = true else @@ -149,19 +150,20 @@ local function main() end elseif nilMap[rootParObj] or par == nilNode then nilMap[root] = true - nilCons[root] = nilCons[root] or { - connectSignal(root.ChildAdded,addObject), - connectSignal(root.AncestryChanged,moveObject), - } + nilCons[root] = nilCons[root] + or { + connectSignal(root.ChildAdded, addObject), + connectSignal(root.AncestryChanged, moveObject), + } isNil = true end - local newNode = {Obj = root, Parent = par} + local newNode = { Obj = root, Parent = par } nodes[root] = newNode -- Automatic sorting if expanded if sortingEnabled and expanded[par] and par.Sorted then - local left,right = 1,#par + local left, right = 1, #par local floor = math.floor local sorter = Explorer.NodeSorter local pos = (right == 0 and 1) @@ -169,52 +171,57 @@ local function main() if not pos then while true do if left >= right then - if sorter(newNode,par[left]) then + if sorter(newNode, par[left]) then pos = left else - pos = left+1 + pos = left + 1 end break end - local mid = floor((left+right)/2) - if sorter(newNode,par[mid]) then - right = mid-1 + local mid = floor((left + right) / 2) + if sorter(newNode, par[mid]) then + right = mid - 1 else - left = mid+1 + left = mid + 1 end end end - table.insert(par,pos,newNode) + table.insert(par, pos, newNode) else - par[#par+1] = newNode + par[#par + 1] = newNode par.Sorted = nil end local insts = getDescendants(root) - for i = 1,#insts do + for i = 1, #insts do local obj = insts[i] - if nodes[obj] then continue end -- Deferred + if nodes[obj] then + continue + end -- Deferred - local par = nodes[ffa(obj,"Instance")] - if not par then continue end - local newNode = {Obj = obj, Parent = par} + local par = nodes[ffa(obj, "Instance")] + if not par then + continue + end + local newNode = { Obj = obj, Parent = par } nodes[obj] = newNode - par[#par+1] = newNode + par[#par + 1] = newNode -- Nil Handling if isNil then nilMap[obj] = true - nilCons[obj] = nilCons[obj] or { - connectSignal(obj.ChildAdded,addObject), - connectSignal(obj.AncestryChanged,moveObject), - } + nilCons[obj] = nilCons[obj] + or { + connectSignal(obj.ChildAdded, addObject), + connectSignal(obj.AncestryChanged, moveObject), + } end end if searchFunc and autoUpdateSearch then - searchFunc({newNode}) + searchFunc({ newNode }) end if not updateDebounce and Explorer.IsNodeVisible(par) then @@ -228,7 +235,9 @@ local function main() removeObject = function(root) local node = nodes[root] - if not node then return end + if not node then + return + end -- Nil Handling if nilMap[node.Obj] then @@ -242,11 +251,13 @@ local function main() end local function recur(root) - for i = 1,#root do + for i = 1, #root do local node = root[i] if not node.Del then nodes[node.Obj] = nil - if #node > 0 then recur(node) end + if #node > 0 then + recur(node) + end end end end @@ -265,11 +276,15 @@ local function main() moveObject = function(obj) local node = nodes[obj] - if not node then return end + if not node then + return + end local oldPar = node.Parent - local newPar = nodes[ffa(obj,"Instance")] - if oldPar == newPar then return end + local newPar = nodes[ffa(obj, "Instance")] + if oldPar == newPar then + return + end -- Nil Handling if not newPar then @@ -280,22 +295,25 @@ local function main() end elseif nilMap[newPar.Obj] or newPar == nilNode then nilMap[obj] = true - nilCons[obj] = nilCons[obj] or { - connectSignal(obj.ChildAdded,addObject), - connectSignal(obj.AncestryChanged,moveObject), - } + nilCons[obj] = nilCons[obj] + or { + connectSignal(obj.ChildAdded, addObject), + connectSignal(obj.AncestryChanged, moveObject), + } end if oldPar then - local parPos = table.find(oldPar,node) - if parPos then table.remove(oldPar,parPos) end + local parPos = table.find(oldPar, node) + if parPos then + table.remove(oldPar, parPos) + end end node.Id = nil node.Parent = newPar if sortingEnabled and expanded[newPar] and newPar.Sorted then - local left,right = 1,#newPar + local left, right = 1, #newPar local floor = math.floor local sorter = Explorer.NodeSorter local pos = (right == 0 and 1) @@ -303,26 +321,26 @@ local function main() if not pos then while true do if left >= right then - if sorter(node,newPar[left]) then + if sorter(node, newPar[left]) then pos = left else - pos = left+1 + pos = left + 1 end break end - local mid = floor((left+right)/2) - if sorter(node,newPar[mid]) then - right = mid-1 + local mid = floor((left + right) / 2) + if sorter(node, newPar[mid]) then + right = mid - 1 else - left = mid+1 + left = mid + 1 end end end - table.insert(newPar,pos,node) + table.insert(newPar, pos, node) else - newPar[#newPar+1] = node + newPar[#newPar + 1] = node newPar.Sorted = nil end @@ -351,14 +369,40 @@ local function main() Explorer.GuiElems = {} Explorer.InitRenameBox = function() - renameBox = create({{1,"TextBox",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BorderColor3=Color3.new(0.062745101749897,0.51764708757401,1),BorderMode=2,ClearTextOnFocus=false,Font=3,Name="RenameBox",PlaceholderColor3=Color3.new(0.69803923368454,0.69803923368454,0.69803923368454),Position=UDim2.new(0,26,0,2),Size=UDim2.new(0,200,0,16),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,TextXAlignment=0,Visible=false,ZIndex=2}}}) + renameBox = create({ + { + 1, + "TextBox", + { + BackgroundColor3 = Color3.new(0.17647059261799, 0.17647059261799, 0.17647059261799), + BorderColor3 = Color3.new(0.062745101749897, 0.51764708757401, 1), + BorderMode = 2, + ClearTextOnFocus = false, + Font = 3, + Name = "RenameBox", + PlaceholderColor3 = Color3.new(0.69803923368454, 0.69803923368454, 0.69803923368454), + Position = UDim2.fromOffset(26, 2), + Size = UDim2.fromOffset(200, 16), + Text = "", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + TextXAlignment = 0, + Visible = false, + ZIndex = 2, + }, + }, + }) renameBox.Parent = Explorer.Window.GuiElems.Content.List renameBox.FocusLost:Connect(function() - if not renamingNode then return end + if not renamingNode then + return + end - pcall(function() renamingNode.Obj.Name = renameBox.Text end) + pcall(function() + renamingNode.Obj.Name = renameBox.Text + end) -- ADONIS Dex_RemoteFunction:InvokeServer("SetProperty", renamingNode.Obj, "Name", renameBox.Text) @@ -399,22 +443,22 @@ local function main() scrollH.Gui.Visible = totalWidth > maxX local oldSize = treeFrame.Size - treeFrame.Size = UDim2.new(1,(scrollV.Gui.Visible and -16 or 0),1,(scrollH.Gui.Visible and -39 or -23)) + treeFrame.Size = UDim2.new(1, (scrollV.Gui.Visible and -16 or 0), 1, (scrollH.Gui.Visible and -39 or -23)) if oldSize ~= treeFrame.Size then Explorer.UpdateView() else scrollV:Update() scrollH:Update() - renameBox.Size = UDim2.new(0,maxX-100,0,16) + renameBox.Size = UDim2.fromOffset(maxX - 100, 16) if scrollV.Gui.Visible and scrollH.Gui.Visible then - scrollV.Gui.Size = UDim2.new(0,16,1,-39) - scrollH.Gui.Size = UDim2.new(1,-16,0,16) + scrollV.Gui.Size = UDim2.new(0, 16, 1, -39) + scrollH.Gui.Size = UDim2.new(1, -16, 0, 16) Explorer.Window.GuiElems.Content.ScrollCorner.Visible = true else - scrollV.Gui.Size = UDim2.new(0,16,1,-23) - scrollH.Gui.Size = UDim2.new(1,0,0,16) + scrollV.Gui.Size = UDim2.new(0, 16, 1, -23) + scrollH.Gui.Size = UDim2.new(1, 0, 0, 16) Explorer.Window.GuiElems.Content.ScrollCorner.Visible = false end @@ -422,30 +466,54 @@ local function main() end end - Explorer.NodeSorter = function(a,b) - if a.Del or b.Del then return false end -- Ghost node + Explorer.NodeSorter = function(a, b) + if a.Del or b.Del then + return false + end -- Ghost node local aClass = a.Class local bClass = b.Class - if not aClass then aClass = a.Obj.ClassName a.Class = aClass end - if not bClass then bClass = b.Obj.ClassName b.Class = bClass end + if not aClass then + aClass = a.Obj.ClassName + a.Class = aClass + end + if not bClass then + bClass = b.Obj.ClassName + b.Class = bClass + end local aOrder = explorerOrders[aClass] local bOrder = explorerOrders[bClass] - if not aOrder then aOrder = RMD.Classes[aClass] and tonumber(RMD.Classes[aClass].ExplorerOrder) or 9999 explorerOrders[aClass] = aOrder end - if not bOrder then bOrder = RMD.Classes [bClass] and tonumber(RMD.Classes[bClass].ExplorerOrder) or 9999 explorerOrders[bClass] = bOrder end + if not aOrder then + aOrder = RMD.Classes[aClass] and tonumber(RMD.Classes[aClass].ExplorerOrder) or 9999 + explorerOrders[aClass] = aOrder + end + if not bOrder then + bOrder = RMD.Classes[bClass] and tonumber(RMD.Classes[bClass].ExplorerOrder) or 9999 + explorerOrders[bClass] = bOrder + end if aOrder ~= bOrder then return aOrder < bOrder else - local aName,bName = tostring(a.Obj),tostring(b.Obj) + local aName, bName = tostring(a.Obj), tostring(b.Obj) if aName ~= bName then return aName < bName elseif aClass ~= bClass then return aClass < bClass else - local aId = a.Id if not aId then aId = idCounter idCounter = (idCounter+0.001)%999999999 a.Id = aId end - local bId = b.Id if not bId then bId = idCounter idCounter = (idCounter+0.001)%999999999 b.Id = bId end + local aId = a.Id + if not aId then + aId = idCounter + idCounter = (idCounter + 0.001) % 999999999 + a.Id = aId + end + local bId = b.Id + if not bId then + bId = idCounter + idCounter = (idCounter + 0.001) % 999999999 + b.Id = bId + end return aId < bId end end @@ -453,27 +521,31 @@ local function main() Explorer.Update = function() table.clear(tree) - local maxNameWidth,maxDepth,count = 0,1,1 + local maxNameWidth, maxDepth, count = 0, 1, 1 local nameCache = {} local font = Enum.Font.SourceSans - local size = Vector2.new(math.huge,20) + local size = Vector2.new(math.huge, 20) local useNameWidth = Settings.Explorer.UseNameWidth local tSort = table.sort local sortFunc = Explorer.NodeSorter local isSearching = (expanded == Explorer.SearchExpanded) local textServ = service.TextService - local function recur(root,depth) - if depth > maxDepth then maxDepth = depth end + local function recur(root, depth) + if depth > maxDepth then + maxDepth = depth + end depth = depth + 1 if sortingEnabled and not root.Sorted then - tSort(root,sortFunc) + tSort(root, sortFunc) root.Sorted = true end - for i = 1,#root do + for i = 1, #root do local n = root[i] - if (isSearching and not searchResults[n]) or n.Del then continue end + if (isSearching and not searchResults[n]) or n.Del then + continue + end if useNameWidth then local nameWidth = n.NameWidth @@ -481,7 +553,7 @@ local function main() local objName = tostring(n.Obj) nameWidth = nameCache[objName] if not nameWidth then - nameWidth = getTextSize(textServ,objName,14,font,size).X + nameWidth = getTextSize(textServ, objName, 14, font, size).X nameCache[objName] = nameWidth end n.NameWidth = nameWidth @@ -494,12 +566,12 @@ local function main() tree[count] = n count = count + 1 if expanded[n] and #n > 0 then - recur(n,depth) + recur(n, depth) end end end - recur(nodes[game],1) + recur(nodes[game], 1) -- Nil Instances if env.getnilinstances then @@ -507,25 +579,28 @@ local function main() tree[count] = nilNode count = count + 1 if expanded[nilNode] then - recur(nilNode,2) + recur(nilNode, 2) end end end Explorer.MaxNameWidth = maxNameWidth Explorer.MaxDepth = maxDepth - Explorer.ViewWidth = useNameWidth and Explorer.EntryIndent*maxDepth + maxNameWidth + 26 or Explorer.EntryIndent*maxDepth + 226 + Explorer.ViewWidth = useNameWidth and Explorer.EntryIndent * maxDepth + maxNameWidth + 26 + or Explorer.EntryIndent * maxDepth + 226 Explorer.UpdateView() end - Explorer.StartDrag = function(offX,offY) - if Explorer.Dragging then return end + Explorer.StartDrag = function(offX, offY) + if Explorer.Dragging then + return + end Explorer.Dragging = true local dragTree = treeFrame:Clone() dragTree:ClearAllChildren() - for i,v in pairs(listEntries) do + for i, v in pairs(listEntries) do local node = tree[i + Explorer.Index] if node and selection.Map[node] then local clone = v:Clone() @@ -542,26 +617,81 @@ local function main() Lib.ShowGui(newGui) local dragOutline = create({ - {1,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Name="DragSelect",Size=UDim2.new(1,0,1,0),}}, - {2,"Frame",{BackgroundColor3=Color3.new(1,1,1),BorderSizePixel=0,Name="Line",Parent={1},Size=UDim2.new(1,0,0,1),ZIndex=2,}}, - {3,"Frame",{BackgroundColor3=Color3.new(1,1,1),BorderSizePixel=0,Name="Line",Parent={1},Position=UDim2.new(0,0,1,-1),Size=UDim2.new(1,0,0,1),ZIndex=2,}}, - {4,"Frame",{BackgroundColor3=Color3.new(1,1,1),BorderSizePixel=0,Name="Line",Parent={1},Size=UDim2.new(0,1,1,0),ZIndex=2,}}, - {5,"Frame",{BackgroundColor3=Color3.new(1,1,1),BorderSizePixel=0,Name="Line",Parent={1},Position=UDim2.new(1,-1,0,0),Size=UDim2.new(0,1,1,0),ZIndex=2,}}, + { + 1, + "Frame", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Name = "DragSelect", + Size = UDim2.fromScale(1, 1), + }, + }, + { + 2, + "Frame", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BorderSizePixel = 0, + Name = "Line", + Parent = { 1 }, + Size = UDim2.fromScale(1, 0), + ZIndex = 2, + }, + }, + { + 3, + "Frame", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BorderSizePixel = 0, + Name = "Line", + Parent = { 1 }, + Position = UDim2.new(0, 0, 1, -1), + Size = UDim2.new(1, 0, 0, 1), + ZIndex = 2, + }, + }, + { + 4, + "Frame", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BorderSizePixel = 0, + Name = "Line", + Parent = { 1 }, + Size = UDim2.new(0, 1, 1, 0), + ZIndex = 2, + }, + }, + { + 5, + "Frame", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BorderSizePixel = 0, + Name = "Line", + Parent = { 1 }, + Position = UDim2.new(1, -1, 0, 0), + Size = UDim2.new(0, 1, 1, 0), + ZIndex = 2, + }, + }, }) dragOutline.Parent = treeFrame - local mouse = Main.Mouse or service.Players.LocalPlayer:GetMouse() local function move() local posX = mouse.X - offX local posY = mouse.Y - offY - dragTree.Position = UDim2.new(0,posX,0,posY) + dragTree.Position = UDim2.fromOffset(posX, posY) - for i = 1,#listEntries do + for i = 1, #listEntries do local entry = listEntries[i] if Lib.CheckMouseInGui(entry) then - dragOutline.Position = UDim2.new(0,entry.Indent.Position.X.Offset-scrollH.Index,0,entry.Position.Y.Offset) - dragOutline.Size = UDim2.new(0,entry.Size.X.Offset-entry.Indent.Position.X.Offset,0,20) + dragOutline.Position = + UDim2.fromOffset(entry.Indent.Position.X.Offset - scrollH.Index, entry.Position.Y.Offset) + dragOutline.Size = UDim2.fromOffset(entry.Size.X.Offset - entry.Indent.Position.X.Offset, 20) dragOutline.Visible = true return end @@ -571,7 +701,7 @@ local function main() move() local input = service.UserInputService - local mouseEvent,releaseEvent + local mouseEvent, releaseEvent mouseEvent = input.InputChanged:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then @@ -587,14 +717,16 @@ local function main() dragOutline:Destroy() Explorer.Dragging = false - for i = 1,#listEntries do + for i = 1, #listEntries do if Lib.CheckMouseInGui(listEntries[i]) then local node = tree[i + Explorer.Index] if node then - if selection.Map[node] then return end + if selection.Map[node] then + return + end local newPar = node.Obj local sList = selection.List - for i = 1,#sList do + for i = 1, #sList do local n = sList[i] pcall(function() n.Obj.Parent = newPar @@ -614,13 +746,15 @@ local function main() Explorer.NewListEntry = function(index) local newEntry = entryTemplate:Clone() - newEntry.Position = UDim2.new(0,0,0,20*(index-1)) + newEntry.Position = UDim2.fromOffset(0, 20 * (index - 1)) local isRenaming = false newEntry.InputBegan:Connect(function(input) local node = tree[index + Explorer.Index] - if not node or selection.Map[node] or input.UserInputType ~= Enum.UserInputType.MouseMovement then return end + if not node or selection.Map[node] or input.UserInputType ~= Enum.UserInputType.MouseMovement then + return + end newEntry.Indent.BackgroundColor3 = Settings.Theme.Button newEntry.Indent.BorderSizePixel = 0 @@ -629,22 +763,20 @@ local function main() newEntry.InputEnded:Connect(function(input) local node = tree[index + Explorer.Index] - if not node or selection.Map[node] or input.UserInputType ~= Enum.UserInputType.MouseMovement then return end + if not node or selection.Map[node] or input.UserInputType ~= Enum.UserInputType.MouseMovement then + return + end newEntry.Indent.BackgroundTransparency = 1 end) - newEntry.MouseButton1Down:Connect(function() + newEntry.MouseButton1Down:Connect(function() end) - end) - - newEntry.MouseButton1Up:Connect(function() - - end) + newEntry.MouseButton1Up:Connect(function() end) newEntry.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then - local releaseEvent,mouseEvent + local releaseEvent, mouseEvent local mouse = Main.Mouse or plr:GetMouse() local startX = mouse.X @@ -664,40 +796,47 @@ local function main() if input.UserInputType == Enum.UserInputType.MouseMovement then local deltaX = mouse.X - startX local deltaY = mouse.Y - startY - local dist = math.sqrt(deltaX^2 + deltaY^2) + local dist = math.sqrt(deltaX ^ 2 + deltaY ^ 2) if dist > 5 then releaseEvent:Disconnect() mouseEvent:Disconnect() isRenaming = false - Explorer.StartDrag(listOffsetX,listOffsetY) + Explorer.StartDrag(listOffsetX, listOffsetY) end end end) end end) - newEntry.MouseButton2Down:Connect(function() - - end) + newEntry.MouseButton2Down:Connect(function() end) newEntry.Indent.Expand.InputBegan:Connect(function(input) local node = tree[index + Explorer.Index] - if not node or input.UserInputType ~= Enum.UserInputType.MouseMovement then return end + if not node or input.UserInputType ~= Enum.UserInputType.MouseMovement then + return + end - Explorer.MiscIcons:DisplayByKey(newEntry.Indent.Expand.Icon, expanded[node] and "Collapse_Over" or "Expand_Over") + Explorer.MiscIcons:DisplayByKey( + newEntry.Indent.Expand.Icon, + expanded[node] and "Collapse_Over" or "Expand_Over" + ) end) newEntry.Indent.Expand.InputEnded:Connect(function(input) local node = tree[index + Explorer.Index] - if not node or input.UserInputType ~= Enum.UserInputType.MouseMovement then return end + if not node or input.UserInputType ~= Enum.UserInputType.MouseMovement then + return + end Explorer.MiscIcons:DisplayByKey(newEntry.Indent.Expand.Icon, expanded[node] and "Collapse" or "Expand") end) newEntry.Indent.Expand.MouseButton1Down:Connect(function() local node = tree[index + Explorer.Index] - if not node or #node == 0 then return end + if not node or #node == 0 then + return + end expanded[node] = not expanded[node] Explorer.Update() @@ -711,12 +850,12 @@ local function main() local i = table.find(tree, v) if i then local listIndex = i - Explorer.Index - local entry= listEntries[listIndex] + local entry = listEntries[listIndex] if entry then local X = arrowPos.X - framePos.X local Y = arrowPos.Y - framePos.Y - local from = UDim2.new(0, X, 0, Y) - local to = entry.Position + local from = UDim2.fromOffset(X, Y) + local to = entry.Position tweenInEntry(entry, from, to) end end @@ -724,11 +863,9 @@ local function main() end local targetAngle = expanded[node] and 360 or 0 -- don't ask. - TweenService:Create( - newEntry.Indent.Expand, - TweenInfo.new(0.15, Enum.EasingStyle.Quad), - {Rotation = targetAngle} - ):Play() + TweenService + :Create(newEntry.Indent.Expand, TweenInfo.new(0.15, Enum.EasingStyle.Quad), { Rotation = targetAngle }) + :Play() end) newEntry.Parent = treeFrame @@ -736,30 +873,38 @@ local function main() end Explorer.Refresh = function() - local maxNodes = math.max(math.ceil((treeFrame.AbsoluteSize.Y) / 20),0) + local maxNodes = math.max(math.ceil(treeFrame.AbsoluteSize.Y / 20), 0) local renameNodeVisible = false local isa = game.IsA - for i = 1,maxNodes do + for i = 1, maxNodes do local entry = listEntries[i] - if not listEntries[i] then entry = Explorer.NewListEntry(i) listEntries[i] = entry Explorer.ClickSystem:Add(entry) end + if not listEntries[i] then + entry = Explorer.NewListEntry(i) + listEntries[i] = entry + Explorer.ClickSystem:Add(entry) + end local node = tree[i + Explorer.Index] if node then local obj = node.Obj - local depth = Explorer.EntryIndent*Explorer.NodeDepth(node) + local depth = Explorer.EntryIndent * Explorer.NodeDepth(node) entry.Visible = true - entry.Position = UDim2.new(0,-scrollH.Index,0,entry.Position.Y.Offset) - entry.Size = UDim2.new(0,Explorer.ViewWidth,0,20) + entry.Position = UDim2.fromOffset(-scrollH.Index, entry.Position.Y.Offset) + entry.Size = UDim2.fromOffset(Explorer.ViewWidth, 20) entry.Indent.EntryName.Text = tostring(node.Obj) - entry.Indent.Position = UDim2.new(0,depth,0,0) - entry.Indent.Size = UDim2.new(1,-depth,1,0) - - entry.Indent.EntryName.TextTruncate = (Settings.Explorer.UseNameWidth and Enum.TextTruncate.None or Enum.TextTruncate.AtEnd) - - if (isa(obj,"LocalScript") or isa(obj,"Script")) and obj.Disabled then - Explorer.MiscIcons:DisplayByKey(entry.Indent.Icon, isa(obj,"LocalScript") and "LocalScript_Disabled" or "Script_Disabled") + entry.Indent.Position = UDim2.fromOffset(depth, 0) + entry.Indent.Size = UDim2.fromScale(1, 1) - UDim2.fromOffset(depth, 0) + entry.Indent.EntryName.TextTruncate = ( + Settings.Explorer.UseNameWidth and Enum.TextTruncate.None or Enum.TextTruncate.AtEnd + ) + + if (isa(obj, "LocalScript") or isa(obj, "Script")) and obj.Disabled then + Explorer.MiscIcons:DisplayByKey( + entry.Indent.Icon, + isa(obj, "LocalScript") and "LocalScript_Disabled" or "Script_Disabled" + ) else local rmdEntry = RMD.Classes[obj.ClassName] Explorer.ClassIcons:Display(entry.Indent.Icon, rmdEntry and rmdEntry.ExplorerImageIndex or 0) @@ -779,15 +924,21 @@ local function main() if node == renamingNode then renameNodeVisible = true - renameBox.Position = UDim2.new(0,depth+25-scrollH.Index,0,entry.Position.Y.Offset+2) + renameBox.Position = UDim2.fromOffset(depth + 25 - scrollH.Index, entry.Position.Y.Offset + 2) renameBox.Visible = true end if #node > 0 and expanded[node] ~= 0 then if Lib.CheckMouseInGui(entry.Indent.Expand) then - Explorer.MiscIcons:DisplayByKey(entry.Indent.Expand.Icon, expanded[node] and "Collapse_Over" or "Expand_Over") + Explorer.MiscIcons:DisplayByKey( + entry.Indent.Expand.Icon, + expanded[node] and "Collapse_Over" or "Expand_Over" + ) else - Explorer.MiscIcons:DisplayByKey(entry.Indent.Expand.Icon, expanded[node] and "Collapse" or "Expand") + Explorer.MiscIcons:DisplayByKey( + entry.Indent.Expand.Icon, + expanded[node] and "Collapse" or "Expand" + ) end entry.Indent.Expand.Visible = true else @@ -802,7 +953,7 @@ local function main() renameBox.Visible = false end - for i = maxNodes+1, #listEntries do + for i = maxNodes + 1, #listEntries do Explorer.ClickSystem:Remove(listEntries[i]) listEntries[i]:Destroy() listEntries[i] = nil @@ -812,9 +963,13 @@ local function main() Explorer.PerformUpdate = function(instant) updateDebounce = true Lib.FastWait(not instant and 0.1) - if not updateDebounce then return end + if not updateDebounce then + return + end updateDebounce = false - if not Explorer.Window:IsVisible() then return end + if not Explorer.Window:IsVisible() then + return + end Explorer.Update() Explorer.Refresh() end @@ -822,23 +977,31 @@ local function main() Explorer.ForceUpdate = function(norefresh) updateDebounce = false Explorer.Update() - if not norefresh then Explorer.Refresh() end + if not norefresh then + Explorer.Refresh() + end end Explorer.PerformRefresh = function() refreshDebounce = true Lib.FastWait(0.1) refreshDebounce = false - if updateDebounce or not Explorer.Window:IsVisible() then return end + if updateDebounce or not Explorer.Window:IsVisible() then + return + end Explorer.Refresh() end Explorer.IsNodeVisible = function(node) - if not node then return end + if not node then + return + end local curNode = node.Parent while curNode do - if not expanded[curNode] then return false end + if not expanded[curNode] then + return false + end curNode = curNode.Parent end return true @@ -853,7 +1016,9 @@ local function main() local curNode = node.Parent while curNode do - if curNode == nilNode then depth = depth + 1 end + if curNode == nilNode then + depth = depth + 1 + end curNode = curNode.Parent depth = depth + 1 end @@ -861,20 +1026,30 @@ local function main() end Explorer.SetupConnections = function() - if descendantAddedCon then descendantAddedCon:Disconnect() end - if descendantRemovingCon then descendantRemovingCon:Disconnect() end - if itemChangedCon then itemChangedCon:Disconnect() end + if descendantAddedCon then + descendantAddedCon:Disconnect() + end + if descendantRemovingCon then + descendantRemovingCon:Disconnect() + end + if itemChangedCon then + itemChangedCon:Disconnect() + end if Main.Elevated then descendantAddedCon = game.DescendantAdded:Connect(addObject) descendantRemovingCon = game.DescendantRemoving:Connect(removeObject) else - descendantAddedCon = game.DescendantAdded:Connect(function(obj) pcall(addObject,obj) end) - descendantRemovingCon = game.DescendantRemoving:Connect(function(obj) pcall(removeObject,obj) end) + descendantAddedCon = game.DescendantAdded:Connect(function(obj) + pcall(addObject, obj) + end) + descendantRemovingCon = game.DescendantRemoving:Connect(function(obj) + pcall(removeObject, obj) + end) end if Settings.Explorer.UseNameWidth then - itemChangedCon = game.ItemChanged:Connect(function(obj,prop) + itemChangedCon = game.ItemChanged:Connect(function(obj, prop) if prop == "Parent" and nodes[obj] then moveObject(obj) elseif prop == "Name" and nodes[obj] then @@ -882,7 +1057,7 @@ local function main() end end) else - itemChangedCon = game.ItemChanged:Connect(function(obj,prop) + itemChangedCon = game.ItemChanged:Connect(function(obj, prop) if prop == "Parent" and nodes[obj] then moveObject(obj) end @@ -891,13 +1066,15 @@ local function main() end Explorer.ViewNode = function(node) - if not node then return end + if not node then + return + end Explorer.MakeNodeVisible(node) Explorer.ForceUpdate(true) local visibleSpace = scrollV.VisibleSpace - for i,v in next,tree do + for i, v in next, tree do if v == node then local relative = i - 1 if Explorer.Index > relative then @@ -908,7 +1085,8 @@ local function main() end end - scrollV:Update() Explorer.Index = scrollV.Index + scrollV:Update() + Explorer.Index = scrollV.Index Explorer.Refresh() end @@ -916,8 +1094,10 @@ local function main() Explorer.ViewNode(nodes[obj]) end - Explorer.MakeNodeVisible = function(node,expandRoot) - if not node then return end + Explorer.MakeNodeVisible = function(node, expandRoot) + if not node then + return + end local hasExpanded = false @@ -948,10 +1128,13 @@ local function main() local presentClasses = {} local apiClasses = API.Classes - for i = 1,#sList do + for i = 1, #sList do local node = sList[i] local class = node.Class - if not class then class = node.Obj.ClassName node.Class = class end + if not class then + class = node.Obj.ClassName + node.Class = class + end local curClass = apiClasses[class] while curClass and not presentClasses[curClass.Name] do @@ -959,24 +1142,24 @@ local function main() curClass = curClass.Superclass end end - + if not presentClasses["Player"] then - context:AddRegistered("CUT") - context:AddRegistered("COPY") + context:AddRegistered("CUT") + context:AddRegistered("COPY") end - context:AddRegistered("PASTE",emptyClipboard) + context:AddRegistered("PASTE", emptyClipboard) if not presentClasses["Player"] then - context:AddRegistered("DUPLICATE") + context:AddRegistered("DUPLICATE") end context:AddRegistered("DELETE") if not presentClasses["Player"] then - context:AddRegistered("RENAME",#sList ~= 1) + context:AddRegistered("RENAME", #sList ~= 1) end context:AddDivider() if not presentClasses["Player"] then - context:AddRegistered("GROUP") - context:AddRegistered("UNGROUP") + context:AddRegistered("GROUP") + context:AddRegistered("UNGROUP") end context:AddRegistered("SELECT_CHILDREN") context:AddRegistered("JUMP_TO_PARENT") @@ -992,7 +1175,12 @@ local function main() end context:AddRegistered("INSERT_OBJECT") --context:AddRegistered("SAVE_INST") - if presentClasses["RemoteEvent"] or presentClasses["RemoteFunction"] or presentClasses["BindableEvent"] or presentClasses["BindableFunction"] then + if + presentClasses["RemoteEvent"] + or presentClasses["RemoteFunction"] + or presentClasses["BindableEvent"] + or presentClasses["BindableFunction"] + then context:AddRegistered("CALL_FUNCTION") end --context:AddRegistered("VIEW_CONNECTIONS") @@ -1011,60 +1199,64 @@ local function main() context:AddRegistered("SELECT_CHARACTER") end - if presentClasses["LuaSourceContainer"] then - --context:AddRegistered("VIEW_SCRIPT") - end - if sMap[nilNode] then context:AddRegistered("REFRESH_NIL") context:AddRegistered("HIDE_NIL") end - Explorer.LastRightClickX,Explorer.LastRightClickY = Main.Mouse.X,Main.Mouse.Y + Explorer.LastRightClickX, Explorer.LastRightClickY = Main.Mouse.X, Main.Mouse.Y context:Show() end Explorer.InitRightClick = function() local context = Lib.ContextMenu.new() - context:Register("CUT",{Name = "Cut", IconMap = Explorer.MiscIcons, Icon = "Cut", DisabledIcon = "Cut_Disabled", Shortcut = "Ctrl+Z", OnClick = function() - local destroy,clone = game.Destroy,game.Clone - local sList,newClipboard = selection.List,{} - Dex_RemoteFunction:InvokeServer("ClearClipboard") -- ADONIS - - local count = 1 - for i = 1,#sList do - local inst = sList[i].Obj - - -- ADONIS - Dex_RemoteFunction:InvokeServer("Copy", inst) - if (inst) then -- Improvise - newClipboard[count] = inst - count = count + 1 - end + context:Register("CUT", { + Name = "Cut", + IconMap = Explorer.MiscIcons, + Icon = "Cut", + DisabledIcon = "Cut_Disabled", + Shortcut = "Ctrl+Z", + OnClick = function() + local destroy, clone = game.Destroy, game.Clone + local sList, newClipboard = selection.List, {} + Dex_RemoteFunction:InvokeServer("ClearClipboard") -- ADONIS + + local count = 1 + for i = 1, #sList do + local inst = sList[i].Obj + + -- ADONIS + Dex_RemoteFunction:InvokeServer("Copy", inst) + if inst then -- Improvise + newClipboard[count] = inst + count = count + 1 + end - --[[local s,cloned = pcall(clone,inst) + --[[local s,cloned = pcall(clone,inst) if s and cloned then newClipboard[count] = cloned count = count + 1 end pcall(destroy,inst)]] - -- ADONIS - Dex_RemoteFunction:InvokeServer("Destroy", inst) - end - clipboard = newClipboard - selection:Clear() - end}) - + -- ADONIS + Dex_RemoteFunction:InvokeServer("Destroy", inst) + end + clipboard = newClipboard + selection:Clear() + end, + }) + local CallFunctionWindow = Lib.Window.new() CallFunctionWindow:SetTitle("Call: Unknown") - CallFunctionWindow:Resize(300,130) + CallFunctionWindow:Resize(300, 130) CallFunctionWindow.Resizable = false - CallFunctionWindow.GuiElems.Main.Position = UDim2.new(0.5, -300/2, 0.5, -130/2) + CallFunctionWindow.GuiElems.Main.Position = UDim2.new(0.5, -300 / 2, 0.5, -130 / 2) local content = CallFunctionWindow.GuiElems.Content - local layout = Instance.new("UIListLayout", content) + local layout = Instance.new("UIListLayout") + layout.Parent = content layout.SortOrder = Enum.SortOrder.LayoutOrder layout.Padding = UDim.new(0, 6) layout.HorizontalAlignment = Enum.HorizontalAlignment.Center @@ -1073,7 +1265,7 @@ local function main() local lbl = Instance.new("TextLabel") lbl.Size = UDim2.new(1, -16, 0, 20) lbl.BackgroundTransparency = 1 - lbl.TextColor3 = Settings.Theme.TextPrimary or Color3.new(1,1,1) + lbl.TextColor3 = Settings.Theme.TextPrimary or Color3.new(1, 1, 1) lbl.Font = Enum.Font.SourceSansBold lbl.TextSize = 14 lbl.TextXAlignment = Enum.TextXAlignment.Left @@ -1083,18 +1275,19 @@ local function main() local tb = Instance.new("TextBox") tb.Size = UDim2.new(1, -16, 0, 30) - tb.BackgroundColor3 = Settings.Theme.InputBackground or Color3.fromRGB(30,30,30) - tb.TextColor3 = Settings.Theme.TextPrimary or Color3.new(1,1,1) + tb.BackgroundColor3 = Settings.Theme.InputBackground or Color3.fromRGB(30, 30, 30) + tb.TextColor3 = Settings.Theme.TextPrimary or Color3.new(1, 1, 1) tb.Font = Enum.Font.SourceSans tb.PlaceholderText = [[e.g. "player1", 42, true]] tb.Text = "" tb.ClearTextOnFocus = false tb.TextXAlignment = Enum.TextXAlignment.Left - tb.TextSize = 14 + tb.TextSize = 14 tb.LayoutOrder = 2 tb.Parent = content - local uiCorner = Instance.new("UICorner", tb) + local uiCorner = Instance.new("UICorner") + uiCorner.Parent = tb uiCorner.CornerRadius = UDim.new(0, 4) local buttoncontainer = Instance.new("Frame") @@ -1103,53 +1296,58 @@ local function main() buttoncontainer.LayoutOrder = 3 buttoncontainer.Parent = content - local filler = Instance.new("Frame", buttoncontainer) + local filler = Instance.new("Frame") filler.Size = UDim2.new(1, -80, 1, 0) filler.BackgroundTransparency = 1 + filler.Parent = buttoncontainer local call = Instance.new("TextButton") - call.Size = UDim2.new(0,80,1,0) + call.Size = UDim2.new(0, 80, 1, 0) call.Position = UDim2.new(1, -80, 0, 0) call.BackgroundColor3 = Settings.Theme.ButtonPrimary or Color3.fromRGB(0, 120, 215) - call.TextColor3 = Settings.Theme.TextButton or Color3.new(1,1,1) + call.TextColor3 = Settings.Theme.TextButton or Color3.new(1, 1, 1) call.Font = Enum.Font.SourceSansBold call.TextSize = 14 call.Text = "Call" call.Parent = buttoncontainer - - local btnCorner = Instance.new("UICorner", call) - btnCorner.CornerRadius = UDim.new(0,4) + + local btnCorner = Instance.new("UICorner") + btnCorner.Parent = call + btnCorner.CornerRadius = UDim.new(0, 4) local function activate() - local obj = CallFunctionWindow.currentObj + local obj = CallFunctionWindow.currentObj local text = tb.Text or "" - + local argv = {} for token in string.gmatch(text, "[^,]+") do local t = token:match("^%s*(.-)%s*$") local n = tonumber(t) if n then - argv[#argv+1] = n + argv[#argv + 1] = n elseif t:lower() == "true" then - argv[#argv+1] = true + argv[#argv + 1] = true elseif t:lower() == "false" then - argv[#argv+1] = false + argv[#argv + 1] = false else local inner = t:match('^"(.-)"$') or t:match("^'(.-)'$") - argv[#argv+1] = inner or t + argv[#argv + 1] = inner or t end end - local ok,err = pcall(function() - if obj:IsA("RemoteFunction") then obj:InvokeServer(unpack(argv)) - elseif obj:IsA("BindableFunction") then obj:Invoke(unpack(argv)) - elseif obj:IsA("RemoteEvent") then obj:FireServer(unpack(argv)) - elseif obj:IsA("BindableEvent") then obj:Fire(unpack(argv)) + local ok, err = pcall(function() + if obj:IsA("RemoteFunction") then + obj:InvokeServer(unpack(argv)) + elseif obj:IsA("BindableFunction") then + obj:Invoke(unpack(argv)) + elseif obj:IsA("RemoteEvent") then + obj:FireServer(unpack(argv)) + elseif obj:IsA("BindableEvent") then + obj:Fire(unpack(argv)) end end) if not ok then - - warn("Failed to call "..obj:GetFullName()..":",err) + warn("Failed to call " .. obj:GetFullName() .. ":", err) end CallFunctionWindow:Hide() @@ -1162,74 +1360,91 @@ local function main() end) call.MouseButton1Click:Connect(activate) - - local InstanceInfoWindow = Lib.Window.new() - InstanceInfoWindow:SetTitle("Unknown") - InstanceInfoWindow:Resize(280,120) - InstanceInfoWindow.Resizable = false - InstanceInfoWindow.GuiElems.Main.Position = UDim2.new(0.5, -280/2, 0.5, -120/2) + + local InstanceInfoWindow = Lib.Window.new() + InstanceInfoWindow:SetTitle("Unknown") + InstanceInfoWindow:Resize(280, 120) + InstanceInfoWindow.Resizable = false + InstanceInfoWindow.GuiElems.Main.Position = UDim2.new(0.5, -280 / 2, 0.5, -120 / 2) local content = InstanceInfoWindow.GuiElems.Content - local layout = Instance.new("UIListLayout", content) - layout.SortOrder = Enum.SortOrder.LayoutOrder - layout.Padding = UDim.new(0, 4) - layout.HorizontalAlignment = Enum.HorizontalAlignment.Center - layout.VerticalAlignment = Enum.VerticalAlignment.Top - - local description = Instance.new("TextLabel") - description.Size = UDim2.new(1, -16, 0, 80) - description.BackgroundTransparency = 1 - description.Font = Enum.Font.SourceSans - description.TextSize = 14 - description.TextWrapped = true - description.TextXAlignment = Enum.TextXAlignment.Left - description.TextYAlignment = Enum.TextYAlignment.Top - description.TextColor3 = Settings.Theme.TextSecondary or Color3.fromRGB(200,200,200) - description.LayoutOrder = 2 - description.Parent = content - - context:Register("COPY",{Name = "Copy", IconMap = Explorer.MiscIcons, Icon = "Copy", DisabledIcon = "Copy_Disabled", Shortcut = "Ctrl+C", OnClick = function() - local clone = game.Clone - local sList,newClipboard = selection.List,{} - Dex_RemoteFunction:InvokeServer("ClearClipboard") -- ADONIS - - local count = 1 - for i = 1,#sList do - local inst = sList[i].Obj - local s,cloned = pcall(clone,inst) - - -- ADONIS - Dex_RemoteFunction:InvokeServer("Copy", inst) + local layout = Instance.new("UIListLayout") + layout.Parent = content + layout.SortOrder = Enum.SortOrder.LayoutOrder + layout.Padding = UDim.new(0, 4) + layout.HorizontalAlignment = Enum.HorizontalAlignment.Center + layout.VerticalAlignment = Enum.VerticalAlignment.Top - if s and cloned then - newClipboard[count] = cloned - count = count + 1 + local description = Instance.new("TextLabel") + description.Size = UDim2.new(1, -16, 0, 80) + description.BackgroundTransparency = 1 + description.Font = Enum.Font.SourceSans + description.TextSize = 14 + description.TextWrapped = true + description.TextXAlignment = Enum.TextXAlignment.Left + description.TextYAlignment = Enum.TextYAlignment.Top + description.TextColor3 = Settings.Theme.TextSecondary or Color3.fromRGB(200, 200, 200) + description.LayoutOrder = 2 + description.Parent = content + + context:Register("COPY", { + Name = "Copy", + IconMap = Explorer.MiscIcons, + Icon = "Copy", + DisabledIcon = "Copy_Disabled", + Shortcut = "Ctrl+C", + OnClick = function() + local clone = game.Clone + local sList, newClipboard = selection.List, {} + Dex_RemoteFunction:InvokeServer("ClearClipboard") -- ADONIS + + local count = 1 + for i = 1, #sList do + local inst = sList[i].Obj + local s, cloned = pcall(clone, inst) + + -- ADONIS + Dex_RemoteFunction:InvokeServer("Copy", inst) + + if s and cloned then + newClipboard[count] = cloned + count = count + 1 + end end - end - clipboard = newClipboard - end}) - - context:Register("PASTE",{Name = "Paste Into", IconMap = Explorer.MiscIcons, Icon = "Paste", DisabledIcon = "Paste_Disabled", Shortcut = "Ctrl+Shift+V", OnClick = function() - local sList = selection.List - local newSelection = {} - local count = 1 - for i = 1,#sList do - local node = sList[i] - local inst = node.Obj - Explorer.MakeNodeVisible(node,true) - - -- ADONIS - local pastedObjects = Dex_RemoteFunction:InvokeServer("Paste", inst) + clipboard = newClipboard + end, + }) - for k,v in ipairs(pastedObjects) do - local cloned = v + context:Register("PASTE", { + Name = "Paste Into", + IconMap = Explorer.MiscIcons, + Icon = "Paste", + DisabledIcon = "Paste_Disabled", + Shortcut = "Ctrl+Shift+V", + OnClick = function() + local sList = selection.List + local newSelection = {} + local count = 1 + for i = 1, #sList do + local node = sList[i] + local inst = node.Obj + Explorer.MakeNodeVisible(node, true) + + -- ADONIS + local pastedObjects = Dex_RemoteFunction:InvokeServer("Paste", inst) + + for k, v in ipairs(pastedObjects) do + local cloned = v - local clonedNode = nodes[cloned] - if clonedNode then newSelection[count] = clonedNode count = count + 1 end - end + local clonedNode = nodes[cloned] + if clonedNode then + newSelection[count] = clonedNode + count = count + 1 + end + end - --[[for c = 1,#clipboard do + --[[for c = 1,#clipboard do local cloned = clipboard[c]:Clone() if cloned then cloned.Parent = inst @@ -1237,388 +1452,514 @@ local function main() if clonedNode then newSelection[count] = clonedNode count = count + 1 end end end]] - end - selection:SetTable(newSelection) - - if #newSelection > 0 then - Explorer.ViewNode(newSelection[1]) - end - end}) + end + selection:SetTable(newSelection) - context:Register("DUPLICATE",{Name = "Duplicate", IconMap = Explorer.MiscIcons, Icon = "Copy", DisabledIcon = "Copy_Disabled", Shortcut = "Ctrl+D", OnClick = function() - local clone = game.Clone - local sList = selection.List - local newSelection = {} - local count = 1 - for i = 1,#sList do - local node = sList[i] - local inst = node.Obj - local instPar = node.Parent and node.Parent.Obj - Explorer.MakeNodeVisible(node) + if #newSelection > 0 then + Explorer.ViewNode(newSelection[1]) + end + end, + }) - -- ADONIS - local cloned = Dex_RemoteFunction:InvokeServer("Duplicate", inst, instPar) + context:Register("DUPLICATE", { + Name = "Duplicate", + IconMap = Explorer.MiscIcons, + Icon = "Copy", + DisabledIcon = "Copy_Disabled", + Shortcut = "Ctrl+D", + OnClick = function() + local clone = game.Clone + local sList = selection.List + local newSelection = {} + local count = 1 + for i = 1, #sList do + local node = sList[i] + local inst = node.Obj + local instPar = node.Parent and node.Parent.Obj + Explorer.MakeNodeVisible(node) + + -- ADONIS + local cloned = Dex_RemoteFunction:InvokeServer("Duplicate", inst, instPar) - if (cloned) then - local clonedNode = nodes[cloned] - if clonedNode then newSelection[count] = clonedNode count = count + 1 end - end + if cloned then + local clonedNode = nodes[cloned] + if clonedNode then + newSelection[count] = clonedNode + count = count + 1 + end + end - --[[local s,cloned = pcall(clone,inst) + --[[local s,cloned = pcall(clone,inst) if s and cloned then cloned.Parent = instPar local clonedNode = nodes[cloned] if clonedNode then newSelection[count] = clonedNode count = count + 1 end end]] - end - - selection:SetTable(newSelection) - if #newSelection > 0 then - Explorer.ViewNode(newSelection[1]) - end - end}) - - context:Register("DELETE",{Name = "Delete", IconMap = Explorer.MiscIcons, Icon = "Delete", DisabledIcon = "Delete_Disabled", Shortcut = "Del", OnClick = function() - local destroy = game.Destroy - local sList = selection.List - for i = 1,#sList do - pcall(function() - if not sList[i].Obj:IsA("Player") then - destroy(sList[i].Obj) - end - end) - - -- ADONIS - Dex_RemoteFunction:InvokeServer("Destroy", sList[i].Obj) - end - selection:Clear() - end}) + end - context:Register("RENAME",{Name = "Rename", IconMap = Explorer.MiscIcons, Icon = "Rename", DisabledIcon = "Rename_Disabled", Shortcut = "F2", OnClick = function() - local sList = selection.List - if sList[1] then - Explorer.SetRenamingNode(sList[1]) - end - end}) + selection:SetTable(newSelection) + if #newSelection > 0 then + Explorer.ViewNode(newSelection[1]) + end + end, + }) - context:Register("GROUP",{Name = "Group", IconMap = Explorer.MiscIcons, Icon = "Group", DisabledIcon = "Group_Disabled", Shortcut = "Ctrl+G", OnClick = function() - local sList = selection.List - if #sList == 0 then return end + context:Register("DELETE", { + Name = "Delete", + IconMap = Explorer.MiscIcons, + Icon = "Delete", + DisabledIcon = "Delete_Disabled", + Shortcut = "Del", + OnClick = function() + local destroy = game.Destroy + local sList = selection.List + for i = 1, #sList do + pcall(function() + if not sList[i].Obj:IsA("Player") then + destroy(sList[i].Obj) + end + end) - --local model = Instance.new("Model",sList[#sList].Obj.Parent) - local model = Dex_RemoteFunction:InvokeServer("InstanceNew", "Model", sList[#sList].Obj.Parent) or Instance.new("Model",sList[#sList].Obj.Parent) - for i = 1,#sList do - pcall(function() sList[i].Obj.Parent = model end) + -- ADONIS + Dex_RemoteFunction:InvokeServer("Destroy", sList[i].Obj) + end + selection:Clear() + end, + }) - Dex_RemoteFunction:InvokeServer("SetProperty", sList[i].Obj, "Parent", model) - end + context:Register("RENAME", { + Name = "Rename", + IconMap = Explorer.MiscIcons, + Icon = "Rename", + DisabledIcon = "Rename_Disabled", + Shortcut = "F2", + OnClick = function() + local sList = selection.List + if sList[1] then + Explorer.SetRenamingNode(sList[1]) + end + end, + }) - if nodes[model] then - selection:Set(nodes[model]) - Explorer.ViewNode(nodes[model]) - end - end}) + context:Register("GROUP", { + Name = "Group", + IconMap = Explorer.MiscIcons, + Icon = "Group", + DisabledIcon = "Group_Disabled", + Shortcut = "Ctrl+G", + OnClick = function() + local sList = selection.List + if #sList == 0 then + return + end - context:Register("UNGROUP",{Name = "Ungroup", IconMap = Explorer.MiscIcons, Icon = "Ungroup", DisabledIcon = "Ungroup_Disabled", Shortcut = "Ctrl+U", OnClick = function() - local newSelection = {} - local count = 1 - local isa = game.IsA + --local model = Instance.new("Model",sList[#sList].Obj.Parent) + local model = Dex_RemoteFunction:InvokeServer("InstanceNew", "Model", sList[#sList].Obj.Parent) + or Instance.new("Model", sList[#sList].Obj.Parent) + for i = 1, #sList do + pcall(function() + sList[i].Obj.Parent = model + end) - local function ungroup(node) - local par = node.Parent.Obj - local ch = {} - local chCount = 1 + Dex_RemoteFunction:InvokeServer("SetProperty", sList[i].Obj, "Parent", model) + end - for i = 1,#node do - local n = node[i] - newSelection[count] = n - ch[chCount] = n - count = count + 1 - chCount = chCount + 1 + if nodes[model] then + selection:Set(nodes[model]) + Explorer.ViewNode(nodes[model]) end + end, + }) - for i = 1,#ch do - pcall(function() ch[i].Obj.Parent = par end) + context:Register("UNGROUP", { + Name = "Ungroup", + IconMap = Explorer.MiscIcons, + Icon = "Ungroup", + DisabledIcon = "Ungroup_Disabled", + Shortcut = "Ctrl+U", + OnClick = function() + local newSelection = {} + local count = 1 + local isa = game.IsA + + local function ungroup(node) + local par = node.Parent.Obj + local ch = {} + local chCount = 1 + + for i = 1, #node do + local n = node[i] + newSelection[count] = n + ch[chCount] = n + count = count + 1 + chCount = chCount + 1 + end - Dex_RemoteFunction:InvokeServer("SetProperty", ch[i].Obj, "Parent", par or workspace) - end + for i = 1, #ch do + pcall(function() + ch[i].Obj.Parent = par + end) - node.Obj:Destroy() - end + Dex_RemoteFunction:InvokeServer("SetProperty", ch[i].Obj, "Parent", par or workspace) + end - for i,v in next,selection.List do - if isa(v.Obj,"Model") then - ungroup(v) + node.Obj:Destroy() end - end - selection:SetTable(newSelection) - if #newSelection > 0 then - Explorer.ViewNode(newSelection[1]) - end - end}) + for i, v in next, selection.List do + if isa(v.Obj, "Model") then + ungroup(v) + end + end - context:Register("SELECT_CHILDREN",{Name = "Select Children", IconMap = Explorer.MiscIcons, Icon = "SelectChildren", DisabledIcon = "SelectChildren_Disabled", OnClick = function() - local newSelection = {} - local count = 1 - local sList = selection.List + selection:SetTable(newSelection) + if #newSelection > 0 then + Explorer.ViewNode(newSelection[1]) + end + end, + }) - for i = 1,#sList do - local node = sList[i] - for ind = 1,#node do - local cNode = node[ind] - if ind == 1 then Explorer.MakeNodeVisible(cNode) end + context:Register("SELECT_CHILDREN", { + Name = "Select Children", + IconMap = Explorer.MiscIcons, + Icon = "SelectChildren", + DisabledIcon = "SelectChildren_Disabled", + OnClick = function() + local newSelection = {} + local count = 1 + local sList = selection.List + + for i = 1, #sList do + local node = sList[i] + for ind = 1, #node do + local cNode = node[ind] + if ind == 1 then + Explorer.MakeNodeVisible(cNode) + end - newSelection[count] = cNode - count = count + 1 + newSelection[count] = cNode + count = count + 1 + end end - end - - selection:SetTable(newSelection) - if #newSelection > 0 then - Explorer.ViewNode(newSelection[1]) - else - Explorer.Refresh() - end - end}) - context:Register("JUMP_TO_PARENT",{Name = "Jump to Parent", IconMap = Explorer.MiscIcons, Icon = "JumpToParent", OnClick = function() - local newSelection = {} - local count = 1 - local sList = selection.List + selection:SetTable(newSelection) + if #newSelection > 0 then + Explorer.ViewNode(newSelection[1]) + else + Explorer.Refresh() + end + end, + }) - for i = 1,#sList do - local node = sList[i] - if node.Parent then - newSelection[count] = node.Parent - count = count + 1 + context:Register("JUMP_TO_PARENT", { + Name = "Jump to Parent", + IconMap = Explorer.MiscIcons, + Icon = "JumpToParent", + OnClick = function() + local newSelection = {} + local count = 1 + local sList = selection.List + + for i = 1, #sList do + local node = sList[i] + if node.Parent then + newSelection[count] = node.Parent + count = count + 1 + end end - end - selection:SetTable(newSelection) - if #newSelection > 0 then - Explorer.ViewNode(newSelection[1]) - else - Explorer.Refresh() - end - end}) + selection:SetTable(newSelection) + if #newSelection > 0 then + Explorer.ViewNode(newSelection[1]) + else + Explorer.Refresh() + end + end, + }) - context:Register("TELEPORT_TO",{Name = "Teleport To", IconMap = Explorer.MiscIcons, Icon = "TeleportTo", OnClick = function() - local sList = selection.List - local isa = game.IsA + context:Register("TELEPORT_TO", { + Name = "Teleport To", + IconMap = Explorer.MiscIcons, + Icon = "TeleportTo", + OnClick = function() + local sList = selection.List + local isa = game.IsA - local hrp = plr.Character and plr.Character:FindFirstChild("HumanoidRootPart") - if not hrp then return end + local hrp = plr.Character and plr.Character:FindFirstChild("HumanoidRootPart") + if not hrp then + return + end - for i = 1,#sList do - local node = sList[i] + for i = 1, #sList do + local node = sList[i] - if isa(node.Obj,"BasePart") then - hrp.CFrame = node.Obj.CFrame + Settings.Explorer.TeleportToOffset - break - elseif isa(node.Obj,"Model") then - if node.Obj.PrimaryPart then - hrp.CFrame = node.Obj.PrimaryPart.CFrame + Settings.Explorer.TeleportToOffset + if isa(node.Obj, "BasePart") then + hrp.CFrame = node.Obj.CFrame + Settings.Explorer.TeleportToOffset break - else - local part = node.Obj:FindFirstChildWhichIsA("BasePart",true) - if part and nodes[part] then - hrp.CFrame = nodes[part].Obj.CFrame + Settings.Explorer.TeleportToOffset + elseif isa(node.Obj, "Model") then + if node.Obj.PrimaryPart then + hrp.CFrame = node.Obj.PrimaryPart.CFrame + Settings.Explorer.TeleportToOffset + break + else + local part = node.Obj:FindFirstChildWhichIsA("BasePart", true) + if part and nodes[part] then + hrp.CFrame = nodes[part].Obj.CFrame + Settings.Explorer.TeleportToOffset + end end end end - end - end}) + end, + }) - context:Register("EXPAND_ALL",{Name = "Expand All", OnClick = function() - local sList = selection.List + context:Register("EXPAND_ALL", { + Name = "Expand All", + OnClick = function() + local sList = selection.List - local function expand(node) - expanded[node] = true - for i = 1,#node do - if #node[i] > 0 then - expand(node[i]) + local function expand(node) + expanded[node] = true + for i = 1, #node do + if #node[i] > 0 then + expand(node[i]) + end end end - end - for i = 1,#sList do - expand(sList[i]) - end + for i = 1, #sList do + expand(sList[i]) + end - Explorer.ForceUpdate() - end}) + Explorer.ForceUpdate() + end, + }) - context:Register("COLLAPSE_ALL",{Name = "Collapse All", OnClick = function() - local sList = selection.List + context:Register("COLLAPSE_ALL", { + Name = "Collapse All", + OnClick = function() + local sList = selection.List - local function expand(node) - expanded[node] = nil - for i = 1,#node do - if #node[i] > 0 then - expand(node[i]) + local function expand(node) + expanded[node] = nil + for i = 1, #node do + if #node[i] > 0 then + expand(node[i]) + end end end - end - for i = 1,#sList do - expand(sList[i]) - end + for i = 1, #sList do + expand(sList[i]) + end - Explorer.ForceUpdate() - end}) + Explorer.ForceUpdate() + end, + }) - context:Register("CLEAR_SEARCH_AND_JUMP_TO",{Name = "Clear Search and Jump to", OnClick = function() - local newSelection = {} - local count = 1 - local sList = selection.List + context:Register("CLEAR_SEARCH_AND_JUMP_TO", { + Name = "Clear Search and Jump to", + OnClick = function() + local newSelection = {} + local count = 1 + local sList = selection.List - for i = 1,#sList do - newSelection[count] = sList[i] - count = count + 1 - end + for i = 1, #sList do + newSelection[count] = sList[i] + count = count + 1 + end - selection:SetTable(newSelection) - Explorer.ClearSearch() - if #newSelection > 0 then - Explorer.ViewNode(newSelection[1]) - end - end}) + selection:SetTable(newSelection) + Explorer.ClearSearch() + if #newSelection > 0 then + Explorer.ViewNode(newSelection[1]) + end + end, + }) - context:Register("COPY_PATH",{Name = "Copy Path", OnClick = function() - local sList = selection.List - if #sList == 1 then - env.setclipboard(Explorer.GetInstancePath(sList[1].Obj)) - elseif #sList > 1 then - local resList = {"{"} - local count = 2 - for i = 1,#sList do - local path = "\t"..Explorer.GetInstancePath(sList[i].Obj).."," - if #path > 0 then - resList[count] = path - count = count+1 + context:Register("COPY_PATH", { + Name = "Copy Path", + OnClick = function() + local sList = selection.List + if #sList == 1 then + env.setclipboard(Explorer.GetInstancePath(sList[1].Obj)) + elseif #sList > 1 then + local resList = { "{" } + local count = 2 + for i = 1, #sList do + local path = "\t" .. Explorer.GetInstancePath(sList[i].Obj) .. "," + if #path > 0 then + resList[count] = path + count = count + 1 + end end + resList[count] = "}" + env.setclipboard(table.concat(resList, "\n")) end - resList[count] = "}" - env.setclipboard(table.concat(resList,"\n")) - end - end}) + end, + }) - context:Register("INSERT_OBJECT",{Name = "Insert Object", IconMap = Explorer.MiscIcons, Icon = "InsertObject", OnClick = function() - local mouse = Main.Mouse - local x,y = Explorer.LastRightClickX or mouse.X, Explorer.LastRightClickY or mouse.Y - Explorer.InsertObjectContext:Show(x,y) - end}) + context:Register("INSERT_OBJECT", { + Name = "Insert Object", + IconMap = Explorer.MiscIcons, + Icon = "InsertObject", + OnClick = function() + local mouse = Main.Mouse + local x, y = Explorer.LastRightClickX or mouse.X, Explorer.LastRightClickY or mouse.Y + Explorer.InsertObjectContext:Show(x, y) + end, + }) - context:Register("CALL_FUNCTION",{ - Name = "Call Function", - IconMap = Explorer.ClassIcons, - Icon = 66, - OnClick = function() + context:Register("CALL_FUNCTION", { + Name = "Call Function", + IconMap = Explorer.ClassIcons, + Icon = 66, + OnClick = function() local node = selection.List[1] - if not node then return end + if not node then + return + end local obj = node.Obj - if not (obj:IsA("RemoteFunction") or obj:IsA("RemoteEvent") or obj:IsA("BindableFunction") or obj:IsA("BindableEvent")) then + if + not ( + obj:IsA("RemoteFunction") + or obj:IsA("RemoteEvent") + or obj:IsA("BindableFunction") + or obj:IsA("BindableEvent") + ) + then return end CallFunctionWindow.currentObj = obj - CallFunctionWindow:SetTitle("Call: " ..obj:GetFullName():sub(1,40)) - CallFunctionWindow:Show() - end + CallFunctionWindow:SetTitle("Call: " .. obj:GetFullName():sub(1, 40)) + CallFunctionWindow:Show() + end, }) - context:Register("GET_REFERENCES",{Name = "Get Lua References", IconMap = Explorer.ClassIcons, Icon = 34, OnClick = function() + context:Register( + "GET_REFERENCES", + { Name = "Get Lua References", IconMap = Explorer.ClassIcons, Icon = 34, OnClick = function() end } + ) + + context:Register( + "SAVE_INST", + { Name = "Save to File", IconMap = Explorer.MiscIcons, Icon = "Save", OnClick = function() end } + ) - end}) + context:Register("VIEW_CONNECTIONS", { Name = "View Connections", OnClick = function() end }) - context:Register("SAVE_INST",{Name = "Save to File", IconMap = Explorer.MiscIcons, Icon = "Save", OnClick = function() + context:Register( + "VIEW_API", + { Name = "View API Page", IconMap = Explorer.MiscIcons, Icon = "Reference", OnClick = function() end } + ) - end}) + context:Register("VIEW_DESCRIPTION", { + Name = "View Description", + IconMap = Explorer.MiscIcons, + Icon = 34, + OnClick = function() + local node = selection.List[1] + if not node then + return + end + local obj = node.Obj + local className = obj.ClassName + + local name = RMD.Classes[className].Name + local summary = RMD.Classes[className].summary + local additionalDocs = { + Model = "A Model is a container object, it groups objects together and it's best used to hold collections of BaseParts.", + BasePart = "BasePart is an abstract base class for in-world objects that render and are physically simulated while in the Workspace.", + Part = "The Part object is a type of BasePart. It comes in five different primitive shapes: Ball, Block, Cylinder, Wedge, and CornerWedge.", + MeshPart = "MeshPart is a form of BasePart that includes a physically simulated custom mesh. Unlike with other mesh classes, such as SpecialMesh and BlockMesh, they are not parented to a BasePart but rather behave as a BasePart in their own right.", + Workspace = "Workspace is a service that holds objects that exist in the 3D world, effectively BaseParts and Attachments. While such objects are descendant of Workspace, they will be active.", + } - context:Register("VIEW_CONNECTIONS",{Name = "View Connections", OnClick = function() + InstanceInfoWindow:SetTitle(name .. ' "' .. obj.Name .. '"') - end}) + -- as far as I checked, only a few classes have summary for some reason + description.Text = summary + or additionalDocs[className] + or "No description available for this class. The RMD may be missing some information." - context:Register("VIEW_API",{Name = "View API Page", IconMap = Explorer.MiscIcons, Icon = "Reference", OnClick = function() + InstanceInfoWindow:Show() + end, + }) - end}) - - context:Register("VIEW_DESCRIPTION",{Name = "View Description", IconMap = Explorer.MiscIcons, Icon = 34, OnClick = function() - local node = selection.List[1] - if not node then return end - local obj = node.Obj - local className = obj.ClassName - - local name = RMD.Classes[className].Name - local summary = RMD.Classes[className].summary - local additionalDocs = { - Model = "A Model is a container object, it groups objects together and it's best used to hold collections of BaseParts.", - BasePart = "BasePart is an abstract base class for in-world objects that render and are physically simulated while in the Workspace.", - Part = "The Part object is a type of BasePart. It comes in five different primitive shapes: Ball, Block, Cylinder, Wedge, and CornerWedge.", - MeshPart = "MeshPart is a form of BasePart that includes a physically simulated custom mesh. Unlike with other mesh classes, such as SpecialMesh and BlockMesh, they are not parented to a BasePart but rather behave as a BasePart in their own right.", - Workspace = "Workspace is a service that holds objects that exist in the 3D world, effectively BaseParts and Attachments. While such objects are descendant of Workspace, they will be active." - } - - InstanceInfoWindow:SetTitle(name .." \"".. obj.Name .."\"") - - -- as far as I checked, only a few classes have summary for some reason - description.Text = summary or additionalDocs[className] or "No description available for this class. The RMD may be missing some information." - - InstanceInfoWindow:Show() - end}) - - context:Register("VIEW_OBJECT",{Name = "View Object (Right click to reset)", IconMap = Explorer.ClassIcons, Icon = 5, OnClick = function() - local sList = selection.List - local isa = game.IsA + context:Register("VIEW_OBJECT", { + Name = "View Object (Right click to reset)", + IconMap = Explorer.ClassIcons, + Icon = 5, + OnClick = function() + local sList = selection.List + local isa = game.IsA - for i = 1,#sList do - local node = sList[i] + for i = 1, #sList do + local node = sList[i] - if isa(node.Obj,"BasePart") or isa(node.Obj,"Model") then - workspace.CurrentCamera.CameraSubject = node.Obj - break + if isa(node.Obj, "BasePart") or isa(node.Obj, "Model") then + -- workspace.CurrentCamera.CameraSubject = node.Obj + break + end end - end - end, OnRightClick = function() - workspace.CurrentCamera.CameraSubject = plr.Character - end}) - - context:Register("VIEW_SCRIPT",{Name = "View Script", IconMap = Explorer.MiscIcons, Icon = "ViewScript", OnClick = function() - local scr = selection.List[1] and selection.List[1].Obj - if scr then ScriptViewer.ViewScript(scr) end - end}) + end, + OnRightClick = function() + -- workspace.CurrentCamera.CameraSubject = plr.Character + end, + }) - context:Register("SELECT_CHARACTER",{Name = "Select Character", IconMap = Explorer.ClassIcons, Icon = 9, OnClick = function() - local newSelection = {} - local count = 1 - local sList = selection.List - local isa = game.IsA + context:Register("VIEW_SCRIPT", { + Name = "View Script", + IconMap = Explorer.MiscIcons, + Icon = "ViewScript", + OnClick = function() + local scr = selection.List[1] and selection.List[1].Obj + if scr then + ScriptViewer.ViewScript(scr) + end + end, + }) - for i = 1,#sList do - local node = sList[i] - if isa(node.Obj,"Player") and nodes[node.Obj.Character] then - newSelection[count] = nodes[node.Obj.Character] - count = count + 1 + context:Register("SELECT_CHARACTER", { + Name = "Select Character", + IconMap = Explorer.ClassIcons, + Icon = 9, + OnClick = function() + local newSelection = {} + local count = 1 + local sList = selection.List + local isa = game.IsA + + for i = 1, #sList do + local node = sList[i] + if isa(node.Obj, "Player") and nodes[node.Obj.Character] then + newSelection[count] = nodes[node.Obj.Character] + count = count + 1 + end end - end - selection:SetTable(newSelection) - if #newSelection > 0 then - Explorer.ViewNode(newSelection[1]) - else - Explorer.Refresh() - end - end}) + selection:SetTable(newSelection) + if #newSelection > 0 then + Explorer.ViewNode(newSelection[1]) + else + Explorer.Refresh() + end + end, + }) - context:Register("REFRESH_NIL",{Name = "Refresh Nil Instances", OnClick = function() - Explorer.RefreshNilInstances() - end}) + context:Register("REFRESH_NIL", { + Name = "Refresh Nil Instances", + OnClick = function() + Explorer.RefreshNilInstances() + end, + }) - context:Register("HIDE_NIL",{Name = "Hide Nil Instances", OnClick = function() - Explorer.HideNilInstances() - end}) + context:Register("HIDE_NIL", { + Name = "Hide Nil Instances", + OnClick = function() + Explorer.HideNilInstances() + end, + }) Explorer.RightClickContext = context end @@ -1627,13 +1968,13 @@ local function main() table.clear(nilMap) local disconnectCon = Instance.new("Folder").ChildAdded:Connect(function() end).Disconnect - for i,v in next,nilCons do + for i, v in next, nilCons do disconnectCon(v[1]) disconnectCon(v[2]) end table.clear(nilCons) - for i = 1,#nilNode do + for i = 1, #nilNode do task.spawn(removeObject, nilNode[i].Obj) end @@ -1642,7 +1983,9 @@ local function main() end Explorer.RefreshNilInstances = function() - if not env.getnilinstances then return end + if not env.getnilinstances then + return + end local nilInsts = env.getnilinstances() local game = game @@ -1654,14 +1997,14 @@ local function main() --local disconnect --if not nilRoots then nilRoots = {} Explorer.NilRoots = nilRoots end - for i = 1,#nilInsts do + for i = 1, #nilInsts do local obj = nilInsts[i] if obj ~= game then nilMap[obj] = true --newNilRoots[obj] = true local descs = getDescs(obj) - for j = 1,#descs do + for j = 1, #descs do nilMap[descs[j]] = true end end @@ -1678,10 +2021,12 @@ local function main() --nilMap = newNilMap - for i = 1,#nilInsts do + for i = 1, #nilInsts do local obj = nilInsts[i] local node = nodes[obj] - if not node then task.spawn(addObject, obj) end + if not node then + task.spawn(addObject, obj) + end end --[[ @@ -1724,33 +2069,33 @@ local function main() while curObj do if curObj == game then - path = "game"..path + path = "game" .. path break end local className = curObj.ClassName local curName = ts(curObj) local indexName - if match(curName,"^[%a_][%w_]*$") then - indexName = "."..curName + if match(curName, "^[%a_][%w_]*$") then + indexName = "." .. curName else local cleanName = formatLuaString(curName) - indexName = '["'..cleanName..'"]' + indexName = '["' .. cleanName .. '"]' end local parObj = curObj.Parent if parObj then - local fc = ffc(parObj,curName) + local fc = ffc(parObj, curName) if useGetCh and fc and fc ~= curObj then local parCh = getCh(parObj) - local fcInd = tableFind(parCh,curObj) - indexName = ":GetChildren()["..fcInd.."]" + local fcInd = tableFind(parCh, curObj) + indexName = ":GetChildren()[" .. fcInd .. "]" elseif parObj == game and API.Classes[className] and API.Classes[className].Tags.Service then - indexName = ':GetService("'..className..'")' + indexName = ':GetService("' .. className .. '")' end end - path = indexName..path + path = indexName .. path curObj = parObj end @@ -1766,18 +2111,18 @@ local function main() OutlineColor = Settings.Theme.Outline1, DividerColor = Settings.Theme.Outline1, TextColor = Settings.Theme.Text, - HighlightColor = Settings.Theme.ButtonHover + HighlightColor = Settings.Theme.ButtonHover, }) local classes = {} - for i,class in next,API.Classes do + for i, class in next, API.Classes do local tags = class.Tags if not tags.NotCreatable and not tags.Service then local rmdEntry = RMD.Classes[class.Name] - classes[#classes+1] = {class,rmdEntry and rmdEntry.ClassCategory or "Uncategorized"} + classes[#classes + 1] = { class, rmdEntry and rmdEntry.ClassCategory or "Uncategorized" } end end - table.sort(classes,function(a,b) + table.sort(classes, function(a, b) if a[2] ~= b[2] then return a[2] < b[2] else @@ -1788,10 +2133,10 @@ local function main() local function onClick(className) local sList = selection.List local instNew = Instance.new - for i = 1,#sList do + for i = 1, #sList do local node = sList[i] local obj = node.Obj - Explorer.MakeNodeVisible(node,true) + Explorer.MakeNodeVisible(node, true) --pcall(instNew,className,obj) Dex_RemoteFunction:InvokeServer("InstanceNew", className, obj) @@ -1799,7 +2144,7 @@ local function main() end local lastCategory = "" - for i = 1,#classes do + for i = 1, #classes do local class = classes[i][1] local rmdEntry = RMD.Classes[class.Name] local iconInd = rmdEntry and tonumber(rmdEntry.ExplorerImageIndex) or 0 @@ -1809,7 +2154,7 @@ local function main() context:AddDivider(category) lastCategory = category end - context:Add({Name = class.Name, IconMap = Explorer.ClassIcons, Icon = iconInd, OnClick = onClick}) + context:Add({ Name = class.Name, IconMap = Explorer.ClassIcons, Icon = iconInd, OnClick = onClick }) end Explorer.InsertObjectContext = context @@ -1821,25 +2166,25 @@ local function main() local connection = Explorer.ClickToSelect_Connection -- If Setting is ON - if (Settings.Explorer.ClickToSelect == true) then - - if not (connection) then + if Settings.Explorer.ClickToSelect == true then + if not connection then local mouse: Mouse = Main.Mouse or service.Players.LocalPlayer:GetMouse() connection = mouse.Button1Down:Connect(function() local mouseLocation = service.UserInputService:GetMouseLocation() -- Create a ray from the 2D mouse location - local screenToWorldRay = workspace.CurrentCamera:ViewportPointToRay(mouseLocation.X, mouseLocation.Y) + local screenToWorldRay = + workspace.CurrentCamera:ViewportPointToRay(mouseLocation.X, mouseLocation.Y) local DISTANCE_LIMIT = 900000 - local dirVector = screenToWorldRay.Direction * (DISTANCE_LIMIT) + local dirVector = screenToWorldRay.Direction * DISTANCE_LIMIT local raycastResult = workspace:Raycast(screenToWorldRay.Origin, dirVector) - if (raycastResult) then + if raycastResult then local node = nodes[raycastResult.Instance] - if (node) then + if node then selection:Set(node) Explorer.ViewObj(node.Obj) -- Show in Explorer @@ -1852,7 +2197,7 @@ local function main() end else -- If OFF - if (connection) then + if connection then -- Disconnect connection:Disconnect() @@ -1870,90 +2215,109 @@ local function main() local lower = string.lower local find = string.find local classQuery = string.split(argString)[1] - if not classQuery then return end + if not classQuery then + return + end classQuery = lower(classQuery) local className - for class,_ in pairs(API.Classes) do + for class, _ in pairs(API.Classes) do local cName = lower(class) if cName == classQuery then className = class break - elseif find(cName,classQuery,1,true) then + elseif find(cName, classQuery, 1, true) then className = class end end - if not className then return end + if not className then + return + end return { - Headers = {"local isa = game.IsA"}, - Predicate = "isa(obj,'"..className.."')" + Headers = { "local isa = game.IsA" }, + Predicate = "isa(obj,'" .. className .. "')", } end, ["remotes"] = function(argString) return { - Headers = {"local isa = game.IsA"}, - Predicate = "isa(obj,'RemoteEvent') or isa(obj,'RemoteFunction')" + Headers = { "local isa = game.IsA" }, + Predicate = "isa(obj,'RemoteEvent') or isa(obj,'RemoteFunction')", } end, ["bindables"] = function(argString) return { - Headers = {"local isa = game.IsA"}, - Predicate = "isa(obj,'BindableEvent') or isa(obj,'BindableFunction')" + Headers = { "local isa = game.IsA" }, + Predicate = "isa(obj,'BindableEvent') or isa(obj,'BindableFunction')", } end, ["rad"] = function(argString) local num = tonumber(argString) - if not num then return end + if not num then + return + end - if not service.Players.LocalPlayer.Character or not service.Players.LocalPlayer.Character:FindFirstChild("HumanoidRootPart") or not service.Players.LocalPlayer.Character.HumanoidRootPart:IsA("BasePart") then return end + if + not service.Players.LocalPlayer.Character + or not service.Players.LocalPlayer.Character:FindFirstChild("HumanoidRootPart") + or not service.Players.LocalPlayer.Character.HumanoidRootPart:IsA("BasePart") + then + return + end return { - Headers = {"local isa = game.IsA", "local hrp = service.Players.LocalPlayer.Character.HumanoidRootPart"}, - Setups = {"local hrpPos = hrp.Position"}, - ObjectDefs = {"local isBasePart = isa(obj,'BasePart')"}, - Predicate = "(isBasePart and (obj.Position-hrpPos).Magnitude <= "..num..")" + Headers = { + "local isa = game.IsA", + "local hrp = service.Players.LocalPlayer.Character.HumanoidRootPart", + }, + Setups = { "local hrpPos = hrp.Position" }, + ObjectDefs = { "local isBasePart = isa(obj,'BasePart')" }, + Predicate = "(isBasePart and (obj.Position-hrpPos).Magnitude <= " .. num .. ")", } end, }, Specific = { ["players"] = function() - return function() return service.Players:GetPlayers() end + return function() + return service.Players:GetPlayers() + end end, ["loadedmodules"] = function() return env.getloadedmodules end, }, - Default = function(argString,caseSensitive) - local cleanString = argString:gsub("\"","\\\""):gsub("\n","\\n") + Default = function(argString, caseSensitive) + local cleanString = argString:gsub('"', '\\"'):gsub("\n", "\\n") if caseSensitive then return { - Headers = {"local find = string.find"}, - ObjectDefs = {"local objName = tostring(obj)"}, - Predicate = "find(objName,\"" .. cleanString .. "\",1,true)" + Headers = { "local find = string.find" }, + ObjectDefs = { "local objName = tostring(obj)" }, + Predicate = 'find(objName,"' .. cleanString .. '",1,true)', } else return { - Headers = {"local lower = string.lower","local find = string.find","local tostring = tostring"}, - ObjectDefs = {"local lowerName = lower(tostring(obj))"}, - Predicate = "find(lowerName,\"" .. cleanString:lower() .. "\",1,true)" + Headers = { "local lower = string.lower", "local find = string.find", "local tostring = tostring" }, + ObjectDefs = { "local lowerName = lower(tostring(obj))" }, + Predicate = 'find(lowerName,"' .. cleanString:lower() .. '",1,true)', } end end, SpecificDefault = function(n) return { Headers = {}, - ObjectDefs = {"local isSpec"..n.." = specResults["..n.."][node]"}, - Predicate = "isSpec"..n + ObjectDefs = { "local isSpec" .. n .. " = specResults[" .. n .. "][node]" }, + Predicate = "isSpec" .. n, } end, } Explorer.BuildSearchFunc = function(query) - local specFilterList,specMap = {},{} + local specFilterList, specMap = {}, {} local finalPredicate = "" local rep = string.rep - local formatQuery = query:gsub("\\."," "):gsub('".-"',function(str) return rep(" ",#str) end) + local formatQuery = query:gsub("\\.", " "):gsub('".-"', function(str) + return rep(" ", #str) + end) local headers = {} local objectDefs = {} local setups = {} @@ -1965,7 +2329,7 @@ local function main() ["("] = "(", [")"] = ")", ["||"] = " or ", - ["&&"] = " and " + ["&&"] = " and ", } local filterCount = 0 local compFilters = Explorer.SearchFilters.Comparison @@ -1976,26 +2340,26 @@ local function main() local function processFilter(dat) if dat.Headers then local t = dat.Headers - for i = 1,#t do + for i = 1, #t do headers[t[i]] = true end end if dat.ObjectDefs then local t = dat.ObjectDefs - for i = 1,#t do + for i = 1, #t do objectDefs[t[i]] = true end end if dat.Setups then local t = dat.Setups - for i = 1,#t do + for i = 1, #t do setups[t[i]] = true end end - finalPredicate = finalPredicate..dat.Predicate + finalPredicate = finalPredicate .. dat.Predicate end local found = {} @@ -2003,69 +2367,69 @@ local function main() local find = string.find local sub = string.sub - local function findAll(str,pattern) - local count = #found+1 + local function findAll(str, pattern) + local count = #found + 1 local init = 1 local sz = #pattern - local x,y,extra = find(str,pattern,init,true) + local x, y, extra = find(str, pattern, init, true) while x do found[count] = x - foundData[x] = {sz,pattern} + foundData[x] = { sz, pattern } - count = count+1 - init = y+1 - x,y,extra = find(str,pattern,init,true) + count = count + 1 + init = y + 1 + x, y, extra = find(str, pattern, init, true) end end local start = tick() - findAll(formatQuery,'&&') - findAll(formatQuery,"||") - findAll(formatQuery,"(") - findAll(formatQuery,")") + findAll(formatQuery, "&&") + findAll(formatQuery, "||") + findAll(formatQuery, "(") + findAll(formatQuery, ")") table.sort(found) - table.insert(found,#formatQuery+1) + table.insert(found, #formatQuery + 1) local function inQuotes(str) local len = #str - if sub(str,1,1) == '"' and sub(str,len,len) == '"' then - return sub(str,2,len-1) + if sub(str, 1, 1) == '"' and sub(str, len, len) == '"' then + return sub(str, 2, len - 1) end end - for i = 1,#found do + for i = 1, #found do local nextInd = found[i] - local nextData = foundData[nextInd] or {1} + local nextData = foundData[nextInd] or { 1 } local op = ops[nextData[2]] - local term = sub(query,init,nextInd-1) - term = match(term,"^%s*(.-)%s*$") or "" -- Trim + local term = sub(query, init, nextInd - 1) + term = match(term, "^%s*(.-)%s*$") or "" -- Trim if #term > 0 then - if sub(term,1,1) == "!" then - term = sub(term,2) - finalPredicate = finalPredicate.."not " + if sub(term, 1, 1) == "!" then + term = sub(term, 2) + finalPredicate = finalPredicate .. "not " end local qTerm = inQuotes(term) if qTerm then - processFilter(Explorer.SearchFilters.Default(qTerm,true)) + processFilter(Explorer.SearchFilters.Default(qTerm, true)) else - local x,y = find(term,"%S+") + local x, y = find(term, "%S+") if x then - local first = sub(term,x,y) - local specifier = sub(first,1,1) == "/" and lower(sub(first,2)) + local first = sub(term, x, y) + local specifier = sub(first, 1, 1) == "/" and lower(sub(first, 2)) local compFunc = specifier and compFilters[specifier] local specFunc = specifier and specFilters[specifier] if compFunc then - local argStr = sub(term,y+2) + local argStr = sub(term, y + 2) local ret = compFunc(inQuotes(argStr) or argStr) if ret then processFilter(ret) else - finalPredicate = finalPredicate.."false" + finalPredicate = finalPredicate .. "false" end elseif specFunc then - local argStr = sub(term,y+2) + local argStr = sub(term, y + 2) local ret = specFunc(inQuotes(argStr) or argStr) if ret then if not specMap[term] then @@ -2074,35 +2438,41 @@ local function main() end processFilter(Explorer.SearchFilters.SpecificDefault(specMap[term])) else - finalPredicate = finalPredicate.."false" + finalPredicate = finalPredicate .. "false" end else processFilter(Explorer.SearchFilters.Default(term)) end end - end + end end if op then - finalPredicate = finalPredicate..op + finalPredicate = finalPredicate .. op if op == "(" and (#term > 0 or lastOp == ")") then -- Handle bracket glitch return else lastOp = op end end - init = nextInd+nextData[1] + init = nextInd + nextData[1] end local finalSetups = "" local finalHeaders = "" local finalObjectDefs = "" - for setup,_ in next,setups do finalSetups = finalSetups..setup.."\n" end - for header,_ in next,headers do finalHeaders = finalHeaders..header.."\n" end - for oDef,_ in next,objectDefs do finalObjectDefs = finalObjectDefs..oDef.."\n" end + for setup, _ in next, setups do + finalSetups = finalSetups .. setup .. "\n" + end + for header, _ in next, headers do + finalHeaders = finalHeaders .. header .. "\n" + end + for oDef, _ in next, objectDefs do + finalObjectDefs = finalObjectDefs .. oDef .. "\n" + end - return nil,specFilterList + return nil, specFilterList end Explorer.DoSearch = function(query) @@ -2111,7 +2481,7 @@ local function main() expanded = (#query == 0 and Explorer.Expanded or Explorer.SearchExpanded) searchFunc = nil - if #query > 0 then + if #query > 0 then local expandTable = Explorer.SearchExpanded local specFilters @@ -2123,11 +2493,11 @@ local function main() local function defaultSearch(root) local expandedpar = false - for i = 1,#root do + for i = 1, #root do local node = root[i] local obj = node.Obj - if find(lower(tostring(obj)),lowerQuery,1,true) then + if find(lower(tostring(obj)), lowerQuery, 1, true) then expandTable[node] = 0 searchResults[node] = true if not expandedpar then @@ -2141,13 +2511,15 @@ local function main() end end - if #node > 0 then defaultSearch(node) end + if #node > 0 then + defaultSearch(node) + end end end if Main.Elevated then local start = tick() - searchFunc,specFilters = Explorer.BuildSearchFunc(query) + searchFunc, specFilters = Explorer.BuildSearchFunc(query) --print("BUILD SEARCH",tick()-start) else searchFunc = defaultSearch @@ -2155,11 +2527,11 @@ local function main() if specFilters then table.clear(specResults) - for i = 1,#specFilters do -- Specific search filers that returns list of matches + for i = 1, #specFilters do -- Specific search filers that returns list of matches local resMap = {} specResults[i] = resMap local objs = specFilters[i]() - for c = 1,#objs do + for c = 1, #objs do local node = nodes[objs[c]] if node then resMap[node] = true @@ -2198,21 +2570,114 @@ local function main() Explorer.InitEntryTemplate = function() entryTemplate = create({ - {1,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0,0,0),BackgroundTransparency=1,BorderColor3=Color3.new(0,0,0),Font=3,Name="Entry",Position=UDim2.new(0,1,0,1),Size=UDim2.new(0,250,0,20),Text="",TextSize=14,}}, - {2,"Frame",{BackgroundColor3=Color3.new(0.04313725605607,0.35294118523598,0.68627452850342),BackgroundTransparency=1,BorderColor3=Color3.new(0.33725491166115,0.49019610881805,0.73725491762161),BorderSizePixel=0,Name="Indent",Parent={1},Position=UDim2.new(0,20,0,0),Size=UDim2.new(1,-20,1,0),}}, - {3,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="EntryName",Parent={2},Position=UDim2.new(0,26,0,0),Size=UDim2.new(1,-26,1,0),Text="Workspace",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, - {4,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,ClipsDescendants=true,Font=3,Name="Expand",Parent={2},Position=UDim2.new(0,-20,0,0),Size=UDim2.new(0,20,0,20),Text="",TextSize=14,}}, - {5,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://5642383285",ImageRectOffset=Vector2.new(144,16),ImageRectSize=Vector2.new(16,16),Name="Icon",Parent={4},Position=UDim2.new(0,2,0,2),ScaleType=4,Size=UDim2.new(0,16,0,16),}}, - {6,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxasset://textures/ClassImages.png",ImageRectOffset=Vector2.new(304,0),ImageRectSize=Vector2.new(16,16),Name="Icon",Parent={2},Position=UDim2.new(0,4,0,2),ScaleType=4,Size=UDim2.new(0,16,0,16),}}, + { + 1, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0, 0, 0), + BackgroundTransparency = 1, + BorderColor3 = Color3.new(0, 0, 0), + Font = 3, + Name = "Entry", + Position = UDim2.fromOffset(1, 1), + Size = UDim2.fromOffset(250, 20), + Text = "", + TextSize = 14, + }, + }, + { + 2, + "Frame", + { + BackgroundColor3 = Color3.new(0.04313725605607, 0.35294118523598, 0.68627452850342), + BackgroundTransparency = 1, + BorderColor3 = Color3.new(0.33725491166115, 0.49019610881805, 0.73725491762161), + BorderSizePixel = 0, + Name = "Indent", + Parent = { 1 }, + Position = UDim2.fromOffset(20, 0), + Size = UDim2.new(1, -20, 1, 0), + }, + }, + { + 3, + "TextLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Font = 3, + Name = "EntryName", + Parent = { 2 }, + Position = UDim2.fromOffset(26, 0), + Size = UDim2.new(1, -26, 1, 0), + Text = "Workspace", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + TextXAlignment = 0, + }, + }, + { + 4, + "TextButton", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + ClipsDescendants = true, + Font = 3, + Name = "Expand", + Parent = { 2 }, + Position = UDim2.fromOffset(-20, 0), + Size = UDim2.fromOffset(20, 20), + Text = "", + TextSize = 14, + }, + }, + { + 5, + "ImageLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Image = "rbxassetid://5642383285", + ImageRectOffset = Vector2.new(144, 16), + ImageRectSize = Vector2.new(16, 16), + Name = "Icon", + Parent = { 4 }, + Position = UDim2.fromOffset(2, 2), + ScaleType = 4, + Size = UDim2.fromOffset(16, 16), + }, + }, + { + 6, + "ImageLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Image = "rbxasset://textures/ClassImages.png", + ImageRectOffset = Vector2.new(304, 0), + ImageRectSize = Vector2.new(16, 16), + Name = "Icon", + Parent = { 2 }, + Position = UDim2.fromOffset(4, 2), + ScaleType = 4, + Size = UDim2.fromOffset(16, 16), + }, + }, }) local sys = Lib.ClickSystem.new() - sys.AllowedButtons = {1,2} - sys.OnDown:Connect(function(item,combo,button) - local ind = table.find(listEntries,item) - if not ind then return end + sys.AllowedButtons = { 1, 2 } + sys.OnDown:Connect(function(item, combo, button) + local ind = table.find(listEntries, item) + if not ind then + return + end local node = tree[ind + Explorer.Index] - if not node then return end + if not node then + return + end local entry = listEntries[ind] @@ -2234,34 +2699,42 @@ local function main() sys.IsRenaming = selection.Map[node] if Lib.IsShiftDown() then - if not selection.Piviot then return end + if not selection.Piviot then + return + end - local fromIndex = table.find(tree,selection.Piviot) - local toIndex = table.find(tree,node) - if not fromIndex or not toIndex then return end - fromIndex,toIndex = math.min(fromIndex,toIndex),math.max(fromIndex,toIndex) + local fromIndex = table.find(tree, selection.Piviot) + local toIndex = table.find(tree, node) + if not fromIndex or not toIndex then + return + end + fromIndex, toIndex = math.min(fromIndex, toIndex), math.max(fromIndex, toIndex) local sList = selection.List - for i = #sList,1,-1 do + for i = #sList, 1, -1 do local elem = sList[i] if selection.ShiftSet[elem] then selection.Map[elem] = nil - table.remove(sList,i) + table.remove(sList, i) end end selection.ShiftSet = {} - for i = fromIndex,toIndex do + for i = fromIndex, toIndex do local elem = tree[i] if not selection.Map[elem] then selection.ShiftSet[elem] = true selection.Map[elem] = true - sList[#sList+1] = elem + sList[#sList + 1] = elem end end selection.Changed:Fire() elseif Lib.IsCtrlDown() then selection.ShiftSet = {} - if selection.Map[node] then selection:Remove(node) else selection:Add(node) end + if selection.Map[node] then + selection:Remove(node) + else + selection:Add(node) + end selection.Piviot = node sys.IsRenaming = false elseif not selection.Map[node] then @@ -2285,11 +2758,15 @@ local function main() Explorer.Refresh() end) - sys.OnRelease:Connect(function(item,combo,button) - local ind = table.find(listEntries,item) - if not ind then return end + sys.OnRelease:Connect(function(item, combo, button) + local ind = table.find(listEntries, item) + if not ind then + return + end local node = tree[ind + Explorer.Index] - if not node then return end + if not node then + return + end if button == 1 then if selection.Map[node] and not Lib.IsShiftDown() and not Lib.IsCtrlDown() then @@ -2317,24 +2794,24 @@ local function main() while true do local processed = false local c = 0 - for _,node in next,nodes do + for _, node in next, nodes do if node.HasDel then local delInd - for i = 1,#node do + for i = 1, #node do if node[i].Del then delInd = i break end end if delInd then - for i = delInd+1,#node do + for i = delInd + 1, #node do local cn = node[i] if not cn.Del then node[delInd] = cn - delInd = delInd+1 + delInd = delInd + 1 end end - for i = delInd,#node do + for i = delInd, #node do node[i] = nil end end @@ -2348,7 +2825,9 @@ local function main() fw() end end - if processed and not refreshDebounce then Explorer.PerformRefresh() end + if processed and not refreshDebounce then + Explorer.PerformRefresh() + end fw(0.5) end end) @@ -2368,11 +2847,59 @@ local function main() Explorer.SelectionVisualCons = {} local guiTemplate = create({ - {1,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Size=UDim2.new(0,100,0,100),}}, - {2,"Frame",{BackgroundColor3=Color3.new(0.04313725605607,0.35294118523598,0.68627452850342),BorderSizePixel=0,Parent={1},Position=UDim2.new(0,-1,0,-1),Size=UDim2.new(1,2,0,1),}}, - {3,"Frame",{BackgroundColor3=Color3.new(0.04313725605607,0.35294118523598,0.68627452850342),BorderSizePixel=0,Parent={1},Position=UDim2.new(0,-1,1,0),Size=UDim2.new(1,2,0,1),}}, - {4,"Frame",{BackgroundColor3=Color3.new(0.04313725605607,0.35294118523598,0.68627452850342),BorderSizePixel=0,Parent={1},Position=UDim2.new(0,-1,0,0),Size=UDim2.new(0,1,1,0),}}, - {5,"Frame",{BackgroundColor3=Color3.new(0.04313725605607,0.35294118523598,0.68627452850342),BorderSizePixel=0,Parent={1},Position=UDim2.new(1,0,0,0),Size=UDim2.new(0,1,1,0),}}, + { + 1, + "Frame", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Size = UDim2.fromOffset(100, 100), + }, + }, + { + 2, + "Frame", + { + BackgroundColor3 = Color3.new(0.04313725605607, 0.35294118523598, 0.68627452850342), + BorderSizePixel = 0, + Parent = { 1 }, + Position = UDim2.fromOffset(-1, -1), + Size = UDim2.fromOffset(1, 1), + }, + }, + { + 3, + "Frame", + { + BackgroundColor3 = Color3.new(0.04313725605607, 0.35294118523598, 0.68627452850342), + BorderSizePixel = 0, + Parent = { 1 }, + Position = UDim2.new(0, -1, 1, 0), + Size = UDim2.new(1, 2, 0, 1), + }, + }, + { + 4, + "Frame", + { + BackgroundColor3 = Color3.new(0.04313725605607, 0.35294118523598, 0.68627452850342), + BorderSizePixel = 0, + Parent = { 1 }, + Position = UDim2.fromOffset(-1, 0), + Size = UDim2.new(0, 1, 1, 0), + }, + }, + { + 5, + "Frame", + { + BackgroundColor3 = Color3.new(0.04313725605607, 0.35294118523598, 0.68627452850342), + BorderSizePixel = 0, + Parent = { 1 }, + Position = UDim2.fromScale(1, 0), + Size = UDim2.new(0, 1, 1, 0), + }, + }, }) Explorer.SelectionVisualGui = guiTemplate @@ -2384,19 +2911,21 @@ local function main() holder:ClearAllChildren() -- Updates theme - for i,v in pairs(Explorer.SelectionVisualGui:GetChildren()) do + for i, v in pairs(Explorer.SelectionVisualGui:GetChildren()) do v.BackgroundColor3 = Color3.fromRGB(0, 170, 255) end local attachCons = Explorer.SelectionVisualCons - for i = 1,#attachCons do + for i = 1, #attachCons do attachCons[i].Destroy() end table.clear(attachCons) local partEnabled = Settings.Explorer.PartSelectionBox local guiEnabled = Settings.Explorer.GuiSelectionBox - if not partEnabled and not guiEnabled then return end + if not partEnabled and not guiEnabled then + return + end local svg = Explorer.SelectionVisualGui local svb = Explorer.SelectionVisualBox @@ -2405,19 +2934,21 @@ local function main() local count = 1 local boxCount = 0 local workspaceNode = nodes[workspace] - for i = 1,#sList do - if boxCount > 1000 then break end + for i = 1, #sList do + if boxCount > 1000 then + break + end local node = sList[i] local obj = node.Obj if node ~= workspaceNode then - if isa(obj,"GuiObject") and guiEnabled then + if isa(obj, "GuiObject") and guiEnabled then local newVisual = clone(svg) - attachCons[count] = attachTo(newVisual,{Target = obj, Resize = true}) + attachCons[count] = attachTo(newVisual, { Target = obj, Resize = true }) count = count + 1 newVisual.Parent = holder boxCount = boxCount + 1 - elseif isa(obj,"PVInstance") and partEnabled then + elseif isa(obj, "PVInstance") and partEnabled then local newBox = clone(svb) newBox.Adornee = obj newBox.Parent = holder @@ -2428,7 +2959,7 @@ local function main() end Explorer.Init = function() - Explorer.ClassIcons = Lib.IconMap.newLinear("rbxasset://textures/ClassImages.png",16,16) + Explorer.ClassIcons = Lib.IconMap.newLinear("rbxasset://textures/ClassImages.png", 16, 16) Explorer.MiscIcons = Main.MiscIcons clipboard = {} @@ -2444,25 +2975,147 @@ local function main() Explorer.InitClickToSelect() Explorer.SetSortingEnabled(Settings.Explorer.Sorting) - Explorer.Expanded = setmetatable({},{__mode = "k"}) - Explorer.SearchExpanded = setmetatable({},{__mode = "k"}) + Explorer.Expanded = setmetatable({}, { __mode = "k" }) + Explorer.SearchExpanded = setmetatable({}, { __mode = "k" }) expanded = Explorer.Expanded nilNode.Obj.Name = "Nil Instances" nilNode.Locked = true local explorerItems = create({ - {1,"Folder",{Name="ExplorerItems",}}, - {2,"Frame",{BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),BorderSizePixel=0,Name="ToolBar",Parent={1},Size=UDim2.new(1,0,0,22),}}, - {3,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.1176470592618,0.1176470592618,0.1176470592618),BorderSizePixel=0,Name="SearchFrame",Parent={2},Position=UDim2.new(0,3,0,1),Size=UDim2.new(1,-6,0,18),}}, - {4,"TextBox",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,ClearTextOnFocus=false,Font=3,Name="SearchBox",Parent={3},PlaceholderColor3=Color3.new(0.39215689897537,0.39215689897537,0.39215689897537),PlaceholderText="Search workspace",Position=UDim2.new(0,4,0,0),Size=UDim2.new(1,-24,0,18),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,TextXAlignment=0,}}, - {5,"UICorner",{CornerRadius=UDim.new(0,2),Parent={3},}}, - {6,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Reset",Parent={3},Position=UDim2.new(1,-17,0,1),Size=UDim2.new(0,16,0,16),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,}}, - {7,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://5034718129",ImageColor3=Color3.new(0.39215686917305,0.39215686917305,0.39215686917305),Parent={6},Size=UDim2.new(0,16,0,16),}}, - {8,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Refresh",Parent={2},Position=UDim2.new(1,-20,0,1),Size=UDim2.new(0,18,0,18),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,Visible=false,}}, - {9,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://5642310344",Parent={8},Position=UDim2.new(0,3,0,3),Size=UDim2.new(0,12,0,12),}}, - {10,"Frame",{BackgroundColor3=Color3.new(0.15686275064945,0.15686275064945,0.15686275064945),BorderSizePixel=0,Name="ScrollCorner",Parent={1},Position=UDim2.new(1,-16,1,-16),Size=UDim2.new(0,16,0,16),Visible=false,}}, - {11,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,ClipsDescendants=true,Name="List",Parent={1},Position=UDim2.new(0,0,0,23),Size=UDim2.new(1,0,1,-23),}}, + { 1, "Folder", { Name = "ExplorerItems" } }, + { + 2, + "Frame", + { + BackgroundColor3 = Color3.new(0.20392157137394, 0.20392157137394, 0.20392157137394), + BorderSizePixel = 0, + Name = "ToolBar", + Parent = { 1 }, + Size = UDim2.new(1, 0, 0, 22), + }, + }, + { + 3, + "Frame", + { + BackgroundColor3 = Color3.new(0.14901961386204, 0.14901961386204, 0.14901961386204), + BorderColor3 = Color3.new(0.1176470592618, 0.1176470592618, 0.1176470592618), + BorderSizePixel = 0, + Name = "SearchFrame", + Parent = { 2 }, + Position = UDim2.fromOffset(3, 1), + Size = UDim2.new(1, -6, 0, 18), + }, + }, + { + 4, + "TextBox", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + ClearTextOnFocus = false, + Font = 3, + Name = "SearchBox", + Parent = { 3 }, + PlaceholderColor3 = Color3.new(0.39215689897537, 0.39215689897537, 0.39215689897537), + PlaceholderText = "Search workspace", + Position = UDim2.fromOffset(4, 0), + Size = UDim2.new(1, -24, 0, 18), + Text = "", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + TextXAlignment = 0, + }, + }, + { 5, "UICorner", { CornerRadius = UDim.new(0, 2), Parent = { 3 } } }, + { + 6, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.12549020349979, 0.12549020349979, 0.12549020349979), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "Reset", + Parent = { 3 }, + Position = UDim2.new(1, -17, 0, 1), + Size = UDim2.fromOffset(16, 16), + Text = "", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + }, + }, + { + 7, + "ImageLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Image = "rbxassetid://5034718129", + ImageColor3 = Color3.new(0.39215686917305, 0.39215686917305, 0.39215686917305), + Parent = { 6 }, + Size = UDim2.fromOffset(16, 16), + }, + }, + { + 8, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.12549020349979, 0.12549020349979, 0.12549020349979), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "Refresh", + Parent = { 2 }, + Position = UDim2.new(1, -20, 0, 1), + Size = UDim2.fromOffset(18, 18), + Text = "", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + Visible = false, + }, + }, + { + 9, + "ImageLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Image = "rbxassetid://5642310344", + Parent = { 8 }, + Position = UDim2.fromOffset(3, 3), + Size = UDim2.fromOffset(12, 12), + }, + }, + { + 10, + "Frame", + { + BackgroundColor3 = Color3.new(0.15686275064945, 0.15686275064945, 0.15686275064945), + BorderSizePixel = 0, + Name = "ScrollCorner", + Parent = { 1 }, + Position = UDim2.new(1, -16, 1, -16), + Size = UDim2.fromOffset(16, 16), + Visible = false, + }, + }, + { + 11, + "Frame", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + ClipsDescendants = true, + Name = "List", + Parent = { 1 }, + Position = UDim2.fromOffset(0, 23), + Size = UDim2.new(1, 0, 1, -23), + }, + }, }) toolBar = explorerItems.ToolBar @@ -2471,9 +3124,9 @@ local function main() Explorer.GuiElems.ToolBar = toolBar Explorer.GuiElems.TreeFrame = treeFrame - scrollV = Lib.ScrollBar.new() + scrollV = Lib.ScrollBar.new() scrollV.WheelIncrement = 3 - scrollV.Gui.Position = UDim2.new(1,-16,0,23) + scrollV.Gui.Position = UDim2.new(1, -16, 0, 23) scrollV:SetScrollFrame(treeFrame) scrollV.Scrolled:Connect(function() Explorer.Index = scrollV.Index @@ -2483,7 +3136,7 @@ local function main() scrollH = Lib.ScrollBar.new(true) scrollH.Increment = 5 scrollH.WheelIncrement = Explorer.EntryIndent - scrollH.Gui.Position = UDim2.new(0,0,1,-16) + scrollH.Gui.Position = UDim2.new(0, 0, 1, -16) scrollH.Scrolled:Connect(function() Explorer.Refresh() end) @@ -2491,7 +3144,7 @@ local function main() local window = Lib.Window.new() Explorer.Window = window window:SetTitle("Explorer") - window.GuiElems.Line.Position = UDim2.new(0,0,0,22) + window.GuiElems.Line.Position = UDim2.fromOffset(0, 22) Explorer.InitEntryTemplate() toolBar.Parent = window.GuiElems.Content @@ -2525,15 +3178,18 @@ local function main() Explorer.Update() Explorer.Refresh() end) - window.OnDeactivate:Connect(function() Explorer.Active = false end) - window.OnMinimize:Connect(function() Explorer.Active = false end) + window.OnDeactivate:Connect(function() + Explorer.Active = false + end) + window.OnMinimize:Connect(function() + Explorer.Active = false + end) -- Settings autoUpdateSearch = Settings.Explorer.AutoUpdateSearch - -- Fill in nodes - nodes[game] = {Obj = game} + nodes[game] = { Obj = game } expanded[nodes[game]] = true -- Nil Instances @@ -2545,29 +3201,33 @@ local function main() local insts = getDescendants(game) if Main.Elevated then - for i = 1,#insts do + for i = 1, #insts do local obj = insts[i] - local par = nodes[ffa(obj,"Instance")] - if not par then continue end + local par = nodes[ffa(obj, "Instance")] + if not par then + continue + end local newNode = { Obj = obj, Parent = par, } nodes[obj] = newNode - par[#par+1] = newNode + par[#par + 1] = newNode end else - for i = 1,#insts do + for i = 1, #insts do local obj = insts[i] - local s,parObj = pcall(ffa,obj,"Instance") + local s, parObj = pcall(ffa, obj, "Instance") local par = nodes[parObj] - if not par then continue end + if not par then + continue + end local newNode = { Obj = obj, Parent = par, } nodes[obj] = newNode - par[#par+1] = newNode + par[#par + 1] = newNode end end end @@ -2575,4 +3235,4 @@ local function main() return Explorer end -return {InitDeps = initDeps, InitAfterMain = initAfterMain, Main = main} \ No newline at end of file +return { InitDeps = initDeps, InitAfterMain = initAfterMain, Main = main } From 4f87dbed499dfd5bf5b8f204aac493634c7b1dd3 Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Fri, 28 Nov 2025 00:18:53 -0500 Subject: [PATCH 05/36] Add touch drag scrolling to Explorer for mobile Implemented touch drag scrolling support in the Explorer module to improve mobile usability. The new logic detects touch input within the tree frame and allows users to scroll the list by dragging, with a threshold to distinguish between taps and drags. --- .../main_NewDex/Modules/Explorer.lua | 68 +++++++++++++++++++ 1 file changed, 68 insertions(+) diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Explorer.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Explorer.lua index 0a61c5adf5..b5b4e359de 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Explorer.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Explorer.lua @@ -3133,6 +3133,74 @@ local function main() Explorer.Refresh() end) + -- Add touch drag scrolling for mobile + local touchStarting = false + local dragging = false + local dragStartY = nil + local dragIndexStart = nil + local userInputService = service.UserInputService + local dragThreshold = 10 -- Pixels to move before starting drag (allows taps to select items) + + userInputService.InputBegan:Connect(function(input) + if + input.UserInputType == Enum.UserInputType.Touch + or (input.UserInputType == Enum.UserInputType.MouseButton1 and userInputService.TouchEnabled) + then + -- Check if touch is within treeFrame bounds + local pos = input.Position + local framePos = treeFrame.AbsolutePosition + local frameSize = treeFrame.AbsoluteSize + + if + pos.X >= framePos.X + and pos.X <= framePos.X + frameSize.X + and pos.Y >= framePos.Y + and pos.Y <= framePos.Y + frameSize.Y + then + touchStarting = true + dragging = false + dragStartY = input.Position.Y + dragIndexStart = scrollV.Index + end + end + end) + + userInputService.InputChanged:Connect(function(input) + if + (touchStarting or dragging) + and ( + input.UserInputType == Enum.UserInputType.Touch + or (input.UserInputType == Enum.UserInputType.MouseMovement and userInputService.TouchEnabled) + ) + then + local dragDelta = math.abs(dragStartY - input.Position.Y) + + -- Start dragging if we've moved past the threshold + if not dragging and dragDelta > dragThreshold then + dragging = true + touchStarting = false + end + if dragging then + local signedDelta = dragStartY - input.Position.Y + local scrollSensitivity = 0.15 -- Pixels per list index + local newIndex = math.floor(dragIndexStart + (signedDelta * scrollSensitivity)) + scrollV:ScrollTo(newIndex) + end + end + end) + + userInputService.InputEnded:Connect(function(input) + if + input.UserInputType == Enum.UserInputType.Touch + or input.UserInputType == Enum.UserInputType.MouseButton1 + then + touchStarting = false + dragging = false + dragStartY = nil + dragIndexStart = nil + end + end) + scrollH = Lib.ScrollBar.new(true) scrollH.Increment = 5 scrollH.WheelIncrement = Explorer.EntryIndent From 446c279b633264f12854ecf43fd818f4e2bf7dff Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Fri, 28 Nov 2025 01:26:31 -0500 Subject: [PATCH 06/36] Add support for viewing and managing instance tags This update adds tag support to the properties interface, allowing tags to be displayed and managed alongside attributes. It introduces a new 'Tags' category, displays tags for selected instances, and provides an 'Add Tag' button and tag removal functionality. Various formatting and code style improvements were also made for consistency. --- .../main_NewDex/Modules/Properties.lua | 2139 +++++++++++++---- .../Dex_Client/main_NewDex/init.client.lua | 1163 ++++++--- .../Server/Plugins/ServerNewDex/init.lua | 213 +- test.lua | 256 ++ 4 files changed, 2924 insertions(+), 847 deletions(-) create mode 100644 test.lua diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Properties.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Properties.lua index f796ed6341..b7eaca367b 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Properties.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Properties.lua @@ -1,7 +1,7 @@ --[[ - Properties App Module - - The main properties interface + Properties App Module + + The main properties interface ]] -- ADONIS @@ -9,9 +9,9 @@ local ReplicatedStorage = game:GetService("ReplicatedStorage") local Dex_RemoteFunction = ReplicatedStorage:WaitForChild("NewDex_Event") :: RemoteFunction -- Common Locals -local Main,Lib,Apps,Settings -- Main Containers +local Main, Lib, Apps, Settings -- Main Containers local Explorer, Properties, ScriptViewer, Notebook -- Major Apps -local API,RMD,env,service,plr,create,createSimple -- Main Locals +local API, RMD, env, service, plr, create, createSimple -- Main Locals local function initDeps(data) Main = data.Main @@ -41,10 +41,10 @@ local function main() local window, toolBar, propsFrame local scrollV, scrollH local categoryOrder - local props,viewList,expanded,indexableProps,propEntries,autoUpdateObjs = {},{},{},{},{},{} - local inputBox,inputTextBox,inputProp - local checkboxes,propCons = {},{} - local table,string = table,string + local props, viewList, expanded, indexableProps, propEntries, autoUpdateObjs = {}, {}, {}, {}, {}, {} + local inputBox, inputTextBox, inputProp + local checkboxes, propCons = {}, {} + local table, string = table, string local getPropChangedSignal = game.GetPropertyChangedSignal local getAttributeChangedSignal = game.GetAttributeChangedSignal local isa = game.IsA @@ -62,8 +62,26 @@ local function main() Properties.ClassLists = {} Properties.SearchText = "" - Properties.AddAttributeProp = {Category = "Attributes", Class = "", Name = "", SpecialRow = "AddAttribute", Tags = {}} - Properties.SoundPreviewProp = {Category = "Data", ValueType = {Name = "SoundPlayer"}, Class = "Sound", Name = "Preview", Tags = {}, IsSoundPreview = true,} + Properties.ViewTagsProp = { + Name = "Add Tag...", + DisplayName = "Add Tag...", + Category = "Tags", + Class = "Instance", + ValueType = { Name = "string", Category = "Primitive" }, + Tags = {}, + SpecialRow = "AddTag", + IsAddTagButton = true, + } + Properties.AddAttributeProp = + { Category = "Attributes", Class = "", Name = "", SpecialRow = "AddAttribute", Tags = {} } + Properties.SoundPreviewProp = { + Category = "Data", + ValueType = { Name = "SoundPlayer" }, + Class = "Sound", + Name = "Preview", + Tags = {}, + IsSoundPreview = true, + } -- silencer Properties.Refresh = nil @@ -76,8 +94,9 @@ local function main() Properties.NewPropEntry = nil Properties.GetSoundPreviewEntry = nil Properties.SetSoundPreview = nil - Properties.DisplayAttributeContext = nil + Properties.DisplayAttributeContext = nil Properties.DisplayAddAttributeWindow = nil + Properties.DisplayAddTagWindow = nil Properties.IsTextEditable = nil Properties.DisplayEnumDropdown = nil Properties.DisplayBrickColorEditor = nil @@ -113,8 +132,8 @@ local function main() ["PrivateServerId"] = true, ["PrivateServerOwnerId"] = true, ["VIPServerId"] = true, - ["VIPServerOwnerId"] = true - } + ["VIPServerOwnerId"] = true, + }, } Properties.ExpandableTypes = { @@ -133,36 +152,58 @@ local function main() Properties.ExpandableProps = { ["Sound.SoundId"] = true, - ["AudioPlayer.Asset"] = true + ["AudioPlayer.Asset"] = true, } - Properties.CollapsedCategories = { ["Surface Inputs"] = true, - ["Surface"] = true + ["Surface"] = true, } Properties.ConflictSubProps = { - ["Vector2"] = {"X","Y"}, - ["Vector3"] = {"X","Y","Z"}, - ["UDim"] = {"Scale","Offset"}, - ["UDim2"] = {"X","X.Scale","X.Offset","Y","Y.Scale","Y.Offset"}, - ["CFrame"] = {"Position","Position.X","Position.Y","Position.Z", - "RightVector","RightVector.X","RightVector.Y","RightVector.Z", - "UpVector","UpVector.X","UpVector.Y","UpVector.Z", - "LookVector","LookVector.X","LookVector.Y","LookVector.Z"}, - ["Rect"] = {"Min.X","Min.Y","Max.X","Max.Y"}, - ["PhysicalProperties"] = {"Density","Elasticity","ElasticityWeight","Friction","FrictionWeight"}, - ["Ray"] = {"Origin","Origin.X","Origin.Y","Origin.Z","Direction","Direction.X","Direction.Y","Direction.Z"}, - ["NumberRange"] = {"Min","Max"}, - ["Faces"] = {"Back","Bottom","Front","Left","Right","Top"}, - ["Axes"] = {"X","Y","Z"} + ["Vector2"] = { "X", "Y" }, + ["Vector3"] = { "X", "Y", "Z" }, + ["UDim"] = { "Scale", "Offset" }, + ["UDim2"] = { "X", "X.Scale", "X.Offset", "Y", "Y.Scale", "Y.Offset" }, + ["CFrame"] = { + "Position", + "Position.X", + "Position.Y", + "Position.Z", + "RightVector", + "RightVector.X", + "RightVector.Y", + "RightVector.Z", + "UpVector", + "UpVector.X", + "UpVector.Y", + "UpVector.Z", + "LookVector", + "LookVector.X", + "LookVector.Y", + "LookVector.Z", + }, + ["Rect"] = { "Min.X", "Min.Y", "Max.X", "Max.Y" }, + ["PhysicalProperties"] = { "Density", "Elasticity", "ElasticityWeight", "Friction", "FrictionWeight" }, + ["Ray"] = { + "Origin", + "Origin.X", + "Origin.Y", + "Origin.Z", + "Direction", + "Direction.X", + "Direction.Y", + "Direction.Z", + }, + ["NumberRange"] = { "Min", "Max" }, + ["Faces"] = { "Back", "Bottom", "Front", "Left", "Right", "Top" }, + ["Axes"] = { "X", "Y", "Z" }, } Properties.ConflictIgnore = { ["BasePart"] = { - ["ResizableFaces"] = true - } + ["ResizableFaces"] = true, + }, } Properties.RoundableTypes = { @@ -178,40 +219,54 @@ local function main() ["NumberSequence"] = true, ["ColorSequence"] = true, ["Ray"] = true, - ["CFrame"] = true + ["CFrame"] = true, } Properties.TypeNameConvert = { ["number"] = "double", - ["boolean"] = "bool" + ["boolean"] = "bool", } Properties.ToNumberTypes = { ["int"] = true, ["int64"] = true, ["float"] = true, - ["double"] = true + ["double"] = true, } Properties.DefaultPropValue = { string = "", bool = false, double = 0, - UDim = UDim.new(0,0), - UDim2 = UDim2.new(0,0,0,0), + UDim = UDim.new(0, 0), + UDim2 = UDim2.new(0, 0, 0, 0), BrickColor = BrickColor.new("Medium stone grey"), - Color3 = Color3.new(1,1,1), - Vector2 = Vector2.new(0,0), - Vector3 = Vector3.new(0,0,0), + Color3 = Color3.new(1, 1, 1), + Vector2 = Vector2.new(0, 0), + Vector3 = Vector3.new(0, 0, 0), NumberSequence = NumberSequence.new(1), - ColorSequence = ColorSequence.new(Color3.new(1,1,1)), + ColorSequence = ColorSequence.new(Color3.new(1, 1, 1)), NumberRange = NumberRange.new(0), - Rect = Rect.new(0,0,0,0) + Rect = Rect.new(0, 0, 0, 0), } - Properties.AllowedAttributeTypes = {"string","boolean","number","UDim","UDim2","BrickColor","Color3","Vector2","Vector3","NumberSequence","ColorSequence","NumberRange","Rect"} + Properties.AllowedAttributeTypes = { + "string", + "boolean", + "number", + "UDim", + "UDim2", + "BrickColor", + "Color3", + "Vector2", + "Vector3", + "NumberSequence", + "ColorSequence", + "NumberRange", + "Rect", + } - Properties.StringToValue = function(prop,str) + Properties.StringToValue = function(prop, str) local typeData = prop.ValueType local typeName = typeData.Name @@ -221,62 +276,85 @@ local function main() return tonumber(str) elseif typeName == "Vector2" then local vals = str:split(",") - local x,y = tonumber(vals[1]),tonumber(vals[2]) - if x and y and #vals >= 2 then return Vector2.new(x,y) end + local x, y = tonumber(vals[1]), tonumber(vals[2]) + if x and y and #vals >= 2 then + return Vector2.new(x, y) + end elseif typeName == "Vector3" then local vals = str:split(",") - local x,y,z = tonumber(vals[1]),tonumber(vals[2]),tonumber(vals[3]) - if x and y and z and #vals >= 3 then return Vector3.new(x,y,z) end + local x, y, z = tonumber(vals[1]), tonumber(vals[2]), tonumber(vals[3]) + if x and y and z and #vals >= 3 then + return Vector3.new(x, y, z) + end elseif typeName == "UDim" then local vals = str:split(",") - local scale,offset = tonumber(vals[1]),tonumber(vals[2]) - if scale and offset and #vals >= 2 then return UDim.new(scale,offset) end + local scale, offset = tonumber(vals[1]), tonumber(vals[2]) + if scale and offset and #vals >= 2 then + return UDim.new(scale, offset) + end elseif typeName == "UDim2" then - local vals = str:gsub("[{}]",""):split(",") - local xScale,xOffset,yScale,yOffset = tonumber(vals[1]),tonumber(vals[2]),tonumber(vals[3]),tonumber(vals[4]) - if xScale and xOffset and yScale and yOffset and #vals >= 4 then return UDim2.new(xScale,xOffset,yScale,yOffset) end + local vals = str:gsub("[{}]", ""):split(",") + local xScale, xOffset, yScale, yOffset = + tonumber(vals[1]), tonumber(vals[2]), tonumber(vals[3]), tonumber(vals[4]) + if xScale and xOffset and yScale and yOffset and #vals >= 4 then + return UDim2.new(xScale, xOffset, yScale, yOffset) + end elseif typeName == "CFrame" then local vals = str:split(",") - local s,result = pcall(CFrame.new,unpack(vals)) - if s and #vals >= 12 then return result end + local s, result = pcall(CFrame.new, unpack(vals)) + if s and #vals >= 12 then + return result + end elseif typeName == "Rect" then local vals = str:split(",") - local s,result = pcall(Rect.new,unpack(vals)) - if s and #vals >= 4 then return result end + local s, result = pcall(Rect.new, unpack(vals)) + if s and #vals >= 4 then + return result + end elseif typeName == "Ray" then - local vals = str:gsub("[{}]",""):split(",") - local s,origin = pcall(Vector3.new,unpack(vals,1,3)) - local s2,direction = pcall(Vector3.new,unpack(vals,4,6)) - if s and s2 and #vals >= 6 then return Ray.new(origin,direction) end + local vals = str:gsub("[{}]", ""):split(",") + local s, origin = pcall(Vector3.new, unpack(vals, 1, 3)) + local s2, direction = pcall(Vector3.new, unpack(vals, 4, 6)) + if s and s2 and #vals >= 6 then + return Ray.new(origin, direction) + end elseif typeName == "NumberRange" then local vals = str:split(",") - local s,result = pcall(NumberRange.new,unpack(vals)) - if s and #vals >= 1 then return result end + local s, result = pcall(NumberRange.new, unpack(vals)) + if s and #vals >= 1 then + return result + end elseif typeName == "Color3" then - local vals = str:gsub("[{}]",""):split(",") - local s,result = pcall(Color3.fromRGB,unpack(vals)) - if s and #vals >= 3 then return result end + local vals = str:gsub("[{}]", ""):split(",") + local s, result = pcall(Color3.fromRGB, unpack(vals)) + if s and #vals >= 3 then + return result + end end return nil end - Properties.ValueToString = function(prop,val) + Properties.ValueToString = function(prop, val) local typeData = prop.ValueType local typeName = typeData.Name if typeName == "Color3" then return Lib.ColorToBytes(val) elseif typeName == "NumberRange" then - return val.Min..", "..val.Max + return val.Min .. ", " .. val.Max end return tostring(val) end - Properties.GetIndexableProps = function(obj,classData) + Properties.GetIndexableProps = function(obj, classData) if not Main.Elevated then - if not pcall(function() return obj.ClassName end) then return nil end + if not pcall(function() + return obj.ClassName + end) then + return nil + end end local ignoreProps = Properties.IgnoreProps[classData.Name] or {} @@ -284,10 +362,12 @@ local function main() local result = {} local count = 1 local props = classData.Properties - for i = 1,#props do + for i = 1, #props do local prop = props[i] if not ignoreProps[prop.Name] then - local s = pcall(function() return obj[prop.Name] end) + local s = pcall(function() + return obj[prop.Name] + end) if s then result[count] = prop count = count + 1 @@ -315,27 +395,27 @@ local function main() local t_clear = table.clear local conflictIgnore = Properties.ConflictIgnore local conflictMap = {} - local propList = p and {p} or props + local propList = p and { p } or props if p then - local gName = p.Class.."."..p.Name + local gName = p.Class .. "." .. p.Name autoUpdateObjs[gName] = nil local subProps = Properties.ConflictSubProps[p.ValueType.Name] or {} - for i = 1,#subProps do - autoUpdateObjs[gName.."."..subProps[i]] = nil + for i = 1, #subProps do + autoUpdateObjs[gName .. "." .. subProps[i]] = nil end else table.clear(autoUpdateObjs) end if #sList > 0 then - for i = 1,#propList do + for i = 1, #propList do local prop = propList[i] - local propName,propClass = prop.Name,prop.Class + local propName, propClass = prop.Name, prop.Class local typeData = prop.RootType or prop.ValueType local typeName = typeData.Name local attributeName = prop.AttributeName - local gName = propClass.."."..propName + local gName = propClass .. "." .. propName local checked = 0 local subProps = Properties.ConflictSubProps[typeName] or {} @@ -350,31 +430,55 @@ local function main() t_clear(conflictMap) + -- safeRead: return the object's property value safely, but skip Dex "virtual" props (Tags / AddTag) + local function safeRead(o, name, p) + -- If there's no object, nothing to read + if not o then + return nil + end + + -- If prop table indicates it's a tag or the Add Tag pseudo-row, skip reading from the instance. + -- This avoids Roblox attempting `instance["Add Tag..."]` which errors. + if p and (p.IsTag or p.IsAddTagButton or p.SpecialRow == "AddTag" or p.Category == "Tags") then + return nil + end + + -- Otherwise do a protected read + local ok, res = pcall(function() + return o[name] + end) + return ok and res or nil + end + if not isMultiType then - local firstVal,firstObj,firstSet + local firstVal, firstObj, firstSet local classList = classLists[prop.Class] or {} - for c = 1,#classList do + for c = 1, #classList do local obj = classList[c] if not firstSet then if isAttribute then - firstVal = getAttribute(obj,attributeName) + firstVal = getAttribute(obj, attributeName) if firstVal ~= nil then firstObj = obj firstSet = true end else - firstVal = obj[propName] + firstVal = safeRead(obj, propName, prop) firstObj = obj firstSet = true end - if ignored then break end + if ignored then + break + end else - local propVal,skip + local propVal, skip if isAttribute then - propVal = getAttribute(obj,attributeName) - if propVal == nil then skip = true end + propVal = getAttribute(obj, attributeName) + if propVal == nil then + skip = true + end else - propVal = obj[propName] + propVal = safeRead(obj, propName, prop) end if not skip then @@ -391,15 +495,20 @@ local function main() end if subPropCount > 0 then - for sPropInd = 1,subPropCount do + for sPropInd = 1, subPropCount do local indexes = indexNames[sPropInd] - if not indexes then indexes = stringSplit(subProps[sPropInd],".") indexNames[sPropInd] = indexes end + if not indexes then + indexes = stringSplit(subProps[sPropInd], ".") + indexNames[sPropInd] = indexes + end local firstValSub = firstVal local propValSub = propVal - for j = 1,#indexes do - if not firstValSub or not propValSub then break end -- PhysicalProperties + for j = 1, #indexes do + if not firstValSub or not propValSub then + break + end -- PhysicalProperties local indexName = indexes[j] firstValSub = firstValSub[indexName] propValSub = propValSub[indexName] @@ -413,18 +522,24 @@ local function main() end end - if conflictsFound == toCheck then break end + if conflictsFound == toCheck then + break + end end end checked = checked + 1 - if checked == maxConflictCheck then break end + if checked == maxConflictCheck then + break + end end - if not conflictMap[1] then autoUpdateObjs[gName] = firstObj end - for sPropInd = 1,subPropCount do - if not conflictMap[sPropInd+1] then - autoUpdateObjs[gName.."."..subProps[sPropInd]] = firstObj + if not conflictMap[1] then + autoUpdateObjs[gName] = firstObj + end + for sPropInd = 1, subPropCount do + if not conflictMap[sPropInd + 1] then + autoUpdateObjs[gName .. "." .. subProps[sPropInd]] = firstObj end end end @@ -443,7 +558,7 @@ local function main() local foundClasses = {} local propCount = 1 local elevated = Main.Elevated - local showDeprecated,showHidden = Settings.Properties.ShowDeprecated,Settings.Properties.ShowHidden + local showDeprecated, showHidden = Settings.Properties.ShowDeprecated, Settings.Properties.ShowHidden local Classes = API.Classes local classLists = {} local lower = string.lower @@ -458,20 +573,26 @@ local function main() table.clear(props) - for i = 1,#sList do + for i = 1, #sList do local node = sList[i] local obj = node.Obj local class = node.Class - if not class then class = obj.ClassName node.Class = class end + if not class then + class = obj.ClassName + node.Class = class + end local apiClass = Classes[class] while apiClass do local APIClassName = apiClass.Name if not foundClasses[APIClassName] then local apiProps = indexableProps[APIClassName] - if not apiProps then apiProps = Properties.GetIndexableProps(obj,apiClass) indexableProps[APIClassName] = apiProps end + if not apiProps then + apiProps = Properties.GetIndexableProps(obj, apiClass) + indexableProps[APIClassName] = apiProps + end - for i = 1,#apiProps do + for i = 1, #apiProps do local prop = apiProps[i] local tags = prop.Tags if (not tags.Deprecated or showDeprecated) and (not tags.Hidden or showHidden) then @@ -483,35 +604,77 @@ local function main() end local classList = classLists[APIClassName] - if not classList then classList = {} classLists[APIClassName] = classList end - classList[#classList+1] = obj + if not classList then + classList = {} + classLists[APIClassName] = classList + end + classList[#classList + 1] = obj apiClass = apiClass.Superclass end if showingAttrs and attrCount < maxAttrs then local attrs = getAttributes(obj) - for name,val in pairs(attrs) do + for name, val in pairs(attrs) do local typ = typeof(val) if not foundAttrs[name] then local category = (typ == "Instance" and "Class") or (typ == "EnumItem" and "Enum") or "Other" - local valType = {Name = typeNameConvert[typ] or typ, Category = category} - local attrProp = {IsAttribute = true, Name = "ATTR_"..name, AttributeName = name, DisplayName = name, Class = "Instance", ValueType = valType, Category = "Attributes", Tags = {}} + local valType = { Name = typeNameConvert[typ] or typ, Category = category } + local attrProp = { + IsAttribute = true, + Name = "ATTR_" .. name, + AttributeName = name, + DisplayName = name, + Class = "Instance", + ValueType = valType, + Category = "Attributes", + Tags = {}, + } props[propCount] = attrProp propCount = propCount + 1 attrCount = attrCount + 1 - foundAttrs[name] = {typ,attrProp} - if attrCount == maxAttrs then break end + foundAttrs[name] = { typ, attrProp } + if attrCount == maxAttrs then + break + end elseif foundAttrs[name][1] ~= typ then foundAttrs[name][2].MultiType = true foundAttrs[name][2].Tags.ReadOnly = true - foundAttrs[name][2].ValueType = {Name = "string"} + foundAttrs[name][2].ValueType = { Name = "string" } end end end end - table.sort(props,function(a,b) + -- Gather tags from selected instances + if Settings.Properties.ShowTags then + for i = 1, #sList do + local obj = sList[i].Obj + local tags = obj:GetTags() + + for _, tagName in ipairs(tags) do + local tagProp = { + Name = "TAG_" .. tagName, + DisplayName = tagName, + Class = obj.ClassName, + ValueType = { Name = "string", Category = "Primitive" }, + Category = "Tags", + Tags = {}, + IsTag = true, + TagName = tagName, + Depth = 1, + } + props[propCount] = tagProp + propCount = propCount + 1 + end + end + + -- Add "Add Tag" button + props[propCount] = Properties.ViewTagsProp + propCount = propCount + 1 + end + + table.sort(props, function(a, b) if a.Category ~= b.Category then return (categoryOrder[a.Category] or 9999) < (categoryOrder[b.Category] or 9999) else @@ -530,7 +693,7 @@ local function main() Properties.ComputeConflicts() --warn("CONFLICT",tick()-start) if #props > 0 then - props[#props+1] = Properties.AddAttributeProp + props[#props + 1] = Properties.AddAttributeProp end Properties.Update() @@ -551,7 +714,7 @@ local function main() scrollH.Gui.Visible = Settings.Properties.ScaleType == 0 and totalWidth > maxX local oldSize = propsFrame.Size - propsFrame.Size = UDim2.new(1,(scrollV.Gui.Visible and -16 or 0),1,(scrollH.Gui.Visible and -39 or -23)) + propsFrame.Size = UDim2.new(1, (scrollV.Gui.Visible and -16 or 0), 1, (scrollH.Gui.Visible and -39 or -23)) if oldSize ~= propsFrame.Size then Properties.UpdateView() else @@ -559,12 +722,12 @@ local function main() scrollH:Update() if scrollV.Gui.Visible and scrollH.Gui.Visible then - scrollV.Gui.Size = UDim2.new(0,16,1,-39) - scrollH.Gui.Size = UDim2.new(1,-16,0,16) + scrollV.Gui.Size = UDim2.new(0, 16, 1, -39) + scrollH.Gui.Size = UDim2.new(1, -16, 0, 16) Properties.Window.GuiElems.Content.ScrollCorner.Visible = true else - scrollV.Gui.Size = UDim2.new(0,16,1,-23) - scrollH.Gui.Size = UDim2.new(1,0,0,16) + scrollV.Gui.Size = UDim2.new(0, 16, 1, -23) + scrollH.Gui.Size = UDim2.new(1, 0, 0, 16) Properties.Window.GuiElems.Content.ScrollCorner.Visible = false end @@ -572,14 +735,14 @@ local function main() end end - Properties.MakeSubProp = function(prop,subName,valueType,displayName) + Properties.MakeSubProp = function(prop, subName, valueType, displayName) local subProp = {} - for i,v in pairs(prop) do + for i, v in pairs(prop) do subProp[i] = v end subProp.RootType = subProp.RootType or subProp.ValueType subProp.ValueType = valueType - subProp.SubName = subProp.SubName and (subProp.SubName..subName) or subName + subProp.SubName = subProp.SubName and (subProp.SubName .. subName) or subName subProp.DisplayName = displayName return subProp @@ -592,64 +755,66 @@ local function main() local makeSubProp = Properties.MakeSubProp if typeName == "Vector2" then - result[1] = makeSubProp(prop,".X",{Name = "float"}) - result[2] = makeSubProp(prop,".Y",{Name = "float"}) + result[1] = makeSubProp(prop, ".X", { Name = "float" }) + result[2] = makeSubProp(prop, ".Y", { Name = "float" }) elseif typeName == "Vector3" then - result[1] = makeSubProp(prop,".X",{Name = "float"}) - result[2] = makeSubProp(prop,".Y",{Name = "float"}) - result[3] = makeSubProp(prop,".Z",{Name = "float"}) + result[1] = makeSubProp(prop, ".X", { Name = "float" }) + result[2] = makeSubProp(prop, ".Y", { Name = "float" }) + result[3] = makeSubProp(prop, ".Z", { Name = "float" }) elseif typeName == "CFrame" then - result[1] = makeSubProp(prop,".Position",{Name = "Vector3"}) - result[2] = makeSubProp(prop,".RightVector",{Name = "Vector3"}) - result[3] = makeSubProp(prop,".UpVector",{Name = "Vector3"}) - result[4] = makeSubProp(prop,".LookVector",{Name = "Vector3"}) + result[1] = makeSubProp(prop, ".Position", { Name = "Vector3" }) + result[2] = makeSubProp(prop, ".RightVector", { Name = "Vector3" }) + result[3] = makeSubProp(prop, ".UpVector", { Name = "Vector3" }) + result[4] = makeSubProp(prop, ".LookVector", { Name = "Vector3" }) elseif typeName == "UDim" then - result[1] = makeSubProp(prop,".Scale",{Name = "float"}) - result[2] = makeSubProp(prop,".Offset",{Name = "int"}) + result[1] = makeSubProp(prop, ".Scale", { Name = "float" }) + result[2] = makeSubProp(prop, ".Offset", { Name = "int" }) elseif typeName == "UDim2" then - result[1] = makeSubProp(prop,".X",{Name = "UDim"}) - result[2] = makeSubProp(prop,".Y",{Name = "UDim"}) + result[1] = makeSubProp(prop, ".X", { Name = "UDim" }) + result[2] = makeSubProp(prop, ".Y", { Name = "UDim" }) elseif typeName == "Rect" then - result[1] = makeSubProp(prop,".Min.X",{Name = "float"},"X0") - result[2] = makeSubProp(prop,".Min.Y",{Name = "float"},"Y0") - result[3] = makeSubProp(prop,".Max.X",{Name = "float"},"X1") - result[4] = makeSubProp(prop,".Max.Y",{Name = "float"},"Y1") + result[1] = makeSubProp(prop, ".Min.X", { Name = "float" }, "X0") + result[2] = makeSubProp(prop, ".Min.Y", { Name = "float" }, "Y0") + result[3] = makeSubProp(prop, ".Max.X", { Name = "float" }, "X1") + result[4] = makeSubProp(prop, ".Max.Y", { Name = "float" }, "Y1") elseif typeName == "PhysicalProperties" then - result[1] = makeSubProp(prop,".Density",{Name = "float"}) - result[2] = makeSubProp(prop,".Elasticity",{Name = "float"}) - result[3] = makeSubProp(prop,".ElasticityWeight",{Name = "float"}) - result[4] = makeSubProp(prop,".Friction",{Name = "float"}) - result[5] = makeSubProp(prop,".FrictionWeight",{Name = "float"}) + result[1] = makeSubProp(prop, ".Density", { Name = "float" }) + result[2] = makeSubProp(prop, ".Elasticity", { Name = "float" }) + result[3] = makeSubProp(prop, ".ElasticityWeight", { Name = "float" }) + result[4] = makeSubProp(prop, ".Friction", { Name = "float" }) + result[5] = makeSubProp(prop, ".FrictionWeight", { Name = "float" }) elseif typeName == "Ray" then - result[1] = makeSubProp(prop,".Origin",{Name = "Vector3"}) - result[2] = makeSubProp(prop,".Direction",{Name = "Vector3"}) + result[1] = makeSubProp(prop, ".Origin", { Name = "Vector3" }) + result[2] = makeSubProp(prop, ".Direction", { Name = "Vector3" }) elseif typeName == "NumberRange" then - result[1] = makeSubProp(prop,".Min",{Name = "float"}) - result[2] = makeSubProp(prop,".Max",{Name = "float"}) + result[1] = makeSubProp(prop, ".Min", { Name = "float" }) + result[2] = makeSubProp(prop, ".Max", { Name = "float" }) elseif typeName == "Faces" then - result[1] = makeSubProp(prop,".Back",{Name = "bool"}) - result[2] = makeSubProp(prop,".Bottom",{Name = "bool"}) - result[3] = makeSubProp(prop,".Front",{Name = "bool"}) - result[4] = makeSubProp(prop,".Left",{Name = "bool"}) - result[5] = makeSubProp(prop,".Right",{Name = "bool"}) - result[6] = makeSubProp(prop,".Top",{Name = "bool"}) + result[1] = makeSubProp(prop, ".Back", { Name = "bool" }) + result[2] = makeSubProp(prop, ".Bottom", { Name = "bool" }) + result[3] = makeSubProp(prop, ".Front", { Name = "bool" }) + result[4] = makeSubProp(prop, ".Left", { Name = "bool" }) + result[5] = makeSubProp(prop, ".Right", { Name = "bool" }) + result[6] = makeSubProp(prop, ".Top", { Name = "bool" }) elseif typeName == "Axes" then - result[1] = makeSubProp(prop,".X",{Name = "bool"}) - result[2] = makeSubProp(prop,".Y",{Name = "bool"}) - result[3] = makeSubProp(prop,".Z",{Name = "bool"}) + result[1] = makeSubProp(prop, ".X", { Name = "bool" }) + result[2] = makeSubProp(prop, ".Y", { Name = "bool" }) + result[3] = makeSubProp(prop, ".Z", { Name = "bool" }) end - if (prop.Name == "SoundId" and prop.Class == "Sound") or (prop.Name == "Asset" and prop.Class == "AudioPlayer") then + if + (prop.Name == "SoundId" and prop.Class == "Sound") or (prop.Name == "Asset" and prop.Class == "AudioPlayer") + then local preview = {} local preview = {} - for k,v in pairs(Properties.SoundPreviewProp) do preview[k] = v end + for k, v in pairs(Properties.SoundPreviewProp) do + preview[k] = v + end preview.Class = prop.Class preview.Category = prop.Category - preview.IsSoundPreview = true + preview.IsSoundPreview = true result[1] = preview - end - return result end @@ -660,20 +825,20 @@ local function main() local nameWidthCache = Properties.NameWidthCache local lastCategory local count = 1 - local maxWidth,maxDepth = 0,1 + local maxWidth, maxDepth = 0, 1 local textServ = service.TextService local getTextSize = textServ.GetTextSize local font = Enum.Font.SourceSans - local size = Vector2.new(math.huge,20) + local size = Vector2.new(math.huge, 20) local stringSplit = string.split local entryIndent = Properties.EntryIndent local isFirstScaleType = Settings.Properties.ScaleType == 0 - local find,lower = string.find,string.lower + local find, lower = string.find, string.lower local searchText = (#Properties.SearchText > 0 and lower(Properties.SearchText)) - local function recur(props,depth) - for i = 1,#props do + local function recur(props, depth) + for i = 1, #props do local prop = props[i] local propName = prop.Name local subName = prop.SubName @@ -681,7 +846,7 @@ local function main() local visible if searchText and depth == 1 then - if find(lower(propName),searchText,1,true) then + if find(lower(propName), searchText, 1, true) then visible = true end else @@ -689,22 +854,30 @@ local function main() end if visible and lastCategory ~= category then - viewList[count] = {CategoryName = category} + viewList[count] = { CategoryName = category } count = count + 1 lastCategory = category end - if (expanded["CAT_"..category] and visible) or prop.SpecialRow then - if depth > 1 then prop.Depth = depth if depth > maxDepth then maxDepth = depth end end + if (expanded["CAT_" .. category] and visible) or prop.SpecialRow then + if depth > 1 then + prop.Depth = depth + if depth > maxDepth then + maxDepth = depth + end + end if isFirstScaleType then - local nameArr = subName and stringSplit(subName,".") + local nameArr = subName and stringSplit(subName, ".") local displayName = prop.DisplayName or (nameArr and nameArr[#nameArr]) or propName local nameWidth = nameWidthCache[displayName] - if not nameWidth then nameWidth = getTextSize(textServ,displayName,14,font,size).X nameWidthCache[displayName] = nameWidth end + if not nameWidth then + nameWidth = getTextSize(textServ, displayName, 14, font, size).X + nameWidthCache[displayName] = nameWidth + end - local totalWidth = nameWidth + entryIndent*depth + local totalWidth = nameWidth + entryIndent * depth if totalWidth > maxWidth then maxWidth = totalWidth end @@ -713,18 +886,18 @@ local function main() viewList[count] = prop count = count + 1 - local fullName = prop.Class.."."..prop.Name..(prop.SubName or "") - if expanded[fullName] then - local nextDepth = depth+1 + local fullName = prop.Class .. "." .. prop.Name .. (prop.SubName or "") + if not prop.IsTag and expanded[fullName] then + local nextDepth = depth + 1 local expandedProps = Properties.GetExpandedProps(prop) if #expandedProps > 0 then - recur(expandedProps,nextDepth) + recur(expandedProps, nextDepth) end end end end end - recur(props,1) + recur(props, 1) inputProp = nil Properties.ViewWidth = maxWidth + 9 + Properties.EntryOffset @@ -736,50 +909,70 @@ local function main() local nameFrame = newEntry.NameFrame local valueFrame = newEntry.ValueFrame local newCheckbox = Lib.Checkbox.new(0) - newCheckbox.Gui.Position = UDim2.new(0,3,0,3) + newCheckbox.Gui.Position = UDim2.new(0, 3, 0, 3) newCheckbox.Gui.Parent = valueFrame newCheckbox.OnInput:Connect(function() local prop = viewList[index + Properties.Index] - if not prop then return end + if not prop then + return + end if prop.ValueType.Name == "PhysicalProperties" then - Properties.SetProp(prop,newCheckbox.Toggled and true or nil) + Properties.SetProp(prop, newCheckbox.Toggled and true or nil) else - Properties.SetProp(prop,newCheckbox.Toggled) + Properties.SetProp(prop, newCheckbox.Toggled) end end) checkboxes[index] = newCheckbox local iconFrame = Main.MiscIcons:GetLabel() - iconFrame.Position = UDim2.new(0,2,0,3) + iconFrame.Position = UDim2.new(0, 2, 0, 3) iconFrame.Parent = newEntry.ValueFrame.RightButton - newEntry.Position = UDim2.new(0,0,0,23*(index-1)) + newEntry.Position = UDim2.new(0, 0, 0, 23 * (index - 1)) nameFrame.Expand.InputBegan:Connect(function(input) local prop = viewList[index + Properties.Index] - if not prop or input.UserInputType ~= Enum.UserInputType.MouseMovement then return end + if not prop or input.UserInputType ~= Enum.UserInputType.MouseMovement then + return + end - local fullName = (prop.CategoryName and "CAT_"..prop.CategoryName) or prop.Class.."."..prop.Name..(prop.SubName or "") + local fullName = (prop.CategoryName and "CAT_" .. prop.CategoryName) + or prop.Class .. "." .. prop.Name .. (prop.SubName or "") - Main.MiscIcons:DisplayByKey(newEntry.NameFrame.Expand.Icon, expanded[fullName] and "Collapse_Over" or "Expand_Over") + Main.MiscIcons:DisplayByKey( + newEntry.NameFrame.Expand.Icon, + expanded[fullName] and "Collapse_Over" or "Expand_Over" + ) end) nameFrame.Expand.InputEnded:Connect(function(input) local prop = viewList[index + Properties.Index] - if not prop or input.UserInputType ~= Enum.UserInputType.MouseMovement then return end + if not prop or input.UserInputType ~= Enum.UserInputType.MouseMovement then + return + end - local fullName = (prop.CategoryName and "CAT_"..prop.CategoryName) or prop.Class.."."..prop.Name..(prop.SubName or "") + local fullName = (prop.CategoryName and "CAT_" .. prop.CategoryName) + or prop.Class .. "." .. prop.Name .. (prop.SubName or "") Main.MiscIcons:DisplayByKey(newEntry.NameFrame.Expand.Icon, expanded[fullName] and "Collapse" or "Expand") end) nameFrame.Expand.MouseButton1Down:Connect(function() local prop = viewList[index + Properties.Index] - if not prop then return end + if not prop then + return + end - local fullName = (prop.CategoryName and "CAT_"..prop.CategoryName) or prop.Class.."."..prop.Name..(prop.SubName or "") - if not prop.CategoryName and not Properties.ExpandableTypes[prop.ValueType and prop.ValueType.Name] and not Properties.ExpandableProps[fullName] then return end + local fullName = (prop.CategoryName and "CAT_" .. prop.CategoryName) + or prop.Class .. "." .. prop.Name .. (prop.SubName or "") + if + not prop.CategoryName + and not Properties.ExpandableTypes[prop.ValueType and prop.ValueType.Name] + and not Properties.ExpandableProps[fullName] + then + return + end expanded[fullName] = not expanded[fullName] Properties.Update() @@ -788,19 +981,22 @@ local function main() nameFrame.PropName.InputBegan:Connect(function(input) local prop = viewList[index + Properties.Index] - if not prop then return end + if not prop then + return + end if input.UserInputType == Enum.UserInputType.MouseMovement and not nameFrame.PropName.TextFits then - local fullNameFrame = Properties.FullNameFrame - local nameArr = string.split(prop.Class.."."..prop.Name..(prop.SubName or ""),".") + local fullNameFrame = Properties.FullNameFrame + local nameArr = string.split(prop.Class .. "." .. prop.Name .. (prop.SubName or ""), ".") local dispName = prop.DisplayName or nameArr[#nameArr] - local sizeX = service.TextService:GetTextSize(dispName,14,Enum.Font.SourceSans,Vector2.new(math.huge,20)).X + local sizeX = + service.TextService:GetTextSize(dispName, 14, Enum.Font.SourceSans, Vector2.new(math.huge, 20)).X fullNameFrame.TextLabel.Text = dispName --fullNameFrame.Position = UDim2.new(0,Properties.EntryIndent*(prop.Depth or 1) + Properties.EntryOffset,0,23*(index-1)) - fullNameFrame.Size = UDim2.new(0,sizeX + 4,0,22) + fullNameFrame.Size = UDim2.new(0, sizeX + 4, 0, 22) fullNameFrame.Visible = true Properties.FullNameFrameIndex = index - Properties.FullNameFrameAttach.SetData(fullNameFrame, {Target = nameFrame}) + Properties.FullNameFrameAttach.SetData(fullNameFrame, { Target = nameFrame }) Properties.FullNameFrameAttach.Enable() end end) @@ -814,30 +1010,42 @@ local function main() valueFrame.ValueBox.MouseButton1Down:Connect(function() local prop = viewList[index + Properties.Index] - if not prop then return end + if not prop then + return + end - Properties.SetInputProp(prop,index) + Properties.SetInputProp(prop, index) end) valueFrame.ColorButton.MouseButton1Down:Connect(function() local prop = viewList[index + Properties.Index] - if not prop then return end + if not prop then + return + end - Properties.SetInputProp(prop,index,"color") + Properties.SetInputProp(prop, index, "color") end) valueFrame.RightButton.MouseButton1Click:Connect(function() local prop = viewList[index + Properties.Index] - if not prop then return end + if not prop then + return + end - local fullName = prop.Class.."."..prop.Name..(prop.SubName or "") - local inputFullName = inputProp and (inputProp.Class.."."..inputProp.Name..(inputProp.SubName or "")) + local fullName = prop.Class .. "." .. prop.Name .. (prop.SubName or "") + local inputFullName = inputProp and (inputProp.Class .. "." .. inputProp.Name .. (inputProp.SubName or "")) if fullName == inputFullName and inputProp.ValueType.Category == "Class" then inputProp = nil - Properties.SetProp(prop,nil) + Properties.SetProp(prop, nil) else - Properties.SetInputProp(prop,index,"right") + -- If this is a tag row and user clicked the right-button, remove tag + if prop.IsTag then + -- right-button click: remove tag + Properties.RemoveTag(prop.TagName) + else + Properties.SetInputProp(prop, index, "right") + end end end) @@ -847,12 +1055,23 @@ local function main() end) newEntry.RowButton.MouseButton1Click:Connect(function() - Properties.DisplayAddAttributeWindow() + local prop = viewList[index + Properties.Index] + if not prop then + return + end + + if prop.SpecialRow == "AddAttribute" then + Properties.DisplayAddAttributeWindow() + elseif prop.SpecialRow == "AddTag" then + Properties.DisplayAddTagWindow() + end end) newEntry.EditAttributeButton.MouseButton1Down:Connect(function() local prop = viewList[index + Properties.Index] - if not prop then return end + if not prop then + return + end Properties.DisplayAttributeContext(prop) end) @@ -861,39 +1080,56 @@ local function main() if Properties.PreviewSound and Properties.PreviewSound.Playing then Properties.SetSoundPreview(false) else - local soundObj = Properties.FindFirstObjWhichIsA("Sound") or Properties.FindFirstObjWhichIsA("AudioPlayer") - if soundObj then Properties.SetSoundPreview(soundObj) end + local soundObj = Properties.FindFirstObjWhichIsA("Sound") + or Properties.FindFirstObjWhichIsA("AudioPlayer") + if soundObj then + Properties.SetSoundPreview(soundObj) + end end end) valueFrame.SoundPreview.InputBegan:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + if input.UserInputType ~= Enum.UserInputType.MouseButton1 then + return + end - local releaseEvent,mouseEvent + local releaseEvent, mouseEvent releaseEvent = service.UserInputService.InputEnded:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + if input.UserInputType ~= Enum.UserInputType.MouseButton1 then + return + end releaseEvent:Disconnect() mouseEvent:Disconnect() end) local timeLine = newEntry.ValueFrame.SoundPreview.TimeLine local soundObj = Properties.FindFirstObjWhichIsA("Sound") or Properties.FindFirstObjWhichIsA("AudioPlayer") - if soundObj then Properties.SetSoundPreview(soundObj,true) end + if soundObj then + Properties.SetSoundPreview(soundObj, true) + end local function update(input) local sound = Properties.PreviewSound - if not sound or sound.TimeLength == 0 then return end + if not sound or sound.TimeLength == 0 then + return + end local mouseX = input.Position.X local timeLineSize = timeLine.AbsoluteSize local relaX = mouseX - timeLine.AbsolutePosition.X - if timeLineSize.X <= 1 then return end - if relaX < 0 then relaX = 0 elseif relaX >= timeLineSize.X then relaX = timeLineSize.X-1 end + if timeLineSize.X <= 1 then + return + end + if relaX < 0 then + relaX = 0 + elseif relaX >= timeLineSize.X then + relaX = timeLineSize.X - 1 + end - local perc = (relaX/(timeLineSize.X-1)) - sound.TimePosition = perc*sound.TimeLength - timeLine.Slider.Position = UDim2.new(perc,-4,0,-8) + local perc = (relaX / (timeLineSize.X - 1)) + sound.TimePosition = perc * sound.TimeLength + timeLine.Slider.Position = UDim2.new(perc, -4, 0, -8) end update(input) @@ -925,8 +1161,8 @@ local function main() EditAttributeButton = newEntry.EditAttributeButton, ToggleAttributes = nameFrame.ToggleAttributes, SoundPreview = valueFrame.SoundPreview, - SoundPreviewSlider = valueFrame.SoundPreview.TimeLine.Slider - } + SoundPreviewSlider = valueFrame.SoundPreview.TimeLine.Slider, + }, } end @@ -939,20 +1175,25 @@ local function main() end end - - Properties.SetSoundPreview = function(soundObj:Sound?,noplay:boolean) + Properties.SetSoundPreview = function(soundObj: Sound?, noplay: boolean) local sound = Properties.PreviewSound if not sound then sound = Instance.new("Sound") sound.Name = "Preview" sound.Paused:Connect(function() local entry = Properties.GetSoundPreviewEntry() - if entry then Main.MiscIcons:DisplayByKey(entry.GuiElems.SoundPreview.ControlButton.Icon, "Play") end + if entry then + Main.MiscIcons:DisplayByKey(entry.GuiElems.SoundPreview.ControlButton.Icon, "Play") + end + end) + sound.Resumed:Connect(function() + Properties.Refresh() end) - sound.Resumed:Connect(function() Properties.Refresh() end) sound.Ended:Connect(function() local entry = Properties.GetSoundPreviewEntry() - if entry then entry.GuiElems.SoundPreviewSlider.Position = UDim2.new(0,-4,0,-8) end + if entry then + entry.GuiElems.SoundPreviewSlider.Position = UDim2.new(0, -4, 0, -8) + end Properties.Refresh() end) sound.Parent = window.Gui @@ -961,7 +1202,7 @@ local function main() if not soundObj then sound:Pause() - for i,v in pairs(sound:GetChildren()) do + for i, v in pairs(sound:GetChildren()) do v:Destroy() end else @@ -984,13 +1225,17 @@ local function main() return end if newId then - for _,v in ipairs(sound:GetChildren()) do v:Destroy() end + for _, v in ipairs(sound:GetChildren()) do + v:Destroy() + end sound.TimePosition = 0 end - for _,v in ipairs(soundObj:GetChildren()) do + for _, v in ipairs(soundObj:GetChildren()) do v:Clone().Parent = sound end - if not noplay then sound:Resume() end + if not noplay then + sound:Resume() + end task.spawn(function() local previewTime = tick() Properties.SoundPreviewTime = previewTime @@ -998,8 +1243,8 @@ local function main() local entry = Properties.GetSoundPreviewEntry() if entry then local tl = sound.TimeLength - local perc = sound.TimePosition/(tl == 0 and 1 or tl) - entry.GuiElems.SoundPreviewSlider.Position = UDim2.new(perc,-4,0,-8) + local perc = sound.TimePosition / (tl == 0 and 1 or tl) + entry.GuiElems.SoundPreviewSlider.Position = UDim2.new(perc, -4, 0, -8) end Lib.FastWait() end @@ -1017,13 +1262,19 @@ local function main() end context:Clear() - context:Add({Name = "Edit", OnClick = function() - Properties.DisplayAddAttributeWindow(prop) - end}) - context:Add({Name = "Delete", OnClick = function() - Properties.SetProp(prop,nil,true) - Properties.ShowExplorerProps() - end}) + context:Add({ + Name = "Edit", + OnClick = function() + Properties.DisplayAddAttributeWindow(prop) + end, + }) + context:Add({ + Name = "Delete", + OnClick = function() + Properties.SetProp(prop, nil, true) + Properties.ShowExplorerProps() + end, + }) context:Show() end @@ -1035,82 +1286,96 @@ local function main() win.Alignable = false win.Resizable = false win:SetTitle("Add Attribute") - win:SetSize(200,130) + win:SetSize(200, 130) local saveButton = Lib.Button.new() local nameLabel = Lib.Label.new() nameLabel.Text = "Name" - nameLabel.Position = UDim2.new(0,30,0,10) - nameLabel.Size = UDim2.new(0,40,0,20) + nameLabel.Position = UDim2.new(0, 30, 0, 10) + nameLabel.Size = UDim2.new(0, 40, 0, 20) win:Add(nameLabel) local nameBox = Lib.ViewportTextBox.new() - nameBox.Position = UDim2.new(0,75,0,10) - nameBox.Size = UDim2.new(0,120,0,20) - win:Add(nameBox,"NameBox") + nameBox.Position = UDim2.new(0, 75, 0, 10) + nameBox.Size = UDim2.new(0, 120, 0, 20) + win:Add(nameBox, "NameBox") nameBox.TextBox:GetPropertyChangedSignal("Text"):Connect(function() saveButton:SetDisabled(#nameBox:GetText() == 0) end) local typeLabel = Lib.Label.new() typeLabel.Text = "Type" - typeLabel.Position = UDim2.new(0,30,0,40) - typeLabel.Size = UDim2.new(0,40,0,20) + typeLabel.Position = UDim2.new(0, 30, 0, 40) + typeLabel.Size = UDim2.new(0, 40, 0, 20) win:Add(typeLabel) local typeChooser = Lib.DropDown.new() typeChooser.CanBeEmpty = false - typeChooser.Position = UDim2.new(0,75,0,40) - typeChooser.Size = UDim2.new(0,120,0,20) + typeChooser.Position = UDim2.new(0, 75, 0, 40) + typeChooser.Size = UDim2.new(0, 120, 0, 20) typeChooser:SetOptions(Properties.AllowedAttributeTypes) - win:Add(typeChooser,"TypeChooser") + win:Add(typeChooser, "TypeChooser") local errorLabel = Lib.Label.new() errorLabel.Text = "" - errorLabel.Position = UDim2.new(0,5,1,-45) - errorLabel.Size = UDim2.new(1,-10,0,20) + errorLabel.Position = UDim2.new(0, 5, 1, -45) + errorLabel.Size = UDim2.new(1, -10, 0, 20) errorLabel.TextColor3 = Settings.Theme.Important win.ErrorLabel = errorLabel - win:Add(errorLabel,"Error") + win:Add(errorLabel, "Error") local cancelButton = Lib.Button.new() cancelButton.Text = "Cancel" - cancelButton.Position = UDim2.new(1,-97,1,-25) - cancelButton.Size = UDim2.new(0,92,0,20) + cancelButton.Position = UDim2.new(1, -97, 1, -25) + cancelButton.Size = UDim2.new(0, 92, 0, 20) cancelButton.OnClick:Connect(function() win:Close() end) win:Add(cancelButton) saveButton.Text = "Save" - saveButton.Position = UDim2.new(0,5,1,-25) - saveButton.Size = UDim2.new(0,92,0,20) + saveButton.Position = UDim2.new(0, 5, 1, -25) + saveButton.Size = UDim2.new(0, 92, 0, 20) saveButton.OnClick:Connect(function() local name = nameBox:GetText() if #name > 100 then errorLabel.Text = "Error: Name over 100 chars" return - elseif name:sub(1,3) == "RBX" then + elseif name:sub(1, 3) == "RBX" then errorLabel.Text = "Error: Name begins with 'RBX'" return end local typ = typeChooser.Selected - local valType = {Name = Properties.TypeNameConvert[typ] or typ, Category = "DataType"} - local attrProp = {IsAttribute = true, Name = "ATTR_"..name, AttributeName = name, DisplayName = name, Class = "Instance", ValueType = valType, Category = "Attributes", Tags = {}} + local valType = { Name = Properties.TypeNameConvert[typ] or typ, Category = "DataType" } + local attrProp = { + IsAttribute = true, + Name = "ATTR_" .. name, + AttributeName = name, + DisplayName = name, + Class = "Instance", + ValueType = valType, + Category = "Attributes", + Tags = {}, + } Settings.Properties.ShowAttributes = true - Properties.SetProp(attrProp,Properties.DefaultPropValue[valType.Name],true,Properties.EditingAttribute) + Properties.SetProp( + attrProp, + Properties.DefaultPropValue[valType.Name], + true, + Properties.EditingAttribute + ) Properties.ShowExplorerProps() win:Close() end) - win:Add(saveButton,"SaveButton") + win:Add(saveButton, "SaveButton") Properties.AddAttributeWindow = win end Properties.EditingAttribute = editAttr - win:SetTitle(editAttr and "Edit Attribute "..editAttr.AttributeName or "Add Attribute") + win:SetTitle(editAttr and "Edit Attribute " .. editAttr.AttributeName or "Add Attribute") win.Elements.Error.Text = "" win.Elements.NameBox:SetText("") win.Elements.SaveButton:SetDisabled(true) @@ -1118,11 +1383,201 @@ local function main() win:Show() end + Properties.DisplayAddTagWindow = function() + local win = Properties.AddTagWindow + if not win then + win = Lib.Window.new() + win.Alignable = false + win.Resizable = false + win:SetTitle("Add Tag") + win:SetSize(200, 100) + + -- Label: Tag Name + local nameLabel = Lib.Label.new() + nameLabel.Text = "Tag" + nameLabel.Position = UDim2.new(0, 30, 0, 10) + nameLabel.Size = UDim2.new(0, 40, 0, 20) + win:Add(nameLabel) + + -- Textbox: Tag Name input + local nameBox = Lib.ViewportTextBox.new() + nameBox.Position = UDim2.new(0, 75, 0, 10) + nameBox.Size = UDim2.new(0, 110, 0, 20) + win:Add(nameBox, "NameBox") + + -- Error label (below textbox) + local errorLabel = Lib.Label.new() + errorLabel.Text = "" + errorLabel.Position = UDim2.new(0, 5, 1, -45) + errorLabel.Size = UDim2.new(1, -10, 0, 20) + errorLabel.TextColor3 = Settings.Theme.Important + win.ErrorLabel = errorLabel + win:Add(errorLabel, "Error") + + -- Cancel Button + local cancelButton = Lib.Button.new() + cancelButton.Text = "Cancel" + cancelButton.Position = UDim2.new(1, -97, 1, -25) + cancelButton.Size = UDim2.new(0, 92, 0, 20) + cancelButton.OnClick:Connect(function() + win:Close() + end) + win:Add(cancelButton) + + -- Save Button + local saveButton = Lib.Button.new() + saveButton.Text = "Save" + saveButton.Position = UDim2.new(0, 5, 1, -25) + saveButton.Size = UDim2.new(0, 92, 0, 20) + win:Add(saveButton, "SaveButton") + + -- Enable/disable save button based on text + nameBox.TextBox:GetPropertyChangedSignal("Text"):Connect(function() + saveButton:SetDisabled(#nameBox:GetText() == 0) + end) + saveButton:SetDisabled(true) + + -- Save logic + saveButton.OnClick:Connect(function() + local tagName = nameBox:GetText() + + if #tagName > 100 then + errorLabel.Text = "Error: Tag name over 100 chars" + return + elseif tagName:sub(1, 3) == "RBX" then + errorLabel.Text = "Error: Tag cannot start with 'RBX'" + return + end + + Properties.AddTag(tagName) + win:Close() + end) + + Properties.AddTagWindow = win + end + + win:SetTitle("Add Tag") + win.Elements.Error.Text = "" + win.Elements.NameBox:SetText("") + win.Elements.SaveButton:SetDisabled(true) + win:Show() + end + + Properties.AddTag = function(tagName) + if not tagName or #tagName == 0 then + return + end + + -- Validate + if #tagName > 100 then + return Properties.DisplayError and Properties.DisplayError("Tag name over 100 chars") + elseif tagName:sub(1, 3) == "RBX" then + return Properties.DisplayError and Properties.DisplayError("Tag cannot start with 'RBX'") + end + + local selection = Explorer.Selection.List + if not selection or #selection == 0 then + return + end + + -- Make server calls and locally apply tags where possible. + for i = 1, #selection do + local node = selection[i] + local obj = node and node.Obj + if obj and obj:IsA("Instance") then + -- Prevent duplicates locally + local ok, tags = pcall(function() + return obj:GetTags() + end) + local already = false + if ok and tags then + for _, t in ipairs(tags) do + if t == tagName then + already = true + break + end + end + end + + if not already then + -- Try to invoke server to add the tag (use existing Dex remote) + local s, res = pcall(function() + return Dex_RemoteFunction:InvokeServer("addtag", obj, tagName) + end) + + -- If server returns true or we succeeded, try local add (pcall to be safe) + if s then + pcall(function() + obj:AddTag(tagName) + end) + else + warn("AddTag server call failed:", res) + end + end + end + end + + -- Refresh the properties UI to show the new tags + Properties.ShowExplorerProps() + end + + -- Removes a tag from all selected instances, calls server, updates UI + Properties.RemoveTag = function(tagName) + if not tagName or #tagName == 0 then + return + end + + local selection = Explorer.Selection.List + if not selection or #selection == 0 then + return + end + + for i = 1, #selection do + local node = selection[i] + local obj = node and node.Obj + if obj and obj:IsA("Instance") then + -- Check existence first + local ok, tags = pcall(function() + return obj:GetTags() + end) + local found = false + if ok and tags then + for _, t in ipairs(tags) do + if t == tagName then + found = true + break + end + end + end + + if found then + local s, res = pcall(function() + return Dex_RemoteFunction:InvokeServer("removetag", obj, tagName) + end) + + if s then + pcall(function() + obj:RemoveTag(tagName) + end) + else + warn("RemoveTag server call failed:", res) + end + end + end + end + + -- Refresh the properties UI + Properties.ShowExplorerProps() + end + Properties.IsTextEditable = function(prop) local typeData = prop.ValueType local typeName = typeData.Name - return typeName ~= "bool" and typeData.Category ~= "Enum" and typeData.Category ~= "Class" and typeName ~= "BrickColor" + return typeName ~= "bool" + and typeData.Category ~= "Enum" + and typeData.Category ~= "Class" + and typeName ~= "BrickColor" end Properties.DisplayEnumDropdown = function(entryIndex) @@ -1135,41 +1590,49 @@ local function main() Properties.EnumDropdown = context end - if not inputProp or inputProp.ValueType.Category ~= "Enum" then return end + if not inputProp or inputProp.ValueType.Category ~= "Enum" then + return + end local prop = inputProp local entry = propEntries[entryIndex] local valueFrame = entry.GuiElems.ValueFrame local enum = Enum[prop.ValueType.Name] - if not enum then return end + if not enum then + return + end local sorted = {} - for name,enum in next,enum:GetEnumItems() do - sorted[#sorted+1] = enum + for name, enum in next, enum:GetEnumItems() do + sorted[#sorted + 1] = enum end - table.sort(sorted,function(a,b) return a.Name < b.Name end) + table.sort(sorted, function(a, b) + return a.Name < b.Name + end) context:Clear() local function onClick(name) - if prop ~= inputProp then return end + if prop ~= inputProp then + return + end local enumItem = enum[name] inputProp = nil - Properties.SetProp(prop,enumItem) + Properties.SetProp(prop, enumItem) end - for i = 1,#sorted do + for i = 1, #sorted do local enumItem = sorted[i] - context:Add({Name = enumItem.Name, OnClick = onClick}) + context:Add({ Name = enumItem.Name, OnClick = onClick }) end context.Width = valueFrame.AbsoluteSize.X context:Show(valueFrame.AbsolutePosition.X, valueFrame.AbsolutePosition.Y + 22) end - Properties.DisplayBrickColorEditor = function(prop,entryIndex,col) + Properties.DisplayBrickColorEditor = function(prop, entryIndex, col) local editor = Properties.BrickColorEditor if not editor then editor = Lib.BrickColorPicker.new() @@ -1177,22 +1640,26 @@ local function main() editor.ReverseYOffset = 22 editor.OnSelect:Connect(function(col) - if not editor.CurrentProp or editor.CurrentProp.ValueType.Name ~= "BrickColor" then return end + if not editor.CurrentProp or editor.CurrentProp.ValueType.Name ~= "BrickColor" then + return + end - if editor.CurrentProp == inputProp then inputProp = nil end - Properties.SetProp(editor.CurrentProp,BrickColor.new(col)) + if editor.CurrentProp == inputProp then + inputProp = nil + end + Properties.SetProp(editor.CurrentProp, BrickColor.new(col)) end) editor.OnMoreColors:Connect(function() -- TODO: Special Case BasePart.BrickColor to BasePart.Color editor:Close() local colProp - for i,v in pairs(API.Classes.BasePart.Properties) do + for i, v in pairs(API.Classes.BasePart.Properties) do if v.Name == "Color" then colProp = v break end end - Properties.DisplayColorEditor(colProp,editor.SavedColor.Color) + Properties.DisplayColorEditor(colProp, editor.SavedColor.Color) end) Properties.BrickColorEditor = editor @@ -1211,20 +1678,26 @@ local function main() editor:Show(valueFrame.AbsolutePosition.X, valueFrame.AbsolutePosition.Y + 22) end - Properties.DisplayColorEditor = function(prop,col) + Properties.DisplayColorEditor = function(prop, col) local editor = Properties.ColorEditor if not editor then editor = Lib.ColorPicker.new() editor.OnSelect:Connect(function(col) - if not editor.CurrentProp then return end + if not editor.CurrentProp then + return + end local typeName = editor.CurrentProp.ValueType.Name - if typeName ~= "Color3" and typeName ~= "BrickColor" then return end + if typeName ~= "Color3" and typeName ~= "BrickColor" then + return + end local colVal = (typeName == "Color3" and col or BrickColor.new(col)) - if editor.CurrentProp == inputProp then inputProp = nil end - Properties.SetProp(editor.CurrentProp,colVal) + if editor.CurrentProp == inputProp then + inputProp = nil + end + Properties.SetProp(editor.CurrentProp, colVal) end) Properties.ColorEditor = editor @@ -1235,21 +1708,27 @@ local function main() editor:SetColor(col) else local firstVal = Properties.GetFirstPropVal(prop) - if firstVal then editor:SetColor(firstVal) end + if firstVal then + editor:SetColor(firstVal) + end end editor:Show() end - Properties.DisplayNumberSequenceEditor = function(prop,seq) + Properties.DisplayNumberSequenceEditor = function(prop, seq) local editor = Properties.NumberSequenceEditor if not editor then editor = Lib.NumberSequenceEditor.new() editor.OnSelect:Connect(function(val) - if not editor.CurrentProp or editor.CurrentProp.ValueType.Name ~= "NumberSequence" then return end + if not editor.CurrentProp or editor.CurrentProp.ValueType.Name ~= "NumberSequence" then + return + end - if editor.CurrentProp == inputProp then inputProp = nil end - Properties.SetProp(editor.CurrentProp,val) + if editor.CurrentProp == inputProp then + inputProp = nil + end + Properties.SetProp(editor.CurrentProp, val) end) Properties.NumberSequenceEditor = editor @@ -1260,21 +1739,27 @@ local function main() editor:SetSequence(seq) else local firstVal = Properties.GetFirstPropVal(prop) - if firstVal then editor:SetSequence(firstVal) end + if firstVal then + editor:SetSequence(firstVal) + end end editor:Show() end - Properties.DisplayColorSequenceEditor = function(prop,seq) + Properties.DisplayColorSequenceEditor = function(prop, seq) local editor = Properties.ColorSequenceEditor if not editor then editor = Lib.ColorSequenceEditor.new() editor.OnSelect:Connect(function(val) - if not editor.CurrentProp or editor.CurrentProp.ValueType.Name ~= "ColorSequence" then return end + if not editor.CurrentProp or editor.CurrentProp.ValueType.Name ~= "ColorSequence" then + return + end - if editor.CurrentProp == inputProp then inputProp = nil end - Properties.SetProp(editor.CurrentProp,val) + if editor.CurrentProp == inputProp then + inputProp = nil + end + Properties.SetProp(editor.CurrentProp, val) end) Properties.ColorSequenceEditor = editor @@ -1285,7 +1770,9 @@ local function main() editor:SetSequence(seq) else local firstVal = Properties.GetFirstPropVal(prop) - if firstVal then editor:SetSequence(firstVal) end + if firstVal then + editor:SetSequence(firstVal) + end end editor:Show() end @@ -1293,18 +1780,29 @@ local function main() Properties.GetFirstPropVal = function(prop) local first = Properties.FindFirstObjWhichIsA(prop.Class) if first then - return Properties.GetPropVal(prop,first) + return Properties.GetPropVal(prop, first) end end - Properties.GetPropVal = function(prop,obj) - if prop.MultiType then return "" end - if not obj then return end + Properties.GetPropVal = function(prop, obj) + -- PATCH: Prevent Dex from reading pseudo tag properties + if prop.IsTag or prop.IsAddTagButton or prop.SpecialRow == "AddTag" or prop.Category == "Tags" then + return nil + end + + if prop.MultiType then + return "" + end + if not obj then + return + end local propVal if prop.IsAttribute then - propVal = getAttribute(obj,prop.AttributeName) - if propVal == nil then return nil end + propVal = getAttribute(obj, prop.AttributeName) + if propVal == nil then + return nil + end local typ = typeof(propVal) local currentType = Properties.TypeNameConvert[typ] or typ @@ -1319,8 +1817,8 @@ local function main() propVal = obj[prop.Name] end if prop.SubName then - local indexes = string.split(prop.SubName,".") - for i = 1,#indexes do + local indexes = string.split(prop.SubName, ".") + for i = 1, #indexes do local indexName = indexes[i] if #indexName > 0 and propVal then propVal = propVal[indexName] @@ -1336,8 +1834,8 @@ local function main() local prop = inputProp inputProp = nil - if isa(obj,prop.ValueType.Name) then - Properties.SetProp(prop,obj) + if isa(obj, prop.ValueType.Name) then + Properties.SetProp(prop, obj) else Properties.Refresh() end @@ -1348,12 +1846,38 @@ local function main() return false end - Properties.DisplayProp = function(prop,entryIndex) + Properties.DisplayProp = function(prop, entryIndex) + if prop.IsTag or prop.IsAddTagButton or prop.Category == "Tags" and prop.SpecialRow then + -- Hide all value UI elements for Add Tag row + local entryData = propEntries[entryIndex] + if entryData and entryData.GuiElems then + local g = entryData.GuiElems + if g.ValueBox then + g.ValueBox.Visible = false + end + if g.ColorButton then + g.ColorButton.Visible = false + end + if g.EnumArrow then + g.EnumArrow.Visible = false + end + if g.Checkbox then + g.Checkbox.Visible = false + end + if g.RightButton then + g.RightButton.Visible = false + end + if g.SoundPreview then + g.SoundPreview.Visible = false + end + end + return + end local propName = prop.Name local typeData = prop.ValueType local typeName = typeData.Name local tags = prop.Tags - local gName = prop.Class.."."..prop.Name..(prop.SubName or "") + local gName = prop.Class .. "." .. prop.Name .. (prop.SubName or "") local propObj = autoUpdateObjs[gName] local entryData = propEntries[entryIndex] local UDim2 = UDim2 @@ -1369,22 +1893,24 @@ local function main() local rightButton = guiElems.RightButton local soundPreview = guiElems.SoundPreview - local propVal = Properties.GetPropVal(prop,propObj) - local inputFullName = inputProp and (inputProp.Class.."."..inputProp.Name..(inputProp.SubName or "")) + local propVal = Properties.GetPropVal(prop, propObj) + local inputFullName = inputProp and (inputProp.Class .. "." .. inputProp.Name .. (inputProp.SubName or "")) local offset = 4 local endOffset = 6 -- Offsetting the ValueBox for ValueType specific buttons - if (typeName == "Color3" or typeName == "BrickColor" or typeName == "ColorSequence") then + if typeName == "Color3" or typeName == "BrickColor" or typeName == "ColorSequence" then colorButton.Visible = true enumArrow.Visible = false if propVal then - gradient.Color = (typeName == "Color3" and ColorSequence.new(propVal)) or (typeName == "BrickColor" and ColorSequence.new(propVal.Color)) or propVal + gradient.Color = (typeName == "Color3" and ColorSequence.new(propVal)) + or (typeName == "BrickColor" and ColorSequence.new(propVal.Color)) + or propVal else - gradient.Color = ColorSequence.new(Color3.new(1,1,1)) + gradient.Color = ColorSequence.new(Color3.new(1, 1, 1)) end - colorPreview.BorderColor3 = (typeName == "ColorSequence" and Color3.new(1,1,1) or Color3.new(0,0,0)) + colorPreview.BorderColor3 = (typeName == "ColorSequence" and Color3.new(1, 1, 1) or Color3.new(0, 0, 0)) offset = 22 endOffset = 24 + (typeName == "ColorSequence" and 20 or 0) elseif typeData.Category == "Enum" then @@ -1400,8 +1926,33 @@ local function main() enumArrow.Visible = false end - valueBox.Position = UDim2.new(0,offset,0,0) - valueBox.Size = UDim2.new(1,-endOffset,1,0) + if prop.IsTag then + -- Tag Name Display + valueBox.Visible = false + checkbox.Visible = false + soundPreview.Visible = false + colorButton.Visible = false + enumArrow.Visible = false + + -- Show the tag name as static text + valueBox.Visible = true + valueBox.Text = prop.TagName + valueBox.TextColor3 = Settings.Theme.Text + valueBox.ClearTextOnFocus = false + valueBox.Active = false + + -- Show X button on right side to remove tag + rightButton.Visible = true + rightButton.Text = "X" + rightButton.MouseButton1Click:Connect(function() + Properties.RemoveTag(prop) + end) + + return + end + + valueBox.Position = UDim2.new(0, offset, 0, 0) + valueBox.Size = UDim2.new(1, -endOffset, 1, 0) -- Right button if inputFullName == gName and typeData.Category == "Class" then @@ -1441,16 +1992,16 @@ local function main() if propVal ~= nil then if typeName == "Color3" then - valueBox.Text = "["..Lib.ColorToBytes(propVal).."]" + valueBox.Text = "[" .. Lib.ColorToBytes(propVal) .. "]" elseif typeData.Category == "Enum" then valueBox.Text = propVal.Name elseif Properties.RoundableTypes[typeName] and Settings.Properties.NumberRounding then - local rawStr = Properties.ValueToString(prop,propVal) - valueBox.Text = rawStr:gsub("-?%d+%.%d+",function(num) - return tostring(tonumber(("%."..Settings.Properties.NumberRounding.."f"):format(num))) + local rawStr = Properties.ValueToString(prop, propVal) + valueBox.Text = rawStr:gsub("-?%d+%.%d+", function(num) + return tostring(tonumber(("%." .. Settings.Properties.NumberRounding .. "f"):format(num))) end) else - valueBox.Text = Properties.ValueToString(prop,propVal) + valueBox.Text = Properties.ValueToString(prop, propVal) end else valueBox.Text = "" @@ -1460,10 +2011,21 @@ local function main() end end + function Properties.RemoveTag(prop) + local obj = Explorer.Selection.List[1].Obj + if not obj then + return + end + + local tag = prop.TagName + Properties.Remote:InvokeServer("removetag", obj, tag) + Properties.Refresh() + end + Properties.Refresh = function() - local maxEntries = math.max(math.ceil((propsFrame.AbsoluteSize.Y) / 23),0) + local maxEntries = math.max(math.ceil(propsFrame.AbsoluteSize.Y / 23), 0) local maxX = propsFrame.AbsoluteSize.X - local valueWidth = math.max(Properties.MinInputWidth,maxX-Properties.ViewWidth) + local valueWidth = math.max(Properties.MinInputWidth, maxX - Properties.ViewWidth) local inputPropVisible = false local isa = game.IsA local UDim2 = UDim2 @@ -1471,7 +2033,7 @@ local function main() local scaleType = Settings.Properties.ScaleType -- Clear connections - for i = 1,#propCons do + for i = 1, #propCons do propCons[i]:Disconnect() end table.clear(propCons) @@ -1480,9 +2042,12 @@ local function main() Properties.FullNameFrame.Visible = false Properties.FullNameFrameAttach.Disable() - for i = 1,maxEntries do + for i = 1, maxEntries do local entryData = propEntries[i] - if not propEntries[i] then entryData = Properties.NewPropEntry(i) propEntries[i] = entryData end + if not propEntries[i] then + entryData = Properties.NewPropEntry(i) + propEntries[i] = entryData + end local entry = entryData.Gui local guiElems = entryData.GuiElems @@ -1500,26 +2065,40 @@ local function main() if prop then local entryXOffset = (scaleType == 0 and scrollH.Index or 0) entry.Visible = true - entry.Position = UDim2.new(0,-entryXOffset,0,entry.Position.Y.Offset) - entry.Size = UDim2.new(scaleType == 0 and 0 or 1, scaleType == 0 and Properties.ViewWidth + valueWidth or 0,0,22) + entry.Position = UDim2.new(0, -entryXOffset, 0, entry.Position.Y.Offset) + entry.Size = UDim2.new( + scaleType == 0 and 0 or 1, + scaleType == 0 and Properties.ViewWidth + valueWidth or 0, + 0, + 22 + ) if prop.SpecialRow then if prop.SpecialRow == "AddAttribute" then nameFrame.Visible = false valueFrame.Visible = false guiElems.RowButton.Visible = true + guiElems.RowButton.Text = "Add Attribute" + guiElems.RowButton.TextColor3 = Settings.Theme.Text + elseif prop.SpecialRow == "AddTag" then + nameFrame.Visible = false + valueFrame.Visible = false + guiElems.RowButton.Visible = true + guiElems.RowButton.Text = "Add Tag..." + guiElems.RowButton.TextColor3 = Settings.Theme.Text end else -- Revert special row stuff nameFrame.Visible = true guiElems.RowButton.Visible = false - local depth = Properties.EntryIndent*(prop.Depth or 1) + local depth = Properties.EntryIndent * (prop.Depth or 1) local leftOffset = depth + Properties.EntryOffset - nameFrame.Position = UDim2.new(0,leftOffset,0,0) - propNameLabel.Size = UDim2.new(1,-2 - (scaleType == 0 and 0 or 6),1,0) + nameFrame.Position = UDim2.new(0, leftOffset, 0, 0) + propNameLabel.Size = UDim2.new(1, -2 - (scaleType == 0 and 0 or 6), 1, 0) - local gName = (prop.CategoryName and "CAT_"..prop.CategoryName) or prop.Class.."."..prop.Name..(prop.SubName or "") + local gName = (prop.CategoryName and "CAT_" .. prop.CategoryName) + or prop.Class .. "." .. prop.Name .. (prop.SubName or "") if prop.CategoryName then entry.BackgroundColor3 = Settings.Theme.Main1 @@ -1530,11 +2109,11 @@ local function main() expand.Visible = true propNameBox.TextColor3 = Settings.Theme.Text nameFrame.BackgroundTransparency = 1 - nameFrame.Size = UDim2.new(1,0,1,0) + nameFrame.Size = UDim2.new(1, 0, 1, 0) editAttributeButton.Visible = false local showingAttrs = Settings.Properties.ShowAttributes - toggleAttributes.Position = UDim2.new(1,-85-leftOffset,0,0) + toggleAttributes.Position = UDim2.new(1, -85 - leftOffset, 0, 0) toggleAttributes.Text = (showingAttrs and "[Setting: ON]" or "[Setting: OFF]") toggleAttributes.TextColor3 = Settings.Theme.Text toggleAttributes.Visible = (prop.CategoryName == "Attributes") @@ -1551,52 +2130,76 @@ local function main() -- Moving around the frames if scaleType == 0 then - nameFrame.Size = UDim2.new(0,Properties.ViewWidth - leftOffset - 1,1,0) - valueFrame.Position = UDim2.new(0,Properties.ViewWidth,0,0) - valueFrame.Size = UDim2.new(0,valueWidth - attributeOffset,1,0) + nameFrame.Size = UDim2.new(0, Properties.ViewWidth - leftOffset - 1, 1, 0) + valueFrame.Position = UDim2.new(0, Properties.ViewWidth, 0, 0) + valueFrame.Size = UDim2.new(0, valueWidth - attributeOffset, 1, 0) else - nameFrame.Size = UDim2.new(0.5,-leftOffset - 1,1,0) - valueFrame.Position = UDim2.new(0.5,0,0,0) - valueFrame.Size = UDim2.new(0.5,-attributeOffset,1,0) + nameFrame.Size = UDim2.new(0.5, -leftOffset - 1, 1, 0) + valueFrame.Position = UDim2.new(0.5, 0, 0, 0) + valueFrame.Size = UDim2.new(0.5, -attributeOffset, 1, 0) end - local nameArr = stringSplit(gName,".") + local nameArr = stringSplit(gName, ".") propNameBox.Text = prop.DisplayName or nameArr[#nameArr] propNameBox.Font = Enum.Font.SourceSans entry.BackgroundColor3 = Settings.Theme.Main2 valueFrame.Visible = true - expand.Visible = typeData.Category == "DataType" and Properties.ExpandableTypes[typeName] or Properties.ExpandableProps[gName] + expand.Visible = typeData.Category == "DataType" and Properties.ExpandableTypes[typeName] + or Properties.ExpandableProps[gName] propNameBox.TextColor3 = tags.ReadOnly and Settings.Theme.PlaceholderText or Settings.Theme.Text -- Display property value - Properties.DisplayProp(prop,i) + Properties.DisplayProp(prop, i) if propObj then if prop.IsAttribute then - propCons[#propCons+1] = getAttributeChangedSignal(propObj,prop.AttributeName):Connect(function() - Properties.DisplayProp(prop,i) - end) + propCons[#propCons + 1] = getAttributeChangedSignal(propObj, prop.AttributeName):Connect( + function() + Properties.DisplayProp(prop, i) + end + ) else - propCons[#propCons+1] = getPropChangedSignal(propObj,propName):Connect(function() - Properties.DisplayProp(prop,i) + propCons[#propCons + 1] = getPropChangedSignal(propObj, propName):Connect(function() + Properties.DisplayProp(prop, i) end) end end + -- Tag display + if prop.IsTag then + valueBox.Text = prop.TagName + + local deleteButton = entryFrame.ValueFrame.RightButton + deleteButton.Visible = true + deleteButton.Icon.Image = "rbxassetid://5034718129" + deleteButton.Icon.ImageRectSize = Vector2.new(16, 16) + end + + -- "Add Tag" special row + if prop.SpecialRow == "AddTag" then + valueBox.Text = "+" + valueBox.TextColor3 = Settings.Theme.Main1 + end + -- Position and resize Input Box local beforeVisible = valueBox.Visible - local inputFullName = inputProp and (inputProp.Class.."."..inputProp.Name..(inputProp.SubName or "")) + local inputFullName = inputProp + and (inputProp.Class .. "." .. inputProp.Name .. (inputProp.SubName or "")) if gName == inputFullName then nameFrame.BackgroundColor3 = Settings.Theme.ListSelection nameFrame.BackgroundTransparency = 0 - if typeData.Category == "Class" or typeData.Category == "Enum" or typeName == "BrickColor" then + if + typeData.Category == "Class" + or typeData.Category == "Enum" + or typeName == "BrickColor" + then valueFrame.BackgroundColor3 = Settings.Theme.TextBox valueFrame.BackgroundTransparency = 0 valueBox.Visible = true else inputPropVisible = true local scale = (scaleType == 0 and 0 or 0.5) - local offset = (scaleType == 0 and Properties.ViewWidth-scrollH.Index or 0) + local offset = (scaleType == 0 and Properties.ViewWidth - scrollH.Index or 0) local endOffset = 0 if typeName == "Color3" or typeName == "ColorSequence" then @@ -1607,8 +2210,8 @@ local function main() endOffset = 20 end - inputBox.Position = UDim2.new(scale,offset,0,entry.Position.Y.Offset) - inputBox.Size = UDim2.new(1-scale,-offset-endOffset-attributeOffset,0,22) + inputBox.Position = UDim2.new(scale, offset, 0, entry.Position.Y.Offset) + inputBox.Size = UDim2.new(1 - scale, -offset - endOffset - attributeOffset, 0, 22) inputBox.Visible = true valueBox.Visible = false end @@ -1622,9 +2225,16 @@ local function main() end -- Expand - if prop.CategoryName or Properties.ExpandableTypes[prop.ValueType and prop.ValueType.Name] or Properties.ExpandableProps[gName] then + if + prop.CategoryName + or Properties.ExpandableTypes[prop.ValueType and prop.ValueType.Name] + or Properties.ExpandableProps[gName] + then if Lib.CheckMouseInGui(expand) then - Main.MiscIcons:DisplayByKey(expand.Icon, expanded[gName] and "Collapse_Over" or "Expand_Over") + Main.MiscIcons:DisplayByKey( + expand.Icon, + expanded[gName] and "Collapse_Over" or "Expand_Over" + ) else Main.MiscIcons:DisplayByKey(expand.Icon, expanded[gName] and "Collapse" or "Expand") end @@ -1643,14 +2253,14 @@ local function main() inputBox.Visible = false end - for i = maxEntries+1,#propEntries do + for i = maxEntries + 1, #propEntries do propEntries[i].Gui:Destroy() propEntries[i] = nil checkboxes[i] = nil end end - Properties.SetProp = function(prop,val,noupdate,prevAttribute) + Properties.SetProp = function(prop, val, noupdate, prevAttribute) local sList = Explorer.Selection.List local propName = prop.Name local subName = prop.SubName @@ -1660,28 +2270,28 @@ local function main() local attributeName = prop.AttributeName local rootTypeData = prop.RootType local rootTypeName = rootTypeData and rootTypeData.Name - local fullName = prop.Class.."."..prop.Name..(prop.SubName or "") + local fullName = prop.Class .. "." .. prop.Name .. (prop.SubName or "") local Vector3 = Vector3 - for i = 1,#sList do + for i = 1, #sList do local node = sList[i] local obj = node.Obj - if isa(obj,propClass) then + if isa(obj, propClass) then pcall(function() local setVal = val local root if prop.IsAttribute then - root = getAttribute(obj,attributeName) + root = getAttribute(obj, attributeName) else root = obj[propName] end if prevAttribute then if prevAttribute.ValueType.Name == typeName then - setVal = getAttribute(obj,prevAttribute.AttributeName) or setVal + setVal = getAttribute(obj, prevAttribute.AttributeName) or setVal end - setAttribute(obj,prevAttribute.AttributeName,nil) + setAttribute(obj, prevAttribute.AttributeName, nil) -- ADONIS Dex_RemoteFunction:InvokeServer("SetPropertyAttribute", obj, attributeName, setVal) @@ -1689,69 +2299,142 @@ local function main() if rootTypeName then if rootTypeName == "Vector2" then - setVal = Vector2.new((subName == ".X" and setVal) or root.X, (subName == ".Y" and setVal) or root.Y) + setVal = Vector2.new( + (subName == ".X" and setVal) or root.X, + (subName == ".Y" and setVal) or root.Y + ) elseif rootTypeName == "Vector3" then - setVal = Vector3.new((subName == ".X" and setVal) or root.X, (subName == ".Y" and setVal) or root.Y, (subName == ".Z" and setVal) or root.Z) + setVal = Vector3.new( + (subName == ".X" and setVal) or root.X, + (subName == ".Y" and setVal) or root.Y, + (subName == ".Z" and setVal) or root.Z + ) elseif rootTypeName == "UDim" then - setVal = UDim.new((subName == ".Scale" and setVal) or root.Scale, (subName == ".Offset" and setVal) or root.Offset) + setVal = UDim.new( + (subName == ".Scale" and setVal) or root.Scale, + (subName == ".Offset" and setVal) or root.Offset + ) elseif rootTypeName == "UDim2" then - local rootX,rootY = root.X,root.Y - local X_UDim = (subName == ".X" and setVal) or UDim.new((subName == ".X.Scale" and setVal) or rootX.Scale, (subName == ".X.Offset" and setVal) or rootX.Offset) - local Y_UDim = (subName == ".Y" and setVal) or UDim.new((subName == ".Y.Scale" and setVal) or rootY.Scale, (subName == ".Y.Offset" and setVal) or rootY.Offset) - setVal = UDim2.new(X_UDim,Y_UDim) + local rootX, rootY = root.X, root.Y + local X_UDim = (subName == ".X" and setVal) + or UDim.new( + (subName == ".X.Scale" and setVal) or rootX.Scale, + (subName == ".X.Offset" and setVal) or rootX.Offset + ) + local Y_UDim = (subName == ".Y" and setVal) + or UDim.new( + (subName == ".Y.Scale" and setVal) or rootY.Scale, + (subName == ".Y.Offset" and setVal) or rootY.Offset + ) + setVal = UDim2.new(X_UDim, Y_UDim) elseif rootTypeName == "CFrame" then - local rootPos,rootRight,rootUp,rootLook = root.Position,root.RightVector,root.UpVector,root.LookVector - local pos = (subName == ".Position" and setVal) or Vector3.new((subName == ".Position.X" and setVal) or rootPos.X, (subName == ".Position.Y" and setVal) or rootPos.Y, (subName == ".Position.Z" and setVal) or rootPos.Z) - local rightV = (subName == ".RightVector" and setVal) or Vector3.new((subName == ".RightVector.X" and setVal) or rootRight.X, (subName == ".RightVector.Y" and setVal) or rootRight.Y, (subName == ".RightVector.Z" and setVal) or rootRight.Z) - local upV = (subName == ".UpVector" and setVal) or Vector3.new((subName == ".UpVector.X" and setVal) or rootUp.X, (subName == ".UpVector.Y" and setVal) or rootUp.Y, (subName == ".UpVector.Z" and setVal) or rootUp.Z) - local lookV = (subName == ".LookVector" and setVal) or Vector3.new((subName == ".LookVector.X" and setVal) or rootLook.X, (subName == ".RightVector.Y" and setVal) or rootLook.Y, (subName == ".RightVector.Z" and setVal) or rootLook.Z) - setVal = CFrame.fromMatrix(pos,rightV,upV,-lookV) + local rootPos, rootRight, rootUp, rootLook = + root.Position, root.RightVector, root.UpVector, root.LookVector + local pos = (subName == ".Position" and setVal) + or Vector3.new( + (subName == ".Position.X" and setVal) or rootPos.X, + (subName == ".Position.Y" and setVal) or rootPos.Y, + (subName == ".Position.Z" and setVal) or rootPos.Z + ) + local rightV = (subName == ".RightVector" and setVal) + or Vector3.new( + (subName == ".RightVector.X" and setVal) or rootRight.X, + (subName == ".RightVector.Y" and setVal) or rootRight.Y, + (subName == ".RightVector.Z" and setVal) or rootRight.Z + ) + local upV = (subName == ".UpVector" and setVal) + or Vector3.new( + (subName == ".UpVector.X" and setVal) or rootUp.X, + (subName == ".UpVector.Y" and setVal) or rootUp.Y, + (subName == ".UpVector.Z" and setVal) or rootUp.Z + ) + local lookV = (subName == ".LookVector" and setVal) + or Vector3.new( + (subName == ".LookVector.X" and setVal) or rootLook.X, + (subName == ".RightVector.Y" and setVal) or rootLook.Y, + (subName == ".RightVector.Z" and setVal) or rootLook.Z + ) + setVal = CFrame.fromMatrix(pos, rightV, upV, -lookV) elseif rootTypeName == "Rect" then - local rootMin,rootMax = root.Min,root.Max - local min = Vector2.new((subName == ".Min.X" and setVal) or rootMin.X, (subName == ".Min.Y" and setVal) or rootMin.Y) - local max = Vector2.new((subName == ".Max.X" and setVal) or rootMax.X, (subName == ".Max.Y" and setVal) or rootMax.Y) - setVal = Rect.new(min,max) + local rootMin, rootMax = root.Min, root.Max + local min = Vector2.new( + (subName == ".Min.X" and setVal) or rootMin.X, + (subName == ".Min.Y" and setVal) or rootMin.Y + ) + local max = Vector2.new( + (subName == ".Max.X" and setVal) or rootMax.X, + (subName == ".Max.Y" and setVal) or rootMax.Y + ) + setVal = Rect.new(min, max) elseif rootTypeName == "PhysicalProperties" then local rootProps = PhysicalProperties.new(obj.Material) - local density = (subName == ".Density" and setVal) or (root and root.Density) or rootProps.Density - local friction = (subName == ".Friction" and setVal) or (root and root.Friction) or rootProps.Friction - local elasticity = (subName == ".Elasticity" and setVal) or (root and root.Elasticity) or rootProps.Elasticity - local frictionWeight = (subName == ".FrictionWeight" and setVal) or (root and root.FrictionWeight) or rootProps.FrictionWeight - local elasticityWeight = (subName == ".ElasticityWeight" and setVal) or (root and root.ElasticityWeight) or rootProps.ElasticityWeight - setVal = PhysicalProperties.new(density,friction,elasticity,frictionWeight,elasticityWeight) + local density = (subName == ".Density" and setVal) + or (root and root.Density) + or rootProps.Density + local friction = (subName == ".Friction" and setVal) + or (root and root.Friction) + or rootProps.Friction + local elasticity = (subName == ".Elasticity" and setVal) + or (root and root.Elasticity) + or rootProps.Elasticity + local frictionWeight = (subName == ".FrictionWeight" and setVal) + or (root and root.FrictionWeight) + or rootProps.FrictionWeight + local elasticityWeight = (subName == ".ElasticityWeight" and setVal) + or (root and root.ElasticityWeight) + or rootProps.ElasticityWeight + setVal = + PhysicalProperties.new(density, friction, elasticity, frictionWeight, elasticityWeight) elseif rootTypeName == "Ray" then - local rootOrigin,rootDirection = root.Origin,root.Direction - local origin = (subName == ".Origin" and setVal) or Vector3.new((subName == ".Origin.X" and setVal) or rootOrigin.X, (subName == ".Origin.Y" and setVal) or rootOrigin.Y, (subName == ".Origin.Z" and setVal) or rootOrigin.Z) - local direction = (subName == ".Direction" and setVal) or Vector3.new((subName == ".Direction.X" and setVal) or rootDirection.X, (subName == ".Direction.Y" and setVal) or rootDirection.Y, (subName == ".Direction.Z" and setVal) or rootDirection.Z) - setVal = Ray.new(origin,direction) + local rootOrigin, rootDirection = root.Origin, root.Direction + local origin = (subName == ".Origin" and setVal) + or Vector3.new( + (subName == ".Origin.X" and setVal) or rootOrigin.X, + (subName == ".Origin.Y" and setVal) or rootOrigin.Y, + (subName == ".Origin.Z" and setVal) or rootOrigin.Z + ) + local direction = (subName == ".Direction" and setVal) + or Vector3.new( + (subName == ".Direction.X" and setVal) or rootDirection.X, + (subName == ".Direction.Y" and setVal) or rootDirection.Y, + (subName == ".Direction.Z" and setVal) or rootDirection.Z + ) + setVal = Ray.new(origin, direction) elseif rootTypeName == "Faces" then local faces = {} - local faceList = {"Back","Bottom","Front","Left","Right","Top"} - for _,face in pairs(faceList) do + local faceList = { "Back", "Bottom", "Front", "Left", "Right", "Top" } + for _, face in pairs(faceList) do local val - if subName == "."..face then + if subName == "." .. face then val = setVal else val = root[face] end - if val then faces[#faces+1] = Enum.NormalId[face] end + if val then + faces[#faces + 1] = Enum.NormalId[face] + end end setVal = Faces.new(unpack(faces)) elseif rootTypeName == "Axes" then local axes = {} - local axesList = {"X","Y","Z"} - for _,axe in pairs(axesList) do + local axesList = { "X", "Y", "Z" } + for _, axe in pairs(axesList) do local val - if subName == "."..axe then + if subName == "." .. axe then val = setVal else val = root[axe] end - if val then axes[#axes+1] = Enum.Axis[axe] end + if val then + axes[#axes + 1] = Enum.Axis[axe] + end end setVal = Axes.new(unpack(axes)) elseif rootTypeName == "NumberRange" then - setVal = NumberRange.new(subName == ".Min" and setVal or root.Min, subName == ".Max" and setVal or root.Max) + setVal = NumberRange.new( + subName == ".Min" and setVal or root.Min, + subName == ".Max" and setVal or root.Max + ) end end @@ -1759,8 +2442,12 @@ local function main() setVal = root or PhysicalProperties.new(obj.Material) end + if prop.IsAddTagButton or prop.IsTag or prop.IsSpecial then + return -- NEVER write to this pseudo-property + end + if prop.IsAttribute then - setAttribute(obj,attributeName,setVal) + setAttribute(obj, attributeName, setVal) -- ADONIS Dex_RemoteFunction:InvokeServer("SetPropertyAttribute", obj, attributeName, setVal) @@ -1781,20 +2468,57 @@ local function main() Properties.InitInputBox = function() inputBox = create({ - {1,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderSizePixel=0,Name="InputBox",Size=UDim2.new(0,200,0,22),Visible=false,ZIndex=2,}}, - {2,"TextBox",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BackgroundTransparency=1,BorderColor3=Color3.new(0.062745101749897,0.51764708757401,1),BorderSizePixel=0,ClearTextOnFocus=false,Font=3,Parent={1},PlaceholderColor3=Color3.new(0.69803923368454,0.69803923368454,0.69803923368454),Position=UDim2.new(0,3,0,0),Size=UDim2.new(1,-6,1,0),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,TextXAlignment=0,ZIndex=2,}}, + { + 1, + "Frame", + { + BackgroundColor3 = Color3.new(0.14901961386204, 0.14901961386204, 0.14901961386204), + BorderSizePixel = 0, + Name = "InputBox", + Size = UDim2.new(0, 200, 0, 22), + Visible = false, + ZIndex = 2, + }, + }, + { + 2, + "TextBox", + { + BackgroundColor3 = Color3.new(0.17647059261799, 0.17647059261799, 0.17647059261799), + BackgroundTransparency = 1, + BorderColor3 = Color3.new(0.062745101749897, 0.51764708757401, 1), + BorderSizePixel = 0, + ClearTextOnFocus = false, + Font = 3, + Parent = { 1 }, + PlaceholderColor3 = Color3.new(0.69803923368454, 0.69803923368454, 0.69803923368454), + Position = UDim2.new(0, 3, 0, 0), + Size = UDim2.new(1, -6, 1, 0), + Text = "", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + TextXAlignment = 0, + ZIndex = 2, + }, + }, }) inputTextBox = inputBox.TextBox inputBox.BackgroundColor3 = Settings.Theme.TextBox inputBox.Parent = Properties.Window.GuiElems.Content.List inputTextBox.FocusLost:Connect(function() - if not inputProp then return end + if not inputProp then + return + end local prop = inputProp inputProp = nil - local val = Properties.StringToValue(prop,inputTextBox.Text) - if val then Properties.SetProp(prop,val) else Properties.Refresh() end + local val = Properties.StringToValue(prop, inputTextBox.Text) + if val then + Properties.SetProp(prop, val) + else + Properties.Refresh() + end end) inputTextBox.Focused:Connect(function() @@ -1805,49 +2529,51 @@ local function main() Lib.ViewportTextBox.convert(inputTextBox) end - Properties.SetInputProp = function(prop,entryIndex,special) + Properties.SetInputProp = function(prop, entryIndex, special) local typeData = prop.ValueType local typeName = typeData.Name - local fullName = prop.Class.."."..prop.Name..(prop.SubName or "") + local fullName = prop.Class .. "." .. prop.Name .. (prop.SubName or "") local propObj = autoUpdateObjs[fullName] - local propVal = Properties.GetPropVal(prop,propObj) + local propVal = Properties.GetPropVal(prop, propObj) - if prop.Tags.ReadOnly then return end + if prop.Tags.ReadOnly then + return + end inputProp = prop if special then if special == "color" then if typeName == "Color3" then - inputTextBox.Text = propVal and Properties.ValueToString(prop,propVal) or "" - Properties.DisplayColorEditor(prop,propVal) + inputTextBox.Text = propVal and Properties.ValueToString(prop, propVal) or "" + Properties.DisplayColorEditor(prop, propVal) elseif typeName == "BrickColor" then - Properties.DisplayBrickColorEditor(prop,entryIndex,propVal) + Properties.DisplayBrickColorEditor(prop, entryIndex, propVal) elseif typeName == "ColorSequence" then - inputTextBox.Text = propVal and Properties.ValueToString(prop,propVal) or "" - Properties.DisplayColorSequenceEditor(prop,propVal) + inputTextBox.Text = propVal and Properties.ValueToString(prop, propVal) or "" + Properties.DisplayColorSequenceEditor(prop, propVal) end elseif special == "right" then if typeName == "NumberSequence" then - inputTextBox.Text = propVal and Properties.ValueToString(prop,propVal) or "" - Properties.DisplayNumberSequenceEditor(prop,propVal) + inputTextBox.Text = propVal and Properties.ValueToString(prop, propVal) or "" + Properties.DisplayNumberSequenceEditor(prop, propVal) elseif typeName == "ColorSequence" then - inputTextBox.Text = propVal and Properties.ValueToString(prop,propVal) or "" - Properties.DisplayColorSequenceEditor(prop,propVal) + inputTextBox.Text = propVal and Properties.ValueToString(prop, propVal) or "" + Properties.DisplayColorSequenceEditor(prop, propVal) end end else if Properties.IsTextEditable(prop) then -- TODO: A setting maybe. --inputTextBox.Text = propVal and Properties.ValueToString(prop,propVal) or "" - local rawStr = propVal and Properties.ValueToString(prop,propVal) or "" - inputTextBox.Text = rawStr:gsub("-?%d+%.%d+",function(num) - return tostring(tonumber(("%."..Settings.Properties.NumberRounding.."f"):format(num))) + local rawStr = propVal and Properties.ValueToString(prop, propVal) or "" + inputTextBox.Text = rawStr:gsub("-?%d+%.%d+", function(num) + return tostring(tonumber(("%." .. Settings.Properties.NumberRounding .. "f"):format(num))) end) inputTextBox:CaptureFocus() elseif typeData.Category == "Enum" then Properties.DisplayEnumDropdown(entryIndex) elseif typeName == "BrickColor" then - Properties.DisplayBrickColorEditor(prop,entryIndex,propVal) + Properties.DisplayBrickColorEditor(prop, entryIndex, propVal) end end Properties.Refresh() @@ -1867,39 +2593,388 @@ local function main() Properties.InitEntryStuff = function() Properties.EntryTemplate = create({ - {1,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BackgroundTransparency=0.2,BorderColor3=Color3.new(0.1294117718935,0.1294117718935,0.1294117718935),Font=3,Name="Entry",Position=UDim2.new(0,1,0,1),Size=UDim2.new(0,250,0,22),Text="",TextSize=14,}}, - {2,"Frame",{BackgroundColor3=Color3.new(0.04313725605607,0.35294118523598,0.68627452850342),BackgroundTransparency=1,BorderColor3=Color3.new(0.33725491166115,0.49019610881805,0.73725491762161),BorderSizePixel=0,Name="NameFrame",Parent={1},Position=UDim2.new(0,20,0,0),Size=UDim2.new(1,-40,1,0),}}, - {3,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="PropName",Parent={2},Position=UDim2.new(0,2,0,0),Size=UDim2.new(1,-2,1,0),Text="Anchored",TextColor3=Color3.new(1,1,1),TextSize=14,TextTransparency=0.10000000149012,TextTruncate=1,TextXAlignment=0,}}, - {4,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,ClipsDescendants=true,Font=3,Name="Expand",Parent={2},Position=UDim2.new(0,-20,0,1),Size=UDim2.new(0,20,0,20),Text="",TextSize=14,Visible=false,}}, - {5,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://5642383285",ImageRectOffset=Vector2.new(144,16),ImageRectSize=Vector2.new(16,16),Name="Icon",Parent={4},Position=UDim2.new(0,2,0,2),ScaleType=4,Size=UDim2.new(0,16,0,16),}}, - {6,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=4,Name="ToggleAttributes",Parent={2},Position=UDim2.new(1,-85,0,0),Size=UDim2.new(0,85,0,22),Text="[SETTING: OFF]",TextColor3=Color3.new(1,1,1),TextSize=14,TextTransparency=0.10000000149012,Visible=false,}}, - {7,"Frame",{BackgroundColor3=Color3.new(0.04313725605607,0.35294118523598,0.68627452850342),BackgroundTransparency=1,BorderColor3=Color3.new(0.33725491166115,0.49019607901573,0.73725491762161),BorderSizePixel=0,Name="ValueFrame",Parent={1},Position=UDim2.new(1,-100,0,0),Size=UDim2.new(0,80,1,0),}}, - {8,"Frame",{BackgroundColor3=Color3.new(0.14117647707462,0.14117647707462,0.14117647707462),BorderColor3=Color3.new(0.33725491166115,0.49019610881805,0.73725491762161),BorderSizePixel=0,Name="Line",Parent={7},Position=UDim2.new(0,-1,0,0),Size=UDim2.new(0,1,1,0),}}, - {9,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="ColorButton",Parent={7},Size=UDim2.new(0,20,0,22),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,Visible=false,}}, - {10,"Frame",{BackgroundColor3=Color3.new(1,1,1),BorderColor3=Color3.new(0,0,0),Name="ColorPreview",Parent={9},Position=UDim2.new(0,5,0,6),Size=UDim2.new(0,10,0,10),}}, - {11,"UIGradient",{Parent={10},}}, - {12,"Frame",{BackgroundTransparency=1,Name="EnumArrow",Parent={7},Position=UDim2.new(1,-16,0,3),Size=UDim2.new(0,16,0,16),Visible=false,}}, - {13,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={12},Position=UDim2.new(0,8,0,9),Size=UDim2.new(0,1,0,1),}}, - {14,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={12},Position=UDim2.new(0,7,0,8),Size=UDim2.new(0,3,0,1),}}, - {15,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={12},Position=UDim2.new(0,6,0,7),Size=UDim2.new(0,5,0,1),}}, - {16,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="ValueBox",Parent={7},Position=UDim2.new(0,4,0,0),Size=UDim2.new(1,-8,1,0),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,TextTransparency=0.10000000149012,TextTruncate=1,TextXAlignment=0,}}, - {17,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="RightButton",Parent={7},Position=UDim2.new(1,-20,0,0),Size=UDim2.new(0,20,0,22),Text="...",TextColor3=Color3.new(1,1,1),TextSize=14,Visible=false,}}, - {18,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="SettingsButton",Parent={7},Position=UDim2.new(1,-20,0,0),Size=UDim2.new(0,20,0,22),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,Visible=false,}}, - {19,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Name="SoundPreview",Parent={7},Size=UDim2.new(1,0,1,0),Visible=false,}}, - {20,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="ControlButton",Parent={19},Size=UDim2.new(0,20,0,22),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,}}, - {21,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://5642383285",ImageRectOffset=Vector2.new(144,16),ImageRectSize=Vector2.new(16,16),Name="Icon",Parent={20},Position=UDim2.new(0,2,0,3),ScaleType=4,Size=UDim2.new(0,16,0,16),}}, - {22,"Frame",{BackgroundColor3=Color3.new(0.3137255012989,0.3137255012989,0.3137255012989),BorderSizePixel=0,Name="TimeLine",Parent={19},Position=UDim2.new(0,26,0.5,-1),Size=UDim2.new(1,-34,0,2),}}, - {23,"Frame",{BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderColor3=Color3.new(0.1294117718935,0.1294117718935,0.1294117718935),Name="Slider",Parent={22},Position=UDim2.new(0,-4,0,-8),Size=UDim2.new(0,8,0,18),}}, - {24,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="EditAttributeButton",Parent={1},Position=UDim2.new(1,-20,0,0),Size=UDim2.new(0,20,0,22),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,}}, - {25,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://5034718180",ImageTransparency=0.20000000298023,Name="Icon",Parent={24},Position=UDim2.new(0,2,0,3),Size=UDim2.new(0,16,0,16),}}, - {26,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderSizePixel=0,Font=3,Name="RowButton",Parent={1},Size=UDim2.new(1,0,1,0),Text="Add Attribute",TextColor3=Color3.new(1,1,1),TextSize=14,TextTransparency=0.10000000149012,Visible=false,}}, + { + 1, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.17647059261799, 0.17647059261799, 0.17647059261799), + BackgroundTransparency = 0.2, + BorderColor3 = Color3.new(0.1294117718935, 0.1294117718935, 0.1294117718935), + Font = 3, + Name = "Entry", + Position = UDim2.new(0, 1, 0, 1), + Size = UDim2.new(0, 250, 0, 22), + Text = "", + TextSize = 14, + }, + }, + { + 2, + "Frame", + { + BackgroundColor3 = Color3.new(0.04313725605607, 0.35294118523598, 0.68627452850342), + BackgroundTransparency = 1, + BorderColor3 = Color3.new(0.33725491166115, 0.49019610881805, 0.73725491762161), + BorderSizePixel = 0, + Name = "NameFrame", + Parent = { 1 }, + Position = UDim2.new(0, 20, 0, 0), + Size = UDim2.new(1, -40, 1, 0), + }, + }, + { + 3, + "TextLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Font = 3, + Name = "PropName", + Parent = { 2 }, + Position = UDim2.new(0, 2, 0, 0), + Size = UDim2.new(1, -2, 1, 0), + Text = "Anchored", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + TextTransparency = 0.10000000149012, + TextTruncate = 1, + TextXAlignment = 0, + }, + }, + { + 4, + "TextButton", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + ClipsDescendants = true, + Font = 3, + Name = "Expand", + Parent = { 2 }, + Position = UDim2.new(0, -20, 0, 1), + Size = UDim2.new(0, 20, 0, 20), + Text = "", + TextSize = 14, + Visible = false, + }, + }, + { + 5, + "ImageLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Image = "rbxassetid://5642383285", + ImageRectOffset = Vector2.new(144, 16), + ImageRectSize = Vector2.new(16, 16), + Name = "Icon", + Parent = { 4 }, + Position = UDim2.new(0, 2, 0, 2), + ScaleType = 4, + Size = UDim2.new(0, 16, 0, 16), + }, + }, + { + 6, + "TextButton", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 4, + Name = "ToggleAttributes", + Parent = { 2 }, + Position = UDim2.new(1, -85, 0, 0), + Size = UDim2.new(0, 85, 0, 22), + Text = "[SETTING: OFF]", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + TextTransparency = 0.10000000149012, + Visible = false, + }, + }, + { + 7, + "Frame", + { + BackgroundColor3 = Color3.new(0.04313725605607, 0.35294118523598, 0.68627452850342), + BackgroundTransparency = 1, + BorderColor3 = Color3.new(0.33725491166115, 0.49019607901573, 0.73725491762161), + BorderSizePixel = 0, + Name = "ValueFrame", + Parent = { 1 }, + Position = UDim2.new(1, -100, 0, 0), + Size = UDim2.new(0, 80, 1, 0), + }, + }, + { + 8, + "Frame", + { + BackgroundColor3 = Color3.new(0.14117647707462, 0.14117647707462, 0.14117647707462), + BorderColor3 = Color3.new(0.33725491166115, 0.49019610881805, 0.73725491762161), + BorderSizePixel = 0, + Name = "Line", + Parent = { 7 }, + Position = UDim2.new(0, -1, 0, 0), + Size = UDim2.new(0, 1, 1, 0), + }, + }, + { + 9, + "TextButton", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "ColorButton", + Parent = { 7 }, + Size = UDim2.new(0, 20, 0, 22), + Text = "", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + Visible = false, + }, + }, + { + 10, + "Frame", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BorderColor3 = Color3.new(0, 0, 0), + Name = "ColorPreview", + Parent = { 9 }, + Position = UDim2.new(0, 5, 0, 6), + Size = UDim2.new(0, 10, 0, 10), + }, + }, + { 11, "UIGradient", { Parent = { 10 } } }, + { + 12, + "Frame", + { + BackgroundTransparency = 1, + Name = "EnumArrow", + Parent = { 7 }, + Position = UDim2.new(1, -16, 0, 3), + Size = UDim2.new(0, 16, 0, 16), + Visible = false, + }, + }, + { + 13, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 12 }, + Position = UDim2.new(0, 8, 0, 9), + Size = UDim2.new(0, 1, 0, 1), + }, + }, + { + 14, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 12 }, + Position = UDim2.new(0, 7, 0, 8), + Size = UDim2.new(0, 3, 0, 1), + }, + }, + { + 15, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 12 }, + Position = UDim2.new(0, 6, 0, 7), + Size = UDim2.new(0, 5, 0, 1), + }, + }, + { + 16, + "TextButton", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Font = 3, + Name = "ValueBox", + Parent = { 7 }, + Position = UDim2.new(0, 4, 0, 0), + Size = UDim2.new(1, -8, 1, 0), + Text = "", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + TextTransparency = 0.10000000149012, + TextTruncate = 1, + TextXAlignment = 0, + }, + }, + { + 17, + "TextButton", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "RightButton", + Parent = { 7 }, + Position = UDim2.new(1, -20, 0, 0), + Size = UDim2.new(0, 20, 0, 22), + Text = "...", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + Visible = false, + }, + }, + { + 18, + "TextButton", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "SettingsButton", + Parent = { 7 }, + Position = UDim2.new(1, -20, 0, 0), + Size = UDim2.new(0, 20, 0, 22), + Text = "", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + Visible = false, + }, + }, + { + 19, + "Frame", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Name = "SoundPreview", + Parent = { 7 }, + Size = UDim2.new(1, 0, 1, 0), + Visible = false, + }, + }, + { + 20, + "TextButton", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "ControlButton", + Parent = { 19 }, + Size = UDim2.new(0, 20, 0, 22), + Text = "", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + }, + }, + { + 21, + "ImageLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Image = "rbxassetid://5642383285", + ImageRectOffset = Vector2.new(144, 16), + ImageRectSize = Vector2.new(16, 16), + Name = "Icon", + Parent = { 20 }, + Position = UDim2.new(0, 2, 0, 3), + ScaleType = 4, + Size = UDim2.new(0, 16, 0, 16), + }, + }, + { + 22, + "Frame", + { + BackgroundColor3 = Color3.new(0.3137255012989, 0.3137255012989, 0.3137255012989), + BorderSizePixel = 0, + Name = "TimeLine", + Parent = { 19 }, + Position = UDim2.new(0, 26, 0.5, -1), + Size = UDim2.new(1, -34, 0, 2), + }, + }, + { + 23, + "Frame", + { + BackgroundColor3 = Color3.new(0.2352941185236, 0.2352941185236, 0.2352941185236), + BorderColor3 = Color3.new(0.1294117718935, 0.1294117718935, 0.1294117718935), + Name = "Slider", + Parent = { 22 }, + Position = UDim2.new(0, -4, 0, -8), + Size = UDim2.new(0, 8, 0, 18), + }, + }, + { + 24, + "TextButton", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "EditAttributeButton", + Parent = { 1 }, + Position = UDim2.new(1, -20, 0, 0), + Size = UDim2.new(0, 20, 0, 22), + Text = "", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + }, + }, + { + 25, + "ImageLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Image = "rbxassetid://5034718180", + ImageTransparency = 0.20000000298023, + Name = "Icon", + Parent = { 24 }, + Position = UDim2.new(0, 2, 0, 3), + Size = UDim2.new(0, 16, 0, 16), + }, + }, + { + 26, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.2352941185236, 0.2352941185236, 0.2352941185236), + BorderSizePixel = 0, + Font = 3, + Name = "RowButton", + Parent = { 1 }, + Size = UDim2.new(1, 0, 1, 0), + Text = "Add Attribute", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + TextTransparency = 0.10000000149012, + Visible = false, + }, + }, }) local fullNameFrame = Lib.Frame.new() local label = Lib.Label.new() label.Parent = fullNameFrame.Gui - label.Position = UDim2.new(0,2,0,0) - label.Size = UDim2.new(1,-4,1,0) + label.Position = UDim2.new(0, 2, 0, 0) + label.Size = UDim2.new(1, -4, 1, 0) fullNameFrame.Visible = false fullNameFrame.Parent = window.Gui @@ -1909,24 +2984,146 @@ local function main() Properties.Init = function() -- TODO: MAKE BETTER local guiItems = create({ - {1,"Folder",{Name="Items",}}, - {2,"Frame",{BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),BorderSizePixel=0,Name="ToolBar",Parent={1},Size=UDim2.new(1,0,0,22),}}, - {3,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.1176470592618,0.1176470592618,0.1176470592618),BorderSizePixel=0,Name="SearchFrame",Parent={2},Position=UDim2.new(0,3,0,1),Size=UDim2.new(1,-6,0,18),}}, - {4,"TextBox",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,ClearTextOnFocus=false,Font=3,Name="SearchBox",Parent={3},PlaceholderColor3=Color3.new(0.39215689897537,0.39215689897537,0.39215689897537),PlaceholderText="Search properties",Position=UDim2.new(0,4,0,0),Size=UDim2.new(1,-24,0,18),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,TextXAlignment=0,}}, - {5,"UICorner",{CornerRadius=UDim.new(0,2),Parent={3},}}, - {6,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Reset",Parent={3},Position=UDim2.new(1,-17,0,1),Size=UDim2.new(0,16,0,16),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,}}, - {7,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://5034718129",ImageColor3=Color3.new(0.39215686917305,0.39215686917305,0.39215686917305),Parent={6},Size=UDim2.new(0,16,0,16),}}, - {8,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Refresh",Parent={2},Position=UDim2.new(1,-20,0,1),Size=UDim2.new(0,18,0,18),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,Visible=false,}}, - {9,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://5642310344",Parent={8},Position=UDim2.new(0,3,0,3),Size=UDim2.new(0,12,0,12),}}, - {10,"Frame",{BackgroundColor3=Color3.new(0.15686275064945,0.15686275064945,0.15686275064945),BorderSizePixel=0,Name="ScrollCorner",Parent={1},Position=UDim2.new(1,-16,1,-16),Size=UDim2.new(0,16,0,16),Visible=false,}}, - {11,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,ClipsDescendants=true,Name="List",Parent={1},Position=UDim2.new(0,0,0,23),Size=UDim2.new(1,0,1,-23),}}, + { 1, "Folder", { Name = "Items" } }, + { + 2, + "Frame", + { + BackgroundColor3 = Color3.new(0.20392157137394, 0.20392157137394, 0.20392157137394), + BorderSizePixel = 0, + Name = "ToolBar", + Parent = { 1 }, + Size = UDim2.new(1, 0, 0, 22), + }, + }, + { + 3, + "Frame", + { + BackgroundColor3 = Color3.new(0.14901961386204, 0.14901961386204, 0.14901961386204), + BorderColor3 = Color3.new(0.1176470592618, 0.1176470592618, 0.1176470592618), + BorderSizePixel = 0, + Name = "SearchFrame", + Parent = { 2 }, + Position = UDim2.new(0, 3, 0, 1), + Size = UDim2.new(1, -6, 0, 18), + }, + }, + { + 4, + "TextBox", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + ClearTextOnFocus = false, + Font = 3, + Name = "SearchBox", + Parent = { 3 }, + PlaceholderColor3 = Color3.new(0.39215689897537, 0.39215689897537, 0.39215689897537), + PlaceholderText = "Search properties", + Position = UDim2.new(0, 4, 0, 0), + Size = UDim2.new(1, -24, 0, 18), + Text = "", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + TextXAlignment = 0, + }, + }, + { 5, "UICorner", { CornerRadius = UDim.new(0, 2), Parent = { 3 } } }, + { + 6, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.12549020349979, 0.12549020349979, 0.12549020349979), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "Reset", + Parent = { 3 }, + Position = UDim2.new(1, -17, 0, 1), + Size = UDim2.new(0, 16, 0, 16), + Text = "", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + }, + }, + { + 7, + "ImageLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Image = "rbxassetid://5034718129", + ImageColor3 = Color3.new(0.39215686917305, 0.39215686917305, 0.39215686917305), + Parent = { 6 }, + Size = UDim2.new(0, 16, 0, 16), + }, + }, + { + 8, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.12549020349979, 0.12549020349979, 0.12549020349979), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "Refresh", + Parent = { 2 }, + Position = UDim2.new(1, -20, 0, 1), + Size = UDim2.new(0, 18, 0, 18), + Text = "", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + Visible = false, + }, + }, + { + 9, + "ImageLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Image = "rbxassetid://5642310344", + Parent = { 8 }, + Position = UDim2.new(0, 3, 0, 3), + Size = UDim2.new(0, 12, 0, 12), + }, + }, + { + 10, + "Frame", + { + BackgroundColor3 = Color3.new(0.15686275064945, 0.15686275064945, 0.15686275064945), + BorderSizePixel = 0, + Name = "ScrollCorner", + Parent = { 1 }, + Position = UDim2.new(1, -16, 1, -16), + Size = UDim2.new(0, 16, 0, 16), + Visible = false, + }, + }, + { + 11, + "Frame", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + ClipsDescendants = true, + Name = "List", + Parent = { 1 }, + Position = UDim2.new(0, 0, 0, 23), + Size = UDim2.new(1, 0, 1, -23), + }, + }, }) -- Vars - categoryOrder = API.CategoryOrder - for category,_ in next,categoryOrder do + categoryOrder = API.CategoryOrder + for category, _ in next, categoryOrder do if not Properties.CollapsedCategories[category] then - expanded["CAT_"..category] = true + expanded["CAT_" .. category] = true end end expanded["Sound.SoundId"] = true @@ -1964,9 +3161,9 @@ local function main() end) -- Init scrollbars - scrollV = Lib.ScrollBar.new() + scrollV = Lib.ScrollBar.new() scrollV.WheelIncrement = 3 - scrollV.Gui.Position = UDim2.new(1,-16,0,23) + scrollV.Gui.Position = UDim2.new(1, -16, 0, 23) scrollV:SetScrollFrame(propsFrame) scrollV.Scrolled:Connect(function() Properties.Index = scrollV.Index @@ -1976,13 +3173,13 @@ local function main() scrollH = Lib.ScrollBar.new(true) scrollH.Increment = 5 scrollH.WheelIncrement = 20 - scrollH.Gui.Position = UDim2.new(0,0,1,-16) + scrollH.Gui.Position = UDim2.new(0, 0, 1, -16) scrollH.Scrolled:Connect(function() Properties.Refresh() end) -- Setup Gui - window.GuiElems.Line.Position = UDim2.new(0,0,0,22) + window.GuiElems.Line.Position = UDim2.new(0, 0, 0, 22) toolBar.Parent = window.GuiElems.Content propsFrame.Parent = window.GuiElems.Content guiItems.ScrollCorner.Parent = window.GuiElems.Content @@ -1995,4 +3192,4 @@ local function main() return Properties end -return {InitDeps = initDeps, InitAfterMain = initAfterMain, Main = main} \ No newline at end of file +return { InitDeps = initDeps, InitAfterMain = initAfterMain, Main = main } diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua index 7a136bb6f3..b3fd032323 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua @@ -32,14 +32,14 @@ DefaultSettings = (function() Explorer = { _Recurse = true, Sorting = true, - TeleportToOffset = Vector3.new(0,0,0), + TeleportToOffset = Vector3.new(0, 0, 0), ClickToSelect = false, -- Click part to select ClickToRename = true, AutoUpdateSearch = true, AutoUpdateMode = 0, -- 0 Default, 1 no tree update, 2 no descendant events, 3 frozen PartSelectionBox = true, GuiSelectionBox = true, - CopyPathUseGetChildren = true + CopyPathUseGetChildren = true, }, Properties = { _Recurse = true, @@ -51,53 +51,54 @@ DefaultSettings = (function() NumberRounding = 3, ShowAttributes = false, MaxAttributes = 50, - ScaleType = 1 -- 0 Full Name Shown, 1 Equal Halves + ShowTags = true, + ScaleType = 1, -- 0 Full Name Shown, 1 Equal Halves }, Theme = { _Recurse = true, - Main1 = rgb(52,52,52), - Main2 = rgb(45,45,45), - Outline1 = rgb(33,33,33), -- Mainly frames - Outline2 = rgb(55,55,55), -- Mainly button - Outline3 = rgb(30,30,30), -- Mainly textbox - TextBox = rgb(38,38,38), - Menu = rgb(32,32,32), - ListSelection = rgb(11,90,175), - Button = rgb(60,60,60), - ButtonHover = rgb(68,68,68), - ButtonPress = rgb(40,40,40), - Highlight = rgb(75,75,75), - Text = rgb(255,255,255), - PlaceholderText = rgb(100,100,100), - Important = rgb(255,0,0), + Main1 = rgb(52, 52, 52), + Main2 = rgb(45, 45, 45), + Outline1 = rgb(33, 33, 33), -- Mainly frames + Outline2 = rgb(55, 55, 55), -- Mainly button + Outline3 = rgb(30, 30, 30), -- Mainly textbox + TextBox = rgb(38, 38, 38), + Menu = rgb(32, 32, 32), + ListSelection = rgb(11, 90, 175), + Button = rgb(60, 60, 60), + ButtonHover = rgb(68, 68, 68), + ButtonPress = rgb(40, 40, 40), + Highlight = rgb(75, 75, 75), + Text = rgb(255, 255, 255), + PlaceholderText = rgb(100, 100, 100), + Important = rgb(255, 0, 0), ExplorerIconMap = "", MiscIconMap = "", Syntax = { - Text = rgb(204,204,204), - Background = rgb(36,36,36), - Selection = rgb(255,255,255), - SelectionBack = rgb(11,90,175), - Operator = rgb(204,204,204), - Number = rgb(255,198,0), - String = rgb(173,241,149), - Comment = rgb(102,102,102), - Keyword = rgb(248,109,124), - Error = rgb(255,0,0), - FindBackground = rgb(141,118,0), - MatchingWord = rgb(85,85,85), - BuiltIn = rgb(132,214,247), - CurrentLine = rgb(45,50,65), - LocalMethod = rgb(253,251,172), - LocalProperty = rgb(97,161,241), - Nil = rgb(255,198,0), - Bool = rgb(255,198,0), - Function = rgb(248,109,124), - Local = rgb(248,109,124), - Self = rgb(248,109,124), - FunctionName = rgb(253,251,172), - Bracket = rgb(204,204,204) + Text = rgb(204, 204, 204), + Background = rgb(36, 36, 36), + Selection = rgb(255, 255, 255), + SelectionBack = rgb(11, 90, 175), + Operator = rgb(204, 204, 204), + Number = rgb(255, 198, 0), + String = rgb(173, 241, 149), + Comment = rgb(102, 102, 102), + Keyword = rgb(248, 109, 124), + Error = rgb(255, 0, 0), + FindBackground = rgb(141, 118, 0), + MatchingWord = rgb(85, 85, 85), + BuiltIn = rgb(132, 214, 247), + CurrentLine = rgb(45, 50, 65), + LocalMethod = rgb(253, 251, 172), + LocalProperty = rgb(97, 161, 241), + Nil = rgb(255, 198, 0), + Bool = rgb(255, 198, 0), + Function = rgb(248, 109, 124), + Local = rgb(248, 109, 124), + Self = rgb(248, 109, 124), + FunctionName = rgb(253, 251, 172), + Bracket = rgb(204, 204, 204), }, - } + }, } end)() @@ -105,16 +106,18 @@ end)() local Settings: any = {} local Apps = {} local env = {} -local service = setmetatable({},{__index = function(self,name) - local serv = game:GetService(name) - self[name] = serv - return serv -end}) +local service = setmetatable({}, { + __index = function(self, name) + local serv = game:GetService(name) + self[name] = serv + return serv + end, +}) local plr = service.Players.LocalPlayer or service.Players.PlayerAdded:wait() local create = function(data: { [number]: any }): Instance -- now Luau knows insts can be indexed by numbers - local insts= {} + local insts = {} for _, v in ipairs(data) do insts[v[1]] = Instance.new(v[2]) @@ -134,9 +137,9 @@ local create = function(data: { [number]: any }): Instance return insts[1] -- guaranteed to be the root end -local createSimple = function(class,props) +local createSimple = function(class, props) local inst = Instance.new(class) - for i,v in next,props do + for i, v in next, props do inst[i] = v end return inst @@ -145,7 +148,7 @@ end Main = (function() local Main = {} - Main.ModuleList = {"Explorer","Properties"}--Main.ModuleList = {"Explorer","Properties","ScriptViewer"} + Main.ModuleList = { "Explorer", "Properties" } --Main.ModuleList = {"Explorer","Properties","ScriptViewer"} Main.Elevated = false Main.MissingEnv = {} Main.Version = "Beta 1.0.5 Adonis" @@ -154,7 +157,7 @@ Main = (function() Main.Apps = Apps Main.MenuApps = {} Main.GitRepoName = "LorekeeperZinnia/Dex" - + -- silencer Main.MainGui = nil Main.AppsFrame = nil @@ -173,7 +176,7 @@ Main = (function() SideWindow = 8, Window = 10, Menu = 100000, - Core = 101000 + Core = 101000, } -- Dex_Client for Adonis @@ -192,7 +195,7 @@ Main = (function() service = service, plr = plr, create = create, - createSimple = createSimple + createSimple = createSimple, } end @@ -201,8 +204,10 @@ Main = (function() end Main.LoadModule = function(name) - local module = script:WaitForChild("Modules"):WaitForChild(name,2) - if not module then Main.Error("Cannot find module "..name) end + local module = script:WaitForChild("Modules"):WaitForChild(name, 2) + if not module then + Main.Error("Cannot find module " .. name) + end local control = require(module) :: any Main.AppControls[name] = control @@ -214,8 +219,8 @@ Main = (function() end Main.LoadModules = function() - for i,v in pairs(Main.ModuleList) do - local s,e = pcall(Main.LoadModule,v) + for i, v in pairs(Main.ModuleList) do + local s, e = pcall(Main.LoadModule, v) if not s then Main.Error("Failed loading " .. v .. " because " .. e) end @@ -230,11 +235,11 @@ Main = (function() Explorer = Explorer, Properties = Properties, ScriptViewer = ScriptViewer, - Notebook = Notebook + Notebook = Notebook, } Main.AppControls.Lib.InitAfterMain(appTable) - for i,v in pairs(Main.ModuleList) do + for i, v in pairs(Main.ModuleList) do local control = Main.AppControls[v] if control then control.InitAfterMain(appTable) @@ -244,10 +249,15 @@ Main = (function() Main.InitEnv = function() local done = false - setmetatable(env,{__newindex = function(self,name,func) - if not done and not func then Main.MissingEnv[#Main.MissingEnv+1] = name return end - rawset(self,name,func) - end}) + setmetatable(env, { + __newindex = function(self, name, func) + if not done and not func then + Main.MissingEnv[#Main.MissingEnv + 1] = name + return + end + rawset(self, name, func) + end, + }) -- file env.readfile = nil @@ -281,29 +291,28 @@ Main = (function() end Main.ResetSettings = function() - local function recur(t,res) - for set,val in pairs(t) do + local function recur(t, res) + for set, val in pairs(t) do if type(val) == "table" and val._Recurse then if type(res[set]) ~= "table" then res[set] = {} end - recur(val,res[set]) + recur(val, res[set]) else res[set] = val end end return res end - recur(DefaultSettings :: any,Settings) + recur(DefaultSettings :: any, Settings) end Main.LoadSettings = function() - local s,data = pcall(env.readfile or error,"DexSettings.json") + local s, data = pcall(env.readfile or error, "DexSettings.json") if s and data and data ~= "" then - local s,decoded = service.HttpService:JSONDecode(data) + local s, decoded = service.HttpService:JSONDecode(data) if s and decoded then - for i,v in next,decoded do - + for i, v in next, decoded do end else -- TODO: Notification @@ -314,7 +323,7 @@ Main = (function() end Main.FetchAPI = function() - local api,rawAPI + local api, rawAPI local didwedoit = Dex_RemoteFunction:InvokeServer("fetchapi") if didwedoit and type(didwedoit) == "table" then @@ -340,20 +349,24 @@ Main = (function() api = result end - local classes,enums = {},{} - local categoryOrder,seenCategories = {},{} + local classes, enums = {}, {} + local categoryOrder, seenCategories = {}, {} - local function insertAbove(t,item,aboveItem) - local findPos = table.find(t,item) - if not findPos then return end - table.remove(t,findPos) + local function insertAbove(t, item, aboveItem) + local findPos = table.find(t, item) + if not findPos then + return + end + table.remove(t, findPos) - local pos = table.find(t,aboveItem) - if not pos then return end - table.insert(t,pos,item) + local pos = table.find(t, aboveItem) + if not pos then + return + end + table.insert(t, pos, item) end - for _,class in pairs(api.Classes) do + for _, class in pairs(api.Classes) do local newClass = {} newClass.Name = class.Name newClass.Superclass = class.Superclass @@ -363,98 +376,114 @@ Main = (function() newClass.Callbacks = {} newClass.Tags = {} - if class.Tags then for c,tag in pairs(class.Tags) do newClass.Tags[tag] = true end end - for __,member in pairs(class.Members) do + if class.Tags then + for c, tag in pairs(class.Tags) do + newClass.Tags[tag] = true + end + end + for __, member in pairs(class.Members) do local newMember = {} newMember.Name = member.Name newMember.Class = class.Name newMember.Security = member.Security - newMember.Tags ={} - if member.Tags then for c,tag in pairs(member.Tags) do newMember.Tags[tag] = true end end + newMember.Tags = {} + if member.Tags then + for c, tag in pairs(member.Tags) do + newMember.Tags[tag] = true + end + end local mType = member.MemberType if mType == "Property" then local propCategory = member.Category or "Other" propCategory = propCategory:match("^%s*(.-)%s*$") if not seenCategories[propCategory] then - categoryOrder[#categoryOrder+1] = propCategory + categoryOrder[#categoryOrder + 1] = propCategory seenCategories[propCategory] = true end newMember.ValueType = member.ValueType newMember.Category = propCategory newMember.Serialization = member.Serialization - table.insert(newClass.Properties,newMember) + table.insert(newClass.Properties, newMember) elseif mType == "Function" then newMember.Parameters = {} newMember.ReturnType = member.ReturnType.Name - for c,param in pairs(member.Parameters) do - table.insert(newMember.Parameters,{Name = param.Name, Type = param.Type.Name}) + for c, param in pairs(member.Parameters) do + table.insert(newMember.Parameters, { Name = param.Name, Type = param.Type.Name }) end - table.insert(newClass.Functions,newMember) + table.insert(newClass.Functions, newMember) elseif mType == "Event" then newMember.Parameters = {} - for c,param in pairs(member.Parameters) do - table.insert(newMember.Parameters,{Name = param.Name, Type = param.Type.Name}) + for c, param in pairs(member.Parameters) do + table.insert(newMember.Parameters, { Name = param.Name, Type = param.Type.Name }) end - table.insert(newClass.Events,newMember) + table.insert(newClass.Events, newMember) end end classes[class.Name] = newClass end - for _,class in pairs(classes) do + for _, class in pairs(classes) do class.Superclass = classes[class.Superclass] end - for _,enum in pairs(api.Enums) do + for _, enum in pairs(api.Enums) do local newEnum = {} newEnum.Name = enum.Name newEnum.Items = {} newEnum.Tags = {} - if enum.Tags then for c,tag in pairs(enum.Tags) do newEnum.Tags[tag] = true end end - for __,item in pairs(enum.Items) do + if enum.Tags then + for c, tag in pairs(enum.Tags) do + newEnum.Tags[tag] = true + end + end + for __, item in pairs(enum.Items) do local newItem = {} newItem.Name = item.Name newItem.Value = item.Value - table.insert(newEnum.Items,newItem) + table.insert(newEnum.Items, newItem) end enums[enum.Name] = newEnum end - local function getMember(class,member) - if not classes[class] or not classes[class][member] then return end + local function getMember(class, member) + if not classes[class] or not classes[class][member] then + return + end local result = {} local currentClass = classes[class] while currentClass do - for _,entry in pairs(currentClass[member]) do - result[#result+1] = entry + for _, entry in pairs(currentClass[member]) do + result[#result + 1] = entry end currentClass = currentClass.Superclass end - table.sort(result,function(a,b) return a.Name < b.Name end) + table.sort(result, function(a, b) + return a.Name < b.Name + end) return result end - insertAbove(categoryOrder,"Behavior","Tuning") - insertAbove(categoryOrder,"Appearance","Data") - insertAbove(categoryOrder,"Attachments","Axes") - insertAbove(categoryOrder,"Cylinder","Slider") - insertAbove(categoryOrder,"Localization","Jump Settings") - insertAbove(categoryOrder,"Surface","Motion") - insertAbove(categoryOrder,"Surface Inputs","Surface") - insertAbove(categoryOrder,"Part","Surface Inputs") - insertAbove(categoryOrder,"Assembly","Surface Inputs") - insertAbove(categoryOrder,"Character","Controls") - categoryOrder[#categoryOrder+1] = "Unscriptable" - categoryOrder[#categoryOrder+1] = "Attributes" + insertAbove(categoryOrder, "Behavior", "Tuning") + insertAbove(categoryOrder, "Appearance", "Data") + insertAbove(categoryOrder, "Attachments", "Axes") + insertAbove(categoryOrder, "Cylinder", "Slider") + insertAbove(categoryOrder, "Localization", "Jump Settings") + insertAbove(categoryOrder, "Surface", "Motion") + insertAbove(categoryOrder, "Surface Inputs", "Surface") + insertAbove(categoryOrder, "Part", "Surface Inputs") + insertAbove(categoryOrder, "Assembly", "Surface Inputs") + insertAbove(categoryOrder, "Character", "Controls") + categoryOrder[#categoryOrder + 1] = "Unscriptable" + categoryOrder[#categoryOrder + 1] = "Attributes" local categoryOrderMap = {} - for i = 1,#categoryOrder do + for i = 1, #categoryOrder do categoryOrderMap[categoryOrder[i]] = i end @@ -462,7 +491,7 @@ Main = (function() Classes = classes, Enums = enums, CategoryOrder = categoryOrderMap, - GetMember = getMember + GetMember = getMember, } end @@ -486,37 +515,40 @@ Main = (function() local enumList = parsed.children[1].children[2].children local propertyOrders = {} - local classes,enums = {},{} - for _,class in pairs(classList) do + local classes, enums = {}, {} + for _, class in pairs(classList) do local className = "" - for _,child in pairs(class.children) do + for _, child in pairs(class.children) do if child.tag == "Properties" then - local data = {Properties = {}, Functions = {}} + local data = { Properties = {}, Functions = {} } local props = child.children - for _,prop in pairs(props) do + for _, prop in pairs(props) do local name = prop.attrs.name - name = name:sub(1,1):upper()..name:sub(2) + name = name:sub(1, 1):upper() .. name:sub(2) data[name] = prop.children[1].text end className = data.Name classes[className] = data elseif child.attrs.class == "ReflectionMetadataProperties" then local members = child.children - for _,member in pairs(members) do + for _, member in pairs(members) do if member.attrs.class == "ReflectionMetadataMember" then local data = {} if member.children[1].tag == "Properties" then local props = member.children[1].children - for _,prop in pairs(props) do + for _, prop in pairs(props) do if prop.attrs then local name = prop.attrs.name - name = name:sub(1,1):upper()..name:sub(2) + name = name:sub(1, 1):upper() .. name:sub(2) data[name] = prop.children[1].text end end if data.PropertyOrder then local orders = propertyOrders[className] - if not orders then orders = {} propertyOrders[className] = orders end + if not orders then + orders = {} + propertyOrders[className] = orders + end orders[data.Name] = tonumber(data.PropertyOrder) end classes[className].Properties[data.Name] = data @@ -525,15 +557,15 @@ Main = (function() end elseif child.attrs.class == "ReflectionMetadataFunctions" then local members = child.children - for _,member in pairs(members) do + for _, member in pairs(members) do if member.attrs.class == "ReflectionMetadataMember" then local data = {} if member.children[1].tag == "Properties" then local props = member.children[1].children - for _,prop in pairs(props) do + for _, prop in pairs(props) do if prop.attrs then local name = prop.attrs.name - name = name:sub(1,1):upper()..name:sub(2) + name = name:sub(1, 1):upper() .. name:sub(2) data[name] = prop.children[1].text end end @@ -545,15 +577,15 @@ Main = (function() end end - for _,enum in pairs(enumList) do + for _, enum in pairs(enumList) do local enumName = "" - for _,child in pairs(enum.children) do + for _, child in pairs(enum.children) do if child.tag == "Properties" then - local data = {Items = {}} + local data = { Items = {} } local props = child.children - for _,prop in pairs(props) do + for _, prop in pairs(props) do local name = prop.attrs.name - name = name:sub(1,1):upper()..name:sub(2) + name = name:sub(1, 1):upper() .. name:sub(2) data[name] = prop.children[1].text end enumName = data.Name @@ -562,9 +594,9 @@ Main = (function() local data = {} if child.children[1].tag == "Properties" then local props = child.children[1].children - for _,prop in pairs(props) do + for _, prop in pairs(props) do local name = prop.attrs.name - name = name:sub(1,1):upper()..name:sub(2) + name = name:sub(1, 1):upper() .. name:sub(2) data[name] = prop.children[1].text end enums[enumName].Items[data.Name] = data @@ -573,7 +605,7 @@ Main = (function() end end - return {Classes = classes, Enums = enums, PropertyOrders = propertyOrders} + return { Classes = classes, Enums = enums, PropertyOrders = propertyOrders } end Main.ShowGui = function(gui) @@ -585,23 +617,229 @@ Main = (function() Main.CreateIntro = function(initStatus) -- TODO: Must theme and show errors local gui = create({ - {1,"ScreenGui",{Name="Dex_Intro",ResetOnSpawn=false}}, - {2,"Frame",{Active=true,BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),BorderSizePixel=0,Name="Main",Parent={1},Position=UDim2.new(0.5,-175,0.5,-100),Size=UDim2.new(0,350,0,200),}}, - {3,"Frame",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BorderSizePixel=0,ClipsDescendants=true,Name="Holder",Parent={2},Size=UDim2.new(1,0,1,0),}}, - {4,"UIGradient",{Parent={3},Rotation=30,Transparency=NumberSequence.new({NumberSequenceKeypoint.new(0,1,0),NumberSequenceKeypoint.new(1,1,0),}),}}, - {5,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=4,Name="Title",Parent={3},Position=UDim2.new(0,-190,0,15),Size=UDim2.new(0,100,0,50),Text="Dex",TextColor3=Color3.new(1,1,1),TextSize=50,TextTransparency=1,}}, - {6,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Desc",Parent={3},Position=UDim2.new(0,-230,0,60),Size=UDim2.new(0,180,0,25),Text="Ultimate Debugging Suite",TextColor3=Color3.new(1,1,1),TextSize=18,TextTransparency=1,}}, - {7,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="StatusText",Parent={3},Position=UDim2.new(0,20,0,110),Size=UDim2.new(0,180,0,25),Text="Fetching API",TextColor3=Color3.new(1,1,1),TextSize=14,TextTransparency=1,}}, - {8,"Frame",{BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),BorderSizePixel=0,Name="ProgressBar",Parent={3},Position=UDim2.new(0,110,0,145),Size=UDim2.new(0,0,0,4),}}, - {9,"Frame",{BackgroundColor3=Color3.new(0.2392156869173,0.56078433990479,0.86274510622025),BorderSizePixel=0,Name="Bar",Parent={8},Size=UDim2.new(0,0,1,0),}}, - {10,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://2764171053",ImageColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),Parent={8},ScaleType=1,Size=UDim2.new(1,0,1,0),SliceCenter=Rect.new(2,2,254,254),}}, - {11,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Creator",Parent={2},Position=UDim2.new(1,-110,1,-20),Size=UDim2.new(0,105,0,20),Text="Developed by Moon",TextColor3=Color3.new(1,1,1),TextSize=14,TextXAlignment=1,}}, - {12,"UIGradient",{Parent={11},Transparency=NumberSequence.new({NumberSequenceKeypoint.new(0,1,0),NumberSequenceKeypoint.new(1,1,0),}),}}, - {13,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Version",Parent={2},Position=UDim2.new(1,-110,1,-35),Size=UDim2.new(0,105,0,20),Text="Beta 1.0.0",TextColor3=Color3.new(1,1,1),TextSize=14,TextXAlignment=1,}}, - {14,"UIGradient",{Parent={13},Transparency=NumberSequence.new({NumberSequenceKeypoint.new(0,1,0),NumberSequenceKeypoint.new(1,1,0),}),}}, - {15,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Image="rbxassetid://1427967925",Name="Outlines",Parent={2},Position=UDim2.new(0,-5,0,-5),ScaleType=1,Size=UDim2.new(1,10,1,10),SliceCenter=Rect.new(6,6,25,25),TileSize=UDim2.new(0,20,0,20),}}, - {16,"UIGradient",{Parent={15},Rotation=-30,Transparency=NumberSequence.new({NumberSequenceKeypoint.new(0,1,0),NumberSequenceKeypoint.new(1,1,0),}),}}, - {17,"UIGradient",{Parent={2},Rotation=-30,Transparency=NumberSequence.new({NumberSequenceKeypoint.new(0,1,0),NumberSequenceKeypoint.new(1,1,0),}),}}, + { 1, "ScreenGui", { Name = "Dex_Intro", ResetOnSpawn = false } }, + { + 2, + "Frame", + { + Active = true, + BackgroundColor3 = Color3.new(0.20392157137394, 0.20392157137394, 0.20392157137394), + BorderSizePixel = 0, + Name = "Main", + Parent = { 1 }, + Position = UDim2.new(0.5, -175, 0.5, -100), + Size = UDim2.new(0, 350, 0, 200), + }, + }, + { + 3, + "Frame", + { + BackgroundColor3 = Color3.new(0.17647059261799, 0.17647059261799, 0.17647059261799), + BorderSizePixel = 0, + ClipsDescendants = true, + Name = "Holder", + Parent = { 2 }, + Size = UDim2.new(1, 0, 1, 0), + }, + }, + { + 4, + "UIGradient", + { + Parent = { 3 }, + Rotation = 30, + Transparency = NumberSequence.new({ + NumberSequenceKeypoint.new(0, 1, 0), + NumberSequenceKeypoint.new(1, 1, 0), + }), + }, + }, + { + 5, + "TextLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Font = 4, + Name = "Title", + Parent = { 3 }, + Position = UDim2.new(0, -190, 0, 15), + Size = UDim2.new(0, 100, 0, 50), + Text = "Dex", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 50, + TextTransparency = 1, + }, + }, + { + 6, + "TextLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Font = 3, + Name = "Desc", + Parent = { 3 }, + Position = UDim2.new(0, -230, 0, 60), + Size = UDim2.new(0, 180, 0, 25), + Text = "Ultimate Debugging Suite", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 18, + TextTransparency = 1, + }, + }, + { + 7, + "TextLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Font = 3, + Name = "StatusText", + Parent = { 3 }, + Position = UDim2.new(0, 20, 0, 110), + Size = UDim2.new(0, 180, 0, 25), + Text = "Fetching API", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + TextTransparency = 1, + }, + }, + { + 8, + "Frame", + { + BackgroundColor3 = Color3.new(0.20392157137394, 0.20392157137394, 0.20392157137394), + BorderSizePixel = 0, + Name = "ProgressBar", + Parent = { 3 }, + Position = UDim2.new(0, 110, 0, 145), + Size = UDim2.new(0, 0, 0, 4), + }, + }, + { + 9, + "Frame", + { + BackgroundColor3 = Color3.new(0.2392156869173, 0.56078433990479, 0.86274510622025), + BorderSizePixel = 0, + Name = "Bar", + Parent = { 8 }, + Size = UDim2.new(0, 0, 1, 0), + }, + }, + { + 10, + "ImageLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Image = "rbxassetid://2764171053", + ImageColor3 = Color3.new(0.17647059261799, 0.17647059261799, 0.17647059261799), + Parent = { 8 }, + ScaleType = 1, + Size = UDim2.new(1, 0, 1, 0), + SliceCenter = Rect.new(2, 2, 254, 254), + }, + }, + { + 11, + "TextLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Font = 3, + Name = "Creator", + Parent = { 2 }, + Position = UDim2.new(1, -110, 1, -20), + Size = UDim2.new(0, 105, 0, 20), + Text = "Developed by Moon", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + TextXAlignment = 1, + }, + }, + { + 12, + "UIGradient", + { + Parent = { 11 }, + Transparency = NumberSequence.new({ + NumberSequenceKeypoint.new(0, 1, 0), + NumberSequenceKeypoint.new(1, 1, 0), + }), + }, + }, + { + 13, + "TextLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Font = 3, + Name = "Version", + Parent = { 2 }, + Position = UDim2.new(1, -110, 1, -35), + Size = UDim2.new(0, 105, 0, 20), + Text = "Beta 1.0.0", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + TextXAlignment = 1, + }, + }, + { + 14, + "UIGradient", + { + Parent = { 13 }, + Transparency = NumberSequence.new({ + NumberSequenceKeypoint.new(0, 1, 0), + NumberSequenceKeypoint.new(1, 1, 0), + }), + }, + }, + { + 15, + "ImageLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Image = "rbxassetid://1427967925", + Name = "Outlines", + Parent = { 2 }, + Position = UDim2.new(0, -5, 0, -5), + ScaleType = 1, + Size = UDim2.new(1, 10, 1, 10), + SliceCenter = Rect.new(6, 6, 25, 25), + TileSize = UDim2.new(0, 20, 0, 20), + }, + }, + { + 16, + "UIGradient", + { + Parent = { 15 }, + Rotation = -30, + Transparency = NumberSequence.new({ + NumberSequenceKeypoint.new(0, 1, 0), + NumberSequenceKeypoint.new(1, 1, 0), + }), + }, + }, + { + 17, + "UIGradient", + { + Parent = { 2 }, + Rotation = -30, + Transparency = NumberSequence.new({ + NumberSequenceKeypoint.new(0, 1, 0), + NumberSequenceKeypoint.new(1, 1, 0), + }), + }, + }, }) Main.ShowGui(gui) local backGradient = gui.Main.UIGradient @@ -623,62 +861,72 @@ Main = (function() local renderStepped = service.RunService.RenderStepped local signalWait = renderStepped.wait local fastwait = function(s) - if not s then return signalWait(renderStepped) end + if not s then + return signalWait(renderStepped) + end local start = tick() - while tick() - start < s do signalWait(renderStepped) end + while tick() - start < s do + signalWait(renderStepped) + end end statusText.Text = initStatus - local function tweenNumber(n,ti,func) + local function tweenNumber(n, ti, func) local tweenVal = Instance.new("IntValue") tweenVal.Value = 0 tweenVal.Changed:Connect(func) - local tween = tweenS:Create(tweenVal,ti,{Value = n}) + local tween = tweenS:Create(tweenVal, ti, { Value = n }) tween:Play() tween.Completed:Connect(function() tweenVal:Destroy() end) end - local ti = TweenInfo.new(0.4,Enum.EasingStyle.Quad,Enum.EasingDirection.Out) - tweenNumber(100,ti,function(val) - val = val/200 - local start = NumberSequenceKeypoint.new(0,0) - local a1 = NumberSequenceKeypoint.new(val,0) - local a2 = NumberSequenceKeypoint.new(math.min(0.5,val+math.min(0.05,val)),1) - if a1.Time == a2.Time then a2 = a1 end - local b1 = NumberSequenceKeypoint.new(1-val,0) - local b2 = NumberSequenceKeypoint.new(math.max(0.5,1-val-math.min(0.05,val)),1) - if b1.Time == b2.Time then b2 = b1 end - local goal = NumberSequenceKeypoint.new(1,0) - backGradient.Transparency = NumberSequence.new({start,a1,a2,b2,b1,goal}) - outlinesGradient.Transparency = NumberSequence.new({start,a1,a2,b2,b1,goal}) + local ti = TweenInfo.new(0.4, Enum.EasingStyle.Quad, Enum.EasingDirection.Out) + tweenNumber(100, ti, function(val) + val = val / 200 + local start = NumberSequenceKeypoint.new(0, 0) + local a1 = NumberSequenceKeypoint.new(val, 0) + local a2 = NumberSequenceKeypoint.new(math.min(0.5, val + math.min(0.05, val)), 1) + if a1.Time == a2.Time then + a2 = a1 + end + local b1 = NumberSequenceKeypoint.new(1 - val, 0) + local b2 = NumberSequenceKeypoint.new(math.max(0.5, 1 - val - math.min(0.05, val)), 1) + if b1.Time == b2.Time then + b2 = b1 + end + local goal = NumberSequenceKeypoint.new(1, 0) + backGradient.Transparency = NumberSequence.new({ start, a1, a2, b2, b1, goal }) + outlinesGradient.Transparency = NumberSequence.new({ start, a1, a2, b2, b1, goal }) end) fastwait(0.4) - tweenNumber(100,ti,function(val) - val = val/166.66 - local start = NumberSequenceKeypoint.new(0,0) - local a1 = NumberSequenceKeypoint.new(val,0) - local a2 = NumberSequenceKeypoint.new(val+0.01,1) - local goal = NumberSequenceKeypoint.new(1,1) - holderGradient.Transparency = NumberSequence.new({start,a1,a2,goal}) + tweenNumber(100, ti, function(val) + val = val / 166.66 + local start = NumberSequenceKeypoint.new(0, 0) + local a1 = NumberSequenceKeypoint.new(val, 0) + local a2 = NumberSequenceKeypoint.new(val + 0.01, 1) + local goal = NumberSequenceKeypoint.new(1, 1) + holderGradient.Transparency = NumberSequence.new({ start, a1, a2, goal }) end) - tweenS:Create(titleText,ti,{Position = UDim2.new(0,60,0,15), TextTransparency = 0}):Play() - tweenS:Create(descText,ti,{Position = UDim2.new(0,20,0,60), TextTransparency = 0}):Play() + tweenS:Create(titleText, ti, { Position = UDim2.new(0, 60, 0, 15), TextTransparency = 0 }):Play() + tweenS:Create(descText, ti, { Position = UDim2.new(0, 20, 0, 60), TextTransparency = 0 }):Play() local function rightTextTransparency(obj) - tweenNumber(100,ti,function(val) - val = val/100 - local a1 = NumberSequenceKeypoint.new(1-val,0) - local a2 = NumberSequenceKeypoint.new(math.max(0,1-val-0.01),1) - if a1.Time == a2.Time then a2 = a1 end - local start = NumberSequenceKeypoint.new(0,a1 == a2 and 0 or 1) - local goal = NumberSequenceKeypoint.new(1,0) - obj.Transparency = NumberSequence.new({start,a2,a1,goal}) + tweenNumber(100, ti, function(val) + val = val / 100 + local a1 = NumberSequenceKeypoint.new(1 - val, 0) + local a2 = NumberSequenceKeypoint.new(math.max(0, 1 - val - 0.01), 1) + if a1.Time == a2.Time then + a2 = a1 + end + local start = NumberSequenceKeypoint.new(0, a1 == a2 and 0 or 1) + local goal = NumberSequenceKeypoint.new(1, 0) + obj.Transparency = NumberSequence.new({ start, a2, a1, goal }) end) end rightTextTransparency(versionGradient) @@ -686,62 +934,70 @@ Main = (function() fastwait(0.9) - local progressTI = TweenInfo.new(0.25,Enum.EasingStyle.Quad,Enum.EasingDirection.Out) + local progressTI = TweenInfo.new(0.25, Enum.EasingStyle.Quad, Enum.EasingDirection.Out) - tweenS:Create(statusText,progressTI,{Position = UDim2.new(0,20,0,120), TextTransparency = 0}):Play() - tweenS:Create(progressBar,progressTI,{Position = UDim2.new(0,60,0,145), Size = UDim2.new(0,100,0,4)}):Play() + tweenS:Create(statusText, progressTI, { Position = UDim2.new(0, 20, 0, 120), TextTransparency = 0 }):Play() + tweenS + :Create(progressBar, progressTI, { Position = UDim2.new(0, 60, 0, 145), Size = UDim2.new(0, 100, 0, 4) }) + :Play() fastwait(0.25) - local function setProgress(text,n) + local function setProgress(text, n) statusText.Text = text - tweenS:Create(progressBar.Bar,progressTI,{Size = UDim2.new(n,0,1,0)}):Play() + tweenS:Create(progressBar.Bar, progressTI, { Size = UDim2.new(n, 0, 1, 0) }):Play() end local function close() - tweenS:Create(titleText,progressTI,{TextTransparency = 1}):Play() - tweenS:Create(descText,progressTI,{TextTransparency = 1}):Play() - tweenS:Create(versionText,progressTI,{TextTransparency = 1}):Play() - tweenS:Create(creatorText,progressTI,{TextTransparency = 1}):Play() - tweenS:Create(statusText,progressTI,{TextTransparency = 1}):Play() - tweenS:Create(progressBar,progressTI,{BackgroundTransparency = 1}):Play() - tweenS:Create(progressBar.Bar,progressTI,{BackgroundTransparency = 1}):Play() - tweenS:Create(progressBar.ImageLabel,progressTI,{ImageTransparency = 1}):Play() - - tweenNumber(100,TweenInfo.new(0.4,Enum.EasingStyle.Back,Enum.EasingDirection.In),function(val) - val = val/250 - local start = NumberSequenceKeypoint.new(0,0) - local a1 = NumberSequenceKeypoint.new(0.6+val,0) - local a2 = NumberSequenceKeypoint.new(math.min(1,0.601+val),1) - if a1.Time == a2.Time then a2 = a1 end - local goal = NumberSequenceKeypoint.new(1,a1 == a2 and 0 or 1) - holderGradient.Transparency = NumberSequence.new({start,a1,a2,goal}) + tweenS:Create(titleText, progressTI, { TextTransparency = 1 }):Play() + tweenS:Create(descText, progressTI, { TextTransparency = 1 }):Play() + tweenS:Create(versionText, progressTI, { TextTransparency = 1 }):Play() + tweenS:Create(creatorText, progressTI, { TextTransparency = 1 }):Play() + tweenS:Create(statusText, progressTI, { TextTransparency = 1 }):Play() + tweenS:Create(progressBar, progressTI, { BackgroundTransparency = 1 }):Play() + tweenS:Create(progressBar.Bar, progressTI, { BackgroundTransparency = 1 }):Play() + tweenS:Create(progressBar.ImageLabel, progressTI, { ImageTransparency = 1 }):Play() + + tweenNumber(100, TweenInfo.new(0.4, Enum.EasingStyle.Back, Enum.EasingDirection.In), function(val) + val = val / 250 + local start = NumberSequenceKeypoint.new(0, 0) + local a1 = NumberSequenceKeypoint.new(0.6 + val, 0) + local a2 = NumberSequenceKeypoint.new(math.min(1, 0.601 + val), 1) + if a1.Time == a2.Time then + a2 = a1 + end + local goal = NumberSequenceKeypoint.new(1, a1 == a2 and 0 or 1) + holderGradient.Transparency = NumberSequence.new({ start, a1, a2, goal }) end) fastwait(0.5) gui.Main.BackgroundTransparency = 1 outlinesGradient.Rotation = 30 - tweenNumber(100,ti,function(val) - val = val/100 - local start = NumberSequenceKeypoint.new(0,1) - local a1 = NumberSequenceKeypoint.new(val,1) - local a2 = NumberSequenceKeypoint.new(math.min(1,val+math.min(0.05,val)),0) - if a1.Time == a2.Time then a2 = a1 end - local goal = NumberSequenceKeypoint.new(1,a1 == a2 and 1 or 0) - outlinesGradient.Transparency = NumberSequence.new({start,a1,a2,goal}) - holderGradient.Transparency = NumberSequence.new({start,a1,a2,goal}) + tweenNumber(100, ti, function(val) + val = val / 100 + local start = NumberSequenceKeypoint.new(0, 1) + local a1 = NumberSequenceKeypoint.new(val, 1) + local a2 = NumberSequenceKeypoint.new(math.min(1, val + math.min(0.05, val)), 0) + if a1.Time == a2.Time then + a2 = a1 + end + local goal = NumberSequenceKeypoint.new(1, a1 == a2 and 1 or 0) + outlinesGradient.Transparency = NumberSequence.new({ start, a1, a2, goal }) + holderGradient.Transparency = NumberSequence.new({ start, a1, a2, goal }) end) fastwait(0.45) gui:Destroy() end - return {SetProgress = setProgress, Close = close} + return { SetProgress = setProgress, Close = close } end Main.CreateApp = function(data) - if Main.MenuApps[data.Name] then return end -- TODO: Handle conflict + if Main.MenuApps[data.Name] then + return + end -- TODO: Handle conflict local control = {} local app = Main.AppTemplate:Clone() @@ -749,9 +1005,9 @@ Main = (function() local iconIndex = data.Icon if data.IconMap and iconIndex then if type(iconIndex) == "number" then - data.IconMap:Display(app.Main.Icon,iconIndex) + data.IconMap:Display(app.Main.Icon, iconIndex) elseif type(iconIndex) == "string" then - data.IconMap:DisplayByKey(app.Main.Icon,iconIndex) + data.IconMap:DisplayByKey(app.Main.Icon, iconIndex) end elseif type(iconIndex) == "string" then app.Main.Icon.Image = iconIndex @@ -765,29 +1021,41 @@ Main = (function() end local function enable(silent) - if data.Open then return end + if data.Open then + return + end data.Open = true updateState() if not silent then - if data.Window then data.Window:Show() end - if data.OnClick then data.OnClick(data.Open) end + if data.Window then + data.Window:Show() + end + if data.OnClick then + data.OnClick(data.Open) + end end end local function disable(silent) - if not data.Open then return end + if not data.Open then + return + end data.Open = false updateState() if not silent then - if data.Window then data.Window:Hide() end - if data.OnClick then data.OnClick(data.Open) end + if data.Window then + data.Window:Hide() + end + if data.OnClick then + data.OnClick(data.Open) + end end end updateState() - local ySize = service.TextService:GetTextSize(data.Name,14,Enum.Font.SourceSans,Vector2.new(62,999999)).Y - app.Main.Size = UDim2.new(1,0,0,math.clamp(46+ySize,60,74)) + local ySize = service.TextService:GetTextSize(data.Name, 14, Enum.Font.SourceSans, Vector2.new(62, 999999)).Y + app.Main.Size = UDim2.new(1, 0, 0, math.clamp(46 + ySize, 60, 74)) app.Main.AppName.Text = data.Name app.Main.InputBegan:Connect(function(input) @@ -805,18 +1073,26 @@ Main = (function() end) app.Main.MouseButton1Click:Connect(function() - if data.Open then disable() else enable() end + if data.Open then + disable() + else + enable() + end end) local window = data.Window if window then - window.OnActivate:Connect(function() enable(true) end) - window.OnDeactivate:Connect(function() disable(true) end) + window.OnActivate:Connect(function() + enable(true) + end) + window.OnDeactivate:Connect(function() + disable(true) + end) end app.Visible = true app.Parent = Main.AppsContainer - Main.AppsFrame.CanvasSize = UDim2.new(0,0,0,Main.AppsContainerGrid.AbsoluteCellCount.Y*82 + 8) + Main.AppsFrame.CanvasSize = UDim2.new(0, 0, 0, Main.AppsContainerGrid.AbsoluteCellCount.Y * 82 + 8) control.Enable = enable control.Disable = disable @@ -828,23 +1104,45 @@ Main = (function() Main.MainGuiOpen = val Main.MainGui.OpenButton.Text = val and "X" or "Dex" - if val then Main.MainGui.OpenButton.MainFrame.Visible = true end - Main.MainGui.OpenButton.MainFrame:TweenSize(val and UDim2.new(0,224,0,200) or UDim2.new(0,0,0,0),Enum.EasingDirection.Out,Enum.EasingStyle.Quad,0.2,true) + if val then + Main.MainGui.OpenButton.MainFrame.Visible = true + end + Main.MainGui.OpenButton.MainFrame:TweenSize( + val and UDim2.new(0, 224, 0, 200) or UDim2.new(0, 0, 0, 0), + Enum.EasingDirection.Out, + Enum.EasingStyle.Quad, + 0.2, + true + ) --Main.MainGui.OpenButton.BackgroundTransparency = val and 0 or (Lib.CheckMouseInGui(Main.MainGui.OpenButton) and 0 or 0.2) - service.TweenService:Create(Main.MainGui.OpenButton,TweenInfo.new(0.2,Enum.EasingStyle.Quad,Enum.EasingDirection.Out),{BackgroundTransparency = val and 0 or (Lib.CheckMouseInGui(Main.MainGui.OpenButton) and 0 or 0.2)}):Play() - - if Main.MainGuiMouseEvent then Main.MainGuiMouseEvent:Disconnect() end + service.TweenService + :Create( + Main.MainGui.OpenButton, + TweenInfo.new(0.2, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), + { BackgroundTransparency = val and 0 or (Lib.CheckMouseInGui(Main.MainGui.OpenButton) and 0 or 0.2) } + ) + :Play() + + if Main.MainGuiMouseEvent then + Main.MainGuiMouseEvent:Disconnect() + end if not val then local startTime = tick() Main.MainGuiCloseTime = startTime task.spawn(function() Lib.FastWait(0.2) - if not Main.MainGuiOpen and startTime == Main.MainGuiCloseTime then Main.MainGui.OpenButton.MainFrame.Visible = false end + if not Main.MainGuiOpen and startTime == Main.MainGuiCloseTime then + Main.MainGui.OpenButton.MainFrame.Visible = false + end end) else Main.MainGuiMouseEvent = service.UserInputService.InputBegan:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseButton1 and not Lib.CheckMouseInGui(Main.MainGui.OpenButton) and not Lib.CheckMouseInGui(Main.MainGui.OpenButton.MainFrame) then + if + input.UserInputType == Enum.UserInputType.MouseButton1 + and not Lib.CheckMouseInGui(Main.MainGui.OpenButton) + and not Lib.CheckMouseInGui(Main.MainGui.OpenButton.MainFrame) + then Main.SetMainGuiOpen(false) end end) @@ -853,27 +1151,243 @@ Main = (function() Main.CreateMainGui = function() local gui = create({ - {1,"ScreenGui",{IgnoreGuiInset=true,Name="Dex_MainMenu",ResetOnSpawn=false}}, - {2,"TextButton",{AnchorPoint=Vector2.new(0.5,0),AutoButtonColor=false,BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BorderSizePixel=0,Font=4,Name="OpenButton",Parent={1},Position=UDim2.new(0.5,0,0,2),Size=UDim2.new(0,32,0,32),Text="Dex",TextColor3=Color3.new(1,1,1),TextSize=16,TextTransparency=0.20000000298023,}}, - {3,"UICorner",{CornerRadius=UDim.new(0,4),Parent={2},}}, - {4,"Frame",{AnchorPoint=Vector2.new(0.5,0),BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),ClipsDescendants=true,Name="MainFrame",Parent={2},Position=UDim2.new(0.5,0,1,-4),Size=UDim2.new(0,224,0,200),}}, - {5,"UICorner",{CornerRadius=UDim.new(0,4),Parent={4},}}, - {6,"Frame",{BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),Name="BottomFrame",Parent={4},Position=UDim2.new(0,0,1,-24),Size=UDim2.new(1,0,0,24),}}, - {7,"UICorner",{CornerRadius=UDim.new(0,4),Parent={6},}}, - {8,"Frame",{BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),BorderSizePixel=0,Name="CoverFrame",Parent={6},Size=UDim2.new(1,0,0,4),}}, - {9,"Frame",{BackgroundColor3=Color3.new(0.1294117718935,0.1294117718935,0.1294117718935),BorderSizePixel=0,Name="Line",Parent={8},Position=UDim2.new(0,0,0,-1),Size=UDim2.new(1,0,0,1),}}, - {10,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Settings",Parent={6},Position=UDim2.new(1,-48,0,0),Size=UDim2.new(0,24,1,0),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,}}, - {11,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://6578871732",ImageTransparency=0.20000000298023,Name="Icon",Parent={10},Position=UDim2.new(0,4,0,4),Size=UDim2.new(0,16,0,16),}}, - {12,"TextButton",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Information",Parent={6},Position=UDim2.new(1,-24,0,0),Size=UDim2.new(0,24,1,0),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,}}, - {13,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://6578933307",ImageTransparency=0.20000000298023,Name="Icon",Parent={12},Position=UDim2.new(0,4,0,4),Size=UDim2.new(0,16,0,16),}}, - {14,"ScrollingFrame",{Active=true,AnchorPoint=Vector2.new(0.5,0),BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderColor3=Color3.new(0.1294117718935,0.1294117718935,0.1294117718935),BorderSizePixel=0,Name="AppsFrame",Parent={4},Position=UDim2.new(0.5,0,0,0),ScrollBarImageColor3=Color3.new(0,0,0),ScrollBarThickness=12,Size=UDim2.new(0,222,1,-25),}}, - {15,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Name="Container",Parent={14},Position=UDim2.new(0,7,0,8),Size=UDim2.new(1,-14,0,2),}}, - {16,"UIGridLayout",{CellSize=UDim2.new(0,66,0,74),Parent={15},SortOrder=2,}}, - {17,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Name="App",Parent={1},Size=UDim2.new(0,100,0,100),Visible=false,}}, - {18,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderSizePixel=0,Font=3,Name="Main",Parent={17},Size=UDim2.new(1,0,0,60),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, - {19,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://6579106223",ImageRectSize=Vector2.new(32,32),Name="Icon",Parent={18},Position=UDim2.new(0.5,-16,0,4),ScaleType=4,Size=UDim2.new(0,32,0,32),}}, - {20,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="AppName",Parent={18},Position=UDim2.new(0,2,0,38),Size=UDim2.new(1,-4,1,-40),Text="Explorer",TextColor3=Color3.new(1,1,1),TextSize=14,TextTransparency=0.10000000149012,TextTruncate=1,TextWrapped=true,TextYAlignment=0,}}, - {21,"Frame",{BackgroundColor3=Color3.new(0,0.66666668653488,1),BorderSizePixel=0,Name="Highlight",Parent={18},Position=UDim2.new(0,0,1,-2),Size=UDim2.new(1,0,0,2),}}, + { 1, "ScreenGui", { IgnoreGuiInset = true, Name = "Dex_MainMenu", ResetOnSpawn = false } }, + { + 2, + "TextButton", + { + AnchorPoint = Vector2.new(0.5, 0), + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.17647059261799, 0.17647059261799, 0.17647059261799), + BorderSizePixel = 0, + Font = 4, + Name = "OpenButton", + Parent = { 1 }, + Position = UDim2.new(0.5, 0, 0, 2), + Size = UDim2.new(0, 32, 0, 32), + Text = "Dex", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 16, + TextTransparency = 0.20000000298023, + }, + }, + { 3, "UICorner", { CornerRadius = UDim.new(0, 4), Parent = { 2 } } }, + { + 4, + "Frame", + { + AnchorPoint = Vector2.new(0.5, 0), + BackgroundColor3 = Color3.new(0.17647059261799, 0.17647059261799, 0.17647059261799), + ClipsDescendants = true, + Name = "MainFrame", + Parent = { 2 }, + Position = UDim2.new(0.5, 0, 1, -4), + Size = UDim2.new(0, 224, 0, 200), + }, + }, + { 5, "UICorner", { CornerRadius = UDim.new(0, 4), Parent = { 4 } } }, + { + 6, + "Frame", + { + BackgroundColor3 = Color3.new(0.20392157137394, 0.20392157137394, 0.20392157137394), + Name = "BottomFrame", + Parent = { 4 }, + Position = UDim2.new(0, 0, 1, -24), + Size = UDim2.new(1, 0, 0, 24), + }, + }, + { 7, "UICorner", { CornerRadius = UDim.new(0, 4), Parent = { 6 } } }, + { + 8, + "Frame", + { + BackgroundColor3 = Color3.new(0.20392157137394, 0.20392157137394, 0.20392157137394), + BorderSizePixel = 0, + Name = "CoverFrame", + Parent = { 6 }, + Size = UDim2.new(1, 0, 0, 4), + }, + }, + { + 9, + "Frame", + { + BackgroundColor3 = Color3.new(0.1294117718935, 0.1294117718935, 0.1294117718935), + BorderSizePixel = 0, + Name = "Line", + Parent = { 8 }, + Position = UDim2.new(0, 0, 0, -1), + Size = UDim2.new(1, 0, 0, 1), + }, + }, + { + 10, + "TextButton", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Font = 3, + Name = "Settings", + Parent = { 6 }, + Position = UDim2.new(1, -48, 0, 0), + Size = UDim2.new(0, 24, 1, 0), + Text = "", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + }, + }, + { + 11, + "ImageLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Image = "rbxassetid://6578871732", + ImageTransparency = 0.20000000298023, + Name = "Icon", + Parent = { 10 }, + Position = UDim2.new(0, 4, 0, 4), + Size = UDim2.new(0, 16, 0, 16), + }, + }, + { + 12, + "TextButton", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Font = 3, + Name = "Information", + Parent = { 6 }, + Position = UDim2.new(1, -24, 0, 0), + Size = UDim2.new(0, 24, 1, 0), + Text = "", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + }, + }, + { + 13, + "ImageLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Image = "rbxassetid://6578933307", + ImageTransparency = 0.20000000298023, + Name = "Icon", + Parent = { 12 }, + Position = UDim2.new(0, 4, 0, 4), + Size = UDim2.new(0, 16, 0, 16), + }, + }, + { + 14, + "ScrollingFrame", + { + Active = true, + AnchorPoint = Vector2.new(0.5, 0), + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderColor3 = Color3.new(0.1294117718935, 0.1294117718935, 0.1294117718935), + BorderSizePixel = 0, + Name = "AppsFrame", + Parent = { 4 }, + Position = UDim2.new(0.5, 0, 0, 0), + ScrollBarImageColor3 = Color3.new(0, 0, 0), + ScrollBarThickness = 12, + Size = UDim2.new(0, 222, 1, -25), + }, + }, + { + 15, + "Frame", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Name = "Container", + Parent = { 14 }, + Position = UDim2.new(0, 7, 0, 8), + Size = UDim2.new(1, -14, 0, 2), + }, + }, + { 16, "UIGridLayout", { CellSize = UDim2.new(0, 66, 0, 74), Parent = { 15 }, SortOrder = 2 } }, + { + 17, + "Frame", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Name = "App", + Parent = { 1 }, + Size = UDim2.new(0, 100, 0, 100), + Visible = false, + }, + }, + { + 18, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.2352941185236, 0.2352941185236, 0.2352941185236), + BorderSizePixel = 0, + Font = 3, + Name = "Main", + Parent = { 17 }, + Size = UDim2.new(1, 0, 0, 60), + Text = "", + TextColor3 = Color3.new(0, 0, 0), + TextSize = 14, + }, + }, + { + 19, + "ImageLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Image = "rbxassetid://6579106223", + ImageRectSize = Vector2.new(32, 32), + Name = "Icon", + Parent = { 18 }, + Position = UDim2.new(0.5, -16, 0, 4), + ScaleType = 4, + Size = UDim2.new(0, 32, 0, 32), + }, + }, + { + 20, + "TextLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "AppName", + Parent = { 18 }, + Position = UDim2.new(0, 2, 0, 38), + Size = UDim2.new(1, -4, 1, -40), + Text = "Explorer", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + TextTransparency = 0.10000000149012, + TextTruncate = 1, + TextWrapped = true, + TextYAlignment = 0, + }, + }, + { + 21, + "Frame", + { + BackgroundColor3 = Color3.new(0, 0.66666668653488, 1), + BorderSizePixel = 0, + Name = "Highlight", + Parent = { 18 }, + Position = UDim2.new(0, 0, 1, -2), + Size = UDim2.new(1, 0, 0, 2), + }, + }, }) Main.MainGui = gui Main.AppsFrame = gui.OpenButton.MainFrame.AppsFrame @@ -886,7 +1400,7 @@ Main = (function() local openButton = gui.OpenButton openButton.BackgroundTransparency = 0.2 - openButton.MainFrame.Size = UDim2.new(0,0,0,0) + openButton.MainFrame.Size = UDim2.new(0, 0, 0, 0) openButton.MainFrame.Visible = false openButton.MouseButton1Click:Connect(function() Main.SetMainGuiOpen(not Main.MainGuiOpen) @@ -894,13 +1408,25 @@ Main = (function() openButton.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then - service.TweenService:Create(Main.MainGui.OpenButton,TweenInfo.new(0,Enum.EasingStyle.Quad,Enum.EasingDirection.Out),{BackgroundTransparency = 0}):Play() + service.TweenService + :Create( + Main.MainGui.OpenButton, + TweenInfo.new(0, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), + { BackgroundTransparency = 0 } + ) + :Play() end end) openButton.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then - service.TweenService:Create(Main.MainGui.OpenButton,TweenInfo.new(0,Enum.EasingStyle.Quad,Enum.EasingDirection.Out),{BackgroundTransparency = Main.MainGuiOpen and 0 or 0.2}):Play() + service.TweenService + :Create( + Main.MainGui.OpenButton, + TweenInfo.new(0, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), + { BackgroundTransparency = Main.MainGuiOpen and 0 or 0.2 } + ) + :Play() end end) @@ -917,9 +1443,21 @@ Main = (function() end) -- Create Main Apps - Main.CreateApp({Name = "Explorer", IconMap = Main.LargeIcons, Icon = "Explorer", Open = true, Window = Explorer.Window}) + Main.CreateApp({ + Name = "Explorer", + IconMap = Main.LargeIcons, + Icon = "Explorer", + Open = true, + Window = Explorer.Window, + }) - Main.CreateApp({Name = "Properties", IconMap = Main.LargeIcons, Icon = "Properties", Open = true, Window = Properties.Window}) + Main.CreateApp({ + Name = "Properties", + IconMap = Main.LargeIcons, + Icon = "Properties", + Open = true, + Window = Properties.Window, + }) --Main.CreateApp({Name = "Script Viewer", IconMap = Main.LargeIcons, Icon = "Script_Viewer", Window = ScriptViewer.Window}) @@ -927,9 +1465,11 @@ Main = (function() end Main.SetupFilesystem = function() - if not env.writefile or not env.makefolder then return end + if not env.writefile or not env.makefolder then + return + end - local writefile,makefolder = env.writefile,env.makefolder + local writefile, makefolder = env.writefile, env.makefolder makefolder("dex") makefolder("dex/assets") @@ -943,7 +1483,9 @@ Main = (function() end Main.Init = function() - Main.Elevated = pcall(function() local a = game:GetService("CoreGui"):GetFullName() end) + Main.Elevated = pcall(function() + local a = game:GetService("CoreGui"):GetFullName() + end) Main.InitEnv() Main.LoadSettings() Main.SetupFilesystem() @@ -957,30 +1499,65 @@ Main = (function() --Main.IncompatibleTest() -- Init icons - Main.MiscIcons = Lib.IconMap.new("rbxassetid://6511490623",256,256,16,16) + Main.MiscIcons = Lib.IconMap.new("rbxassetid://6511490623", 256, 256, 16, 16) Main.MiscIcons:SetDict({ - Reference = 0, Cut = 1, Cut_Disabled = 2, Copy = 3, Copy_Disabled = 4, Paste = 5, Paste_Disabled = 6, - Delete = 7, Delete_Disabled = 8, Group = 9, Group_Disabled = 10, Ungroup = 11, Ungroup_Disabled = 12, TeleportTo = 13, - Rename = 14, JumpToParent = 15, ExploreData = 16, Save = 17, CallFunction = 18, CallRemote = 19, Undo = 20, - Undo_Disabled = 21, Redo = 22, Redo_Disabled = 23, Expand_Over = 24, Expand = 25, Collapse_Over = 26, Collapse = 27, - SelectChildren = 28, SelectChildren_Disabled = 29, InsertObject = 30, ViewScript = 31, AddStar = 32, RemoveStar = 33, Script_Disabled = 34, - LocalScript_Disabled = 35, Play = 36, Pause = 37, Rename_Disabled = 38 + Reference = 0, + Cut = 1, + Cut_Disabled = 2, + Copy = 3, + Copy_Disabled = 4, + Paste = 5, + Paste_Disabled = 6, + Delete = 7, + Delete_Disabled = 8, + Group = 9, + Group_Disabled = 10, + Ungroup = 11, + Ungroup_Disabled = 12, + TeleportTo = 13, + Rename = 14, + JumpToParent = 15, + ExploreData = 16, + Save = 17, + CallFunction = 18, + CallRemote = 19, + Undo = 20, + Undo_Disabled = 21, + Redo = 22, + Redo_Disabled = 23, + Expand_Over = 24, + Expand = 25, + Collapse_Over = 26, + Collapse = 27, + SelectChildren = 28, + SelectChildren_Disabled = 29, + InsertObject = 30, + ViewScript = 31, + AddStar = 32, + RemoveStar = 33, + Script_Disabled = 34, + LocalScript_Disabled = 35, + Play = 36, + Pause = 37, + Rename_Disabled = 38, }) - Main.LargeIcons = Lib.IconMap.new("rbxassetid://6579106223",256,256,32,32) + Main.LargeIcons = Lib.IconMap.new("rbxassetid://6579106223", 256, 256, 32, 32) Main.LargeIcons:SetDict({ - Explorer = 0, Properties = 1, Script_Viewer = 2, + Explorer = 0, + Properties = 1, + Script_Viewer = 2, }) -- Fetch external deps - intro.SetProgress("Fetching API",0.35) + intro.SetProgress("Fetching API", 0.35) API = Main.FetchAPI() Lib.FastWait() - intro.SetProgress("Fetching RMD",0.5) + intro.SetProgress("Fetching RMD", 0.5) RMD = Main.FetchRMD() Lib.FastWait() -- Load other modules - intro.SetProgress("Loading Modules",0.75) + intro.SetProgress("Loading Modules", 0.75) SettingsEditor = Main.LoadModule("SettingsEditor") AboutMenu = Main.LoadModule("AboutMenu") @@ -989,7 +1566,7 @@ Main = (function() Lib.FastWait() -- Init other modules - intro.SetProgress("Initializing Modules",0.9) + intro.SetProgress("Initializing Modules", 0.9) Explorer.Init() Properties.Init() --ScriptViewer.Init() @@ -999,7 +1576,7 @@ Main = (function() Lib.FastWait() -- Done - intro.SetProgress("Complete",1) + intro.SetProgress("Complete", 1) task.spawn(function() Lib.FastWait(1.25) intro.Close() @@ -1008,9 +1585,11 @@ Main = (function() -- Init window system, create main menu, show explorer and properties Lib.Window.Init() Main.CreateMainGui() - Explorer.Window:Show({Align = "right", Pos = 1, Size = 0.5, Silent = true}) - Properties.Window:Show({Align = "right", Pos = 2, Size = 0.5, Silent = true}) - Lib.DeferFunc(function() Lib.Window.ToggleSide("right") end) + Explorer.Window:Show({ Align = "right", Pos = 1, Size = 0.5, Silent = true }) + Properties.Window:Show({ Align = "right", Pos = 2, Size = 0.5, Silent = true }) + Lib.DeferFunc(function() + Lib.Window.ToggleSide("right") + end) -- SettingsEditor GUI --SettingsEditor.Window:Show() @@ -1022,4 +1601,4 @@ end)() -- Start Main.Init() ---for i,v in pairs(Main.MissingEnv) do print(i,v) end \ No newline at end of file +--for i,v in pairs(Main.MissingEnv) do print(i,v) end diff --git a/MainModule/Server/Plugins/ServerNewDex/init.lua b/MainModule/Server/Plugins/ServerNewDex/init.lua index f765c69c01..9f7ca83dcc 100644 --- a/MainModule/Server/Plugins/ServerNewDex/init.lua +++ b/MainModule/Server/Plugins/ServerNewDex/init.lua @@ -1,23 +1,23 @@ return function(Vargs) - local Server = Vargs.Server; - local Service = Vargs.Service; + local Server = Vargs.Server + local Service = Vargs.Service - local Variables = Server.Variables; - local Commands = Server.Commands; + local Variables = Server.Variables + local Commands = Server.Commands - local Settings = Server.Settings; - local Anti = Server.Anti; - local Functions = Server.Functions; - local Logs = Server.Logs; - local Remote = Server.Remote; - local Admin = Server.Admin; + local Settings = Server.Settings + local Anti = Server.Anti + local Functions = Server.Functions + local Logs = Server.Logs + local Remote = Server.Remote + local Admin = Server.Admin local HttpService = Service.HttpService local Success, APIDump, Reflection = nil local ServerNewDex = {} local newDex_main = script:WaitForChild("Dex_Client", 120) - local Event = ServerNewDex.Event; + local Event = ServerNewDex.Event if not newDex_main then warn("New Dex unable to be located?") @@ -33,7 +33,11 @@ return function(Vargs) task.delay(0.25, function() -- Load Dex instance data asynchronously if Server.HTTP.HttpEnabled then while true do - Success, APIDump = pcall(function() return HttpService:GetAsync("https://github.com/MaximumADHD/Roblox-Client-Tracker/raw/roblox/API-Dump.json") end) + Success, APIDump = pcall(function() + return HttpService:GetAsync( + "https://github.com/MaximumADHD/Roblox-Client-Tracker/raw/roblox/API-Dump.json" + ) + end) if Success and APIDump then break end @@ -41,7 +45,11 @@ return function(Vargs) end Logs:AddLog("Script", "Successfully loaded instance API dump to Dex") while true do - Success,Reflection = pcall(function() return HttpService:GetAsync("https://raw.githubusercontent.com/MaximumADHD/Roblox-Client-Tracker/roblox/ReflectionMetadata.xml") end) + Success, Reflection = pcall(function() + return HttpService:GetAsync( + "https://raw.githubusercontent.com/MaximumADHD/Roblox-Client-Tracker/roblox/ReflectionMetadata.xml" + ) + end) if Success and Reflection then break end @@ -56,86 +64,88 @@ return function(Vargs) end) ServerNewDex.newDex_main = newDex_main - ServerNewDex.Event = nil; - ServerNewDex.Authorized = {}; --// Users who have been given Dex and are authorized to use the remote event + ServerNewDex.Event = nil + ServerNewDex.Authorized = {} --// Users who have been given Dex and are authorized to use the remote event local Actions = { destroy = function(p: Player, args, realPlr: Player) if args[1]:IsA("Player") then if Admin.GetLevel(args[1]) < Admin.GetLevel(realPlr) then - args[1]:Destroy(); - else + args[1]:Destroy() + else Remote.MakeGui(realPlr, "Output", { - Title = "Missing Permissions"; - Message = `You do not have the permission to delete player {args[1].DisplayName} (@{args[1].Name})`; + Title = "Missing Permissions", + Message = `You do not have the permission to delete player {args[1].DisplayName} (@{args[1].Name})`, }) end else - args[1]:Destroy(); + args[1]:Destroy() end - return true; + return true end, clearclipboard = function(Player: Player, args) - Player.Clipboard = {}; - return true; + Player.Clipboard = {} + return true end, duplicate = function(Player: Player, args) - local obj = args[1]; - local par = args[2]; + local obj = args[1] + local par = args[2] local new = obj:Clone() - new.Parent = par; + new.Parent = par - return new; + return new end, copy = function(Player: Player, args) - local obj = args[1]; - local new = obj:Clone(); + local obj = args[1] + local new = obj:Clone() table.insert(Player.Clipboard, new) - return new; -- It seems like this returns nil to the client, if the parent is nil. + return new -- It seems like this returns nil to the client, if the parent is nil. end, paste = function(Player: Player, args) - local parent = args[1]; + local parent = args[1] local pastedObjects = {} - for _,v in pairs(Player.Clipboard) do + for _, v in pairs(Player.Clipboard) do local cloned = v:Clone() - cloned.Parent = parent; + cloned.Parent = parent table.insert(pastedObjects, cloned) end - return pastedObjects; + return pastedObjects end, setproperty = function(Player: Player, args) - local obj = args[1]; - local prop = args[2]; - local value = args[3]; + local obj = args[1] + local prop = args[2] + local value = args[3] if value ~= nil then - obj[prop] = value; - return true; + obj[prop] = value + return true end end, - setpropertyattribute = function(Player:Player, args) - local obj = args[1]; - local attributeName = args[2]; - local value = args[3]; - - if (value ~= nil) then - obj:SetAttribute(attributeName, value); - return true; + setpropertyattribute = function(Player: Player, args) + local obj = args[1] + local attributeName = args[2] + local value = args[3] + + if value ~= nil then + obj:SetAttribute(attributeName, value) + return true end end, - instancenew = function(Player:Player, args) - return Service.New(args[1], args[2]); - end, - callfunction = function(Player:Player, args) - local rets = {pcall(function() return (args[1][args[2]](args[1])) end)} - table.remove(rets,1) + instancenew = function(Player: Player, args) + return Service.New(args[1], args[2]) + end, + callfunction = function(Player: Player, args) + local rets = { pcall(function() + return (args[1][args[2]](args[1])) + end) } + table.remove(rets, 1) return rets - end, - callremote = function(Player:Player, args) + end, + callremote = function(Player: Player, args) if args[1]:IsA("RemoteFunction") then return args[1]:InvokeClient(table.unpack(args[2])) elseif args[1]:IsA("RemoteEvent") then @@ -146,43 +156,74 @@ return function(Vargs) args[1]:Fire(table.unpack(args[2])) end end, - fetchapi = function(Player:Player) + fetchapi = function(Player: Player) return APIDump or false end, - fetchrmd = function(Player:Player) + fetchrmd = function(Player: Player) return Reflection or false - end, + end, + addtag = function(Player: Player, args) + local obj = args[1] + local tag = args[2] + + if typeof(obj) ~= "Instance" then + return "Invalid target." + end + + if type(tag) ~= "string" or tag == "" then + return "Invalid tag." + end + + local CollectionService = game:GetService("CollectionService") + CollectionService:AddTag(obj, tag) + + return true + end, + + removetag = function(Player: Player, args) + local obj = args[1] + local tag = args[2] + + if typeof(obj) ~= "Instance" then + return "Invalid target." + end + + local CollectionService = game:GetService("CollectionService") + CollectionService:RemoveTag(obj, tag) + + return true + end, } function ServerNewDex.MakeEvent() if not Event then Event = Service.New("RemoteFunction", { - Name = "NewDex_Event"; - Parent = game:GetService("ReplicatedStorage"); + Name = "NewDex_Event", + Parent = game:GetService("ReplicatedStorage"), }, true, true) - Event.OnServerInvoke = (function(Plr: Player, Action, ...) - local pData = ServerNewDex.Authorized[Plr]; + Event.OnServerInvoke = function(Plr: Player, Action, ...) + local pData = ServerNewDex.Authorized[Plr] if not pData then - return Anti.Detected(Plr, "kick", "Unauthorized to use the dex event"); + return Anti.Detected(Plr, "kick", "Unauthorized to use the dex event") end - local args = {...}; - local Suppliments = args[1]; + local args = { ... } + local Suppliments = args[1] local Action = string.lower(assert(Action, "Method argument missing!")) - local MethodFunction = assert(Actions[Action], `{Plr.Name} attempted to use an action that wasn't defined: {Action}`) + local MethodFunction = + assert(Actions[Action], `{Plr.Name} attempted to use an action that wasn't defined: {Action}`) - return MethodFunction(pData, args, Plr); - end) + return MethodFunction(pData, args, Plr) + end end - end function ServerNewDex.MakeLocalDexForPlayer(ply, dexGui, destination) if ply then - if (dexGui and destination) then + if dexGui and destination then dexGui.Parent = destination end end @@ -192,28 +233,32 @@ return function(Vargs) function ServerNewDex.GiveDexToPlayer(ply) if ply then ServerNewDex.Authorized[ply] = { - Clipboard = {}; - }; --// double as per-player explorer-related data + Clipboard = {}, + } --// double as per-player explorer-related data - if not ServerNewDex.Event then ServerNewDex.MakeEvent(); end + if not ServerNewDex.Event then + ServerNewDex.MakeEvent() + end ServerNewDex.MakeLocalDexForPlayer(ply, ServerNewDex.newDex_main:Clone(), ply:FindFirstChild("PlayerGui")) end end Commands.DexExplorerNew = { - Prefix = Settings.Prefix; - Commands = {"dexnew";"dexnewexplorer";"newdex";"dex";"dexexplorer"}; - Args = {}; --// kept for backwards compatibility - Description = "Lets you explore the game using new Dex [Credits to LorekeeperZinnia]"; - AdminLevel = 300; + Prefix = Settings.Prefix, + Commands = { "dexnew", "dexnewexplorer", "newdex", "dex", "dexexplorer" }, + Args = {}, --// kept for backwards compatibility + Description = "Lets you explore the game using new Dex [Credits to LorekeeperZinnia]", + AdminLevel = 300, Function = function(plr, args) ServerNewDex.Authorized[plr] = { - Clipboard = {}; - }; --// double as per-player explorer-related data + Clipboard = {}, + } --// double as per-player explorer-related data - if not ServerNewDex.Event then ServerNewDex.MakeEvent(); end + if not ServerNewDex.Event then + ServerNewDex.MakeEvent() + end Remote.MakeLocal(plr, newDex_main:Clone(), "PlayerGui") - end - }; + end, + } Logs:AddLog("Script", "NewDex Module Loaded") -end \ No newline at end of file +end diff --git a/test.lua b/test.lua new file mode 100644 index 0000000000..bbc49687e0 --- /dev/null +++ b/test.lua @@ -0,0 +1,256 @@ +# Plan: Add Tag Viewing and Editing to Dex Explorer + +## Feature Request +Add the ability to view and edit instance tags in the Dex Properties panel using CollectionService API (`Instance:GetTags()`, `Instance:AddTag()`, `Instance:RemoveTag()`). + +## Implementation Approach + +### Follow the Attributes Pattern +Tags are very similar to Attributes - both are dynamic collections attached to instances. We'll create a "Tags" category in the Properties panel that displays all tags and allows adding/removing them. + +### Architecture Overview + +**Client Side (Properties.lua)**: +1. Gather tags when showing instance properties +2. Display tags in a "Tags" category +3. Provide UI to add/remove tags +4. Send tag operations to server + +**Server Side (init.lua)**: +1. Handle `addtag` action +2. Handle `removetag` action +3. Use CollectionService to apply changes + +## Detailed Implementation Plan + +### 1. Client-Side Changes (Properties.lua) + +#### A. Define ViewTagsProp (Around line 65) +Create a special property object for the "Add Tag" button: +```lua +Properties.ViewTagsProp = { + Name = "Add Tag...", + Class = "Instance", + ValueType = {Name = "string", Category = "Primitive"}, + Category = "Tags", + Tags = {}, + SpecialRow = "AddTag", + Depth = 1 + } + ``` + + #### B. Gather Tags in ShowExplorerProps() (Around lines 533-540) + After gathering attributes, get tags from selected instances: + + ```lua + -- After attributes section + if Settings.Properties.ShowTags then -- Add new setting + local CollectionService = service.CollectionService + + for i = 1, #selection do + local obj = selection[i] + local tags = obj:GetTags() + + for _, tagName in ipairs(tags) do + local tagProp = { + Name = tagName, + DisplayName = tagName, + Class = className, + ValueType = {Name = "string", Category = "Primitive"}, + Category = "Tags", + Tags = {}, + IsTag = true, + TagName = tagName, + Depth = 1 + } + props[#props+1] = tagProp + end + end + + -- Add "Add Tag" button + props[#props+1] = Properties.ViewTagsProp + end + ``` + + #### C. Handle Tag Display in DisplayProp() (Around lines 1351-1461) + Add tag-specific rendering: + + ```lua + -- Around line 1400, add check for IsTag + if prop.IsTag then + -- Show tag name + valueBox.Text = prop.TagName + + -- Show delete button + local deleteButton = entryFrame.ValueFrame.RightButton + deleteButton.Visible = true + deleteButton.Icon.Image = "rbxassetid://5034718129" -- X icon + deleteButton.Icon.ImageRectSize = Vector2.new(16, 16) + + -- Handle delete click + -- (Connect in SetInputProp) + end + + -- Handle AddTag special row + if prop.SpecialRow == "AddTag" then + valueBox.Text = "+" + valueBox.TextColor3 = Settings.Theme.Main1 + end + ``` + + #### D. Handle Tag Input in SetInputProp() (Around lines 1808-1854) + Handle adding and removing tags: + + ```lua + if prop.SpecialRow == "AddTag" then + -- Show add tag dialog + Properties.DisplayAddTagWindow() + + elseif prop.IsTag then + if special == "right" then + -- Remove tag button clicked + Properties.RemoveTag(prop) + end + end + ``` + + #### E. Add Tag Management Functions (New functions) + + **DisplayAddTagWindow()** (Around line 1112, after DisplayAddAttributeWindow): + ```lua + DisplayAddTagWindow = function() + -- Create window similar to AddAttribute window + -- Text input for tag name + -- Validate tag name (no special chars, not empty) + -- On confirm: call AddTag() + end + + AddTag = function(tagName) + local selection = Explorer.Selection.List + for i = 1, #selection do + local obj = selection[i] + Dex_RemoteFunction:InvokeServer("addtag", obj, tagName) + + -- Update local display + obj:AddTag(tagName) + end + + -- Refresh properties panel + Properties.ShowExplorerProps(selection) + end + + RemoveTag = function(prop) + local selection = Explorer.Selection.List + local tagName = prop.TagName + + for i = 1, #selection do + local obj = selection[i] + Dex_RemoteFunction:InvokeServer("removetag", obj, tagName) + + -- Update local display + obj:RemoveTag(tagName) + end + + -- Refresh properties panel + Properties.ShowExplorerProps(selection) + end + ``` + + #### F. Update Entry Template (Around line 1869) + Ensure RightButton is available for tag delete: + - Already exists in template, just need to show/hide appropriately + + #### G. Add Settings Toggle (Around line 33) + ```lua + ShowTags = true, -- Add to Settings.Properties + ``` + + ### 2. Server-Side Changes (init.lua) + + #### Add Tag Action Handlers (Around line 155, in Actions table) + + ```lua + addtag = function(Player: Player, args) + local obj = args[1] + local tagName = args[2] + + if obj and obj:IsA("Instance") and tagName and type(tagName) == "string" then + local success, err = pcall(function() + obj:AddTag(tagName) + end) + + if not success then + warn("Failed to add tag:", err) + end + return success + end + return false + end, + + removetag = function(Player: Player, args) + local obj = args[1] + local tagName = args[2] + + if obj and obj:IsA("Instance") and tagName and type(tagName) == "string" then + local success, err = pcall(function() + obj:RemoveTag(tagName) + end) + + if not success then + warn("Failed to remove tag:", err) + end + return success + end + return false + end, + ``` + + ### 3. UI Design + + **Tags Category Appearance**: + ``` + ┌─ Tags ────────────────────────────┐ + │ ▼ Tags │ + │ TagName1 [×] │ + │ TagName2 [×] │ + │ AnotherTag [×] │ + │ + Add Tag... │ + └───────────────────────────────────┘ + ``` + + **Add Tag Dialog**: + ``` + ┌─ Add Tag ─────────────────┐ + │ │ + │ Tag Name: │ + │ ┌───────────────────────┐ │ + │ │ │ │ + │ └───────────────────────┘ │ + │ │ + │ [OK] [Cancel] │ + └───────────────────────────┘ + ``` + + ## Files to Modify + + 1. **MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Properties.lua** + - Line ~65: Add ViewTagsProp definition + - Line ~33: Add ShowTags setting + - Line ~533-540: Gather tags in ShowExplorerProps() + - Line ~1400: Handle tag display in DisplayProp() + - Line ~1808-1854: Handle tag input in SetInputProp() + - Line ~1112: Add DisplayAddTagWindow(), AddTag(), RemoveTag() functions + + 2. **MainModule/Server/Plugins/ServerNewDex/init.lua** + - Line ~155: Add `addtag` and `removetag` action handlers in Actions table + + ## Expected Behavior + + ✓ Tags category appears in Properties panel below Attributes + ✓ All tags on selected instance(s) are displayed + ✓ Click "Add Tag..." to add new tags + ✓ Click [×] button next to tag to remove it + ✓ Tag changes replicate to server + ✓ Works with multiple instances selected + ✓ Category can be collapsed like other categories + ✓ Tags are sorted alphabetically From 23bb80d3caa93f1d1d083238fe32079b73b8ff76 Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Fri, 28 Nov 2025 01:39:19 -0500 Subject: [PATCH 07/36] Improve tag handling and UI logic in Properties module Adds error handling for GetTags, prevents duplicate tags, and refines logic for displaying tag-related UI elements. Removes the RemoveTag function and comments out certain UI behaviors for tag display and add tag row, streamlining tag management and display. --- .../main_NewDex/Modules/Properties.lua | 87 +++++++++---------- 1 file changed, 42 insertions(+), 45 deletions(-) diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Properties.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Properties.lua index b7eaca367b..5a3f3b6ada 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Properties.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Properties.lua @@ -648,24 +648,32 @@ local function main() -- Gather tags from selected instances if Settings.Properties.ShowTags then + local foundTags = {} for i = 1, #sList do local obj = sList[i].Obj - local tags = obj:GetTags() - - for _, tagName in ipairs(tags) do - local tagProp = { - Name = "TAG_" .. tagName, - DisplayName = tagName, - Class = obj.ClassName, - ValueType = { Name = "string", Category = "Primitive" }, - Category = "Tags", - Tags = {}, - IsTag = true, - TagName = tagName, - Depth = 1, - } - props[propCount] = tagProp - propCount = propCount + 1 + local success, tags = pcall(function() + return obj:GetTags() + end) + + if success and tags then + for _, tagName in ipairs(tags) do + if not foundTags[tagName] then + local tagProp = { + Name = "TAG_" .. tagName, + DisplayName = tagName, + Class = obj.ClassName, + ValueType = { Name = "string", Category = "Primitive" }, + Category = "Tags", + Tags = {}, + IsTag = true, + TagName = tagName, + Depth = 1, + } + props[propCount] = tagProp + propCount = propCount + 1 + foundTags[tagName] = true + end + end end end @@ -1847,7 +1855,7 @@ local function main() end Properties.DisplayProp = function(prop, entryIndex) - if prop.IsTag or prop.IsAddTagButton or prop.Category == "Tags" and prop.SpecialRow then + if prop.IsAddTagButton or (prop.Category == "Tags" and prop.SpecialRow == "AddTag") then -- Hide all value UI elements for Add Tag row local entryData = propEntries[entryIndex] if entryData and entryData.GuiElems then @@ -1938,7 +1946,7 @@ local function main() valueBox.Visible = true valueBox.Text = prop.TagName valueBox.TextColor3 = Settings.Theme.Text - valueBox.ClearTextOnFocus = false + -- valueBox.ClearTextOnFocus = false valueBox.Active = false -- Show X button on right side to remove tag @@ -2011,17 +2019,6 @@ local function main() end end - function Properties.RemoveTag(prop) - local obj = Explorer.Selection.List[1].Obj - if not obj then - return - end - - local tag = prop.TagName - Properties.Remote:InvokeServer("removetag", obj, tag) - Properties.Refresh() - end - Properties.Refresh = function() local maxEntries = math.max(math.ceil(propsFrame.AbsoluteSize.Y / 23), 0) local maxX = propsFrame.AbsoluteSize.X @@ -2158,28 +2155,28 @@ local function main() Properties.DisplayProp(prop, i) end ) - else + elseif not prop.IsTag and not prop.IsAddTagButton and prop.SpecialRow ~= "AddTag" then propCons[#propCons + 1] = getPropChangedSignal(propObj, propName):Connect(function() Properties.DisplayProp(prop, i) end) end end - -- Tag display - if prop.IsTag then - valueBox.Text = prop.TagName - - local deleteButton = entryFrame.ValueFrame.RightButton - deleteButton.Visible = true - deleteButton.Icon.Image = "rbxassetid://5034718129" - deleteButton.Icon.ImageRectSize = Vector2.new(16, 16) - end - - -- "Add Tag" special row - if prop.SpecialRow == "AddTag" then - valueBox.Text = "+" - valueBox.TextColor3 = Settings.Theme.Main1 - end + -- -- Tag display + -- if prop.IsTag then + -- valueBox.Text = prop.TagName + + -- local deleteButton = entryFrame.ValueFrame.RightButton + -- deleteButton.Visible = true + -- deleteButton.Icon.Image = "rbxassetid://5034718129" + -- deleteButton.Icon.ImageRectSize = Vector2.new(16, 16) + -- end + + -- -- "Add Tag" special row + -- if prop.SpecialRow == "AddTag" then + -- valueBox.Text = "+" + -- valueBox.TextColor3 = Settings.Theme.Main1 + -- end -- Position and resize Input Box local beforeVisible = valueBox.Visible From 2a3a41bec5ef079638931f542783d937759ab024 Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Fri, 28 Nov 2025 02:06:21 -0500 Subject: [PATCH 08/36] Refactor AboutMenu and update version to 1.0.6 Improved code formatting and structure in AboutMenu.lua for better readability and maintainability. Added 'DrewBokman' to the credits list. Updated Main.Version in init.client.lua from 'Beta 1.0.5 Adonis' to 'Beta 1.0.6 Adonis'. --- .../main_NewDex/Modules/AboutMenu.lua | 208 ++++++++++++------ .../Dex_Client/main_NewDex/init.client.lua | 2 +- 2 files changed, 146 insertions(+), 64 deletions(-) diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/AboutMenu.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/AboutMenu.lua index 37d79c318e..07df5642e4 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/AboutMenu.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/AboutMenu.lua @@ -9,9 +9,9 @@ local ReplicatedStorage = game:GetService("ReplicatedStorage") local Dex_RemoteFunction = ReplicatedStorage:WaitForChild("NewDex_Event") :: RemoteFunction -- Common Locals -local Main,Lib,Apps,Settings -- Main Containers +local Main, Lib, Apps, Settings -- Main Containers local Explorer, Properties, ScriptViewer, Notebook -- Major Apps -local API,RMD,env,service,plr,create,createSimple -- Main Locals +local API, RMD, env, service, plr, create, createSimple -- Main Locals local function initDeps(data) Main = data.Main @@ -35,99 +35,181 @@ local function initAfterMain() Notebook = Apps.Notebook end - local function main() local AboutMenu = {} - + local scrollV, scrollH local settingsListFrame local expanded, viewList = {}, {} - + local aboutFrame - - + AboutMenu.AboutFrame = function() local aboutFrame = create({ - {1,'Frame',{Size=UDim2.new(1, 0, 1, 0),BorderColor3=Color3.fromRGB(0, 0, 0),Name='AboutFrame',BorderSizePixel=0,BackgroundTransparency=1,BackgroundColor3=Color3.fromRGB(255, 255, 255),}}, - {2,'Frame',{Parent={1},Size=UDim2.new(1, 0, 1, 0),BorderColor3=Color3.fromRGB(0, 0, 0),Name='Container',BorderSizePixel=0,BackgroundTransparency=1,BackgroundColor3=Color3.fromRGB(255, 255, 255),}}, - {3,'UIListLayout',{Parent={2},VerticalAlignment=Enum.VerticalAlignment.Center,SortOrder=Enum.SortOrder.LayoutOrder,HorizontalAlignment=Enum.HorizontalAlignment.Center,}} + { + 1, + "Frame", + { + Size = UDim2.new(1, 0, 1, 0), + BorderColor3 = Color3.fromRGB(0, 0, 0), + Name = "AboutFrame", + BorderSizePixel = 0, + BackgroundTransparency = 1, + BackgroundColor3 = Color3.fromRGB(255, 255, 255), + }, + }, + { + 2, + "Frame", + { + Parent = { 1 }, + Size = UDim2.new(1, 0, 1, 0), + BorderColor3 = Color3.fromRGB(0, 0, 0), + Name = "Container", + BorderSizePixel = 0, + BackgroundTransparency = 1, + BackgroundColor3 = Color3.fromRGB(255, 255, 255), + }, + }, + { + 3, + "UIListLayout", + { + Parent = { 2 }, + VerticalAlignment = Enum.VerticalAlignment.Center, + SortOrder = Enum.SortOrder.LayoutOrder, + HorizontalAlignment = Enum.HorizontalAlignment.Center, + }, + }, }) - + --local Container = aboutFrame.Container - + return aboutFrame end - - + AboutMenu.CreditsEntry = (function() local funcs = {} - + local function createGui() local creditsEntry = create({ - {1,'Frame',{Size=UDim2.new(1, 0, 0, 10),BorderColor3=Color3.fromRGB(0, 0, 0),Name='TextEntry',BorderSizePixel=0,BackgroundTransparency=1,BackgroundColor3=Color3.fromRGB(255, 255, 255),}}, - {2,'TextBox',{Parent={1},BorderSizePixel=0,RichText=true,BackgroundColor3=Color3.fromRGB(255, 255, 255),TextWrapped=true,TextSize=20,TextColor3=Color3.fromRGB(255, 255, 255),Size=UDim2.new(1, 0, 1, 0),BorderColor3=Color3.fromRGB(0, 0, 0),Text='text',Font=Enum.Font.SourceSans,BackgroundTransparency=1,ClearTextOnFocus=false,TextEditable=false,}} + { + 1, + "Frame", + { + Size = UDim2.new(1, 0, 0, 10), + BorderColor3 = Color3.fromRGB(0, 0, 0), + Name = "TextEntry", + BorderSizePixel = 0, + BackgroundTransparency = 1, + BackgroundColor3 = Color3.fromRGB(255, 255, 255), + }, + }, + { + 2, + "TextBox", + { + Parent = { 1 }, + BorderSizePixel = 0, + RichText = true, + BackgroundColor3 = Color3.fromRGB(255, 255, 255), + TextWrapped = true, + TextSize = 20, + TextColor3 = Color3.fromRGB(255, 255, 255), + Size = UDim2.new(1, 0, 1, 0), + BorderColor3 = Color3.fromRGB(0, 0, 0), + Text = "text", + Font = Enum.Font.SourceSans, + BackgroundTransparency = 1, + ClearTextOnFocus = false, + TextEditable = false, + }, + }, }) - + return creditsEntry end - - + function funcs:ChangeText(text) self.GuiElems.TextBox.Text = text end - - - local mt = {__index = funcs} + + local mt = { __index = funcs } local function new(text) local obj = setmetatable({}, mt) - + obj.Gui = createGui() - + obj.GuiElems = { - TextBox = obj.Gui.TextBox + TextBox = obj.Gui.TextBox, } - - if (text) then + + if text then obj:ChangeText(text) end - - + -- Parent obj.Gui.Parent = aboutFrame.Container - + return obj end - - - return {new = new} + + return { new = new } end)() - - + AboutMenu.AddCreditsEntry = function(text, properties) local creditsEntry = create({ - {1,'Frame',{Size=UDim2.new(1, 0, 0, 10),AutomaticSize=Enum.AutomaticSize.XY,BorderColor3=Color3.fromRGB(0, 0, 0),Name='TextEntry',BorderSizePixel=0,BackgroundTransparency=1,BackgroundColor3=Color3.fromRGB(255, 255, 255),}}, - {2,'TextLabel',{Parent={1},AutomaticSize=Enum.AutomaticSize.XY,BorderSizePixel=0,RichText=true,BackgroundColor3=Color3.fromRGB(255, 255, 255),TextWrapped=true,TextSize=14,TextColor3=Color3.fromRGB(255, 255, 255),Size=UDim2.new(1, 0, 1, 0),BorderColor3=Color3.fromRGB(0, 0, 0),Text='text',Font=Enum.Font.SourceSans,BackgroundTransparency=1,}} + { + 1, + "Frame", + { + Size = UDim2.new(1, 0, 0, 10), + AutomaticSize = Enum.AutomaticSize.XY, + BorderColor3 = Color3.fromRGB(0, 0, 0), + Name = "TextEntry", + BorderSizePixel = 0, + BackgroundTransparency = 1, + BackgroundColor3 = Color3.fromRGB(255, 255, 255), + }, + }, + { + 2, + "TextLabel", + { + Parent = { 1 }, + AutomaticSize = Enum.AutomaticSize.XY, + BorderSizePixel = 0, + RichText = true, + BackgroundColor3 = Color3.fromRGB(255, 255, 255), + TextWrapped = true, + TextSize = 14, + TextColor3 = Color3.fromRGB(255, 255, 255), + Size = UDim2.new(1, 0, 1, 0), + BorderColor3 = Color3.fromRGB(0, 0, 0), + Text = "text", + Font = Enum.Font.SourceSans, + BackgroundTransparency = 1, + }, + }, }) - + local entryText = creditsEntry.TextLabel entryText.Text = text - + -- Default text size entryText.TextSize = 16 - - if (properties) then + + if properties then for property, val in pairs(properties) do entryText[property] = val end end - - + creditsEntry.Parent = aboutFrame.Container - return creditsEntry end - + -- Init AboutMenu.Init = function() local window = Lib.Window.new() @@ -135,40 +217,40 @@ local function main() window:SetTitle("About") window.Resizable = true - + -- Setup Results ScrollingFrame AboutMenu.Window.GuiElems.Main.Parent.Name = "Dex_AboutWindow" -- Change ScreenGui name - - + -- Create Gui aboutFrame = AboutMenu.AboutFrame() - + AboutMenu.AddCreditsEntry("About Dex", { TextSize = 30, }) - - AboutMenu.AddCreditsEntry("Version: ".. Main.Version) - AboutMenu.AddCreditsEntry("\n", {TextSize = 5}) + + AboutMenu.AddCreditsEntry("Version: " .. Main.Version) + AboutMenu.AddCreditsEntry("\n", { TextSize = 5 }) AboutMenu.AddCreditsEntry("Developed by Moon aka. LorekeeperZinnia") AboutMenu.AddCreditsEntry("This version is modified, the official release was never finished.", { TextSize = 12, }) - AboutMenu.AddCreditsEntry("\n\n", {TextSize = 10}) - AboutMenu.AddCreditsEntry("Additional Contributors:", {TextSize = 17}) - AboutMenu.AddCreditsEntry("SnowyShiro", {TextSize = 17}) + AboutMenu.AddCreditsEntry("\n\n", { TextSize = 10 }) + AboutMenu.AddCreditsEntry("Additional Contributors:", { TextSize = 17 }) + AboutMenu.AddCreditsEntry("SnowyShiro", { TextSize = 17 }) AboutMenu.AddCreditsEntry("Modified GuiToLuaAE") AboutMenu.AddCreditsEntry("") - AboutMenu.AddCreditsEntry("karl-police", {TextSize = 17}) - AboutMenu.AddCreditsEntry("EasternBloxxer", {TextSize = 17}) - AboutMenu.AddCreditsEntry("xs4u", {TextSize = 17}) - AboutMenu.AddCreditsEntry("GuestDaProtogen", {TextSize = 17}) + AboutMenu.AddCreditsEntry("karl-police", { TextSize = 17 }) + AboutMenu.AddCreditsEntry("EasternBloxxer", { TextSize = 17 }) + AboutMenu.AddCreditsEntry("xs4u", { TextSize = 17 }) + AboutMenu.AddCreditsEntry("GuestDaProtogen", { TextSize = 17 }) + AboutMenu.AddCreditsEntry("DrewBokman", { TextSize = 17 }) AboutMenu.AddCreditsEntry("Added additional features, Adonis Plugin") - + -- Window Add, adds things to the "Content" window:Add(aboutFrame) end - + return AboutMenu end -return {InitDeps = initDeps, InitAfterMain = initAfterMain, Main = main} \ No newline at end of file +return { InitDeps = initDeps, InitAfterMain = initAfterMain, Main = main } diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua index b3fd032323..fdf0647e33 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua @@ -151,7 +151,7 @@ Main = (function() Main.ModuleList = { "Explorer", "Properties" } --Main.ModuleList = {"Explorer","Properties","ScriptViewer"} Main.Elevated = false Main.MissingEnv = {} - Main.Version = "Beta 1.0.5 Adonis" + Main.Version = "Beta 1.0.6 Adonis" Main.Mouse = plr:GetMouse() Main.AppControls = {} Main.Apps = Apps From 39be48eb56f9e2c1caa9094b9e0d36b2331bb993 Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Fri, 28 Nov 2025 02:55:29 -0500 Subject: [PATCH 09/36] Remove test.lua planning document Deleted the test.lua file containing the implementation plan and notes for adding tag viewing and editing to Dex Explorer. This removes outdated or unnecessary documentation from the repository. --- test.lua | 256 ------------------------------------------------------- 1 file changed, 256 deletions(-) delete mode 100644 test.lua diff --git a/test.lua b/test.lua deleted file mode 100644 index bbc49687e0..0000000000 --- a/test.lua +++ /dev/null @@ -1,256 +0,0 @@ -# Plan: Add Tag Viewing and Editing to Dex Explorer - -## Feature Request -Add the ability to view and edit instance tags in the Dex Properties panel using CollectionService API (`Instance:GetTags()`, `Instance:AddTag()`, `Instance:RemoveTag()`). - -## Implementation Approach - -### Follow the Attributes Pattern -Tags are very similar to Attributes - both are dynamic collections attached to instances. We'll create a "Tags" category in the Properties panel that displays all tags and allows adding/removing them. - -### Architecture Overview - -**Client Side (Properties.lua)**: -1. Gather tags when showing instance properties -2. Display tags in a "Tags" category -3. Provide UI to add/remove tags -4. Send tag operations to server - -**Server Side (init.lua)**: -1. Handle `addtag` action -2. Handle `removetag` action -3. Use CollectionService to apply changes - -## Detailed Implementation Plan - -### 1. Client-Side Changes (Properties.lua) - -#### A. Define ViewTagsProp (Around line 65) -Create a special property object for the "Add Tag" button: -```lua -Properties.ViewTagsProp = { - Name = "Add Tag...", - Class = "Instance", - ValueType = {Name = "string", Category = "Primitive"}, - Category = "Tags", - Tags = {}, - SpecialRow = "AddTag", - Depth = 1 - } - ``` - - #### B. Gather Tags in ShowExplorerProps() (Around lines 533-540) - After gathering attributes, get tags from selected instances: - - ```lua - -- After attributes section - if Settings.Properties.ShowTags then -- Add new setting - local CollectionService = service.CollectionService - - for i = 1, #selection do - local obj = selection[i] - local tags = obj:GetTags() - - for _, tagName in ipairs(tags) do - local tagProp = { - Name = tagName, - DisplayName = tagName, - Class = className, - ValueType = {Name = "string", Category = "Primitive"}, - Category = "Tags", - Tags = {}, - IsTag = true, - TagName = tagName, - Depth = 1 - } - props[#props+1] = tagProp - end - end - - -- Add "Add Tag" button - props[#props+1] = Properties.ViewTagsProp - end - ``` - - #### C. Handle Tag Display in DisplayProp() (Around lines 1351-1461) - Add tag-specific rendering: - - ```lua - -- Around line 1400, add check for IsTag - if prop.IsTag then - -- Show tag name - valueBox.Text = prop.TagName - - -- Show delete button - local deleteButton = entryFrame.ValueFrame.RightButton - deleteButton.Visible = true - deleteButton.Icon.Image = "rbxassetid://5034718129" -- X icon - deleteButton.Icon.ImageRectSize = Vector2.new(16, 16) - - -- Handle delete click - -- (Connect in SetInputProp) - end - - -- Handle AddTag special row - if prop.SpecialRow == "AddTag" then - valueBox.Text = "+" - valueBox.TextColor3 = Settings.Theme.Main1 - end - ``` - - #### D. Handle Tag Input in SetInputProp() (Around lines 1808-1854) - Handle adding and removing tags: - - ```lua - if prop.SpecialRow == "AddTag" then - -- Show add tag dialog - Properties.DisplayAddTagWindow() - - elseif prop.IsTag then - if special == "right" then - -- Remove tag button clicked - Properties.RemoveTag(prop) - end - end - ``` - - #### E. Add Tag Management Functions (New functions) - - **DisplayAddTagWindow()** (Around line 1112, after DisplayAddAttributeWindow): - ```lua - DisplayAddTagWindow = function() - -- Create window similar to AddAttribute window - -- Text input for tag name - -- Validate tag name (no special chars, not empty) - -- On confirm: call AddTag() - end - - AddTag = function(tagName) - local selection = Explorer.Selection.List - for i = 1, #selection do - local obj = selection[i] - Dex_RemoteFunction:InvokeServer("addtag", obj, tagName) - - -- Update local display - obj:AddTag(tagName) - end - - -- Refresh properties panel - Properties.ShowExplorerProps(selection) - end - - RemoveTag = function(prop) - local selection = Explorer.Selection.List - local tagName = prop.TagName - - for i = 1, #selection do - local obj = selection[i] - Dex_RemoteFunction:InvokeServer("removetag", obj, tagName) - - -- Update local display - obj:RemoveTag(tagName) - end - - -- Refresh properties panel - Properties.ShowExplorerProps(selection) - end - ``` - - #### F. Update Entry Template (Around line 1869) - Ensure RightButton is available for tag delete: - - Already exists in template, just need to show/hide appropriately - - #### G. Add Settings Toggle (Around line 33) - ```lua - ShowTags = true, -- Add to Settings.Properties - ``` - - ### 2. Server-Side Changes (init.lua) - - #### Add Tag Action Handlers (Around line 155, in Actions table) - - ```lua - addtag = function(Player: Player, args) - local obj = args[1] - local tagName = args[2] - - if obj and obj:IsA("Instance") and tagName and type(tagName) == "string" then - local success, err = pcall(function() - obj:AddTag(tagName) - end) - - if not success then - warn("Failed to add tag:", err) - end - return success - end - return false - end, - - removetag = function(Player: Player, args) - local obj = args[1] - local tagName = args[2] - - if obj and obj:IsA("Instance") and tagName and type(tagName) == "string" then - local success, err = pcall(function() - obj:RemoveTag(tagName) - end) - - if not success then - warn("Failed to remove tag:", err) - end - return success - end - return false - end, - ``` - - ### 3. UI Design - - **Tags Category Appearance**: - ``` - ┌─ Tags ────────────────────────────┐ - │ ▼ Tags │ - │ TagName1 [×] │ - │ TagName2 [×] │ - │ AnotherTag [×] │ - │ + Add Tag... │ - └───────────────────────────────────┘ - ``` - - **Add Tag Dialog**: - ``` - ┌─ Add Tag ─────────────────┐ - │ │ - │ Tag Name: │ - │ ┌───────────────────────┐ │ - │ │ │ │ - │ └───────────────────────┘ │ - │ │ - │ [OK] [Cancel] │ - └───────────────────────────┘ - ``` - - ## Files to Modify - - 1. **MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Properties.lua** - - Line ~65: Add ViewTagsProp definition - - Line ~33: Add ShowTags setting - - Line ~533-540: Gather tags in ShowExplorerProps() - - Line ~1400: Handle tag display in DisplayProp() - - Line ~1808-1854: Handle tag input in SetInputProp() - - Line ~1112: Add DisplayAddTagWindow(), AddTag(), RemoveTag() functions - - 2. **MainModule/Server/Plugins/ServerNewDex/init.lua** - - Line ~155: Add `addtag` and `removetag` action handlers in Actions table - - ## Expected Behavior - - ✓ Tags category appears in Properties panel below Attributes - ✓ All tags on selected instance(s) are displayed - ✓ Click "Add Tag..." to add new tags - ✓ Click [×] button next to tag to remove it - ✓ Tag changes replicate to server - ✓ Works with multiple instances selected - ✓ Category can be collapsed like other categories - ✓ Tags are sorted alphabetically From 410fd7dec1f543806f47f69bcc3d3d144b5ff92f Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Fri, 28 Nov 2025 04:11:25 -0500 Subject: [PATCH 10/36] Add Console and Model Viewer modules Introduces a new Console app module with syntax highlighting and command execution, and a Model Viewer app module for viewing models and parts with camera controls and context menu options. Updates Explorer to support viewing models via context menu, and integrates ModelViewer into app initialization. Minor changes to init.client.lua to include new modules. --- .../main_NewDex/Modules/Console.lua | 902 ++++++++++++++++++ .../main_NewDex/Modules/Explorer.lua | 21 +- .../main_NewDex/Modules/ModelViewer.lua | 454 +++++++++ .../Dex_Client/main_NewDex/init.client.lua | 17 +- .../Server/Plugins/ServerNewDex/init.lua | 16 + 5 files changed, 1407 insertions(+), 3 deletions(-) create mode 100644 MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Console.lua create mode 100644 MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/ModelViewer.lua diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Console.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Console.lua new file mode 100644 index 0000000000..f6fd62468b --- /dev/null +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Console.lua @@ -0,0 +1,902 @@ +--[[ + Console App Module + + Yes this does not exist on original Dex + ]] + +local ReplicatedStorage = game:GetService("ReplicatedStorage") +local Dex_RemoteFunction = ReplicatedStorage:WaitForChild("NewDex_Event") :: RemoteFunction + +-- Common Locals +local Main, Lib, Apps, Settings -- Main Containers +local Explorer, Properties, Console, Notebook -- Major Apps +local API, RMD, env, service, plr, create, createSimple -- Main Locals + +local function initDeps(data) + Main = data.Main + Lib = data.Lib + Apps = data.Apps + Settings = data.Settings + + API = data.API + RMD = data.RMD + env = data.env + service = data.service + plr = data.plr + create = data.create + createSimple = data.createSimple +end + +local function initAfterMain() + Explorer = Apps.Explorer + Properties = Apps.Properties + Console = Apps.Console + Notebook = Apps.Notebook +end + +local function main() + local Console = {} + + local window, ConsoleFrame + + local OutputLimit = 500 -- Same as Roblox Console. + + -- Instances: 29 | Scripts: 1 | Modules: 1 | Tags: 0 + local G2L = {} + + -- StarterGui.ScreenGui + window = Lib.Window.new() + window:SetTitle("Console") + window:Resize(500, 400) + Console.Window = window + + -- StarterGui.ScreenGui.Console + ConsoleFrame = Instance.new("ImageButton", window.GuiElems.Content) + ConsoleFrame["BorderSizePixel"] = 0 + ConsoleFrame["AutoButtonColor"] = false + ConsoleFrame["BackgroundTransparency"] = 1 + ConsoleFrame["BackgroundColor3"] = Color3.fromRGB(47, 47, 47) + ConsoleFrame["Selectable"] = false + ConsoleFrame["Size"] = UDim2.new(1, 0, 1, 0) + ConsoleFrame["BorderColor3"] = Color3.fromRGB(0, 0, 0) + ConsoleFrame["Name"] = [[Console]] + ConsoleFrame["Position"] = UDim2.new(0, 0, 0, 0) + + -- StarterGui.ScreenGui.Console.CommandLine + G2L["3"] = Lib.Frame.new().Gui --Instance.new("Frame", ConsoleFrame); + G2L["3"].Parent = ConsoleFrame + G2L["3"]["BorderSizePixel"] = 0 + G2L["3"]["BackgroundColor3"] = Color3.fromRGB(37, 37, 37) + G2L["3"]["AnchorPoint"] = Vector2.new(0.5, 1) + G2L["3"]["ClipsDescendants"] = true + G2L["3"]["Size"] = UDim2.new(1, -8, 0, 22) + G2L["3"]["Position"] = UDim2.new(0.5, 0, 1, -5) + G2L["3"]["BorderColor3"] = Color3.fromRGB(0, 0, 0) + G2L["3"]["Name"] = [[CommandLine]] + + -- StarterGui.ScreenGui.Console.CommandLine.UIStroke + G2L["4"] = Instance.new("UIStroke", G2L["3"]) + G2L["4"]["Transparency"] = 0.65 + G2L["4"]["Thickness"] = 1.25 + + -- StarterGui.ScreenGui.Console.CommandLine.ScrollingFrame + G2L["5"] = Instance.new("ScrollingFrame", G2L["3"]) + G2L["5"]["Active"] = true + G2L["5"]["ScrollingDirection"] = Enum.ScrollingDirection.X + G2L["5"]["BorderSizePixel"] = 0 + G2L["5"]["CanvasSize"] = UDim2.new(0, 0, 0, 0) + G2L["5"]["ElasticBehavior"] = Enum.ElasticBehavior.Never + G2L["5"]["TopImage"] = [[rbxasset://textures/ui/Scroll/scroll-middle.png]] + G2L["5"]["BackgroundColor3"] = Color3.fromRGB(255, 255, 255) + G2L["5"]["HorizontalScrollBarInset"] = Enum.ScrollBarInset.Always + G2L["5"]["BottomImage"] = [[rbxasset://textures/ui/Scroll/scroll-middle.png]] + G2L["5"]["AutomaticCanvasSize"] = Enum.AutomaticSize.X + G2L["5"]["Size"] = UDim2.new(1, 0, 1, 0) + G2L["5"]["ScrollBarImageColor3"] = Color3.fromRGB(57, 57, 57) + G2L["5"]["BorderColor3"] = Color3.fromRGB(0, 0, 0) + G2L["5"]["ScrollBarThickness"] = 2 + G2L["5"]["BackgroundTransparency"] = 1 + + -- StarterGui.ScreenGui.Console.CommandLine.ScrollingFrame.TextBox + G2L["6"] = Instance.new("TextBox", G2L["5"]) + G2L["6"]["CursorPosition"] = -1 + G2L["6"]["TextXAlignment"] = Enum.TextXAlignment.Left + G2L["6"]["PlaceholderColor3"] = Color3.fromRGB(211, 211, 211) + G2L["6"]["BorderSizePixel"] = 0 + G2L["6"]["TextSize"] = 13 + G2L["6"]["TextColor3"] = Color3.fromRGB(211, 211, 211) + G2L["6"]["BackgroundColor3"] = Color3.fromRGB(255, 255, 255) + G2L["6"]["FontFace"] = + Font.new([[rbxasset://fonts/families/Inconsolata.json]], Enum.FontWeight.Regular, Enum.FontStyle.Normal) + G2L["6"]["AutomaticSize"] = Enum.AutomaticSize.X + G2L["6"]["ClearTextOnFocus"] = false + G2L["6"]["PlaceholderText"] = [[Run a command]] + G2L["6"]["Size"] = UDim2.new(0, 246, 0, 22) + G2L["6"]["BorderColor3"] = Color3.fromRGB(0, 0, 0) + G2L["6"]["Text"] = [[]] + G2L["6"]["BackgroundTransparency"] = 1 + + -- StarterGui.ScreenGui.Console.CommandLine.ScrollingFrame.TextBox.UIPadding + G2L["7"] = Instance.new("UIPadding", G2L["6"]) + G2L["7"]["PaddingLeft"] = UDim.new(0, 7) + + -- StarterGui.ScreenGui.Console.CommandLine.ScrollingFrame.Highlight + G2L["8"] = Instance.new("TextLabel", G2L["5"]) + G2L["8"]["Interactable"] = false + G2L["8"]["ZIndex"] = 2 + G2L["8"]["BorderSizePixel"] = 0 + G2L["8"]["TextSize"] = 13 + G2L["8"]["TextXAlignment"] = Enum.TextXAlignment.Left + G2L["8"]["BackgroundColor3"] = Color3.fromRGB(255, 255, 255) + G2L["8"]["FontFace"] = + Font.new([[rbxasset://fonts/families/Inconsolata.json]], Enum.FontWeight.Regular, Enum.FontStyle.Normal) + G2L["8"]["TextColor3"] = Color3.fromRGB(255, 255, 255) + G2L["8"]["BackgroundTransparency"] = 1 + G2L["8"]["RichText"] = true + G2L["8"]["Size"] = UDim2.new(0, 246, 0, 22) + G2L["8"]["BorderColor3"] = Color3.fromRGB(0, 0, 0) + G2L["8"]["Text"] = [[]] + G2L["8"]["Selectable"] = true + G2L["8"]["AutomaticSize"] = Enum.AutomaticSize.X + G2L["8"]["Name"] = [[Highlight]] + + -- StarterGui.ScreenGui.Console.CommandLine.ScrollingFrame.Highlight.UIPadding + G2L["9"] = Instance.new("UIPadding", G2L["8"]) + G2L["9"]["PaddingLeft"] = UDim.new(0, 7) + + G2L["backgroundOutput"] = Instance.new("Frame", ConsoleFrame) + G2L["backgroundOutput"]["BorderSizePixel"] = 0 + G2L["backgroundOutput"]["BackgroundColor3"] = Color3.fromRGB(36, 36, 36) + G2L["backgroundOutput"]["Name"] = [[BackgroundOutput]] + G2L["backgroundOutput"]["AnchorPoint"] = Vector2.new(0, 0) + G2L["backgroundOutput"]["Size"] = UDim2.new(1, -8, 1, -55) + G2L["backgroundOutput"]["Position"] = UDim2.new(0, 4, 0, 23) + G2L["backgroundOutput"]["BorderColor3"] = Color3.fromRGB(0, 0, 0) + G2L["backgroundOutput"]["ZIndex"] = 1 + + local scrollbar = Lib.ScrollBar.new() + scrollbar.Gui.Parent = ConsoleFrame + scrollbar.Gui.Size = UDim2.new(0, 16, 1, -55) + scrollbar.Gui.Position = UDim2.new(1, -20, 0, 23) + scrollbar.Gui.Up.ZIndex = 3 + scrollbar.Gui.Down.ZIndex = 3 + + -- StarterGui.ScreenGui.Console.Output + G2L["a"] = Instance.new("ScrollingFrame", ConsoleFrame) + G2L["a"]["Active"] = true + G2L["a"]["BorderSizePixel"] = 0 + G2L["a"]["CanvasSize"] = UDim2.new(0, 0, 0, 0) + G2L["a"]["TopImage"] = "" + G2L["a"]["BackgroundColor3"] = Color3.fromRGB(36, 36, 36) + G2L["a"].BackgroundTransparency = 1 + G2L["a"]["Name"] = [[Output]] + G2L["a"]["ScrollBarImageTransparency"] = 0 + G2L["a"]["BottomImage"] = "" + G2L["a"]["AnchorPoint"] = Vector2.new(0, 0) + G2L["a"]["AutomaticCanvasSize"] = Enum.AutomaticSize.Y + G2L["a"]["Size"] = UDim2.new(1, -8, 1, -55) + G2L["a"]["Position"] = UDim2.new(0, 4, 0, 23) + G2L["a"]["BorderColor3"] = Color3.fromRGB(0, 0, 0) + G2L["a"].ScrollBarImageColor3 = Color3.fromRGB(70, 70, 70) + G2L["a"]["ScrollBarThickness"] = 16 + G2L["a"]["ZIndex"] = 1 + + if Settings.Window.Transparency then + G2L["a"].BackgroundTransparency = Settings.Window.Transparency + end + + G2L["a"]:GetPropertyChangedSignal("AbsoluteWindowSize"):Connect(function() + if G2L["a"].AbsoluteCanvasSize ~= G2L["a"].AbsoluteWindowSize then + scrollbar.Gui.Visible = true + else + scrollbar.Gui.Visible = false + end + end) + + -- StarterGui.ScreenGui.Console.Output.UIListLayout + G2L["b"] = Instance.new("UIListLayout", G2L["a"]) + G2L["b"]["SortOrder"] = Enum.SortOrder.LayoutOrder + + -- StarterGui.ScreenGui.Console.Output.UIStroke + G2L["c"] = Instance.new("UIStroke", G2L["a"]) + G2L["c"]["Transparency"] = 0.7 + G2L["c"]["Thickness"] = 1.25 + G2L["c"]["Color"] = Color3.fromRGB(12, 12, 12) + + -- StarterGui.ScreenGui.Console.Output.OutputTextSize + G2L["d"] = Instance.new("NumberValue", G2L["a"]) + G2L["d"]["Name"] = [[OutputTextSize]] + G2L["d"]["Value"] = 15 + + -- StarterGui.ScreenGui.Console.Output.OutputLimit + G2L["e"] = Instance.new("NumberValue", G2L["a"]) + G2L["e"]["Name"] = [[OutputLimit]] + G2L["e"]["Value"] = OutputLimit + + -- StarterGui.ScreenGui.Console.Output.UIPadding + G2L["f"] = Instance.new("UIPadding", G2L["a"]) + G2L["f"]["PaddingTop"] = UDim.new(0, 2) + + -- StarterGui.ScreenGui.Console.TextSizeBox + G2L["10"] = Instance.new("Frame", ConsoleFrame) + G2L["10"]["BorderSizePixel"] = 0 + G2L["10"]["BackgroundColor3"] = Color3.fromRGB(37, 37, 37) + G2L["10"]["ClipsDescendants"] = true + G2L["10"]["Size"] = UDim2.new(0, 37, 0, 15) + G2L["10"]["Position"] = UDim2.new(0, 4, 0, 4) + G2L["10"]["BorderColor3"] = Color3.fromRGB(0, 0, 0) + G2L["10"]["Name"] = [[TextSizeBox]] + + -- StarterGui.ScreenGui.Console.TextSizeBox.TextBox + G2L["11"] = Instance.new("TextBox", G2L["10"]) + G2L["11"]["PlaceholderColor3"] = Color3.fromRGB(108, 108, 108) + G2L["11"]["BorderSizePixel"] = 0 + G2L["11"]["TextWrapped"] = true + G2L["11"]["TextSize"] = 15 + G2L["11"]["TextColor3"] = Color3.fromRGB(211, 211, 211) + G2L["11"]["TextScaled"] = true + G2L["11"]["BackgroundColor3"] = Color3.fromRGB(255, 255, 255) + G2L["11"]["FontFace"] = + Font.new([[rbxasset://fonts/families/Inconsolata.json]], Enum.FontWeight.Regular, Enum.FontStyle.Normal) + G2L["11"]["PlaceholderText"] = [[Size]] + G2L["11"]["Size"] = UDim2.new(1, 0, 1, 0) + G2L["11"]["BorderColor3"] = Color3.fromRGB(0, 0, 0) + G2L["11"]["Text"] = [[]] + G2L["11"]["BackgroundTransparency"] = 1 + + -- StarterGui.ScreenGui.Console.TextSizeBox.TextBox.UIPadding + G2L["12"] = Instance.new("UIPadding", G2L["11"]) + G2L["12"]["PaddingTop"] = UDim.new(0, 2) + G2L["12"]["PaddingRight"] = UDim.new(0, 5) + G2L["12"]["PaddingLeft"] = UDim.new(0, 5) + G2L["12"]["PaddingBottom"] = UDim.new(0, 2) + + -- StarterGui.ScreenGui.Console.TextSizeBox.UIStroke + G2L["13"] = Instance.new("UIStroke", G2L["10"]) + G2L["13"]["Transparency"] = 0.65 + G2L["13"]["Thickness"] = 1.25 + + -- StarterGui.ScreenGui.Console.Clear + G2L["14"] = Instance.new("ImageButton", ConsoleFrame) + G2L["14"]["BorderSizePixel"] = 0 + G2L["14"]["BackgroundColor3"] = Color3.fromRGB(57, 57, 57) + G2L["14"]["Size"] = UDim2.new(0, 37, 0, 15) + G2L["14"]["BorderColor3"] = Color3.fromRGB(0, 0, 0) + G2L["14"]["Name"] = [[Clear]] + G2L["14"]["Position"] = UDim2.new(1, -42, 0, 4) + + -- StarterGui.ScreenGui.Console.Clear.TextLabel + G2L["15"] = Instance.new("TextLabel", G2L["14"]) + G2L["15"]["TextWrapped"] = true + G2L["15"]["Interactable"] = false + G2L["15"]["BorderSizePixel"] = 0 + G2L["15"]["TextSize"] = 20 + G2L["15"]["TextScaled"] = true + G2L["15"]["BackgroundColor3"] = Color3.fromRGB(255, 255, 255) + G2L["15"]["FontFace"] = + Font.new([[rbxasset://fonts/families/SourceSansPro.json]], Enum.FontWeight.Regular, Enum.FontStyle.Normal) + G2L["15"]["TextColor3"] = Color3.fromRGB(255, 255, 255) + G2L["15"]["BackgroundTransparency"] = 1 + G2L["15"]["Size"] = UDim2.new(1, 0, 1, 0) + G2L["15"]["BorderColor3"] = Color3.fromRGB(0, 0, 0) + G2L["15"]["Text"] = [[Clear]] + + -- StarterGui.ScreenGui.Console.Clear.UIPadding + G2L["16"] = Instance.new("UIPadding", G2L["14"]) + G2L["16"]["PaddingTop"] = UDim.new(0, 1) + G2L["16"]["PaddingBottom"] = UDim.new(0, 1) + + -- StarterGui.ScreenGui.Console.OutputTemplate + G2L["17"] = Instance.new("TextBox", ConsoleFrame) + G2L["17"]["Visible"] = false + G2L["17"]["Active"] = false + G2L["17"]["Name"] = [[OutputTemplate]] + G2L["17"]["TextXAlignment"] = Enum.TextXAlignment.Left + G2L["17"]["BorderSizePixel"] = 0 + G2L["17"]["TextEditable"] = false + G2L["17"]["TextWrapped"] = true + G2L["17"]["TextSize"] = 15 + G2L["17"]["TextColor3"] = Color3.fromRGB(171, 171, 171) + G2L["17"]["BackgroundColor3"] = Color3.fromRGB(255, 255, 255) + G2L["17"]["RichText"] = true + G2L["17"]["FontFace"] = + Font.new([[rbxasset://fonts/families/SourceSansPro.json]], Enum.FontWeight.Regular, Enum.FontStyle.Normal) + G2L["17"]["AutomaticSize"] = Enum.AutomaticSize.Y + G2L["17"]["Selectable"] = false + G2L["17"]["ClearTextOnFocus"] = false + G2L["17"]["Size"] = UDim2.new(1, 0, 0, 1) + G2L["17"]["Position"] = UDim2.new(0, 20, 0, 0) + G2L["17"]["BorderColor3"] = Color3.fromRGB(0, 0, 0) + G2L["17"]["Text"] = [[(timestamp) Output]] + G2L["17"]["BackgroundTransparency"] = 1 + + -- StarterGui.ScreenGui.Console.OutputTemplate.UIPadding + G2L["18"] = Instance.new("UIPadding", G2L["17"]) + G2L["18"]["PaddingRight"] = UDim.new(0, 6) + G2L["18"]["PaddingLeft"] = UDim.new(0, 6) + + -- StarterGui.ScreenGui.Console.CtrlScroll + G2L["19"] = Instance.new("ImageButton", ConsoleFrame) + G2L["19"]["BorderSizePixel"] = 0 + G2L["19"]["BackgroundColor3"] = Color3.fromRGB(57, 57, 57) + G2L["19"]["Size"] = UDim2.new(0, 60, 0, 15) + G2L["19"]["BorderColor3"] = Color3.fromRGB(0, 0, 0) + G2L["19"]["Name"] = [[CtrlScroll]] + G2L["19"]["Position"] = UDim2.new(0, 46, 0, 4) + + -- StarterGui.ScreenGui.Console.CtrlScroll.TextLabel + G2L["1a"] = Instance.new("TextLabel", G2L["19"]) + G2L["1a"]["TextWrapped"] = true + G2L["1a"]["Interactable"] = false + G2L["1a"]["BorderSizePixel"] = 0 + G2L["1a"]["TextSize"] = 20 + G2L["1a"]["TextScaled"] = true + G2L["1a"]["BackgroundColor3"] = Color3.fromRGB(255, 255, 255) + G2L["1a"]["FontFace"] = + Font.new([[rbxasset://fonts/families/SourceSansPro.json]], Enum.FontWeight.Regular, Enum.FontStyle.Normal) + G2L["1a"]["TextColor3"] = Color3.fromRGB(255, 255, 255) + G2L["1a"]["BackgroundTransparency"] = 1 + G2L["1a"]["Size"] = UDim2.new(1, 0, 1, 0) + G2L["1a"]["BorderColor3"] = Color3.fromRGB(0, 0, 0) + G2L["1a"]["Text"] = [[Ctrl Scroll]] + + -- StarterGui.ScreenGui.Console.CtrlScroll.UIPadding + G2L["1b"] = Instance.new("UIPadding", G2L["19"]) + G2L["1b"]["PaddingTop"] = UDim.new(0, 1) + G2L["1b"]["PaddingBottom"] = UDim.new(0, 1) + + -- StarterGui.ScreenGui.Console.AutoScroll + G2L["20"] = Instance.new("ImageButton", ConsoleFrame) + G2L["20"]["BorderSizePixel"] = 0 + G2L["20"]["BackgroundColor3"] = Color3.fromRGB(57, 57, 57) + G2L["20"]["Size"] = UDim2.new(0, 60, 0, 15) + G2L["20"]["BorderColor3"] = Color3.fromRGB(0, 0, 0) + G2L["20"]["Name"] = [[AutoScroll]] + G2L["20"]["Position"] = UDim2.new(0, 110, 0, 4) + + -- StarterGui.ScreenGui.Console.AutoScroll.TextLabel + G2L["1e"] = Instance.new("TextLabel", G2L["20"]) + G2L["1e"]["TextWrapped"] = true + G2L["1e"]["Interactable"] = false + G2L["1e"]["BorderSizePixel"] = 0 + G2L["1e"]["TextSize"] = 20 + G2L["1e"]["TextScaled"] = true + G2L["1e"]["BackgroundColor3"] = Color3.fromRGB(255, 255, 255) + G2L["1e"]["FontFace"] = + Font.new([[rbxasset://fonts/families/SourceSansPro.json]], Enum.FontWeight.Regular, Enum.FontStyle.Normal) + G2L["1e"]["TextColor3"] = Color3.fromRGB(255, 255, 255) + G2L["1e"]["BackgroundTransparency"] = 1 + G2L["1e"]["Size"] = UDim2.new(1, 0, 1, 0) + G2L["1e"]["BorderColor3"] = Color3.fromRGB(0, 0, 0) + G2L["1e"]["Text"] = [[Auto Scroll]] + + -- StarterGui.ScreenGui.Console.AutoScroll.UIPadding + G2L["1f"] = Instance.new("UIPadding", G2L["20"]) + G2L["1f"]["PaddingTop"] = UDim.new(0, 1) + G2L["1f"]["PaddingBottom"] = UDim.new(0, 1) + + -- StarterGui.ScreenGui.ConsoleHandler + G2L["1c"] = Instance.new("LocalScript", G2L["1"]) + G2L["1c"]["Name"] = [[ConsoleHandler]] + + -- StarterGui.ScreenGui.ConsoleHandler.SyntaxHighlighter + G2L["1d"] = Instance.new("ModuleScript", G2L["1c"]) + G2L["1d"]["Name"] = [[SyntaxHighlighter]] + + -- Require G2L wrapper + local G2L_REQUIRE = require + local G2L_MODULES = {} + local function require(Module: ModuleScript) + local ModuleState = G2L_MODULES[Module] + if ModuleState then + if not ModuleState.Required then + ModuleState.Required = true + ModuleState.Value = ModuleState.Closure() + end + return ModuleState.Value + end + return G2L_REQUIRE(Module) + end + + G2L_MODULES[G2L["1d"]] = { + Closure = function() + local script = G2L["1d"] + local highlighter = {} + local keywords = { + lua = { + "and", + "break", + "or", + "else", + "elseif", + "if", + "then", + "until", + "repeat", + "while", + "do", + "for", + "in", + "end", + "local", + "return", + "function", + "export", + }, + rbx = { + "game", + "workspace", + "script", + "math", + "string", + "table", + "task", + "wait", + "select", + "next", + "Enum", + "error", + "warn", + "tick", + "assert", + "shared", + "loadstring", + "tonumber", + "tostring", + "type", + "typeof", + "unpack", + "print", + "Instance", + "CFrame", + "Vector3", + "Vector2", + "Color3", + "UDim", + "UDim2", + "Ray", + "BrickColor", + "OverlapParams", + "RaycastParams", + "Axes", + "Random", + "Region3", + "Rect", + "TweenInfo", + "collectgarbage", + "not", + "utf8", + "pcall", + "xpcall", + "_G", + "setmetatable", + "getmetatable", + "os", + "pairs", + "ipairs", + }, + exploit = { + "hookmetamethod", + "hookfunction", + "getgc", + "filtergc", + "Drawing", + "getgenv", + "getsenv", + "getrenv", + "getfenv", + "setfenv", + "decompile", + "saveinstance", + "getrawmetatable", + "setrawmetatable", + "checkcaller", + "cloneref", + "clonefunction", + "iscclosure", + "islclosure", + "isexecutorclosure", + "newcclosure", + "getfunctionhash", + "crypt", + "writefile", + "appendfile", + "loadfile", + "readfile", + "listfiles", + "makefolder", + "isfolder", + "isfile", + "delfile", + "delfolder", + "getcustomasset", + "fireclickdetector", + "firetouchinterest", + "fireproximityprompt", + }, + operators = { + "#", + "+", + "-", + "*", + "%", + "/", + "^", + "=", + "~", + "=", + "<", + ">", + ",", + ".", + "(", + ")", + "{", + "}", + "[", + "]", + ";", + ":", + }, + } + + local colors = { + numbers = Color3.fromRGB(255, 198, 0), + boolean = Color3.fromRGB(255, 198, 0), + operator = Color3.fromRGB(204, 204, 204), + lua = Color3.fromRGB(132, 214, 247), + exploit = Color3.fromRGB(171, 84, 247), + rbx = Color3.fromRGB(248, 109, 124), + str = Color3.fromRGB(173, 241, 132), + comment = Color3.fromRGB(102, 102, 102), + null = Color3.fromRGB(255, 198, 0), + call = Color3.fromRGB(253, 251, 172), + self_call = Color3.fromRGB(253, 251, 172), + local_color = Color3.fromRGB(248, 109, 115), + function_color = Color3.fromRGB(248, 109, 115), + self_color = Color3.fromRGB(248, 109, 115), + local_property = Color3.fromRGB(97, 161, 241), + } + + local function createKeywordSet(keywords) + local keywordSet = {} + for _, keyword in ipairs(keywords) do + keywordSet[keyword] = true + end + return keywordSet + end + + local luaSet = createKeywordSet(keywords.lua) + local exploitSet = createKeywordSet(keywords.exploit) + local rbxSet = createKeywordSet(keywords.rbx) + local operatorsSet = createKeywordSet(keywords.operators) + + local function getHighlight(tokens, index) + local token = tokens[index] + + if colors[token .. "_color"] then + return colors[token .. "_color"] + end + + if tonumber(token) then + return colors.numbers + elseif token == "nil" then + return colors.null + elseif token:sub(1, 2) == "--" then + return colors.comment + elseif operatorsSet[token] then + return colors.operator + elseif luaSet[token] then + return colors.rbx + elseif rbxSet[token] then + return colors.lua + elseif exploitSet[token] then + return colors.exploit + elseif token:sub(1, 1) == '"' or token:sub(1, 1) == "'" then + return colors.str + elseif token == "true" or token == "false" then + return colors.boolean + end + + if tokens[index + 1] == "(" then + if tokens[index - 1] == ":" then + return colors.self_call + end + + return colors.call + end + + if tokens[index - 1] == "." then + if tokens[index - 2] == "Enum" then + return colors.rbx + end + + return colors.local_property + end + end + + function highlighter.run(source) + local tokens = {} + local currentToken = "" + + local inString = false + local inComment = false + local commentPersist = false + + for i = 1, #source do + local character = source:sub(i, i) + + if inComment then + if character == "\n" and not commentPersist then + table.insert(tokens, currentToken) + table.insert(tokens, character) + currentToken = "" + + inComment = false + elseif source:sub(i - 1, i) == "]]" and commentPersist then + currentToken ..= "]" + + table.insert(tokens, currentToken) + currentToken = "" + + inComment = false + commentPersist = false + else + currentToken = currentToken .. character + end + elseif inString then + if character == inString and source:sub(i - 1, i - 1) ~= "\\" or character == "\n" then + currentToken = currentToken .. character + inString = false + else + currentToken = currentToken .. character + end + else + if source:sub(i, i + 1) == "--" then + table.insert(tokens, currentToken) + currentToken = "-" + inComment = true + commentPersist = source:sub(i + 2, i + 3) == "[[" + elseif character == '"' or character == "'" then + table.insert(tokens, currentToken) + currentToken = character + inString = character + elseif operatorsSet[character] then + table.insert(tokens, currentToken) + table.insert(tokens, character) + currentToken = "" + elseif character:match("[%w_]") then + currentToken = currentToken .. character + else + table.insert(tokens, currentToken) + table.insert(tokens, character) + currentToken = "" + end + end + end + + table.insert(tokens, currentToken) + + local highlighted = {} + + for i, token in ipairs(tokens) do + local highlight = getHighlight(tokens, i) + + if highlight then + local syntax = string.format( + '%s', + highlight:ToHex(), + token:gsub("<", "<"):gsub(">", ">") + ) + + table.insert(highlighted, syntax) + else + table.insert(highlighted, token) + end + end + + return table.concat(highlighted) + end + + return highlighter + end, + } + + Console.Init = function() + -- StarterGui.ScreenGui.ConsoleHandler + local script = G2L["1c"] + + local CtrlScroll = false + local AutoScroll = false + + local LogService = game:GetService("LogService") + local Players = game:GetService("Players") + local LocalPlayer = Players.LocalPlayer + local Mouse = LocalPlayer:GetMouse() + local UserInputService = game:GetService("UserInputService") + local RunService = game:GetService("RunService") + + local Console = ConsoleFrame + local SyntaxHighlightingModule = require(script.SyntaxHighlighter) + local OutputTextSize = Console.Output.OutputTextSize + + local function Tween(obj, info, prop) + local tween = game:GetService("TweenService"):Create(obj, info, prop) + tween:Play() + return tween + end + + -- MOUSE STUFFS + + if CtrlScroll == true then + Console.CtrlScroll.BackgroundColor3 = Color3.fromRGB(11, 90, 175) + elseif CtrlScroll == false then + Console.CtrlScroll.BackgroundColor3 = Color3.fromRGB(56, 56, 56) + end + Console.CtrlScroll.MouseButton1Click:Connect(function() + CtrlScroll = not CtrlScroll + if CtrlScroll == true then + Console.CtrlScroll.BackgroundColor3 = Color3.fromRGB(11, 90, 175) + elseif CtrlScroll == false then + Console.CtrlScroll.BackgroundColor3 = Color3.fromRGB(56, 56, 56) + end + end) + + local IsHoldingCTRL = false + UserInputService.InputBegan:Connect(function(input, gameproc) + if not gameproc then + if input.KeyCode == Enum.KeyCode.LeftControl or input.KeyCode == Enum.KeyCode.RightControl then + IsHoldingCTRL = true + end + end + end) + UserInputService.InputEnded:Connect(function(input, gameproc) + if not gameproc then + if input.KeyCode == Enum.KeyCode.LeftControl or input.KeyCode == Enum.KeyCode.RightControl then + IsHoldingCTRL = false + end + end + end) + + if AutoScroll == true then + Console.AutoScroll.BackgroundColor3 = Color3.fromRGB(11, 90, 175) + elseif AutoScroll == false then + Console.AutoScroll.BackgroundColor3 = Color3.fromRGB(56, 56, 56) + end + Console.AutoScroll.MouseButton1Click:Connect(function() + AutoScroll = not AutoScroll + if AutoScroll == true then + Console.AutoScroll.BackgroundColor3 = Color3.fromRGB(11, 90, 175) + Console.Output.CanvasPosition = Vector2.new(0, 9e9) + elseif AutoScroll == false then + Console.AutoScroll.BackgroundColor3 = Color3.fromRGB(56, 56, 56) + end + end) + + -- Console part + local displayedOutput = {} + local OutputLimit = Console.Output.OutputLimit + + Console.TextSizeBox.TextBox.Text = tostring(OutputTextSize.Value) + + Console.TextSizeBox.TextBox:GetPropertyChangedSignal("Text"):Connect(function() + local tonum = tonumber(Console.TextSizeBox.TextBox.Text) + if tonum then + OutputTextSize.Value = tonum + end + end) + OutputTextSize:GetPropertyChangedSignal("Value"):Connect(function() + Console.TextSizeBox.TextBox.Text = tostring(OutputTextSize.Value) + end) + + local scrollConsoleInput + Console.Output.MouseEnter:Connect(function() + scrollConsoleInput = UserInputService.InputChanged:Connect(function(input) + if CtrlScroll and input.UserInputType == Enum.UserInputType.MouseWheel and IsHoldingCTRL == true then + Console.Output.ScrollingEnabled = false + local newTextSize = OutputTextSize.Value + input.Position.Z + if newTextSize >= 1 then + OutputTextSize.Value = newTextSize + end + else + Console.Output.ScrollingEnabled = true + end + end) + end) + Console.Output.MouseLeave:Connect(function() + if scrollConsoleInput then + scrollConsoleInput:Disconnect() + scrollConsoleInput = nil + end + end) + + Console.Clear.MouseButton1Click:Connect(function() + for _, log in pairs(Console.Output:GetChildren()) do + if log:IsA("TextBox") then + log:Destroy() + end + end + end) + + local focussedOutput + + LogService.MessageOut:Connect(function(msg, msgtype) + local formattedText = "" + local unformattedText = "" + local newOutputText = Console.OutputTemplate:Clone() + table.insert(displayedOutput, newOutputText) + + if #displayedOutput > OutputLimit.Value then + local oldest = table.remove(displayedOutput, 1) + if oldest and typeof(oldest) == "Instance" then + oldest:Destroy() + end + end + + unformattedText = os.date("%H:%M:%S") .. " " .. msg + if msgtype == Enum.MessageType.MessageOutput then + formattedText = os.date("%H:%M:%S") .. ' ' .. msg .. "" + newOutputText.Text = formattedText + elseif msgtype == Enum.MessageType.MessageWarning then + formattedText = os.date("%H:%M:%S") .. ' ' .. msg .. "" + newOutputText.Text = formattedText + elseif msgtype == Enum.MessageType.MessageError then + formattedText = os.date("%H:%M:%S") .. ' ' .. msg .. "" + newOutputText.Text = formattedText + elseif msgtype == Enum.MessageType.MessageInfo then + formattedText = os.date("%H:%M:%S") .. ' ' .. msg .. "" + newOutputText.Text = formattedText + end + + newOutputText.TextSize = OutputTextSize.Value + OutputTextSize:GetPropertyChangedSignal("Value"):Connect(function() + newOutputText.TextSize = OutputTextSize.Value + end) + + newOutputText.Focused:Connect(function() + focussedOutput = newOutputText + newOutputText.Text = unformattedText + end) + newOutputText.FocusLost:Connect(function() + focussedOutput = nil + newOutputText.Text = formattedText + end) + + newOutputText.Parent = Console.Output + newOutputText.Visible = true + + if AutoScroll then + Console.Output.CanvasPosition = Vector2.new(0, 9e9) + end + end) + + Console.Output.MouseLeave:Connect(function() + if focussedOutput then + focussedOutput:ReleaseFocus() + end + end) + + Console.CommandLine.ScrollingFrame.TextBox:GetPropertyChangedSignal("Text"):Connect(function() + local oneliner = string.gsub(Console.CommandLine.ScrollingFrame.TextBox.Text, "\n", " ") + Console.CommandLine.ScrollingFrame.TextBox.Text = oneliner + + Console.CommandLine.ScrollingFrame.Highlight.Text = + SyntaxHighlightingModule.run(Console.CommandLine.ScrollingFrame.TextBox.Text) + end) + + Console.CommandLine.ScrollingFrame.TextBox.FocusLost:Connect(function(enterPressed) + if enterPressed and Console.CommandLine.ScrollingFrame.TextBox.Text ~= "" then + print("> " .. Console.CommandLine.ScrollingFrame.TextBox.Text) + Dex_RemoteFunction:InvokeServer("Loadstring", Console.CommandLine.ScrollingFrame.TextBox.Text) + + -- loadstring(Console.CommandLine.ScrollingFrame.TextBox.Text)() + end + end) + end + + return Console +end + +-- TODO: Remove when open source + +return { InitDeps = initDeps, InitAfterMain = initAfterMain, Main = main } diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Explorer.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Explorer.lua index b5b4e359de..5626c42cbf 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Explorer.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Explorer.lua @@ -11,7 +11,7 @@ local Dex_RemoteFunction = ReplicatedStorage:WaitForChild("NewDex_Event") :: Rem -- Common Locals local Main, Lib, Apps, Settings -- Main Containers -local Explorer, Properties, ScriptViewer, Notebook -- Major Apps +local Explorer, Properties, ScriptViewer, Notebook, ModelViewer -- Major Apps local API, RMD, env, service, plr, create, createSimple -- Main Locals local function tweenInEntry(entry, fromPos, toPos) @@ -46,6 +46,7 @@ local function initAfterMain() Explorer = Apps.Explorer Properties = Apps.Properties ScriptViewer = Apps.ScriptViewer + ModelViewer = Apps.ModelViewer Notebook = Apps.Notebook end @@ -1192,6 +1193,7 @@ local function main() if presentClasses["BasePart"] or presentClasses["Model"] then context:AddRegistered("TELEPORT_TO") + context:AddRegistered("VIEW_MODEL") context:AddRegistered("VIEW_OBJECT") end @@ -1886,6 +1888,23 @@ local function main() end, }) + context:Register("VIEW_MODEL", { + Name = "View Model", + IconMap = Explorer.ClassIcons, + Icon = 5, + OnClick = function() + local sList = selection.List + local isa = game.IsA + + if #sList == 1 then + if isa(sList[1].Obj, "BasePart") or isa(sList[1].Obj, "Model") then + ModelViewer.ViewModel(sList[1].Obj) + return + end + end + end, + }) + context:Register("VIEW_OBJECT", { Name = "View Object (Right click to reset)", IconMap = Explorer.ClassIcons, diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/ModelViewer.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/ModelViewer.lua new file mode 100644 index 0000000000..fac669e941 --- /dev/null +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/ModelViewer.lua @@ -0,0 +1,454 @@ +--[[ + Model Viewer App Module + + A model viewer :3 +]] + +-- Common Locals +local Main, Lib, Apps, Settings -- Main Containers +local Explorer, Properties, ScriptViewer, ModelViewer, Notebook -- Major Apps +local API, RMD, env, service, plr, create, createSimple -- Main Locals + +local function initDeps(data) + Main = data.Main + Lib = data.Lib + Apps = data.Apps + Settings = data.Settings + + API = data.API + RMD = data.RMD + env = data.env + service = data.service + plr = data.plr + create = data.create + createSimple = data.createSimple +end + +local function initAfterMain() + Explorer = Apps.Explorer + Properties = Apps.Properties + ScriptViewer = Apps.ScriptViewer + Notebook = Apps.Notebook +end + +local function getPath(obj) + if obj.Parent == nil then + return "Nil parented" + else + return Explorer.GetInstancePath(obj) + end +end + +local function main() + local RunService = game:GetService("RunService") + local UserInputService = game:GetService("UserInputService") + + local ModelViewer = { + EnableInputCamera = true, + IsViewing = false, + AutoRefresh = false, + ZoomMultiplier = 2, + AutoRotate = true, + RotationSpeed = 0.01, + RefreshRate = 30, -- hertz + } + + local window, viewportFrame, pathLabel, settingsButton + local model, camera, originalModel + + ModelViewer.StopViewModel = function(updating) + if updating then + viewportFrame:FindFirstChildOfClass("Model"):Destroy() + else + if camera then + camera = nil + end + if model then + model = nil + end + viewportFrame:ClearAllChildren() + + ModelViewer.IsViewing = false + window:SetTitle("Model Viewer") + pathLabel.Gui.Text = "" + end + end + + ModelViewer.ViewModel = function(item, updating) + if not item then + return + end + ModelViewer.StopViewModel(updating) + + if item ~= workspace and not item:IsA("Terrain") then + -- why Model == workspace + -- wtf? + + if item:IsA("BasePart") and not item:IsA("Model") then + model = Instance.new("Model") + model.Parent = viewportFrame + + local clone = item:Clone() + clone.Parent = model + model.PrimaryPart = clone + model:SetPrimaryPartCFrame(CFrame.new(0, 0, 0)) + elseif item:IsA("Model") then + item.Archivable = true + + --[[if not item.PrimaryPart then + pathLabel.Gui.Text = "Failed to view model: No PrimaryPart is found." + return + end]] + if #item:GetChildren() == 0 then + return + end + + model = item:Clone() + model.Parent = viewportFrame + + -- fallback + if not model.PrimaryPart then + local found = false + for _, child in model:GetDescendants() do + if child:IsA("BasePart") then + model.PrimaryPart = child + model:SetPrimaryPartCFrame(CFrame.new(0, 0, 0)) + found = true + break + end + end + if not found then + model:Destroy() + model = nil + return + end + end + else + return + end + end + + originalModel = item + + if ModelViewer.AutoRefresh and not updating then + task.spawn(function() + while model and ModelViewer.AutoRefresh do + ModelViewer.ViewModel(originalModel, true) + task.wait(1 / ModelViewer.RefreshRate) + end + end) + end + + if not updating then + camera = Instance.new("Camera") + viewportFrame.CurrentCamera = camera + + camera.Parent = viewportFrame + camera.FieldOfView = 60 + + window:SetTitle(item.Name .. " - Model Viewer") + pathLabel.Gui.Text = "path: " .. getPath(originalModel) + window:Show() + ModelViewer.IsViewing = true + end + end + + ModelViewer.Init = function() + window = Lib.Window.new() + window:SetTitle("Model Viewer") + window:Resize(350, 200) + ModelViewer.Window = window + + viewportFrame = Instance.new("ViewportFrame") + viewportFrame.Parent = window.GuiElems.Content + viewportFrame.BackgroundTransparency = 1 + viewportFrame.Size = UDim2.new(1, 0, 1, 0) + + pathLabel = Lib.Label.new() + pathLabel.Gui.Parent = window.GuiElems.Content + pathLabel.Gui.AnchorPoint = Vector2.new(0, 1) + pathLabel.Gui.Text = "" + pathLabel.Gui.TextSize = 12 + pathLabel.Gui.TextTransparency = 0.8 + pathLabel.Gui.Position = UDim2.new(0, 1, 1, 0) + pathLabel.Gui.Size = UDim2.new(1, -1, 0, 15) + pathLabel.Gui.BackgroundTransparency = 1 + + settingsButton = Instance.new("ImageButton", window.GuiElems.Content) + settingsButton.AnchorPoint = Vector2.new(1, 0) + settingsButton.BackgroundTransparency = 1 + settingsButton.Size = UDim2.new(0, 15, 0, 15) + settingsButton.Position = UDim2.new(1, -3, 0, 3) + settingsButton.Image = "rbxassetid://6578871732" + settingsButton.ImageTransparency = 0.5 + -- mobile input check + if UserInputService:GetLastInputType() == Enum.UserInputType.Touch then + settingsButton.Visible = true + else + settingsButton.Visible = false + end + + local rotationX, rotationY = -15, 0 + local distance = 10 + local dragging = false + local hovering = false + local lastpos = Vector2.zero + + viewportFrame.InputBegan:Connect(function(input) + if not ModelViewer.EnableInputCamera then + return + end + if + input.UserInputType == Enum.UserInputType.MouseButton1 + or input.UserInputType == Enum.UserInputType.Touch + then + dragging = true + lastpos = input.Position + elseif input.KeyCode == Enum.KeyCode.LeftShift then + ModelViewer.ZoomMultiplier = 10 + end + end) + + viewportFrame.MouseEnter:Connect(function() + hovering = true + end) + viewportFrame.MouseLeave:Connect(function() + hovering = false + end) + + viewportFrame.InputEnded:Connect(function(input) + if not ModelViewer.EnableInputCamera then + return + end + if + input.UserInputType == Enum.UserInputType.MouseButton1 + or input.UserInputType == Enum.UserInputType.Touch + then + dragging = false + elseif input.KeyCode == Enum.KeyCode.LeftShift then + ModelViewer.ZoomMultiplier = 2 + end + end) + + viewportFrame.InputChanged:Connect(function(input) + if not ModelViewer.EnableInputCamera then + return + end + if + dragging and input.UserInputType == Enum.UserInputType.MouseMovement + or input.UserInputType == Enum.UserInputType.Touch + then + local delta = input.Position - lastpos + lastpos = input.Position + + rotationY -= delta.X * 0.01 + rotationX -= delta.Y * 0.01 + rotationX = math.clamp(rotationX, -math.pi / 2 + 0.1, math.pi / 2 - 0.1) + end + + if input.UserInputType == Enum.UserInputType.MouseWheel and hovering then + distance = math.clamp(distance - (input.Position.Z * ModelViewer.ZoomMultiplier), 0.1, math.huge) + end + end) + + RunService.RenderStepped:Connect(function() + if camera and model then + if not dragging and ModelViewer.AutoRotate then + rotationY += ModelViewer.RotationSpeed + end + + local center = model.PrimaryPart.Position + local offset = CFrame.new(0, 0, distance) + local rotation = CFrame.Angles(0, rotationY, 0) * CFrame.Angles(rotationX, 0, 0) + + local camCF = CFrame.new(center) * rotation * offset + + camera.CFrame = CFrame.lookAt(camCF.Position, center) + end + end) + + -- context stuffs + local context = Lib.ContextMenu.new() + + local absoluteSize = context.Gui.AbsoluteSize + context.MaxHeight = (absoluteSize.Y <= 600 and (absoluteSize.Y - 40)) or nil + + -- Registers + context:Register("STOP", { + Name = "Stop Viewing", + OnClick = function() + ModelViewer.StopViewModel() + end, + }) + context:Register("EXIT", { + Name = "Exit", + OnClick = function() + ModelViewer.StopViewModel() + context:Hide() + window:Hide() + end, + }) + context:Register("COPY_PATH", { + Name = "Copy Path", + OnClick = function() + if model then + env.setclipboard(getPath(originalModel)) + end + end, + }) + context:Register("REFRESH", { + Name = "Refresh", + OnClick = function() + if originalModel then + ModelViewer.ViewModel(originalModel) + end + end, + }) + context:Register("ENABLE_AUTO_REFRESH", { + Name = "Enable Auto Refresh", + OnClick = function() + if originalModel then + ModelViewer.AutoRefresh = true + ModelViewer.ViewModel(originalModel) + end + end, + }) + context:Register("DISABLE_AUTO_REFRESH", { + Name = "Disable Auto Refresh", + OnClick = function() + if originalModel then + ModelViewer.AutoRefresh = false + ModelViewer.ViewModel(originalModel) + end + end, + }) + context:Register("SAVE_INST", { + Name = "Save to File", + OnClick = function() + if model then + window:SetTitle(originalModel.Name .. " - Model Viewer - Saving") + local success, result = pcall( + env.saveinstance, + originalModel, + "Place_" .. game.PlaceId .. "_" .. originalModel.Name .. "_" .. os.time(), + { + Decompile = true, + } + ) + if success then + window:SetTitle(originalModel.Name .. " - Model Viewer - Saved") + context:Hide() + task.wait(5) + if model then + window:SetTitle(originalModel.Name .. " - Model Viewer") + end + else + window:SetTitle(originalModel.Name .. " - Model Viewer - Error") + warn("Error while saving model: " .. result) + context:Hide() + task.wait(5) + if model then + window:SetTitle(originalModel.Name .. " - Model Viewer") + end + end + end + end, + }) + + context:Register("ENABLE_AUTO_ROTATE", { + Name = "Enable Auto Rotate", + OnClick = function() + ModelViewer.AutoRotate = true + end, + }) + context:Register("DISABLE_AUTO_ROTATE", { + Name = "Disable Auto Rotate", + OnClick = function() + ModelViewer.AutoRotate = false + end, + }) + context:Register("LOCK_CAM", { + Name = "Lock Camera", + OnClick = function() + ModelViewer.EnableInputCamera = false + end, + }) + context:Register("UNLOCK_CAM", { + Name = "Unlock Camera", + OnClick = function() + ModelViewer.EnableInputCamera = true + end, + }) + + context:Register("ZOOM_IN", { + Name = "Zoom In", + OnClick = function() + distance = math.clamp(distance - (ModelViewer.ZoomMultiplier * 2), 2, math.huge) + end, + }) + + context:Register("ZOOM_OUT", { + Name = "Zoom Out", + OnClick = function() + distance = math.clamp(distance + (ModelViewer.ZoomMultiplier * 2), 2, math.huge) + end, + }) + + local function ShowContext() + context:Clear() + + context:AddRegistered("STOP", not ModelViewer.IsViewing) + context:AddRegistered("REFRESH", not ModelViewer.IsViewing) + context:AddRegistered("COPY_PATH", not ModelViewer.IsViewing) + context:AddRegistered("SAVE_INST", not ModelViewer.IsViewing) + context:AddDivider() + + if env.isonmobile then + context:AddRegistered("ZOOM_IN") + context:AddRegistered("ZOOM_OUT") + context:AddDivider() + end + + if ModelViewer.AutoRotate then + context:AddRegistered("DISABLE_AUTO_ROTATE") + else + context:AddRegistered("ENABLE_AUTO_ROTATE") + end + if ModelViewer.AutoRefresh then + context:AddRegistered("DISABLE_AUTO_REFRESH") + else + context:AddRegistered("ENABLE_AUTO_REFRESH") + end + if ModelViewer.EnableInputCamera then + context:AddRegistered("LOCK_CAM") + else + context:AddRegistered("UNLOCK_CAM") + end + + context:AddDivider() + + context:AddRegistered("EXIT") + + context:Show() + end + + local function HideContext() + context:Hide() + end + + viewportFrame.InputBegan:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseButton2 then + ShowContext() + elseif input.UserInputType == Enum.UserInputType.MouseButton1 and Lib.CheckMouseInGui(context.Gui) then + HideContext() + end + end) + settingsButton.MouseButton1Click:Connect(function() + ShowContext() + end) + end + + return ModelViewer +end + +return { InitDeps = initDeps, InitAfterMain = initAfterMain, Main = main } diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua index fdf0647e33..d7b24690f0 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua @@ -14,7 +14,7 @@ ]] -- Main vars -local Main, Explorer, Properties, ScriptViewer, DefaultSettings, Notebook, Serializer, Lib +local Main, Explorer, Properties, ScriptViewer, Console, ModelViewer, DefaultSettings, Notebook, Serializer, Lib local API, RMD local SettingsEditor local AboutMenu @@ -99,6 +99,10 @@ DefaultSettings = (function() Bracket = rgb(204, 204, 204), }, }, + Window = { + TitleOnMiddle = false, + Transparency = 0.2, + }, } end)() @@ -148,7 +152,7 @@ end Main = (function() local Main = {} - Main.ModuleList = { "Explorer", "Properties" } --Main.ModuleList = {"Explorer","Properties","ScriptViewer"} + Main.ModuleList = { "Explorer", "Properties", "Console", "ModelViewer" } --Main.ModuleList = {"Explorer","Properties","ScriptViewer"} Main.Elevated = false Main.MissingEnv = {} Main.Version = "Beta 1.0.6 Adonis" @@ -230,10 +234,14 @@ Main = (function() Explorer = Apps.Explorer Properties = Apps.Properties ScriptViewer = Apps.ScriptViewer + Console = Apps.Console + ModelViewer = Apps.ModelViewer Notebook = Apps.Notebook local appTable = { Explorer = Explorer, Properties = Properties, + Console = Console, + ModelViewer = ModelViewer, ScriptViewer = ScriptViewer, Notebook = Notebook, } @@ -1459,6 +1467,9 @@ Main = (function() Window = Properties.Window, }) + Main.CreateApp({ Name = "Console", IconMap = Main.LargeIcons, Icon = "Output", Window = Console.Window }) + + Main.CreateApp({ Name = "Model Viewer", IconMap = Main.LargeIcons, Icon = 6, Window = ModelViewer.Window }) --Main.CreateApp({Name = "Script Viewer", IconMap = Main.LargeIcons, Icon = "Script_Viewer", Window = ScriptViewer.Window}) Lib.ShowGui(gui) @@ -1569,6 +1580,8 @@ Main = (function() intro.SetProgress("Initializing Modules", 0.9) Explorer.Init() Properties.Init() + Console.Init() + ModelViewer.Init() --ScriptViewer.Init() SettingsEditor.Init() -- init this last diff --git a/MainModule/Server/Plugins/ServerNewDex/init.lua b/MainModule/Server/Plugins/ServerNewDex/init.lua index 9f7ca83dcc..f934678ed8 100644 --- a/MainModule/Server/Plugins/ServerNewDex/init.lua +++ b/MainModule/Server/Plugins/ServerNewDex/init.lua @@ -11,6 +11,7 @@ return function(Vargs) local Logs = Server.Logs local Remote = Server.Remote local Admin = Server.Admin + local Core = Server.Core local HttpService = Service.HttpService local Success, APIDump, Reflection = nil @@ -193,6 +194,21 @@ return function(Vargs) return true end, + + loadstring = function(Player: Player, args) + assert(Settings.CodeExecution, "CodeExecution must be enabled for this to work.") + local func, err = Core.Loadstring(args[1]) + if func then + local Succ, Err = pcall(function() + func() + end) + if Succ then + return true + else + return false, Err + end + end + end, } function ServerNewDex.MakeEvent() From c9fc10c704f2632b230256ec65cb90528104b375 Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Fri, 28 Nov 2025 04:29:18 -0500 Subject: [PATCH 11/36] Refactor and improve Dex client modules Refactored code for better readability and maintainability in Console, Explorer, Lib, and other modules. Improved tokenization logic in Console, updated event handling in Explorer, and enhanced utility functions in Lib. These changes address code style, robustness, and event connection consistency. --- .../main_NewDex/Modules/Console.lua | 24 +- .../main_NewDex/Modules/Explorer.lua | 26 +- .../Dex_Client/main_NewDex/Modules/Lib.lua | 6430 +++++++++++++---- .../main_NewDex/Modules/Properties.lua | 11 +- .../Modules/SettingsEditor/init.lua | 233 +- .../Dex_Client/main_NewDex/init.client.lua | 29 +- 6 files changed, 5065 insertions(+), 1688 deletions(-) diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Console.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Console.lua index f6fd62468b..ec901ebc08 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Console.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Console.lua @@ -645,13 +645,14 @@ local function main() currentToken = currentToken .. character end elseif inString then - if character == inString and source:sub(i - 1, i - 1) ~= "\\" or character == "\n" then - currentToken = currentToken .. character + currentToken = currentToken .. character + if (character == inString and source:sub(i - 1, i - 1) ~= "\\") or character == "\n" then inString = false - else - currentToken = currentToken .. character end else + local shouldInsertToken = false + local shouldInsertCharacter = false + if source:sub(i, i + 1) == "--" then table.insert(tokens, currentToken) currentToken = "-" @@ -661,15 +662,18 @@ local function main() table.insert(tokens, currentToken) currentToken = character inString = character - elseif operatorsSet[character] then - table.insert(tokens, currentToken) - table.insert(tokens, character) - currentToken = "" + elseif operatorsSet[character] or character:match("%s") then + shouldInsertToken = true + shouldInsertCharacter = true elseif character:match("[%w_]") then currentToken = currentToken .. character - else + end + + if shouldInsertToken then table.insert(tokens, currentToken) - table.insert(tokens, character) + if shouldInsertCharacter then + table.insert(tokens, character) + end currentToken = "" end end diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Explorer.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Explorer.lua index 5626c42cbf..4609944ea1 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Explorer.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Explorer.lua @@ -1049,20 +1049,19 @@ local function main() end) end - if Settings.Explorer.UseNameWidth then - itemChangedCon = game.ItemChanged:Connect(function(obj, prop) - if prop == "Parent" and nodes[obj] then - moveObject(obj) - elseif prop == "Name" and nodes[obj] then - nodes[obj].NameWidth = nil - end - end) - else - itemChangedCon = game.ItemChanged:Connect(function(obj, prop) - if prop == "Parent" and nodes[obj] then + for obj, node in pairs(nodes) do + obj.AncestryChanged:Connect(function(_, _) + if nodes[obj] then moveObject(obj) end end) + if Settings.Explorer.UseNameWidth then + obj:GetPropertyChangedSignal("Name"):Connect(function() + if nodes[obj] then + nodes[obj].NameWidth = nil + end + end) + end end end @@ -1557,7 +1556,10 @@ local function main() --local model = Instance.new("Model",sList[#sList].Obj.Parent) local model = Dex_RemoteFunction:InvokeServer("InstanceNew", "Model", sList[#sList].Obj.Parent) - or Instance.new("Model", sList[#sList].Obj.Parent) + if not model then + model = Instance.new("Model") + model.Parent = sList[#sList].Obj.Parent + end for i = 1, #sList do pcall(function() sList[i].Obj.Parent = model diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Lib.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Lib.lua index e6f12964c5..40e5c5e609 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Lib.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Lib.lua @@ -5,9 +5,9 @@ ]] -- Common Locals -local Main,Lib,Apps,Settings -- Main Containers +local Main, Lib, Apps, Settings -- Main Containers local Explorer, Properties, ScriptViewer, Notebook -- Major Apps -local API,RMD,env,service,plr,create,createSimple -- Main Locals +local API, RMD, env, service, plr, create, createSimple -- Main Locals local function initDeps(data) Main = data.Main @@ -46,11 +46,11 @@ local function main() local SIGNAL = newproxy() -- Usually for classes that work with a Roblox Object - local function initObj(props,mt) + local function initObj(props, mt) local type = type local function copy(t) local res = {} - for i,v in pairs(t) do + for i, v in pairs(t) do if v == SIGNAL then res[i] = Lib.Signal.new() elseif type(v) == "table" then @@ -58,17 +58,29 @@ local function main() else res[i] = v end - end + end return res end local newObj = copy(props) - return setmetatable(newObj,mt) + return setmetatable(newObj, mt) end - local function getGuiMT(props,funcs) - return {__index = function(self,ind) if not props[ind] then return funcs[ind] or self.Gui[ind] end end, - __newindex = function(self,ind,val) if not props[ind] then self.Gui[ind] = val else rawset(self,ind,val) end end} + local function getGuiMT(props, funcs) + return { + __index = function(self, ind) + if not props[ind] then + return funcs[ind] or self.Gui[ind] + end + end, + __newindex = function(self, ind, val) + if not props[ind] then + self.Gui[ind] = val + else + rawset(self, ind, val) + end + end, + } end -- Functions @@ -78,84 +90,111 @@ local function main() local gsub = string.gsub local format = string.format local char = string.char - local cleanTable = {['"'] = '\\"', ['\\'] = '\\\\'} - for i = 0,31 do - cleanTable[char(i)] = "\\"..format("%03d",i) + local cleanTable = { ['"'] = '\\"', ["\\"] = "\\\\" } + for i = 0, 31 do + cleanTable[char(i)] = "\\" .. format("%03d", i) end - for i = 127,255 do - cleanTable[char(i)] = "\\"..format("%03d",i) + for i = 127, 255 do + cleanTable[char(i)] = "\\" .. format("%03d", i) end return function(str) - return gsub(str,"[\"\\\0-\31\127-\255]",cleanTable) + return gsub(str, '["\\\0-\31\127-\255]', cleanTable) end end)() Lib.CheckMouseInGui = function(gui) - if gui == nil then return false end + if gui == nil then + return false + end local mouse = Main.Mouse local guiPosition = gui.AbsolutePosition - local guiSize = gui.AbsoluteSize + local guiSize = gui.AbsoluteSize - return mouse.X >= guiPosition.X and mouse.X < guiPosition.X + guiSize.X and mouse.Y >= guiPosition.Y and mouse.Y < guiPosition.Y + guiSize.Y + return mouse.X >= guiPosition.X + and mouse.X < guiPosition.X + guiSize.X + and mouse.Y >= guiPosition.Y + and mouse.Y < guiPosition.Y + guiSize.Y end Lib.IsShiftDown = function() - return service.UserInputService:IsKeyDown(Enum.KeyCode.LeftShift) or service.UserInputService:IsKeyDown(Enum.KeyCode.RightShift) + return service.UserInputService:IsKeyDown(Enum.KeyCode.LeftShift) + or service.UserInputService:IsKeyDown(Enum.KeyCode.RightShift) end Lib.IsCtrlDown = function() - return service.UserInputService:IsKeyDown(Enum.KeyCode.LeftControl) or service.UserInputService:IsKeyDown(Enum.KeyCode.RightControl) + return service.UserInputService:IsKeyDown(Enum.KeyCode.LeftControl) + or service.UserInputService:IsKeyDown(Enum.KeyCode.RightControl) end - Lib.CreateArrow = function(size,num,dir) + Lib.CreateArrow = function(size, num, dir) local max = num - local arrowFrame = createSimple("Frame",{ + local arrowFrame = createSimple("Frame", { BackgroundTransparency = 1, Name = "Arrow", - Size = UDim2.new(0,size,0,size) + Size = UDim2.new(0, size, 0, size), }) if dir == "up" then - for i = 1,num do - local newLine = createSimple("Frame",{ - BackgroundColor3 = Color3.new(220/255,220/255,220/255), + for i = 1, num do + local newLine = createSimple("Frame", { + BackgroundColor3 = Color3.new(220 / 255, 220 / 255, 220 / 255), BorderSizePixel = 0, - Position = UDim2.new(0,math.floor(size/2)-(i-1),0,math.floor(size/2)+i-math.floor(max/2)-1), - Size = UDim2.new(0,i+(i-1),0,1), - Parent = arrowFrame + Position = UDim2.new( + 0, + math.floor(size / 2) - (i - 1), + 0, + math.floor(size / 2) + i - math.floor(max / 2) - 1 + ), + Size = UDim2.new(0, i + (i - 1), 0, 1), + Parent = arrowFrame, }) end return arrowFrame elseif dir == "down" then - for i = 1,num do - local newLine = createSimple("Frame",{ - BackgroundColor3 = Color3.new(220/255,220/255,220/255), + for i = 1, num do + local newLine = createSimple("Frame", { + BackgroundColor3 = Color3.new(220 / 255, 220 / 255, 220 / 255), BorderSizePixel = 0, - Position = UDim2.new(0,math.floor(size/2)-(i-1),0,math.floor(size/2)-i+math.floor(max/2)+1), - Size = UDim2.new(0,i+(i-1),0,1), - Parent = arrowFrame + Position = UDim2.new( + 0, + math.floor(size / 2) - (i - 1), + 0, + math.floor(size / 2) - i + math.floor(max / 2) + 1 + ), + Size = UDim2.new(0, i + (i - 1), 0, 1), + Parent = arrowFrame, }) end return arrowFrame elseif dir == "left" then - for i = 1,num do - local newLine = createSimple("Frame",{ - BackgroundColor3 = Color3.new(220/255,220/255,220/255), + for i = 1, num do + local newLine = createSimple("Frame", { + BackgroundColor3 = Color3.new(220 / 255, 220 / 255, 220 / 255), BorderSizePixel = 0, - Position = UDim2.new(0,math.floor(size/2)+i-math.floor(max/2)-1,0,math.floor(size/2)-(i-1)), - Size = UDim2.new(0,1,0,i+(i-1)), - Parent = arrowFrame + Position = UDim2.new( + 0, + math.floor(size / 2) + i - math.floor(max / 2) - 1, + 0, + math.floor(size / 2) - (i - 1) + ), + Size = UDim2.new(0, 1, 0, i + (i - 1)), + Parent = arrowFrame, }) end return arrowFrame elseif dir == "right" then - for i = 1,num do - local newLine = createSimple("Frame",{ - BackgroundColor3 = Color3.new(220/255,220/255,220/255), + for i = 1, num do + local newLine = createSimple("Frame", { + BackgroundColor3 = Color3.new(220 / 255, 220 / 255, 220 / 255), BorderSizePixel = 0, - Position = UDim2.new(0,math.floor(size/2)-i+math.floor(max/2)+1,0,math.floor(size/2)-(i-1)), - Size = UDim2.new(0,1,0,i+(i-1)), - Parent = arrowFrame + Position = UDim2.new( + 0, + math.floor(size / 2) - i + math.floor(max / 2) + 1, + 0, + math.floor(size / 2) - (i - 1) + ), + Size = UDim2.new(0, 1, 0, i + (i - 1)), + Parent = arrowFrame, }) end return arrowFrame @@ -172,26 +211,26 @@ local function main() -- http://lua-users.org/wiki/StringTrim local trim = function(s) - local from = s:match"^%s*()" + local from = s:match("^%s*()") return from > #s and "" or s:match(".*%S", from) end - local gtchar = string.byte('>', 1) - local slashchar = string.byte('/', 1) - local D = string.byte('D', 1) - local E = string.byte('E', 1) + local gtchar = string.byte(">", 1) + local slashchar = string.byte("/", 1) + local D = string.byte("D", 1) + local E = string.byte("E", 1) local function defaultEntityTable() - return { quot='"', apos='\'', lt='<', gt='>', amp='&', tab='\t', nbsp=' ', } + return { quot = '"', apos = "'", lt = "<", gt = ">", amp = "&", tab = "\t", nbsp = " " } end local function replaceEntities(s, entities) - return s:gsub('&([^;]+);', entities) + return s:gsub("&([^;]+);", entities) end local function createEntityTable(docEntities, resultEntities) local entities = resultEntities or defaultEntityTable() - for _,e in pairs(docEntities) do + for _, e in pairs(docEntities) do e.value = replaceEntities(e.value, entities) entities[e.name] = e.value end @@ -200,15 +239,15 @@ local function main() local function parse(s, evalEntities) -- remove comments - s = s:gsub('', '') + s = s:gsub("", "") local entities, tentities = {}, nil if evalEntities then - local pos = s:find('<[_%w]') + local pos = s:find("<[_%w]") if pos then - s:sub(1, pos):gsub('?)([^<]*)', function(type, name, closed, txt) + s:gsub("<([?!/]?)([-:_%w]+)%s*(/?>?)([^<]*)", function(type, name, closed, txt) -- open if #type == 0 then local a = {} if #closed == 0 then local len = 0 - for all,aname,_,value,starttxt in string.gmatch(txt, "(.-([-_%w]+)%s*=%s*(.)(.-)%3%s*(/?>?))") do + for all, aname, _, value, starttxt in + string.gmatch(txt, "(.-([-_%w]+)%s*=%s*(.)(.-)%3%s*(/?>?))") + do len = len + #all a[aname] = value if #starttxt ~= 0 then - txt = txt:sub(len+1) + txt = txt:sub(len + 1) closed = starttxt break end end end - t[#t+1] = {tag=name, attrs=a, children={}} + t[#t + 1] = { tag = name, attrs = a, children = {} } if closed:byte(1) ~= slashchar then - l[#l+1] = t + l[#l + 1] = t t = t[#t].children end addtext(txt) -- close - elseif '/' == type then + elseif "/" == type then t = l[#l] l[#l] = nil addtext(txt) -- ENTITY - elseif '!' == type then + elseif "!" == type then if E == name:byte(1) then - txt:gsub('([_%w]+)%s+(.)(.-)%2', function(name, q, entity) - entities[#entities+1] = {name=name, value=entity} + txt:gsub("([_%w]+)%s+(.)(.-)%2", function(name, q, entity) + entities[#entities + 1] = { name = name, value = entity } end, 1) end -- elseif '?' == type then @@ -270,7 +311,7 @@ local function main() end end) - return {children=t, entities=entities, tentities=tentities} + return { children = t, entities = entities, tentities = tentities } end local function parseText(txt) @@ -279,34 +320,40 @@ local function main() return parseText end - local newEnv = setmetatable({},{__index = getfenv()}) - setfenv(func,newEnv) + local newEnv = setmetatable({}, { __index = getfenv() }) + setfenv(func, newEnv) return func() end)() Lib.FastWait = function(s) - if not s then return signalWait(renderStepped) end + if not s then + return signalWait(renderStepped) + end local start = tick() - while tick() - start < s do signalWait(renderStepped) end + while tick() - start < s do + signalWait(renderStepped) + end end - Lib.ButtonAnim = function(button,data) + Lib.ButtonAnim = function(button, data) local holding = false local disabled = false local mode = data and data.Mode or 1 local control = {} if mode == 2 then - local lerpTo = data.LerpTo or Color3.new(0,0,0) + local lerpTo = data.LerpTo or Color3.new(0, 0, 0) local delta = data.LerpDelta or 0.2 control.StartColor = data.StartColor or button.BackgroundColor3 - control.PressColor = data.PressColor or control.StartColor:lerp(lerpTo,delta) - control.HoverColor = data.HoverColor or control.StartColor:lerp(control.PressColor,0.6) + control.PressColor = data.PressColor or control.StartColor:lerp(lerpTo, delta) + control.HoverColor = data.HoverColor or control.StartColor:lerp(control.PressColor, 0.6) control.OutlineColor = data.OutlineColor end button.InputBegan:Connect(function(input) - if disabled then return end + if disabled then + return + end if input.UserInputType == Enum.UserInputType.MouseMovement and not holding then if mode == 1 then button.BackgroundTransparency = 0.4 @@ -319,13 +366,17 @@ local function main() button.BackgroundTransparency = 0 elseif mode == 2 then button.BackgroundColor3 = control.PressColor - if control.OutlineColor then button.BorderColor3 = control.PressColor end + if control.OutlineColor then + button.BorderColor3 = control.PressColor + end end end end) button.InputEnded:Connect(function(input) - if disabled then return end + if disabled then + return + end if input.UserInputType == Enum.UserInputType.MouseMovement and not holding then if mode == 1 then button.BackgroundTransparency = 1 @@ -338,7 +389,9 @@ local function main() button.BackgroundTransparency = Lib.CheckMouseInGui(button) and 0.4 or 1 elseif mode == 2 then button.BackgroundColor3 = Lib.CheckMouseInGui(button) and control.HoverColor or control.StartColor - if control.OutlineColor then button.BorderColor3 = control.OutlineColor end + if control.OutlineColor then + button.BorderColor3 = control.OutlineColor + end end end end) @@ -361,25 +414,31 @@ local function main() return control end - Lib.FindAndRemove = function(t,item) - local pos = table.find(t,item) - if pos then table.remove(t,pos) end + Lib.FindAndRemove = function(t, item) + local pos = table.find(t, item) + if pos then + table.remove(t, pos) + end end - Lib.AttachTo = function(obj,data) - local target,posOffX,posOffY,sizeOffX,sizeOffY,resize,con + Lib.AttachTo = function(obj, data) + local target, posOffX, posOffY, sizeOffX, sizeOffY, resize, con local disabled = false local function update() - if not obj or not target then return end + if not obj or not target then + return + end local targetPos = target.AbsolutePosition local targetSize = target.AbsoluteSize - obj.Position = UDim2.new(0,targetPos.X + posOffX,0,targetPos.Y + posOffY) - if resize then obj.Size = UDim2.new(0,targetSize.X + sizeOffX,0,targetSize.Y + sizeOffY) end + obj.Position = UDim2.new(0, targetPos.X + posOffX, 0, targetPos.Y + posOffY) + if resize then + obj.Size = UDim2.new(0, targetSize.X + sizeOffX, 0, targetSize.Y + sizeOffY) + end end - local function setup(o,data) + local function setup(o, data) obj = o data = data or {} target = data.Target @@ -389,7 +448,10 @@ local function main() sizeOffY = data.SizeOffY or 0 resize = data.Resize or false - if con then con:Disconnect() con = nil end + if con then + con:Disconnect() + con = nil + end if target then con = target.Changed:Connect(function(prop) if not disabled and prop == "AbsolutePosition" or prop == "AbsoluteSize" then @@ -400,11 +462,11 @@ local function main() update() end - setup(obj,data) + setup(obj, data) return { - SetData = function(obj,data) - setup(obj,data) + SetData = function(obj, data) + setup(obj, data) end, Enable = function() disabled = false @@ -431,34 +493,44 @@ local function main() Lib.ColorToBytes = function(col) local round = math.round - return string.format("%d, %d, %d",round(col.r*255),round(col.g*255),round(col.b*255)) + return string.format("%d, %d, %d", round(col.r * 255), round(col.g * 255), round(col.b * 255)) end Lib.ReadFile = function(filename) - if not env.readfile then return end + if not env.readfile then + return + end - local s,contents = pcall(env.readfile,filename) - if s and contents then return contents end + local s, contents = pcall(env.readfile, filename) + if s and contents then + return contents + end end - Lib.DeferFunc = function(f,...) + Lib.DeferFunc = function(f, ...) signalWait(renderStepped) return f(...) end Lib.LoadCustomAsset = function(filepath) - if not env.getcustomasset or not env.isfile or not env.isfile(filepath) then return end + if not env.getcustomasset or not env.isfile or not env.isfile(filepath) then + return + end return env.getcustomasset(filepath) end - Lib.FetchCustomAsset = function(url,filepath) - if not env.writefile then return end + Lib.FetchCustomAsset = function(url, filepath) + if not env.writefile then + return + end - local s,data = pcall(game.HttpGet,game,url) - if not s then return end + local s, data = pcall(game.HttpGet, game, url) + if not s then + return + end - env.writefile(filepath,data) + env.writefile(filepath, data) return Lib.LoadCustomAsset(filepath) end @@ -468,24 +540,30 @@ local function main() local funcs = {} local disconnect = function(con) - local pos = table.find(con.Signal.Connections,con) - if pos then table.remove(con.Signal.Connections,pos) end + local pos = table.find(con.Signal.Connections, con) + if pos then + table.remove(con.Signal.Connections, pos) + end end - funcs.Connect = function(self,func) - if type(func) ~= "function" then error("Attempt to connect a non-function") end + funcs.Connect = function(self, func) + if type(func) ~= "function" then + error("Attempt to connect a non-function") + end local con = { Signal = self, Func = func, - Disconnect = disconnect + Disconnect = disconnect, } - self.Connections[#self.Connections+1] = con + self.Connections[#self.Connections + 1] = con return con end - funcs.Fire = function(self,...) - for i,v in next,self.Connections do - task.spawn(xpcall, v.Func, function(e) warn(e.."\n"..debug.traceback()) end, ...) + funcs.Fire = function(self, ...) + for i, v in next, self.Connections do + task.spawn(xpcall, v.Func, function(e) + warn(e .. "\n" .. debug.traceback()) + end, ...) end end @@ -493,113 +571,127 @@ local function main() __index = funcs, __tostring = function(self) return "Signal: " .. tostring(#self.Connections) .. " Connections" - end + end, } local function new() local obj = {} obj.Connections = {} - return setmetatable(obj,mt) + return setmetatable(obj, mt) end - return {new = new} + return { new = new } end)() Lib.Set = (function() local funcs = {} - funcs.Add = function(self,obj) - if self.Map[obj] then return end + funcs.Add = function(self, obj) + if self.Map[obj] then + return + end local list = self.List - list[#list+1] = obj + list[#list + 1] = obj self.Map[obj] = true self.Changed:Fire() end - funcs.AddTable = function(self,t) + funcs.AddTable = function(self, t) local changed - local list,map = self.List,self.Map - for i = 1,#t do + local list, map = self.List, self.Map + for i = 1, #t do local elem = t[i] if not map[elem] then - list[#list+1] = elem + list[#list + 1] = elem map[elem] = true changed = true end end - if changed then self.Changed:Fire() end + if changed then + self.Changed:Fire() + end end - funcs.Remove = function(self,obj) - if not self.Map[obj] then return end + funcs.Remove = function(self, obj) + if not self.Map[obj] then + return + end local list = self.List - local pos = table.find(list,obj) - if pos then table.remove(list,pos) end + local pos = table.find(list, obj) + if pos then + table.remove(list, pos) + end self.Map[obj] = nil self.Changed:Fire() end - funcs.RemoveTable = function(self,t) + funcs.RemoveTable = function(self, t) local changed - local list,map = self.List,self.Map + local list, map = self.List, self.Map local removeSet = {} - for i = 1,#t do + for i = 1, #t do local elem = t[i] map[elem] = nil removeSet[elem] = true end - for i = #list,1,-1 do + for i = #list, 1, -1 do local elem = list[i] if removeSet[elem] then - table.remove(list,i) + table.remove(list, i) changed = true end end - if changed then self.Changed:Fire() end + if changed then + self.Changed:Fire() + end end - funcs.Set = function(self,obj) - if #self.List == 1 and self.List[1] == obj then return end + funcs.Set = function(self, obj) + if #self.List == 1 and self.List[1] == obj then + return + end - self.List = {obj} - self.Map = {[obj] = true} + self.List = { obj } + self.Map = { [obj] = true } self.Changed:Fire() end - funcs.SetTable = function(self,t) - local newList,newMap = {},{} - self.List,self.Map = newList,newMap - table.move(t,1,#t,1,newList) - for i = 1,#t do + funcs.SetTable = function(self, t) + local newList, newMap = {}, {} + self.List, self.Map = newList, newMap + table.move(t, 1, #t, 1, newList) + for i = 1, #t do newMap[t[i]] = true end self.Changed:Fire() end funcs.Clear = function(self) - if #self.List == 0 then return end + if #self.List == 0 then + return + end self.List = {} self.Map = {} self.Changed:Fire() end - local mt = {__index = funcs} + local mt = { __index = funcs } local function new() local obj = setmetatable({ List = {}, Map = {}, - Changed = Lib.Signal.new() - },mt) + Changed = Lib.Signal.new(), + }, mt) return obj end - return {new = new} + return { new = new } end)() Lib.IconMap = (function() @@ -611,60 +703,61 @@ local function main() return label end - funcs.SetupLabel = function(self,obj) + funcs.SetupLabel = function(self, obj) obj.BackgroundTransparency = 1 - obj.ImageRectOffset = Vector2.new(0,0) - obj.ImageRectSize = Vector2.new(self.IconSizeX,self.IconSizeY) + obj.ImageRectOffset = Vector2.new(0, 0) + obj.ImageRectSize = Vector2.new(self.IconSizeX, self.IconSizeY) obj.ScaleType = Enum.ScaleType.Crop - obj.Size = UDim2.new(0,self.IconSizeX,0,self.IconSizeY) + obj.Size = UDim2.new(0, self.IconSizeX, 0, self.IconSizeY) end - funcs.Display = function(self,obj,index) + funcs.Display = function(self, obj, index) obj.Image = self.MapId if not self.NumX then - obj.ImageRectOffset = Vector2.new(self.IconSizeX*index, 0) + obj.ImageRectOffset = Vector2.new(self.IconSizeX * index, 0) else - obj.ImageRectOffset = Vector2.new(self.IconSizeX*(index % self.NumX), self.IconSizeY*math.floor(index / self.NumX)) + obj.ImageRectOffset = + Vector2.new(self.IconSizeX * (index % self.NumX), self.IconSizeY * math.floor(index / self.NumX)) end end - funcs.DisplayByKey = function(self,obj,key) + funcs.DisplayByKey = function(self, obj, key) if self.IndexDict[key] then - self:Display(obj,self.IndexDict[key]) + self:Display(obj, self.IndexDict[key]) end end - funcs.SetDict = function(self,dict) + funcs.SetDict = function(self, dict) self.IndexDict = dict end local mt = {} mt.__index = funcs - local function new(mapId,mapSizeX,mapSizeY,iconSizeX,iconSizeY) + local function new(mapId, mapSizeX, mapSizeY, iconSizeX, iconSizeY) local obj = setmetatable({ MapId = mapId, MapSizeX = mapSizeX, MapSizeY = mapSizeY, IconSizeX = iconSizeX, IconSizeY = iconSizeY, - NumX = mapSizeX/iconSizeX, - IndexDict = {} - },mt) + NumX = mapSizeX / iconSizeX, + IndexDict = {}, + }, mt) return obj end - local function newLinear(mapId,iconSizeX,iconSizeY) + local function newLinear(mapId, iconSizeX, iconSizeY) local obj = setmetatable({ MapId = mapId, IconSizeX = iconSizeX, IconSizeY = iconSizeY, - IndexDict = {} - },mt) + IndexDict = {}, + }, mt) return obj end - return {new = new, newLinear = newLinear} + return { new = new, newLinear = newLinear } end)() Lib.ScrollBar = (function() @@ -681,103 +774,121 @@ local function main() local scrollThumb = self.GuiElems.ScrollThumb local scrollThumbFrame = self.GuiElems.ScrollThumbFrame - if not (self:CanScrollUp() or self:CanScrollDown()) then + if not (self:CanScrollUp() or self:CanScrollDown()) then scrollThumb.Visible = false else scrollThumb.Visible = true end if self.Horizontal then - scrollThumb.Size = UDim2.new(visible/total,0,1,0) + scrollThumb.Size = UDim2.new(visible / total, 0, 1, 0) if scrollThumb.AbsoluteSize.X < 16 then - scrollThumb.Size = UDim2.new(0,16,1,0) + scrollThumb.Size = UDim2.new(0, 16, 1, 0) end local fs = scrollThumbFrame.AbsoluteSize.X local bs = scrollThumb.AbsoluteSize.X - scrollThumb.Position = UDim2.new(self:GetScrollPercent()*(fs-bs)/fs,0,0,0) + scrollThumb.Position = UDim2.new(self:GetScrollPercent() * (fs - bs) / fs, 0, 0, 0) else - scrollThumb.Size = UDim2.new(1,0,visible/total,0) + scrollThumb.Size = UDim2.new(1, 0, visible / total, 0) if scrollThumb.AbsoluteSize.Y < 16 then - scrollThumb.Size = UDim2.new(1,0,0,16) + scrollThumb.Size = UDim2.new(1, 0, 0, 16) end local fs = scrollThumbFrame.AbsoluteSize.Y local bs = scrollThumb.AbsoluteSize.Y - scrollThumb.Position = UDim2.new(0,0,self:GetScrollPercent()*(fs-bs)/fs,0) + scrollThumb.Position = UDim2.new(0, 0, self:GetScrollPercent() * (fs - bs) / fs, 0) end end local function createFrame(self) - local newFrame = createSimple("Frame",{Style=0,Active=true,AnchorPoint=Vector2.new(0,0),BackgroundColor3=Color3.new(0.35294118523598,0.35294118523598,0.35294118523598),BackgroundTransparency=0.2,BorderColor3=Color3.new(0.10588236153126,0.16470588743687,0.20784315466881),BorderSizePixel=0,ClipsDescendants=false,Draggable=false,Position=UDim2.new(1,-16,0,0),Rotation=0,Selectable=false,Size=UDim2.new(0,16,1,0),SizeConstraint=0,Visible=true,ZIndex=1,Name="ScrollBar",}) + local newFrame = createSimple("Frame", { + Style = 0, + Active = true, + AnchorPoint = Vector2.new(0, 0), + BackgroundColor3 = Color3.new(0.35294118523598, 0.35294118523598, 0.35294118523598), + BackgroundTransparency = 0.2, + BorderColor3 = Color3.new(0.10588236153126, 0.16470588743687, 0.20784315466881), + BorderSizePixel = 0, + ClipsDescendants = false, + Draggable = false, + Position = UDim2.new(1, -16, 0, 0), + Rotation = 0, + Selectable = false, + Size = UDim2.new(0, 16, 1, 0), + SizeConstraint = 0, + Visible = true, + ZIndex = 1, + Name = "ScrollBar", + }) local button1 = nil local button2 = nil if self.Horizontal then - newFrame.Size = UDim2.new(1,0,0,16) - button1 = createSimple("ImageButton",{ + newFrame.Size = UDim2.new(1, 0, 0, 16) + button1 = createSimple("ImageButton", { Parent = newFrame, Name = "Left", - Size = UDim2.new(0,16,0,16), + Size = UDim2.new(0, 16, 0, 16), BackgroundTransparency = 1, BorderSizePixel = 0, - AutoButtonColor = false + AutoButtonColor = false, }) - createArrow(16,4,"left").Parent = button1 - button2 = createSimple("ImageButton",{ + createArrow(16, 4, "left").Parent = button1 + button2 = createSimple("ImageButton", { Parent = newFrame, Name = "Right", - Position = UDim2.new(1,-16,0,0), - Size = UDim2.new(0,16,0,16), + Position = UDim2.new(1, -16, 0, 0), + Size = UDim2.new(0, 16, 0, 16), BackgroundTransparency = 1, BorderSizePixel = 0, - AutoButtonColor = false + AutoButtonColor = false, }) - createArrow(16,4,"right").Parent = button2 + createArrow(16, 4, "right").Parent = button2 else - newFrame.Size = UDim2.new(0,16,1,0) - button1 = createSimple("ImageButton",{ + newFrame.Size = UDim2.new(0, 16, 1, 0) + button1 = createSimple("ImageButton", { Parent = newFrame, Name = "Up", - Size = UDim2.new(0,16,0,16), + Size = UDim2.new(0, 16, 0, 16), BackgroundTransparency = 1, BorderSizePixel = 0, - AutoButtonColor = false + AutoButtonColor = false, }) - createArrow(16,4,"up").Parent = button1 - button2 = createSimple("ImageButton",{ + createArrow(16, 4, "up").Parent = button1 + button2 = createSimple("ImageButton", { Parent = newFrame, Name = "Down", - Position = UDim2.new(0,0,1,-16), - Size = UDim2.new(0,16,0,16), + Position = UDim2.new(0, 0, 1, -16), + Size = UDim2.new(0, 16, 0, 16), BackgroundTransparency = 1, BorderSizePixel = 0, - AutoButtonColor = false + AutoButtonColor = false, }) - createArrow(16,4,"down").Parent = button2 + createArrow(16, 4, "down").Parent = button2 end - local scrollThumbFrame = createSimple("Frame",{ + local scrollThumbFrame = createSimple("Frame", { BackgroundTransparency = 1, - Parent = newFrame + Parent = newFrame, }) if self.Horizontal then - scrollThumbFrame.Position = UDim2.new(0,16,0,0) - scrollThumbFrame.Size = UDim2.new(1,-32,1,0) + scrollThumbFrame.Position = UDim2.new(0, 16, 0, 0) + scrollThumbFrame.Size = UDim2.new(1, -32, 1, 0) else - scrollThumbFrame.Position = UDim2.new(0,0,0,16) - scrollThumbFrame.Size = UDim2.new(1,0,1,-32) + scrollThumbFrame.Position = UDim2.new(0, 0, 0, 16) + scrollThumbFrame.Size = UDim2.new(1, 0, 1, -32) end - local scrollThumb = createSimple("Frame",{ - BackgroundColor3 = Color3.new(120/255,120/255,120/255), + local scrollThumb = createSimple("Frame", { + BackgroundColor3 = Color3.new(120 / 255, 120 / 255, 120 / 255), BorderSizePixel = 0, - Parent = scrollThumbFrame + Parent = scrollThumbFrame, }) - local markerFrame = createSimple("Frame",{ + local markerFrame = createSimple("Frame", { BackgroundTransparency = 1, Name = "Markers", - Size = UDim2.new(1,0,1,0), - Parent = scrollThumbFrame + Size = UDim2.new(1, 0, 1, 0), + Parent = scrollThumbFrame, }) local buttonPress = false @@ -787,17 +898,38 @@ local function main() --local thumbColor = Color3.new(120/255,120/255,120/255) --local thumbSelectColor = Color3.new(140/255,140/255,140/255) button1.InputBegan:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement and not buttonPress and self:CanScrollUp() then button1.BackgroundTransparency = 0.8 end - if input.UserInputType ~= Enum.UserInputType.MouseButton1 and input.UserInputType ~= Enum.UserInputType.Touch or not self:CanScrollUp() then return end + if + input.UserInputType == Enum.UserInputType.MouseMovement + and not buttonPress + and self:CanScrollUp() + then + button1.BackgroundTransparency = 0.8 + end + if + input.UserInputType ~= Enum.UserInputType.MouseButton1 + and input.UserInputType ~= Enum.UserInputType.Touch + or not self:CanScrollUp() + then + return + end buttonPress = true button1.BackgroundTransparency = 0.5 - if self:CanScrollUp() then self:ScrollUp() self.Scrolled:Fire() end + if self:CanScrollUp() then + self:ScrollUp() + self.Scrolled:Fire() + end local buttonTick = tick() local releaseEvent releaseEvent = user.InputEnded:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + if input.UserInputType ~= Enum.UserInputType.MouseButton1 then + return + end releaseEvent:Disconnect() - if checkMouseInGui(button1) and self:CanScrollUp() then button1.BackgroundTransparency = 0.8 else button1.BackgroundTransparency = 1 end + if checkMouseInGui(button1) and self:CanScrollUp() then + button1.BackgroundTransparency = 0.8 + else + button1.BackgroundTransparency = 1 + end buttonPress = false end) while buttonPress do @@ -809,20 +941,43 @@ local function main() end end) button1.InputEnded:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement and not buttonPress then button1.BackgroundTransparency = 1 end + if input.UserInputType == Enum.UserInputType.MouseMovement and not buttonPress then + button1.BackgroundTransparency = 1 + end end) button2.InputBegan:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement and not buttonPress and self:CanScrollDown() then button2.BackgroundTransparency = 0.8 end - if input.UserInputType ~= Enum.UserInputType.MouseButton1 and input.UserInputType ~= Enum.UserInputType.Touch or not self:CanScrollDown() then return end + if + input.UserInputType == Enum.UserInputType.MouseMovement + and not buttonPress + and self:CanScrollDown() + then + button2.BackgroundTransparency = 0.8 + end + if + input.UserInputType ~= Enum.UserInputType.MouseButton1 + and input.UserInputType ~= Enum.UserInputType.Touch + or not self:CanScrollDown() + then + return + end buttonPress = true button2.BackgroundTransparency = 0.5 - if self:CanScrollDown() then self:ScrollDown() self.Scrolled:Fire() end + if self:CanScrollDown() then + self:ScrollDown() + self.Scrolled:Fire() + end local buttonTick = tick() local releaseEvent releaseEvent = user.InputEnded:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + if input.UserInputType ~= Enum.UserInputType.MouseButton1 then + return + end releaseEvent:Disconnect() - if checkMouseInGui(button2) and self:CanScrollDown() then button2.BackgroundTransparency = 0.8 else button2.BackgroundTransparency = 1 end + if checkMouseInGui(button2) and self:CanScrollDown() then + button2.BackgroundTransparency = 0.8 + else + button2.BackgroundTransparency = 1 + end buttonPress = false end) while buttonPress do @@ -834,7 +989,9 @@ local function main() end end) button2.InputEnded:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement and not buttonPress then button2.BackgroundTransparency = 1 end + if input.UserInputType == Enum.UserInputType.MouseMovement and not buttonPress then + button2.BackgroundTransparency = 1 + end end) scrollThumb.InputBegan:Connect(function(input) @@ -842,8 +999,10 @@ local function main() scrollThumb.BackgroundTransparency = 0.2 scrollThumb.BackgroundColor3 = self.ThumbSelectColor end - if input.UserInputType ~= Enum.UserInputType.MouseButton1 - and input.UserInputType ~= Enum.UserInputType.Touch then + if + input.UserInputType ~= Enum.UserInputType.MouseButton1 + and input.UserInputType ~= Enum.UserInputType.Touch + then return end @@ -851,7 +1010,7 @@ local function main() local lastThumbPos = nil buttonPress = false - thumbFramePress = false + thumbFramePress = false thumbPress = true scrollThumb.BackgroundTransparency = 0 local mouseOffset = mouse[dir] - scrollThumb.AbsolutePosition[dir] @@ -859,17 +1018,30 @@ local function main() local releaseEvent local mouseEvent releaseEvent = user.InputEnded:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + if input.UserInputType ~= Enum.UserInputType.MouseButton1 then + return + end releaseEvent:Disconnect() - if mouseEvent then mouseEvent:Disconnect() end - if checkMouseInGui(scrollThumb) then scrollThumb.BackgroundTransparency = 0.2 else scrollThumb.BackgroundTransparency = 0 scrollThumb.BackgroundColor3 = self.ThumbColor end + if mouseEvent then + mouseEvent:Disconnect() + end + if checkMouseInGui(scrollThumb) then + scrollThumb.BackgroundTransparency = 0.2 + else + scrollThumb.BackgroundTransparency = 0 + scrollThumb.BackgroundColor3 = self.ThumbColor + end thumbPress = false end) self:Update() mouseEvent = user.InputChanged:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement and thumbPress and releaseEvent.Connected then - local thumbFrameSize = scrollThumbFrame.AbsoluteSize[dir]-scrollThumb.AbsoluteSize[dir] + if + input.UserInputType == Enum.UserInputType.MouseMovement + and thumbPress + and releaseEvent.Connected + then + local thumbFrameSize = scrollThumbFrame.AbsoluteSize[dir] - scrollThumb.AbsoluteSize[dir] local pos = mouse[dir] - scrollThumbFrame.AbsolutePosition[dir] - mouseOffset if pos > thumbFrameSize then pos = thumbFrameSize @@ -878,17 +1050,29 @@ local function main() end if lastThumbPos ~= pos then lastThumbPos = pos - self:ScrollTo(math.floor(0.5+pos/thumbFrameSize*(self.TotalSpace-self.VisibleSpace))) + self:ScrollTo( + math.floor(0.5 + pos / thumbFrameSize * (self.TotalSpace - self.VisibleSpace)) + ) end wait() end end) end) scrollThumb.InputEnded:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement and not thumbPress then scrollThumb.BackgroundTransparency = 0 scrollThumb.BackgroundColor3 = self.ThumbColor end + if input.UserInputType == Enum.UserInputType.MouseMovement and not thumbPress then + scrollThumb.BackgroundTransparency = 0 + scrollThumb.BackgroundColor3 = self.ThumbColor + end end) scrollThumbFrame.InputBegan:Connect(function(input) - if (input.UserInputType ~= Enum.UserInputType.MouseButton1 and input.UserInputType ~= Enum.UserInputType.Touch) or checkMouseInGui(scrollThumb) then return end + if + ( + input.UserInputType ~= Enum.UserInputType.MouseButton1 + and input.UserInputType ~= Enum.UserInputType.Touch + ) or checkMouseInGui(scrollThumb) + then + return + end local dir = self.Horizontal and "X" or "Y" local scrollDir = 0 @@ -900,18 +1084,23 @@ local function main() local scrollSize = self.VisibleSpace - 1 if scrollDir == 0 and mouse[dir] < scrollThumb.AbsolutePosition[dir] then self:ScrollTo(self.Index - scrollSize) - elseif scrollDir == 1 and mouse[dir] >= scrollThumb.AbsolutePosition[dir] + scrollThumb.AbsoluteSize[dir] then + elseif + scrollDir == 1 + and mouse[dir] >= scrollThumb.AbsolutePosition[dir] + scrollThumb.AbsoluteSize[dir] + then self:ScrollTo(self.Index + scrollSize) end end - thumbPress = false + thumbPress = false thumbFramePress = true doTick() local thumbFrameTick = tick() local releaseEvent releaseEvent = user.InputEnded:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + if input.UserInputType ~= Enum.UserInputType.MouseButton1 then + return + end releaseEvent:Disconnect() thumbFramePress = false end) @@ -940,14 +1129,14 @@ local function main() return newFrame end - funcs.Update = function(self,nocallback) + funcs.Update = function(self, nocallback) local total = self.TotalSpace local visible = self.VisibleSpace local index = self.Index local button1 = self.GuiElems.Button1 local button2 = self.GuiElems.Button2 - self.Index = math.clamp(self.Index,0,math.max(0,total-visible)) + self.Index = math.clamp(self.Index, 0, math.max(0, total - visible)) if self.LastTotalSpace ~= self.TotalSpace then self.LastTotalSpace = self.TotalSpace @@ -955,22 +1144,22 @@ local function main() end if self:CanScrollUp() then - for i,v in pairs(button1.Arrow:GetChildren()) do + for i, v in pairs(button1.Arrow:GetChildren()) do v.BackgroundTransparency = 0 end else button1.BackgroundTransparency = 1 - for i,v in pairs(button1.Arrow:GetChildren()) do + for i, v in pairs(button1.Arrow:GetChildren()) do v.BackgroundTransparency = 0.5 end end if self:CanScrollDown() then - for i,v in pairs(button2.Arrow:GetChildren()) do + for i, v in pairs(button2.Arrow:GetChildren()) do v.BackgroundTransparency = 0 end else button2.BackgroundTransparency = 1 - for i,v in pairs(button2.Arrow:GetChildren()) do + for i, v in pairs(button2.Arrow:GetChildren()) do v.BackgroundTransparency = 0.5 end end @@ -982,25 +1171,26 @@ local function main() local markerFrame = self.GuiElems.MarkerFrame markerFrame:ClearAllChildren() - for i,v in pairs(self.Markers) do + for i, v in pairs(self.Markers) do if i < self.TotalSpace then - createSimple("Frame",{ + createSimple("Frame", { BackgroundTransparency = 0, BackgroundColor3 = v, BorderSizePixel = 0, - Position = self.Horizontal and UDim2.new(i/self.TotalSpace,0,1,-6) or UDim2.new(1,-6,i/self.TotalSpace,0), - Size = self.Horizontal and UDim2.new(0,1,0,6) or UDim2.new(0,6,0,1), - Name = "Marker"..tostring(i), - Parent = markerFrame + Position = self.Horizontal and UDim2.new(i / self.TotalSpace, 0, 1, -6) + or UDim2.new(1, -6, i / self.TotalSpace, 0), + Size = self.Horizontal and UDim2.new(0, 1, 0, 6) or UDim2.new(0, 6, 0, 1), + Name = "Marker" .. tostring(i), + Parent = markerFrame, }) end end end - funcs.AddMarker = function(self,ind,color) - self.Markers[ind] = color or Color3.new(0,0,0) + funcs.AddMarker = function(self, ind, color) + self.Markers[ind] = color or Color3.new(0, 0, 0) end - funcs.ScrollTo = function(self,ind,nocallback) + funcs.ScrollTo = function(self, ind, nocallback) self.Index = ind self:Update() if not nocallback then @@ -1022,33 +1212,43 @@ local function main() return self.Index + self.VisibleSpace < self.TotalSpace end funcs.GetScrollPercent = function(self) - return self.Index/(self.TotalSpace-self.VisibleSpace) + return self.Index / (self.TotalSpace - self.VisibleSpace) end - funcs.SetScrollPercent = function(self,perc) - self.Index = math.floor(perc*(self.TotalSpace-self.VisibleSpace)) + funcs.SetScrollPercent = function(self, perc) + self.Index = math.floor(perc * (self.TotalSpace - self.VisibleSpace)) self:Update() end - funcs.Texture = function(self,data) - self.ThumbColor = data.ThumbColor or Color3.new(0,0,0) - self.ThumbSelectColor = data.ThumbSelectColor or Color3.new(0,0,0) - self.GuiElems.ScrollThumb.BackgroundColor3 = data.ThumbColor or Color3.new(0,0,0) - self.Gui.BackgroundColor3 = data.FrameColor or Color3.new(0,0,0) - self.GuiElems.Button1.BackgroundColor3 = data.ButtonColor or Color3.new(0,0,0) - self.GuiElems.Button2.BackgroundColor3 = data.ButtonColor or Color3.new(0,0,0) - for i,v in pairs(self.GuiElems.Button1.Arrow:GetChildren()) do - v.BackgroundColor3 = data.ArrowColor or Color3.new(0,0,0) + funcs.Texture = function(self, data) + self.ThumbColor = data.ThumbColor or Color3.new(0, 0, 0) + self.ThumbSelectColor = data.ThumbSelectColor or Color3.new(0, 0, 0) + self.GuiElems.ScrollThumb.BackgroundColor3 = data.ThumbColor or Color3.new(0, 0, 0) + self.Gui.BackgroundColor3 = data.FrameColor or Color3.new(0, 0, 0) + self.GuiElems.Button1.BackgroundColor3 = data.ButtonColor or Color3.new(0, 0, 0) + self.GuiElems.Button2.BackgroundColor3 = data.ButtonColor or Color3.new(0, 0, 0) + for i, v in pairs(self.GuiElems.Button1.Arrow:GetChildren()) do + v.BackgroundColor3 = data.ArrowColor or Color3.new(0, 0, 0) end - for i,v in pairs(self.GuiElems.Button2.Arrow:GetChildren()) do - v.BackgroundColor3 = data.ArrowColor or Color3.new(0,0,0) + for i, v in pairs(self.GuiElems.Button2.Arrow:GetChildren()) do + v.BackgroundColor3 = data.ArrowColor or Color3.new(0, 0, 0) end end - funcs.SetScrollFrame = function(self,frame) - if self.ScrollUpEvent then self.ScrollUpEvent:Disconnect() self.ScrollUpEvent = nil end - if self.ScrollDownEvent then self.ScrollDownEvent:Disconnect() self.ScrollDownEvent = nil end - self.ScrollUpEvent = frame.MouseWheelForward:Connect(function() self:ScrollTo(self.Index - self.WheelIncrement) end) - self.ScrollDownEvent = frame.MouseWheelBackward:Connect(function() self:ScrollTo(self.Index + self.WheelIncrement) end) + funcs.SetScrollFrame = function(self, frame) + if self.ScrollUpEvent then + self.ScrollUpEvent:Disconnect() + self.ScrollUpEvent = nil + end + if self.ScrollDownEvent then + self.ScrollDownEvent:Disconnect() + self.ScrollDownEvent = nil + end + self.ScrollUpEvent = frame.MouseWheelForward:Connect(function() + self:ScrollTo(self.Index - self.WheelIncrement) + end) + self.ScrollDownEvent = frame.MouseWheelBackward:Connect(function() + self:ScrollTo(self.Index + self.WheelIncrement) + end) end local mt = {} @@ -1065,65 +1265,67 @@ local function main() GuiElems = {}, Horizontal = hor, LastTotalSpace = 0, - Scrolled = Lib.Signal.new() - },mt) + Scrolled = Lib.Signal.new(), + }, mt) obj.Gui = createFrame(obj) obj:Texture({ - ThumbColor = Color3.fromRGB(60,60,60), - ThumbSelectColor = Color3.fromRGB(75,75,75), - ArrowColor = Color3.new(1,1,1), - FrameColor = Color3.fromRGB(40,40,40), - ButtonColor = Color3.fromRGB(75,75,75) + ThumbColor = Color3.fromRGB(60, 60, 60), + ThumbSelectColor = Color3.fromRGB(75, 75, 75), + ArrowColor = Color3.new(1, 1, 1), + FrameColor = Color3.fromRGB(40, 40, 40), + ButtonColor = Color3.fromRGB(75, 75, 75), }) return obj end - return {new = new} + return { new = new } end)() Lib.Window = (function() local funcs = {} - local static = {MinWidth = 200, FreeWidth = 200, ShowWindow = nil, SetSideVisible = nil} + local static = { MinWidth = 200, FreeWidth = 200, ShowWindow = nil, SetSideVisible = nil } local mouse = plr:GetMouse() - local sidesGui,alignIndicator + local sidesGui, alignIndicator local visibleWindows = {} - local leftSide = {Width = 300, Windows = {}, ResizeCons = {}, Hidden = true, Resizing = false} - local rightSide = {Width = 300, Windows = {}, ResizeCons = {}, Hidden = true, Resizing = false} + local leftSide = { Width = 300, Windows = {}, ResizeCons = {}, Hidden = true, Resizing = false } + local rightSide = { Width = 300, Windows = {}, ResizeCons = {}, Hidden = true, Resizing = false } local displayOrderStart local sideDisplayOrder - local sideTweenInfo = TweenInfo.new(0.3,Enum.EasingStyle.Quad,Enum.EasingDirection.Out) + local sideTweenInfo = TweenInfo.new(0.3, Enum.EasingStyle.Quad, Enum.EasingDirection.Out) local tweens = {} local isA = game.IsA local theme = { - MainColor1 = Color3.fromRGB(52,52,52), - MainColor2 = Color3.fromRGB(45,45,45), - Button = Color3.fromRGB(60,60,60) + MainColor1 = Color3.fromRGB(52, 52, 52), + MainColor2 = Color3.fromRGB(45, 45, 45), + Button = Color3.fromRGB(60, 60, 60), } local function stopTweens() - for i = 1,#tweens do + for i = 1, #tweens do tweens[i]:Cancel() end tweens = {} end - local function resizeHook(self,resizer,dir) + local function resizeHook(self, resizer, dir) local guiMain = self.GuiElems.Main resizer.InputBegan:Connect(function(input) if not self.Dragging and not self.Resizing and self.Resizable and self.ResizableInternal then local isH = dir:find("[WE]") and true local isV = dir:find("[NS]") and true - local signX = dir:find("W",1,true) and -1 or 1 - local signY = dir:find("N",1,true) and -1 or 1 + local signX = dir:find("W", 1, true) and -1 or 1 + local signY = dir:find("N", 1, true) and -1 or 1 - if self.Minimized and isV then return end + if self.Minimized and isV then + return + end if input.UserInputType == Enum.UserInputType.MouseMovement then resizer.BackgroundTransparency = 0.5 elseif input.UserInputType == Enum.UserInputType.MouseButton1 then - local releaseEvent,mouseEvent + local releaseEvent, mouseEvent local offX = mouse.X - resizer.AbsolutePosition.X local offY = mouse.Y - resizer.AbsolutePosition.Y @@ -1141,19 +1343,30 @@ local function main() end) mouseEvent = service.UserInputService.InputChanged:Connect(function(input) - if self.Resizable and self.ResizableInternal and input.UserInputType == Enum.UserInputType.MouseMovement then + if + self.Resizable + and self.ResizableInternal + and input.UserInputType == Enum.UserInputType.MouseMovement + then self:StopTweens() local deltaX = input.Position.X - resizer.AbsolutePosition.X - offX local deltaY = input.Position.Y - resizer.AbsolutePosition.Y - offY - if guiMain.AbsoluteSize.X + deltaX*signX < self.MinX then deltaX = signX*(self.MinX - guiMain.AbsoluteSize.X) end - if guiMain.AbsoluteSize.Y + deltaY*signY < self.MinY then deltaY = signY*(self.MinY - guiMain.AbsoluteSize.Y) end - if signY < 0 and guiMain.AbsolutePosition.Y + deltaY < 0 then deltaY = -guiMain.AbsolutePosition.Y end + if guiMain.AbsoluteSize.X + deltaX * signX < self.MinX then + deltaX = signX * (self.MinX - guiMain.AbsoluteSize.X) + end + if guiMain.AbsoluteSize.Y + deltaY * signY < self.MinY then + deltaY = signY * (self.MinY - guiMain.AbsoluteSize.Y) + end + if signY < 0 and guiMain.AbsolutePosition.Y + deltaY < 0 then + deltaY = -guiMain.AbsolutePosition.Y + end - guiMain.Position = guiMain.Position + UDim2.new(0,(signX < 0 and deltaX or 0),0,(signY < 0 and deltaY or 0)) - self.SizeX = self.SizeX + (isH and deltaX*signX or 0) - self.SizeY = self.SizeY + (isV and deltaY*signY or 0) - guiMain.Size = UDim2.new(0,self.SizeX,0,self.Minimized and 20 or self.SizeY) + guiMain.Position = guiMain.Position + + UDim2.new(0, (signX < 0 and deltaX or 0), 0, (signY < 0 and deltaY or 0)) + self.SizeX = self.SizeX + (isH and deltaX * signX or 0) + self.SizeY = self.SizeY + (isV and deltaY * signY or 0) + guiMain.Size = UDim2.new(0, self.SizeX, 0, self.Minimized and 20 or self.SizeY) --if isH then self.SizeX = guiMain.AbsoluteSize.X end --if isV then self.SizeY = guiMain.AbsoluteSize.Y end @@ -1173,31 +1386,33 @@ local function main() local updateWindows local function moveToTop(window) - local found = table.find(visibleWindows,window) + local found = table.find(visibleWindows, window) if found then - table.remove(visibleWindows,found) - table.insert(visibleWindows,1,window) + table.remove(visibleWindows, found) + table.insert(visibleWindows, 1, window) updateWindows() end end - local function sideHasRoom(side,neededSize) - local maxY = sidesGui.AbsoluteSize.Y - (math.max(0,#side.Windows - 1) * 4) + local function sideHasRoom(side, neededSize) + local maxY = sidesGui.AbsoluteSize.Y - (math.max(0, #side.Windows - 1) * 4) local inc = 0 - for i,v in pairs(side.Windows) do + for i, v in pairs(side.Windows) do inc = inc + (v.MinY or 100) - if inc > maxY - neededSize then return false end + if inc > maxY - neededSize then + return false + end end return true end - local function getSideInsertPos(side,curY) + local function getSideInsertPos(side, curY) local pos = #side.Windows + 1 - local range = {0,sidesGui.AbsoluteSize.Y} + local range = { 0, sidesGui.AbsoluteSize.Y } - for i,v in pairs(side.Windows) do - local midPos = v.PosY + v.SizeY/2 + for i, v in pairs(side.Windows) do + local midPos = v.PosY + v.SizeY / 2 if curY <= midPos then pos = i range[2] = midPos @@ -1207,15 +1422,15 @@ local function main() end end - return pos,range + return pos, range end - local function focusInput(self,obj) - if isA(obj,"GuiButton") then + local function focusInput(self, obj) + if isA(obj, "GuiButton") then obj.MouseButton1Down:Connect(function() moveToTop(self) end) - elseif isA(obj,"TextBox") then + elseif isA(obj, "TextBox") then obj.Focused:Connect(function() moveToTop(self) end) @@ -1224,28 +1439,308 @@ local function main() local createGui = function(self) local gui = create({ - {1,"ScreenGui",{Name="Dex_Window",ResetOnSpawn=false}}, - {2,"Frame",{Active=true,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="Main",Parent={1},Position=UDim2.new(0.40000000596046,0,0.40000000596046,0),Size=UDim2.new(0,300,0,300),}}, - {3,"Frame",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BackgroundTransparency=0.1,BorderSizePixel=0,Name="Content",Parent={2},Position=UDim2.new(0,0,0,20),Size=UDim2.new(1,0,1,-20),ClipsDescendants=true}}, - {4,"Frame",{BackgroundColor3=Color3.fromRGB(33,33,33),BorderSizePixel=0,Name="Line",Parent={3},Size=UDim2.new(1,0,0,1),}}, - {5,"Frame",{BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),BorderSizePixel=0,Name="TopBar",Parent={2},Size=UDim2.new(1,0,0,20),}}, - {6,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={5},Position=UDim2.new(0,5,0,0),Size=UDim2.new(1,-10,0,20),Text="Window",TextColor3=Color3.new(1,1,1),TextSize=14,TextXAlignment=0,}}, - {7,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Close",Parent={5},Position=UDim2.new(1,-18,0,2),Size=UDim2.new(0,16,0,16),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,}}, - {8,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://5054663650",Parent={7},Position=UDim2.new(0,3,0,3),Size=UDim2.new(0,10,0,10),}}, - {9,"UICorner",{CornerRadius=UDim.new(0,4),Parent={7},}}, - {10,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Minimize",Parent={5},Position=UDim2.new(1,-36,0,2),Size=UDim2.new(0,16,0,16),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,}}, - {11,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://5034768003",Parent={10},Position=UDim2.new(0,3,0,3),Size=UDim2.new(0,10,0,10),}}, - {12,"UICorner",{CornerRadius=UDim.new(0,4),Parent={10},}}, - {13,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Image="rbxassetid://1427967925",Name="Outlines",Parent={2},Position=UDim2.new(0,-5,0,-5),ScaleType=1,Size=UDim2.new(1,10,1,10),SliceCenter=Rect.new(6,6,25,25),TileSize=UDim2.new(0,20,0,20),}}, - {14,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Name="ResizeControls",Parent={2},Position=UDim2.new(0,-5,0,-5),Size=UDim2.new(1,10,1,10),}}, - {15,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.27450981736183,0.27450981736183,0.27450981736183),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="North",Parent={14},Position=UDim2.new(0,5,0,0),Size=UDim2.new(1,-10,0,5),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, - {16,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.27450981736183,0.27450981736183,0.27450981736183),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="South",Parent={14},Position=UDim2.new(0,5,1,-5),Size=UDim2.new(1,-10,0,5),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, - {17,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.27450981736183,0.27450981736183,0.27450981736183),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="NorthEast",Parent={14},Position=UDim2.new(1,-5,0,0),Size=UDim2.new(0,5,0,5),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, - {18,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.27450981736183,0.27450981736183,0.27450981736183),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="East",Parent={14},Position=UDim2.new(1,-5,0,5),Size=UDim2.new(0,5,1,-10),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, - {19,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.27450981736183,0.27450981736183,0.27450981736183),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="West",Parent={14},Position=UDim2.new(0,0,0,5),Size=UDim2.new(0,5,1,-10),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, - {20,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.27450981736183,0.27450981736183,0.27450981736183),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="SouthEast",Parent={14},Position=UDim2.new(1,-5,1,-5),Size=UDim2.new(0,5,0,5),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, - {21,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.27450981736183,0.27450981736183,0.27450981736183),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="NorthWest",Parent={14},Size=UDim2.new(0,5,0,5),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, - {22,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.27450981736183,0.27450981736183,0.27450981736183),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="SouthWest",Parent={14},Position=UDim2.new(0,0,1,-5),Size=UDim2.new(0,5,0,5),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, + { 1, "ScreenGui", { Name = "Dex_Window", ResetOnSpawn = false } }, + { + 2, + "Frame", + { + Active = true, + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Name = "Main", + Parent = { 1 }, + Position = UDim2.new(0.40000000596046, 0, 0.40000000596046, 0), + Size = UDim2.new(0, 300, 0, 300), + }, + }, + { + 3, + "Frame", + { + BackgroundColor3 = Color3.new(0.17647059261799, 0.17647059261799, 0.17647059261799), + BackgroundTransparency = 0.1, + BorderSizePixel = 0, + Name = "Content", + Parent = { 2 }, + Position = UDim2.new(0, 0, 0, 20), + Size = UDim2.new(1, 0, 1, -20), + ClipsDescendants = true, + }, + }, + { + 4, + "Frame", + { + BackgroundColor3 = Color3.fromRGB(33, 33, 33), + BorderSizePixel = 0, + Name = "Line", + Parent = { 3 }, + Size = UDim2.new(1, 0, 0, 1), + }, + }, + { + 5, + "Frame", + { + BackgroundColor3 = Color3.new(0.20392157137394, 0.20392157137394, 0.20392157137394), + BorderSizePixel = 0, + Name = "TopBar", + Parent = { 2 }, + Size = UDim2.new(1, 0, 0, 20), + }, + }, + { + 6, + "TextLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Font = 3, + Name = "Title", + Parent = { 5 }, + Position = UDim2.new(0, 5, 0, 0), + Size = UDim2.new(1, -10, 0, 20), + Text = "Window", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + TextXAlignment = 0, + }, + }, + { + 7, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.12549020349979, 0.12549020349979, 0.12549020349979), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "Close", + Parent = { 5 }, + Position = UDim2.new(1, -18, 0, 2), + Size = UDim2.new(0, 16, 0, 16), + Text = "", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + }, + }, + { + 8, + "ImageLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Image = "rbxassetid://5054663650", + Parent = { 7 }, + Position = UDim2.new(0, 3, 0, 3), + Size = UDim2.new(0, 10, 0, 10), + }, + }, + { 9, "UICorner", { CornerRadius = UDim.new(0, 4), Parent = { 7 } } }, + { + 10, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.12549020349979, 0.12549020349979, 0.12549020349979), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "Minimize", + Parent = { 5 }, + Position = UDim2.new(1, -36, 0, 2), + Size = UDim2.new(0, 16, 0, 16), + Text = "", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + }, + }, + { + 11, + "ImageLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Image = "rbxassetid://5034768003", + Parent = { 10 }, + Position = UDim2.new(0, 3, 0, 3), + Size = UDim2.new(0, 10, 0, 10), + }, + }, + { 12, "UICorner", { CornerRadius = UDim.new(0, 4), Parent = { 10 } } }, + { + 13, + "ImageLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Image = "rbxassetid://1427967925", + Name = "Outlines", + Parent = { 2 }, + Position = UDim2.new(0, -5, 0, -5), + ScaleType = 1, + Size = UDim2.new(1, 10, 1, 10), + SliceCenter = Rect.new(6, 6, 25, 25), + TileSize = UDim2.new(0, 20, 0, 20), + }, + }, + { + 14, + "Frame", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Name = "ResizeControls", + Parent = { 2 }, + Position = UDim2.new(0, -5, 0, -5), + Size = UDim2.new(1, 10, 1, 10), + }, + }, + { + 15, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.27450981736183, 0.27450981736183, 0.27450981736183), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "North", + Parent = { 14 }, + Position = UDim2.new(0, 5, 0, 0), + Size = UDim2.new(1, -10, 0, 5), + Text = "", + TextColor3 = Color3.new(0, 0, 0), + TextSize = 14, + }, + }, + { + 16, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.27450981736183, 0.27450981736183, 0.27450981736183), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "South", + Parent = { 14 }, + Position = UDim2.new(0, 5, 1, -5), + Size = UDim2.new(1, -10, 0, 5), + Text = "", + TextColor3 = Color3.new(0, 0, 0), + TextSize = 14, + }, + }, + { + 17, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.27450981736183, 0.27450981736183, 0.27450981736183), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "NorthEast", + Parent = { 14 }, + Position = UDim2.new(1, -5, 0, 0), + Size = UDim2.new(0, 5, 0, 5), + Text = "", + TextColor3 = Color3.new(0, 0, 0), + TextSize = 14, + }, + }, + { + 18, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.27450981736183, 0.27450981736183, 0.27450981736183), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "East", + Parent = { 14 }, + Position = UDim2.new(1, -5, 0, 5), + Size = UDim2.new(0, 5, 1, -10), + Text = "", + TextColor3 = Color3.new(0, 0, 0), + TextSize = 14, + }, + }, + { + 19, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.27450981736183, 0.27450981736183, 0.27450981736183), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "West", + Parent = { 14 }, + Position = UDim2.new(0, 0, 0, 5), + Size = UDim2.new(0, 5, 1, -10), + Text = "", + TextColor3 = Color3.new(0, 0, 0), + TextSize = 14, + }, + }, + { + 20, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.27450981736183, 0.27450981736183, 0.27450981736183), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "SouthEast", + Parent = { 14 }, + Position = UDim2.new(1, -5, 1, -5), + Size = UDim2.new(0, 5, 0, 5), + Text = "", + TextColor3 = Color3.new(0, 0, 0), + TextSize = 14, + }, + }, + { + 21, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.27450981736183, 0.27450981736183, 0.27450981736183), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "NorthWest", + Parent = { 14 }, + Size = UDim2.new(0, 5, 0, 5), + Text = "", + TextColor3 = Color3.new(0, 0, 0), + TextSize = 14, + }, + }, + { + 22, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.27450981736183, 0.27450981736183, 0.27450981736183), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "SouthWest", + Parent = { 14 }, + Position = UDim2.new(0, 0, 1, -5), + Size = UDim2.new(0, 5, 0, 5), + Text = "", + TextColor3 = Color3.new(0, 0, 0), + TextSize = 14, + }, + }, }) local guiMain = gui.Main @@ -1265,7 +1760,7 @@ local function main() guiTopBar.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 and self.Draggable then - local releaseEvent,mouseEvent + local releaseEvent, mouseEvent local maxX = sidesGui.AbsoluteSize.X local initX = guiMain.AbsolutePosition.X @@ -1273,7 +1768,7 @@ local function main() local offX = mouse.X - initX local offY = mouse.Y - initY - local alignInsertPos,alignInsertSide + local alignInsertPos, alignInsertSide local guiDragging = true @@ -1284,43 +1779,52 @@ local function main() guiDragging = false alignIndicator.Parent = nil if alignInsertSide then - local targetSide = (alignInsertSide == "left" and leftSide) or (alignInsertSide == "right" and rightSide) - self:AlignTo(targetSide,alignInsertPos) + local targetSide = (alignInsertSide == "left" and leftSide) + or (alignInsertSide == "right" and rightSide) + self:AlignTo(targetSide, alignInsertPos) end end end) mouseEvent = game:GetService("UserInputService").InputChanged:Connect(function(input) - if input.UserInputType == Enum.UserInputType.MouseMovement and self.Draggable and not self.Closed then + if + input.UserInputType == Enum.UserInputType.MouseMovement + and self.Draggable + and not self.Closed + then if self.Aligned then - if leftSide.Resizing or rightSide.Resizing then return end - local posX,posY = input.Position.X-offX,input.Position.Y-offY - local delta = math.sqrt((posX-initX)^2 + (posY-initY)^2) + if leftSide.Resizing or rightSide.Resizing then + return + end + local posX, posY = input.Position.X - offX, input.Position.Y - offY + local delta = math.sqrt((posX - initX) ^ 2 + (posY - initY) ^ 2) if delta >= 5 then self:SetAligned(false) end else - local inputX,inputY = input.Position.X,input.Position.Y - local posX,posY = inputX-offX,inputY-offY - if posY < 0 then posY = 0 end - guiMain.Position = UDim2.new(0,posX,0,posY) + local inputX, inputY = input.Position.X, input.Position.Y + local posX, posY = inputX - offX, inputY - offY + if posY < 0 then + posY = 0 + end + guiMain.Position = UDim2.new(0, posX, 0, posY) if self.Resizable and self.Alignable then if inputX < 25 then - if sideHasRoom(leftSide,self.MinY or 100) then - local insertPos,range = getSideInsertPos(leftSide,inputY) - alignIndicator.Indicator.Position = UDim2.new(0,-15,0,range[1]) - alignIndicator.Indicator.Size = UDim2.new(0,40,0,range[2]-range[1]) + if sideHasRoom(leftSide, self.MinY or 100) then + local insertPos, range = getSideInsertPos(leftSide, inputY) + alignIndicator.Indicator.Position = UDim2.new(0, -15, 0, range[1]) + alignIndicator.Indicator.Size = UDim2.new(0, 40, 0, range[2] - range[1]) Lib.ShowGui(alignIndicator) alignInsertPos = insertPos alignInsertSide = "left" return end elseif inputX >= maxX - 25 then - if sideHasRoom(rightSide,self.MinY or 100) then - local insertPos,range = getSideInsertPos(rightSide,inputY) - alignIndicator.Indicator.Position = UDim2.new(0,maxX-25,0,range[1]) - alignIndicator.Indicator.Size = UDim2.new(0,40,0,range[2]-range[1]) + if sideHasRoom(rightSide, self.MinY or 100) then + local insertPos, range = getSideInsertPos(rightSide, inputY) + alignIndicator.Indicator.Position = UDim2.new(0, maxX - 25, 0, range[1]) + alignIndicator.Indicator.Size = UDim2.new(0, 40, 0, range[2] - range[1]) Lib.ShowGui(alignIndicator) alignInsertPos = insertPos alignInsertSide = "right" @@ -1338,12 +1842,16 @@ local function main() end) guiTopBar.Close.MouseButton1Click:Connect(function() - if self.Closed then return end + if self.Closed then + return + end self:Close() end) guiTopBar.Minimize.MouseButton1Click:Connect(function() - if self.Closed then return end + if self.Closed then + return + end if self.Aligned then self:SetAligned(false) else @@ -1352,9 +1860,11 @@ local function main() end) guiTopBar.Minimize.MouseButton2Click:Connect(function() - if self.Closed then return end + if self.Closed then + return + end if not self.Aligned then - self:SetMinimized(nil,2) + self:SetMinimized(nil, 2) guiTopBar.Minimize.BackgroundTransparency = 1 end end) @@ -1371,21 +1881,23 @@ local function main() self.PosY = absPos.Y end) - resizeHook(self,guiResizeControls.North,"N") - resizeHook(self,guiResizeControls.NorthEast,"NE") - resizeHook(self,guiResizeControls.East,"E") - resizeHook(self,guiResizeControls.SouthEast,"SE") - resizeHook(self,guiResizeControls.South,"S") - resizeHook(self,guiResizeControls.SouthWest,"SW") - resizeHook(self,guiResizeControls.West,"W") - resizeHook(self,guiResizeControls.NorthWest,"NW") + resizeHook(self, guiResizeControls.North, "N") + resizeHook(self, guiResizeControls.NorthEast, "NE") + resizeHook(self, guiResizeControls.East, "E") + resizeHook(self, guiResizeControls.SouthEast, "SE") + resizeHook(self, guiResizeControls.South, "S") + resizeHook(self, guiResizeControls.SouthWest, "SW") + resizeHook(self, guiResizeControls.West, "W") + resizeHook(self, guiResizeControls.NorthWest, "NW") - guiMain.Size = UDim2.new(0,self.SizeX,0,self.SizeY) + guiMain.Size = UDim2.new(0, self.SizeX, 0, self.SizeY) - gui.DescendantAdded:Connect(function(obj) focusInput(self,obj) end) + gui.DescendantAdded:Connect(function(obj) + focusInput(self, obj) + end) local descs = gui:GetDescendants() - for i = 1,#descs do - focusInput(self,descs[i]) + for i = 1, #descs do + focusInput(self, descs[i]) end self.MinimizeAnim = Lib.ButtonAnim(guiTopBar.Minimize) @@ -1396,10 +1908,10 @@ local function main() local function updateSideFrames(noTween) stopTweens() - leftSide.Frame.Size = UDim2.new(0,leftSide.Width,1,0) - rightSide.Frame.Size = UDim2.new(0,rightSide.Width,1,0) - leftSide.Frame.Resizer.Position = UDim2.new(0,leftSide.Width,0,0) - rightSide.Frame.Resizer.Position = UDim2.new(0,-5,0,0) + leftSide.Frame.Size = UDim2.new(0, leftSide.Width, 1, 0) + rightSide.Frame.Size = UDim2.new(0, rightSide.Width, 1, 0) + leftSide.Frame.Resizer.Position = UDim2.new(0, leftSide.Width, 0, 0) + rightSide.Frame.Resizer.Position = UDim2.new(0, -5, 0, 0) --leftSide.Frame.Visible = (#leftSide.Windows > 0) --rightSide.Frame.Visible = (#rightSide.Windows > 0) @@ -1413,8 +1925,8 @@ local function main() rightSide.Frame:TweenPosition(rightTweenPos,Enum.EasingDirection.Out,Enum.EasingStyle.Quad,0.3,true)]] local leftHidden = #leftSide.Windows == 0 or leftSide.Hidden local rightHidden = #rightSide.Windows == 0 or rightSide.Hidden - local leftPos = (leftHidden and UDim2.new(0,-leftSide.Width-10,0,0) or UDim2.new(0,0,0,0)) - local rightPos = (rightHidden and UDim2.new(1,10,0,0) or UDim2.new(1,-rightSide.Width,0,0)) + local leftPos = (leftHidden and UDim2.new(0, -leftSide.Width - 10, 0, 0) or UDim2.new(0, 0, 0, 0)) + local rightPos = (rightHidden and UDim2.new(1, 10, 0, 0) or UDim2.new(1, -rightSide.Width, 0, 0)) sidesGui.LeftToggle.Text = leftHidden and ">" or "<" sidesGui.RightToggle.Text = rightHidden and "<" or ">" @@ -1422,18 +1934,26 @@ local function main() if not noTween then local function insertTween(...) local tween = service.TweenService:Create(...) - tweens[#tweens+1] = tween + tweens[#tweens + 1] = tween tween:Play() end - insertTween(leftSide.Frame,sideTweenInfo,{Position = leftPos}) - insertTween(rightSide.Frame,sideTweenInfo,{Position = rightPos}) - insertTween(sidesGui.LeftToggle,sideTweenInfo,{Position = UDim2.new(0,#leftSide.Windows == 0 and -16 or 0,0,-36)}) - insertTween(sidesGui.RightToggle,sideTweenInfo,{Position = UDim2.new(1,#rightSide.Windows == 0 and 0 or -16,0,-36)}) + insertTween(leftSide.Frame, sideTweenInfo, { Position = leftPos }) + insertTween(rightSide.Frame, sideTweenInfo, { Position = rightPos }) + insertTween( + sidesGui.LeftToggle, + sideTweenInfo, + { Position = UDim2.new(0, #leftSide.Windows == 0 and -16 or 0, 0, -36) } + ) + insertTween( + sidesGui.RightToggle, + sideTweenInfo, + { Position = UDim2.new(1, #rightSide.Windows == 0 and 0 or -16, 0, -36) } + ) else leftSide.Frame.Position = leftPos rightSide.Frame.Position = rightPos - sidesGui.LeftToggle.Position = UDim2.new(0,#leftSide.Windows == 0 and -16 or 0,0,-36) - sidesGui.RightToggle.Position = UDim2.new(1,#rightSide.Windows == 0 and 0 or -16,0,-36) + sidesGui.LeftToggle.Position = UDim2.new(0, #leftSide.Windows == 0 and -16 or 0, 0, -36) + sidesGui.RightToggle.Position = UDim2.new(1, #rightSide.Windows == 0 and 0 or -16, 0, -36) end end @@ -1441,24 +1961,24 @@ local function main() local leftHidden = #leftSide.Windows == 0 or leftSide.Hidden local rightHidden = #rightSide.Windows == 0 or rightSide.Hidden if side == leftSide then - return (leftHidden and UDim2.new(0,-leftSide.Width-10,0,0) or UDim2.new(0,0,0,0)) + return (leftHidden and UDim2.new(0, -leftSide.Width - 10, 0, 0) or UDim2.new(0, 0, 0, 0)) else - return (rightHidden and UDim2.new(1,10,0,0) or UDim2.new(1,-rightSide.Width,0,0)) + return (rightHidden and UDim2.new(1, 10, 0, 0) or UDim2.new(1, -rightSide.Width, 0, 0)) end end local function sideResized(side) local currentPos = 0 local sideFramePos = getSideFramePos(side) - for i,v in pairs(side.Windows) do + for i, v in pairs(side.Windows) do v.SizeX = side.Width - v.GuiElems.Main.Size = UDim2.new(0,side.Width,0,v.SizeY) - v.GuiElems.Main.Position = UDim2.new(sideFramePos.X.Scale,sideFramePos.X.Offset,0,currentPos) - currentPos = currentPos + v.SizeY+4 + v.GuiElems.Main.Size = UDim2.new(0, side.Width, 0, v.SizeY) + v.GuiElems.Main.Position = UDim2.new(sideFramePos.X.Scale, sideFramePos.X.Offset, 0, currentPos) + currentPos = currentPos + v.SizeY + 4 end end - local function sideResizerHook(resizer,dir,side,pos) + local function sideResizerHook(resizer, dir, side, pos) local mouse = Main.Mouse local windows = side.Windows @@ -1467,7 +1987,7 @@ local function main() if input.UserInputType == Enum.UserInputType.MouseMovement then resizer.BackgroundColor3 = theme.MainColor2 elseif input.UserInputType == Enum.UserInputType.MouseButton1 then - local releaseEvent,mouseEvent + local releaseEvent, mouseEvent local offX = mouse.X - resizer.AbsolutePosition.X local offY = mouse.Y - resizer.AbsolutePosition.Y @@ -1497,33 +2017,34 @@ local function main() if delta > 0 then local neededSize = delta - for i = pos+1,#windows do + for i = pos + 1, #windows do local window = windows[i] - local newSize = math.max(window.SizeY-neededSize,(window.MinY or 100)) + local newSize = math.max(window.SizeY - neededSize, (window.MinY or 100)) neededSize = neededSize - (window.SizeY - newSize) window.SizeY = newSize end - windows[pos].SizeY = windows[pos].SizeY + math.max(0,delta-neededSize) + windows[pos].SizeY = windows[pos].SizeY + math.max(0, delta - neededSize) else local neededSize = -delta - for i = pos,1,-1 do + for i = pos, 1, -1 do local window = windows[i] - local newSize = math.max(window.SizeY-neededSize,(window.MinY or 100)) + local newSize = math.max(window.SizeY - neededSize, (window.MinY or 100)) neededSize = neededSize - (window.SizeY - newSize) window.SizeY = newSize end - windows[pos+1].SizeY = windows[pos+1].SizeY + math.max(0,-delta-neededSize) + windows[pos + 1].SizeY = windows[pos + 1].SizeY + + math.max(0, -delta - neededSize) end updateSideFrames() sideResized(side) elseif dir == "H" then - local maxWidth = math.max(300,sidesGui.AbsoluteSize.X-static.FreeWidth) + local maxWidth = math.max(300, sidesGui.AbsoluteSize.X - static.FreeWidth) local otherSide = (side == leftSide and rightSide or leftSide) local delta = input.Position.X - resizer.AbsolutePosition.X - offX delta = (side == leftSide and delta or -delta) - local proposedSize = math.max(static.MinWidth,side.Width + delta) + local proposedSize = math.max(static.MinWidth, side.Width + delta) if proposedSize + otherSide.Width <= maxWidth then side.Width = proposedSize else @@ -1554,42 +2075,63 @@ local function main() end) end - local function renderSide(side,noTween) -- TODO: Use existing resizers + local function renderSide(side, noTween) -- TODO: Use existing resizers local currentPos = 0 local sideFramePos = getSideFramePos(side) local template = side.WindowResizer:Clone() - for i,v in pairs(side.ResizeCons) do v:Disconnect() end - for i,v in pairs(side.Frame:GetChildren()) do if v.Name == "WindowResizer" then v:Destroy() end end + for i, v in pairs(side.ResizeCons) do + v:Disconnect() + end + for i, v in pairs(side.Frame:GetChildren()) do + if v.Name == "WindowResizer" then + v:Destroy() + end + end side.ResizeCons = {} side.Resizing = nil - for i,v in pairs(side.Windows) do + for i, v in pairs(side.Windows) do v.SidePos = i local isEnd = i == #side.Windows - local size = UDim2.new(0,side.Width,0,v.SizeY) - local pos = UDim2.new(sideFramePos.X.Scale,sideFramePos.X.Offset,0,currentPos) + local size = UDim2.new(0, side.Width, 0, v.SizeY) + local pos = UDim2.new(sideFramePos.X.Scale, sideFramePos.X.Offset, 0, currentPos) Lib.ShowGui(v.Gui) --v.GuiElems.Main:TweenSizeAndPosition(size,pos,Enum.EasingDirection.Out,Enum.EasingStyle.Quad,0.3,true) if noTween then v.GuiElems.Main.Size = size v.GuiElems.Main.Position = pos else - local tween = service.TweenService:Create(v.GuiElems.Main,sideTweenInfo,{Size = size, Position = pos}) - tweens[#tweens+1] = tween + local tween = + service.TweenService:Create(v.GuiElems.Main, sideTweenInfo, { Size = size, Position = pos }) + tweens[#tweens + 1] = tween tween:Play() end - currentPos = currentPos + v.SizeY+4 + currentPos = currentPos + v.SizeY + 4 if not isEnd then local newTemplate = template:Clone() - newTemplate.Position = UDim2.new(1,-side.Width,0,currentPos-4) - side.ResizeCons[#side.ResizeCons+1] = v.Gui.Main:GetPropertyChangedSignal("Size"):Connect(function() - newTemplate.Position = UDim2.new(1,-side.Width,0, v.GuiElems.Main.Position.Y.Offset + v.GuiElems.Main.Size.Y.Offset) - end) - side.ResizeCons[#side.ResizeCons+1] = v.Gui.Main:GetPropertyChangedSignal("Position"):Connect(function() - newTemplate.Position = UDim2.new(1,-side.Width,0, v.GuiElems.Main.Position.Y.Offset + v.GuiElems.Main.Size.Y.Offset) - end) - sideResizerHook(newTemplate,"V",side,i) + newTemplate.Position = UDim2.new(1, -side.Width, 0, currentPos - 4) + side.ResizeCons[#side.ResizeCons + 1] = v.Gui.Main + :GetPropertyChangedSignal("Size") + :Connect(function() + newTemplate.Position = UDim2.new( + 1, + -side.Width, + 0, + v.GuiElems.Main.Position.Y.Offset + v.GuiElems.Main.Size.Y.Offset + ) + end) + side.ResizeCons[#side.ResizeCons + 1] = v.Gui.Main + :GetPropertyChangedSignal("Position") + :Connect(function() + newTemplate.Position = UDim2.new( + 1, + -side.Width, + 0, + v.GuiElems.Main.Position.Y.Offset + v.GuiElems.Main.Size.Y.Offset + ) + end) + sideResizerHook(newTemplate, "V", side, i) newTemplate.Parent = side.Frame end end @@ -1598,43 +2140,45 @@ local function main() --side.Frame.Back.Size = UDim2.new(0,side.Width,1,0) end - local function updateSide(side,noTween) + local function updateSide(side, noTween) local oldHeight = 0 local currentPos = 0 local neededSize = 0 local windows = side.Windows - local height = sidesGui.AbsoluteSize.Y - (math.max(0,#windows - 1) * 4) + local height = sidesGui.AbsoluteSize.Y - (math.max(0, #windows - 1) * 4) - for i,v in pairs(windows) do oldHeight = oldHeight + v.SizeY end - for i,v in pairs(windows) do + for i, v in pairs(windows) do + oldHeight = oldHeight + v.SizeY + end + for i, v in pairs(windows) do if i == #windows then - v.SizeY = height-currentPos - neededSize = math.max(0,(v.MinY or 100)-v.SizeY) + v.SizeY = height - currentPos + neededSize = math.max(0, (v.MinY or 100) - v.SizeY) else - v.SizeY = math.max(math.floor(v.SizeY/oldHeight*height),v.MinY or 100) + v.SizeY = math.max(math.floor(v.SizeY / oldHeight * height), v.MinY or 100) end currentPos = currentPos + v.SizeY end if neededSize > 0 then - for i = #windows-1,1,-1 do + for i = #windows - 1, 1, -1 do local window = windows[i] - local newSize = math.max(window.SizeY-neededSize,(window.MinY or 100)) + local newSize = math.max(window.SizeY - neededSize, (window.MinY or 100)) neededSize = neededSize - (window.SizeY - newSize) window.SizeY = newSize end local lastWindow = windows[#windows] - lastWindow.SizeY = (lastWindow.MinY or 100)-neededSize + lastWindow.SizeY = (lastWindow.MinY or 100) - neededSize end - renderSide(side,noTween) + renderSide(side, noTween) end updateWindows = function(noTween) updateSideFrames(noTween) - updateSide(leftSide,noTween) - updateSide(rightSide,noTween) + updateSide(leftSide, noTween) + updateSide(rightSide, noTween) local count = 0 - for i = #visibleWindows,1,-1 do + for i = #visibleWindows, 1, -1 do visibleWindows[i].Gui.DisplayOrder = displayOrderStart + count Lib.ShowGui(visibleWindows[i].Gui) count = count + 1 @@ -1646,32 +2190,65 @@ local function main() rightSide.Frame:TweenPosition(rightTweenPos,Enum.EasingDirection.Out,Enum.EasingStyle.Quad,0.3,true)]] end - funcs.SetMinimized = function(self,set,mode) + funcs.SetMinimized = function(self, set, mode) local oldVal = self.Minimized local newVal - if set == nil then newVal = not self.Minimized else newVal = set end + if set == nil then + newVal = not self.Minimized + else + newVal = set + end self.Minimized = newVal - if not mode then mode = 1 end + if not mode then + mode = 1 + end local resizeControls = self.GuiElems.ResizeControls - local minimizeControls = {"North","NorthEast","NorthWest","South","SouthEast","SouthWest"} - for i = 1,#minimizeControls do + local minimizeControls = { "North", "NorthEast", "NorthWest", "South", "SouthEast", "SouthWest" } + for i = 1, #minimizeControls do local control = resizeControls:FindFirstChild(minimizeControls[i]) - if control then control.Visible = not newVal end + if control then + control.Visible = not newVal + end end if mode == 1 or mode == 2 then self:StopTweens() if mode == 1 then - self.GuiElems.Main:TweenSize(UDim2.new(0,self.SizeX,0,newVal and 20 or self.SizeY),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true) + self.GuiElems.Main:TweenSize( + UDim2.new(0, self.SizeX, 0, newVal and 20 or self.SizeY), + Enum.EasingDirection.Out, + Enum.EasingStyle.Quart, + 0.25, + true + ) else local maxY = sidesGui.AbsoluteSize.Y - local newPos = UDim2.new(0,self.PosX,0,newVal and math.min(maxY-20,self.PosY + self.SizeY - 20) or math.max(0,self.PosY - self.SizeY + 20)) - - self.GuiElems.Main:TweenPosition(newPos,Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true) - self.GuiElems.Main:TweenSize(UDim2.new(0,self.SizeX,0,newVal and 20 or self.SizeY),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true) + local newPos = UDim2.new( + 0, + self.PosX, + 0, + newVal and math.min(maxY - 20, self.PosY + self.SizeY - 20) + or math.max(0, self.PosY - self.SizeY + 20) + ) + + self.GuiElems.Main:TweenPosition( + newPos, + Enum.EasingDirection.Out, + Enum.EasingStyle.Quart, + 0.25, + true + ) + self.GuiElems.Main:TweenSize( + UDim2.new(0, self.SizeX, 0, newVal and 20 or self.SizeY), + Enum.EasingDirection.Out, + Enum.EasingStyle.Quart, + 0.25, + true + ) end - self.GuiElems.Minimize.ImageLabel.Image = newVal and "rbxassetid://5060023708" or "rbxassetid://5034768003" + self.GuiElems.Minimize.ImageLabel.Image = newVal and "rbxassetid://5060023708" + or "rbxassetid://5034768003" end if oldVal ~= newVal then @@ -1683,67 +2260,90 @@ local function main() end end - funcs.Resize = function(self,sizeX,sizeY) + funcs.Resize = function(self, sizeX, sizeY) self.SizeX = sizeX or self.SizeX self.SizeY = sizeY or self.SizeY - self.GuiElems.Main.Size = UDim2.new(0,self.SizeX,0,self.SizeY) + self.GuiElems.Main.Size = UDim2.new(0, self.SizeX, 0, self.SizeY) end funcs.SetSize = funcs.Resize - funcs.SetTitle = function(self,title) + funcs.SetTitle = function(self, title) self.GuiElems.Title.Text = title end - funcs.SetResizable = function(self,val) + funcs.SetResizable = function(self, val) self.Resizable = val self.GuiElems.ResizeControls.Visible = self.Resizable and self.ResizableInternal end - funcs.SetResizableInternal = function(self,val) + funcs.SetResizableInternal = function(self, val) self.ResizableInternal = val self.GuiElems.ResizeControls.Visible = self.Resizable and self.ResizableInternal end - funcs.SetAligned = function(self,val) + funcs.SetAligned = function(self, val) self.Aligned = val self:SetResizableInternal(not val) self.GuiElems.Main.Active = not val self.GuiElems.Main.Outlines.Visible = not val if not val then - for i,v in pairs(leftSide.Windows) do if v == self then table.remove(leftSide.Windows,i) break end end - for i,v in pairs(rightSide.Windows) do if v == self then table.remove(rightSide.Windows,i) break end end - if not table.find(visibleWindows,self) then table.insert(visibleWindows,1,self) end + for i, v in pairs(leftSide.Windows) do + if v == self then + table.remove(leftSide.Windows, i) + break + end + end + for i, v in pairs(rightSide.Windows) do + if v == self then + table.remove(rightSide.Windows, i) + break + end + end + if not table.find(visibleWindows, self) then + table.insert(visibleWindows, 1, self) + end self.GuiElems.Minimize.ImageLabel.Image = "rbxassetid://5034768003" self.Side = nil updateWindows() else - self:SetMinimized(false,3) - for i,v in pairs(visibleWindows) do if v == self then table.remove(visibleWindows,i) break end end + self:SetMinimized(false, 3) + for i, v in pairs(visibleWindows) do + if v == self then + table.remove(visibleWindows, i) + break + end + end self.GuiElems.Minimize.ImageLabel.Image = "rbxassetid://5448127505" end end - funcs.Add = function(self,obj,name) + funcs.Add = function(self, obj, name) if type(obj) == "table" and obj.Gui and obj.Gui:IsA("GuiObject") then obj.Gui.Parent = self.ContentPane else obj.Parent = self.ContentPane end - if name then self.Elements[name] = obj end + if name then + self.Elements[name] = obj + end end - funcs.GetElement = function(self,obj,name) + funcs.GetElement = function(self, obj, name) return self.Elements[name] end - funcs.AlignTo = function(self,side,pos,size,silent) - if table.find(side.Windows,self) or self.Closed then return end + funcs.AlignTo = function(self, side, pos, size, silent) + if table.find(side.Windows, self) or self.Closed then + return + end size = size or self.SizeY if size > 0 and size <= 1 then local totalSideHeight = 0 - for i,v in pairs(side.Windows) do totalSideHeight = totalSideHeight + v.SizeY end + for i, v in pairs(side.Windows) do + totalSideHeight = totalSideHeight + v.SizeY + end self.SizeY = (totalSideHeight > 0 and totalSideHeight * size * 2) or size else self.SizeY = (size > 0 and size or 100) @@ -1753,8 +2353,10 @@ local function main() self.Side = side self.SizeX = side.Width self.Gui.DisplayOrder = sideDisplayOrder + 1 - for i,v in pairs(side.Windows) do v.Gui.DisplayOrder = sideDisplayOrder end - pos = math.min(#side.Windows+1, pos or 1) + for i, v in pairs(side.Windows) do + v.Gui.DisplayOrder = sideDisplayOrder + end + pos = math.min(#side.Windows + 1, pos or 1) self.SidePos = pos table.insert(side.Windows, pos, self) @@ -1768,9 +2370,9 @@ local function main() self.Closed = true self:SetResizableInternal(false) - Lib.FindAndRemove(leftSide.Windows,self) - Lib.FindAndRemove(rightSide.Windows,self) - Lib.FindAndRemove(visibleWindows,self) + Lib.FindAndRemove(leftSide.Windows, self) + Lib.FindAndRemove(rightSide.Windows, self) + Lib.FindAndRemove(visibleWindows, self) self.MinimizeAnim.Disable() self.CloseAnim.Disable() @@ -1780,22 +2382,26 @@ local function main() if not self.Aligned then self:StopTweens() - local ti = TweenInfo.new(0.2,Enum.EasingStyle.Quad,Enum.EasingDirection.Out) + local ti = TweenInfo.new(0.2, Enum.EasingStyle.Quad, Enum.EasingDirection.Out) local closeTime = tick() self.LastClose = closeTime - self:DoTween(self.GuiElems.Main,ti,{Size = UDim2.new(0,self.SizeX,0,20)}) - self:DoTween(self.GuiElems.Title,ti,{TextTransparency = 1}) - self:DoTween(self.GuiElems.Minimize.ImageLabel,ti,{ImageTransparency = 1}) - self:DoTween(self.GuiElems.Close.ImageLabel,ti,{ImageTransparency = 1}) + self:DoTween(self.GuiElems.Main, ti, { Size = UDim2.new(0, self.SizeX, 0, 20) }) + self:DoTween(self.GuiElems.Title, ti, { TextTransparency = 1 }) + self:DoTween(self.GuiElems.Minimize.ImageLabel, ti, { ImageTransparency = 1 }) + self:DoTween(self.GuiElems.Close.ImageLabel, ti, { ImageTransparency = 1 }) Lib.FastWait(0.2) - if closeTime ~= self.LastClose then return end + if closeTime ~= self.LastClose then + return + end - self:DoTween(self.GuiElems.TopBar,ti,{BackgroundTransparency = 1}) - self:DoTween(self.GuiElems.Outlines,ti,{ImageTransparency = 1}) + self:DoTween(self.GuiElems.TopBar, ti, { BackgroundTransparency = 1 }) + self:DoTween(self.GuiElems.Outlines, ti, { ImageTransparency = 1 }) Lib.FastWait(0.2) - if closeTime ~= self.LastClose then return end + if closeTime ~= self.LastClose then + return + end end self.Aligned = false @@ -1818,37 +2424,37 @@ local function main() end funcs.MoveInBoundary = function(self) - local posX,posY = self.PosX,self.PosY - local maxX,maxY = sidesGui.AbsoluteSize.X,sidesGui.AbsoluteSize.Y - posX = math.min(posX,maxX-self.SizeX) - posY = math.min(posY,maxY-20) - self.GuiElems.Main.Position = UDim2.new(0,posX,0,posY) + local posX, posY = self.PosX, self.PosY + local maxX, maxY = sidesGui.AbsoluteSize.X, sidesGui.AbsoluteSize.Y + posX = math.min(posX, maxX - self.SizeX) + posY = math.min(posY, maxY - 20) + self.GuiElems.Main.Position = UDim2.new(0, posX, 0, posY) end - funcs.DoTween = function(self,...) + funcs.DoTween = function(self, ...) local tween = service.TweenService:Create(...) - self.Tweens[#self.Tweens+1] = tween + self.Tweens[#self.Tweens + 1] = tween tween:Play() end funcs.StopTweens = function(self) - for i,v in pairs(self.Tweens) do + for i, v in pairs(self.Tweens) do v:Cancel() end self.Tweens = {} end - funcs.Show = function(self,data) - return static.ShowWindow(self,data) + funcs.Show = function(self, data) + return static.ShowWindow(self, data) end - funcs.ShowAndFocus = function(self,data) - static.ShowWindow(self,data) + funcs.ShowAndFocus = function(self, data) + static.ShowWindow(self, data) service.RunService.RenderStepped:wait() self:Focus() end - static.ShowWindow = function(window,data) + static.ShowWindow = function(window, data) data = data or {} local align = data.Align local pos = data.Pos @@ -1859,7 +2465,7 @@ local function main() if not window.Aligned then window:SetMinimized(false) elseif window.Side and not data.Silent then - static.SetSideVisible(window.Side,true) + static.SetSideVisible(window.Side, true) end return end @@ -1874,28 +2480,30 @@ local function main() window.GuiElems.Minimize.ImageLabel.Image = "rbxassetid://5034768003" window.GuiElems.Main.Active = true window.GuiElems.Main.Outlines.Visible = true - window:SetMinimized(false,3) + window:SetMinimized(false, 3) window:SetResizableInternal(true) window.MinimizeAnim.Enable() window.CloseAnim.Enable() if align then - window:AlignTo(targetSide,pos,size,data.Silent) + window:AlignTo(targetSide, pos, size, data.Silent) else if align == nil and window.ClosedSide then -- Regular open - window:AlignTo(window.ClosedSide,window.SidePos,size,true) - static.SetSideVisible(window.ClosedSide,true) + window:AlignTo(window.ClosedSide, window.SidePos, size, true) + static.SetSideVisible(window.ClosedSide, true) else - if table.find(visibleWindows,window) then return end + if table.find(visibleWindows, window) then + return + end -- TODO: make better - window.GuiElems.Main.Size = UDim2.new(0,window.SizeX,0,20) - local ti = TweenInfo.new(0.2,Enum.EasingStyle.Quad,Enum.EasingDirection.Out) + window.GuiElems.Main.Size = UDim2.new(0, window.SizeX, 0, 20) + local ti = TweenInfo.new(0.2, Enum.EasingStyle.Quad, Enum.EasingDirection.Out) window:StopTweens() - window:DoTween(window.GuiElems.Main,ti,{Size = UDim2.new(0,window.SizeX,0,window.SizeY)}) + window:DoTween(window.GuiElems.Main, ti, { Size = UDim2.new(0, window.SizeX, 0, window.SizeY) }) window.SizeY = size or window.SizeY - table.insert(visibleWindows,1,window) + table.insert(visibleWindows, 1, window) updateWindows() end end @@ -1907,7 +2515,7 @@ local function main() static.ToggleSide = function(name) local side = (name == "left" and leftSide or rightSide) side.Hidden = not side.Hidden - for i,v in pairs(side.Windows) do + for i, v in pairs(side.Windows) do if side.Hidden then v.OnDeactivate:Fire() else @@ -1917,10 +2525,10 @@ local function main() updateWindows() end - static.SetSideVisible = function(s,vis) + static.SetSideVisible = function(s, vis) local side = (type(s) == "table" and s) or (s == "left" and leftSide or rightSide) side.Hidden = not vis - for i,v in pairs(side.Windows) do + for i, v in pairs(side.Windows) do if side.Hidden then v.OnDeactivate:Fire() else @@ -1938,65 +2546,197 @@ local function main() sidesGui.Name = "Dex_SidesGui" sidesGui.ResetOnSpawn = false local leftFrame = create({ - {1,"Frame",{Active=true,Name="LeftSide",BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BackgroundTransparency=0.9,BorderSizePixel=0,}}, - {2,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2549019753933,0.2549019753933,0.2549019753933),BorderSizePixel=0,Font=3,Name="Resizer",Parent={1},Size=UDim2.new(0,5,1,0),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, - {3,"Frame",{BackgroundColor3=Color3.new(0.14117647707462,0.14117647707462,0.14117647707462),BorderSizePixel=0,Name="Line",Parent={2},Position=UDim2.new(0,0,0,0),Size=UDim2.new(0,1,1,0),}}, - {4,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2549019753933,0.2549019753933,0.2549019753933),BorderSizePixel=0,Font=3,Name="WindowResizer",Parent={1},Position=UDim2.new(1,-300,0,0),Size=UDim2.new(1,0,0,4),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, - {5,"Frame",{BackgroundColor3=Color3.new(0.14117647707462,0.14117647707462,0.14117647707462),BorderSizePixel=0,Name="Line",Parent={4},Size=UDim2.new(1,0,0,1),}}, + { + 1, + "Frame", + { + Active = true, + Name = "LeftSide", + BackgroundColor3 = Color3.new(0.17647059261799, 0.17647059261799, 0.17647059261799), + BackgroundTransparency = 0.9, + BorderSizePixel = 0, + }, + }, + { + 2, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.2549019753933, 0.2549019753933, 0.2549019753933), + BorderSizePixel = 0, + Font = 3, + Name = "Resizer", + Parent = { 1 }, + Size = UDim2.new(0, 5, 1, 0), + Text = "", + TextColor3 = Color3.new(0, 0, 0), + TextSize = 14, + }, + }, + { + 3, + "Frame", + { + BackgroundColor3 = Color3.new(0.14117647707462, 0.14117647707462, 0.14117647707462), + BorderSizePixel = 0, + Name = "Line", + Parent = { 2 }, + Position = UDim2.new(0, 0, 0, 0), + Size = UDim2.new(0, 1, 1, 0), + }, + }, + { + 4, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.2549019753933, 0.2549019753933, 0.2549019753933), + BorderSizePixel = 0, + Font = 3, + Name = "WindowResizer", + Parent = { 1 }, + Position = UDim2.new(1, -300, 0, 0), + Size = UDim2.new(1, 0, 0, 4), + Text = "", + TextColor3 = Color3.new(0, 0, 0), + TextSize = 14, + }, + }, + { + 5, + "Frame", + { + BackgroundColor3 = Color3.new(0.14117647707462, 0.14117647707462, 0.14117647707462), + BorderSizePixel = 0, + Name = "Line", + Parent = { 4 }, + Size = UDim2.new(1, 0, 0, 1), + }, + }, }) leftSide.Frame = leftFrame - leftFrame.Position = UDim2.new(0,-leftSide.Width-10,0,0) + leftFrame.Position = UDim2.new(0, -leftSide.Width - 10, 0, 0) leftSide.WindowResizer = leftFrame.WindowResizer leftFrame.WindowResizer.Parent = nil leftFrame.Parent = sidesGui local rightFrame = create({ - {1,"Frame",{Active=true,Name="RightSide",BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BackgroundTransparency=0.9,BorderSizePixel=0,}}, - {2,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2549019753933,0.2549019753933,0.2549019753933),BorderSizePixel=0,Font=3,Name="Resizer",Parent={1},Size=UDim2.new(0,5,1,0),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, - {3,"Frame",{BackgroundColor3=Color3.new(0.14117647707462,0.14117647707462,0.14117647707462),BorderSizePixel=0,Name="Line",Parent={2},Position=UDim2.new(0,4,0,0),Size=UDim2.new(0,1,1,0),}}, - {4,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2549019753933,0.2549019753933,0.2549019753933),BorderSizePixel=0,Font=3,Name="WindowResizer",Parent={1},Position=UDim2.new(1,-300,0,0),Size=UDim2.new(1,0,0,4),Text="",TextColor3=Color3.new(0,0,0),TextSize=14,}}, - {5,"Frame",{BackgroundColor3=Color3.new(0.14117647707462,0.14117647707462,0.14117647707462),BorderSizePixel=0,Name="Line",Parent={4},Size=UDim2.new(1,0,0,1),}}, + { + 1, + "Frame", + { + Active = true, + Name = "RightSide", + BackgroundColor3 = Color3.new(0.17647059261799, 0.17647059261799, 0.17647059261799), + BackgroundTransparency = 0.9, + BorderSizePixel = 0, + }, + }, + { + 2, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.2549019753933, 0.2549019753933, 0.2549019753933), + BorderSizePixel = 0, + Font = 3, + Name = "Resizer", + Parent = { 1 }, + Size = UDim2.new(0, 5, 1, 0), + Text = "", + TextColor3 = Color3.new(0, 0, 0), + TextSize = 14, + }, + }, + { + 3, + "Frame", + { + BackgroundColor3 = Color3.new(0.14117647707462, 0.14117647707462, 0.14117647707462), + BorderSizePixel = 0, + Name = "Line", + Parent = { 2 }, + Position = UDim2.new(0, 4, 0, 0), + Size = UDim2.new(0, 1, 1, 0), + }, + }, + { + 4, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.2549019753933, 0.2549019753933, 0.2549019753933), + BorderSizePixel = 0, + Font = 3, + Name = "WindowResizer", + Parent = { 1 }, + Position = UDim2.new(1, -300, 0, 0), + Size = UDim2.new(1, 0, 0, 4), + Text = "", + TextColor3 = Color3.new(0, 0, 0), + TextSize = 14, + }, + }, + { + 5, + "Frame", + { + BackgroundColor3 = Color3.new(0.14117647707462, 0.14117647707462, 0.14117647707462), + BorderSizePixel = 0, + Name = "Line", + Parent = { 4 }, + Size = UDim2.new(1, 0, 0, 1), + }, + }, }) rightSide.Frame = rightFrame - rightFrame.Position = UDim2.new(1,10,0,0) + rightFrame.Position = UDim2.new(1, 10, 0, 0) rightSide.WindowResizer = rightFrame.WindowResizer rightFrame.WindowResizer.Parent = nil rightFrame.Parent = sidesGui - sideResizerHook(leftFrame.Resizer,"H",leftSide) - sideResizerHook(rightFrame.Resizer,"H",rightSide) + sideResizerHook(leftFrame.Resizer, "H", leftSide) + sideResizerHook(rightFrame.Resizer, "H", rightSide) alignIndicator = Instance.new("ScreenGui") alignIndicator.DisplayOrder = Main.DisplayOrders.Core alignIndicator.ResetOnSpawn = false - local indicator = Instance.new("Frame",alignIndicator) + local indicator = Instance.new("Frame") + indicator.Parent = alignIndicator indicator.BackgroundColor3 = Color3.fromRGB(0, 170, 255) indicator.BorderSizePixel = 0 indicator.BackgroundTransparency = 0.8 indicator.Name = "Indicator" - local corner = Instance.new("UICorner",indicator) - corner.CornerRadius = UDim.new(0,10) - - local leftToggle = create({{1,"TextButton",{ - AutoButtonColor = false, - BackgroundColor3 = Color3.new(0.20392157137394,0.20392157137394,0.20392157137394), - BackgroundTransparency = 0.8, - BorderColor3 = Color3.new(0.14117647707462,0.14117647707462,0.14117647707462), - BorderMode = 2, - BorderSizePixel = 0, - Font = 10, - Name = "LeftToggle", - Position = UDim2.new(0,0,0,-36), - Size = UDim2.new(0,16,0,36), - Text = "<", - TextColor3 = Color3.new(1,1,1), - TextSize = 14, - }}}) + local corner = Instance.new("UICorner") + corner.Parent = indicator + corner.CornerRadius = UDim.new(0, 10) + + local leftToggle = create({ + { + 1, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.20392157137394, 0.20392157137394, 0.20392157137394), + BackgroundTransparency = 0.8, + BorderColor3 = Color3.new(0.14117647707462, 0.14117647707462, 0.14117647707462), + BorderMode = 2, + BorderSizePixel = 0, + Font = 10, + Name = "LeftToggle", + Position = UDim2.new(0, 0, 0, -36), + Size = UDim2.new(0, 16, 0, 36), + Text = "<", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + }, + }, + }) local rightToggle = leftToggle:Clone() rightToggle.Name = "RightToggle" - rightToggle.Position = UDim2.new(1,-16,0,-36) - Lib.ButtonAnim(leftToggle,{Mode = 2,PressColor = Color3.fromRGB(32,32,32)}) - Lib.ButtonAnim(rightToggle,{Mode = 2,PressColor = Color3.fromRGB(32,32,32)}) + rightToggle.Position = UDim2.new(1, -16, 0, -36) + Lib.ButtonAnim(leftToggle, { Mode = 2, PressColor = Color3.fromRGB(32, 32, 32) }) + Lib.ButtonAnim(rightToggle, { Mode = 2, PressColor = Color3.fromRGB(32, 32, 32) }) leftToggle.MouseButton1Click:Connect(function() static.ToggleSide("left") @@ -2010,10 +2750,10 @@ local function main() rightToggle.Parent = sidesGui sidesGui:GetPropertyChangedSignal("AbsoluteSize"):Connect(function() - local maxWidth = math.max(300,sidesGui.AbsoluteSize.X-static.FreeWidth) - leftSide.Width = math.max(static.MinWidth,math.min(leftSide.Width,maxWidth-rightSide.Width)) - rightSide.Width = math.max(static.MinWidth,math.min(rightSide.Width,maxWidth-leftSide.Width)) - for i = 1,#visibleWindows do + local maxWidth = math.max(300, sidesGui.AbsoluteSize.X - static.FreeWidth) + leftSide.Width = math.max(static.MinWidth, math.min(leftSide.Width, maxWidth - rightSide.Width)) + rightSide.Width = math.max(static.MinWidth, math.min(rightSide.Width, maxWidth - leftSide.Width)) + for i = 1, #visibleWindows do visibleWindows[i]:MoveInBoundary() end updateWindows(true) @@ -2025,7 +2765,7 @@ local function main() updateSideFrames() end - local mt = {__index = funcs} + local mt = { __index = funcs } static.new = function() local obj = setmetatable({ Minimized = false, @@ -2049,8 +2789,8 @@ local function main() OnActivate = Lib.Signal.new(), OnDeactivate = Lib.Signal.new(), OnMinimize = Lib.Signal.new(), - OnRestore = Lib.Signal.new() - },mt) + OnRestore = Lib.Signal.new(), + }, mt) obj.Gui = createGui(obj) -- Add to stored windows @@ -2068,26 +2808,229 @@ local function main() local function createGui(self) local contextGui = create({ - {1,"ScreenGui",{DisplayOrder=1000000,Name="Dex_Context",ZIndexBehavior=1,ResetOnSpawn=false}}, - {2,"Frame",{Active=true,BackgroundColor3=Color3.new(0.14117647707462,0.14117647707462,0.14117647707462),BorderColor3=Color3.new(0.14117647707462,0.14117647707462,0.14117647707462),Name="Main",Parent={1},Position=UDim2.new(0.5,-100,0.5,-150),Size=UDim2.new(0,200,0,100),}}, - {3,"UICorner",{CornerRadius=UDim.new(0,4),Parent={2},}}, - {4,"Frame",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),Name="Container",Parent={2},Position=UDim2.new(0,1,0,1),Size=UDim2.new(1,-2,1,-2),}}, - {5,"UICorner",{CornerRadius=UDim.new(0,4),Parent={4},}}, - {6,"ScrollingFrame",{Active=true,BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),BackgroundTransparency=1,BorderSizePixel=0,CanvasSize=UDim2.new(0,0,0,0),Name="List",Parent={4},Position=UDim2.new(0,2,0,2),ScrollBarImageColor3=Color3.new(0,0,0),ScrollBarThickness=12,Size=UDim2.new(1,-4,1,-4),VerticalScrollBarInset=1,}}, - {7,"UIListLayout",{Parent={6},SortOrder=2,}}, - {8,"Frame",{BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),BorderSizePixel=0,Name="SearchFrame",Parent={4},Size=UDim2.new(1,0,0,24),Visible=false,}}, - {9,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.1176470592618,0.1176470592618,0.1176470592618),BorderSizePixel=0,Name="SearchContainer",Parent={8},Position=UDim2.new(0,3,0,3),Size=UDim2.new(1,-6,0,18),}}, - {10,"TextBox",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="SearchBox",Parent={9},PlaceholderColor3=Color3.new(0.39215689897537,0.39215689897537,0.39215689897537),PlaceholderText="Search",Position=UDim2.new(0,4,0,0),Size=UDim2.new(1,-8,0,18),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,TextXAlignment=0,}}, - {11,"UICorner",{CornerRadius=UDim.new(0,2),Parent={9},}}, - {12,"Frame",{BackgroundColor3=Color3.new(0.14117647707462,0.14117647707462,0.14117647707462),BorderSizePixel=0,Name="Line",Parent={8},Position=UDim2.new(0,0,1,0),Size=UDim2.new(1,0,0,1),}}, - {13,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),BorderColor3=Color3.new(0.33725491166115,0.49019610881805,0.73725491762161),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Entry",Parent={1},Size=UDim2.new(1,0,0,22),Text="",TextSize=14,Visible=false,}}, - {14,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="EntryName",Parent={13},Position=UDim2.new(0,24,0,0),Size=UDim2.new(1,-24,1,0),Text="Duplicate",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, - {15,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Shortcut",Parent={13},Position=UDim2.new(0,24,0,0),Size=UDim2.new(1,-30,1,0),Text="Ctrl+D",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, - {16,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,ImageRectOffset=Vector2.new(304,0),ImageRectSize=Vector2.new(16,16),Name="Icon",Parent={13},Position=UDim2.new(0,2,0,3),ScaleType=4,Size=UDim2.new(0,16,0,16),}}, - {17,"UICorner",{CornerRadius=UDim.new(0,4),Parent={13},}}, - {18,"Frame",{BackgroundColor3=Color3.new(0.21568629145622,0.21568629145622,0.21568629145622),BackgroundTransparency=1,BorderSizePixel=0,Name="Divider",Parent={1},Position=UDim2.new(0,0,0,20),Size=UDim2.new(1,0,0,7),Visible=false,}}, - {19,"Frame",{BackgroundColor3=Color3.new(0.20392157137394,0.20392157137394,0.20392157137394),BorderSizePixel=0,Name="Line",Parent={18},Position=UDim2.new(0,0,0.5,0),Size=UDim2.new(1,0,0,1),}}, - {20,"TextLabel",{AnchorPoint=Vector2.new(0,0.5),BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="DividerName",Parent={18},Position=UDim2.new(0,2,0.5,0),Size=UDim2.new(1,-4,1,0),Text="Objects",TextColor3=Color3.new(1,1,1),TextSize=14,TextTransparency=0.60000002384186,TextXAlignment=0,Visible=false,}}, + { + 1, + "ScreenGui", + { DisplayOrder = 1000000, Name = "Dex_Context", ZIndexBehavior = 1, ResetOnSpawn = false }, + }, + { + 2, + "Frame", + { + Active = true, + BackgroundColor3 = Color3.new(0.14117647707462, 0.14117647707462, 0.14117647707462), + BorderColor3 = Color3.new(0.14117647707462, 0.14117647707462, 0.14117647707462), + Name = "Main", + Parent = { 1 }, + Position = UDim2.new(0.5, -100, 0.5, -150), + Size = UDim2.new(0, 200, 0, 100), + }, + }, + { 3, "UICorner", { CornerRadius = UDim.new(0, 4), Parent = { 2 } } }, + { + 4, + "Frame", + { + BackgroundColor3 = Color3.new(0.17647059261799, 0.17647059261799, 0.17647059261799), + Name = "Container", + Parent = { 2 }, + Position = UDim2.new(0, 1, 0, 1), + Size = UDim2.new(1, -2, 1, -2), + }, + }, + { 5, "UICorner", { CornerRadius = UDim.new(0, 4), Parent = { 4 } } }, + { + 6, + "ScrollingFrame", + { + Active = true, + BackgroundColor3 = Color3.new(0.20392157137394, 0.20392157137394, 0.20392157137394), + BackgroundTransparency = 1, + BorderSizePixel = 0, + CanvasSize = UDim2.new(0, 0, 0, 0), + Name = "List", + Parent = { 4 }, + Position = UDim2.new(0, 2, 0, 2), + ScrollBarImageColor3 = Color3.new(0, 0, 0), + ScrollBarThickness = 12, + Size = UDim2.new(1, -4, 1, -4), + VerticalScrollBarInset = 1, + }, + }, + { 7, "UIListLayout", { Parent = { 6 }, SortOrder = 2 } }, + { + 8, + "Frame", + { + BackgroundColor3 = Color3.new(0.20392157137394, 0.20392157137394, 0.20392157137394), + BorderSizePixel = 0, + Name = "SearchFrame", + Parent = { 4 }, + Size = UDim2.new(1, 0, 0, 24), + Visible = false, + }, + }, + { + 9, + "Frame", + { + BackgroundColor3 = Color3.new(0.14901961386204, 0.14901961386204, 0.14901961386204), + BorderColor3 = Color3.new(0.1176470592618, 0.1176470592618, 0.1176470592618), + BorderSizePixel = 0, + Name = "SearchContainer", + Parent = { 8 }, + Position = UDim2.new(0, 3, 0, 3), + Size = UDim2.new(1, -6, 0, 18), + }, + }, + { + 10, + "TextBox", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Font = 3, + Name = "SearchBox", + Parent = { 9 }, + PlaceholderColor3 = Color3.new(0.39215689897537, 0.39215689897537, 0.39215689897537), + PlaceholderText = "Search", + Position = UDim2.new(0, 4, 0, 0), + Size = UDim2.new(1, -8, 0, 18), + Text = "", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + TextXAlignment = 0, + }, + }, + { 11, "UICorner", { CornerRadius = UDim.new(0, 2), Parent = { 9 } } }, + { + 12, + "Frame", + { + BackgroundColor3 = Color3.new(0.14117647707462, 0.14117647707462, 0.14117647707462), + BorderSizePixel = 0, + Name = "Line", + Parent = { 8 }, + Position = UDim2.new(0, 0, 1, 0), + Size = UDim2.new(1, 0, 0, 1), + }, + }, + { + 13, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.20392157137394, 0.20392157137394, 0.20392157137394), + BorderColor3 = Color3.new(0.33725491166115, 0.49019610881805, 0.73725491762161), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "Entry", + Parent = { 1 }, + Size = UDim2.new(1, 0, 0, 22), + Text = "", + TextSize = 14, + Visible = false, + }, + }, + { + 14, + "TextLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "EntryName", + Parent = { 13 }, + Position = UDim2.new(0, 24, 0, 0), + Size = UDim2.new(1, -24, 1, 0), + Text = "Duplicate", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + TextXAlignment = 0, + }, + }, + { + 15, + "TextLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Font = 3, + Name = "Shortcut", + Parent = { 13 }, + Position = UDim2.new(0, 24, 0, 0), + Size = UDim2.new(1, -30, 1, 0), + Text = "Ctrl+D", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + TextXAlignment = 1, + }, + }, + { + 16, + "ImageLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + ImageRectOffset = Vector2.new(304, 0), + ImageRectSize = Vector2.new(16, 16), + Name = "Icon", + Parent = { 13 }, + Position = UDim2.new(0, 2, 0, 3), + ScaleType = 4, + Size = UDim2.new(0, 16, 0, 16), + }, + }, + { 17, "UICorner", { CornerRadius = UDim.new(0, 4), Parent = { 13 } } }, + { + 18, + "Frame", + { + BackgroundColor3 = Color3.new(0.21568629145622, 0.21568629145622, 0.21568629145622), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Name = "Divider", + Parent = { 1 }, + Position = UDim2.new(0, 0, 0, 20), + Size = UDim2.new(1, 0, 0, 7), + Visible = false, + }, + }, + { + 19, + "Frame", + { + BackgroundColor3 = Color3.new(0.20392157137394, 0.20392157137394, 0.20392157137394), + BorderSizePixel = 0, + Name = "Line", + Parent = { 18 }, + Position = UDim2.new(0, 0, 0.5, 0), + Size = UDim2.new(1, 0, 0, 1), + }, + }, + { + 20, + "TextLabel", + { + AnchorPoint = Vector2.new(0, 0.5), + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "DividerName", + Parent = { 18 }, + Position = UDim2.new(0, 2, 0.5, 0), + Size = UDim2.new(1, -4, 1, 0), + Text = "Objects", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + TextTransparency = 0.60000002384186, + TextXAlignment = 0, + Visible = false, + }, + }, }) self.GuiElems.Main = contextGui.Main self.GuiElems.List = contextGui.Main.Container.List @@ -2098,7 +3041,7 @@ local function main() Lib.ViewportTextBox.convert(self.GuiElems.SearchBar) self.GuiElems.SearchBar:GetPropertyChangedSignal("Text"):Connect(function() - local lower,find = string.lower,string.find + local lower, find = string.lower, string.find local searchText = lower(self.GuiElems.SearchBar.Text) local items = self.Items local map = self.ItemToEntryMap @@ -2106,11 +3049,11 @@ local function main() if searchText ~= "" then local results = {} local count = 1 - for i = 1,#items do + for i = 1, #items do local item = items[i] local entry = map[item] if entry then - if not item.Divider and find(lower(item.Name),searchText,1,true) then + if not item.Divider and find(lower(item.Name), searchText, 1, true) then results[count] = item count = count + 1 else @@ -2118,27 +3061,32 @@ local function main() end end end - table.sort(results,function(a,b) return a.Name < b.Name end) - for i = 1,#results do + table.sort(results, function(a, b) + return a.Name < b.Name + end) + for i = 1, #results do local entry = map[results[i]] entry.LayoutOrder = i entry.Visible = true end else - for i = 1,#items do + for i = 1, #items do local entry = map[items[i]] - if entry then entry.LayoutOrder = i entry.Visible = true end + if entry then + entry.LayoutOrder = i + entry.Visible = true + end end end local toSize = self.GuiElems.List.UIListLayout.AbsoluteContentSize.Y + 6 - self.GuiElems.List.CanvasSize = UDim2.new(0,0,0,toSize-6) + self.GuiElems.List.CanvasSize = UDim2.new(0, 0, 0, toSize - 6) end) return contextGui end - funcs.Add = function(self,item) + funcs.Add = function(self, item) local newItem = { Name = item.Name or "Item", Icon = item.Icon or "", @@ -2148,29 +3096,31 @@ local function main() Disabled = item.Disabled or false, DisabledIcon = item.DisabledIcon or "", IconMap = item.IconMap, - OnRightClick = item.OnRightClick + OnRightClick = item.OnRightClick, } if self.QueuedDivider then local text = self.QueuedDividerText and #self.QueuedDividerText > 0 self:AddDivider(text) end - self.Items[#self.Items+1] = newItem + self.Items[#self.Items + 1] = newItem self.Updated = nil end - funcs.AddRegistered = function(self,name,disabled) - if not self.Registered[name] then error(name.." is not registered") end + funcs.AddRegistered = function(self, name, disabled) + if not self.Registered[name] then + error(name .. " is not registered") + end if self.QueuedDivider then local text = self.QueuedDividerText and #self.QueuedDividerText > 0 self:AddDivider(text) end self.Registered[name].Disabled = disabled - self.Items[#self.Items+1] = self.Registered[name] + self.Items[#self.Items + 1] = self.Registered[name] self.Updated = nil end - funcs.Register = function(self,name,item) + funcs.Register = function(self, name, item) self.Registered[name] = { Name = item.Name or "Item", Icon = item.Icon or "", @@ -2179,22 +3129,24 @@ local function main() OnHover = item.OnHover, DisabledIcon = item.DisabledIcon or "", IconMap = item.IconMap, - OnRightClick = item.OnRightClick + OnRightClick = item.OnRightClick, } end - funcs.UnRegister = function(self,name) + funcs.UnRegister = function(self, name) self.Registered[name] = nil end - funcs.AddDivider = function(self,text) + funcs.AddDivider = function(self, text) self.QueuedDivider = false - local textWidth = text and service.TextService:GetTextSize(text,14,Enum.Font.SourceSans,Vector2.new(999999999,20)).X or nil - table.insert(self.Items,{Divider = true, Text = text, TextSize = textWidth and textWidth+4}) + local textWidth = text + and service.TextService:GetTextSize(text, 14, Enum.Font.SourceSans, Vector2.new(999999999, 20)).X + or nil + table.insert(self.Items, { Divider = true, Text = text, TextSize = textWidth and textWidth + 4 }) self.Updated = nil end - funcs.QueueDivider = function(self,text) + funcs.QueueDivider = function(self, text) self.QueuedDivider = true self.QueuedDividerText = text or "" end @@ -2205,7 +3157,7 @@ local function main() end funcs.Refresh = function(self) - for i,v in pairs(self.GuiElems.List:GetChildren()) do + for i, v in pairs(self.GuiElems.List:GetChildren()) do if not v:IsA("UIListLayout") then v:Destroy() end @@ -2218,15 +3170,15 @@ local function main() local entryFrame = self.GuiElems.Entry local items = self.Items - for i = 1,#items do + for i = 1, #items do local item = items[i] if item.Divider then local newDivider = dividerFrame:Clone() newDivider.Line.BackgroundColor3 = self.Theme.DividerColor if item.Text then - newDivider.Size = UDim2.new(1,0,0,20) - newDivider.Line.Position = UDim2.new(0,item.TextSize,0.5,0) - newDivider.Line.Size = UDim2.new(1,-item.TextSize,0,1) + newDivider.Size = UDim2.new(1, 0, 0, 20) + newDivider.Line.Position = UDim2.new(0, item.TextSize, 0.5, 0) + newDivider.Line.Size = UDim2.new(1, -item.TextSize, 0, 1) newDivider.DividerName.TextColor3 = self.Theme.TextColor newDivider.DividerName.Text = item.Text newDivider.DividerName.Visible = true @@ -2241,21 +3193,21 @@ local function main() newEntry.EntryName.Text = item.Name newEntry.Shortcut.Text = item.Shortcut if item.Disabled then - newEntry.EntryName.TextColor3 = Color3.new(150/255,150/255,150/255) - newEntry.Shortcut.TextColor3 = Color3.new(150/255,150/255,150/255) + newEntry.EntryName.TextColor3 = Color3.new(150 / 255, 150 / 255, 150 / 255) + newEntry.Shortcut.TextColor3 = Color3.new(150 / 255, 150 / 255, 150 / 255) end if self.Iconless then - newEntry.EntryName.Position = UDim2.new(0,2,0,0) - newEntry.EntryName.Size = UDim2.new(1,-4,0,20) + newEntry.EntryName.Position = UDim2.new(0, 2, 0, 0) + newEntry.EntryName.Size = UDim2.new(1, -4, 0, 20) newEntry.Icon.Visible = false else local iconIndex = item.Disabled and item.DisabledIcon or item.Icon if item.IconMap then if type(iconIndex) == "number" then - item.IconMap:Display(newEntry.Icon,iconIndex) + item.IconMap:Display(newEntry.Icon, iconIndex) elseif type(iconIndex) == "string" then - item.IconMap:DisplayByKey(newEntry.Icon,iconIndex) + item.IconMap:DisplayByKey(newEntry.Icon, iconIndex) end elseif type(iconIndex) == "string" then newEntry.Icon.Image = iconIndex @@ -2302,14 +3254,16 @@ local function main() self.Updated = true end - funcs.Show = function(self,x,y) + funcs.Show = function(self, x, y) -- Initialize Gui local elems = self.GuiElems elems.SearchFrame.Visible = self.SearchEnabled - elems.List.Position = UDim2.new(0,2,0,2 + (self.SearchEnabled and 24 or 0)) - elems.List.Size = UDim2.new(1,-4,1,-4 - (self.SearchEnabled and 24 or 0)) - if self.SearchEnabled and self.ClearSearchOnShow then elems.SearchBar.Text = "" end - self.GuiElems.List.CanvasPosition = Vector2.new(0,0) + elems.List.Position = UDim2.new(0, 2, 0, 2 + (self.SearchEnabled and 24 or 0)) + elems.List.Size = UDim2.new(1, -4, 1, -4 - (self.SearchEnabled and 24 or 0)) + if self.SearchEnabled and self.ClearSearchOnShow then + elems.SearchBar.Text = "" + end + self.GuiElems.List.CanvasPosition = Vector2.new(0, 0) if not self.Updated then self:Refresh() -- Create entries @@ -2317,33 +3271,39 @@ local function main() -- Vars local reverseY = false - local x,y = x or mouse.X, y or mouse.Y - local maxX,maxY = mouse.ViewSizeX,mouse.ViewSizeY + local x, y = x or mouse.X, y or mouse.Y + local maxX, maxY = mouse.ViewSizeX, mouse.ViewSizeY -- Position and show if x + self.Width > maxX then x = self.ReverseX and x - self.Width or maxX - self.Width end - elems.Main.Position = UDim2.new(0,x,0,y) - elems.Main.Size = UDim2.new(0,self.Width,0,0) + elems.Main.Position = UDim2.new(0, x, 0, y) + elems.Main.Size = UDim2.new(0, self.Width, 0, 0) self.Gui.DisplayOrder = Main.DisplayOrders.Menu Lib.ShowGui(self.Gui) -- Size adjustment local toSize = elems.List.UIListLayout.AbsoluteContentSize.Y + 6 -- Padding if self.MaxHeight and toSize > self.MaxHeight then - elems.List.CanvasSize = UDim2.new(0,0,0,toSize-6) + elems.List.CanvasSize = UDim2.new(0, 0, 0, toSize - 6) toSize = self.MaxHeight else - elems.List.CanvasSize = UDim2.new(0,0,0,0) + elems.List.CanvasSize = UDim2.new(0, 0, 0, 0) + end + if y + toSize > maxY then + reverseY = true end - if y + toSize > maxY then reverseY = true end -- Close event local closable - if self.CloseEvent then self.CloseEvent:Disconnect() end + if self.CloseEvent then + self.CloseEvent:Disconnect() + end self.CloseEvent = service.UserInputService.InputBegan:Connect(function(input) - if not closable or input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + if not closable or input.UserInputType ~= Enum.UserInputType.MouseButton1 then + return + end if not Lib.CheckMouseInGui(elems.Main) then self.CloseEvent:Disconnect() @@ -2353,17 +3313,32 @@ local function main() -- Resize if reverseY then - elems.Main.Position = UDim2.new(0,x,0,y-(self.ReverseYOffset or 0)) + elems.Main.Position = UDim2.new(0, x, 0, y - (self.ReverseYOffset or 0)) local newY = y - toSize - (self.ReverseYOffset or 0) y = newY >= 0 and newY or 0 - elems.Main:TweenSizeAndPosition(UDim2.new(0,self.Width,0,toSize),UDim2.new(0,x,0,y),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.2,true) + elems.Main:TweenSizeAndPosition( + UDim2.new(0, self.Width, 0, toSize), + UDim2.new(0, x, 0, y), + Enum.EasingDirection.Out, + Enum.EasingStyle.Quart, + 0.2, + true + ) else - elems.Main:TweenSize(UDim2.new(0,self.Width,0,toSize),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.2,true) + elems.Main:TweenSize( + UDim2.new(0, self.Width, 0, toSize), + Enum.EasingDirection.Out, + Enum.EasingStyle.Quart, + 0.2, + true + ) end -- Close debounce Lib.FastWait() - if self.SearchEnabled and self.FocusSearchOnShow then elems.SearchBar:CaptureFocus() end + if self.SearchEnabled and self.FocusSearchOnShow then + elems.SearchBar:CaptureFocus() + end closable = true end @@ -2371,7 +3346,7 @@ local function main() self.Gui.Parent = nil end - funcs.ApplyTheme = function(self,data) + funcs.ApplyTheme = function(self, data) local theme = self.Theme theme.ContentColor = data.ContentColor or Settings.Theme.Menu theme.OutlineColor = data.OutlineColor or Settings.Theme.Menu @@ -2383,9 +3358,11 @@ local function main() self.GuiElems.Main.Container.BackgroundColor3 = theme.ContentColor end - local mt = {__index = funcs} + local mt = { __index = funcs } local function new() - if not mouse then mouse = Main.Mouse or service.Players.LocalPlayer:GetMouse() end + if not mouse then + mouse = Main.Mouse or service.Players.LocalPlayer:GetMouse() + end local obj = setmetatable({ Width = 200, @@ -2400,14 +3377,14 @@ local function main() Items = {}, Registered = {}, GuiElems = {}, - Theme = {} - },mt) + Theme = {}, + }, mt) obj.Gui = createGui(obj) obj:ApplyTheme({}) return obj end - return {new = new} + return { new = new } end)() Lib.CodeFrame = (function() @@ -2430,7 +3407,7 @@ local function main() [14] = "Local", [15] = "Self", [16] = "FunctionName", - [17] = "Bracket" + [17] = "Bracket", } local specialKeywordsTypes = { @@ -2439,12 +3416,12 @@ local function main() ["false"] = 12, ["function"] = 13, ["local"] = 14, - ["self"] = 15 + ["self"] = 15, } local keywords = { ["and"] = true, - ["break"] = true, + ["break"] = true, ["do"] = true, ["else"] = true, ["elseif"] = true, @@ -2464,7 +3441,7 @@ local function main() ["true"] = true, ["until"] = true, ["while"] = true, - ["plugin"] = true + ["plugin"] = true, } local builtIns = { @@ -2541,27 +3518,27 @@ local function main() ["Vector2"] = true, ["Vector2int16"] = true, ["Vector3"] = true, - ["Vector3int16"] = true + ["Vector3int16"] = true, } local builtInInited = false local richReplace = { ["'"] = "'", - ["\""] = """, + ['"'] = """, ["<"] = "<", [">"] = ">", - ["&"] = "&" + ["&"] = "&", } local tabSub = "\205" - local tabReplacement = (" %s%s "):format(tabSub,tabSub) + local tabReplacement = (" %s%s "):format(tabSub, tabSub) local tabJumps = { - [("[^%s] %s"):format(tabSub,tabSub)] = 0, - [(" %s%s"):format(tabSub,tabSub)] = -1, - [("%s%s "):format(tabSub,tabSub)] = 2, - [("%s [^%s]"):format(tabSub,tabSub)] = 1, + [("[^%s] %s"):format(tabSub, tabSub)] = 0, + [(" %s%s"):format(tabSub, tabSub)] = -1, + [("%s%s "):format(tabSub, tabSub)] = 2, + [("%s [^%s]"):format(tabSub, tabSub)] = 1, } local tweenService = service.TweenService @@ -2571,11 +3548,11 @@ local function main() local env = getfenv() local type = type local tostring = tostring - for name,_ in next,builtIns do + for name, _ in next, builtIns do local envVal = env[name] if type(envVal) == "table" then local items = {} - for i,v in next,envVal do + for i, v in next, envVal do items[i] = true end builtIns[name] = items @@ -2584,7 +3561,7 @@ local function main() local enumEntries = {} local enums = Enum:GetEnums() - for i = 1,#enums do + for i = 1, #enums do enumEntries[tostring(enums[i])] = true end builtIns["Enum"] = enumEntries @@ -2607,7 +3584,9 @@ local function main() editBox:GetPropertyChangedSignal("Text"):Connect(function() local text = editBox.Text - if #text == 0 or obj.EditBoxCopying then return end + if #text == 0 or obj.EditBoxCopying then + return + end editBox.Text = "" obj:AppendText(text) end) @@ -2620,39 +3599,39 @@ local function main() codeFrame.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then - local fontSizeX,fontSizeY = math.ceil(obj.FontSize/2),obj.FontSize + local fontSizeX, fontSizeY = math.ceil(obj.FontSize / 2), obj.FontSize local relX = mouse.X - codeFrame.AbsolutePosition.X local relY = mouse.Y - codeFrame.AbsolutePosition.Y local selX = math.round(relX / fontSizeX) + obj.ViewX local selY = math.floor(relY / fontSizeY) + obj.ViewY - local releaseEvent,mouseEvent,scrollEvent - local scrollPowerV,scrollPowerH = 0,0 - selY = math.min(#lines-1,selY) - local relativeLine = lines[selY+1] or "" - selX = math.min(#relativeLine, selX + obj:TabAdjust(selX,selY)) - - obj.SelectionRange = {{-1,-1},{-1,-1}} - obj:MoveCursor(selX,selY) + local releaseEvent, mouseEvent, scrollEvent + local scrollPowerV, scrollPowerH = 0, 0 + selY = math.min(#lines - 1, selY) + local relativeLine = lines[selY + 1] or "" + selX = math.min(#relativeLine, selX + obj:TabAdjust(selX, selY)) + + obj.SelectionRange = { { -1, -1 }, { -1, -1 } } + obj:MoveCursor(selX, selY) obj.FloatCursorX = selX local function updateSelection() local relX = mouse.X - codeFrame.AbsolutePosition.X local relY = mouse.Y - codeFrame.AbsolutePosition.Y - local sel2X = math.max(0,math.round(relX / fontSizeX) + obj.ViewX) - local sel2Y = math.max(0,math.floor(relY / fontSizeY) + obj.ViewY) + local sel2X = math.max(0, math.round(relX / fontSizeX) + obj.ViewX) + local sel2Y = math.max(0, math.floor(relY / fontSizeY) + obj.ViewY) - sel2Y = math.min(#lines-1,sel2Y) - local relativeLine = lines[sel2Y+1] or "" - sel2X = math.min(#relativeLine, sel2X + obj:TabAdjust(sel2X,sel2Y)) + sel2Y = math.min(#lines - 1, sel2Y) + local relativeLine = lines[sel2Y + 1] or "" + sel2X = math.min(#relativeLine, sel2X + obj:TabAdjust(sel2X, sel2Y)) if sel2Y < selY or (sel2Y == selY and sel2X < selX) then - obj.SelectionRange = {{sel2X,sel2Y},{selX,selY}} - else - obj.SelectionRange = {{selX,selY},{sel2X,sel2Y}} + obj.SelectionRange = { { sel2X, sel2Y }, { selX, selY } } + else + obj.SelectionRange = { { selX, selY }, { sel2X, sel2Y } } end - obj:MoveCursor(sel2X,sel2Y) + obj:MoveCursor(sel2X, sel2Y) obj.FloatCursorX = sel2X obj:Refresh() end @@ -2676,14 +3655,14 @@ local function main() scrollPowerV = 0 scrollPowerH = 0 if downDelta > 0 then - scrollPowerV = math.floor(downDelta*0.05) + 1 + scrollPowerV = math.floor(downDelta * 0.05) + 1 elseif upDelta < 0 then - scrollPowerV = math.ceil(upDelta*0.05) - 1 + scrollPowerV = math.ceil(upDelta * 0.05) - 1 end if rightDelta > 0 then - scrollPowerH = math.floor(rightDelta*0.05) + 1 + scrollPowerH = math.floor(rightDelta * 0.05) + 1 elseif leftDelta < 0 then - scrollPowerH = math.ceil(leftDelta*0.05) - 1 + scrollPowerH = math.ceil(leftDelta * 0.05) - 1 end updateSelection() end @@ -2691,7 +3670,7 @@ local function main() scrollEvent = game:GetService("RunService").RenderStepped:Connect(function() if scrollPowerV ~= 0 or scrollPowerH ~= 0 then - obj:ScrollDelta(scrollPowerH,scrollPowerV) + obj:ScrollDelta(scrollPowerH, scrollPowerV) updateSelection() end end) @@ -2703,14 +3682,23 @@ local function main() local function makeFrame(obj) local frame = create({ - {1,"Frame",{BackgroundColor3=Color3.new(0.15686275064945,0.15686275064945,0.15686275064945),BorderSizePixel = 0,Position=UDim2.new(0.5,-300,0.5,-200),Size=UDim2.new(0,600,0,400),}}, + { + 1, + "Frame", + { + BackgroundColor3 = Color3.new(0.15686275064945, 0.15686275064945, 0.15686275064945), + BorderSizePixel = 0, + Position = UDim2.new(0.5, -300, 0.5, -200), + Size = UDim2.new(0, 600, 0, 400), + }, + }, }) local elems = {} local linesFrame = Instance.new("Frame") linesFrame.Name = "Lines" linesFrame.BackgroundTransparency = 1 - linesFrame.Size = UDim2.new(1,0,1,0) + linesFrame.Size = UDim2.new(1, 0, 1, 0) linesFrame.ClipsDescendants = true linesFrame.Parent = frame @@ -2726,7 +3714,7 @@ local function main() local cursor = Instance.new("Frame") cursor.Name = "Cursor" - cursor.BackgroundColor3 = Color3.fromRGB(220,220,220) + cursor.BackgroundColor3 = Color3.fromRGB(220, 220, 220) cursor.BorderSizePixel = 0 cursor.Parent = frame @@ -2736,19 +3724,40 @@ local function main() editBox.Visible = false editBox.Parent = frame - lineTweens.Invis = tweenService:Create(cursor,TweenInfo.new(0.4,Enum.EasingStyle.Quart,Enum.EasingDirection.Out),{BackgroundTransparency = 1}) - lineTweens.Vis = tweenService:Create(cursor,TweenInfo.new(0.2,Enum.EasingStyle.Quart,Enum.EasingDirection.Out),{BackgroundTransparency = 0}) + lineTweens.Invis = tweenService:Create( + cursor, + TweenInfo.new(0.4, Enum.EasingStyle.Quart, Enum.EasingDirection.Out), + { BackgroundTransparency = 1 } + ) + lineTweens.Vis = tweenService:Create( + cursor, + TweenInfo.new(0.2, Enum.EasingStyle.Quart, Enum.EasingDirection.Out), + { BackgroundTransparency = 0 } + ) elems.LinesFrame = linesFrame elems.LineNumbersLabel = lineNumbersLabel elems.Cursor = cursor elems.EditBox = editBox - elems.ScrollCorner = create({{1,"Frame",{BackgroundColor3=Color3.new(0.15686275064945,0.15686275064945,0.15686275064945),BorderSizePixel=0,Name="ScrollCorner",Position=UDim2.new(1,-16,1,-16),Size=UDim2.new(0,16,0,16),Visible=false,}}}) + elems.ScrollCorner = create({ + { + 1, + "Frame", + { + BackgroundColor3 = Color3.new(0.15686275064945, 0.15686275064945, 0.15686275064945), + BorderSizePixel = 0, + Name = "ScrollCorner", + Position = UDim2.new(1, -16, 1, -16), + Size = UDim2.new(0, 16, 0, 16), + Visible = false, + }, + }, + }) elems.ScrollCorner.Parent = frame linesFrame.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then - obj:SetEditing(true,input) + obj:SetEditing(true, input) end end) @@ -2762,30 +3771,34 @@ local function main() end funcs.GetSelectionText = function(self) - if not self:IsValidRange() then return "" end + if not self:IsValidRange() then + return "" + end local selectionRange = self.SelectionRange - local selX,selY = selectionRange[1][1], selectionRange[1][2] - local sel2X,sel2Y = selectionRange[2][1], selectionRange[2][2] - local deltaLines = sel2Y-selY + local selX, selY = selectionRange[1][1], selectionRange[1][2] + local sel2X, sel2Y = selectionRange[2][1], selectionRange[2][2] + local deltaLines = sel2Y - selY local lines = self.Lines - if not lines[selY+1] or not lines[sel2Y+1] then return "" end + if not lines[selY + 1] or not lines[sel2Y + 1] then + return "" + end if deltaLines == 0 then - return self:ConvertText(lines[selY+1]:sub(selX+1,sel2X), false) + return self:ConvertText(lines[selY + 1]:sub(selX + 1, sel2X), false) end - local leftSub = lines[selY+1]:sub(selX+1) - local rightSub = lines[sel2Y+1]:sub(1,sel2X) + local leftSub = lines[selY + 1]:sub(selX + 1) + local rightSub = lines[sel2Y + 1]:sub(1, sel2X) - local result = leftSub.."\n" - for i = selY+1,sel2Y-1 do - result = result..lines[i+1].."\n" + local result = leftSub .. "\n" + for i = selY + 1, sel2Y - 1 do + result = result .. lines[i + 1] .. "\n" end - result = result..rightSub + result = result .. rightSub - return self:ConvertText(result,false) + return self:ConvertText(result, false) end funcs.SetCopyableSelection = function(self) @@ -2805,44 +3818,53 @@ local function main() end self.EditBoxEvent = service.UserInputService.InputBegan:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.Keyboard then return end + if input.UserInputType ~= Enum.UserInputType.Keyboard then + return + end local keycodes = Enum.KeyCode local keycode = input.KeyCode - local function setupMove(key,func) - local endCon,finished + local function setupMove(key, func) + local endCon, finished endCon = service.UserInputService.InputEnded:Connect(function(input) - if input.KeyCode ~= key then return end + if input.KeyCode ~= key then + return + end endCon:Disconnect() finished = true end) func() Lib.FastWait(0.5) - while not finished do func() Lib.FastWait(0.03) end + while not finished do + func() + Lib.FastWait(0.03) + end end if keycode == keycodes.Down then - setupMove(keycodes.Down,function() + setupMove(keycodes.Down, function() self.CursorX = self.FloatCursorX self.CursorY = self.CursorY + 1 self:UpdateCursor() self:JumpToCursor() end) elseif keycode == keycodes.Up then - setupMove(keycodes.Up,function() + setupMove(keycodes.Up, function() self.CursorX = self.FloatCursorX self.CursorY = self.CursorY - 1 self:UpdateCursor() self:JumpToCursor() end) elseif keycode == keycodes.Left then - setupMove(keycodes.Left,function() - local line = self.Lines[self.CursorY+1] or "" - self.CursorX = self.CursorX - 1 - (line:sub(self.CursorX-3,self.CursorX) == tabReplacement and 3 or 0) + setupMove(keycodes.Left, function() + local line = self.Lines[self.CursorY + 1] or "" + self.CursorX = self.CursorX + - 1 + - (line:sub(self.CursorX - 3, self.CursorX) == tabReplacement and 3 or 0) if self.CursorX < 0 then self.CursorY = self.CursorY - 1 - local line2 = self.Lines[self.CursorY+1] or "" + local line2 = self.Lines[self.CursorY + 1] or "" self.CursorX = #line2 end self.FloatCursorX = self.CursorX @@ -2850,9 +3872,11 @@ local function main() self:JumpToCursor() end) elseif keycode == keycodes.Right then - setupMove(keycodes.Right,function() - local line = self.Lines[self.CursorY+1] or "" - self.CursorX = self.CursorX + 1 + (line:sub(self.CursorX+1,self.CursorX+4) == tabReplacement and 3 or 0) + setupMove(keycodes.Right, function() + local line = self.Lines[self.CursorY + 1] or "" + self.CursorX = self.CursorX + + 1 + + (line:sub(self.CursorX + 1, self.CursorX + 4) == tabReplacement and 3 or 0) if self.CursorX > #line then self.CursorY = self.CursorY + 1 self.CursorX = 0 @@ -2862,46 +3886,50 @@ local function main() self:JumpToCursor() end) elseif keycode == keycodes.Backspace then - setupMove(keycodes.Backspace,function() - local startRange,endRange + setupMove(keycodes.Backspace, function() + local startRange, endRange if self:IsValidRange() then startRange = self.SelectionRange[1] endRange = self.SelectionRange[2] else - endRange = {self.CursorX,self.CursorY} + endRange = { self.CursorX, self.CursorY } end if not startRange then - local line = self.Lines[self.CursorY+1] or "" - self.CursorX = self.CursorX - 1 - (line:sub(self.CursorX-3,self.CursorX) == tabReplacement and 3 or 0) + local line = self.Lines[self.CursorY + 1] or "" + self.CursorX = self.CursorX + - 1 + - (line:sub(self.CursorX - 3, self.CursorX) == tabReplacement and 3 or 0) if self.CursorX < 0 then self.CursorY = self.CursorY - 1 - local line2 = self.Lines[self.CursorY+1] or "" + local line2 = self.Lines[self.CursorY + 1] or "" self.CursorX = #line2 end self.FloatCursorX = self.CursorX self:UpdateCursor() - startRange = startRange or {self.CursorX,self.CursorY} + startRange = startRange or { self.CursorX, self.CursorY } end - self:DeleteRange({startRange,endRange},false,true) + self:DeleteRange({ startRange, endRange }, false, true) self:ResetSelection(true) self:JumpToCursor() end) elseif keycode == keycodes.Delete then - setupMove(keycodes.Delete,function() - local startRange,endRange + setupMove(keycodes.Delete, function() + local startRange, endRange if self:IsValidRange() then startRange = self.SelectionRange[1] endRange = self.SelectionRange[2] else - startRange = {self.CursorX,self.CursorY} + startRange = { self.CursorX, self.CursorY } end if not endRange then - local line = self.Lines[self.CursorY+1] or "" - local endCursorX = self.CursorX + 1 + (line:sub(self.CursorX+1,self.CursorX+4) == tabReplacement and 3 or 0) + local line = self.Lines[self.CursorY + 1] or "" + local endCursorX = self.CursorX + + 1 + + (line:sub(self.CursorX + 1, self.CursorX + 4) == tabReplacement and 3 or 0) local endCursorY = self.CursorY if endCursorX > #line then endCursorY = endCursorY + 1 @@ -2909,16 +3937,16 @@ local function main() end self:UpdateCursor() - endRange = endRange or {endCursorX,endCursorY} + endRange = endRange or { endCursorX, endCursorY } end - self:DeleteRange({startRange,endRange},false,true) + self:DeleteRange({ startRange, endRange }, false, true) self:ResetSelection(true) self:JumpToCursor() end) elseif service.UserInputService:IsKeyDown(Enum.KeyCode.LeftControl) then if keycode == keycodes.A then - self.SelectionRange = {{0,0},{#self.Lines[#self.Lines],#self.Lines-1}} + self.SelectionRange = { { 0, 0 }, { #self.Lines[#self.Lines], #self.Lines - 1 } } self:SetCopyableSelection() self:Refresh() end @@ -2932,42 +3960,52 @@ local function main() end end - funcs.ResetSelection = function(self,norefresh) - self.SelectionRange = {{-1,-1},{-1,-1}} - if not norefresh then self:Refresh() end + funcs.ResetSelection = function(self, norefresh) + self.SelectionRange = { { -1, -1 }, { -1, -1 } } + if not norefresh then + self:Refresh() + end end - funcs.IsValidRange = function(self,range) + funcs.IsValidRange = function(self, range) local selectionRange = range or self.SelectionRange - local selX,selY = selectionRange[1][1], selectionRange[1][2] - local sel2X,sel2Y = selectionRange[2][1], selectionRange[2][2] + local selX, selY = selectionRange[1][1], selectionRange[1][2] + local sel2X, sel2Y = selectionRange[2][1], selectionRange[2][2] - if selX == -1 or (selX == sel2X and selY == sel2Y) then return false end + if selX == -1 or (selX == sel2X and selY == sel2Y) then + return false + end return true end - funcs.DeleteRange = function(self,range,noprocess,updatemouse) + funcs.DeleteRange = function(self, range, noprocess, updatemouse) range = range or self.SelectionRange - if not self:IsValidRange(range) then return end + if not self:IsValidRange(range) then + return + end local lines = self.Lines - local selX,selY = range[1][1], range[1][2] - local sel2X,sel2Y = range[2][1], range[2][2] - local deltaLines = sel2Y-selY + local selX, selY = range[1][1], range[1][2] + local sel2X, sel2Y = range[2][1], range[2][2] + local deltaLines = sel2Y - selY - if not lines[selY+1] or not lines[sel2Y+1] then return end + if not lines[selY + 1] or not lines[sel2Y + 1] then + return + end - local leftSub = lines[selY+1]:sub(1,selX) - local rightSub = lines[sel2Y+1]:sub(sel2X+1) - lines[selY+1] = leftSub..rightSub + local leftSub = lines[selY + 1]:sub(1, selX) + local rightSub = lines[sel2Y + 1]:sub(sel2X + 1) + lines[selY + 1] = leftSub .. rightSub local remove = table.remove - for i = 1,deltaLines do - remove(lines,selY+2) + for i = 1, deltaLines do + remove(lines, selY + 2) end - if range == self.SelectionRange then self.SelectionRange = {{-1,-1},{-1,-1}} end + if range == self.SelectionRange then + self.SelectionRange = { { -1, -1 }, { -1, -1 } } + end if updatemouse then self.CursorX = selX self.CursorY = selY @@ -2979,56 +4017,62 @@ local function main() end end - funcs.AppendText = function(self,text) - self:DeleteRange(nil,true,true) - local lines,cursorX,cursorY = self.Lines,self.CursorX,self.CursorY - local line = lines[cursorY+1] - local before = line:sub(1,cursorX) - local after = line:sub(cursorX+1) + funcs.AppendText = function(self, text) + self:DeleteRange(nil, true, true) + local lines, cursorX, cursorY = self.Lines, self.CursorX, self.CursorY + local line = lines[cursorY + 1] + local before = line:sub(1, cursorX) + local after = line:sub(cursorX + 1) - text = text:gsub("\r\n","\n") - text = self:ConvertText(text,true) -- Tab Convert + text = text:gsub("\r\n", "\n") + text = self:ConvertText(text, true) -- Tab Convert local textLines = text:split("\n") local insert = table.insert - for i = 1,#textLines do - local linePos = cursorY+i - if i > 1 then insert(lines,linePos,"") end + for i = 1, #textLines do + local linePos = cursorY + i + if i > 1 then + insert(lines, linePos, "") + end local textLine = textLines[i] local newBefore = (i == 1 and before or "") local newAfter = (i == #textLines and after or "") - lines[linePos] = newBefore..textLine..newAfter + lines[linePos] = newBefore .. textLine .. newAfter end - if #textLines > 1 then cursorX = 0 end + if #textLines > 1 then + cursorX = 0 + end self:ProcessTextChange() self.CursorX = cursorX + #textLines[#textLines] - self.CursorY = cursorY + #textLines-1 + self.CursorY = cursorY + #textLines - 1 self:UpdateCursor() end - funcs.ScrollDelta = function(self,x,y) + funcs.ScrollDelta = function(self, x, y) self.ScrollV:ScrollTo(self.ScrollV.Index + y) self.ScrollH:ScrollTo(self.ScrollH.Index + x) end -- x and y starts at 0 - funcs.TabAdjust = function(self,x,y) + funcs.TabAdjust = function(self, x, y) local lines = self.Lines - local line = lines[y+1] - x=x+1 + local line = lines[y + 1] + x = x + 1 if line then - local left = line:sub(x-1,x-1) - local middle = line:sub(x,x) - local right = line:sub(x+1,x+1) - local selRange = (#left > 0 and left or " ") .. (#middle > 0 and middle or " ") .. (#right > 0 and right or " ") - - for i,v in pairs(tabJumps) do + local left = line:sub(x - 1, x - 1) + local middle = line:sub(x, x) + local right = line:sub(x + 1, x + 1) + local selRange = (#left > 0 and left or " ") + .. (#middle > 0 and middle or " ") + .. (#right > 0 and right or " ") + + for i, v in pairs(tabJumps) do if selRange:find(i) then return v end @@ -3037,7 +4081,7 @@ local function main() return 0 end - funcs.SetEditing = function(self,on,input) + funcs.SetEditing = function(self, on, input) self:UpdateCursor(input) if on then @@ -3050,12 +4094,14 @@ local function main() end end - funcs.CursorAnim = function(self,on) + funcs.CursorAnim = function(self, on) local cursor = self.GuiElems.Cursor local animTime = tick() self.LastAnimTime = animTime - if not on then return end + if not on then + return + end lineTweens.Invis:Cancel() lineTweens.Vis:Cancel() @@ -3064,17 +4110,21 @@ local function main() task.spawn(function() while self.Editable do Lib.FastWait(0.5) - if self.LastAnimTime ~= animTime then return end + if self.LastAnimTime ~= animTime then + return + end lineTweens.Invis:Play() Lib.FastWait(0.4) - if self.LastAnimTime ~= animTime then return end + if self.LastAnimTime ~= animTime then + return + end lineTweens.Vis:Play() Lib.FastWait(0.2) end end) end - funcs.MoveCursor = function(self,x,y) + funcs.MoveCursor = function(self, x, y) self.CursorX = x self.CursorY = y self:UpdateCursor() @@ -3085,52 +4135,59 @@ local function main() self:Refresh() end - funcs.UpdateCursor = function(self,input) + funcs.UpdateCursor = function(self, input) local linesFrame = self.GuiElems.LinesFrame - local cursor = self.GuiElems.Cursor - local hSize = math.max(0,linesFrame.AbsoluteSize.X) - local vSize = math.max(0,linesFrame.AbsoluteSize.Y) + local cursor = self.GuiElems.Cursor + local hSize = math.max(0, linesFrame.AbsoluteSize.X) + local vSize = math.max(0, linesFrame.AbsoluteSize.Y) local maxLines = math.ceil(vSize / self.FontSize) - local maxCols = math.ceil(hSize / math.ceil(self.FontSize/2)) - local viewX,viewY = self.ViewX,self.ViewY + local maxCols = math.ceil(hSize / math.ceil(self.FontSize / 2)) + local viewX, viewY = self.ViewX, self.ViewY local totalLinesStr = tostring(#self.Lines) local fontWidth = math.ceil(self.FontSize / 2) - local linesOffset = #totalLinesStr*fontWidth + 4*fontWidth + local linesOffset = #totalLinesStr * fontWidth + 4 * fontWidth if input then local linesFrame = self.GuiElems.LinesFrame - local frameX,frameY = linesFrame.AbsolutePosition.X,linesFrame.AbsolutePosition.Y - local mouseX,mouseY = input.Position.X,input.Position.Y - local fontSizeX,fontSizeY = math.ceil(self.FontSize/2),self.FontSize + local frameX, frameY = linesFrame.AbsolutePosition.X, linesFrame.AbsolutePosition.Y + local mouseX, mouseY = input.Position.X, input.Position.Y + local fontSizeX, fontSizeY = math.ceil(self.FontSize / 2), self.FontSize self.CursorX = self.ViewX + math.round((mouseX - frameX) / fontSizeX) self.CursorY = self.ViewY + math.floor((mouseY - frameY) / fontSizeY) end - local cursorX,cursorY = self.CursorX,self.CursorY + local cursorX, cursorY = self.CursorX, self.CursorY - local line = self.Lines[cursorY+1] or "" - if cursorX > #line then cursorX = #line - elseif cursorX < 0 then cursorX = 0 end + local line = self.Lines[cursorY + 1] or "" + if cursorX > #line then + cursorX = #line + elseif cursorX < 0 then + cursorX = 0 + end if cursorY >= #self.Lines then - cursorY = math.max(0,#self.Lines-1) + cursorY = math.max(0, #self.Lines - 1) elseif cursorY < 0 then cursorY = 0 end - cursorX = cursorX + self:TabAdjust(cursorX,cursorY) + cursorX = cursorX + self:TabAdjust(cursorX, cursorY) -- Update modified self.CursorX = cursorX self.CursorY = cursorY - local cursorVisible = (cursorX >= viewX) and (cursorY >= viewY) and (cursorX <= viewX + maxCols) and (cursorY <= viewY + maxLines) + local cursorVisible = (cursorX >= viewX) + and (cursorY >= viewY) + and (cursorX <= viewX + maxCols) + and (cursorY <= viewY + maxLines) if cursorVisible then local offX = (cursorX - viewX) local offY = (cursorY - viewY) - cursor.Position = UDim2.new(0,linesOffset + offX*math.ceil(self.FontSize/2) - 1,0,offY*self.FontSize) - cursor.Size = UDim2.new(0,1,0,self.FontSize+2) + cursor.Position = + UDim2.new(0, linesOffset + offX * math.ceil(self.FontSize / 2) - 1, 0, offY * self.FontSize) + cursor.Size = UDim2.new(0, 1, 0, self.FontSize + 2) cursor.Visible = true self:CursorAnim(true) else @@ -3145,12 +4202,12 @@ local function main() local find = string.find local init = 1 - local pos = find(text,"\n",init,true) + local pos = find(text, "\n", init, true) while pos do newLines[count] = pos count = count + 1 init = pos + 1 - pos = find(text,"\n",init,true) + pos = find(text, "\n", init, true) end self.NewLines = newLines @@ -3158,7 +4215,7 @@ local function main() funcs.PreHighlight = function(self) local start = tick() - local text = self.Text:gsub("\\\\"," ") + local text = self.Text:gsub("\\\\", " ") --print("BACKSLASH SUB",tick()-start) local textLen = #text local found = {} @@ -3168,10 +4225,10 @@ local function main() local sub = string.sub self.ColoredLines = {} - local function findAll(str,pattern,typ,raw) - local count = #found+1 + local function findAll(str, pattern, typ, raw) + local count = #found + 1 local init = 1 - local x,y,extra = find(str,pattern,init,raw) + local x, y, extra = find(str, pattern, init, raw) while x do found[count] = x foundMap[x] = typ @@ -3179,16 +4236,16 @@ local function main() extras[x] = extra end - count = count+1 - init = y+1 - x,y,extra = find(str,pattern,init,raw) + count = count + 1 + init = y + 1 + x, y, extra = find(str, pattern, init, raw) end end local start = tick() - findAll(text,'"',1,true) - findAll(text,"'",2,true) - findAll(text,"%[(=*)%[",3) - findAll(text,"--",4,true) + findAll(text, '"', 1, true) + findAll(text, "'", 2, true) + findAll(text, "%[(=*)%[", 3) + findAll(text, "--", 4, true) table.sort(found) local newLines = self.NewLines @@ -3199,52 +4256,65 @@ local function main() local lastEnding = 0 local foundHighlights = {} - for i = 1,#found do + for i = 1, #found do local pos = found[i] - if pos <= lastEnding then continue end + if pos <= lastEnding then + continue + end local ending = pos local typ = foundMap[pos] if typ == 1 then - ending = find(text,'"',pos+1,true) - while ending and sub(text,ending-1,ending-1) == "\\" do - ending = find(text,'"',ending+1,true) + ending = find(text, '"', pos + 1, true) + while ending and sub(text, ending - 1, ending - 1) == "\\" do + ending = find(text, '"', ending + 1, true) + end + if not ending then + ending = textLen end - if not ending then ending = textLen end elseif typ == 2 then - ending = find(text,"'",pos+1,true) - while ending and sub(text,ending-1,ending-1) == "\\" do - ending = find(text,"'",ending+1,true) + ending = find(text, "'", pos + 1, true) + while ending and sub(text, ending - 1, ending - 1) == "\\" do + ending = find(text, "'", ending + 1, true) + end + if not ending then + ending = textLen end - if not ending then ending = textLen end elseif typ == 3 then - _,ending = find(text,"]"..extras[pos].."]",pos+1,true) - if not ending then ending = textLen end + _, ending = find(text, "]" .. extras[pos] .. "]", pos + 1, true) + if not ending then + ending = textLen + end elseif typ == 4 then - local ahead = foundMap[pos+2] + local ahead = foundMap[pos + 2] if ahead == 3 then - _,ending = find(text,"]"..extras[pos+2].."]",pos+1,true) - if not ending then ending = textLen end + _, ending = find(text, "]" .. extras[pos + 2] .. "]", pos + 1, true) + if not ending then + ending = textLen + end else - ending = find(text,"\n",pos+1,true) or textLen + ending = find(text, "\n", pos + 1, true) or textLen end end while pos > lineEnd do curLine = curLine + 1 --lineTableCount = 1 - lineEnd = newLines[curLine] or textLen+1 + lineEnd = newLines[curLine] or textLen + 1 end while true do local lineTable = foundHighlights[curLine] - if not lineTable then lineTable = {} foundHighlights[curLine] = lineTable end - lineTable[pos] = {typ,ending} + if not lineTable then + lineTable = {} + foundHighlights[curLine] = lineTable + end + lineTable[pos] = { typ, ending } --lineTableCount = lineTableCount + 1 if ending > lineEnd then curLine = curLine + 1 - lineEnd = newLines[curLine] or textLen+1 + lineEnd = newLines[curLine] or textLen + 1 else break end @@ -3258,9 +4328,11 @@ local function main() --print(#found,curLine) end - funcs.HighlightLine = function(self,line) + funcs.HighlightLine = function(self, line) local cached = self.ColoredLines[line] - if cached then return cached end + if cached then + return cached + end local sub = string.sub local find = string.find @@ -3274,22 +4346,25 @@ local function main() local lastWord = nil local wordBeginsDotted = false local funcStatus = 0 - local lineStart = self.NewLines[line-1] or 0 + local lineStart = self.NewLines[line - 1] or 0 local preHighlightMap = {} - for pos,data in next,preHighlights do - local relativePos = pos-lineStart + for pos, data in next, preHighlights do + local relativePos = pos - lineStart if relativePos < 1 then currentType = data[1] lastEnding = data[2] - lineStart --warn(pos,data[2]) else - preHighlightMap[relativePos] = {data[1],data[2]-lineStart} + preHighlightMap[relativePos] = { data[1], data[2] - lineStart } end end - for col = 1,#lineText do - if col <= lastEnding then highlights[col] = currentType continue end + for col = 1, #lineText do + if col <= lastEnding then + highlights[col] = currentType + continue + end local pre = preHighlightMap[col] if pre then @@ -3300,21 +4375,22 @@ local function main() lastWord = nil funcStatus = 0 else - local char = sub(lineText,col,col) - if find(char,"[%a_]") then - local word = match(lineText,"[%a%d_]+",col) + local char = sub(lineText, col, col) + if find(char, "[%a_]") then + local word = match(lineText, "[%a%d_]+", col) local wordType = (keywords[word] and 7) or (builtIns[word] and 8) - lastEnding = col+#word-1 + lastEnding = col + #word - 1 if wordType ~= 7 then if wordBeginsDotted then local prevBuiltIn = lastWord and builtIns[lastWord] - wordType = (prevBuiltIn and type(prevBuiltIn) == "table" and prevBuiltIn[word] and 8) or 10 + wordType = (prevBuiltIn and type(prevBuiltIn) == "table" and prevBuiltIn[word] and 8) + or 10 end if wordType ~= 8 then - local x,y,br = find(lineText,"^%s*([%({\"'])",lastEnding+1) + local x, y, br = find(lineText, "^%s*([%({\"'])", lastEnding + 1) if x then wordType = (funcStatus > 0 and br == "(" and 16) or 9 funcStatus = 0 @@ -3327,7 +4403,9 @@ local function main() lastWord = word wordBeginsDotted = false - if funcStatus > 0 then funcStatus = 1 end + if funcStatus > 0 then + funcStatus = 1 + end if wordType then currentType = wordType @@ -3335,16 +4413,16 @@ local function main() else currentType = nil end - elseif find(char,"%p") then + elseif find(char, "%p") then local isDot = (char == ".") - local isNum = isDot and find(sub(lineText,col+1,col+1),"%d") + local isNum = isDot and find(sub(lineText, col + 1, col + 1), "%d") highlights[col] = (isNum and 6 or 5) if not isNum then - local dotStr = isDot and match(lineText,"%.%.?%.?",col) + local dotStr = isDot and match(lineText, "%.%.?%.?", col) if dotStr and #dotStr > 1 then currentType = 5 - lastEnding = col+#dotStr-1 + lastEnding = col + #dotStr - 1 wordBeginsDotted = false lastWord = nil funcStatus = 0 @@ -3363,10 +4441,12 @@ local function main() funcStatus = ((isDot or char == ":") and funcStatus == 1 and 2) or 0 end end - elseif find(char,"%d") then - local _,endPos = find(lineText,"%x+",col) - local endPart = sub(lineText,endPos,endPos+1) - if (endPart == "e+" or endPart == "e-") and find(sub(lineText,endPos+2,endPos+2),"%d") then + elseif find(char, "%d") then + local _, endPos = find(lineText, "%x+", col) + local endPart = sub(lineText, endPos, endPos + 1) + if + (endPart == "e+" or endPart == "e-") and find(sub(lineText, endPos + 2, endPos + 2), "%d") + then endPos = endPos + 1 end currentType = 6 @@ -3377,7 +4457,7 @@ local function main() funcStatus = 0 else highlights[col] = currentType - local _,endPos = find(lineText,"%s+",col) + local _, endPos = find(lineText, "%s+", col) if endPos then lastEnding = endPos end @@ -3393,24 +4473,24 @@ local function main() local start = tick() local linesFrame = self.Frame.Lines - local hSize = math.max(0,linesFrame.AbsoluteSize.X) - local vSize = math.max(0,linesFrame.AbsoluteSize.Y) + local hSize = math.max(0, linesFrame.AbsoluteSize.X) + local vSize = math.max(0, linesFrame.AbsoluteSize.Y) local maxLines = math.ceil(vSize / self.FontSize) - local maxCols = math.ceil(hSize / math.ceil(self.FontSize/2)) + local maxCols = math.ceil(hSize / math.ceil(self.FontSize / 2)) local gsub = string.gsub local sub = string.sub - local viewX,viewY = self.ViewX,self.ViewY + local viewX, viewY = self.ViewX, self.ViewY local lineNumberStr = "" - for row = 1,maxLines do + for row = 1, maxLines do local lineFrame = self.LineFrames[row] if not lineFrame then lineFrame = Instance.new("Frame") lineFrame.Name = "Line" - lineFrame.Position = UDim2.new(0,0,0,(row-1)*self.FontSize) - lineFrame.Size = UDim2.new(1,0,0,self.FontSize) + lineFrame.Position = UDim2.new(0, 0, 0, (row - 1) * self.FontSize) + lineFrame.Size = UDim2.new(1, 0, 0, self.FontSize) lineFrame.BorderSizePixel = 0 lineFrame.BackgroundTransparency = 1 @@ -3425,7 +4505,7 @@ local function main() label.BackgroundTransparency = 1 label.Font = Enum.Font.Code label.TextSize = self.FontSize - label.Size = UDim2.new(1,0,0,self.FontSize) + label.Size = UDim2.new(1, 0, 0, self.FontSize) label.RichText = true label.TextXAlignment = Enum.TextXAlignment.Left label.TextColor3 = self.Colors.Text @@ -3452,46 +4532,55 @@ local function main() local selectionRange = self.SelectionRange local selPos1 = selectionRange[1] local selPos2 = selectionRange[2] - local selRow,selColumn = selPos1[2],selPos1[1] - local sel2Row,sel2Column = selPos2[2],selPos2[1] - local selRelaX,selRelaY = viewX,relaY-1 + local selRow, selColumn = selPos1[2], selPos1[1] + local sel2Row, sel2Column = selPos2[2], selPos2[1] + local selRelaX, selRelaY = viewX, relaY - 1 if selRelaY >= selPos1[2] and selRelaY <= selPos2[2] then - local fontSizeX = math.ceil(self.FontSize/2) + local fontSizeX = math.ceil(self.FontSize / 2) local posX = (selRelaY == selPos1[2] and selPos1[1] or 0) - viewX - local sizeX = (selRelaY == selPos2[2] and selPos2[1]-posX-viewX or maxCols+viewX) + local sizeX = (selRelaY == selPos2[2] and selPos2[1] - posX - viewX or maxCols + viewX) - lineFrame.SelectionHighlight.Position = UDim2.new(0,posX*fontSizeX,0,0) - lineFrame.SelectionHighlight.Size = UDim2.new(0,sizeX*fontSizeX,1,0) + lineFrame.SelectionHighlight.Position = UDim2.new(0, posX * fontSizeX, 0, 0) + lineFrame.SelectionHighlight.Size = UDim2.new(0, sizeX * fontSizeX, 1, 0) lineFrame.SelectionHighlight.Visible = true else lineFrame.SelectionHighlight.Visible = false end -- Selection Text Color for first char - local inSelection = selRelaY >= selRow and selRelaY <= sel2Row and (selRelaY == selRow and viewX >= selColumn or selRelaY ~= selRow) and (selRelaY == sel2Row and viewX < sel2Column or selRelaY ~= sel2Row) + local inSelection = selRelaY >= selRow + and selRelaY <= sel2Row + and (selRelaY == selRow and viewX >= selColumn or selRelaY ~= selRow) + and (selRelaY == sel2Row and viewX < sel2Column or selRelaY ~= sel2Row) if inSelection then curType = -999 curTemplate = selectionTemplate end - for col = 2,maxCols do + for col = 2, maxCols do local relaX = viewX + col - local selRelaX = relaX-1 + local selRelaX = relaX - 1 local posType = highlights[relaX] -- Selection Text Color - local inSelection = selRelaY >= selRow and selRelaY <= sel2Row and (selRelaY == selRow and selRelaX >= selColumn or selRelaY ~= selRow) and (selRelaY == sel2Row and selRelaX < sel2Column or selRelaY ~= sel2Row) + local inSelection = selRelaY >= selRow + and selRelaY <= sel2Row + and (selRelaY == selRow and selRelaX >= selColumn or selRelaY ~= selRow) + and (selRelaY == sel2Row and selRelaX < sel2Column or selRelaY ~= sel2Row) if inSelection then posType = -999 end if posType ~= curType then - local template = (inSelection and selectionTemplate) or richTemplates[typeMap[posType]] or textTemplate + local template = (inSelection and selectionTemplate) + or richTemplates[typeMap[posType]] + or textTemplate if template ~= curTemplate then - local nextText = gsub(sub(lineText,colStart,relaX-1),"['\"<>&]",richReplace) - resText = resText .. (curTemplate ~= textTemplate and (curTemplate .. nextText .. "") or nextText) + local nextText = gsub(sub(lineText, colStart, relaX - 1), "['\"<>&]", richReplace) + resText = resText + .. (curTemplate ~= textTemplate and (curTemplate .. nextText .. "") or nextText) colStart = relaX curTemplate = template end @@ -3499,20 +4588,22 @@ local function main() end end - local lastText = gsub(sub(lineText,colStart,viewX+maxCols),"['\"<>&]",richReplace) + local lastText = gsub(sub(lineText, colStart, viewX + maxCols), "['\"<>&]", richReplace) --warn("SUB",colStart,viewX+maxCols-1) if #lastText > 0 then - resText = resText .. (curTemplate ~= textTemplate and (curTemplate .. lastText .. "") or lastText) + resText = resText + .. (curTemplate ~= textTemplate and (curTemplate .. lastText .. "") or lastText) end if self.Lines[relaY] then - lineNumberStr = lineNumberStr .. (relaY == self.CursorY and (""..relaY.."\n") or relaY .. "\n") + lineNumberStr = lineNumberStr + .. (relaY == self.CursorY and ("" .. relaY .. "\n") or relaY .. "\n") end lineFrame.Label.Text = resText end - for i = maxLines+1,#self.LineFrames do + for i = maxLines + 1, #self.LineFrames do self.LineFrames[i]:Destroy() self.LineFrames[i] = nil end @@ -3526,19 +4617,19 @@ local function main() funcs.UpdateView = function(self) local totalLinesStr = tostring(#self.Lines) local fontWidth = math.ceil(self.FontSize / 2) - local linesOffset = #totalLinesStr*fontWidth + 4*fontWidth + local linesOffset = #totalLinesStr * fontWidth + 4 * fontWidth local linesFrame = self.Frame.Lines local hSize = linesFrame.AbsoluteSize.X local vSize = linesFrame.AbsoluteSize.Y local maxLines = math.ceil(vSize / self.FontSize) - local totalWidth = self.MaxTextCols*fontWidth + local totalWidth = self.MaxTextCols * fontWidth local scrollV = self.ScrollV local scrollH = self.ScrollH scrollV.VisibleSpace = maxLines scrollV.TotalSpace = #self.Lines + 1 - scrollH.VisibleSpace = math.ceil(hSize/fontWidth) + scrollH.VisibleSpace = math.ceil(hSize / fontWidth) scrollH.TotalSpace = self.MaxTextCols + 1 scrollV.Gui.Visible = #self.Lines + 1 > maxLines @@ -3549,25 +4640,25 @@ local function main() if oldOffsets ~= self.FrameOffsets then self:UpdateView() else - scrollV:ScrollTo(self.ViewY,true) - scrollH:ScrollTo(self.ViewX,true) + scrollV:ScrollTo(self.ViewY, true) + scrollH:ScrollTo(self.ViewX, true) if scrollV.Gui.Visible and scrollH.Gui.Visible then - scrollV.Gui.Size = UDim2.new(0,16,1,-16) - scrollH.Gui.Size = UDim2.new(1,-16,0,16) + scrollV.Gui.Size = UDim2.new(0, 16, 1, -16) + scrollH.Gui.Size = UDim2.new(1, -16, 0, 16) self.GuiElems.ScrollCorner.Visible = true else - scrollV.Gui.Size = UDim2.new(0,16,1,0) - scrollH.Gui.Size = UDim2.new(1,0,0,16) + scrollV.Gui.Size = UDim2.new(0, 16, 1, 0) + scrollH.Gui.Size = UDim2.new(1, 0, 0, 16) self.GuiElems.ScrollCorner.Visible = false end self.ViewY = scrollV.Index self.ViewX = scrollH.Index - self.Frame.Lines.Position = UDim2.new(0,linesOffset,0,0) - self.Frame.Lines.Size = UDim2.new(1,-linesOffset+oldOffsets.X,1,oldOffsets.Y) - self.Frame.LineNumbers.Position = UDim2.new(0,fontWidth,0,0) - self.Frame.LineNumbers.Size = UDim2.new(0,#totalLinesStr*fontWidth,1,oldOffsets.Y) + self.Frame.Lines.Position = UDim2.new(0, linesOffset, 0, 0) + self.Frame.Lines.Size = UDim2.new(1, -linesOffset + oldOffsets.X, 1, oldOffsets.Y) + self.Frame.LineNumbers.Position = UDim2.new(0, fontWidth, 0, 0) + self.Frame.LineNumbers.Size = UDim2.new(0, #totalLinesStr * fontWidth, 1, oldOffsets.Y) self.Frame.LineNumbers.TextSize = self.FontSize end end @@ -3576,7 +4667,7 @@ local function main() local maxCols = 0 local lines = self.Lines - for i = 1,#lines do + for i = 1, #lines do local lineLen = #lines[i] if lineLen > maxCols then maxCols = lineLen @@ -3584,29 +4675,29 @@ local function main() end self.MaxTextCols = maxCols - self:UpdateView() - self.Text = table.concat(self.Lines,"\n") + self:UpdateView() + self.Text = table.concat(self.Lines, "\n") self:MapNewLines() self:PreHighlight() self:Refresh() --self.TextChanged:Fire() end - funcs.ConvertText = function(self,text,toEditor) + funcs.ConvertText = function(self, text, toEditor) if toEditor then - return text:gsub("\t",(" %s%s "):format(tabSub,tabSub)) + return text:gsub("\t", (" %s%s "):format(tabSub, tabSub)) else - return text:gsub((" %s%s "):format(tabSub,tabSub),"\t") + return text:gsub((" %s%s "):format(tabSub, tabSub), "\t") end end funcs.GetText = function(self) -- TODO: better (use new tab format) - local source = table.concat(self.Lines,"\n") - return self:ConvertText(source,false) -- Tab Convert + local source = table.concat(self.Lines, "\n") + return self:ConvertText(source, false) -- Tab Convert end - funcs.SetText = function(self,txt) - txt = self:ConvertText(txt,true) -- Tab Convert + funcs.SetText = function(self, txt) + txt = self:ConvertText(txt, true) -- Tab Convert local lines = self.Lines table.clear(lines) local count = 1 @@ -3624,8 +4715,12 @@ local function main() local floor = math.floor local templates = {} - for name,color in pairs(self.Colors) do - templates[name] = (''):format(floor(color.r*255),floor(color.g*255),floor(color.b*255)) + for name, color in pairs(self.Colors) do + templates[name] = (''):format( + floor(color.r * 255), + floor(color.g * 255), + floor(color.b * 255) + ) end self.RichTemplates = templates @@ -3638,21 +4733,23 @@ local function main() self.Frame.BackgroundColor3 = colors.Background end - local mt = {__index = funcs} + local mt = { __index = funcs } local function new() - if not builtInInited then initBuiltIn() end + if not builtInInited then + initBuiltIn() + end local scrollV = Lib.ScrollBar.new() local scrollH = Lib.ScrollBar.new(true) - scrollH.Gui.Position = UDim2.new(0,0,1,-16) + scrollH.Gui.Position = UDim2.new(0, 0, 1, -16) local obj = setmetatable({ FontSize = 15, ViewX = 0, ViewY = 0, Colors = Settings.Theme.Syntax, ColoredLines = {}, - Lines = {""}, + Lines = { "" }, LineFrames = {}, Editable = true, Editing = false, @@ -3661,13 +4758,13 @@ local function main() FloatCursorX = 0, Text = "", PreHighlights = {}, - SelectionRange = {{-1,-1},{-1,-1}}, + SelectionRange = { { -1, -1 }, { -1, -1 } }, NewLines = {}, - FrameOffsets = Vector2.new(0,0), + FrameOffsets = Vector2.new(0, 0), MaxTextCols = 0, ScrollV = scrollV, - ScrollH = scrollH - },mt) + ScrollH = scrollH, + }, mt) scrollV.WheelIncrement = 3 scrollH.Increment = 2 @@ -3699,7 +4796,7 @@ local function main() return obj end - return {new = new} + return { new = new } end)() Lib.Checkbox = (function() @@ -3716,7 +4813,7 @@ local function main() local delay = delay local function ripple(object, color) - local circle = new('Frame') + local circle = new("Frame") circle.BackgroundColor3 = color circle.BackgroundTransparency = 0.75 circle.BorderSizePixel = 0 @@ -3724,35 +4821,187 @@ local function main() circle.Size = ud2o() circle.Position = ud2s(0.5, 0.5) circle.Parent = object - local rounding = new('UICorner') + local rounding = new("UICorner") rounding.CornerRadius = ud(1) rounding.Parent = circle local abssz = object.AbsoluteSize - local size = max(abssz.X, abssz.Y) * 5/3 + local size = max(abssz.X, abssz.Y) * 5 / 3 TweenSize(circle, ud2o(size, size), "Out", "Quart", 0.4) - service.TweenService:Create(circle, ti(0.4, Enum.EasingStyle.Quart, Enum.EasingDirection.In), {BackgroundTransparency = 1}):Play() + service.TweenService + :Create( + circle, + ti(0.4, Enum.EasingStyle.Quart, Enum.EasingDirection.In), + { BackgroundTransparency = 1 } + ) + :Play() service.Debris:AddItem(circle, 0.4) end - local function initGui(self,frame) - local checkbox = frame or create({ - {1,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="Checkbox",Position=UDim2.new(0,3,0,3),Size=UDim2.new(0,16,0,16),}}, - {2,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="ripples",Parent={1},Size=UDim2.new(1,0,1,0),}}, - {3,"Frame",{BackgroundColor3=Color3.new(0.10196078568697,0.10196078568697,0.10196078568697),BorderSizePixel=0,Name="outline",Parent={1},Size=UDim2.new(0,16,0,16),}}, - {4,"Frame",{BackgroundColor3=Color3.new(0.14117647707462,0.14117647707462,0.14117647707462),BorderSizePixel=0,Name="filler",Parent={3},Position=UDim2.new(0,1,0,1),Size=UDim2.new(0,14,0,14),}}, - {5,"Frame",{BackgroundColor3=Color3.new(0.90196084976196,0.90196084976196,0.90196084976196),BorderSizePixel=0,Name="top",Parent={4},Size=UDim2.new(0,16,0,0),}}, - {6,"Frame",{AnchorPoint=Vector2.new(0,1),BackgroundColor3=Color3.new(0.90196084976196,0.90196084976196,0.90196084976196),BorderSizePixel=0,Name="bottom",Parent={4},Position=UDim2.new(0,0,0,14),Size=UDim2.new(0,16,0,0),}}, - {7,"Frame",{BackgroundColor3=Color3.new(0.90196084976196,0.90196084976196,0.90196084976196),BorderSizePixel=0,Name="left",Parent={4},Size=UDim2.new(0,0,0,16),}}, - {8,"Frame",{AnchorPoint=Vector2.new(1,0),BackgroundColor3=Color3.new(0.90196084976196,0.90196084976196,0.90196084976196),BorderSizePixel=0,Name="right",Parent={4},Position=UDim2.new(0,14,0,0),Size=UDim2.new(0,0,0,16),}}, - {9,"Frame",{AnchorPoint=Vector2.new(0.5,0.5),BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,ClipsDescendants=true,Name="checkmark",Parent={4},Position=UDim2.new(0.5,0,0.5,0),Size=UDim2.new(0,0,0,20),}}, - {10,"ImageLabel",{AnchorPoint=Vector2.new(0.5,0.5),BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Image="rbxassetid://6234266378",Parent={9},Position=UDim2.new(0.5,0,0.5,0),ScaleType=3,Size=UDim2.new(0,15,0,11),}}, - {11,"ImageLabel",{AnchorPoint=Vector2.new(0.5,0.5),BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://6401617475",ImageColor3=Color3.new(0.20784313976765,0.69803923368454,0.98431372642517),Name="checkmark2",Parent={4},Position=UDim2.new(0.5,0,0.5,0),Size=UDim2.new(0,12,0,12),Visible=false,}}, - {12,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Image="rbxassetid://6425281788",ImageTransparency=0.20000000298023,Name="middle",Parent={4},ScaleType=2,Size=UDim2.new(1,0,1,0),TileSize=UDim2.new(0,2,0,2),Visible=false,}}, - {13,"UICorner",{CornerRadius=UDim.new(0,2),Parent={3},}}, - }) + local function initGui(self, frame) + local checkbox = frame + or create({ + { + 1, + "Frame", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Name = "Checkbox", + Position = UDim2.new(0, 3, 0, 3), + Size = UDim2.new(0, 16, 0, 16), + }, + }, + { + 2, + "Frame", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Name = "ripples", + Parent = { 1 }, + Size = UDim2.new(1, 0, 1, 0), + }, + }, + { + 3, + "Frame", + { + BackgroundColor3 = Color3.new(0.10196078568697, 0.10196078568697, 0.10196078568697), + BorderSizePixel = 0, + Name = "outline", + Parent = { 1 }, + Size = UDim2.new(0, 16, 0, 16), + }, + }, + { + 4, + "Frame", + { + BackgroundColor3 = Color3.new(0.14117647707462, 0.14117647707462, 0.14117647707462), + BorderSizePixel = 0, + Name = "filler", + Parent = { 3 }, + Position = UDim2.new(0, 1, 0, 1), + Size = UDim2.new(0, 14, 0, 14), + }, + }, + { + 5, + "Frame", + { + BackgroundColor3 = Color3.new(0.90196084976196, 0.90196084976196, 0.90196084976196), + BorderSizePixel = 0, + Name = "top", + Parent = { 4 }, + Size = UDim2.new(0, 16, 0, 0), + }, + }, + { + 6, + "Frame", + { + AnchorPoint = Vector2.new(0, 1), + BackgroundColor3 = Color3.new(0.90196084976196, 0.90196084976196, 0.90196084976196), + BorderSizePixel = 0, + Name = "bottom", + Parent = { 4 }, + Position = UDim2.new(0, 0, 0, 14), + Size = UDim2.new(0, 16, 0, 0), + }, + }, + { + 7, + "Frame", + { + BackgroundColor3 = Color3.new(0.90196084976196, 0.90196084976196, 0.90196084976196), + BorderSizePixel = 0, + Name = "left", + Parent = { 4 }, + Size = UDim2.new(0, 0, 0, 16), + }, + }, + { + 8, + "Frame", + { + AnchorPoint = Vector2.new(1, 0), + BackgroundColor3 = Color3.new(0.90196084976196, 0.90196084976196, 0.90196084976196), + BorderSizePixel = 0, + Name = "right", + Parent = { 4 }, + Position = UDim2.new(0, 14, 0, 0), + Size = UDim2.new(0, 0, 0, 16), + }, + }, + { + 9, + "Frame", + { + AnchorPoint = Vector2.new(0.5, 0.5), + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + ClipsDescendants = true, + Name = "checkmark", + Parent = { 4 }, + Position = UDim2.new(0.5, 0, 0.5, 0), + Size = UDim2.new(0, 0, 0, 20), + }, + }, + { + 10, + "ImageLabel", + { + AnchorPoint = Vector2.new(0.5, 0.5), + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Image = "rbxassetid://6234266378", + Parent = { 9 }, + Position = UDim2.new(0.5, 0, 0.5, 0), + ScaleType = 3, + Size = UDim2.new(0, 15, 0, 11), + }, + }, + { + 11, + "ImageLabel", + { + AnchorPoint = Vector2.new(0.5, 0.5), + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Image = "rbxassetid://6401617475", + ImageColor3 = Color3.new(0.20784313976765, 0.69803923368454, 0.98431372642517), + Name = "checkmark2", + Parent = { 4 }, + Position = UDim2.new(0.5, 0, 0.5, 0), + Size = UDim2.new(0, 12, 0, 12), + Visible = false, + }, + }, + { + 12, + "ImageLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Image = "rbxassetid://6425281788", + ImageTransparency = 0.20000000298023, + Name = "middle", + Parent = { 4 }, + ScaleType = 2, + Size = UDim2.new(1, 0, 1, 0), + TileSize = UDim2.new(0, 2, 0, 2), + Visible = false, + }, + }, + { 13, "UICorner", { CornerRadius = UDim.new(0, 2), Parent = { 3 } } }, + }) local outline = checkbox.outline local filler = outline.filler local checkmark = filler.checkmark @@ -3771,7 +5020,7 @@ local function main() Filler = filler, Checkmark = checkmark, Checkmark2 = filler.checkmark2, - Middle = filler.middle + Middle = filler.middle, } checkbox.InputBegan:Connect(function(i) @@ -3783,11 +5032,14 @@ local function main() if Lib.CheckMouseInGui(checkbox) then if self.Style == 0 then - ripple(ripples_container, self.Disabled and self.Colors.Disabled or self.Colors.Primary) + ripple( + ripples_container, + self.Disabled and self.Colors.Disabled or self.Colors.Primary + ) end if not self.Disabled then - self:SetState(not self.Toggled,true) + self:SetState(not self.Toggled, true) else self:Paint() end @@ -3802,13 +5054,13 @@ local function main() self:Paint() end - funcs.Collapse = function(self,anim) + funcs.Collapse = function(self, anim) local guiElems = self.GuiElems if anim then - TweenSize(guiElems.Top, ud2o(14, 14), "In", "Quart", 4/15, true) - TweenSize(guiElems.Bottom, ud2o(14, 14), "In", "Quart", 4/15, true) - TweenSize(guiElems.Left, ud2o(14, 14), "In", "Quart", 4/15, true) - TweenSize(guiElems.Right, ud2o(14, 14), "In", "Quart", 4/15, true) + TweenSize(guiElems.Top, ud2o(14, 14), "In", "Quart", 4 / 15, true) + TweenSize(guiElems.Bottom, ud2o(14, 14), "In", "Quart", 4 / 15, true) + TweenSize(guiElems.Left, ud2o(14, 14), "In", "Quart", 4 / 15, true) + TweenSize(guiElems.Right, ud2o(14, 14), "In", "Quart", 4 / 15, true) else guiElems.Top.Size = ud2o(14, 14) guiElems.Bottom.Size = ud2o(14, 14) @@ -3817,13 +5069,13 @@ local function main() end end - funcs.Expand = function(self,anim) + funcs.Expand = function(self, anim) local guiElems = self.GuiElems if anim then - TweenSize(guiElems.Top, ud2o(14, 0), "InOut", "Quart", 4/15, true) - TweenSize(guiElems.Bottom, ud2o(14, 0), "InOut", "Quart", 4/15, true) - TweenSize(guiElems.Left, ud2o(0, 14), "InOut", "Quart", 4/15, true) - TweenSize(guiElems.Right, ud2o(0, 14), "InOut", "Quart", 4/15, true) + TweenSize(guiElems.Top, ud2o(14, 0), "InOut", "Quart", 4 / 15, true) + TweenSize(guiElems.Bottom, ud2o(14, 0), "InOut", "Quart", 4 / 15, true) + TweenSize(guiElems.Left, ud2o(0, 14), "InOut", "Quart", 4 / 15, true) + TweenSize(guiElems.Right, ud2o(0, 14), "InOut", "Quart", 4 / 15, true) else guiElems.Top.Size = ud2o(14, 0) guiElems.Bottom.Size = ud2o(14, 0) @@ -3837,7 +5089,9 @@ local function main() if self.Style == 0 then local color_base = self.Disabled and self.Colors.Disabled - guiElems.Outline.BackgroundColor3 = color_base or (self.Toggled and self.Colors.Primary) or self.Colors.Secondary + guiElems.Outline.BackgroundColor3 = color_base + or (self.Toggled and self.Colors.Primary) + or self.Colors.Secondary local walls_color = color_base or self.Colors.Primary guiElems.Top.BackgroundColor3 = walls_color guiElems.Bottom.BackgroundColor3 = walls_color @@ -3845,27 +5099,36 @@ local function main() guiElems.Right.BackgroundColor3 = walls_color else guiElems.Outline.BackgroundColor3 = self.Disabled and self.Colors.Disabled or self.Colors.Secondary - guiElems.Filler.BackgroundColor3 = self.Disabled and self.Colors.DisabledBackground or self.Colors.Background + guiElems.Filler.BackgroundColor3 = self.Disabled and self.Colors.DisabledBackground + or self.Colors.Background guiElems.Checkmark2.ImageColor3 = self.Disabled and self.Colors.DisabledCheck or self.Colors.Primary end end - funcs.SetState = function(self,val,anim) + funcs.SetState = function(self, val, anim) self.Toggled = val - if self.OutlineColorTween then self.OutlineColorTween:Cancel() end + if self.OutlineColorTween then + self.OutlineColorTween:Cancel() + end local setStateTime = tick() self.LastSetStateTime = setStateTime if self.Toggled then if self.Style == 0 then if anim then - self.OutlineColorTween = service.TweenService:Create(self.GuiElems.Outline, ti(4/15, Enum.EasingStyle.Circular, Enum.EasingDirection.Out), {BackgroundColor3 = self.Colors.Primary}) + self.OutlineColorTween = service.TweenService:Create( + self.GuiElems.Outline, + ti(4 / 15, Enum.EasingStyle.Circular, Enum.EasingDirection.Out), + { BackgroundColor3 = self.Colors.Primary } + ) self.OutlineColorTween:Play() delay(0.15, function() - if setStateTime ~= self.LastSetStateTime then return end + if setStateTime ~= self.LastSetStateTime then + return + end self:Paint() - TweenSize(self.GuiElems.Checkmark, ud2o(14, 20), "Out", "Bounce", 2/15, true) + TweenSize(self.GuiElems.Checkmark, ud2o(14, 20), "Out", "Bounce", 2 / 15, true) end) else self.GuiElems.Outline.BackgroundColor3 = self.Colors.Primary @@ -3881,12 +5144,18 @@ local function main() else if self.Style == 0 then if anim then - self.OutlineColorTween = service.TweenService:Create(self.GuiElems.Outline, ti(4/15, Enum.EasingStyle.Circular, Enum.EasingDirection.In), {BackgroundColor3 = self.Colors.Secondary}) + self.OutlineColorTween = service.TweenService:Create( + self.GuiElems.Outline, + ti(4 / 15, Enum.EasingStyle.Circular, Enum.EasingDirection.In), + { BackgroundColor3 = self.Colors.Secondary } + ) self.OutlineColorTween:Play() delay(0.15, function() - if setStateTime ~= self.LastSetStateTime then return end + if setStateTime ~= self.LastSetStateTime then + return + end self:Paint() - TweenSize(self.GuiElems.Checkmark, ud2o(0, 20), "Out", "Quad", 1/15, true) + TweenSize(self.GuiElems.Checkmark, ud2o(0, 20), "Out", "Quad", 1 / 15, true) end) else self.GuiElems.Outline.BackgroundColor3 = self.Colors.Secondary @@ -3902,7 +5171,7 @@ local function main() end end - local mt = {__index = funcs} + local mt = { __index = funcs } local function new(style) local obj = setmetatable({ @@ -3911,14 +5180,14 @@ local function main() OnInput = Lib.Signal.new(), Style = style or 0, Colors = { - Background = c3(36,36,36), - Primary = c3(49,176,230), - Secondary = c3(25,25,25), - Disabled = c3(64,64,64), - DisabledBackground = c3(52,52,52), - DisabledCheck = c3(80,80,80) - } - },mt) + Background = c3(36, 36, 36), + Primary = c3(49, 176, 230), + Secondary = c3(25, 25, 25), + Disabled = c3(64, 64, 64), + DisabledBackground = c3(52, 52, 52), + DisabledCheck = c3(80, 80, 80), + }, + }, mt) initGui(obj) return obj end @@ -3928,18 +5197,18 @@ local function main() Toggled = false, Disabled = false, Colors = { - Background = c3(36,36,36), - Primary = c3(49,176,230), - Secondary = c3(25,25,25), - Disabled = c3(64,64,64), - DisabledBackground = c3(52,52,52) - } - },mt) - initGui(obj,frame) + Background = c3(36, 36, 36), + Primary = c3(49, 176, 230), + Secondary = c3(25, 25, 25), + Disabled = c3(64, 64, 64), + DisabledBackground = c3(52, 52, 52), + }, + }, mt) + initGui(obj, frame) return obj end - return {new = new, fromFrame} + return { new = new, fromFrame = fromFrame } end)() Lib.BrickColorPicker = (function() @@ -3952,18 +5221,18 @@ local function main() local hexTriangleSize = 8 local bottomColors = { - Color3.fromRGB(17,17,17), - Color3.fromRGB(99,95,98), - Color3.fromRGB(163,162,165), - Color3.fromRGB(205,205,205), - Color3.fromRGB(223,223,222), - Color3.fromRGB(237,234,234), - Color3.fromRGB(27,42,53), - Color3.fromRGB(91,93,105), - Color3.fromRGB(159,161,172), - Color3.fromRGB(202,203,209), - Color3.fromRGB(231,231,236), - Color3.fromRGB(248,248,248) + Color3.fromRGB(17, 17, 17), + Color3.fromRGB(99, 95, 98), + Color3.fromRGB(163, 162, 165), + Color3.fromRGB(205, 205, 205), + Color3.fromRGB(223, 223, 222), + Color3.fromRGB(237, 234, 234), + Color3.fromRGB(27, 42, 53), + Color3.fromRGB(91, 93, 105), + Color3.fromRGB(159, 161, 172), + Color3.fromRGB(202, 203, 209), + Color3.fromRGB(231, 231, 236), + Color3.fromRGB(248, 248, 248), } local function isMouseInHexagon(hex) @@ -3971,8 +5240,11 @@ local function main() local relativeY = mouse.Y - hex.AbsolutePosition.Y if relativeX >= hexStartX and relativeX < hexStartX + hexSizeX then relativeX = relativeX - 4 - local relativeWidth = (13-math.min(relativeX,26 - relativeX))/13 - if relativeY >= hexTriangleStart + hexTriangleSize*relativeWidth and relativeY < hex.AbsoluteSize.Y - hexTriangleStart - hexTriangleSize*relativeWidth then + local relativeWidth = (13 - math.min(relativeX, 26 - relativeX)) / 13 + if + relativeY >= hexTriangleStart + hexTriangleSize * relativeWidth + and relativeY < hex.AbsoluteSize.Y - hexTriangleStart - hexTriangleSize * relativeWidth + then return true end end @@ -3980,7 +5252,7 @@ local function main() return false end - local function hexInput(self,hex,color) + local function hexInput(self, hex, color) hex.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 and isMouseInHexagon(hex) then self.OnSelect:Fire(color) @@ -3997,35 +5269,77 @@ local function main() local function createGui(self) local gui = create({ - {1,"ScreenGui",{Name="Dex_BrickColor",ResetOnSpawn=false}}, - {2,"Frame",{Active=true,BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BorderColor3=Color3.new(0.1294117718935,0.1294117718935,0.1294117718935),Parent={1},Position=UDim2.new(0.40000000596046,0,0.40000000596046,0),Size=UDim2.new(0,337,0,380),}}, - {3,"TextButton",{BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),BorderSizePixel=0,Font=3,Name="MoreColors",Parent={2},Position=UDim2.new(0,5,1,-30),Size=UDim2.new(1,-10,0,25),Text="More Colors",TextColor3=Color3.new(1,1,1),TextSize=14,}}, - {4,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Image="rbxassetid://1281023007",ImageColor3=Color3.new(0.33333334326744,0.33333334326744,0.49803924560547),Name="Hex",Parent={2},Size=UDim2.new(0,35,0,35),Visible=false,}}, + { 1, "ScreenGui", { Name = "Dex_BrickColor", ResetOnSpawn = false } }, + { + 2, + "Frame", + { + Active = true, + BackgroundColor3 = Color3.new(0.17647059261799, 0.17647059261799, 0.17647059261799), + BorderColor3 = Color3.new(0.1294117718935, 0.1294117718935, 0.1294117718935), + Parent = { 1 }, + Position = UDim2.new(0.40000000596046, 0, 0.40000000596046, 0), + Size = UDim2.new(0, 337, 0, 380), + }, + }, + { + 3, + "TextButton", + { + BackgroundColor3 = Color3.new(0.2352941185236, 0.2352941185236, 0.2352941185236), + BorderColor3 = Color3.new(0.21568627655506, 0.21568627655506, 0.21568627655506), + BorderSizePixel = 0, + Font = 3, + Name = "MoreColors", + Parent = { 2 }, + Position = UDim2.new(0, 5, 1, -30), + Size = UDim2.new(1, -10, 0, 25), + Text = "More Colors", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + }, + }, + { + 4, + "ImageLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Image = "rbxassetid://1281023007", + ImageColor3 = Color3.new(0.33333334326744, 0.33333334326744, 0.49803924560547), + Name = "Hex", + Parent = { 2 }, + Size = UDim2.new(0, 35, 0, 35), + Visible = false, + }, + }, }) local colorFrame = gui.Frame local hex = colorFrame.Hex - for row = 1,13 do - local columns = math.min(row,14-row)+6 - for column = 1,columns do + for row = 1, 13 do + local columns = math.min(row, 14 - row) + 6 + for column = 1, columns do local nextColor = BrickColor.palette(paletteCount).Color local newHex = hex:Clone() - newHex.Position = UDim2.new(0, (column-1)*25-(columns-7)*13+3*26 + 1, 0, (row-1)*23 + 4) + newHex.Position = + UDim2.new(0, (column - 1) * 25 - (columns - 7) * 13 + 3 * 26 + 1, 0, (row - 1) * 23 + 4) newHex.ImageColor3 = nextColor newHex.Visible = true - hexInput(self,newHex,nextColor) + hexInput(self, newHex, nextColor) newHex.Parent = colorFrame paletteCount = paletteCount + 1 end end - for column = 1,12 do + for column = 1, 12 do local nextColor = bottomColors[column] local newHex = hex:Clone() - newHex.Position = UDim2.new(0, (column-1)*25-(12-7)*13+3*26 + 3, 0, 308) + newHex.Position = UDim2.new(0, (column - 1) * 25 - (12 - 7) * 13 + 3 * 26 + 3, 0, 308) newHex.ImageColor3 = nextColor newHex.Visible = true - hexInput(self,newHex,nextColor) + hexInput(self, newHex, nextColor) newHex.Parent = colorFrame paletteCount = paletteCount + 1 end @@ -4038,29 +5352,37 @@ local function main() self.Gui = gui end - funcs.SetMoreColorsVisible = function(self,vis) + funcs.SetMoreColorsVisible = function(self, vis) local colorFrame = self.Gui.Frame - colorFrame.Size = UDim2.new(0,337,0,380 - (not vis and 33 or 0)) + colorFrame.Size = UDim2.new(0, 337, 0, 380 - (not vis and 33 or 0)) colorFrame.MoreColors.Visible = vis end - funcs.Show = function(self,x,y,prevColor) + funcs.Show = function(self, x, y, prevColor) self.PrevColor = prevColor or self.PrevColor local reverseY = false - local x,y = x or mouse.X, y or mouse.Y - local maxX,maxY = mouse.ViewSizeX,mouse.ViewSizeY + local x, y = x or mouse.X, y or mouse.Y + local maxX, maxY = mouse.ViewSizeX, mouse.ViewSizeY Lib.ShowGui(self.Gui) - local sizeX,sizeY = self.Gui.Frame.AbsoluteSize.X,self.Gui.Frame.AbsoluteSize.Y + local sizeX, sizeY = self.Gui.Frame.AbsoluteSize.X, self.Gui.Frame.AbsoluteSize.Y - if x + sizeX > maxX then x = self.ReverseX and x - sizeX or maxX - sizeX end - if y + sizeY > maxY then reverseY = true end + if x + sizeX > maxX then + x = self.ReverseX and x - sizeX or maxX - sizeX + end + if y + sizeY > maxY then + reverseY = true + end local closable = false - if self.CloseEvent then self.CloseEvent:Disconnect() end + if self.CloseEvent then + self.CloseEvent:Disconnect() + end self.CloseEvent = service.UserInputService.InputBegan:Connect(function(input) - if not closable or input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + if not closable or input.UserInputType ~= Enum.UserInputType.MouseButton1 then + return + end if not Lib.CheckMouseInGui(self.Gui.Frame) then self.CloseEvent:Disconnect() @@ -4073,7 +5395,7 @@ local function main() y = newY >= 0 and newY or 0 end - self.Gui.Frame.Position = UDim2.new(0,x,0,y) + self.Gui.Frame.Position = UDim2.new(0, x, 0, y) Lib.FastWait() closable = true @@ -4084,7 +5406,7 @@ local function main() self.OnCancel:Fire() end - local mt = {__index = funcs} + local mt = { __index = funcs } local function new() local obj = setmetatable({ @@ -4092,138 +5414,1378 @@ local function main() OnSelect = Lib.Signal.new(), OnCancel = Lib.Signal.new(), OnMoreColors = Lib.Signal.new(), - PrevColor = Color3.new(0,0,0) - },mt) + PrevColor = Color3.new(0, 0, 0), + }, mt) createGui(obj) return obj end - return {new = new} + return { new = new } end)() Lib.ColorPicker = (function() -- TODO: Convert to newer class model local funcs = {} local function new() - local newMt = setmetatable({},{}) + local newMt = setmetatable({}, {}) newMt.OnSelect = Lib.Signal.new() newMt.OnCancel = Lib.Signal.new() newMt.OnPreview = Lib.Signal.new() local guiContents = create({ - {1,"Frame",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BorderSizePixel=0,ClipsDescendants=true,Name="Content",Position=UDim2.new(0,0,0,20),Size=UDim2.new(1,0,1,-20),}}, - {2,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Name="BasicColors",Parent={1},Position=UDim2.new(0,5,0,5),Size=UDim2.new(0,180,0,200),}}, - {3,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={2},Position=UDim2.new(0,0,0,-5),Size=UDim2.new(1,0,0,26),Text="Basic Colors",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, - {4,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),Name="Blue",Parent={1},Position=UDim2.new(1,-63,0,255),Size=UDim2.new(0,52,0,16),}}, - {5,"TextBox",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),Font=3,Name="Input",Parent={4},Position=UDim2.new(0,2,0,0),Size=UDim2.new(0,50,0,16),Text="0",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, - {6,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="ArrowFrame",Parent={5},Position=UDim2.new(1,-16,0,0),Size=UDim2.new(0,16,1,0),}}, - {7,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Up",Parent={6},Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, - {8,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={7},Size=UDim2.new(0,16,0,8),}}, - {9,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={8},Position=UDim2.new(0,8,0,3),Size=UDim2.new(0,1,0,1),}}, - {10,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={8},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, - {11,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={8},Position=UDim2.new(0,6,0,5),Size=UDim2.new(0,5,0,1),}}, - {12,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Down",Parent={6},Position=UDim2.new(0,0,0,8),Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, - {13,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={12},Size=UDim2.new(0,16,0,8),}}, - {14,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={13},Position=UDim2.new(0,8,0,5),Size=UDim2.new(0,1,0,1),}}, - {15,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={13},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, - {16,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={13},Position=UDim2.new(0,6,0,3),Size=UDim2.new(0,5,0,1),}}, - {17,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={4},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Blue:",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, - {18,"Frame",{BackgroundColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),BorderSizePixel=0,ClipsDescendants=true,Name="ColorSpaceFrame",Parent={1},Position=UDim2.new(1,-261,0,4),Size=UDim2.new(0,222,0,202),}}, - {19,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),BorderSizePixel=0,Image="rbxassetid://1072518406",Name="ColorSpace",Parent={18},Position=UDim2.new(0,1,0,1),Size=UDim2.new(0,220,0,200),}}, - {20,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="Scope",Parent={19},Position=UDim2.new(0,210,0,190),Size=UDim2.new(0,20,0,20),}}, - {21,"Frame",{BackgroundColor3=Color3.new(0,0,0),BorderSizePixel=0,Name="Line",Parent={20},Position=UDim2.new(0,9,0,0),Size=UDim2.new(0,2,0,20),}}, - {22,"Frame",{BackgroundColor3=Color3.new(0,0,0),BorderSizePixel=0,Name="Line",Parent={20},Position=UDim2.new(0,0,0,9),Size=UDim2.new(0,20,0,2),}}, - {23,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Name="CustomColors",Parent={1},Position=UDim2.new(0,5,0,210),Size=UDim2.new(0,180,0,90),}}, - {24,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={23},Size=UDim2.new(1,0,0,20),Text="Custom Colors (RC = Set)",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, - {25,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),Name="Green",Parent={1},Position=UDim2.new(1,-63,0,233),Size=UDim2.new(0,52,0,16),}}, - {26,"TextBox",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),Font=3,Name="Input",Parent={25},Position=UDim2.new(0,2,0,0),Size=UDim2.new(0,50,0,16),Text="0",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, - {27,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="ArrowFrame",Parent={26},Position=UDim2.new(1,-16,0,0),Size=UDim2.new(0,16,1,0),}}, - {28,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Up",Parent={27},Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, - {29,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={28},Size=UDim2.new(0,16,0,8),}}, - {30,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={29},Position=UDim2.new(0,8,0,3),Size=UDim2.new(0,1,0,1),}}, - {31,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={29},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, - {32,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={29},Position=UDim2.new(0,6,0,5),Size=UDim2.new(0,5,0,1),}}, - {33,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Down",Parent={27},Position=UDim2.new(0,0,0,8),Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, - {34,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={33},Size=UDim2.new(0,16,0,8),}}, - {35,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={34},Position=UDim2.new(0,8,0,5),Size=UDim2.new(0,1,0,1),}}, - {36,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={34},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, - {37,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={34},Position=UDim2.new(0,6,0,3),Size=UDim2.new(0,5,0,1),}}, - {38,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={25},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Green:",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, - {39,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),Name="Hue",Parent={1},Position=UDim2.new(1,-180,0,211),Size=UDim2.new(0,52,0,16),}}, - {40,"TextBox",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),Font=3,Name="Input",Parent={39},Position=UDim2.new(0,2,0,0),Size=UDim2.new(0,50,0,16),Text="0",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, - {41,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="ArrowFrame",Parent={40},Position=UDim2.new(1,-16,0,0),Size=UDim2.new(0,16,1,0),}}, - {42,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Up",Parent={41},Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, - {43,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={42},Size=UDim2.new(0,16,0,8),}}, - {44,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={43},Position=UDim2.new(0,8,0,3),Size=UDim2.new(0,1,0,1),}}, - {45,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={43},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, - {46,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={43},Position=UDim2.new(0,6,0,5),Size=UDim2.new(0,5,0,1),}}, - {47,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Down",Parent={41},Position=UDim2.new(0,0,0,8),Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, - {48,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={47},Size=UDim2.new(0,16,0,8),}}, - {49,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={48},Position=UDim2.new(0,8,0,5),Size=UDim2.new(0,1,0,1),}}, - {50,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={48},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, - {51,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={48},Position=UDim2.new(0,6,0,3),Size=UDim2.new(0,5,0,1),}}, - {52,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={39},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Hue:",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, - {53,"Frame",{BackgroundColor3=Color3.new(1,1,1),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),Name="Preview",Parent={1},Position=UDim2.new(1,-260,0,211),Size=UDim2.new(0,35,1,-245),}}, - {54,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),Name="Red",Parent={1},Position=UDim2.new(1,-63,0,211),Size=UDim2.new(0,52,0,16),}}, - {55,"TextBox",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),Font=3,Name="Input",Parent={54},Position=UDim2.new(0,2,0,0),Size=UDim2.new(0,50,0,16),Text="0",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, - {56,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="ArrowFrame",Parent={55},Position=UDim2.new(1,-16,0,0),Size=UDim2.new(0,16,1,0),}}, - {57,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Up",Parent={56},Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, - {58,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={57},Size=UDim2.new(0,16,0,8),}}, - {59,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={58},Position=UDim2.new(0,8,0,3),Size=UDim2.new(0,1,0,1),}}, - {60,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={58},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, - {61,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={58},Position=UDim2.new(0,6,0,5),Size=UDim2.new(0,5,0,1),}}, - {62,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Down",Parent={56},Position=UDim2.new(0,0,0,8),Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, - {63,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={62},Size=UDim2.new(0,16,0,8),}}, - {64,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={63},Position=UDim2.new(0,8,0,5),Size=UDim2.new(0,1,0,1),}}, - {65,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={63},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, - {66,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={63},Position=UDim2.new(0,6,0,3),Size=UDim2.new(0,5,0,1),}}, - {67,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={54},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Red:",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, - {68,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),Name="Sat",Parent={1},Position=UDim2.new(1,-180,0,233),Size=UDim2.new(0,52,0,16),}}, - {69,"TextBox",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),Font=3,Name="Input",Parent={68},Position=UDim2.new(0,2,0,0),Size=UDim2.new(0,50,0,16),Text="0",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, - {70,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="ArrowFrame",Parent={69},Position=UDim2.new(1,-16,0,0),Size=UDim2.new(0,16,1,0),}}, - {71,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Up",Parent={70},Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, - {72,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={71},Size=UDim2.new(0,16,0,8),}}, - {73,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={72},Position=UDim2.new(0,8,0,3),Size=UDim2.new(0,1,0,1),}}, - {74,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={72},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, - {75,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={72},Position=UDim2.new(0,6,0,5),Size=UDim2.new(0,5,0,1),}}, - {76,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Down",Parent={70},Position=UDim2.new(0,0,0,8),Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, - {77,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={76},Size=UDim2.new(0,16,0,8),}}, - {78,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={77},Position=UDim2.new(0,8,0,5),Size=UDim2.new(0,1,0,1),}}, - {79,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={77},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, - {80,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={77},Position=UDim2.new(0,6,0,3),Size=UDim2.new(0,5,0,1),}}, - {81,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={68},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Sat:",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, - {82,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),Name="Val",Parent={1},Position=UDim2.new(1,-180,0,255),Size=UDim2.new(0,52,0,16),}}, - {83,"TextBox",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),Font=3,Name="Input",Parent={82},Position=UDim2.new(0,2,0,0),Size=UDim2.new(0,50,0,16),Text="255",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, - {84,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="ArrowFrame",Parent={83},Position=UDim2.new(1,-16,0,0),Size=UDim2.new(0,16,1,0),}}, - {85,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Up",Parent={84},Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, - {86,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={85},Size=UDim2.new(0,16,0,8),}}, - {87,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={86},Position=UDim2.new(0,8,0,3),Size=UDim2.new(0,1,0,1),}}, - {88,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={86},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, - {89,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={86},Position=UDim2.new(0,6,0,5),Size=UDim2.new(0,5,0,1),}}, - {90,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Font=3,Name="Down",Parent={84},Position=UDim2.new(0,0,0,8),Size=UDim2.new(1,0,0,8),Text="",TextSize=14,}}, - {91,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={90},Size=UDim2.new(0,16,0,8),}}, - {92,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={91},Position=UDim2.new(0,8,0,5),Size=UDim2.new(0,1,0,1),}}, - {93,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={91},Position=UDim2.new(0,7,0,4),Size=UDim2.new(0,3,0,1),}}, - {94,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={91},Position=UDim2.new(0,6,0,3),Size=UDim2.new(0,5,0,1),}}, - {95,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={82},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Val:",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, - {96,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),Font=3,Name="Cancel",Parent={1},Position=UDim2.new(1,-105,1,-28),Size=UDim2.new(0,100,0,25),Text="Cancel",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,}}, - {97,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),Font=3,Name="Ok",Parent={1},Position=UDim2.new(1,-210,1,-28),Size=UDim2.new(0,100,0,25),Text="OK",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,}}, - {98,"ImageLabel",{BackgroundColor3=Color3.new(1,1,1),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),Image="rbxassetid://1072518502",Name="ColorStrip",Parent={1},Position=UDim2.new(1,-30,0,5),Size=UDim2.new(0,13,0,200),}}, - {99,"Frame",{BackgroundColor3=Color3.new(0.3137255012989,0.3137255012989,0.3137255012989),BackgroundTransparency=1,BorderSizePixel=0,Name="ArrowFrame",Parent={1},Position=UDim2.new(1,-16,0,1),Size=UDim2.new(0,5,0,208),}}, - {100,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={99},Position=UDim2.new(0,-2,0,-4),Size=UDim2.new(0,8,0,16),}}, - {101,"Frame",{BackgroundColor3=Color3.new(0,0,0),BorderSizePixel=0,Parent={100},Position=UDim2.new(0,2,0,8),Size=UDim2.new(0,1,0,1),}}, - {102,"Frame",{BackgroundColor3=Color3.new(0,0,0),BorderSizePixel=0,Parent={100},Position=UDim2.new(0,3,0,7),Size=UDim2.new(0,1,0,3),}}, - {103,"Frame",{BackgroundColor3=Color3.new(0,0,0),BorderSizePixel=0,Parent={100},Position=UDim2.new(0,4,0,6),Size=UDim2.new(0,1,0,5),}}, - {104,"Frame",{BackgroundColor3=Color3.new(0,0,0),BorderSizePixel=0,Parent={100},Position=UDim2.new(0,5,0,5),Size=UDim2.new(0,1,0,7),}}, - {105,"Frame",{BackgroundColor3=Color3.new(0,0,0),BorderSizePixel=0,Parent={100},Position=UDim2.new(0,6,0,4),Size=UDim2.new(0,1,0,9),}}, + { + 1, + "Frame", + { + BackgroundColor3 = Color3.new(0.17647059261799, 0.17647059261799, 0.17647059261799), + BorderSizePixel = 0, + ClipsDescendants = true, + Name = "Content", + Position = UDim2.new(0, 0, 0, 20), + Size = UDim2.new(1, 0, 1, -20), + }, + }, + { + 2, + "Frame", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Name = "BasicColors", + Parent = { 1 }, + Position = UDim2.new(0, 5, 0, 5), + Size = UDim2.new(0, 180, 0, 200), + }, + }, + { + 3, + "TextLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Font = 3, + Name = "Title", + Parent = { 2 }, + Position = UDim2.new(0, 0, 0, -5), + Size = UDim2.new(1, 0, 0, 26), + Text = "Basic Colors", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + TextXAlignment = 0, + }, + }, + { + 4, + "Frame", + { + BackgroundColor3 = Color3.new(0.14901961386204, 0.14901961386204, 0.14901961386204), + BorderColor3 = Color3.new(0.12549020349979, 0.12549020349979, 0.12549020349979), + Name = "Blue", + Parent = { 1 }, + Position = UDim2.new(1, -63, 0, 255), + Size = UDim2.new(0, 52, 0, 16), + }, + }, + { + 5, + "TextBox", + { + BackgroundColor3 = Color3.new(0.25098040699959, 0.25098040699959, 0.25098040699959), + BackgroundTransparency = 1, + BorderColor3 = Color3.new(0.37647062540054, 0.37647062540054, 0.37647062540054), + Font = 3, + Name = "Input", + Parent = { 4 }, + Position = UDim2.new(0, 2, 0, 0), + Size = UDim2.new(0, 50, 0, 16), + Text = "0", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + TextXAlignment = 0, + }, + }, + { + 6, + "Frame", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Name = "ArrowFrame", + Parent = { 5 }, + Position = UDim2.new(1, -16, 0, 0), + Size = UDim2.new(0, 16, 1, 0), + }, + }, + { + 7, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "Up", + Parent = { 6 }, + Size = UDim2.new(1, 0, 0, 8), + Text = "", + TextSize = 14, + }, + }, + { + 8, + "Frame", + { + BackgroundTransparency = 1, + Name = "Arrow", + Parent = { 7 }, + Size = UDim2.new(0, 16, 0, 8), + }, + }, + { + 9, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 8 }, + Position = UDim2.new(0, 8, 0, 3), + Size = UDim2.new(0, 1, 0, 1), + }, + }, + { + 10, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 8 }, + Position = UDim2.new(0, 7, 0, 4), + Size = UDim2.new(0, 3, 0, 1), + }, + }, + { + 11, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 8 }, + Position = UDim2.new(0, 6, 0, 5), + Size = UDim2.new(0, 5, 0, 1), + }, + }, + { + 12, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "Down", + Parent = { 6 }, + Position = UDim2.new(0, 0, 0, 8), + Size = UDim2.new(1, 0, 0, 8), + Text = "", + TextSize = 14, + }, + }, + { + 13, + "Frame", + { + BackgroundTransparency = 1, + Name = "Arrow", + Parent = { 12 }, + Size = UDim2.new(0, 16, 0, 8), + }, + }, + { + 14, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 13 }, + Position = UDim2.new(0, 8, 0, 5), + Size = UDim2.new(0, 1, 0, 1), + }, + }, + { + 15, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 13 }, + Position = UDim2.new(0, 7, 0, 4), + Size = UDim2.new(0, 3, 0, 1), + }, + }, + { + 16, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 13 }, + Position = UDim2.new(0, 6, 0, 3), + Size = UDim2.new(0, 5, 0, 1), + }, + }, + { + 17, + "TextLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Font = 3, + Name = "Title", + Parent = { 4 }, + Position = UDim2.new(0, -40, 0, 0), + Size = UDim2.new(0, 34, 1, 0), + Text = "Blue:", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + TextXAlignment = 1, + }, + }, + { + 18, + "Frame", + { + BackgroundColor3 = Color3.new(0.21568627655506, 0.21568627655506, 0.21568627655506), + BorderSizePixel = 0, + ClipsDescendants = true, + Name = "ColorSpaceFrame", + Parent = { 1 }, + Position = UDim2.new(1, -261, 0, 4), + Size = UDim2.new(0, 222, 0, 202), + }, + }, + { + 19, + "ImageLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BorderColor3 = Color3.new(0.37647062540054, 0.37647062540054, 0.37647062540054), + BorderSizePixel = 0, + Image = "rbxassetid://1072518406", + Name = "ColorSpace", + Parent = { 18 }, + Position = UDim2.new(0, 1, 0, 1), + Size = UDim2.new(0, 220, 0, 200), + }, + }, + { + 20, + "Frame", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Name = "Scope", + Parent = { 19 }, + Position = UDim2.new(0, 210, 0, 190), + Size = UDim2.new(0, 20, 0, 20), + }, + }, + { + 21, + "Frame", + { + BackgroundColor3 = Color3.new(0, 0, 0), + BorderSizePixel = 0, + Name = "Line", + Parent = { 20 }, + Position = UDim2.new(0, 9, 0, 0), + Size = UDim2.new(0, 2, 0, 20), + }, + }, + { + 22, + "Frame", + { + BackgroundColor3 = Color3.new(0, 0, 0), + BorderSizePixel = 0, + Name = "Line", + Parent = { 20 }, + Position = UDim2.new(0, 0, 0, 9), + Size = UDim2.new(0, 20, 0, 2), + }, + }, + { + 23, + "Frame", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Name = "CustomColors", + Parent = { 1 }, + Position = UDim2.new(0, 5, 0, 210), + Size = UDim2.new(0, 180, 0, 90), + }, + }, + { + 24, + "TextLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Font = 3, + Name = "Title", + Parent = { 23 }, + Size = UDim2.new(1, 0, 0, 20), + Text = "Custom Colors (RC = Set)", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + TextXAlignment = 0, + }, + }, + { + 25, + "Frame", + { + BackgroundColor3 = Color3.new(0.14901961386204, 0.14901961386204, 0.14901961386204), + BorderColor3 = Color3.new(0.12549020349979, 0.12549020349979, 0.12549020349979), + Name = "Green", + Parent = { 1 }, + Position = UDim2.new(1, -63, 0, 233), + Size = UDim2.new(0, 52, 0, 16), + }, + }, + { + 26, + "TextBox", + { + BackgroundColor3 = Color3.new(0.25098040699959, 0.25098040699959, 0.25098040699959), + BackgroundTransparency = 1, + BorderColor3 = Color3.new(0.37647062540054, 0.37647062540054, 0.37647062540054), + Font = 3, + Name = "Input", + Parent = { 25 }, + Position = UDim2.new(0, 2, 0, 0), + Size = UDim2.new(0, 50, 0, 16), + Text = "0", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + TextXAlignment = 0, + }, + }, + { + 27, + "Frame", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Name = "ArrowFrame", + Parent = { 26 }, + Position = UDim2.new(1, -16, 0, 0), + Size = UDim2.new(0, 16, 1, 0), + }, + }, + { + 28, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "Up", + Parent = { 27 }, + Size = UDim2.new(1, 0, 0, 8), + Text = "", + TextSize = 14, + }, + }, + { + 29, + "Frame", + { + BackgroundTransparency = 1, + Name = "Arrow", + Parent = { 28 }, + Size = UDim2.new(0, 16, 0, 8), + }, + }, + { + 30, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 29 }, + Position = UDim2.new(0, 8, 0, 3), + Size = UDim2.new(0, 1, 0, 1), + }, + }, + { + 31, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 29 }, + Position = UDim2.new(0, 7, 0, 4), + Size = UDim2.new(0, 3, 0, 1), + }, + }, + { + 32, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 29 }, + Position = UDim2.new(0, 6, 0, 5), + Size = UDim2.new(0, 5, 0, 1), + }, + }, + { + 33, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "Down", + Parent = { 27 }, + Position = UDim2.new(0, 0, 0, 8), + Size = UDim2.new(1, 0, 0, 8), + Text = "", + TextSize = 14, + }, + }, + { + 34, + "Frame", + { + BackgroundTransparency = 1, + Name = "Arrow", + Parent = { 33 }, + Size = UDim2.new(0, 16, 0, 8), + }, + }, + { + 35, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 34 }, + Position = UDim2.new(0, 8, 0, 5), + Size = UDim2.new(0, 1, 0, 1), + }, + }, + { + 36, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 34 }, + Position = UDim2.new(0, 7, 0, 4), + Size = UDim2.new(0, 3, 0, 1), + }, + }, + { + 37, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 34 }, + Position = UDim2.new(0, 6, 0, 3), + Size = UDim2.new(0, 5, 0, 1), + }, + }, + { + 38, + "TextLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Font = 3, + Name = "Title", + Parent = { 25 }, + Position = UDim2.new(0, -40, 0, 0), + Size = UDim2.new(0, 34, 1, 0), + Text = "Green:", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + TextXAlignment = 1, + }, + }, + { + 39, + "Frame", + { + BackgroundColor3 = Color3.new(0.14901961386204, 0.14901961386204, 0.14901961386204), + BorderColor3 = Color3.new(0.12549020349979, 0.12549020349979, 0.12549020349979), + Name = "Hue", + Parent = { 1 }, + Position = UDim2.new(1, -180, 0, 211), + Size = UDim2.new(0, 52, 0, 16), + }, + }, + { + 40, + "TextBox", + { + BackgroundColor3 = Color3.new(0.25098040699959, 0.25098040699959, 0.25098040699959), + BackgroundTransparency = 1, + BorderColor3 = Color3.new(0.37647062540054, 0.37647062540054, 0.37647062540054), + Font = 3, + Name = "Input", + Parent = { 39 }, + Position = UDim2.new(0, 2, 0, 0), + Size = UDim2.new(0, 50, 0, 16), + Text = "0", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + TextXAlignment = 0, + }, + }, + { + 41, + "Frame", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Name = "ArrowFrame", + Parent = { 40 }, + Position = UDim2.new(1, -16, 0, 0), + Size = UDim2.new(0, 16, 1, 0), + }, + }, + { + 42, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "Up", + Parent = { 41 }, + Size = UDim2.new(1, 0, 0, 8), + Text = "", + TextSize = 14, + }, + }, + { + 43, + "Frame", + { + BackgroundTransparency = 1, + Name = "Arrow", + Parent = { 42 }, + Size = UDim2.new(0, 16, 0, 8), + }, + }, + { + 44, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 43 }, + Position = UDim2.new(0, 8, 0, 3), + Size = UDim2.new(0, 1, 0, 1), + }, + }, + { + 45, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 43 }, + Position = UDim2.new(0, 7, 0, 4), + Size = UDim2.new(0, 3, 0, 1), + }, + }, + { + 46, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 43 }, + Position = UDim2.new(0, 6, 0, 5), + Size = UDim2.new(0, 5, 0, 1), + }, + }, + { + 47, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "Down", + Parent = { 41 }, + Position = UDim2.new(0, 0, 0, 8), + Size = UDim2.new(1, 0, 0, 8), + Text = "", + TextSize = 14, + }, + }, + { + 48, + "Frame", + { + BackgroundTransparency = 1, + Name = "Arrow", + Parent = { 47 }, + Size = UDim2.new(0, 16, 0, 8), + }, + }, + { + 49, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 48 }, + Position = UDim2.new(0, 8, 0, 5), + Size = UDim2.new(0, 1, 0, 1), + }, + }, + { + 50, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 48 }, + Position = UDim2.new(0, 7, 0, 4), + Size = UDim2.new(0, 3, 0, 1), + }, + }, + { + 51, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 48 }, + Position = UDim2.new(0, 6, 0, 3), + Size = UDim2.new(0, 5, 0, 1), + }, + }, + { + 52, + "TextLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Font = 3, + Name = "Title", + Parent = { 39 }, + Position = UDim2.new(0, -40, 0, 0), + Size = UDim2.new(0, 34, 1, 0), + Text = "Hue:", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + TextXAlignment = 1, + }, + }, + { + 53, + "Frame", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BorderColor3 = Color3.new(0.21568627655506, 0.21568627655506, 0.21568627655506), + Name = "Preview", + Parent = { 1 }, + Position = UDim2.new(1, -260, 0, 211), + Size = UDim2.new(0, 35, 1, -245), + }, + }, + { + 54, + "Frame", + { + BackgroundColor3 = Color3.new(0.14901961386204, 0.14901961386204, 0.14901961386204), + BorderColor3 = Color3.new(0.12549020349979, 0.12549020349979, 0.12549020349979), + Name = "Red", + Parent = { 1 }, + Position = UDim2.new(1, -63, 0, 211), + Size = UDim2.new(0, 52, 0, 16), + }, + }, + { + 55, + "TextBox", + { + BackgroundColor3 = Color3.new(0.25098040699959, 0.25098040699959, 0.25098040699959), + BackgroundTransparency = 1, + BorderColor3 = Color3.new(0.37647062540054, 0.37647062540054, 0.37647062540054), + Font = 3, + Name = "Input", + Parent = { 54 }, + Position = UDim2.new(0, 2, 0, 0), + Size = UDim2.new(0, 50, 0, 16), + Text = "0", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + TextXAlignment = 0, + }, + }, + { + 56, + "Frame", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Name = "ArrowFrame", + Parent = { 55 }, + Position = UDim2.new(1, -16, 0, 0), + Size = UDim2.new(0, 16, 1, 0), + }, + }, + { + 57, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "Up", + Parent = { 56 }, + Size = UDim2.new(1, 0, 0, 8), + Text = "", + TextSize = 14, + }, + }, + { + 58, + "Frame", + { + BackgroundTransparency = 1, + Name = "Arrow", + Parent = { 57 }, + Size = UDim2.new(0, 16, 0, 8), + }, + }, + { + 59, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 58 }, + Position = UDim2.new(0, 8, 0, 3), + Size = UDim2.new(0, 1, 0, 1), + }, + }, + { + 60, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 58 }, + Position = UDim2.new(0, 7, 0, 4), + Size = UDim2.new(0, 3, 0, 1), + }, + }, + { + 61, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 58 }, + Position = UDim2.new(0, 6, 0, 5), + Size = UDim2.new(0, 5, 0, 1), + }, + }, + { + 62, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "Down", + Parent = { 56 }, + Position = UDim2.new(0, 0, 0, 8), + Size = UDim2.new(1, 0, 0, 8), + Text = "", + TextSize = 14, + }, + }, + { + 63, + "Frame", + { + BackgroundTransparency = 1, + Name = "Arrow", + Parent = { 62 }, + Size = UDim2.new(0, 16, 0, 8), + }, + }, + { + 64, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 63 }, + Position = UDim2.new(0, 8, 0, 5), + Size = UDim2.new(0, 1, 0, 1), + }, + }, + { + 65, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 63 }, + Position = UDim2.new(0, 7, 0, 4), + Size = UDim2.new(0, 3, 0, 1), + }, + }, + { + 66, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 63 }, + Position = UDim2.new(0, 6, 0, 3), + Size = UDim2.new(0, 5, 0, 1), + }, + }, + { + 67, + "TextLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Font = 3, + Name = "Title", + Parent = { 54 }, + Position = UDim2.new(0, -40, 0, 0), + Size = UDim2.new(0, 34, 1, 0), + Text = "Red:", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + TextXAlignment = 1, + }, + }, + { + 68, + "Frame", + { + BackgroundColor3 = Color3.new(0.14901961386204, 0.14901961386204, 0.14901961386204), + BorderColor3 = Color3.new(0.12549020349979, 0.12549020349979, 0.12549020349979), + Name = "Sat", + Parent = { 1 }, + Position = UDim2.new(1, -180, 0, 233), + Size = UDim2.new(0, 52, 0, 16), + }, + }, + { + 69, + "TextBox", + { + BackgroundColor3 = Color3.new(0.25098040699959, 0.25098040699959, 0.25098040699959), + BackgroundTransparency = 1, + BorderColor3 = Color3.new(0.37647062540054, 0.37647062540054, 0.37647062540054), + Font = 3, + Name = "Input", + Parent = { 68 }, + Position = UDim2.new(0, 2, 0, 0), + Size = UDim2.new(0, 50, 0, 16), + Text = "0", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + TextXAlignment = 0, + }, + }, + { + 70, + "Frame", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Name = "ArrowFrame", + Parent = { 69 }, + Position = UDim2.new(1, -16, 0, 0), + Size = UDim2.new(0, 16, 1, 0), + }, + }, + { + 71, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "Up", + Parent = { 70 }, + Size = UDim2.new(1, 0, 0, 8), + Text = "", + TextSize = 14, + }, + }, + { + 72, + "Frame", + { + BackgroundTransparency = 1, + Name = "Arrow", + Parent = { 71 }, + Size = UDim2.new(0, 16, 0, 8), + }, + }, + { + 73, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 72 }, + Position = UDim2.new(0, 8, 0, 3), + Size = UDim2.new(0, 1, 0, 1), + }, + }, + { + 74, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 72 }, + Position = UDim2.new(0, 7, 0, 4), + Size = UDim2.new(0, 3, 0, 1), + }, + }, + { + 75, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 72 }, + Position = UDim2.new(0, 6, 0, 5), + Size = UDim2.new(0, 5, 0, 1), + }, + }, + { + 76, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "Down", + Parent = { 70 }, + Position = UDim2.new(0, 0, 0, 8), + Size = UDim2.new(1, 0, 0, 8), + Text = "", + TextSize = 14, + }, + }, + { + 77, + "Frame", + { + BackgroundTransparency = 1, + Name = "Arrow", + Parent = { 76 }, + Size = UDim2.new(0, 16, 0, 8), + }, + }, + { + 78, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 77 }, + Position = UDim2.new(0, 8, 0, 5), + Size = UDim2.new(0, 1, 0, 1), + }, + }, + { + 79, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 77 }, + Position = UDim2.new(0, 7, 0, 4), + Size = UDim2.new(0, 3, 0, 1), + }, + }, + { + 80, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 77 }, + Position = UDim2.new(0, 6, 0, 3), + Size = UDim2.new(0, 5, 0, 1), + }, + }, + { + 81, + "TextLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Font = 3, + Name = "Title", + Parent = { 68 }, + Position = UDim2.new(0, -40, 0, 0), + Size = UDim2.new(0, 34, 1, 0), + Text = "Sat:", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + TextXAlignment = 1, + }, + }, + { + 82, + "Frame", + { + BackgroundColor3 = Color3.new(0.14901961386204, 0.14901961386204, 0.14901961386204), + BorderColor3 = Color3.new(0.12549020349979, 0.12549020349979, 0.12549020349979), + Name = "Val", + Parent = { 1 }, + Position = UDim2.new(1, -180, 0, 255), + Size = UDim2.new(0, 52, 0, 16), + }, + }, + { + 83, + "TextBox", + { + BackgroundColor3 = Color3.new(0.25098040699959, 0.25098040699959, 0.25098040699959), + BackgroundTransparency = 1, + BorderColor3 = Color3.new(0.37647062540054, 0.37647062540054, 0.37647062540054), + Font = 3, + Name = "Input", + Parent = { 82 }, + Position = UDim2.new(0, 2, 0, 0), + Size = UDim2.new(0, 50, 0, 16), + Text = "255", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + TextXAlignment = 0, + }, + }, + { + 84, + "Frame", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Name = "ArrowFrame", + Parent = { 83 }, + Position = UDim2.new(1, -16, 0, 0), + Size = UDim2.new(0, 16, 1, 0), + }, + }, + { + 85, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "Up", + Parent = { 84 }, + Size = UDim2.new(1, 0, 0, 8), + Text = "", + TextSize = 14, + }, + }, + { + 86, + "Frame", + { + BackgroundTransparency = 1, + Name = "Arrow", + Parent = { 85 }, + Size = UDim2.new(0, 16, 0, 8), + }, + }, + { + 87, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 86 }, + Position = UDim2.new(0, 8, 0, 3), + Size = UDim2.new(0, 1, 0, 1), + }, + }, + { + 88, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 86 }, + Position = UDim2.new(0, 7, 0, 4), + Size = UDim2.new(0, 3, 0, 1), + }, + }, + { + 89, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 86 }, + Position = UDim2.new(0, 6, 0, 5), + Size = UDim2.new(0, 5, 0, 1), + }, + }, + { + 90, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Font = 3, + Name = "Down", + Parent = { 84 }, + Position = UDim2.new(0, 0, 0, 8), + Size = UDim2.new(1, 0, 0, 8), + Text = "", + TextSize = 14, + }, + }, + { + 91, + "Frame", + { + BackgroundTransparency = 1, + Name = "Arrow", + Parent = { 90 }, + Size = UDim2.new(0, 16, 0, 8), + }, + }, + { + 92, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 91 }, + Position = UDim2.new(0, 8, 0, 5), + Size = UDim2.new(0, 1, 0, 1), + }, + }, + { + 93, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 91 }, + Position = UDim2.new(0, 7, 0, 4), + Size = UDim2.new(0, 3, 0, 1), + }, + }, + { + 94, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 91 }, + Position = UDim2.new(0, 6, 0, 3), + Size = UDim2.new(0, 5, 0, 1), + }, + }, + { + 95, + "TextLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Font = 3, + Name = "Title", + Parent = { 82 }, + Position = UDim2.new(0, -40, 0, 0), + Size = UDim2.new(0, 34, 1, 0), + Text = "Val:", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + TextXAlignment = 1, + }, + }, + { + 96, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.2352941185236, 0.2352941185236, 0.2352941185236), + BorderColor3 = Color3.new(0.21568627655506, 0.21568627655506, 0.21568627655506), + Font = 3, + Name = "Cancel", + Parent = { 1 }, + Position = UDim2.new(1, -105, 1, -28), + Size = UDim2.new(0, 100, 0, 25), + Text = "Cancel", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + }, + }, + { + 97, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.2352941185236, 0.2352941185236, 0.2352941185236), + BorderColor3 = Color3.new(0.21568627655506, 0.21568627655506, 0.21568627655506), + Font = 3, + Name = "Ok", + Parent = { 1 }, + Position = UDim2.new(1, -210, 1, -28), + Size = UDim2.new(0, 100, 0, 25), + Text = "OK", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + }, + }, + { + 98, + "ImageLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BorderColor3 = Color3.new(0.21568627655506, 0.21568627655506, 0.21568627655506), + Image = "rbxassetid://1072518502", + Name = "ColorStrip", + Parent = { 1 }, + Position = UDim2.new(1, -30, 0, 5), + Size = UDim2.new(0, 13, 0, 200), + }, + }, + { + 99, + "Frame", + { + BackgroundColor3 = Color3.new(0.3137255012989, 0.3137255012989, 0.3137255012989), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Name = "ArrowFrame", + Parent = { 1 }, + Position = UDim2.new(1, -16, 0, 1), + Size = UDim2.new(0, 5, 0, 208), + }, + }, + { + 100, + "Frame", + { + BackgroundTransparency = 1, + Name = "Arrow", + Parent = { 99 }, + Position = UDim2.new(0, -2, 0, -4), + Size = UDim2.new(0, 8, 0, 16), + }, + }, + { + 101, + "Frame", + { + BackgroundColor3 = Color3.new(0, 0, 0), + BorderSizePixel = 0, + Parent = { 100 }, + Position = UDim2.new(0, 2, 0, 8), + Size = UDim2.new(0, 1, 0, 1), + }, + }, + { + 102, + "Frame", + { + BackgroundColor3 = Color3.new(0, 0, 0), + BorderSizePixel = 0, + Parent = { 100 }, + Position = UDim2.new(0, 3, 0, 7), + Size = UDim2.new(0, 1, 0, 3), + }, + }, + { + 103, + "Frame", + { + BackgroundColor3 = Color3.new(0, 0, 0), + BorderSizePixel = 0, + Parent = { 100 }, + Position = UDim2.new(0, 4, 0, 6), + Size = UDim2.new(0, 1, 0, 5), + }, + }, + { + 104, + "Frame", + { + BackgroundColor3 = Color3.new(0, 0, 0), + BorderSizePixel = 0, + Parent = { 100 }, + Position = UDim2.new(0, 5, 0, 5), + Size = UDim2.new(0, 1, 0, 7), + }, + }, + { + 105, + "Frame", + { + BackgroundColor3 = Color3.new(0, 0, 0), + BorderSizePixel = 0, + Parent = { 100 }, + Position = UDim2.new(0, 6, 0, 4), + Size = UDim2.new(0, 1, 0, 9), + }, + }, }) local window = Lib.Window.new() window.Resizable = false window.Alignable = false window:SetTitle("Color Picker") - window:Resize(450,330) - for i,v in pairs(guiContents:GetChildren()) do + window:Resize(450, 330) + for i, v in pairs(guiContents:GetChildren()) do v.Parent = window.GuiElems.Content end newMt.Window = window @@ -4254,33 +6816,82 @@ local function main() local user = game:GetService("UserInputService") local mouse = game:GetService("Players").LocalPlayer:GetMouse() - local hue,sat,val = 0,0,1 - local red,green,blue = 1,1,1 - local chosenColor = Color3.new(0,0,0) - - local basicColors = {Color3.new(0,0,0),Color3.new(0.66666668653488,0,0),Color3.new(0,0.33333334326744,0),Color3.new(0.66666668653488,0.33333334326744,0),Color3.new(0,0.66666668653488,0),Color3.new(0.66666668653488,0.66666668653488,0),Color3.new(0,1,0),Color3.new(0.66666668653488,1,0),Color3.new(0,0,0.49803924560547),Color3.new(0.66666668653488,0,0.49803924560547),Color3.new(0,0.33333334326744,0.49803924560547),Color3.new(0.66666668653488,0.33333334326744,0.49803924560547),Color3.new(0,0.66666668653488,0.49803924560547),Color3.new(0.66666668653488,0.66666668653488,0.49803924560547),Color3.new(0,1,0.49803924560547),Color3.new(0.66666668653488,1,0.49803924560547),Color3.new(0,0,1),Color3.new(0.66666668653488,0,1),Color3.new(0,0.33333334326744,1),Color3.new(0.66666668653488,0.33333334326744,1),Color3.new(0,0.66666668653488,1),Color3.new(0.66666668653488,0.66666668653488,1),Color3.new(0,1,1),Color3.new(0.66666668653488,1,1),Color3.new(0.33333334326744,0,0),Color3.new(1,0,0),Color3.new(0.33333334326744,0.33333334326744,0),Color3.new(1,0.33333334326744,0),Color3.new(0.33333334326744,0.66666668653488,0),Color3.new(1,0.66666668653488,0),Color3.new(0.33333334326744,1,0),Color3.new(1,1,0),Color3.new(0.33333334326744,0,0.49803924560547),Color3.new(1,0,0.49803924560547),Color3.new(0.33333334326744,0.33333334326744,0.49803924560547),Color3.new(1,0.33333334326744,0.49803924560547),Color3.new(0.33333334326744,0.66666668653488,0.49803924560547),Color3.new(1,0.66666668653488,0.49803924560547),Color3.new(0.33333334326744,1,0.49803924560547),Color3.new(1,1,0.49803924560547),Color3.new(0.33333334326744,0,1),Color3.new(1,0,1),Color3.new(0.33333334326744,0.33333334326744,1),Color3.new(1,0.33333334326744,1),Color3.new(0.33333334326744,0.66666668653488,1),Color3.new(1,0.66666668653488,1),Color3.new(0.33333334326744,1,1),Color3.new(1,1,1)} + local hue, sat, val = 0, 0, 1 + local red, green, blue = 1, 1, 1 + local chosenColor = Color3.new(0, 0, 0) + + local basicColors = { + Color3.new(0, 0, 0), + Color3.new(0.66666668653488, 0, 0), + Color3.new(0, 0.33333334326744, 0), + Color3.new(0.66666668653488, 0.33333334326744, 0), + Color3.new(0, 0.66666668653488, 0), + Color3.new(0.66666668653488, 0.66666668653488, 0), + Color3.new(0, 1, 0), + Color3.new(0.66666668653488, 1, 0), + Color3.new(0, 0, 0.49803924560547), + Color3.new(0.66666668653488, 0, 0.49803924560547), + Color3.new(0, 0.33333334326744, 0.49803924560547), + Color3.new(0.66666668653488, 0.33333334326744, 0.49803924560547), + Color3.new(0, 0.66666668653488, 0.49803924560547), + Color3.new(0.66666668653488, 0.66666668653488, 0.49803924560547), + Color3.new(0, 1, 0.49803924560547), + Color3.new(0.66666668653488, 1, 0.49803924560547), + Color3.new(0, 0, 1), + Color3.new(0.66666668653488, 0, 1), + Color3.new(0, 0.33333334326744, 1), + Color3.new(0.66666668653488, 0.33333334326744, 1), + Color3.new(0, 0.66666668653488, 1), + Color3.new(0.66666668653488, 0.66666668653488, 1), + Color3.new(0, 1, 1), + Color3.new(0.66666668653488, 1, 1), + Color3.new(0.33333334326744, 0, 0), + Color3.new(1, 0, 0), + Color3.new(0.33333334326744, 0.33333334326744, 0), + Color3.new(1, 0.33333334326744, 0), + Color3.new(0.33333334326744, 0.66666668653488, 0), + Color3.new(1, 0.66666668653488, 0), + Color3.new(0.33333334326744, 1, 0), + Color3.new(1, 1, 0), + Color3.new(0.33333334326744, 0, 0.49803924560547), + Color3.new(1, 0, 0.49803924560547), + Color3.new(0.33333334326744, 0.33333334326744, 0.49803924560547), + Color3.new(1, 0.33333334326744, 0.49803924560547), + Color3.new(0.33333334326744, 0.66666668653488, 0.49803924560547), + Color3.new(1, 0.66666668653488, 0.49803924560547), + Color3.new(0.33333334326744, 1, 0.49803924560547), + Color3.new(1, 1, 0.49803924560547), + Color3.new(0.33333334326744, 0, 1), + Color3.new(1, 0, 1), + Color3.new(0.33333334326744, 0.33333334326744, 1), + Color3.new(1, 0.33333334326744, 1), + Color3.new(0.33333334326744, 0.66666668653488, 1), + Color3.new(1, 0.66666668653488, 1), + Color3.new(0.33333334326744, 1, 1), + Color3.new(1, 1, 1), + } local customColors = {} local function updateColor(noupdate) - local relativeX,relativeY,relativeStripY = 219 - hue*219, 199 - sat*199, 199 - val*199 - local hsvColor = Color3.fromHSV(hue,sat,val) + local relativeX, relativeY, relativeStripY = 219 - hue * 219, 199 - sat * 199, 199 - val * 199 + local hsvColor = Color3.fromHSV(hue, sat, val) if noupdate == 2 or not noupdate then - hueInput.Text = tostring(math.ceil(359*hue)) - satInput.Text = tostring(math.ceil(255*sat)) - valInput.Text = tostring(math.floor(255*val)) + hueInput.Text = tostring(math.ceil(359 * hue)) + satInput.Text = tostring(math.ceil(255 * sat)) + valInput.Text = tostring(math.floor(255 * val)) end if noupdate == 1 or not noupdate then - redInput.Text = tostring(math.floor(255*red)) - greenInput.Text = tostring(math.floor(255*green)) - blueInput.Text = tostring(math.floor(255*blue)) + redInput.Text = tostring(math.floor(255 * red)) + greenInput.Text = tostring(math.floor(255 * green)) + blueInput.Text = tostring(math.floor(255 * blue)) end - chosenColor = Color3.new(red,green,blue) + chosenColor = Color3.new(red, green, blue) - colorScope.Position = UDim2.new(0,relativeX-9,0,relativeY-9) - colorStrip.ImageColor3 = Color3.fromHSV(hue,sat,1) - colorArrow.Position = UDim2.new(0,-2,0,relativeStripY-4) + colorScope.Position = UDim2.new(0, relativeX - 9, 0, relativeY - 9) + colorStrip.ImageColor3 = Color3.fromHSV(hue, sat, 1) + colorArrow.Position = UDim2.new(0, -2, 0, relativeStripY - 4) previewFrame.BackgroundColor3 = chosenColor newMt.Color = chosenColor @@ -4291,14 +6902,22 @@ local function main() local relativeX = mouse.X - colorSpace.AbsolutePosition.X local relativeY = mouse.Y - colorSpace.AbsolutePosition.Y - if relativeX < 0 then relativeX = 0 elseif relativeX > 219 then relativeX = 219 end - if relativeY < 0 then relativeY = 0 elseif relativeY > 199 then relativeY = 199 end + if relativeX < 0 then + relativeX = 0 + elseif relativeX > 219 then + relativeX = 219 + end + if relativeY < 0 then + relativeY = 0 + elseif relativeY > 199 then + relativeY = 199 + end - hue = (219 - relativeX)/219 - sat = (199 - relativeY)/199 + hue = (219 - relativeX) / 219 + sat = (199 - relativeY) / 199 - local hsvColor = Color3.fromHSV(hue,sat,val) - red,green,blue = hsvColor.r,hsvColor.g,hsvColor.b + local hsvColor = Color3.fromHSV(hue, sat, val) + red, green, blue = hsvColor.r, hsvColor.g, hsvColor.b updateColor() end @@ -4306,31 +6925,39 @@ local function main() local function colorStripInput() local relativeY = mouse.Y - colorStrip.AbsolutePosition.Y - if relativeY < 0 then relativeY = 0 elseif relativeY > 199 then relativeY = 199 end + if relativeY < 0 then + relativeY = 0 + elseif relativeY > 199 then + relativeY = 199 + end - val = (199 - relativeY)/199 + val = (199 - relativeY) / 199 - local hsvColor = Color3.fromHSV(hue,sat,val) - red,green,blue = hsvColor.r,hsvColor.g,hsvColor.b + local hsvColor = Color3.fromHSV(hue, sat, val) + red, green, blue = hsvColor.r, hsvColor.g, hsvColor.b updateColor() end - local function hookButtons(frame,func) + local function hookButtons(frame, func) frame.ArrowFrame.Up.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then frame.ArrowFrame.Up.BackgroundTransparency = 0.5 elseif input.UserInputType == Enum.UserInputType.MouseButton1 then - local releaseEvent,runEvent + local releaseEvent, runEvent local startTime = tick() local pressing = true local startNum = tonumber(frame.Text) - if not startNum then return end + if not startNum then + return + end releaseEvent = user.InputEnded:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + if input.UserInputType ~= Enum.UserInputType.MouseButton1 then + return + end releaseEvent:Disconnect() pressing = false end) @@ -4338,7 +6965,7 @@ local function main() startNum = startNum + 1 func(startNum) while pressing do - if tick()-startTime > 0.3 then + if tick() - startTime > 0.3 then startNum = startNum + 1 func(startNum) end @@ -4357,16 +6984,20 @@ local function main() if input.UserInputType == Enum.UserInputType.MouseMovement then frame.ArrowFrame.Down.BackgroundTransparency = 0.5 elseif input.UserInputType == Enum.UserInputType.MouseButton1 then - local releaseEvent,runEvent + local releaseEvent, runEvent local startTime = tick() local pressing = true local startNum = tonumber(frame.Text) - if not startNum then return end + if not startNum then + return + end releaseEvent = user.InputEnded:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + if input.UserInputType ~= Enum.UserInputType.MouseButton1 then + return + end releaseEvent:Disconnect() pressing = false end) @@ -4374,7 +7005,7 @@ local function main() startNum = startNum - 1 func(startNum) while pressing do - if tick()-startTime > 0.3 then + if tick() - startTime > 0.3 then startNum = startNum - 1 func(startNum) end @@ -4392,10 +7023,12 @@ local function main() colorSpace.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then - local releaseEvent,mouseEvent + local releaseEvent, mouseEvent releaseEvent = user.InputEnded:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + if input.UserInputType ~= Enum.UserInputType.MouseButton1 then + return + end releaseEvent:Disconnect() mouseEvent:Disconnect() end) @@ -4412,10 +7045,12 @@ local function main() colorStrip.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then - local releaseEvent,mouseEvent + local releaseEvent, mouseEvent releaseEvent = user.InputEnded:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + if input.UserInputType ~= Enum.UserInputType.MouseButton1 then + return + end releaseEvent:Disconnect() mouseEvent:Disconnect() end) @@ -4433,113 +7068,134 @@ local function main() local function updateHue(str) local num = tonumber(str) if num then - hue = math.clamp(math.floor(num),0,359)/359 - local hsvColor = Color3.fromHSV(hue,sat,val) - red,green,blue = hsvColor.r,hsvColor.g,hsvColor.b - hueInput.Text = tostring(hue*359) + hue = math.clamp(math.floor(num), 0, 359) / 359 + local hsvColor = Color3.fromHSV(hue, sat, val) + red, green, blue = hsvColor.r, hsvColor.g, hsvColor.b + hueInput.Text = tostring(hue * 359) updateColor(1) end end - hueInput.FocusLost:Connect(function() updateHue(hueInput.Text) end) hookButtons(hueInput,updateHue) + hueInput.FocusLost:Connect(function() + updateHue(hueInput.Text) + end) + hookButtons(hueInput, updateHue) local function updateSat(str) local num = tonumber(str) if num then - sat = math.clamp(math.floor(num),0,255)/255 - local hsvColor = Color3.fromHSV(hue,sat,val) - red,green,blue = hsvColor.r,hsvColor.g,hsvColor.b - satInput.Text = tostring(sat*255) + sat = math.clamp(math.floor(num), 0, 255) / 255 + local hsvColor = Color3.fromHSV(hue, sat, val) + red, green, blue = hsvColor.r, hsvColor.g, hsvColor.b + satInput.Text = tostring(sat * 255) updateColor(1) end end - satInput.FocusLost:Connect(function() updateSat(satInput.Text) end) hookButtons(satInput,updateSat) + satInput.FocusLost:Connect(function() + updateSat(satInput.Text) + end) + hookButtons(satInput, updateSat) local function updateVal(str) local num = tonumber(str) if num then - val = math.clamp(math.floor(num),0,255)/255 - local hsvColor = Color3.fromHSV(hue,sat,val) - red,green,blue = hsvColor.r,hsvColor.g,hsvColor.b - valInput.Text = tostring(val*255) + val = math.clamp(math.floor(num), 0, 255) / 255 + local hsvColor = Color3.fromHSV(hue, sat, val) + red, green, blue = hsvColor.r, hsvColor.g, hsvColor.b + valInput.Text = tostring(val * 255) updateColor(1) end end - valInput.FocusLost:Connect(function() updateVal(valInput.Text) end) hookButtons(valInput,updateVal) + valInput.FocusLost:Connect(function() + updateVal(valInput.Text) + end) + hookButtons(valInput, updateVal) local function updateRed(str) local num = tonumber(str) if num then - red = math.clamp(math.floor(num),0,255)/255 - local newColor = Color3.new(red,green,blue) - hue,sat,val = newColor:ToHSV() - redInput.Text = tostring(red*255) + red = math.clamp(math.floor(num), 0, 255) / 255 + local newColor = Color3.new(red, green, blue) + hue, sat, val = newColor:ToHSV() + redInput.Text = tostring(red * 255) updateColor(2) end end - redInput.FocusLost:Connect(function() updateRed(redInput.Text) end) hookButtons(redInput,updateRed) + redInput.FocusLost:Connect(function() + updateRed(redInput.Text) + end) + hookButtons(redInput, updateRed) local function updateGreen(str) local num = tonumber(str) if num then - green = math.clamp(math.floor(num),0,255)/255 - local newColor = Color3.new(red,green,blue) - hue,sat,val = newColor:ToHSV() - greenInput.Text = tostring(green*255) + green = math.clamp(math.floor(num), 0, 255) / 255 + local newColor = Color3.new(red, green, blue) + hue, sat, val = newColor:ToHSV() + greenInput.Text = tostring(green * 255) updateColor(2) end end - greenInput.FocusLost:Connect(function() updateGreen(greenInput.Text) end) hookButtons(greenInput,updateGreen) + greenInput.FocusLost:Connect(function() + updateGreen(greenInput.Text) + end) + hookButtons(greenInput, updateGreen) local function updateBlue(str) local num = tonumber(str) if num then - blue = math.clamp(math.floor(num),0,255)/255 - local newColor = Color3.new(red,green,blue) - hue,sat,val = newColor:ToHSV() - blueInput.Text = tostring(blue*255) + blue = math.clamp(math.floor(num), 0, 255) / 255 + local newColor = Color3.new(red, green, blue) + hue, sat, val = newColor:ToHSV() + blueInput.Text = tostring(blue * 255) updateColor(2) end end - blueInput.FocusLost:Connect(function() updateBlue(blueInput.Text) end) hookButtons(blueInput,updateBlue) + blueInput.FocusLost:Connect(function() + updateBlue(blueInput.Text) + end) + hookButtons(blueInput, updateBlue) local colorChoice = Instance.new("TextButton") colorChoice.Name = "Choice" - colorChoice.Size = UDim2.new(0,25,0,18) - colorChoice.BorderColor3 = Color3.fromRGB(55,55,55) + colorChoice.Size = UDim2.new(0, 25, 0, 18) + colorChoice.BorderColor3 = Color3.fromRGB(55, 55, 55) colorChoice.Text = "" colorChoice.AutoButtonColor = false local row = 0 local column = 0 - for i,v in pairs(basicColors) do + for i, v in pairs(basicColors) do local newColor = colorChoice:Clone() newColor.BackgroundColor3 = v - newColor.Position = UDim2.new(0,1 + 30*column,0,21 + 23*row) + newColor.Position = UDim2.new(0, 1 + 30 * column, 0, 21 + 23 * row) newColor.MouseButton1Click:Connect(function() - red,green,blue = v.r,v.g,v.b - local newColor = Color3.new(red,green,blue) - hue,sat,val = newColor:toHSV() + red, green, blue = v.r, v.g, v.b + local newColor = Color3.new(red, green, blue) + hue, sat, val = newColor:toHSV() updateColor() - end) + end) newColor.Parent = basicColorsFrame column = column + 1 - if column == 6 then row = row + 1 column = 0 end + if column == 6 then + row = row + 1 + column = 0 + end end row = 0 column = 0 - for i = 1,12 do - local color = customColors[i] or Color3.new(0,0,0) + for i = 1, 12 do + local color = customColors[i] or Color3.new(0, 0, 0) local newColor = colorChoice:Clone() newColor.BackgroundColor3 = color - newColor.Position = UDim2.new(0,1 + 30*column,0,20 + 23*row) + newColor.Position = UDim2.new(0, 1 + 30 * column, 0, 20 + 23 * row) newColor.MouseButton1Click:Connect(function() - local curColor = (customColors[i] or Color3.new(0,0,0)) :: Color3 - red,green,blue = curColor.r,curColor.g,curColor.b - hue,sat,val = curColor:ToHSV() + local curColor = (customColors[i] or Color3.new(0, 0, 0)) :: Color3 + red, green, blue = curColor.r, curColor.g, curColor.b + hue, sat, val = curColor:ToHSV() updateColor() end) @@ -4550,22 +7206,47 @@ local function main() newColor.Parent = customColorsFrame column = column + 1 - if column == 6 then row = row + 1 column = 0 end + if column == 6 then + row = row + 1 + column = 0 + end end - okButton.MouseButton1Click:Connect(function() newMt.OnSelect:Fire(chosenColor) window:Close() end) - okButton.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then okButton.BackgroundTransparency = 0.4 end end) - okButton.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then okButton.BackgroundTransparency = 0 end end) + okButton.MouseButton1Click:Connect(function() + newMt.OnSelect:Fire(chosenColor) + window:Close() + end) + okButton.InputBegan:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + okButton.BackgroundTransparency = 0.4 + end + end) + okButton.InputEnded:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + okButton.BackgroundTransparency = 0 + end + end) - cancelButton.MouseButton1Click:Connect(function() newMt.OnCancel:Fire() window:Close() end) - cancelButton.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then cancelButton.BackgroundTransparency = 0.4 end end) - cancelButton.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then cancelButton.BackgroundTransparency = 0 end end) + cancelButton.MouseButton1Click:Connect(function() + newMt.OnCancel:Fire() + window:Close() + end) + cancelButton.InputBegan:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + cancelButton.BackgroundTransparency = 0.4 + end + end) + cancelButton.InputEnded:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + cancelButton.BackgroundTransparency = 0 + end + end) updateColor() - newMt.SetColor = function(self,color: Color3) - red,green,blue = color.R,color.G,color.B - hue,sat,val = color:ToHSV() + newMt.SetColor = function(self, color: Color3) + red, green, blue = color.R, color.G, color.B + hue, sat, val = color:ToHSV() updateColor() end @@ -4576,40 +7257,257 @@ local function main() return newMt end - return {new = new} + return { new = new } end)() Lib.NumberSequenceEditor = (function() local function new() -- TODO: Convert to newer class model - local newMt = setmetatable({},{}) + local newMt = setmetatable({}, {}) newMt.OnSelect = Lib.Signal.new() newMt.OnCancel = Lib.Signal.new() newMt.OnPreview = Lib.Signal.new() local guiContents = create({ - {1,"Frame",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BorderSizePixel=0,ClipsDescendants=true,Name="Content",Position=UDim2.new(0,0,0,20),Size=UDim2.new(1,0,1,-20),}}, - {2,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),Name="Time",Parent={1},Position=UDim2.new(0,40,0,210),Size=UDim2.new(0,60,0,20),}}, - {3,"TextBox",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),ClipsDescendants=true,Font=3,Name="Input",Parent={2},Position=UDim2.new(0,2,0,0),Size=UDim2.new(0,58,0,20),Text="0",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, - {4,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={2},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Time",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, - {5,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),Font=3,Name="Close",Parent={1},Position=UDim2.new(1,-90,0,210),Size=UDim2.new(0,80,0,20),Text="Close",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,}}, - {6,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),Font=3,Name="Reset",Parent={1},Position=UDim2.new(1,-180,0,210),Size=UDim2.new(0,80,0,20),Text="Reset",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,}}, - {7,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),Font=3,Name="Delete",Parent={1},Position=UDim2.new(0,380,0,210),Size=UDim2.new(0,80,0,20),Text="Delete",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,}}, - {8,"Frame",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),Name="NumberLineOutlines",Parent={1},Position=UDim2.new(0,10,0,20),Size=UDim2.new(1,-20,0,170),}}, - {9,"Frame",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),Name="NumberLine",Parent={1},Position=UDim2.new(0,10,0,20),Size=UDim2.new(1,-20,0,170),}}, - {10,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),Name="Value",Parent={1},Position=UDim2.new(0,170,0,210),Size=UDim2.new(0,60,0,20),}}, - {11,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={10},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Value",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, - {12,"TextBox",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),ClipsDescendants=true,Font=3,Name="Input",Parent={10},Position=UDim2.new(0,2,0,0),Size=UDim2.new(0,58,0,20),Text="0",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, - {13,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),Name="Envelope",Parent={1},Position=UDim2.new(0,300,0,210),Size=UDim2.new(0,60,0,20),}}, - {14,"TextBox",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),ClipsDescendants=true,Font=3,Name="Input",Parent={13},Position=UDim2.new(0,2,0,0),Size=UDim2.new(0,58,0,20),Text="0",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, - {15,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={13},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Envelope",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, + { + 1, + "Frame", + { + BackgroundColor3 = Color3.new(0.17647059261799, 0.17647059261799, 0.17647059261799), + BorderSizePixel = 0, + ClipsDescendants = true, + Name = "Content", + Position = UDim2.new(0, 0, 0, 20), + Size = UDim2.new(1, 0, 1, -20), + }, + }, + { + 2, + "Frame", + { + BackgroundColor3 = Color3.new(0.14901961386204, 0.14901961386204, 0.14901961386204), + BorderColor3 = Color3.new(0.12549020349979, 0.12549020349979, 0.12549020349979), + Name = "Time", + Parent = { 1 }, + Position = UDim2.new(0, 40, 0, 210), + Size = UDim2.new(0, 60, 0, 20), + }, + }, + { + 3, + "TextBox", + { + BackgroundColor3 = Color3.new(0.25098040699959, 0.25098040699959, 0.25098040699959), + BackgroundTransparency = 1, + BorderColor3 = Color3.new(0.37647062540054, 0.37647062540054, 0.37647062540054), + ClipsDescendants = true, + Font = 3, + Name = "Input", + Parent = { 2 }, + Position = UDim2.new(0, 2, 0, 0), + Size = UDim2.new(0, 58, 0, 20), + Text = "0", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + TextXAlignment = 0, + }, + }, + { + 4, + "TextLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Font = 3, + Name = "Title", + Parent = { 2 }, + Position = UDim2.new(0, -40, 0, 0), + Size = UDim2.new(0, 34, 1, 0), + Text = "Time", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + TextXAlignment = 1, + }, + }, + { + 5, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.2352941185236, 0.2352941185236, 0.2352941185236), + BorderColor3 = Color3.new(0.21568627655506, 0.21568627655506, 0.21568627655506), + Font = 3, + Name = "Close", + Parent = { 1 }, + Position = UDim2.new(1, -90, 0, 210), + Size = UDim2.new(0, 80, 0, 20), + Text = "Close", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + }, + }, + { + 6, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.2352941185236, 0.2352941185236, 0.2352941185236), + BorderColor3 = Color3.new(0.21568627655506, 0.21568627655506, 0.21568627655506), + Font = 3, + Name = "Reset", + Parent = { 1 }, + Position = UDim2.new(1, -180, 0, 210), + Size = UDim2.new(0, 80, 0, 20), + Text = "Reset", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + }, + }, + { + 7, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.2352941185236, 0.2352941185236, 0.2352941185236), + BorderColor3 = Color3.new(0.21568627655506, 0.21568627655506, 0.21568627655506), + Font = 3, + Name = "Delete", + Parent = { 1 }, + Position = UDim2.new(0, 380, 0, 210), + Size = UDim2.new(0, 80, 0, 20), + Text = "Delete", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + }, + }, + { + 8, + "Frame", + { + BackgroundColor3 = Color3.new(0.17647059261799, 0.17647059261799, 0.17647059261799), + BorderColor3 = Color3.new(0.21568627655506, 0.21568627655506, 0.21568627655506), + Name = "NumberLineOutlines", + Parent = { 1 }, + Position = UDim2.new(0, 10, 0, 20), + Size = UDim2.new(1, -20, 0, 170), + }, + }, + { + 9, + "Frame", + { + BackgroundColor3 = Color3.new(0.25098040699959, 0.25098040699959, 0.25098040699959), + BackgroundTransparency = 1, + BorderColor3 = Color3.new(0.37647062540054, 0.37647062540054, 0.37647062540054), + Name = "NumberLine", + Parent = { 1 }, + Position = UDim2.new(0, 10, 0, 20), + Size = UDim2.new(1, -20, 0, 170), + }, + }, + { + 10, + "Frame", + { + BackgroundColor3 = Color3.new(0.14901961386204, 0.14901961386204, 0.14901961386204), + BorderColor3 = Color3.new(0.12549020349979, 0.12549020349979, 0.12549020349979), + Name = "Value", + Parent = { 1 }, + Position = UDim2.new(0, 170, 0, 210), + Size = UDim2.new(0, 60, 0, 20), + }, + }, + { + 11, + "TextLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Font = 3, + Name = "Title", + Parent = { 10 }, + Position = UDim2.new(0, -40, 0, 0), + Size = UDim2.new(0, 34, 1, 0), + Text = "Value", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + TextXAlignment = 1, + }, + }, + { + 12, + "TextBox", + { + BackgroundColor3 = Color3.new(0.25098040699959, 0.25098040699959, 0.25098040699959), + BackgroundTransparency = 1, + BorderColor3 = Color3.new(0.37647062540054, 0.37647062540054, 0.37647062540054), + ClipsDescendants = true, + Font = 3, + Name = "Input", + Parent = { 10 }, + Position = UDim2.new(0, 2, 0, 0), + Size = UDim2.new(0, 58, 0, 20), + Text = "0", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + TextXAlignment = 0, + }, + }, + { + 13, + "Frame", + { + BackgroundColor3 = Color3.new(0.14901961386204, 0.14901961386204, 0.14901961386204), + BorderColor3 = Color3.new(0.12549020349979, 0.12549020349979, 0.12549020349979), + Name = "Envelope", + Parent = { 1 }, + Position = UDim2.new(0, 300, 0, 210), + Size = UDim2.new(0, 60, 0, 20), + }, + }, + { + 14, + "TextBox", + { + BackgroundColor3 = Color3.new(0.25098040699959, 0.25098040699959, 0.25098040699959), + BackgroundTransparency = 1, + BorderColor3 = Color3.new(0.37647062540054, 0.37647062540054, 0.37647062540054), + ClipsDescendants = true, + Font = 3, + Name = "Input", + Parent = { 13 }, + Position = UDim2.new(0, 2, 0, 0), + Size = UDim2.new(0, 58, 0, 20), + Text = "0", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + TextXAlignment = 0, + }, + }, + { + 15, + "TextLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Font = 3, + Name = "Title", + Parent = { 13 }, + Position = UDim2.new(0, -40, 0, 0), + Size = UDim2.new(0, 34, 1, 0), + Text = "Envelope", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + TextXAlignment = 1, + }, + }, }) local window = Lib.Window.new() window.Resizable = false - window:Resize(680,265) + window:Resize(680, 265) window:SetTitle("NumberSequence Editor") newMt.Window = window newMt.Gui = window.Gui - for i,v in pairs(guiContents:GetChildren()) do + for i, v in pairs(guiContents:GetChildren()) do v.Parent = window.GuiElems.Content end local gui = window.Gui @@ -4626,7 +7524,7 @@ local function main() local closeButton = pickerFrame.Close local topClose = pickerTopBar.Close - local points = {{1,0,3},{8,0.05,1},{5,0.6,2},{4,0.7,4},{6,1,4}} + local points = { { 1, 0, 3 }, { 8, 0.05, 1 }, { 5, 0.6, 2 }, { 4, 0.7, 4 }, { 6, 1, 4 } } local lines = {} local eLines = {} local beginPoint = points[1] @@ -4638,127 +7536,146 @@ local function main() local user = game:GetService("UserInputService") local mouse = game:GetService("Players").LocalPlayer:GetMouse() - for i = 2,10 do + for i = 2, 10 do local newLine = Instance.new("Frame") newLine.BackgroundTransparency = 0.5 - newLine.BackgroundColor3 = Color3.new(96/255,96/255,96/255) + newLine.BackgroundColor3 = Color3.new(96 / 255, 96 / 255, 96 / 255) newLine.BorderSizePixel = 0 - newLine.Size = UDim2.new(0,1,1,0) - newLine.Position = UDim2.new((i-1)/(11-1),0,0,0) + newLine.Size = UDim2.new(0, 1, 1, 0) + newLine.Position = UDim2.new((i - 1) / (11 - 1), 0, 0, 0) newLine.Parent = numberLineOutlines end - for i = 2,4 do + for i = 2, 4 do local newLine = Instance.new("Frame") newLine.BackgroundTransparency = 0.5 - newLine.BackgroundColor3 = Color3.new(96/255,96/255,96/255) + newLine.BackgroundColor3 = Color3.new(96 / 255, 96 / 255, 96 / 255) newLine.BorderSizePixel = 0 - newLine.Size = UDim2.new(1,0,0,1) - newLine.Position = UDim2.new(0,0,(i-1)/(5-1),0) + newLine.Size = UDim2.new(1, 0, 0, 1) + newLine.Position = UDim2.new(0, 0, (i - 1) / (5 - 1), 0) newLine.Parent = numberLineOutlines end local lineTemp = Instance.new("Frame") - lineTemp.BackgroundColor3 = Color3.new(0,0,0) + lineTemp.BackgroundColor3 = Color3.new(0, 0, 0) lineTemp.BorderSizePixel = 0 - lineTemp.Size = UDim2.new(0,1,0,1) + lineTemp.Size = UDim2.new(0, 1, 0, 1) local sequenceLine = Instance.new("Frame") - sequenceLine.BackgroundColor3 = Color3.new(0,0,0) + sequenceLine.BackgroundColor3 = Color3.new(0, 0, 0) sequenceLine.BorderSizePixel = 0 - sequenceLine.Size = UDim2.new(0,1,0,0) + sequenceLine.Size = UDim2.new(0, 1, 0, 0) - for i = 1,numberLine.AbsoluteSize.X do + for i = 1, numberLine.AbsoluteSize.X do local line = sequenceLine:Clone() eLines[i] = line - line.Name = "E"..tostring(i) + line.Name = "E" .. tostring(i) line.BackgroundTransparency = 0.5 - line.BackgroundColor3 = Color3.new(199/255,44/255,28/255) - line.Position = UDim2.new(0,i-1,0,0) + line.BackgroundColor3 = Color3.new(199 / 255, 44 / 255, 28 / 255) + line.Position = UDim2.new(0, i - 1, 0, 0) line.Parent = numberLine end - for i = 1,numberLine.AbsoluteSize.X do + for i = 1, numberLine.AbsoluteSize.X do local line = sequenceLine:Clone() lines[i] = line line.Name = tostring(i) - line.Position = UDim2.new(0,i-1,0,0) + line.Position = UDim2.new(0, i - 1, 0, 0) line.Parent = numberLine end local envelopeDrag = Instance.new("Frame") envelopeDrag.BackgroundTransparency = 1 - envelopeDrag.BackgroundColor3 = Color3.new(0,0,0) + envelopeDrag.BackgroundColor3 = Color3.new(0, 0, 0) envelopeDrag.BorderSizePixel = 0 - envelopeDrag.Size = UDim2.new(0,7,0,20) + envelopeDrag.Size = UDim2.new(0, 7, 0, 20) envelopeDrag.Visible = false envelopeDrag.ZIndex = 2 - local envelopeDragLine = Instance.new("Frame",envelopeDrag) + local envelopeDragLine = Instance.new("Frame") + envelopeDragLine.Parent = envelopeDrag envelopeDragLine.Name = "Line" - envelopeDragLine.BackgroundColor3 = Color3.new(0,0,0) + envelopeDragLine.BackgroundColor3 = Color3.new(0, 0, 0) envelopeDragLine.BorderSizePixel = 0 - envelopeDragLine.Position = UDim2.new(0,3,0,0) - envelopeDragLine.Size = UDim2.new(0,1,0,20) + envelopeDragLine.Position = UDim2.new(0, 3, 0, 0) + envelopeDragLine.Size = UDim2.new(0, 1, 0, 20) envelopeDragLine.ZIndex = 2 - local envelopeDragTop,envelopeDragBottom = envelopeDrag:Clone(),envelopeDrag:Clone() + local envelopeDragTop, envelopeDragBottom = envelopeDrag:Clone(), envelopeDrag:Clone() envelopeDragTop.Parent = numberLine envelopeDragBottom.Parent = numberLine local function buildSequence() local newPoints = {} - for i,v in pairs(points) do - table.insert(newPoints,NumberSequenceKeypoint.new(v[2],v[1],v[3])) + for i, v in pairs(points) do + table.insert(newPoints, NumberSequenceKeypoint.new(v[2], v[1], v[3])) end newMt.Sequence = NumberSequence.new(newPoints) newMt.OnSelect:Fire(newMt.Sequence) end - local function round(num,places) - local multi = 10^places - return math.floor(num*multi + 0.5)/multi + local function round(num, places) + local multi = 10 ^ places + return math.floor(num * multi + 0.5) / multi end local function updateInputs(point) if point then currentPoint = point - local rawT,rawV,rawE = point[2],point[1],point[3] - timeBox.Text = round(rawT,(rawT < 0.01 and 5) or (rawT < 0.1 and 4) or 3) - valueBox.Text = round(rawV,(rawV < 0.01 and 5) or (rawV < 0.1 and 4) or (rawV < 1 and 3) or 2) - envelopeBox.Text = round(rawE,(rawE < 0.01 and 5) or (rawE < 0.1 and 4) or (rawV < 1 and 3) or 2) - - local envelopeDistance = numberLine.AbsoluteSize.Y*(point[3]/10) - envelopeDragTop.Position = UDim2.new(0,point[4].Position.X.Offset-1,0,point[4].Position.Y.Offset-envelopeDistance-17) + local rawT, rawV, rawE = point[2], point[1], point[3] + timeBox.Text = round(rawT, (rawT < 0.01 and 5) or (rawT < 0.1 and 4) or 3) + valueBox.Text = round(rawV, (rawV < 0.01 and 5) or (rawV < 0.1 and 4) or (rawV < 1 and 3) or 2) + envelopeBox.Text = round(rawE, (rawE < 0.01 and 5) or (rawE < 0.1 and 4) or (rawV < 1 and 3) or 2) + + local envelopeDistance = numberLine.AbsoluteSize.Y * (point[3] / 10) + envelopeDragTop.Position = UDim2.new( + 0, + point[4].Position.X.Offset - 1, + 0, + point[4].Position.Y.Offset - envelopeDistance - 17 + ) envelopeDragTop.Visible = true - envelopeDragBottom.Position = UDim2.new(0,point[4].Position.X.Offset-1,0,point[4].Position.Y.Offset+envelopeDistance+2) + envelopeDragBottom.Position = UDim2.new( + 0, + point[4].Position.X.Offset - 1, + 0, + point[4].Position.Y.Offset + envelopeDistance + 2 + ) envelopeDragBottom.Visible = true end end envelopeDragTop.InputBegan:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 or not currentPoint or Lib.CheckMouseInGui(currentPoint[4].Select) then return end - local mouseEvent,releaseEvent + if + input.UserInputType ~= Enum.UserInputType.MouseButton1 + or not currentPoint + or Lib.CheckMouseInGui(currentPoint[4].Select) + then + return + end + local mouseEvent, releaseEvent local maxSize = numberLine.AbsoluteSize.Y local mouseDelta = math.abs(envelopeDragTop.AbsolutePosition.Y - mouse.Y) - envelopeDragTop.Line.Position = UDim2.new(0,2,0,0) - envelopeDragTop.Line.Size = UDim2.new(0,3,0,20) + envelopeDragTop.Line.Position = UDim2.new(0, 2, 0, 0) + envelopeDragTop.Line.Size = UDim2.new(0, 3, 0, 20) releaseEvent = user.InputEnded:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + if input.UserInputType ~= Enum.UserInputType.MouseButton1 then + return + end mouseEvent:Disconnect() releaseEvent:Disconnect() - envelopeDragTop.Line.Position = UDim2.new(0,3,0,0) - envelopeDragTop.Line.Size = UDim2.new(0,1,0,20) + envelopeDragTop.Line.Position = UDim2.new(0, 3, 0, 0) + envelopeDragTop.Line.Size = UDim2.new(0, 1, 0, 20) end) mouseEvent = user.InputChanged:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then - local topDiff = (currentPoint[4].AbsolutePosition.Y+2)-(mouse.Y-mouseDelta)-19 - local newEnvelope = 10*(math.max(topDiff,0)/maxSize) - local maxEnvelope = math.min(currentPoint[1],10-currentPoint[1]) - currentPoint[3] = math.min(newEnvelope,maxEnvelope) + local topDiff = (currentPoint[4].AbsolutePosition.Y + 2) - (mouse.Y - mouseDelta) - 19 + local newEnvelope = 10 * (math.max(topDiff, 0) / maxSize) + local maxEnvelope = math.min(currentPoint[1], 10 - currentPoint[1]) + currentPoint[3] = math.min(newEnvelope, maxEnvelope) newMt:Redraw() buildSequence() updateInputs(currentPoint) @@ -4767,29 +7684,37 @@ local function main() end) envelopeDragBottom.InputBegan:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 or not currentPoint or Lib.CheckMouseInGui(currentPoint[4].Select) then return end - local mouseEvent,releaseEvent + if + input.UserInputType ~= Enum.UserInputType.MouseButton1 + or not currentPoint + or Lib.CheckMouseInGui(currentPoint[4].Select) + then + return + end + local mouseEvent, releaseEvent local maxSize = numberLine.AbsoluteSize.Y local mouseDelta = math.abs(envelopeDragBottom.AbsolutePosition.Y - mouse.Y) - envelopeDragBottom.Line.Position = UDim2.new(0,2,0,0) - envelopeDragBottom.Line.Size = UDim2.new(0,3,0,20) + envelopeDragBottom.Line.Position = UDim2.new(0, 2, 0, 0) + envelopeDragBottom.Line.Size = UDim2.new(0, 3, 0, 20) releaseEvent = user.InputEnded:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + if input.UserInputType ~= Enum.UserInputType.MouseButton1 then + return + end mouseEvent:Disconnect() releaseEvent:Disconnect() - envelopeDragBottom.Line.Position = UDim2.new(0,3,0,0) - envelopeDragBottom.Line.Size = UDim2.new(0,1,0,20) + envelopeDragBottom.Line.Position = UDim2.new(0, 3, 0, 0) + envelopeDragBottom.Line.Size = UDim2.new(0, 1, 0, 20) end) mouseEvent = user.InputChanged:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then - local bottomDiff = (mouse.Y+(20-mouseDelta))-(currentPoint[4].AbsolutePosition.Y+2)-19 - local newEnvelope = 10*(math.max(bottomDiff,0)/maxSize) - local maxEnvelope = math.min(currentPoint[1],10-currentPoint[1]) - currentPoint[3] = math.min(newEnvelope,maxEnvelope) + local bottomDiff = (mouse.Y + (20 - mouseDelta)) - (currentPoint[4].AbsolutePosition.Y + 2) - 19 + local newEnvelope = 10 * (math.max(bottomDiff, 0) / maxSize) + local maxEnvelope = math.min(currentPoint[1], 10 - currentPoint[1]) + currentPoint[3] = math.min(newEnvelope, maxEnvelope) newMt:Redraw() buildSequence() updateInputs(currentPoint) @@ -4801,61 +7726,80 @@ local function main() local newPoint = Instance.new("Frame") newPoint.Name = "Point" newPoint.BorderSizePixel = 0 - newPoint.Size = UDim2.new(0,5,0,5) - newPoint.Position = UDim2.new(0,math.floor((numberLine.AbsoluteSize.X-1) * point[2])-2,0,numberLine.AbsoluteSize.Y*(10-point[1])/10-2) - newPoint.BackgroundColor3 = Color3.new(0,0,0) + newPoint.Size = UDim2.new(0, 5, 0, 5) + newPoint.Position = UDim2.new( + 0, + math.floor((numberLine.AbsoluteSize.X - 1) * point[2]) - 2, + 0, + numberLine.AbsoluteSize.Y * (10 - point[1]) / 10 - 2 + ) + newPoint.BackgroundColor3 = Color3.new(0, 0, 0) local newSelect = Instance.new("Frame") newSelect.Name = "Select" newSelect.BackgroundTransparency = 1 - newSelect.BackgroundColor3 = Color3.new(199/255,44/255,28/255) - newSelect.Position = UDim2.new(0,-2,0,-2) - newSelect.Size = UDim2.new(0,9,0,9) + newSelect.BackgroundColor3 = Color3.new(199 / 255, 44 / 255, 28 / 255) + newSelect.Position = UDim2.new(0, -2, 0, -2) + newSelect.Size = UDim2.new(0, 9, 0, 9) newSelect.Parent = newPoint newPoint.Parent = numberLine newSelect.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then - for i,v in pairs(points) do v[4].Select.BackgroundTransparency = 1 end + for i, v in pairs(points) do + v[4].Select.BackgroundTransparency = 1 + end newSelect.BackgroundTransparency = 0 updateInputs(point) end if input.UserInputType == Enum.UserInputType.MouseButton1 and not currentlySelected then currentPoint = point - local mouseEvent,releaseEvent + local mouseEvent, releaseEvent currentlySelected = true - newSelect.BackgroundColor3 = Color3.new(249/255,191/255,59/255) + newSelect.BackgroundColor3 = Color3.new(249 / 255, 191 / 255, 59 / 255) local oldEnvelope = point[3] releaseEvent = user.InputEnded:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + if input.UserInputType ~= Enum.UserInputType.MouseButton1 then + return + end mouseEvent:Disconnect() releaseEvent:Disconnect() currentlySelected = nil - newSelect.BackgroundColor3 = Color3.new(199/255,44/255,28/255) + newSelect.BackgroundColor3 = Color3.new(199 / 255, 44 / 255, 28 / 255) end) mouseEvent = user.InputChanged:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then - local maxX = numberLine.AbsoluteSize.X-1 + local maxX = numberLine.AbsoluteSize.X - 1 local relativeX = mouse.X - numberLine.AbsolutePosition.X - if relativeX < 0 then relativeX = 0 end - if relativeX > maxX then relativeX = maxX end - local maxY = numberLine.AbsoluteSize.Y-1 + if relativeX < 0 then + relativeX = 0 + end + if relativeX > maxX then + relativeX = maxX + end + local maxY = numberLine.AbsoluteSize.Y - 1 local relativeY = mouse.Y - numberLine.AbsolutePosition.Y - if relativeY < 0 then relativeY = 0 end - if relativeY > maxY then relativeY = maxY end + if relativeY < 0 then + relativeY = 0 + end + if relativeY > maxY then + relativeY = maxY + end if point ~= beginPoint and point ~= endPoint then - point[2] = relativeX/maxX + point[2] = relativeX / maxX end - point[1] = 10-(relativeY/maxY)*10 - local maxEnvelope = math.min(point[1],10-point[1]) - point[3] = math.min(oldEnvelope,maxEnvelope) + point[1] = 10 - (relativeY / maxY) * 10 + local maxEnvelope = math.min(point[1], 10 - point[1]) + point[3] = math.min(oldEnvelope, maxEnvelope) newMt:Redraw() updateInputs(point) - for i,v in pairs(points) do v[4].Select.BackgroundTransparency = 1 end + for i, v in pairs(points) do + v[4].Select.BackgroundTransparency = 1 + end newSelect.BackgroundTransparency = 0 buildSequence() end @@ -4867,71 +7811,98 @@ local function main() end local function placePoints() - for i,v in pairs(points) do + for i, v in pairs(points) do v[4] = placePoint(v) end end local function redraw(self) local numberLineSize = numberLine.AbsoluteSize - table.sort(points,function(a,b) return a[2] < b[2] end) - for i,v in pairs(points) do - v[4].Position = UDim2.new(0,math.floor((numberLineSize.X-1) * v[2])-2,0,(numberLineSize.Y-1)*(10-v[1])/10-2) + table.sort(points, function(a, b) + return a[2] < b[2] + end) + for i, v in pairs(points) do + v[4].Position = UDim2.new( + 0, + math.floor((numberLineSize.X - 1) * v[2]) - 2, + 0, + (numberLineSize.Y - 1) * (10 - v[1]) / 10 - 2 + ) end - lines[1].Size = UDim2.new(0,1,0,0) - for i = 1,#points-1 do + lines[1].Size = UDim2.new(0, 1, 0, 0) + for i = 1, #points - 1 do local fromPoint = points[i] - local toPoint = points[i+1] - local deltaY = toPoint[4].Position.Y.Offset-fromPoint[4].Position.Y.Offset - local deltaX = toPoint[4].Position.X.Offset-fromPoint[4].Position.X.Offset - local slope = deltaY/deltaX + local toPoint = points[i + 1] + local deltaY = toPoint[4].Position.Y.Offset - fromPoint[4].Position.Y.Offset + local deltaX = toPoint[4].Position.X.Offset - fromPoint[4].Position.X.Offset + local slope = deltaY / deltaX local fromEnvelope = fromPoint[3] local nextEnvelope = toPoint[3] local currentRise = math.abs(slope) local totalRise = 0 - local maxRise = math.abs(toPoint[4].Position.Y.Offset-fromPoint[4].Position.Y.Offset) + local maxRise = math.abs(toPoint[4].Position.Y.Offset - fromPoint[4].Position.Y.Offset) - for lineCount = math.min(fromPoint[4].Position.X.Offset+1,toPoint[4].Position.X.Offset),toPoint[4].Position.X.Offset do - if deltaX == 0 and deltaY == 0 then return end + for lineCount = math.min(fromPoint[4].Position.X.Offset + 1, toPoint[4].Position.X.Offset), toPoint[4].Position.X.Offset do + if deltaX == 0 and deltaY == 0 then + return + end local riseNow = math.floor(currentRise) - local line = lines[lineCount+3] + local line = lines[lineCount + 3] if line then - if totalRise+riseNow > maxRise then riseNow = maxRise-totalRise end + if totalRise + riseNow > maxRise then + riseNow = maxRise - totalRise + end if math.sign(slope) == -1 then - line.Position = UDim2.new(0,lineCount+2,0,fromPoint[4].Position.Y.Offset + -(totalRise+riseNow)+2) + line.Position = UDim2.new( + 0, + lineCount + 2, + 0, + fromPoint[4].Position.Y.Offset + -(totalRise + riseNow) + 2 + ) else - line.Position = UDim2.new(0,lineCount+2,0,fromPoint[4].Position.Y.Offset + totalRise+2) + line.Position = + UDim2.new(0, lineCount + 2, 0, fromPoint[4].Position.Y.Offset + totalRise + 2) end - line.Size = UDim2.new(0,1,0,math.max(riseNow,1)) + line.Size = UDim2.new(0, 1, 0, math.max(riseNow, 1)) end totalRise = totalRise + riseNow currentRise = currentRise - riseNow + math.abs(slope) - local envPercent = (lineCount-fromPoint[4].Position.X.Offset)/(toPoint[4].Position.X.Offset-fromPoint[4].Position.X.Offset) - local envLerp = fromEnvelope+(nextEnvelope-fromEnvelope)*envPercent - local relativeSize = (envLerp/10)*numberLineSize.Y + local envPercent = (lineCount - fromPoint[4].Position.X.Offset) + / (toPoint[4].Position.X.Offset - fromPoint[4].Position.X.Offset) + local envLerp = fromEnvelope + (nextEnvelope - fromEnvelope) * envPercent + local relativeSize = (envLerp / 10) * numberLineSize.Y local line = eLines[lineCount + 3] if line then - line.Position = UDim2.new(0,lineCount+2,0,lines[lineCount+3].Position.Y.Offset-math.floor(relativeSize)) - line.Size = UDim2.new(0,1,0,math.floor(relativeSize*2)) + line.Position = UDim2.new( + 0, + lineCount + 2, + 0, + lines[lineCount + 3].Position.Y.Offset - math.floor(relativeSize) + ) + line.Size = UDim2.new(0, 1, 0, math.floor(relativeSize * 2)) end end end end newMt.Redraw = redraw - local function loadSequence(self,seq) + local function loadSequence(self, seq) resetSequence = seq - for i,v in pairs(points) do if v[4] then v[4]:Destroy() end end + for i, v in pairs(points) do + if v[4] then + v[4]:Destroy() + end + end points = {} - for i,v in pairs(seq.Keypoints) do - local maxEnvelope = math.min(v.Value,10-v.Value) - local newPoint = {v.Value,v.Time,math.min(v.Envelope,maxEnvelope)} + for i, v in pairs(seq.Keypoints) do + local maxEnvelope = math.min(v.Value, 10 - v.Value) + local newPoint = { v.Value, v.Time, math.min(v.Envelope, maxEnvelope) } newPoint[4] = placePoint(newPoint) - table.insert(points,newPoint) + table.insert(points, newPoint) end beginPoint = points[1] endPoint = points[#points] @@ -4946,7 +7917,7 @@ local function main() local point = currentPoint local num = tonumber(timeBox.Text) if point and num and point ~= beginPoint and point ~= endPoint then - num = math.clamp(num,0,1) + num = math.clamp(num, 0, 1) point[2] = num redraw() buildSequence() @@ -4959,10 +7930,10 @@ local function main() local num = tonumber(valueBox.Text) if point and num then local oldEnvelope = point[3] - num = math.clamp(num,0,10) + num = math.clamp(num, 0, 10) point[1] = num - local maxEnvelope = math.min(point[1],10-point[1]) - point[3] = math.min(oldEnvelope,maxEnvelope) + local maxEnvelope = math.min(point[1], 10 - point[1]) + point[3] = math.min(oldEnvelope, maxEnvelope) redraw() buildSequence() updateInputs(point) @@ -4973,39 +7944,59 @@ local function main() local point = currentPoint local num = tonumber(envelopeBox.Text) if point and num then - num = math.clamp(num,0,5) - local maxEnvelope = math.min(point[1],10-point[1]) - point[3] = math.min(num,maxEnvelope) + num = math.clamp(num, 0, 5) + local maxEnvelope = math.min(point[1], 10 - point[1]) + point[3] = math.min(num, maxEnvelope) redraw() buildSequence() updateInputs(point) end end) - local function buttonAnimations(button,inverse) - button.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then button.BackgroundTransparency = (inverse and 0.5 or 0.4) end end) - button.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then button.BackgroundTransparency = (inverse and 1 or 0) end end) + local function buttonAnimations(button, inverse) + button.InputBegan:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + button.BackgroundTransparency = (inverse and 0.5 or 0.4) + end + end) + button.InputEnded:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + button.BackgroundTransparency = (inverse and 1 or 0) + end + end) end numberLine.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 and #points < 20 then - if Lib.CheckMouseInGui(envelopeDragTop) or Lib.CheckMouseInGui(envelopeDragBottom) then return end - for i,v in pairs(points) do - if Lib.CheckMouseInGui(v[4].Select) then return end + if Lib.CheckMouseInGui(envelopeDragTop) or Lib.CheckMouseInGui(envelopeDragBottom) then + return end - local maxX = numberLine.AbsoluteSize.X-1 + for i, v in pairs(points) do + if Lib.CheckMouseInGui(v[4].Select) then + return + end + end + local maxX = numberLine.AbsoluteSize.X - 1 local relativeX = mouse.X - numberLine.AbsolutePosition.X - if relativeX < 0 then relativeX = 0 end - if relativeX > maxX then relativeX = maxX end - local maxY = numberLine.AbsoluteSize.Y-1 + if relativeX < 0 then + relativeX = 0 + end + if relativeX > maxX then + relativeX = maxX + end + local maxY = numberLine.AbsoluteSize.Y - 1 local relativeY = mouse.Y - numberLine.AbsolutePosition.Y - if relativeY < 0 then relativeY = 0 end - if relativeY > maxY then relativeY = maxY end + if relativeY < 0 then + relativeY = 0 + end + if relativeY > maxY then + relativeY = maxY + end - local raw = relativeX/maxX - local newPoint = {10-(relativeY/maxY)*10,raw,0} + local raw = relativeX / maxX + local newPoint = { 10 - (relativeY / maxY) * 10, raw, 0 } newPoint[4] = placePoint(newPoint) - table.insert(points,newPoint) + table.insert(points, newPoint) redraw() buildSequence() end @@ -5013,10 +8004,10 @@ local function main() deleteButton.MouseButton1Click:Connect(function() if currentPoint and currentPoint ~= beginPoint and currentPoint ~= endPoint then - for i,v in pairs(points) do + for i, v in pairs(points) do if v == currentPoint then v[4]:Destroy() - table.remove(points,i) + table.remove(points, i) break end end @@ -5052,46 +8043,285 @@ local function main() return newMt end - return {new = new} + return { new = new } end)() Lib.ColorSequenceEditor = (function() -- TODO: Convert to newer class model local function new() - local newMt = setmetatable({},{}) + local newMt = setmetatable({}, {}) newMt.OnSelect = Lib.Signal.new() newMt.OnCancel = Lib.Signal.new() newMt.OnPreview = Lib.Signal.new() newMt.OnPickColor = Lib.Signal.new() local guiContents = create({ - {1,"Frame",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BorderSizePixel=0,ClipsDescendants=true,Name="Content",Position=UDim2.new(0,0,0,20),Size=UDim2.new(1,0,1,-20),}}, - {2,"Frame",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),Name="ColorLine",Parent={1},Position=UDim2.new(0,10,0,5),Size=UDim2.new(1,-20,0,70),}}, - {3,"Frame",{BackgroundColor3=Color3.new(1,1,1),BorderSizePixel=0,Name="Gradient",Parent={2},Size=UDim2.new(1,0,1,0),}}, - {4,"UIGradient",{Parent={3},}}, - {5,"Frame",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,BorderSizePixel=0,Name="Arrows",Parent={1},Position=UDim2.new(0,1,0,73),Size=UDim2.new(1,-2,0,16),}}, - {6,"Frame",{BackgroundColor3=Color3.new(0,0,0),BackgroundTransparency=0.5,BorderSizePixel=0,Name="Cursor",Parent={1},Position=UDim2.new(0,10,0,0),Size=UDim2.new(0,1,0,80),}}, - {7,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderColor3=Color3.new(0.12549020349979,0.12549020349979,0.12549020349979),Name="Time",Parent={1},Position=UDim2.new(0,40,0,95),Size=UDim2.new(0,100,0,20),}}, - {8,"TextBox",{BackgroundColor3=Color3.new(0.25098040699959,0.25098040699959,0.25098040699959),BackgroundTransparency=1,BorderColor3=Color3.new(0.37647062540054,0.37647062540054,0.37647062540054),ClipsDescendants=true,Font=3,Name="Input",Parent={7},Position=UDim2.new(0,2,0,0),Size=UDim2.new(0,98,0,20),Text="0",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}}, - {9,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={7},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Time",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, - {10,"Frame",{BackgroundColor3=Color3.new(1,1,1),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),Name="ColorBox",Parent={1},Position=UDim2.new(0,220,0,95),Size=UDim2.new(0,20,0,20),}}, - {11,"TextLabel",{BackgroundColor3=Color3.new(1,1,1),BackgroundTransparency=1,Font=3,Name="Title",Parent={10},Position=UDim2.new(0,-40,0,0),Size=UDim2.new(0,34,1,0),Text="Color",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=1,}}, - {12,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),BorderSizePixel=0,Font=3,Name="Close",Parent={1},Position=UDim2.new(1,-90,0,95),Size=UDim2.new(0,80,0,20),Text="Close",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,}}, - {13,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),BorderSizePixel=0,Font=3,Name="Reset",Parent={1},Position=UDim2.new(1,-180,0,95),Size=UDim2.new(0,80,0,20),Text="Reset",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,}}, - {14,"TextButton",{AutoButtonColor=false,BackgroundColor3=Color3.new(0.2352941185236,0.2352941185236,0.2352941185236),BorderColor3=Color3.new(0.21568627655506,0.21568627655506,0.21568627655506),BorderSizePixel=0,Font=3,Name="Delete",Parent={1},Position=UDim2.new(0,280,0,95),Size=UDim2.new(0,80,0,20),Text="Delete",TextColor3=Color3.new(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,}}, - {15,"Frame",{BackgroundTransparency=1,Name="Arrow",Parent={1},Size=UDim2.new(0,16,0,16),Visible=false,}}, - {16,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={15},Position=UDim2.new(0,8,0,3),Size=UDim2.new(0,1,0,2),}}, - {17,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={15},Position=UDim2.new(0,7,0,5),Size=UDim2.new(0,3,0,2),}}, - {18,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={15},Position=UDim2.new(0,6,0,7),Size=UDim2.new(0,5,0,2),}}, - {19,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={15},Position=UDim2.new(0,5,0,9),Size=UDim2.new(0,7,0,2),}}, - {20,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={15},Position=UDim2.new(0,4,0,11),Size=UDim2.new(0,9,0,2),}}, + { + 1, + "Frame", + { + BackgroundColor3 = Color3.new(0.17647059261799, 0.17647059261799, 0.17647059261799), + BorderSizePixel = 0, + ClipsDescendants = true, + Name = "Content", + Position = UDim2.new(0, 0, 0, 20), + Size = UDim2.new(1, 0, 1, -20), + }, + }, + { + 2, + "Frame", + { + BackgroundColor3 = Color3.new(0.17647059261799, 0.17647059261799, 0.17647059261799), + BorderColor3 = Color3.new(0.21568627655506, 0.21568627655506, 0.21568627655506), + Name = "ColorLine", + Parent = { 1 }, + Position = UDim2.new(0, 10, 0, 5), + Size = UDim2.new(1, -20, 0, 70), + }, + }, + { + 3, + "Frame", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BorderSizePixel = 0, + Name = "Gradient", + Parent = { 2 }, + Size = UDim2.new(1, 0, 1, 0), + }, + }, + { 4, "UIGradient", { Parent = { 3 } } }, + { + 5, + "Frame", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + BorderSizePixel = 0, + Name = "Arrows", + Parent = { 1 }, + Position = UDim2.new(0, 1, 0, 73), + Size = UDim2.new(1, -2, 0, 16), + }, + }, + { + 6, + "Frame", + { + BackgroundColor3 = Color3.new(0, 0, 0), + BackgroundTransparency = 0.5, + BorderSizePixel = 0, + Name = "Cursor", + Parent = { 1 }, + Position = UDim2.new(0, 10, 0, 0), + Size = UDim2.new(0, 1, 0, 80), + }, + }, + { + 7, + "Frame", + { + BackgroundColor3 = Color3.new(0.14901961386204, 0.14901961386204, 0.14901961386204), + BorderColor3 = Color3.new(0.12549020349979, 0.12549020349979, 0.12549020349979), + Name = "Time", + Parent = { 1 }, + Position = UDim2.new(0, 40, 0, 95), + Size = UDim2.new(0, 100, 0, 20), + }, + }, + { + 8, + "TextBox", + { + BackgroundColor3 = Color3.new(0.25098040699959, 0.25098040699959, 0.25098040699959), + BackgroundTransparency = 1, + BorderColor3 = Color3.new(0.37647062540054, 0.37647062540054, 0.37647062540054), + ClipsDescendants = true, + Font = 3, + Name = "Input", + Parent = { 7 }, + Position = UDim2.new(0, 2, 0, 0), + Size = UDim2.new(0, 98, 0, 20), + Text = "0", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + TextXAlignment = 0, + }, + }, + { + 9, + "TextLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Font = 3, + Name = "Title", + Parent = { 7 }, + Position = UDim2.new(0, -40, 0, 0), + Size = UDim2.new(0, 34, 1, 0), + Text = "Time", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + TextXAlignment = 1, + }, + }, + { + 10, + "Frame", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BorderColor3 = Color3.new(0.21568627655506, 0.21568627655506, 0.21568627655506), + Name = "ColorBox", + Parent = { 1 }, + Position = UDim2.new(0, 220, 0, 95), + Size = UDim2.new(0, 20, 0, 20), + }, + }, + { + 11, + "TextLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Font = 3, + Name = "Title", + Parent = { 10 }, + Position = UDim2.new(0, -40, 0, 0), + Size = UDim2.new(0, 34, 1, 0), + Text = "Color", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + TextXAlignment = 1, + }, + }, + { + 12, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.2352941185236, 0.2352941185236, 0.2352941185236), + BorderColor3 = Color3.new(0.21568627655506, 0.21568627655506, 0.21568627655506), + BorderSizePixel = 0, + Font = 3, + Name = "Close", + Parent = { 1 }, + Position = UDim2.new(1, -90, 0, 95), + Size = UDim2.new(0, 80, 0, 20), + Text = "Close", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + }, + }, + { + 13, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.2352941185236, 0.2352941185236, 0.2352941185236), + BorderColor3 = Color3.new(0.21568627655506, 0.21568627655506, 0.21568627655506), + BorderSizePixel = 0, + Font = 3, + Name = "Reset", + Parent = { 1 }, + Position = UDim2.new(1, -180, 0, 95), + Size = UDim2.new(0, 80, 0, 20), + Text = "Reset", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + }, + }, + { + 14, + "TextButton", + { + AutoButtonColor = false, + BackgroundColor3 = Color3.new(0.2352941185236, 0.2352941185236, 0.2352941185236), + BorderColor3 = Color3.new(0.21568627655506, 0.21568627655506, 0.21568627655506), + BorderSizePixel = 0, + Font = 3, + Name = "Delete", + Parent = { 1 }, + Position = UDim2.new(0, 280, 0, 95), + Size = UDim2.new(0, 80, 0, 20), + Text = "Delete", + TextColor3 = Color3.new(0.86274516582489, 0.86274516582489, 0.86274516582489), + TextSize = 14, + }, + }, + { + 15, + "Frame", + { + BackgroundTransparency = 1, + Name = "Arrow", + Parent = { 1 }, + Size = UDim2.new(0, 16, 0, 16), + Visible = false, + }, + }, + { + 16, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 15 }, + Position = UDim2.new(0, 8, 0, 3), + Size = UDim2.new(0, 1, 0, 2), + }, + }, + { + 17, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 15 }, + Position = UDim2.new(0, 7, 0, 5), + Size = UDim2.new(0, 3, 0, 2), + }, + }, + { + 18, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 15 }, + Position = UDim2.new(0, 6, 0, 7), + Size = UDim2.new(0, 5, 0, 2), + }, + }, + { + 19, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 15 }, + Position = UDim2.new(0, 5, 0, 9), + Size = UDim2.new(0, 7, 0, 2), + }, + }, + { + 20, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 15 }, + Position = UDim2.new(0, 4, 0, 11), + Size = UDim2.new(0, 9, 0, 2), + }, + }, }) local window = Lib.Window.new() window.Resizable = false - window:Resize(650,150) + window:Resize(650, 150) window:SetTitle("ColorSequence Editor") newMt.Window = window newMt.Gui = window.Gui - for i,v in pairs(guiContents:GetChildren()) do + for i, v in pairs(guiContents:GetChildren()) do v.Parent = window.GuiElems.Content end local gui = window.Gui @@ -5113,7 +8343,12 @@ local function main() local user = game:GetService("UserInputService") local mouse = game:GetService("Players").LocalPlayer:GetMouse() - local colors = {{Color3.new(1,0,1),0},{Color3.new(0.2,0.9,0.2),0.2},{Color3.new(0.4,0.5,0.9),0.7},{Color3.new(0.6,1,1),1}} + local colors = { + { Color3.new(1, 0, 1), 0 }, + { Color3.new(0.2, 0.9, 0.2), 0.2 }, + { Color3.new(0.4, 0.5, 0.9), 0.7 }, + { Color3.new(0.6, 1, 1), 1 }, + } local resetSequence = nil local beginPoint = colors[1] @@ -5124,53 +8359,61 @@ local function main() local sequenceLine = Instance.new("Frame") sequenceLine.BorderSizePixel = 0 - sequenceLine.Size = UDim2.new(0,1,1,0) + sequenceLine.Size = UDim2.new(0, 1, 1, 0) - newMt.Sequence = ColorSequence.new(Color3.new(1,1,1)) + newMt.Sequence = ColorSequence.new(Color3.new(1, 1, 1)) local function buildSequence(noupdate) local newPoints = {} - table.sort(colors,function(a,b) return a[2] < b[2] end) - for i,v in pairs(colors) do - table.insert(newPoints,ColorSequenceKeypoint.new(v[2],v[1])) + table.sort(colors, function(a, b) + return a[2] < b[2] + end) + for i, v in pairs(colors) do + table.insert(newPoints, ColorSequenceKeypoint.new(v[2], v[1])) end newMt.Sequence = ColorSequence.new(newPoints) - if not noupdate then newMt.OnSelect:Fire(newMt.Sequence) end + if not noupdate then + newMt.OnSelect:Fire(newMt.Sequence) + end end - local function round(num,places) - local multi = 10^places - return math.floor(num*multi + 0.5)/multi + local function round(num, places) + local multi = 10 ^ places + return math.floor(num * multi + 0.5) / multi end local function updateInputs(point) if point then currentPoint = point local raw = point[2] - timeBox.Text = round(raw,(raw < 0.01 and 5) or (raw < 0.1 and 4) or 3) + timeBox.Text = round(raw, (raw < 0.01 and 5) or (raw < 0.1 and 4) or 3) colorBox.BackgroundColor3 = point[1] end end - local function placeArrow(ind,point) + local function placeArrow(ind, point) local newArrow = arrow:Clone() - newArrow.Position = UDim2.new(0,ind-1,0,0) + newArrow.Position = UDim2.new(0, ind - 1, 0, 0) newArrow.Visible = true newArrow.Parent = arrowFrame newArrow.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then cursor.Visible = true - cursor.Position = UDim2.new(0,9 + newArrow.Position.X.Offset,0,0) + cursor.Position = UDim2.new(0, 9 + newArrow.Position.X.Offset, 0, 0) end if input.UserInputType == Enum.UserInputType.MouseButton1 then updateInputs(point) - if point == beginPoint or point == endPoint or currentlySelected then return end + if point == beginPoint or point == endPoint or currentlySelected then + return + end - local mouseEvent,releaseEvent + local mouseEvent, releaseEvent currentlySelected = true releaseEvent = user.InputEnded:Connect(function(input) - if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end + if input.UserInputType ~= Enum.UserInputType.MouseButton1 then + return + end mouseEvent:Disconnect() releaseEvent:Disconnect() currentlySelected = nil @@ -5179,15 +8422,19 @@ local function main() mouseEvent = user.InputChanged:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then - local maxSize = colorLine.AbsoluteSize.X-1 + local maxSize = colorLine.AbsoluteSize.X - 1 local relativeX = mouse.X - colorLine.AbsolutePosition.X - if relativeX < 0 then relativeX = 0 end - if relativeX > maxSize then relativeX = maxSize end - local raw = relativeX/maxSize - point[2] = relativeX/maxSize + if relativeX < 0 then + relativeX = 0 + end + if relativeX > maxSize then + relativeX = maxSize + end + local raw = relativeX / maxSize + point[2] = relativeX / maxSize updateInputs(point) cursor.Visible = true - cursor.Position = UDim2.new(0,9 + newArrow.Position.X.Offset,0,0) + cursor.Position = UDim2.new(0, 9 + newArrow.Position.X.Offset, 0, 0) buildSequence() newMt:Redraw() end @@ -5205,31 +8452,35 @@ local function main() end local function placeArrows() - for i,v in pairs(colors) do - v[3] = placeArrow(math.floor((colorLine.AbsoluteSize.X-1) * v[2]) + 1,v) + for i, v in pairs(colors) do + v[3] = placeArrow(math.floor((colorLine.AbsoluteSize.X - 1) * v[2]) + 1, v) end end local function redraw(self) - gradient.Color = newMt.Sequence or ColorSequence.new(Color3.new(1,1,1)) + gradient.Color = newMt.Sequence or ColorSequence.new(Color3.new(1, 1, 1)) - for i = 2,#colors do + for i = 2, #colors do local nextColor = colors[i] - local endPos = math.floor((colorLine.AbsoluteSize.X-1) * nextColor[2]) + 1 - nextColor[3].Position = UDim2.new(0,endPos,0,0) - end + local endPos = math.floor((colorLine.AbsoluteSize.X - 1) * nextColor[2]) + 1 + nextColor[3].Position = UDim2.new(0, endPos, 0, 0) + end end newMt.Redraw = redraw - local function loadSequence(self,seq) + local function loadSequence(self, seq) resetSequence = seq - for i,v in pairs(colors) do if v[3] then v[3]:Destroy() end end + for i, v in pairs(colors) do + if v[3] then + v[3]:Destroy() + end + end colors = {} currentlySelected = nil - for i,v in pairs(seq.Keypoints) do - local newPoint = {v.Value,v.Time} - newPoint[3] = placeArrow(v.Time,newPoint) - table.insert(colors,newPoint) + for i, v in pairs(seq.Keypoints) do + local newPoint = { v.Value, v.Time } + newPoint[3] = placeArrow(v.Time, newPoint) + table.insert(colors, newPoint) end beginPoint = colors[1] endPoint = colors[#colors] @@ -5240,32 +8491,44 @@ local function main() end newMt.SetSequence = loadSequence - local function buttonAnimations(button,inverse) - button.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then button.BackgroundTransparency = (inverse and 0.5 or 0.4) end end) - button.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then button.BackgroundTransparency = (inverse and 1 or 0) end end) + local function buttonAnimations(button, inverse) + button.InputBegan:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + button.BackgroundTransparency = (inverse and 0.5 or 0.4) + end + end) + button.InputEnded:Connect(function(input) + if input.UserInputType == Enum.UserInputType.MouseMovement then + button.BackgroundTransparency = (inverse and 1 or 0) + end + end) end colorLine.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 and #colors < 20 then - local maxSize = colorLine.AbsoluteSize.X-1 + local maxSize = colorLine.AbsoluteSize.X - 1 local relativeX = mouse.X - colorLine.AbsolutePosition.X - if relativeX < 0 then relativeX = 0 end - if relativeX > maxSize then relativeX = maxSize end + if relativeX < 0 then + relativeX = 0 + end + if relativeX > maxSize then + relativeX = maxSize + end - local raw = relativeX/maxSize + local raw = relativeX / maxSize local fromColor = nil local toColor = nil - for i,col in pairs(colors) do + for i, col in pairs(colors) do if col[2] >= raw then - fromColor = colors[math.max(i-1,1)] + fromColor = colors[math.max(i - 1, 1)] toColor = colors[i] break end end - local lerpColor = fromColor[1]:lerp(toColor[1],(raw-fromColor[2])/(toColor[2]-fromColor[2])) - local newPoint = {lerpColor,raw} - newPoint[3] = placeArrow(newPoint[2],newPoint) - table.insert(colors,newPoint) + local lerpColor = fromColor[1]:lerp(toColor[1], (raw - fromColor[2]) / (toColor[2] - fromColor[2])) + local newPoint = { lerpColor, raw } + newPoint[3] = placeArrow(newPoint[2], newPoint) + table.insert(colors, newPoint) updateInputs(newPoint) buildSequence() redraw() @@ -5274,25 +8537,31 @@ local function main() colorLine.InputChanged:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then - local maxSize = colorLine.AbsoluteSize.X-1 + local maxSize = colorLine.AbsoluteSize.X - 1 local relativeX = mouse.X - colorLine.AbsolutePosition.X - if relativeX < 0 then relativeX = 0 end - if relativeX > maxSize then relativeX = maxSize end + if relativeX < 0 then + relativeX = 0 + end + if relativeX > maxSize then + relativeX = maxSize + end cursor.Visible = true - cursor.Position = UDim2.new(0,10 + relativeX,0,0) + cursor.Position = UDim2.new(0, 10 + relativeX, 0, 0) end end) colorLine.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then local inArrow = false - for i,v in pairs(colors) do + for i, v in pairs(colors) do if Lib.CheckMouseInGui(v[3]) then inArrow = v[3] end end cursor.Visible = inArrow and true or false - if inArrow then cursor.Position = UDim2.new(0,9 + inArrow.Position.X.Offset,0,0) end + if inArrow then + cursor.Position = UDim2.new(0, 9 + inArrow.Position.X.Offset, 0, 0) + end end end) @@ -5300,7 +8569,7 @@ local function main() local point = currentPoint local num = tonumber(timeBox.Text) if point and num and point ~= beginPoint and point ~= endPoint then - num = math.clamp(num,0,1) + num = math.clamp(num, 0, 1) point[2] = num buildSequence() redraw() @@ -5331,10 +8600,10 @@ local function main() deleteButton.MouseButton1Click:Connect(function() if currentPoint and currentPoint ~= beginPoint and currentPoint ~= endPoint then - for i,v in pairs(colors) do + for i, v in pairs(colors) do if v == currentPoint then v[3]:Destroy() - table.remove(colors,i) + table.remove(colors, i) break end end @@ -5373,7 +8642,7 @@ local function main() return newMt end - return {new = new} + return { new = new } end)() Lib.ViewportTextBox = (function() @@ -5384,34 +8653,45 @@ local function main() TextBox = PH, CursorPos = -1, Gui = PH, - View = PH + View = PH, } local funcs = {} funcs.Update = function(self) local cursorPos = self.CursorPos or -1 local text = self.TextBox.Text - if text == "" then self.TextBox.Position = UDim2.new(0,0,0,0) return end - if cursorPos == -1 then return end + if text == "" then + self.TextBox.Position = UDim2.new(0, 0, 0, 0) + return + end + if cursorPos == -1 then + return + end - local cursorText = text:sub(1,cursorPos-1) + local cursorText = text:sub(1, cursorPos - 1) local pos = nil local leftEnd = -self.TextBox.Position.X.Offset local rightEnd = leftEnd + self.View.AbsoluteSize.X - local totalTextSize = textService:GetTextSize(text,self.TextBox.TextSize,self.TextBox.Font,Vector2.new(999999999,100)).X - local cursorTextSize = textService:GetTextSize(cursorText,self.TextBox.TextSize,self.TextBox.Font,Vector2.new(999999999,100)).X + local totalTextSize = + textService:GetTextSize(text, self.TextBox.TextSize, self.TextBox.Font, Vector2.new(999999999, 100)).X + local cursorTextSize = textService:GetTextSize( + cursorText, + self.TextBox.TextSize, + self.TextBox.Font, + Vector2.new(999999999, 100) + ).X if cursorTextSize > rightEnd then - pos = math.max(-1,cursorTextSize - self.View.AbsoluteSize.X + 2) + pos = math.max(-1, cursorTextSize - self.View.AbsoluteSize.X + 2) elseif cursorTextSize < leftEnd then - pos = math.max(-1,cursorTextSize-2) + pos = math.max(-1, cursorTextSize - 2) elseif totalTextSize < rightEnd then - pos = math.max(-1,totalTextSize - self.View.AbsoluteSize.X + 2) + pos = math.max(-1, totalTextSize - self.View.AbsoluteSize.X + 2) end if pos then - self.TextBox.Position = UDim2.new(0,-pos,0,0) - self.TextBox.Size = UDim2.new(1,pos,1,0) + self.TextBox.Position = UDim2.new(0, -pos, 0, 0) + self.TextBox.Size = UDim2.new(1, pos, 1, 0) end end @@ -5419,14 +8699,14 @@ local function main() return self.TextBox.Text end - funcs.SetText = function(self,text) + funcs.SetText = function(self, text) self.TextBox.Text = text end - local mt = getGuiMT(props,funcs) + local mt = getGuiMT(props, funcs) local function convert(textbox) - local obj = initObj(props,mt) + local obj = initObj(props, mt) local view = Instance.new("Frame") view.BackgroundTransparency = textbox.BackgroundTransparency @@ -5438,8 +8718,8 @@ local function main() view.ClipsDescendants = true view.Name = textbox.Name textbox.BackgroundTransparency = 1 - textbox.Position = UDim2.new(0,0,0,0) - textbox.Size = UDim2.new(1,0,1,0) + textbox.Position = UDim2.new(0, 0, 0, 0) + textbox.Size = UDim2.new(1, 0, 1, 0) textbox.TextXAlignment = Enum.TextXAlignment.Left textbox.Name = "Input" @@ -5450,7 +8730,9 @@ local function main() textbox.Changed:Connect(function(prop) if prop == "Text" or prop == "CursorPosition" or prop == "AbsoluteSize" then local cursorPos = obj.TextBox.CursorPosition - if cursorPos ~= -1 then obj.CursorPos = cursorPos end + if cursorPos ~= -1 then + obj.CursorPos = cursorPos + end obj:Update() end end) @@ -5465,7 +8747,7 @@ local function main() local function new() local textBox = Instance.new("TextBox") - textBox.Size = UDim2.new(0,100,0,20) + textBox.Size = UDim2.new(0, 100, 0, 20) textBox.BackgroundColor3 = Settings.Theme.TextBox textBox.BorderColor3 = Settings.Theme.Outline3 textBox.ClearTextOnFocus = false @@ -5476,13 +8758,13 @@ local function main() return convert(textBox) end - return {new = new, convert = convert} + return { new = new, convert = convert } end)() Lib.Label = (function() - local props,funcs = {},{} + local props, funcs = {}, {} - local mt = getGuiMT(props,funcs) + local mt = getGuiMT(props, funcs) local function new() local label = Instance.new("TextLabel") @@ -5490,37 +8772,37 @@ local function main() label.TextXAlignment = Enum.TextXAlignment.Left label.TextColor3 = Settings.Theme.Text label.TextTransparency = 0.1 - label.Size = UDim2.new(0,100,0,20) + label.Size = UDim2.new(0, 100, 0, 20) label.Font = Enum.Font.SourceSans label.TextSize = 14 local obj = setmetatable({ - Gui = label - },mt) + Gui = label, + }, mt) return obj end - return {new = new} + return { new = new } end)() Lib.Frame = (function() - local props,funcs = {},{} + local props, funcs = {}, {} - local mt = getGuiMT(props,funcs) + local mt = getGuiMT(props, funcs) local function new() local fr = Instance.new("Frame") fr.BackgroundColor3 = Settings.Theme.Main1 fr.BorderColor3 = Settings.Theme.Outline1 - fr.Size = UDim2.new(0,50,0,50) + fr.Size = UDim2.new(0, 50, 0, 50) local obj = setmetatable({ - Gui = fr - },mt) + Gui = fr, + }, mt) return obj end - return {new = new} + return { new = new } end)() Lib.Button = (function() @@ -5531,18 +8813,18 @@ local function main() OnClick = SIGNAL, OnDown = SIGNAL, OnUp = SIGNAL, - AllowedButtons = {1} + AllowedButtons = { 1 }, } local funcs = {} local tableFind = table.find - funcs.Trigger = function(self,event,button) - if not self.Disabled and tableFind(self.AllowedButtons,button) then - self["On"..event]:Fire(button) + funcs.Trigger = function(self, event, button) + if not self.Disabled and tableFind(self.AllowedButtons, button) then + self["On" .. event]:Fire(button) end end - funcs.SetDisabled = function(self,dis) + funcs.SetDisabled = function(self, dis) self.Disabled = dis if dis then @@ -5554,35 +8836,53 @@ local function main() end end - local mt = getGuiMT(props,funcs) + local mt = getGuiMT(props, funcs) local function new() local b = Instance.new("TextButton") b.AutoButtonColor = false b.TextColor3 = Settings.Theme.Text b.TextTransparency = 0.1 - b.Size = UDim2.new(0,100,0,20) + b.Size = UDim2.new(0, 100, 0, 20) b.Font = Enum.Font.SourceSans b.TextSize = 14 b.BackgroundColor3 = Settings.Theme.Button b.BorderColor3 = Settings.Theme.Outline2 - local obj = initObj(props,mt) + local obj = initObj(props, mt) obj.Gui = b - obj.Anim = Lib.ButtonAnim(b,{Mode = 2, StartColor = Settings.Theme.Button, HoverColor = Settings.Theme.ButtonHover, PressColor = Settings.Theme.ButtonPress, OutlineColor = Settings.Theme.Outline2}) + obj.Anim = Lib.ButtonAnim(b, { + Mode = 2, + StartColor = Settings.Theme.Button, + HoverColor = Settings.Theme.ButtonHover, + PressColor = Settings.Theme.ButtonPress, + OutlineColor = Settings.Theme.Outline2, + }) - b.MouseButton1Click:Connect(function() obj:Trigger("Click",1) end) - b.MouseButton1Down:Connect(function() obj:Trigger("Down",1) end) - b.MouseButton1Up:Connect(function() obj:Trigger("Up",1) end) + b.MouseButton1Click:Connect(function() + obj:Trigger("Click", 1) + end) + b.MouseButton1Down:Connect(function() + obj:Trigger("Down", 1) + end) + b.MouseButton1Up:Connect(function() + obj:Trigger("Up", 1) + end) - b.MouseButton2Click:Connect(function() obj:Trigger("Click",2) end) - b.MouseButton2Down:Connect(function() obj:Trigger("Down",2) end) - b.MouseButton2Up:Connect(function() obj:Trigger("Up",2) end) + b.MouseButton2Click:Connect(function() + obj:Trigger("Click", 2) + end) + b.MouseButton2Down:Connect(function() + obj:Trigger("Down", 2) + end) + b.MouseButton2Up:Connect(function() + obj:Trigger("Up", 2) + end) return obj end - return {new = new} + return { new = new } end)() Lib.DropDown = (function() @@ -5595,7 +8895,7 @@ local function main() CanBeEmpty = true, Options = {}, GuiElems = {}, - OnSelect = SIGNAL + OnSelect = SIGNAL, } local funcs = {} @@ -5626,68 +8926,123 @@ local function main() context:Show(self.Gui.AbsolutePosition.X, self.Gui.AbsolutePosition.Y + context.ReverseYOffset) end - funcs.SetOptions = function(self,opts) + funcs.SetOptions = function(self, opts) self.Options = opts local context = self.Context local options = self.Options context:Clear() - local onClick = function(option) self.Selected = option self.OnSelect:Fire(option) self:Update() end + local onClick = function(option) + self.Selected = option + self.OnSelect:Fire(option) + self:Update() + end if self.CanBeEmpty then - context:Add({Name = "- Select -", OnClick = function() self.Selected = nil self.OnSelect:Fire(nil) self:Update() end}) + context:Add({ + Name = "- Select -", + OnClick = function() + self.Selected = nil + self.OnSelect:Fire(nil) + self:Update() + end, + }) end - for i = 1,#options do - context:Add({Name = options[i], OnClick = onClick}) + for i = 1, #options do + context:Add({ Name = options[i], OnClick = onClick }) end self:Update() end - funcs.SetSelected = function(self,opt) + funcs.SetSelected = function(self, opt) self.Selected = type(opt) == "number" and self.Options[opt] or opt self:Update() end - local mt = getGuiMT(props,funcs) + local mt = getGuiMT(props, funcs) local function new() local f = Instance.new("TextButton") f.AutoButtonColor = false f.Text = "" - f.Size = UDim2.new(0,100,0,20) + f.Size = UDim2.new(0, 100, 0, 20) f.BackgroundColor3 = Settings.Theme.TextBox f.BorderColor3 = Settings.Theme.Outline3 local label = Lib.Label.new() - label.Position = UDim2.new(0,2,0,0) - label.Size = UDim2.new(1,-22,1,0) + label.Position = UDim2.new(0, 2, 0, 0) + label.Size = UDim2.new(1, -22, 1, 0) label.TextTruncate = Enum.TextTruncate.AtEnd label.Parent = f local arrow = create({ - {1,"Frame",{BackgroundTransparency=1,Name="EnumArrow",Position=UDim2.new(1,-16,0,2),Size=UDim2.new(0,16,0,16),}}, - {2,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={1},Position=UDim2.new(0,8,0,9),Size=UDim2.new(0,1,0,1),}}, - {3,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={1},Position=UDim2.new(0,7,0,8),Size=UDim2.new(0,3,0,1),}}, - {4,"Frame",{BackgroundColor3=Color3.new(0.86274510622025,0.86274510622025,0.86274510622025),BorderSizePixel=0,Parent={1},Position=UDim2.new(0,6,0,7),Size=UDim2.new(0,5,0,1),}}, + { + 1, + "Frame", + { + BackgroundTransparency = 1, + Name = "EnumArrow", + Position = UDim2.new(1, -16, 0, 2), + Size = UDim2.new(0, 16, 0, 16), + }, + }, + { + 2, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 1 }, + Position = UDim2.new(0, 8, 0, 9), + Size = UDim2.new(0, 1, 0, 1), + }, + }, + { + 3, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 1 }, + Position = UDim2.new(0, 7, 0, 8), + Size = UDim2.new(0, 3, 0, 1), + }, + }, + { + 4, + "Frame", + { + BackgroundColor3 = Color3.new(0.86274510622025, 0.86274510622025, 0.86274510622025), + BorderSizePixel = 0, + Parent = { 1 }, + Position = UDim2.new(0, 6, 0, 7), + Size = UDim2.new(0, 5, 0, 1), + }, + }, }) arrow.Parent = f - local obj = initObj(props,mt) + local obj = initObj(props, mt) obj.Gui = f - obj.Anim = Lib.ButtonAnim(f,{Mode = 2, StartColor = Settings.Theme.TextBox, LerpTo = Settings.Theme.Button, LerpDelta = 0.15}) + obj.Anim = Lib.ButtonAnim( + f, + { Mode = 2, StartColor = Settings.Theme.TextBox, LerpTo = Settings.Theme.Button, LerpDelta = 0.15 } + ) obj.Context = Lib.ContextMenu.new() obj.Context.Iconless = true obj.Context.MaxHeight = 200 obj.Selected = nil - obj.GuiElems = {Label = label} - f.MouseButton1Down:Connect(function() obj:ShowOptions() end) + obj.GuiElems = { Label = label } + f.MouseButton1Down:Connect(function() + obj:ShowOptions() + end) obj:Update() return obj end - return {new = new} + return { new = new } end)() Lib.ClickSystem = (function() @@ -5695,26 +9050,33 @@ local function main() LastItem = PH, OnDown = SIGNAL, OnRelease = SIGNAL, - AllowedButtons = {1}, + AllowedButtons = { 1 }, Combo = 0, MaxCombo = 2, ComboTime = 0.5, Items = {}, ItemCons = {}, ClickId = -1, - LastButton = "" + LastButton = "", } local funcs = {} local tostring = tostring local disconnect = function(con) - local pos = table.find(con.Signal.Connections,con) - if pos then table.remove(con.Signal.Connections,pos) end + local pos = table.find(con.Signal.Connections, con) + if pos then + table.remove(con.Signal.Connections, pos) + end end - funcs.Trigger = function(self,item,button) - if table.find(self.AllowedButtons,button) then - if self.LastButton ~= button or self.LastItem ~= item or self.Combo == self.MaxCombo or tick() - self.ClickId > self.ComboTime then + funcs.Trigger = function(self, item, button) + if table.find(self.AllowedButtons, button) then + if + self.LastButton ~= button + or self.LastItem ~= item + or self.Combo == self.MaxCombo + or tick() - self.ClickId > self.ComboTime + then self.Combo = 0 self.LastButton = button self.LastItem = item @@ -5724,52 +9086,60 @@ local function main() local release release = service.UserInputService.InputEnded:Connect(function(input) - if input.UserInputType == Enum.UserInputType["MouseButton"..button] then + if input.UserInputType == Enum.UserInputType["MouseButton" .. button] then release:Disconnect() if Lib.CheckMouseInGui(item) and self.LastButton == button and self.LastItem == item then - self["OnRelease"]:Fire(item,self.Combo,button) + self["OnRelease"]:Fire(item, self.Combo, button) end end end) - self["OnDown"]:Fire(item,self.Combo,button) + self["OnDown"]:Fire(item, self.Combo, button) end end - funcs.Add = function(self,item) - if table.find(self.Items,item) then return end + funcs.Add = function(self, item) + if table.find(self.Items, item) then + return + end local cons = {} - cons[1] = item.MouseButton1Down:Connect(function() self:Trigger(item,1) end) - cons[2] = item.MouseButton2Down:Connect(function() self:Trigger(item,2) end) + cons[1] = item.MouseButton1Down:Connect(function() + self:Trigger(item, 1) + end) + cons[2] = item.MouseButton2Down:Connect(function() + self:Trigger(item, 2) + end) self.ItemCons[item] = cons - self.Items[#self.Items+1] = item + self.Items[#self.Items + 1] = item end - funcs.Remove = function(self,item) - local ind = table.find(self.Items,item) - if not ind then return end + funcs.Remove = function(self, item) + local ind = table.find(self.Items, item) + if not ind then + return + end - for i,v in pairs(self.ItemCons[item]) do + for i, v in pairs(self.ItemCons[item]) do v:Disconnect() end self.ItemCons[item] = nil - table.remove(self.Items,ind) + table.remove(self.Items, ind) end - local mt = {__index = funcs} + local mt = { __index = funcs } local function new() - local obj = initObj(props,mt) + local obj = initObj(props, mt) return obj end - return {new = new} + return { new = new } end)() return Lib end -return {InitDeps = initDeps, InitAfterMain = initAfterMain, Main = main} \ No newline at end of file +return { InitDeps = initDeps, InitAfterMain = initAfterMain, Main = main } diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Properties.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Properties.lua index 5a3f3b6ada..1e6e2b89a5 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Properties.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Properties.lua @@ -744,10 +744,7 @@ local function main() end Properties.MakeSubProp = function(prop, subName, valueType, displayName) - local subProp = {} - for i, v in pairs(prop) do - subProp[i] = v - end + local subProp = table.clone(prop) subProp.RootType = subProp.RootType or subProp.ValueType subProp.ValueType = valueType subProp.SubName = subProp.SubName and (subProp.SubName .. subName) or subName @@ -813,11 +810,7 @@ local function main() if (prop.Name == "SoundId" and prop.Class == "Sound") or (prop.Name == "Asset" and prop.Class == "AudioPlayer") then - local preview = {} - local preview = {} - for k, v in pairs(Properties.SoundPreviewProp) do - preview[k] = v - end + local preview = table.clone(Properties.SoundPreviewProp) preview.Class = prop.Class preview.Category = prop.Category preview.IsSoundPreview = true diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/SettingsEditor/init.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/SettingsEditor/init.lua index 2cd1e2a5ba..8a62115336 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/SettingsEditor/init.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/SettingsEditor/init.lua @@ -12,9 +12,9 @@ local ReplicatedStorage = game:GetService("ReplicatedStorage") local Dex_RemoteFunction = ReplicatedStorage:WaitForChild("NewDex_Event") :: RemoteFunction -- Common Locals -local Main,Lib,Apps,Settings -- Main Containers +local Main, Lib, Apps, Settings -- Main Containers local Explorer, Properties, ScriptViewer, Notebook -- Major Apps -local API,RMD,env,service,plr,create,createSimple -- Main Locals +local API, RMD, env, service, plr, create, createSimple -- Main Locals local function initDeps(data) Main = data.Main @@ -38,7 +38,6 @@ local function initAfterMain() Notebook = Apps.Notebook end - local function main() local SettingsEditor = {} @@ -56,7 +55,7 @@ local function main() Main = Main, Lib = Lib, Apps = Apps, - Settings = Settings + Settings = Settings, }) -- silencer @@ -316,7 +315,6 @@ local function main() return Entry end - SettingsEditor.StringToValue = function(settingInfo, str) local typeName = settingInfo.typeName @@ -325,48 +323,66 @@ local function main() typeName = Apps.Properties.TypeNameConvert[typeName] end - if typeName == "string" or typeName == "Content" then return str elseif Apps.Properties.ToNumberTypes[typeName] then return tonumber(str) elseif typeName == "Vector2" then local vals = str:split(",") - local x,y = tonumber(vals[1]),tonumber(vals[2]) - if x and y and #vals >= 2 then return Vector2.new(x,y) end + local x, y = tonumber(vals[1]), tonumber(vals[2]) + if x and y and #vals >= 2 then + return Vector2.new(x, y) + end elseif typeName == "Vector3" then local vals = str:split(",") - local x,y,z = tonumber(vals[1]),tonumber(vals[2]),tonumber(vals[3]) - if x and y and z and #vals >= 3 then return Vector3.new(x,y,z) end + local x, y, z = tonumber(vals[1]), tonumber(vals[2]), tonumber(vals[3]) + if x and y and z and #vals >= 3 then + return Vector3.new(x, y, z) + end elseif typeName == "UDim" then local vals = str:split(",") - local scale,offset = tonumber(vals[1]),tonumber(vals[2]) - if scale and offset and #vals >= 2 then return UDim.new(scale,offset) end + local scale, offset = tonumber(vals[1]), tonumber(vals[2]) + if scale and offset and #vals >= 2 then + return UDim.new(scale, offset) + end elseif typeName == "UDim2" then - local vals = str:gsub("[{}]",""):split(",") - local xScale,xOffset,yScale,yOffset = tonumber(vals[1]),tonumber(vals[2]),tonumber(vals[3]),tonumber(vals[4]) - if xScale and xOffset and yScale and yOffset and #vals >= 4 then return UDim2.new(xScale,xOffset,yScale,yOffset) end + local vals = str:gsub("[{}]", ""):split(",") + local xScale, xOffset, yScale, yOffset = + tonumber(vals[1]), tonumber(vals[2]), tonumber(vals[3]), tonumber(vals[4]) + if xScale and xOffset and yScale and yOffset and #vals >= 4 then + return UDim2.new(xScale, xOffset, yScale, yOffset) + end elseif typeName == "CFrame" then local vals = str:split(",") - local s,result = pcall(CFrame.new,unpack(vals)) - if s and #vals >= 12 then return result end + local s, result = pcall(CFrame.new, unpack(vals)) + if s and #vals >= 12 then + return result + end elseif typeName == "Rect" then local vals = str:split(",") - local s,result = pcall(Rect.new,unpack(vals)) - if s and #vals >= 4 then return result end + local s, result = pcall(Rect.new, unpack(vals)) + if s and #vals >= 4 then + return result + end elseif typeName == "Ray" then - local vals = str:gsub("[{}]",""):split(",") - local s,origin = pcall(Vector3.new,unpack(vals,1,3)) - local s2,direction = pcall(Vector3.new,unpack(vals,4,6)) - if s and s2 and #vals >= 6 then return Ray.new(origin,direction) end + local vals = str:gsub("[{}]", ""):split(",") + local s, origin = pcall(Vector3.new, unpack(vals, 1, 3)) + local s2, direction = pcall(Vector3.new, unpack(vals, 4, 6)) + if s and s2 and #vals >= 6 then + return Ray.new(origin, direction) + end elseif typeName == "NumberRange" then local vals = str:split(",") - local s,result = pcall(NumberRange.new,unpack(vals)) - if s and #vals >= 1 then return result end + local s, result = pcall(NumberRange.new, unpack(vals)) + if s and #vals >= 1 then + return result + end elseif typeName == "Color3" then - local vals = str:gsub("[{}]",""):split(",") - local s,result = pcall(Color3.fromRGB,unpack(vals)) - if s and #vals >= 3 then return result end + local vals = str:gsub("[{}]", ""):split(",") + local s, result = pcall(Color3.fromRGB, unpack(vals)) + if s and #vals >= 3 then + return result + end end return nil @@ -378,7 +394,7 @@ local function main() if typeName == "Color3" then return Lib.ColorToBytes(val) elseif typeName == "NumberRange" then - return val.Min..", "..val.Max + return val.Min .. ", " .. val.Max end return tostring(val) @@ -387,8 +403,39 @@ local function main() -- InputBox SettingsEditor.CreateInputBox = function(valueBox) local inputBox = create({ - {1,"Frame",{BackgroundColor3=Color3.new(0.14901961386204,0.14901961386204,0.14901961386204),BorderSizePixel=0,Name="InputBox",Size=UDim2.new(0,200,0,22),Visible=false,ZIndex=2,}}, - {2,"TextBox",{BackgroundColor3=Color3.new(0.17647059261799,0.17647059261799,0.17647059261799),BackgroundTransparency=1,BorderColor3=Color3.new(0.062745101749897,0.51764708757401,1),BorderSizePixel=0,ClearTextOnFocus=false,Font=3,Parent={1},PlaceholderColor3=Color3.new(0.69803923368454,0.69803923368454,0.69803923368454),Position=UDim2.new(0,3,0,0),Size=UDim2.new(1,-6,1,0),Text="",TextColor3=Color3.new(1,1,1),TextSize=14,TextXAlignment=0,ZIndex=2,}}, + { + 1, + "Frame", + { + BackgroundColor3 = Color3.new(0.14901961386204, 0.14901961386204, 0.14901961386204), + BorderSizePixel = 0, + Name = "InputBox", + Size = UDim2.new(0, 200, 0, 22), + Visible = false, + ZIndex = 2, + }, + }, + { + 2, + "TextBox", + { + BackgroundColor3 = Color3.new(0.17647059261799, 0.17647059261799, 0.17647059261799), + BackgroundTransparency = 1, + BorderColor3 = Color3.new(0.062745101749897, 0.51764708757401, 1), + BorderSizePixel = 0, + ClearTextOnFocus = false, + Font = 3, + Parent = { 1 }, + PlaceholderColor3 = Color3.new(0.69803923368454, 0.69803923368454, 0.69803923368454), + Position = UDim2.new(0, 3, 0, 0), + Size = UDim2.new(1, -6, 1, 0), + Text = "", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + TextXAlignment = 0, + ZIndex = 2, + }, + }, }) local inputTextBox = inputBox.TextBox inputBox.BackgroundColor3 = Settings.Theme.TextBox @@ -404,7 +451,7 @@ local function main() end) valueBox.Changed:Connect(function(property) - if (property == "Text") then + if property == "Text" then inputTextBox.Text = valueBox.Text end end) @@ -414,13 +461,11 @@ local function main() valueBox.Visible = false end) - Lib.ViewportTextBox.convert(inputTextBox) return inputBox end - SettingsEditor.DisplayColorEditor = function(obj, currentColor) local editor = SettingsEditor.ColorEditor @@ -430,16 +475,20 @@ local function main() SettingsEditor.ColorEditor = editor end - if (editor) then - if (SettingsEditor.ColorEditor.con_OnSelect) then + if editor then + if SettingsEditor.ColorEditor.con_OnSelect then SettingsEditor.ColorEditor.con_OnSelect:Disconnect() SettingsEditor.ColorEditor.con_OnSelect = nil end local connection connection = editor.OnSelect:Connect(function(col) - if not editor.CurrentProp then return end - if not (editor.CurrentProp == obj) then return end + if not editor.CurrentProp then + return + end + if not (editor.CurrentProp == obj) then + return + end local colVal = (col or BrickColor.new(col)) @@ -461,14 +510,13 @@ local function main() return editor end - SettingsEditor.NewPropEntry = function() local newEntry = SettingsEditor.EntryTemplate():Clone() local nameFrame = newEntry.NameFrame local valueFrame = newEntry.ValueFrame local iconFrame = Main.MiscIcons:GetLabel() - iconFrame.Position = UDim2.new(0,2,0,3) + iconFrame.Position = UDim2.new(0, 2, 0, 3) iconFrame.Parent = newEntry.ValueFrame.RightButton return { @@ -484,8 +532,8 @@ local function main() RightButtonIcon = iconFrame, SoundPreview = valueFrame.SoundPreview, SoundPreviewSlider = valueFrame.SoundPreview.TimeLine.Slider, - InfoButton = newEntry.InfoButton - } + InfoButton = newEntry.InfoButton, + }, } end @@ -517,7 +565,6 @@ local function main() local UIGradient = Instance.new("UIGradient") UIGradient.Parent = ColorPreview - return ColorButton end @@ -530,26 +577,24 @@ local function main() self:SetPreviewColor(color) end - local mt = {__index = funcs} + local mt = { __index = funcs } local function new() local colorButton = createButton() local obj = setmetatable({ - Gui = colorButton; + Gui = colorButton, GuiElems = { - ColorButton = colorButton; - ColorPreview = colorButton.ColorPreview; - Gradient = colorButton.ColorPreview.UIGradient; - }; - - OnColorChange = Lib.Signal.new(); + ColorButton = colorButton, + ColorPreview = colorButton.ColorPreview, + Gradient = colorButton.ColorPreview.UIGradient, + }, + OnColorChange = Lib.Signal.new(), }, mt) obj.CurrentColor3 = Color3.fromRGB(255, 255, 255) - colorButton.ZIndex = 2 -- so it's clickable because ColorPreview obstructs it colorButton.MouseButton1Click:Connect(function() @@ -559,20 +604,14 @@ local function main() return obj end - return {new = new} + return { new = new } end)() - SettingsEditor.Update = function() - - end - - SettingsEditor.UpdateView = function() + SettingsEditor.Update = function() end - end + SettingsEditor.UpdateView = function() end - SettingsEditor.Refresh = function() - - end + SettingsEditor.Refresh = function() end SettingsEditor.ScrollBarFrame = function() local ScrollingFrame = Instance.new("ScrollingFrame") @@ -591,7 +630,6 @@ local function main() return ScrollingFrame end - SettingsEditor.CategoryListFrame = function() local List = Instance.new("Frame") List.Name = "List" @@ -601,7 +639,6 @@ local function main() List.BackgroundTransparency = 1 List.BackgroundColor3 = Color3.fromRGB(255, 255, 255) - local UILIstLayout = Instance.new("UIListLayout") UILIstLayout.SortOrder = Enum.SortOrder.LayoutOrder UILIstLayout.Parent = List @@ -609,8 +646,6 @@ local function main() return List end - - -- Creates a dropdown SettingsEditor.CategoryDropdown = (function() local funcs = {} @@ -694,11 +729,11 @@ local function main() end Expand.MouseButton1Click:Connect(function() - if (self.ToggleFrame) then + if self.ToggleFrame then self.ToggleFrame.Visible = not self.ToggleFrame.Visible end - if (self.ToggleFrame.Visible) then + if self.ToggleFrame.Visible then self.Expanded = true else self.Expanded = false @@ -713,9 +748,9 @@ local function main() end function funcs:SetDisplayName(displayName) - if (self.Gui:FindFirstChild("NameFrame")) then + if self.Gui:FindFirstChild("NameFrame") then self.Gui.NameFrame.PropName.Text = displayName - end + end end -- Set the frame to toggle @@ -725,7 +760,6 @@ local function main() return self.ToggleFrame end - local mt = {} mt.__index = funcs @@ -735,7 +769,7 @@ local function main() obj.Gui = createFrame(obj) obj.GuiElems = { - Icon = obj.Gui.NameFrame.Expand.Icon + Icon = obj.Gui.NameFrame.Expand.Icon, } obj.Expanded = true -- Whether expanded @@ -746,56 +780,50 @@ local function main() obj:SetToggleFrame(toggleFrame) - return obj end - return {new = new} + return { new = new } end)() - -- Change a setting SettingsEditor.SetSettingValue = function(categoryName, settingName, settingInfo, newValue) - if (settingInfo.OnChange) then + if settingInfo.OnChange then settingInfo.OnChange(newValue) else Settings[categoryName][settingName] = newValue end end - SettingsEditor.SetupInfoDesc = function() local infoDescBox = SettingsEditor.InfoDescBox -- TODO: Maybe change this - if not (infoDescBox) then + if not infoDescBox then local newFrame = Instance.new("Frame") - newFrame.BackgroundColor3 = Color3.fromRGB(0,0,0) + newFrame.BackgroundColor3 = Color3.fromRGB(0, 0, 0) newFrame.BackgroundTransparency = 0.2 newFrame.BorderSizePixel = 0 - newFrame.Size = UDim2.new(0,0,0,0) + newFrame.Size = UDim2.new(0, 0, 0, 0) newFrame.AutomaticSize = Enum.AutomaticSize.XY newFrame.Visible = false -- not visible local newTextBox = Instance.new("TextBox") newTextBox.BackgroundTransparency = 1 newTextBox.TextColor3 = Color3.fromRGB(255, 255, 255) - newTextBox.Size = UDim2.new(0,0,0,0) + newTextBox.Size = UDim2.new(0, 0, 0, 0) newTextBox.AutomaticSize = Enum.AutomaticSize.XY newTextBox.Parent = newFrame - infoDescBox = newFrame SettingsEditor.InfoDescBox = infoDescBox - infoDescBox.Parent = SettingsEditor.Window.Gui end return infoDescBox end - SettingsEditor.CreateSettingEntry = function(categoryName, settingName, settingInfo) local newEntry = SettingsEditor.NewPropEntry() newEntry.Gui.Parent = settingsListFrame @@ -804,8 +832,8 @@ local function main() local InfoButton: TextBox = newEntry.GuiElems.InfoButton - if (settingInfo.desc) then - local infoDescBox:Frame = SettingsEditor.InfoDescBox + if settingInfo.desc then + local infoDescBox: Frame = SettingsEditor.InfoDescBox local isEnter = false InfoButton.MouseEnter:Connect(function(x, y) @@ -824,7 +852,7 @@ local function main() end) InfoButton.MouseLeave:Connect(function(x, y) - if (isEnter == true) then + if isEnter == true then isEnter = false infoDescBox.Visible = false end @@ -834,20 +862,17 @@ local function main() InfoButton.Visible = false end - -- ValueBox local ValueBox: TextButton = newEntry.Gui.ValueFrame.ValueBox - -- Boolean - if (settingInfo.typeName == "boolean") then + if settingInfo.typeName == "boolean" then -- Checkbox local newCheckbox = Lib.Checkbox.new() -- Set current value newCheckbox:SetState(Settings[categoryName][settingName], false) - -- Whenever Checkbox value changes newCheckbox.OnInput:Connect(function() local newValue = newCheckbox.Toggled @@ -858,9 +883,8 @@ local function main() newCheckbox.Gui.Parent = newEntry.Gui.ValueFrame - -- Color3 - elseif (settingInfo.typeName == "Color3") then + elseif settingInfo.typeName == "Color3" then local colorButton = SettingsEditor.ColorButton.new() colorButton.Gui.Parent = newEntry.Gui.ValueFrame @@ -869,15 +893,12 @@ local function main() colorButton.Gui.Visible = true - -- Fired once color input was changed colorButton.OnColorChange:Connect(function() local newColor = colorButton.CurrentColor3 SettingsEditor.SetSettingValue(categoryName, settingName, settingInfo, newColor) end) - - else -- For anything else local inputBox = SettingsEditor.CreateInputBox(ValueBox) @@ -888,7 +909,7 @@ local function main() inputTextBox.FocusLost:Connect(function() local convertedVal = SettingsEditor.StringToValue(settingInfo, inputTextBox.Text) - if (convertedVal) then + if convertedVal then ValueBox.Text = SettingsEditor.ValueToString(convertedVal) -- Sets value @@ -903,13 +924,12 @@ local function main() return newEntry end - -- Set up the settings. SettingsEditor.SetupSettings = function(categoryIndex, parentTo) local infoTable = SettingsEditor.SettingsInfo[categoryIndex] for _, settingName in ipairs(infoTable.Order) do - if (infoTable.Info[settingName]) then + if infoTable.Info[settingName] then local settingInfo = infoTable.Info[settingName] local newEntry = SettingsEditor.CreateSettingEntry(categoryIndex, settingName, settingInfo) @@ -919,8 +939,6 @@ local function main() end end - - -- Create new Category SettingsEditor.NewCategory = function(indexName, displayName, parentTo) -- indexName, how it should be indexed @@ -933,7 +951,6 @@ local function main() -- Setup settings SettingsEditor.SetupSettings(indexName, categoryListFrame) - local category = SettingsEditor.CategoryDropdown.new(categoryListFrame, displayName) category.Gui.Parent = parentTo @@ -943,17 +960,13 @@ local function main() return category end - - - -- Generate Setting buttons and stuff SettingsEditor.RenderSettings = function() - for _,categoryName in ipairs(SettingsEditor.SettingsInfo._Categories) do + for _, categoryName in ipairs(SettingsEditor.SettingsInfo._Categories) do SettingsEditor.NewCategory(categoryName, categoryName, settingsListFrame) end end - -- Init SettingsEditor.Init = function() local window = Lib.Window.new() @@ -967,20 +980,16 @@ local function main() SettingsEditor.Window.GuiElems.Main.Parent.Name = "Dex_SettingsWindow" -- Change ScreenGui name - -- Setup Gui SettingsEditor.SetupInfoDesc() -- Hover text description SettingsEditor.RenderSettings() -- Sets up UI to change settings - -- Window Add, adds things to the "Content" window:Add(settingsListFrame) end - - return SettingsEditor end -return {InitDeps = initDeps, InitAfterMain = initAfterMain, Main = main} \ No newline at end of file +return { InitDeps = initDeps, InitAfterMain = initAfterMain, Main = main } diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua index d7b24690f0..5590288400 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua @@ -315,20 +315,19 @@ Main = (function() recur(DefaultSettings :: any, Settings) end - Main.LoadSettings = function() - local s, data = pcall(env.readfile or error, "DexSettings.json") - if s and data and data ~= "" then - local s, decoded = service.HttpService:JSONDecode(data) - if s and decoded then - for i, v in next, decoded do - end - else - -- TODO: Notification - end - else - Main.ResetSettings() - end - end + -- Main.LoadSettings = function() + -- local s, data = pcall(env.readfile or error, "DexSettings.json") + -- if s and data and data ~= "" then + -- local s, decoded = service.HttpService:JSONDecode(data) + -- if s and decoded then + -- for i, v in next, decoded do + -- Settings[i] = v + -- end + -- end + -- else + -- Main.ResetSettings() + -- end + -- end Main.FetchAPI = function() local api, rawAPI @@ -1498,7 +1497,7 @@ Main = (function() local a = game:GetService("CoreGui"):GetFullName() end) Main.InitEnv() - Main.LoadSettings() + -- Main.LoadSettings() Main.SetupFilesystem() -- Load Lib From 177fec6090a504b70ba370de43ab6f25c0085d4a Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Fri, 28 Nov 2025 04:36:46 -0500 Subject: [PATCH 12/36] Refactor UI element instantiation and sizing Replaces deprecated Instance.new(parent) syntax with explicit .Parent assignments for all UI elements in Console.lua and ModelViewer.lua. Updates sizing to use UDim2.fromScale and UDim2.fromOffset where appropriate. Removes unused Notebook variable from ModelViewer.lua. These changes improve code clarity and maintainability. --- .../main_NewDex/Modules/Console.lua | 95 ++++++++++++------- .../main_NewDex/Modules/ModelViewer.lua | 11 ++- 2 files changed, 69 insertions(+), 37 deletions(-) diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Console.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Console.lua index ec901ebc08..adff6f3cc8 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Console.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Console.lua @@ -51,13 +51,14 @@ local function main() Console.Window = window -- StarterGui.ScreenGui.Console - ConsoleFrame = Instance.new("ImageButton", window.GuiElems.Content) + ConsoleFrame = Instance.new("ImageButton") + ConsoleFrame.Parent = window.GuiElems.Content ConsoleFrame["BorderSizePixel"] = 0 ConsoleFrame["AutoButtonColor"] = false ConsoleFrame["BackgroundTransparency"] = 1 ConsoleFrame["BackgroundColor3"] = Color3.fromRGB(47, 47, 47) ConsoleFrame["Selectable"] = false - ConsoleFrame["Size"] = UDim2.new(1, 0, 1, 0) + ConsoleFrame["Size"] = UDim2.fromScale(1, 1) ConsoleFrame["BorderColor3"] = Color3.fromRGB(0, 0, 0) ConsoleFrame["Name"] = [[Console]] ConsoleFrame["Position"] = UDim2.new(0, 0, 0, 0) @@ -75,12 +76,14 @@ local function main() G2L["3"]["Name"] = [[CommandLine]] -- StarterGui.ScreenGui.Console.CommandLine.UIStroke - G2L["4"] = Instance.new("UIStroke", G2L["3"]) + G2L["4"] = Instance.new("UIStroke") + G2L["4"].Parent = G2L["3"] G2L["4"]["Transparency"] = 0.65 G2L["4"]["Thickness"] = 1.25 -- StarterGui.ScreenGui.Console.CommandLine.ScrollingFrame - G2L["5"] = Instance.new("ScrollingFrame", G2L["3"]) + G2L["5"] = Instance.new("ScrollingFrame") + G2L["5"].Parent = G2L["3"] G2L["5"]["Active"] = true G2L["5"]["ScrollingDirection"] = Enum.ScrollingDirection.X G2L["5"]["BorderSizePixel"] = 0 @@ -98,7 +101,8 @@ local function main() G2L["5"]["BackgroundTransparency"] = 1 -- StarterGui.ScreenGui.Console.CommandLine.ScrollingFrame.TextBox - G2L["6"] = Instance.new("TextBox", G2L["5"]) + G2L["6"] = Instance.new("TextBox") + G2L["6"].Parent = G2L["5"] G2L["6"]["CursorPosition"] = -1 G2L["6"]["TextXAlignment"] = Enum.TextXAlignment.Left G2L["6"]["PlaceholderColor3"] = Color3.fromRGB(211, 211, 211) @@ -117,11 +121,13 @@ local function main() G2L["6"]["BackgroundTransparency"] = 1 -- StarterGui.ScreenGui.Console.CommandLine.ScrollingFrame.TextBox.UIPadding - G2L["7"] = Instance.new("UIPadding", G2L["6"]) + G2L["7"] = Instance.new("UIPadding") + G2L["7"].Parent = G2L["6"] G2L["7"]["PaddingLeft"] = UDim.new(0, 7) -- StarterGui.ScreenGui.Console.CommandLine.ScrollingFrame.Highlight - G2L["8"] = Instance.new("TextLabel", G2L["5"]) + G2L["8"] = Instance.new("TextLabel") + G2L["8"].Parent = G2L["5"] G2L["8"]["Interactable"] = false G2L["8"]["ZIndex"] = 2 G2L["8"]["BorderSizePixel"] = 0 @@ -141,10 +147,12 @@ local function main() G2L["8"]["Name"] = [[Highlight]] -- StarterGui.ScreenGui.Console.CommandLine.ScrollingFrame.Highlight.UIPadding - G2L["9"] = Instance.new("UIPadding", G2L["8"]) + G2L["9"] = Instance.new("UIPadding") + G2L["9"].Parent = G2L["8"] G2L["9"]["PaddingLeft"] = UDim.new(0, 7) - G2L["backgroundOutput"] = Instance.new("Frame", ConsoleFrame) + G2L["backgroundOutput"] = Instance.new("Frame") + G2L["backgroundOutput"].Parent = ConsoleFrame G2L["backgroundOutput"]["BorderSizePixel"] = 0 G2L["backgroundOutput"]["BackgroundColor3"] = Color3.fromRGB(36, 36, 36) G2L["backgroundOutput"]["Name"] = [[BackgroundOutput]] @@ -162,7 +170,8 @@ local function main() scrollbar.Gui.Down.ZIndex = 3 -- StarterGui.ScreenGui.Console.Output - G2L["a"] = Instance.new("ScrollingFrame", ConsoleFrame) + G2L["a"] = Instance.new("ScrollingFrame") + G2L["a"].Parent = ConsoleFrame G2L["a"]["Active"] = true G2L["a"]["BorderSizePixel"] = 0 G2L["a"]["CanvasSize"] = UDim2.new(0, 0, 0, 0) @@ -194,31 +203,37 @@ local function main() end) -- StarterGui.ScreenGui.Console.Output.UIListLayout - G2L["b"] = Instance.new("UIListLayout", G2L["a"]) + G2L["b"] = Instance.new("UIListLayout") + G2L["b"].Parent = G2L["a"] G2L["b"]["SortOrder"] = Enum.SortOrder.LayoutOrder -- StarterGui.ScreenGui.Console.Output.UIStroke - G2L["c"] = Instance.new("UIStroke", G2L["a"]) + G2L["c"] = Instance.new("UIStroke") + G2L["c"].Parent = G2L["a"] G2L["c"]["Transparency"] = 0.7 G2L["c"]["Thickness"] = 1.25 G2L["c"]["Color"] = Color3.fromRGB(12, 12, 12) -- StarterGui.ScreenGui.Console.Output.OutputTextSize - G2L["d"] = Instance.new("NumberValue", G2L["a"]) + G2L["d"] = Instance.new("NumberValue") + G2L["d"].Parent = G2L["a"] G2L["d"]["Name"] = [[OutputTextSize]] G2L["d"]["Value"] = 15 -- StarterGui.ScreenGui.Console.Output.OutputLimit - G2L["e"] = Instance.new("NumberValue", G2L["a"]) + G2L["e"] = Instance.new("NumberValue") + G2L["e"].Parent = G2L["a"] G2L["e"]["Name"] = [[OutputLimit]] G2L["e"]["Value"] = OutputLimit -- StarterGui.ScreenGui.Console.Output.UIPadding - G2L["f"] = Instance.new("UIPadding", G2L["a"]) + G2L["f"] = Instance.new("UIPadding") + G2L["f"].Parent = G2L["a"] G2L["f"]["PaddingTop"] = UDim.new(0, 2) -- StarterGui.ScreenGui.Console.TextSizeBox - G2L["10"] = Instance.new("Frame", ConsoleFrame) + G2L["10"] = Instance.new("Frame") + G2L["10"].Parent = ConsoleFrame G2L["10"]["BorderSizePixel"] = 0 G2L["10"]["BackgroundColor3"] = Color3.fromRGB(37, 37, 37) G2L["10"]["ClipsDescendants"] = true @@ -228,7 +243,8 @@ local function main() G2L["10"]["Name"] = [[TextSizeBox]] -- StarterGui.ScreenGui.Console.TextSizeBox.TextBox - G2L["11"] = Instance.new("TextBox", G2L["10"]) + G2L["11"] = Instance.new("TextBox") + G2L["11"].Parent = G2L["10"] G2L["11"]["PlaceholderColor3"] = Color3.fromRGB(108, 108, 108) G2L["11"]["BorderSizePixel"] = 0 G2L["11"]["TextWrapped"] = true @@ -245,19 +261,22 @@ local function main() G2L["11"]["BackgroundTransparency"] = 1 -- StarterGui.ScreenGui.Console.TextSizeBox.TextBox.UIPadding - G2L["12"] = Instance.new("UIPadding", G2L["11"]) + G2L["12"] = Instance.new("UIPadding") + G2L["12"].Parent = G2L["11"] G2L["12"]["PaddingTop"] = UDim.new(0, 2) G2L["12"]["PaddingRight"] = UDim.new(0, 5) G2L["12"]["PaddingLeft"] = UDim.new(0, 5) G2L["12"]["PaddingBottom"] = UDim.new(0, 2) -- StarterGui.ScreenGui.Console.TextSizeBox.UIStroke - G2L["13"] = Instance.new("UIStroke", G2L["10"]) + G2L["13"] = Instance.new("UIStroke") + G2L["13"].Parent = G2L["10"] G2L["13"]["Transparency"] = 0.65 G2L["13"]["Thickness"] = 1.25 -- StarterGui.ScreenGui.Console.Clear - G2L["14"] = Instance.new("ImageButton", ConsoleFrame) + G2L["14"] = Instance.new("ImageButton") + G2L["14"].Parent = ConsoleFrame G2L["14"]["BorderSizePixel"] = 0 G2L["14"]["BackgroundColor3"] = Color3.fromRGB(57, 57, 57) G2L["14"]["Size"] = UDim2.new(0, 37, 0, 15) @@ -266,7 +285,8 @@ local function main() G2L["14"]["Position"] = UDim2.new(1, -42, 0, 4) -- StarterGui.ScreenGui.Console.Clear.TextLabel - G2L["15"] = Instance.new("TextLabel", G2L["14"]) + G2L["15"] = Instance.new("TextLabel") + G2L["15"].Parent = G2L["14"] G2L["15"]["TextWrapped"] = true G2L["15"]["Interactable"] = false G2L["15"]["BorderSizePixel"] = 0 @@ -282,12 +302,14 @@ local function main() G2L["15"]["Text"] = [[Clear]] -- StarterGui.ScreenGui.Console.Clear.UIPadding - G2L["16"] = Instance.new("UIPadding", G2L["14"]) + G2L["16"] = Instance.new("UIPadding") + G2L["16"].Parent = G2L["14"] G2L["16"]["PaddingTop"] = UDim.new(0, 1) G2L["16"]["PaddingBottom"] = UDim.new(0, 1) -- StarterGui.ScreenGui.Console.OutputTemplate - G2L["17"] = Instance.new("TextBox", ConsoleFrame) + G2L["17"] = Instance.new("TextBox") + G2L["17"].Parent = ConsoleFrame G2L["17"]["Visible"] = false G2L["17"]["Active"] = false G2L["17"]["Name"] = [[OutputTemplate]] @@ -311,12 +333,14 @@ local function main() G2L["17"]["BackgroundTransparency"] = 1 -- StarterGui.ScreenGui.Console.OutputTemplate.UIPadding - G2L["18"] = Instance.new("UIPadding", G2L["17"]) + G2L["18"] = Instance.new("UIPadding") + G2L["18"].Parent = G2L["17"] G2L["18"]["PaddingRight"] = UDim.new(0, 6) G2L["18"]["PaddingLeft"] = UDim.new(0, 6) -- StarterGui.ScreenGui.Console.CtrlScroll - G2L["19"] = Instance.new("ImageButton", ConsoleFrame) + G2L["19"] = Instance.new("ImageButton") + G2L["19"].Parent = ConsoleFrame G2L["19"]["BorderSizePixel"] = 0 G2L["19"]["BackgroundColor3"] = Color3.fromRGB(57, 57, 57) G2L["19"]["Size"] = UDim2.new(0, 60, 0, 15) @@ -325,7 +349,8 @@ local function main() G2L["19"]["Position"] = UDim2.new(0, 46, 0, 4) -- StarterGui.ScreenGui.Console.CtrlScroll.TextLabel - G2L["1a"] = Instance.new("TextLabel", G2L["19"]) + G2L["1a"] = Instance.new("TextLabel") + G2L["1a"].Parent = G2L["19"] G2L["1a"]["TextWrapped"] = true G2L["1a"]["Interactable"] = false G2L["1a"]["BorderSizePixel"] = 0 @@ -341,12 +366,14 @@ local function main() G2L["1a"]["Text"] = [[Ctrl Scroll]] -- StarterGui.ScreenGui.Console.CtrlScroll.UIPadding - G2L["1b"] = Instance.new("UIPadding", G2L["19"]) + G2L["1b"] = Instance.new("UIPadding") + G2L["1b"].Parent = G2L["19"] G2L["1b"]["PaddingTop"] = UDim.new(0, 1) G2L["1b"]["PaddingBottom"] = UDim.new(0, 1) -- StarterGui.ScreenGui.Console.AutoScroll - G2L["20"] = Instance.new("ImageButton", ConsoleFrame) + G2L["20"] = Instance.new("ImageButton") + G2L["20"].Parent = ConsoleFrame G2L["20"]["BorderSizePixel"] = 0 G2L["20"]["BackgroundColor3"] = Color3.fromRGB(57, 57, 57) G2L["20"]["Size"] = UDim2.new(0, 60, 0, 15) @@ -355,7 +382,8 @@ local function main() G2L["20"]["Position"] = UDim2.new(0, 110, 0, 4) -- StarterGui.ScreenGui.Console.AutoScroll.TextLabel - G2L["1e"] = Instance.new("TextLabel", G2L["20"]) + G2L["1e"] = Instance.new("TextLabel") + G2L["1e"].Parent = G2L["20"] G2L["1e"]["TextWrapped"] = true G2L["1e"]["Interactable"] = false G2L["1e"]["BorderSizePixel"] = 0 @@ -371,16 +399,19 @@ local function main() G2L["1e"]["Text"] = [[Auto Scroll]] -- StarterGui.ScreenGui.Console.AutoScroll.UIPadding - G2L["1f"] = Instance.new("UIPadding", G2L["20"]) + G2L["1f"] = Instance.new("UIPadding") + G2L["1f"].Parent = G2L["20"] G2L["1f"]["PaddingTop"] = UDim.new(0, 1) G2L["1f"]["PaddingBottom"] = UDim.new(0, 1) -- StarterGui.ScreenGui.ConsoleHandler - G2L["1c"] = Instance.new("LocalScript", G2L["1"]) + G2L["1c"] = Instance.new("LocalScript") + G2L["1c"].Parent = G2L["1"] G2L["1c"]["Name"] = [[ConsoleHandler]] -- StarterGui.ScreenGui.ConsoleHandler.SyntaxHighlighter - G2L["1d"] = Instance.new("ModuleScript", G2L["1c"]) + G2L["1d"] = Instance.new("ModuleScript") + G2L["1d"].Parent = G2L["1c"] G2L["1d"]["Name"] = [[SyntaxHighlighter]] -- Require G2L wrapper diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/ModelViewer.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/ModelViewer.lua index fac669e941..72b0e0b2eb 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/ModelViewer.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/ModelViewer.lua @@ -6,7 +6,7 @@ -- Common Locals local Main, Lib, Apps, Settings -- Main Containers -local Explorer, Properties, ScriptViewer, ModelViewer, Notebook -- Major Apps +local Explorer, Properties, ScriptViewer, ModelViewer -- Major Apps local API, RMD, env, service, plr, create, createSimple -- Main Locals local function initDeps(data) @@ -28,7 +28,6 @@ local function initAfterMain() Explorer = Apps.Explorer Properties = Apps.Properties ScriptViewer = Apps.ScriptViewer - Notebook = Apps.Notebook end local function getPath(obj) @@ -162,7 +161,7 @@ local function main() viewportFrame = Instance.new("ViewportFrame") viewportFrame.Parent = window.GuiElems.Content viewportFrame.BackgroundTransparency = 1 - viewportFrame.Size = UDim2.new(1, 0, 1, 0) + viewportFrame.Size = UDim2.fromScale(1, 1) pathLabel = Lib.Label.new() pathLabel.Gui.Parent = window.GuiElems.Content @@ -174,10 +173,12 @@ local function main() pathLabel.Gui.Size = UDim2.new(1, -1, 0, 15) pathLabel.Gui.BackgroundTransparency = 1 - settingsButton = Instance.new("ImageButton", window.GuiElems.Content) + settingsButton = Instance.new("ImageButton") + settingsButton.Parent = window.GuiElems.Content + settingsButton.AnchorPoint = Vector2.new(1, 0) settingsButton.BackgroundTransparency = 1 - settingsButton.Size = UDim2.new(0, 15, 0, 15) + settingsButton.Size = UDim2.fromOffset(15, 15) settingsButton.Position = UDim2.new(1, -3, 0, 3) settingsButton.Image = "rbxassetid://6578871732" settingsButton.ImageTransparency = 0.5 From f03cc2ad913a3c9d47534e5bc9b4b4aeb8d40f84 Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Sat, 29 Nov 2025 01:05:18 -0500 Subject: [PATCH 13/36] Call ResetSettings during initialization Added a call to Main.ResetSettings() in the initialization sequence to ensure settings are initialized with DefaultSettings. This fixes a critical error that prevented dex from loading --- .../Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua | 1 + 1 file changed, 1 insertion(+) diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua index 5590288400..143eeb0568 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua @@ -1498,6 +1498,7 @@ Main = (function() end) Main.InitEnv() -- Main.LoadSettings() + Main.ResetSettings() -- Initialize Settings with DefaultSettings Main.SetupFilesystem() -- Load Lib From 8c3620445641e7244477501ef84432aa13e966e9 Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Sat, 29 Nov 2025 01:22:20 -0500 Subject: [PATCH 14/36] Add client/server mode switch to console Introduces a context switcher UI to toggle between client and server modes in the console. Server logs are now captured and can be viewed in server mode, with log polling and execution routed appropriately. Updates both client and server code to support log retrieval and execution context switching. --- .../main_NewDex/Modules/Console.lua | 137 +++++++++++++++++- .../Server/Plugins/ServerNewDex/init.lua | 79 ++++++++++ 2 files changed, 212 insertions(+), 4 deletions(-) diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Console.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Console.lua index adff6f3cc8..f9b5131bd5 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Console.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Console.lua @@ -404,6 +404,39 @@ local function main() G2L["1f"]["PaddingTop"] = UDim.new(0, 1) G2L["1f"]["PaddingBottom"] = UDim.new(0, 1) + -- StarterGui.ScreenGui.Console.ContextSwitcher (Client/Server) + G2L["21"] = Instance.new("ImageButton") + G2L["21"].Parent = ConsoleFrame + G2L["21"]["BorderSizePixel"] = 0 + G2L["21"]["BackgroundColor3"] = Color3.fromRGB(57, 57, 57) + G2L["21"]["Size"] = UDim2.new(0, 60, 0, 15) + G2L["21"]["BorderColor3"] = Color3.fromRGB(0, 0, 0) + G2L["21"]["Name"] = [[ContextSwitcher]] + G2L["21"]["Position"] = UDim2.new(0, 175, 0, 4) + + -- StarterGui.ScreenGui.Console.ContextSwitcher.TextLabel + G2L["22"] = Instance.new("TextLabel") + G2L["22"].Parent = G2L["21"] + G2L["22"]["TextWrapped"] = true + G2L["22"]["Interactable"] = false + G2L["22"]["BorderSizePixel"] = 0 + G2L["22"]["TextSize"] = 20 + G2L["22"]["TextScaled"] = true + G2L["22"]["BackgroundColor3"] = Color3.fromRGB(255, 255, 255) + G2L["22"]["FontFace"] = + Font.new([[rbxasset://fonts/families/SourceSansPro.json]], Enum.FontWeight.Regular, Enum.FontStyle.Normal) + G2L["22"]["TextColor3"] = Color3.fromRGB(255, 255, 255) + G2L["22"]["BackgroundTransparency"] = 1 + G2L["22"]["Size"] = UDim2.new(1, 0, 1, 0) + G2L["22"]["BorderColor3"] = Color3.fromRGB(0, 0, 0) + G2L["22"]["Text"] = [[Client]] + + -- StarterGui.ScreenGui.Console.ContextSwitcher.UIPadding + G2L["23"] = Instance.new("UIPadding") + G2L["23"].Parent = G2L["21"] + G2L["23"]["PaddingTop"] = UDim.new(0, 1) + G2L["23"]["PaddingBottom"] = UDim.new(0, 1) + -- StarterGui.ScreenGui.ConsoleHandler G2L["1c"] = Instance.new("LocalScript") G2L["1c"].Parent = G2L["1"] @@ -743,6 +776,8 @@ local function main() local CtrlScroll = false local AutoScroll = false + local IsServerMode = false -- false = Client mode, true = Server mode + local ServerLogConnection = nil -- Connection for server logs local LogService = game:GetService("LogService") local Players = game:GetService("Players") @@ -855,7 +890,7 @@ local function main() local focussedOutput - LogService.MessageOut:Connect(function(msg, msgtype) + local function addOutputMessage(msg, msgtype) local formattedText = "" local unformattedText = "" local newOutputText = Console.OutputTemplate:Clone() @@ -903,6 +938,84 @@ local function main() if AutoScroll then Console.Output.CanvasPosition = Vector2.new(0, 9e9) end + end + + -- Context Switcher (Client/Server Mode) + local function updateContextSwitcher() + if IsServerMode then + Console.ContextSwitcher.TextLabel.Text = "Server" + Console.ContextSwitcher.BackgroundColor3 = Color3.fromRGB(11, 90, 175) + else + Console.ContextSwitcher.TextLabel.Text = "Client" + Console.ContextSwitcher.BackgroundColor3 = Color3.fromRGB(56, 56, 56) + end + end + + local function switchToServerMode() + IsServerMode = true + updateContextSwitcher() + + -- Clear current output + for _, log in pairs(Console.Output:GetChildren()) do + if log:IsA("TextBox") then + log:Destroy() + end + end + + -- Request server logs from server + local serverLogs = Dex_RemoteFunction:InvokeServer("GetServerLogs") + if serverLogs and type(serverLogs) == "table" then + for _, logData in ipairs(serverLogs) do + addOutputMessage(logData.message, logData.messageType) + end + end + + -- Start listening for server log updates + if not ServerLogConnection then + ServerLogConnection = RunService.Heartbeat:Connect(function() + local newLogs = Dex_RemoteFunction:InvokeServer("PollServerLogs") + if newLogs and type(newLogs) == "table" then + for _, logData in ipairs(newLogs) do + addOutputMessage(logData.message, logData.messageType) + end + end + end) + end + end + + local function switchToClientMode() + IsServerMode = false + updateContextSwitcher() + + -- Disconnect server log polling + if ServerLogConnection then + ServerLogConnection:Disconnect() + ServerLogConnection = nil + end + + -- Clear current output + for _, log in pairs(Console.Output:GetChildren()) do + if log:IsA("TextBox") then + log:Destroy() + end + end + end + + Console.ContextSwitcher.MouseButton1Click:Connect(function() + if IsServerMode then + switchToClientMode() + else + switchToServerMode() + end + end) + + updateContextSwitcher() + + LogService.MessageOut:Connect(function(msg, msgtype) + -- Only show client logs when in client mode + if not IsServerMode then + addOutputMessage(msg, msgtype) + end end) Console.Output.MouseLeave:Connect(function() @@ -921,10 +1034,26 @@ local function main() Console.CommandLine.ScrollingFrame.TextBox.FocusLost:Connect(function(enterPressed) if enterPressed and Console.CommandLine.ScrollingFrame.TextBox.Text ~= "" then - print("> " .. Console.CommandLine.ScrollingFrame.TextBox.Text) - Dex_RemoteFunction:InvokeServer("Loadstring", Console.CommandLine.ScrollingFrame.TextBox.Text) + local code = Console.CommandLine.ScrollingFrame.TextBox.Text + print("> " .. code) + + -- Execute on server or client based on mode + if IsServerMode then + -- Execute on server + local success, err = Dex_RemoteFunction:InvokeServer("Loadstring", code) + if not success and err then + warn("Server execution error: " .. tostring(err)) + end + else + -- Execute on client through Adonis (checks CodeExecution setting) + -- Remote.LoadCode handles all the bytecode compilation and client execution + local success = Dex_RemoteFunction:InvokeServer("LoadstringClient", code) + if not success then + warn("Client execution failed - check if CodeExecution is enabled") + end + end - -- loadstring(Console.CommandLine.ScrollingFrame.TextBox.Text)() + Console.CommandLine.ScrollingFrame.TextBox.Text = "" end end) end diff --git a/MainModule/Server/Plugins/ServerNewDex/init.lua b/MainModule/Server/Plugins/ServerNewDex/init.lua index f934678ed8..e51d30d236 100644 --- a/MainModule/Server/Plugins/ServerNewDex/init.lua +++ b/MainModule/Server/Plugins/ServerNewDex/init.lua @@ -67,6 +67,27 @@ return function(Vargs) ServerNewDex.newDex_main = newDex_main ServerNewDex.Event = nil ServerNewDex.Authorized = {} --// Users who have been given Dex and are authorized to use the remote event + ServerNewDex.ServerLogs = {} --// Store server logs for each player + + -- Server-side log capturing + local LogService = Service.LogService + local ServerLogHistory = {} -- Shared log history + local MAX_LOG_HISTORY = 500 + + -- Capture server logs + LogService.MessageOut:Connect(function(message, messageType) + local logEntry = { + message = message, + messageType = messageType, + timestamp = os.time() + } + table.insert(ServerLogHistory, logEntry) + + -- Keep log history under limit + if #ServerLogHistory > MAX_LOG_HISTORY then + table.remove(ServerLogHistory, 1) + end + end) local Actions = { destroy = function(p: Player, args, realPlr: Player) @@ -122,6 +143,24 @@ return function(Vargs) local value = args[3] if value ~= nil then + -- Auto-add rbxassetid:// prefix for asset ID properties if user just entered a number + if type(value) == "string" then + local propLower = prop:lower() + -- Check if this is an asset ID property + local isAssetIdProp = propLower:match("id$") + or propLower:match("texture") + or propLower:match("image") + or propLower:match("sound") + or propLower:match("mesh") + or propLower:match("skybox") + or propLower:match("decal") + + -- If it's an asset property and the value is just digits, add the prefix + if isAssetIdProp and value:match("^%d+$") then + value = "rbxassetid://" .. value + end + end + obj[prop] = value return true end @@ -207,8 +246,48 @@ return function(Vargs) else return false, Err end + else + return false, err end end, + + loadstringclient = function(Player: Player, args, realPlr: Player) + assert(Settings.CodeExecution, "CodeExecution must be enabled for this to work.") + -- Use Adonis's Remote.LoadCode to execute on client + -- This handles bytecode compilation and client execution automatically + Remote.LoadCode(realPlr, args[1], false) + return true + end, + + getserverlogs = function(_Player: Player, _args, realPlr: Player) + -- Initialize last index for this player if not exists + if not ServerNewDex.ServerLogs[realPlr.UserId] then + ServerNewDex.ServerLogs[realPlr.UserId] = 0 + end + + -- Return all current server logs + return ServerLogHistory + end, + + pollserverlogs = function(_Player: Player, _args, realPlr: Player) + -- Initialize last index for this player if not exists + if not ServerNewDex.ServerLogs[realPlr.UserId] then + ServerNewDex.ServerLogs[realPlr.UserId] = 0 + end + + local lastIndex = ServerNewDex.ServerLogs[realPlr.UserId] + local newLogs = {} + + -- Get logs since last poll + for i = lastIndex + 1, #ServerLogHistory do + table.insert(newLogs, ServerLogHistory[i]) + end + + -- Update last index + ServerNewDex.ServerLogs[realPlr.UserId] = #ServerLogHistory + + return newLogs + end, } function ServerNewDex.MakeEvent() From a57a6672e5a5ebbefa2ddec05d49f0c710e59118 Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Sat, 29 Nov 2025 01:50:37 -0500 Subject: [PATCH 15/36] Add separate client/server log histories to console Console now maintains distinct log histories for client and server modes, allowing seamless switching without losing logs. Server logs are pushed to all authorized clients via a RemoteEvent, and log history is restored when switching modes. Deprecated polling logic and unified log retrieval under a single action. --- .../main_NewDex/Modules/Console.lua | 199 +++++++++++++++--- .../Server/Plugins/ServerNewDex/init.lua | 52 ++--- 2 files changed, 194 insertions(+), 57 deletions(-) diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Console.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Console.lua index f9b5131bd5..c8494026c2 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Console.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Console.lua @@ -777,14 +777,19 @@ local function main() local CtrlScroll = false local AutoScroll = false local IsServerMode = false -- false = Client mode, true = Server mode - local ServerLogConnection = nil -- Connection for server logs + + -- Separate log histories for client and server + local ClientLogHistory = {} -- Stores client logs when switching to server mode + local ServerLogHistory = {} -- Stores server logs when switching to client mode local LogService = game:GetService("LogService") local Players = game:GetService("Players") local LocalPlayer = Players.LocalPlayer local Mouse = LocalPlayer:GetMouse() local UserInputService = game:GetService("UserInputService") - local RunService = game:GetService("RunService") + + -- Get LogEvent for receiving server logs + local Dex_LogEvent = ReplicatedStorage:WaitForChild("NewDex_LogEvent") :: RemoteEvent local Console = ConsoleFrame local SyntaxHighlightingModule = require(script.SyntaxHighlighter) @@ -951,35 +956,124 @@ local function main() end end + -- Request initial server log history + task.spawn(function() + local initialServerLogs = Dex_RemoteFunction:InvokeServer("GetServerLogHistory") + if initialServerLogs and type(initialServerLogs) == "table" then + for _, logData in ipairs(initialServerLogs) do + local newOutputText = Console.OutputTemplate:Clone() + local formattedText = "" + + if logData.messageType == Enum.MessageType.MessageOutput then + formattedText = os.date("%H:%M:%S", logData.timestamp) + .. ' ' + .. logData.message + .. "" + newOutputText.Text = formattedText + elseif logData.messageType == Enum.MessageType.MessageWarning then + formattedText = os.date("%H:%M:%S", logData.timestamp) + .. ' ' + .. logData.message + .. "" + newOutputText.Text = formattedText + elseif logData.messageType == Enum.MessageType.MessageError then + formattedText = os.date("%H:%M:%S", logData.timestamp) + .. ' ' + .. logData.message + .. "" + newOutputText.Text = formattedText + elseif logData.messageType == Enum.MessageType.MessageInfo then + formattedText = os.date("%H:%M:%S", logData.timestamp) + .. ' ' + .. logData.message + .. "" + newOutputText.Text = formattedText + end + + newOutputText.TextSize = OutputTextSize.Value + table.insert(ServerLogHistory, newOutputText) + end + end + end) + + -- Always listen for server logs (even when not in server mode) + Dex_LogEvent.OnClientEvent:Connect(function(logEntry) + if logEntry then + if IsServerMode then + -- In server mode: display the log immediately + addOutputMessage(logEntry.message, logEntry.messageType) + else + -- In client mode: store in ServerLogHistory for later + local newOutputText = Console.OutputTemplate:Clone() + local formattedText = "" + + if logEntry.messageType == Enum.MessageType.MessageOutput then + formattedText = os.date("%H:%M:%S", logEntry.timestamp) + .. ' ' + .. logEntry.message + .. "" + newOutputText.Text = formattedText + elseif logEntry.messageType == Enum.MessageType.MessageWarning then + formattedText = os.date("%H:%M:%S", logEntry.timestamp) + .. ' ' + .. logEntry.message + .. "" + newOutputText.Text = formattedText + elseif logEntry.messageType == Enum.MessageType.MessageError then + formattedText = os.date("%H:%M:%S", logEntry.timestamp) + .. ' ' + .. logEntry.message + .. "" + newOutputText.Text = formattedText + elseif logEntry.messageType == Enum.MessageType.MessageInfo then + formattedText = os.date("%H:%M:%S", logEntry.timestamp) + .. ' ' + .. logEntry.message + .. "" + newOutputText.Text = formattedText + end + + newOutputText.TextSize = OutputTextSize.Value + table.insert(ServerLogHistory, newOutputText) + + -- Keep server history under limit + if #ServerLogHistory > OutputLimit.Value then + local oldest = table.remove(ServerLogHistory, 1) + if oldest and typeof(oldest) == "Instance" then + oldest:Destroy() + end + end + end + end + end) + local function switchToServerMode() IsServerMode = true updateContextSwitcher() - -- Clear current output + -- Save current client logs to history + ClientLogHistory = {} for _, log in pairs(Console.Output:GetChildren()) do if log:IsA("TextBox") then + table.insert(ClientLogHistory, log:Clone()) log:Destroy() end end - -- Request server logs from server - local serverLogs = Dex_RemoteFunction:InvokeServer("GetServerLogs") - if serverLogs and type(serverLogs) == "table" then - for _, logData in ipairs(serverLogs) do - addOutputMessage(logData.message, logData.messageType) - end + -- Clear displayedOutput array + displayedOutput = {} + + -- Restore server logs from history + for _, savedLog in ipairs(ServerLogHistory) do + local restoredLog = savedLog:Clone() + restoredLog.Parent = Console.Output + restoredLog.Visible = true + table.insert(displayedOutput, restoredLog) end - -- Start listening for server log updates - if not ServerLogConnection then - ServerLogConnection = RunService.Heartbeat:Connect(function() - local newLogs = Dex_RemoteFunction:InvokeServer("PollServerLogs") - if newLogs and type(newLogs) == "table" then - for _, logData in ipairs(newLogs) do - addOutputMessage(logData.message, logData.messageType) - end - end - end) + -- Scroll to bottom + if AutoScroll then + Console.Output.CanvasPosition = Vector2.new(0, 9e9) end end @@ -987,18 +1081,30 @@ local function main() IsServerMode = false updateContextSwitcher() - -- Disconnect server log polling - if ServerLogConnection then - ServerLogConnection:Disconnect() - ServerLogConnection = nil - end - - -- Clear current output + -- Save current server logs to history + ServerLogHistory = {} for _, log in pairs(Console.Output:GetChildren()) do if log:IsA("TextBox") then + table.insert(ServerLogHistory, log:Clone()) log:Destroy() end end + + -- Clear displayedOutput array + displayedOutput = {} + + -- Restore client logs from history + for _, savedLog in ipairs(ClientLogHistory) do + local restoredLog = savedLog:Clone() + restoredLog.Parent = Console.Output + restoredLog.Visible = true + table.insert(displayedOutput, restoredLog) + end + + -- Scroll to bottom + if AutoScroll then + Console.Output.CanvasPosition = Vector2.new(0, 9e9) + end end Console.ContextSwitcher.MouseButton1Click:Connect(function() @@ -1012,9 +1118,48 @@ local function main() updateContextSwitcher() LogService.MessageOut:Connect(function(msg, msgtype) - -- Only show client logs when in client mode if not IsServerMode then + -- In client mode: add log to display addOutputMessage(msg, msgtype) + else + -- In server mode: save to client history for later + local newOutputText = Console.OutputTemplate:Clone() + local formattedText = "" + local unformattedText = "" + + unformattedText = os.date("%H:%M:%S") .. " " .. msg + if msgtype == Enum.MessageType.MessageOutput then + formattedText = os.date("%H:%M:%S") .. ' ' .. msg .. "" + newOutputText.Text = formattedText + elseif msgtype == Enum.MessageType.MessageWarning then + formattedText = os.date("%H:%M:%S") + .. ' ' + .. msg + .. "" + newOutputText.Text = formattedText + elseif msgtype == Enum.MessageType.MessageError then + formattedText = os.date("%H:%M:%S") + .. ' ' + .. msg + .. "" + newOutputText.Text = formattedText + elseif msgtype == Enum.MessageType.MessageInfo then + formattedText = os.date("%H:%M:%S") .. ' ' .. msg .. "" + newOutputText.Text = formattedText + end + + newOutputText.TextSize = OutputTextSize.Value + + -- Store in client history (not displayed yet) + table.insert(ClientLogHistory, newOutputText) + + -- Keep client history under limit + if #ClientLogHistory > OutputLimit.Value then + local oldest = table.remove(ClientLogHistory, 1) + if oldest and typeof(oldest) == "Instance" then + oldest:Destroy() + end + end end end) diff --git a/MainModule/Server/Plugins/ServerNewDex/init.lua b/MainModule/Server/Plugins/ServerNewDex/init.lua index e51d30d236..9d63c58ea4 100644 --- a/MainModule/Server/Plugins/ServerNewDex/init.lua +++ b/MainModule/Server/Plugins/ServerNewDex/init.lua @@ -66,20 +66,20 @@ return function(Vargs) ServerNewDex.newDex_main = newDex_main ServerNewDex.Event = nil + ServerNewDex.LogEvent = nil -- RemoteEvent for pushing logs to clients ServerNewDex.Authorized = {} --// Users who have been given Dex and are authorized to use the remote event - ServerNewDex.ServerLogs = {} --// Store server logs for each player -- Server-side log capturing local LogService = Service.LogService local ServerLogHistory = {} -- Shared log history local MAX_LOG_HISTORY = 500 - -- Capture server logs + -- Capture server logs and broadcast to all authorized Dex clients LogService.MessageOut:Connect(function(message, messageType) local logEntry = { message = message, messageType = messageType, - timestamp = os.time() + timestamp = os.time(), } table.insert(ServerLogHistory, logEntry) @@ -87,6 +87,15 @@ return function(Vargs) if #ServerLogHistory > MAX_LOG_HISTORY then table.remove(ServerLogHistory, 1) end + + -- Broadcast to all authorized Dex clients (not just those viewing server console) + if ServerNewDex.LogEvent then + for player, _ in pairs(ServerNewDex.Authorized) do + if player and player.Parent then + ServerNewDex.LogEvent:FireClient(player, logEntry) + end + end + end end) local Actions = { @@ -259,35 +268,10 @@ return function(Vargs) return true end, - getserverlogs = function(_Player: Player, _args, realPlr: Player) - -- Initialize last index for this player if not exists - if not ServerNewDex.ServerLogs[realPlr.UserId] then - ServerNewDex.ServerLogs[realPlr.UserId] = 0 - end - - -- Return all current server logs + getserverloghistory = function(_Player: Player, _args, realPlr: Player) + -- Send complete server log history to client return ServerLogHistory end, - - pollserverlogs = function(_Player: Player, _args, realPlr: Player) - -- Initialize last index for this player if not exists - if not ServerNewDex.ServerLogs[realPlr.UserId] then - ServerNewDex.ServerLogs[realPlr.UserId] = 0 - end - - local lastIndex = ServerNewDex.ServerLogs[realPlr.UserId] - local newLogs = {} - - -- Get logs since last poll - for i = lastIndex + 1, #ServerLogHistory do - table.insert(newLogs, ServerLogHistory[i]) - end - - -- Update last index - ServerNewDex.ServerLogs[realPlr.UserId] = #ServerLogHistory - - return newLogs - end, } function ServerNewDex.MakeEvent() @@ -314,6 +298,14 @@ return function(Vargs) return MethodFunction(pData, args, Plr) end end + + -- Create LogEvent RemoteEvent for pushing server logs to clients + if not ServerNewDex.LogEvent then + ServerNewDex.LogEvent = Service.New("RemoteEvent", { + Name = "NewDex_LogEvent", + Parent = game:GetService("ReplicatedStorage"), + }, true, true) + end end function ServerNewDex.MakeLocalDexForPlayer(ply, dexGui, destination) From 5373dc237ce05e9623d07c4164516dda20a80dcf Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Sat, 29 Nov 2025 01:58:13 -0500 Subject: [PATCH 16/36] Add command history navigation to console Implements up/down arrow navigation for command history in the console input box, allowing users to recall previously executed commands. Limits history to 50 entries and ensures proper cursor positioning and history index management. --- .../main_NewDex/Modules/Console.lua | 71 +++++++++++++++++++ 1 file changed, 71 insertions(+) diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Console.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Console.lua index c8494026c2..571c5e1dea 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Console.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Console.lua @@ -782,6 +782,11 @@ local function main() local ClientLogHistory = {} -- Stores client logs when switching to server mode local ServerLogHistory = {} -- Stores server logs when switching to client mode + -- Command history for up/down arrow navigation + local CommandHistory = {} -- Stores executed commands + local CommandHistoryIndex = 0 -- Current position in history (0 = no history selected) + local MAX_COMMAND_HISTORY = 50 + local LogService = game:GetService("LogService") local Players = game:GetService("Players") local LocalPlayer = Players.LocalPlayer @@ -1169,12 +1174,19 @@ local function main() end end) + local isNavigatingHistory = false -- Flag to prevent text change from resetting index + Console.CommandLine.ScrollingFrame.TextBox:GetPropertyChangedSignal("Text"):Connect(function() local oneliner = string.gsub(Console.CommandLine.ScrollingFrame.TextBox.Text, "\n", " ") Console.CommandLine.ScrollingFrame.TextBox.Text = oneliner Console.CommandLine.ScrollingFrame.Highlight.Text = SyntaxHighlightingModule.run(Console.CommandLine.ScrollingFrame.TextBox.Text) + + -- Reset history index when user manually types (not from arrow navigation) + if not isNavigatingHistory and Console.CommandLine.ScrollingFrame.TextBox:IsFocused() then + CommandHistoryIndex = 0 + end end) Console.CommandLine.ScrollingFrame.TextBox.FocusLost:Connect(function(enterPressed) @@ -1182,6 +1194,13 @@ local function main() local code = Console.CommandLine.ScrollingFrame.TextBox.Text print("> " .. code) + -- Add to command history + table.insert(CommandHistory, code) + if #CommandHistory > MAX_COMMAND_HISTORY then + table.remove(CommandHistory, 1) + end + CommandHistoryIndex = 0 -- Reset history index + -- Execute on server or client based on mode if IsServerMode then -- Execute on server @@ -1199,6 +1218,58 @@ local function main() end Console.CommandLine.ScrollingFrame.TextBox.Text = "" + + -- Re-focus the textbox after executing command + task.defer(function() + Console.CommandLine.ScrollingFrame.TextBox:CaptureFocus() + end) + end + end) + + UserInputService.InputBegan:Connect(function(input, gameProcessed) + -- if gameProcessed then + -- return + -- end + + if Console.CommandLine.ScrollingFrame.TextBox:IsFocused() then + if input.KeyCode == Enum.KeyCode.Up then + -- Navigate to older command + if #CommandHistory > 0 and CommandHistoryIndex < #CommandHistory then + CommandHistoryIndex = CommandHistoryIndex + 1 + local historyItem = CommandHistory[#CommandHistory - CommandHistoryIndex + 1] + isNavigatingHistory = true + Console.CommandLine.ScrollingFrame.TextBox.Text = historyItem + -- Move cursor to end after text is set + task.spawn(function() + task.wait() + Console.CommandLine.ScrollingFrame.TextBox.CursorPosition = #historyItem + 1 + isNavigatingHistory = false + end) + end + elseif input.KeyCode == Enum.KeyCode.Down then + -- Navigate to newer command + if CommandHistoryIndex > 0 then + CommandHistoryIndex = CommandHistoryIndex - 1 + isNavigatingHistory = true + if CommandHistoryIndex == 0 then + -- Back to empty + Console.CommandLine.ScrollingFrame.TextBox.Text = "" + task.spawn(function() + task.wait() + isNavigatingHistory = false + end) + else + local historyItem = CommandHistory[#CommandHistory - CommandHistoryIndex + 1] + Console.CommandLine.ScrollingFrame.TextBox.Text = historyItem + -- Move cursor to end after text is set + task.spawn(function() + task.wait() + Console.CommandLine.ScrollingFrame.TextBox.CursorPosition = #historyItem + 1 + isNavigatingHistory = false + end) + end + end + end end end) end From 3534e4641933343a0485608a77e28810c1ae3e47 Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Sat, 29 Nov 2025 02:25:49 -0500 Subject: [PATCH 17/36] Add code execution confirmation dialog to console Introduces a warning and confirmation dialog before executing code in the console, shown only on the first execution attempt. This helps prevent accidental or unsafe code execution by informing users of potential risks and requiring explicit confirmation. --- .../main_NewDex/Modules/Console.lua | 224 +++++++++++++++--- 1 file changed, 197 insertions(+), 27 deletions(-) diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Console.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Console.lua index 571c5e1dea..c1ba84747a 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Console.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Console.lua @@ -437,6 +437,141 @@ local function main() G2L["23"]["PaddingTop"] = UDim.new(0, 1) G2L["23"]["PaddingBottom"] = UDim.new(0, 1) + -- StarterGui.ScreenGui.Console.ExecuteConfirmation + G2L["24"] = Instance.new("Frame") + G2L["24"].Parent = ConsoleFrame + G2L["24"]["BorderSizePixel"] = 0 + G2L["24"]["BackgroundColor3"] = Color3.fromRGB(40, 40, 40) + G2L["24"]["AnchorPoint"] = Vector2.new(0.5, 0.5) + G2L["24"]["Size"] = UDim2.new(0.85, 0, 0, 170) + G2L["24"]["Position"] = UDim2.new(0.5, 0, 0.5, 0) + G2L["24"]["BorderColor3"] = Color3.fromRGB(0, 0, 0) + G2L["24"]["Name"] = [[ExecuteConfirmation]] + G2L["24"]["Visible"] = false + G2L["24"]["ZIndex"] = 100 + + -- StarterGui.ScreenGui.Console.ExecuteConfirmation.UIStroke + G2L["25"] = Instance.new("UIStroke") + G2L["25"].Parent = G2L["24"] + G2L["25"]["Color"] = Color3.fromRGB(70, 70, 70) + G2L["25"]["Thickness"] = 2 + + -- StarterGui.ScreenGui.Console.ExecuteConfirmation.Title + G2L["26"] = Instance.new("TextLabel") + G2L["26"].Parent = G2L["24"] + G2L["26"]["BorderSizePixel"] = 0 + G2L["26"]["BackgroundColor3"] = Color3.fromRGB(255, 255, 255) + G2L["26"]["TextSize"] = 16 + G2L["26"]["FontFace"] = Font.new([[rbxasset://fonts/families/SourceSansPro.json]], Enum.FontWeight.Bold, Enum.FontStyle.Normal) + G2L["26"]["TextColor3"] = Color3.fromRGB(255, 85, 85) + G2L["26"]["BackgroundTransparency"] = 1 + G2L["26"]["Size"] = UDim2.new(1, 0, 0, 20) + G2L["26"]["BorderColor3"] = Color3.fromRGB(0, 0, 0) + G2L["26"]["Text"] = [[⚠ WARNING: Code Execution ⚠]] + G2L["26"]["Name"] = [[Title]] + G2L["26"]["ZIndex"] = 101 + + -- StarterGui.ScreenGui.Console.ExecuteConfirmation.Warning + G2L["27"] = Instance.new("TextLabel") + G2L["27"].Parent = G2L["24"] + G2L["27"]["BorderSizePixel"] = 0 + G2L["27"]["BackgroundColor3"] = Color3.fromRGB(255, 255, 255) + G2L["27"]["TextSize"] = 11 + G2L["27"]["FontFace"] = Font.new([[rbxasset://fonts/families/SourceSansPro.json]], Enum.FontWeight.Regular, Enum.FontStyle.Normal) + G2L["27"]["TextColor3"] = Color3.fromRGB(255, 200, 100) + G2L["27"]["BackgroundTransparency"] = 1 + G2L["27"]["Size"] = UDim2.new(1, -10, 0, 30) + G2L["27"]["Position"] = UDim2.new(0, 5, 0, 22) + G2L["27"]["BorderColor3"] = Color3.fromRGB(0, 0, 0) + G2L["27"]["Text"] = [[Executing arbitrary code can be dangerous and may harm your game or account. Only execute code you understand and trust.]] + G2L["27"]["Name"] = [[Warning]] + G2L["27"]["TextWrapped"] = true + G2L["27"]["ZIndex"] = 101 + + -- StarterGui.ScreenGui.Console.ExecuteConfirmation.Context + G2L["27b"] = Instance.new("TextLabel") + G2L["27b"].Parent = G2L["24"] + G2L["27b"]["BorderSizePixel"] = 0 + G2L["27b"]["BackgroundColor3"] = Color3.fromRGB(255, 255, 255) + G2L["27b"]["TextSize"] = 11 + G2L["27b"]["FontFace"] = Font.new([[rbxasset://fonts/families/SourceSansPro.json]], Enum.FontWeight.Bold, Enum.FontStyle.Normal) + G2L["27b"]["TextColor3"] = Color3.fromRGB(150, 200, 255) + G2L["27b"]["BackgroundTransparency"] = 1 + G2L["27b"]["Size"] = UDim2.new(1, 0, 0, 15) + G2L["27b"]["Position"] = UDim2.new(0, 0, 0, 54) + G2L["27b"]["BorderColor3"] = Color3.fromRGB(0, 0, 0) + G2L["27b"]["Text"] = [[Execution Context: Client]] + G2L["27b"]["Name"] = [[Context]] + G2L["27b"]["ZIndex"] = 101 + + -- StarterGui.ScreenGui.Console.ExecuteConfirmation.CodePreview + G2L["28"] = Instance.new("ScrollingFrame") + G2L["28"].Parent = G2L["24"] + G2L["28"]["Active"] = true + G2L["28"]["BorderSizePixel"] = 0 + G2L["28"]["BackgroundColor3"] = Color3.fromRGB(30, 30, 30) + G2L["28"]["Size"] = UDim2.new(1, -20, 0, 50) + G2L["28"]["Position"] = UDim2.new(0, 10, 0, 72) + G2L["28"]["BorderColor3"] = Color3.fromRGB(0, 0, 0) + G2L["28"]["ScrollBarThickness"] = 4 + G2L["28"]["Name"] = [[CodePreview]] + G2L["28"]["ZIndex"] = 101 + + -- StarterGui.ScreenGui.Console.ExecuteConfirmation.CodePreview.TextLabel + G2L["29"] = Instance.new("TextLabel") + G2L["29"].Parent = G2L["28"] + G2L["29"]["BorderSizePixel"] = 0 + G2L["29"]["TextXAlignment"] = Enum.TextXAlignment.Left + G2L["29"]["TextYAlignment"] = Enum.TextYAlignment.Top + G2L["29"]["BackgroundColor3"] = Color3.fromRGB(255, 255, 255) + G2L["29"]["TextSize"] = 12 + G2L["29"]["FontFace"] = Font.new([[rbxasset://fonts/families/Inconsolata.json]], Enum.FontWeight.Regular, Enum.FontStyle.Normal) + G2L["29"]["TextColor3"] = Color3.fromRGB(255, 255, 255) + G2L["29"]["BackgroundTransparency"] = 1 + G2L["29"]["AutomaticSize"] = Enum.AutomaticSize.XY + G2L["29"]["Size"] = UDim2.new(1, -10, 1, 0) + G2L["29"]["BorderColor3"] = Color3.fromRGB(0, 0, 0) + G2L["29"]["Text"] = [[print("hello")]] + G2L["29"]["ZIndex"] = 102 + + -- StarterGui.ScreenGui.Console.ExecuteConfirmation.CodePreview.TextLabel.UIPadding + G2L["30"] = Instance.new("UIPadding") + G2L["30"].Parent = G2L["29"] + G2L["30"]["PaddingTop"] = UDim.new(0, 5) + G2L["30"]["PaddingRight"] = UDim.new(0, 5) + G2L["30"]["PaddingLeft"] = UDim.new(0, 5) + G2L["30"]["PaddingBottom"] = UDim.new(0, 5) + + -- StarterGui.ScreenGui.Console.ExecuteConfirmation.Confirm + G2L["31"] = Instance.new("TextButton") + G2L["31"].Parent = G2L["24"] + G2L["31"]["BorderSizePixel"] = 0 + G2L["31"]["BackgroundColor3"] = Color3.fromRGB(40, 120, 40) + G2L["31"]["TextSize"] = 14 + G2L["31"]["FontFace"] = Font.new([[rbxasset://fonts/families/SourceSansPro.json]], Enum.FontWeight.Bold, Enum.FontStyle.Normal) + G2L["31"]["TextColor3"] = Color3.fromRGB(255, 255, 255) + G2L["31"]["Size"] = UDim2.new(0.45, 0, 0, 25) + G2L["31"]["Name"] = [[Confirm]] + G2L["31"]["BorderColor3"] = Color3.fromRGB(0, 0, 0) + G2L["31"]["Text"] = [[Execute]] + G2L["31"]["Position"] = UDim2.new(0.05, 0, 1, -32) + G2L["31"]["ZIndex"] = 101 + + -- StarterGui.ScreenGui.Console.ExecuteConfirmation.Cancel + G2L["32"] = Instance.new("TextButton") + G2L["32"].Parent = G2L["24"] + G2L["32"]["BorderSizePixel"] = 0 + G2L["32"]["BackgroundColor3"] = Color3.fromRGB(120, 40, 40) + G2L["32"]["TextSize"] = 14 + G2L["32"]["FontFace"] = Font.new([[rbxasset://fonts/families/SourceSansPro.json]], Enum.FontWeight.Bold, Enum.FontStyle.Normal) + G2L["32"]["TextColor3"] = Color3.fromRGB(255, 255, 255) + G2L["32"]["Size"] = UDim2.new(0.45, 0, 0, 25) + G2L["32"]["Name"] = [[Cancel]] + G2L["32"]["BorderColor3"] = Color3.fromRGB(0, 0, 0) + G2L["32"]["Text"] = [[Cancel]] + G2L["32"]["Position"] = UDim2.new(0.5, 0, 1, -32) + G2L["32"]["ZIndex"] = 101 + -- StarterGui.ScreenGui.ConsoleHandler G2L["1c"] = Instance.new("LocalScript") G2L["1c"].Parent = G2L["1"] @@ -787,6 +922,9 @@ local function main() local CommandHistoryIndex = 0 -- Current position in history (0 = no history selected) local MAX_COMMAND_HISTORY = 50 + -- Warning prompt state + local HasShownExecutionWarning = false + local LogService = game:GetService("LogService") local Players = game:GetService("Players") local LocalPlayer = Players.LocalPlayer @@ -1189,41 +1327,73 @@ local function main() end end) + -- Function to execute code (called after confirmation) + local function executeCode(code) + print("> " .. code) + + -- Add to command history + table.insert(CommandHistory, code) + if #CommandHistory > MAX_COMMAND_HISTORY then + table.remove(CommandHistory, 1) + end + CommandHistoryIndex = 0 -- Reset history index + + -- Execute on server or client based on mode + if IsServerMode then + -- Execute on server + local success, err = Dex_RemoteFunction:InvokeServer("Loadstring", code) + if not success and err then + warn("Server execution error: " .. tostring(err)) + end + else + -- Execute on client through Adonis (checks CodeExecution setting) + -- Remote.LoadCode handles all the bytecode compilation and client execution + local success = Dex_RemoteFunction:InvokeServer("LoadstringClient", code) + if not success then + warn("Client execution failed - check if CodeExecution is enabled") + end + end + + Console.CommandLine.ScrollingFrame.TextBox.Text = "" + + -- Re-focus the textbox after executing command + task.defer(function() + Console.CommandLine.ScrollingFrame.TextBox:CaptureFocus() + end) + end + + -- Show confirmation dialog (only first time) Console.CommandLine.ScrollingFrame.TextBox.FocusLost:Connect(function(enterPressed) if enterPressed and Console.CommandLine.ScrollingFrame.TextBox.Text ~= "" then local code = Console.CommandLine.ScrollingFrame.TextBox.Text - print("> " .. code) - - -- Add to command history - table.insert(CommandHistory, code) - if #CommandHistory > MAX_COMMAND_HISTORY then - table.remove(CommandHistory, 1) - end - CommandHistoryIndex = 0 -- Reset history index - -- Execute on server or client based on mode - if IsServerMode then - -- Execute on server - local success, err = Dex_RemoteFunction:InvokeServer("Loadstring", code) - if not success and err then - warn("Server execution error: " .. tostring(err)) - end + if not HasShownExecutionWarning then + -- First time: Show warning dialog + Console.ExecuteConfirmation.CodePreview.TextLabel.Text = code + Console.ExecuteConfirmation.Context.Text = "Execution Context: " .. (IsServerMode and "Server" or "Client") + Console.ExecuteConfirmation.Visible = true else - -- Execute on client through Adonis (checks CodeExecution setting) - -- Remote.LoadCode handles all the bytecode compilation and client execution - local success = Dex_RemoteFunction:InvokeServer("LoadstringClient", code) - if not success then - warn("Client execution failed - check if CodeExecution is enabled") - end + -- Already warned: Execute directly + executeCode(code) end + end + end) - Console.CommandLine.ScrollingFrame.TextBox.Text = "" + -- Confirmation dialog - Confirm button + Console.ExecuteConfirmation.Confirm.MouseButton1Click:Connect(function() + local code = Console.ExecuteConfirmation.CodePreview.TextLabel.Text + Console.ExecuteConfirmation.Visible = false + HasShownExecutionWarning = true -- Mark as shown + executeCode(code) + end) - -- Re-focus the textbox after executing command - task.defer(function() - Console.CommandLine.ScrollingFrame.TextBox:CaptureFocus() - end) - end + -- Confirmation dialog - Cancel button + Console.ExecuteConfirmation.Cancel.MouseButton1Click:Connect(function() + Console.ExecuteConfirmation.Visible = false + -- Re-focus the textbox + task.defer(function() + Console.CommandLine.ScrollingFrame.TextBox:CaptureFocus() + end) end) UserInputService.InputBegan:Connect(function(input, gameProcessed) From d37c26531e2f2d330eddfc8ef0d3de568a89fdf9 Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Sat, 29 Nov 2025 02:37:33 -0500 Subject: [PATCH 18/36] Refactor loadstring to use bytecode and NewScript Updated the loadstring function to compile code to bytecode, validate it, and create a new script instance instead of using pcall and direct execution. This improves script handling and error reporting for code execution. --- .../Server/Plugins/ServerNewDex/init.lua | 29 ++++++++++--------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/MainModule/Server/Plugins/ServerNewDex/init.lua b/MainModule/Server/Plugins/ServerNewDex/init.lua index 9d63c58ea4..1d7db57a1d 100644 --- a/MainModule/Server/Plugins/ServerNewDex/init.lua +++ b/MainModule/Server/Plugins/ServerNewDex/init.lua @@ -243,21 +243,22 @@ return function(Vargs) return true end, - loadstring = function(Player: Player, args) + loadstring = function(Player: Player, args, realPlr: Player) assert(Settings.CodeExecution, "CodeExecution must be enabled for this to work.") - local func, err = Core.Loadstring(args[1]) - if func then - local Succ, Err = pcall(function() - func() - end) - if Succ then - return true - else - return false, Err - end - else - return false, err - end + -- Compile to bytecode and validate + local bytecode = Core.Bytecode(assert(args[1], "Missing Script code (argument #1)")) + assert( + string.find(bytecode, "\27Lua"), + `Script unable to be created: {string.gsub(bytecode, "Loadstring%.LuaX:%d+:", "")}` + ) + + -- Create and run the script + local cl = Core.NewScript("Script", args[1], true) + cl.Name = "[Adonis] Script" + cl.Disabled = false + cl.Parent = Service.ServerScriptService + + return true end, loadstringclient = function(Player: Player, args, realPlr: Player) From 291482b600ca1279300ba11c2802c78eb89dd79d Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Sat, 29 Nov 2025 23:04:27 -0500 Subject: [PATCH 19/36] Refactor API and reflection metadata URLs Centralized the API dump and reflection metadata URLs into variables for easier management and reuse. Updated HttpService:GetAsync calls to use these variables. --- MainModule/Server/Plugins/ServerNewDex/init.lua | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/MainModule/Server/Plugins/ServerNewDex/init.lua b/MainModule/Server/Plugins/ServerNewDex/init.lua index 1d7db57a1d..f7ee48fe77 100644 --- a/MainModule/Server/Plugins/ServerNewDex/init.lua +++ b/MainModule/Server/Plugins/ServerNewDex/init.lua @@ -17,6 +17,11 @@ return function(Vargs) local Success, APIDump, Reflection = nil local ServerNewDex = {} + -- API/Reflection URLs + local ROBLOX_CLIENT_TRACKER_BASE = "https://raw.githubusercontent.com/MaximumADHD/Roblox-Client-Tracker/roblox" + local API_DUMP_URL = "https://github.com/MaximumADHD/Roblox-Client-Tracker/raw/roblox/API-Dump.json" + local REFLECTION_METADATA_URL = ROBLOX_CLIENT_TRACKER_BASE .. "/ReflectionMetadata.xml" + local newDex_main = script:WaitForChild("Dex_Client", 120) local Event = ServerNewDex.Event @@ -35,9 +40,7 @@ return function(Vargs) if Server.HTTP.HttpEnabled then while true do Success, APIDump = pcall(function() - return HttpService:GetAsync( - "https://github.com/MaximumADHD/Roblox-Client-Tracker/raw/roblox/API-Dump.json" - ) + return HttpService:GetAsync(API_DUMP_URL) end) if Success and APIDump then break @@ -47,9 +50,7 @@ return function(Vargs) Logs:AddLog("Script", "Successfully loaded instance API dump to Dex") while true do Success, Reflection = pcall(function() - return HttpService:GetAsync( - "https://raw.githubusercontent.com/MaximumADHD/Roblox-Client-Tracker/roblox/ReflectionMetadata.xml" - ) + return HttpService:GetAsync(REFLECTION_METADATA_URL) end) if Success and Reflection then break From a1e33a429725383b23dc595e509c648369121177 Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Sun, 30 Nov 2025 00:13:35 -0500 Subject: [PATCH 20/36] Add RemoteSpy module and server-side monitoring Introduces the RemoteSpy module for client-side remote event monitoring with a UI, and adds server-side support for remote monitoring. Updates init scripts to register and initialize RemoteSpy, and implements server logic to track and broadcast remote event logs to authorized clients. --- .../main_NewDex/Modules/RemoteSpy.lua | 1041 +++++++++++++++++ .../Dex_Client/main_NewDex/init.client.lua | 14 +- .../Server/Plugins/ServerNewDex/init.lua | 91 ++ 3 files changed, 1144 insertions(+), 2 deletions(-) create mode 100644 MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/RemoteSpy.lua diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/RemoteSpy.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/RemoteSpy.lua new file mode 100644 index 0000000000..1ced20f396 --- /dev/null +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/RemoteSpy.lua @@ -0,0 +1,1041 @@ +local RemoteSpy = {} + +-- Common Locals +local Main, Lib, Settings +local createSimple +local Dex_RemoteFunction + +local function initDeps(data) + Main = data.Main + Lib = data.Lib + Settings = data.Settings + + createSimple = data.createSimple + + Dex_RemoteFunction = game:GetService("ReplicatedStorage"):WaitForChild("NewDex_Event") +end + +local function initAfterMain() + -- Nothing needed here for now +end + +local function main() + local RemoteSpy = {} + + local window + local LogList + local DetailPanel + local RemoteLogs = {} + local MaxLogs = 500 + local IsPaused = false + local IsMonitoring = false + local MonitoringClient = false + local LogEventConnection + local ClientHooks = {} -- Store client-side hooks for cleanup + local SelectedLogIndex = nil + local BlockList = {} -- List of blocked remote names/patterns + local AutoScroll = true -- Auto-scroll to top when new logs arrive + local blockListWindow -- Block list editor window + local blockListRefreshCallback = nil -- Callback to refresh block list UI + + -- Get RemoteEvent for receiving logs from server + local RemoteSpy_LogEvent + + -- Check if a remote name is blocked + local function isBlocked(remoteName) + for _, pattern in ipairs(BlockList) do + if remoteName:match(pattern) or remoteName == pattern then + return true + end + end + return false + end + + -- Add to block list + local function addToBlockList(remoteName) + for _, pattern in ipairs(BlockList) do + if pattern == remoteName then + return false -- Already blocked + end + end + table.insert(BlockList, remoteName) + + -- Refresh block list UI if it's open + if blockListRefreshCallback then + blockListRefreshCallback() + end + + return true + end + + -- Remove from block list + local function removeFromBlockList(remoteName) + for i, pattern in ipairs(BlockList) do + if pattern == remoteName then + table.remove(BlockList, i) + + -- Refresh block list UI if it's open + if blockListRefreshCallback then + blockListRefreshCallback() + end + + return true + end + end + return false + end + + -- Utility: Serialize a value to a readable string + local function serializeValue(value, indent, visited) + indent = indent or 0 + visited = visited or {} + local indentStr = string.rep(" ", indent) + + if type(value) == "table" then + if visited[value] then + return "" + end + visited[value] = true + + local result = "{\n" + local hasContent = false + for k, v in pairs(value) do + hasContent = true + result = result .. indentStr .. " [" .. serializeValue(k, indent + 1, visited) .. "] = " .. serializeValue(v, indent + 1, visited) .. ",\n" + end + if hasContent then + result = result .. indentStr .. "}" + else + result = "{}" + end + return result + elseif type(value) == "string" then + return '"' .. value .. '"' + elseif typeof(value) == "Instance" then + return value:GetFullName() .. " (" .. value.ClassName .. ")" + elseif type(value) == "userdata" then + return tostring(value) + else + return tostring(value) + end + end + + -- Format arguments for display + local function formatArgsPreview(args) + if #args == 0 then + return "none" + end + local preview = {} + for i, arg in ipairs(args) do + if i > 3 then + table.insert(preview, "...") + break + end + local argStr = tostring(arg) + if #argStr > 30 then + argStr = argStr:sub(1, 27) .. "..." + end + table.insert(preview, argStr) + end + return table.concat(preview, ", ") + end + + -- Update detail panel with selected log + local function updateDetailPanel(logData) + if not DetailPanel then return end + + -- Clear existing detail content + for _, child in ipairs(DetailPanel:GetChildren()) do + if child.Name ~= "TitleLabel" and not child:IsA("UIListLayout") and not child:IsA("UIPadding") then + child:Destroy() + end + end + + if not logData then + DetailPanel.TitleLabel.Text = "No packet selected" + return + end + + DetailPanel.TitleLabel.Text = "Packet Details" + + local yOffset = 25 + + -- Remote Type + local typeLabel = createSimple("TextLabel", { + Parent = DetailPanel, + BackgroundTransparency = 1, + Position = UDim2.new(0, 5, 0, yOffset), + Size = UDim2.new(1, -10, 0, 15), + Font = Enum.Font.SourceSansBold, + Text = "Type: " .. logData.remoteType, + TextColor3 = Settings.Theme.Text, + TextSize = 12, + TextXAlignment = Enum.TextXAlignment.Left, + }) + yOffset = yOffset + 20 + + -- Remote Name + local nameLabel = createSimple("TextLabel", { + Parent = DetailPanel, + BackgroundTransparency = 1, + Position = UDim2.new(0, 5, 0, yOffset), + Size = UDim2.new(1, -10, 0, 15), + Font = Enum.Font.SourceSans, + Text = "Remote: " .. logData.remoteName, + TextColor3 = Settings.Theme.Text, + TextSize = 11, + TextXAlignment = Enum.TextXAlignment.Left, + TextTruncate = Enum.TextTruncate.AtEnd, + }) + yOffset = yOffset + 20 + + -- Caller + local callerLabel = createSimple("TextLabel", { + Parent = DetailPanel, + BackgroundTransparency = 1, + Position = UDim2.new(0, 5, 0, yOffset), + Size = UDim2.new(1, -10, 0, 15), + Font = Enum.Font.SourceSans, + Text = "Caller: " .. tostring(logData.caller), + TextColor3 = Settings.Theme.Text, + TextSize = 11, + TextXAlignment = Enum.TextXAlignment.Left, + }) + yOffset = yOffset + 20 + + -- Timestamp + local timeLabel = createSimple("TextLabel", { + Parent = DetailPanel, + BackgroundTransparency = 1, + Position = UDim2.new(0, 5, 0, yOffset), + Size = UDim2.new(1, -10, 0, 15), + Font = Enum.Font.Code, + Text = "Time: " .. os.date("%H:%M:%S", logData.timestamp), + TextColor3 = Color3.fromRGB(150, 150, 150), + TextSize = 10, + TextXAlignment = Enum.TextXAlignment.Left, + }) + yOffset = yOffset + 25 + + -- Arguments Section + local argsHeader = createSimple("TextLabel", { + Parent = DetailPanel, + BackgroundTransparency = 1, + Position = UDim2.new(0, 5, 0, yOffset), + Size = UDim2.new(1, -10, 0, 15), + Font = Enum.Font.SourceSansBold, + Text = "Arguments (" .. #logData.rawArgs .. "):", + TextColor3 = Settings.Theme.Text, + TextSize = 12, + TextXAlignment = Enum.TextXAlignment.Left, + }) + yOffset = yOffset + 20 + + -- Display each argument + if #logData.rawArgs == 0 then + local noArgsLabel = createSimple("TextLabel", { + Parent = DetailPanel, + BackgroundTransparency = 1, + Position = UDim2.new(0, 15, 0, yOffset), + Size = UDim2.new(1, -20, 0, 15), + Font = Enum.Font.Code, + Text = "(none)", + TextColor3 = Color3.fromRGB(150, 150, 150), + TextSize = 10, + TextXAlignment = Enum.TextXAlignment.Left, + }) + yOffset = yOffset + 20 + else + for i, arg in ipairs(logData.rawArgs) do + -- Argument index + local argIndexLabel = createSimple("TextLabel", { + Parent = DetailPanel, + BackgroundTransparency = 1, + Position = UDim2.new(0, 10, 0, yOffset), + Size = UDim2.new(1, -15, 0, 15), + Font = Enum.Font.SourceSansBold, + Text = "[" .. i .. "] " .. typeof(arg), + TextColor3 = Color3.fromRGB(100, 200, 255), + TextSize = 11, + TextXAlignment = Enum.TextXAlignment.Left, + }) + yOffset = yOffset + 18 + + -- Argument value (in scrollable text box for long values) + local serialized = serializeValue(arg) + local argValueBox = createSimple("TextBox", { + Parent = DetailPanel, + BackgroundColor3 = Settings.Theme.Main1, + BorderSizePixel = 1, + BorderColor3 = Settings.Theme.Outline1, + Position = UDim2.new(0, 20, 0, yOffset), + Size = UDim2.new(1, -25, 0, math.min(100, math.max(30, #serialized / 2))), + Font = Enum.Font.Code, + Text = serialized, + TextColor3 = Color3.fromRGB(220, 220, 220), + TextSize = 10, + TextXAlignment = Enum.TextXAlignment.Left, + TextYAlignment = Enum.TextYAlignment.Top, + TextWrapped = true, + TextEditable = false, + ClearTextOnFocus = false, + MultiLine = true, + }) + yOffset = yOffset + argValueBox.Size.Y.Offset + 10 + end + end + + DetailPanel.CanvasSize = UDim2.new(0, 0, 0, yOffset + 20) + end + + -- Add log entry to UI (forward declaration) + local addLogEntry + + -- Create UI + local function createUI() + -- Create Window + window = Lib.Window.new() + window:SetTitle("Remote Spy") + window:Resize(800, 450) + RemoteSpy.Window = window + + -- Main Content Frame + local RemoteSpyFrame = createSimple("Frame", { + Name = "RemoteSpyContent", + Parent = window.GuiElems.Content, + BackgroundColor3 = Settings.Theme.Main1, + BorderSizePixel = 0, + Size = UDim2.new(1, 0, 1, 0), + Position = UDim2.new(0, 0, 0, 0), + }) + + -- Control Bar + local ControlBar = createSimple("Frame", { + Name = "ControlBar", + Parent = RemoteSpyFrame, + BackgroundColor3 = Settings.Theme.Main2, + BorderSizePixel = 0, + Position = UDim2.new(0, 0, 0, 0), + Size = UDim2.new(1, 0, 0, 30), + }) + + -- Pause/Resume Button + local PauseButton = createSimple("TextButton", { + Name = "PauseButton", + Parent = ControlBar, + BackgroundColor3 = Settings.Theme.Button, + BorderSizePixel = 0, + Position = UDim2.new(0, 5, 0, 5), + Size = UDim2.new(0, 60, 0, 20), + Font = Enum.Font.SourceSans, + Text = "Pause", + TextColor3 = Settings.Theme.Text, + TextSize = 12, + }) + + -- Clear Button + local ClearButton = createSimple("TextButton", { + Name = "ClearButton", + Parent = ControlBar, + BackgroundColor3 = Settings.Theme.Button, + BorderSizePixel = 0, + Position = UDim2.new(0, 70, 0, 5), + Size = UDim2.new(0, 60, 0, 20), + Font = Enum.Font.SourceSans, + Text = "Clear", + TextColor3 = Settings.Theme.Text, + TextSize = 12, + }) + + -- Server Monitor Button + local ServerMonitorButton = createSimple("TextButton", { + Name = "ServerMonitorButton", + Parent = ControlBar, + BackgroundColor3 = Color3.fromRGB(120, 40, 40), + BorderSizePixel = 0, + Position = UDim2.new(0, 135, 0, 5), + Size = UDim2.new(0, 110, 0, 20), + Font = Enum.Font.SourceSansBold, + Text = "Server: OFF", + TextColor3 = Settings.Theme.Text, + TextSize = 11, + }) + + -- Client Monitor Button + local ClientMonitorButton = createSimple("TextButton", { + Name = "ClientMonitorButton", + Parent = ControlBar, + BackgroundColor3 = Color3.fromRGB(120, 40, 40), + BorderSizePixel = 0, + Position = UDim2.new(0, 250, 0, 5), + Size = UDim2.new(0, 110, 0, 20), + Font = Enum.Font.SourceSansBold, + Text = "Client: OFF", + TextColor3 = Settings.Theme.Text, + TextSize = 11, + }) + + -- Auto-Scroll Toggle Button + local AutoScrollButton = createSimple("TextButton", { + Name = "AutoScrollButton", + Parent = ControlBar, + BackgroundColor3 = Color3.fromRGB(40, 120, 40), + BorderSizePixel = 0, + Position = UDim2.new(0, 365, 0, 5), + Size = UDim2.new(0, 90, 0, 20), + Font = Enum.Font.SourceSans, + Text = "Auto-Scroll", + TextColor3 = Settings.Theme.Text, + TextSize = 11, + }) + + -- Block List Editor Button + local BlockListButton = createSimple("TextButton", { + Name = "BlockListButton", + Parent = ControlBar, + BackgroundColor3 = Settings.Theme.Button, + BorderSizePixel = 0, + Position = UDim2.new(0, 460, 0, 5), + Size = UDim2.new(0, 80, 0, 20), + Font = Enum.Font.SourceSans, + Text = "Block List", + TextColor3 = Settings.Theme.Text, + TextSize = 11, + }) + + -- Status Label + local StatusLabel = createSimple("TextLabel", { + Name = "StatusLabel", + Parent = ControlBar, + BackgroundTransparency = 1, + Position = UDim2.new(0, 545, 0, 0), + Size = UDim2.new(1, -550, 1, 0), + Font = Enum.Font.Code, + Text = "Not monitoring", + TextColor3 = Color3.fromRGB(150, 150, 150), + TextSize = 10, + TextXAlignment = Enum.TextXAlignment.Left, + }) + + -- Left Panel (Log List) + local LeftPanel = createSimple("Frame", { + Name = "LeftPanel", + Parent = RemoteSpyFrame, + BackgroundColor3 = Settings.Theme.Main1, + BorderSizePixel = 0, + Position = UDim2.new(0, 5, 0, 35), + Size = UDim2.new(0.5, -10, 1, -40), + }) + + -- Log List (ScrollingFrame) + LogList = createSimple("ScrollingFrame", { + Name = "LogList", + Parent = LeftPanel, + BackgroundColor3 = Settings.Theme.Main1, + BorderSizePixel = 0, + Size = UDim2.new(1, 0, 1, 0), + ScrollBarThickness = 6, + ScrollBarImageColor3 = Settings.Theme.Outline2, + CanvasSize = UDim2.new(0, 0, 0, 0), + }) + + createSimple("UIListLayout", { + Parent = LogList, + SortOrder = Enum.SortOrder.LayoutOrder, + Padding = UDim.new(0, 2), + }) + + -- Right Panel (Detail View) + local RightPanel = createSimple("Frame", { + Name = "RightPanel", + Parent = RemoteSpyFrame, + BackgroundColor3 = Settings.Theme.Main2, + BorderSizePixel = 1, + BorderColor3 = Settings.Theme.Outline1, + Position = UDim2.new(0.5, 5, 0, 35), + Size = UDim2.new(0.5, -10, 1, -40), + }) + + -- Detail Panel (ScrollingFrame) + DetailPanel = createSimple("ScrollingFrame", { + Name = "DetailPanel", + Parent = RightPanel, + BackgroundColor3 = Settings.Theme.Main2, + BorderSizePixel = 0, + Size = UDim2.new(1, 0, 1, 0), + ScrollBarThickness = 6, + ScrollBarImageColor3 = Settings.Theme.Outline2, + CanvasSize = UDim2.new(0, 0, 0, 0), + }) + + -- Detail Panel Title + createSimple("TextLabel", { + Name = "TitleLabel", + Parent = DetailPanel, + BackgroundTransparency = 1, + Position = UDim2.new(0, 5, 0, 5), + Size = UDim2.new(1, -10, 0, 15), + Font = Enum.Font.SourceSansBold, + Text = "No packet selected", + TextColor3 = Color3.fromRGB(150, 150, 150), + TextSize = 13, + TextXAlignment = Enum.TextXAlignment.Left, + }) + + -- Client-side monitoring setup + local function setupClientMonitoring() + if MonitoringClient then return end + MonitoringClient = true + + -- Hook all existing RemoteEvents and RemoteFunctions + for _, descendant in ipairs(game:GetDescendants()) do + if descendant:IsA("RemoteEvent") then + local remoteName = descendant:GetFullName() + local connection = descendant.OnClientEvent:Connect(function(...) + if IsPaused then return end + + local args = {...} + local formattedArgs = {} + for _, arg in ipairs(args) do + table.insert(formattedArgs, tostring(arg)) + end + + local logData = { + remoteType = "FireClient", + remoteName = remoteName, + caller = "Server", + args = formattedArgs, + rawArgs = args, + timestamp = os.time(), + } + + table.insert(RemoteLogs, 1, logData) + if not IsPaused then + addLogEntry(logData, 1) + end + end) + table.insert(ClientHooks, connection) + end + end + + -- Monitor future RemoteEvents + local connection = game.DescendantAdded:Connect(function(descendant) + if MonitoringClient and descendant:IsA("RemoteEvent") then + task.wait(0.1) + local remoteName = descendant:GetFullName() + local conn = descendant.OnClientEvent:Connect(function(...) + if IsPaused then return end + + local args = {...} + local formattedArgs = {} + for _, arg in ipairs(args) do + table.insert(formattedArgs, tostring(arg)) + end + + local logData = { + remoteType = "FireClient", + remoteName = remoteName, + caller = "Server", + args = formattedArgs, + rawArgs = args, + timestamp = os.time(), + } + + table.insert(RemoteLogs, 1, logData) + if not IsPaused then + addLogEntry(logData, 1) + end + end) + table.insert(ClientHooks, conn) + end + end) + table.insert(ClientHooks, connection) + end + + local function stopClientMonitoring() + MonitoringClient = false + for _, connection in ipairs(ClientHooks) do + connection:Disconnect() + end + ClientHooks = {} + end + + local function updateStatus() + local status = {} + if IsMonitoring then + table.insert(status, "Server") + end + if MonitoringClient then + table.insert(status, "Client") + end + if #status > 0 then + StatusLabel.Text = "Monitoring: " .. table.concat(status, " + ") + StatusLabel.TextColor3 = Color3.fromRGB(100, 255, 100) + else + StatusLabel.Text = "Not monitoring" + StatusLabel.TextColor3 = Color3.fromRGB(150, 150, 150) + end + end + + -- Button Handlers + PauseButton.MouseButton1Click:Connect(function() + IsPaused = not IsPaused + PauseButton.Text = IsPaused and "Resume" or "Pause" + PauseButton.BackgroundColor3 = IsPaused and Color3.fromRGB(120, 40, 40) or Settings.Theme.Button + end) + + ClearButton.MouseButton1Click:Connect(function() + for _, child in ipairs(LogList:GetChildren()) do + if child:IsA("Frame") then + child:Destroy() + end + end + RemoteLogs = {} + SelectedLogIndex = nil + updateDetailPanel(nil) + LogList.CanvasSize = UDim2.new(0, 0, 0, 0) + end) + + ServerMonitorButton.MouseButton1Click:Connect(function() + if not IsMonitoring then + -- Start server monitoring + local success = Dex_RemoteFunction:InvokeServer("StartRemoteSpy") + if success then + IsMonitoring = true + ServerMonitorButton.Text = "Server: ON" + ServerMonitorButton.BackgroundColor3 = Color3.fromRGB(40, 120, 40) + updateStatus() + else + warn("Failed to start server remote monitoring") + end + else + -- Stop server monitoring + local success = Dex_RemoteFunction:InvokeServer("StopRemoteSpy") + if success then + IsMonitoring = false + ServerMonitorButton.Text = "Server: OFF" + ServerMonitorButton.BackgroundColor3 = Color3.fromRGB(120, 40, 40) + updateStatus() + end + end + end) + + ClientMonitorButton.MouseButton1Click:Connect(function() + if not MonitoringClient then + setupClientMonitoring() + ClientMonitorButton.Text = "Client: ON" + ClientMonitorButton.BackgroundColor3 = Color3.fromRGB(40, 120, 40) + updateStatus() + else + stopClientMonitoring() + ClientMonitorButton.Text = "Client: OFF" + ClientMonitorButton.BackgroundColor3 = Color3.fromRGB(120, 40, 40) + updateStatus() + end + end) + + AutoScrollButton.MouseButton1Click:Connect(function() + AutoScroll = not AutoScroll + AutoScrollButton.BackgroundColor3 = AutoScroll and Color3.fromRGB(40, 120, 40) or Color3.fromRGB(120, 40, 40) + end) + + -- Create Block List Editor Window + local function createBlockListEditor() + if blockListWindow then + blockListWindow:Show() + return + end + + blockListWindow = Lib.Window.new() + blockListWindow:SetTitle("Block List Editor") + blockListWindow:Resize(400, 300) + + local editorFrame = createSimple("Frame", { + Name = "BlockListEditorContent", + Parent = blockListWindow.GuiElems.Content, + BackgroundColor3 = Settings.Theme.Main1, + BorderSizePixel = 0, + Size = UDim2.new(1, 0, 1, 0), + }) + + -- Info Note + createSimple("TextLabel", { + Parent = editorFrame, + BackgroundTransparency = 1, + Position = UDim2.new(0, 5, 0, 5), + Size = UDim2.new(1, -10, 0, 15), + Font = Enum.Font.Code, + Text = "Note: Blocking only hides remotes from view, it does not prevent them from firing.", + TextColor3 = Color3.fromRGB(200, 200, 100), + TextSize = 10, + TextXAlignment = Enum.TextXAlignment.Left, + TextWrapped = true, + }) + + -- Add Remote Input Section + local inputLabel = createSimple("TextLabel", { + Parent = editorFrame, + BackgroundTransparency = 1, + Position = UDim2.new(0, 5, 0, 22), + Size = UDim2.new(1, -10, 0, 15), + Font = Enum.Font.SourceSansBold, + Text = "Add Remote to Block List:", + TextColor3 = Settings.Theme.Text, + TextSize = 12, + TextXAlignment = Enum.TextXAlignment.Left, + }) + + local inputBox = createSimple("TextBox", { + Name = "InputBox", + Parent = editorFrame, + BackgroundColor3 = Settings.Theme.TextBox, + BorderSizePixel = 1, + BorderColor3 = Settings.Theme.Outline3, + Position = UDim2.new(0, 5, 0, 42), + Size = UDim2.new(1, -90, 0, 25), + Font = Enum.Font.Code, + PlaceholderText = "Enter remote name or pattern...", + Text = "", + TextColor3 = Settings.Theme.Text, + TextSize = 11, + TextXAlignment = Enum.TextXAlignment.Left, + ClearTextOnFocus = false, + }) + + local addButton = createSimple("TextButton", { + Parent = editorFrame, + BackgroundColor3 = Settings.Theme.Button, + BorderSizePixel = 0, + Position = UDim2.new(1, -80, 0, 25), + Size = UDim2.new(0, 75, 0, 25), + Font = Enum.Font.SourceSansBold, + Text = "Add", + TextColor3 = Settings.Theme.Text, + TextSize = 12, + }) + + -- Block List Display + local listLabel = createSimple("TextLabel", { + Parent = editorFrame, + BackgroundTransparency = 1, + Position = UDim2.new(0, 5, 0, 60), + Size = UDim2.new(1, -10, 0, 15), + Font = Enum.Font.SourceSansBold, + Text = "Blocked Remotes:", + TextColor3 = Settings.Theme.Text, + TextSize = 12, + TextXAlignment = Enum.TextXAlignment.Left, + }) + + local blockListScroll = createSimple("ScrollingFrame", { + Name = "BlockListScroll", + Parent = editorFrame, + BackgroundColor3 = Settings.Theme.Main2, + BorderSizePixel = 1, + BorderColor3 = Settings.Theme.Outline1, + Position = UDim2.new(0, 5, 0, 80), + Size = UDim2.new(1, -10, 1, -85), + ScrollBarThickness = 6, + ScrollBarImageColor3 = Settings.Theme.Outline2, + CanvasSize = UDim2.new(0, 0, 0, 0), + }) + + createSimple("UIListLayout", { + Parent = blockListScroll, + SortOrder = Enum.SortOrder.LayoutOrder, + Padding = UDim.new(0, 2), + }) + + -- Function to refresh block list display + local function refreshBlockList() + for _, child in ipairs(blockListScroll:GetChildren()) do + if child:IsA("Frame") then + child:Destroy() + end + end + + for i, pattern in ipairs(BlockList) do + local entryFrame = createSimple("Frame", { + Name = "BlockEntry", + Parent = blockListScroll, + BackgroundColor3 = Settings.Theme.Main1, + BorderSizePixel = 1, + BorderColor3 = Settings.Theme.Outline1, + Size = UDim2.new(1, -10, 0, 25), + LayoutOrder = i, + }) + + createSimple("TextLabel", { + Parent = entryFrame, + BackgroundTransparency = 1, + Position = UDim2.new(0, 5, 0, 0), + Size = UDim2.new(1, -35, 1, 0), + Font = Enum.Font.Code, + Text = pattern, + TextColor3 = Settings.Theme.Text, + TextSize = 11, + TextXAlignment = Enum.TextXAlignment.Left, + TextTruncate = Enum.TextTruncate.AtEnd, + }) + + local removeBtn = createSimple("TextButton", { + Parent = entryFrame, + BackgroundColor3 = Color3.fromRGB(150, 50, 50), + BorderSizePixel = 0, + Position = UDim2.new(1, -28, 0, 3), + Size = UDim2.new(0, 25, 0, 19), + Font = Enum.Font.SourceSansBold, + Text = "X", + TextColor3 = Settings.Theme.Text, + TextSize = 12, + }) + + removeBtn.MouseButton1Click:Connect(function() + removeFromBlockList(pattern) + refreshBlockList() + end) + end + + blockListScroll.CanvasSize = UDim2.new(0, 0, 0, #BlockList * 27) + end + + -- Add button handler + addButton.MouseButton1Click:Connect(function() + local pattern = inputBox.Text + if pattern and pattern ~= "" then + if addToBlockList(pattern) then + inputBox.Text = "" + refreshBlockList() + end + end + end) + + -- Enter key handler + inputBox.FocusLost:Connect(function(enterPressed) + if enterPressed then + local pattern = inputBox.Text + if pattern and pattern ~= "" then + if addToBlockList(pattern) then + inputBox.Text = "" + refreshBlockList() + end + end + end + end) + + refreshBlockList() + blockListWindow:Show() + end + + BlockListButton.MouseButton1Click:Connect(function() + createBlockListEditor() + end) + + end + + -- Add log entry to UI (implementation) + addLogEntry = function(logData, index) + if IsPaused then + return + end + + -- Check if this remote is blocked + if isBlocked(logData.remoteName) then + return + end + + local logIndex = index or #RemoteLogs + + -- Create log entry frame + local LogEntry = createSimple("TextButton", { + Name = "LogEntry", + Parent = LogList, + BackgroundColor3 = Settings.Theme.Main2, + BorderSizePixel = 0, + Size = UDim2.new(1, -10, 0, 60), + LayoutOrder = index and -index or logIndex, + Text = "", + AutoButtonColor = false, + }) + + createSimple("UIStroke", { + Parent = LogEntry, + Color = Settings.Theme.Outline1, + Thickness = 1, + }) + + -- Timestamp + createSimple("TextLabel", { + Name = "Timestamp", + Parent = LogEntry, + BackgroundTransparency = 1, + Position = UDim2.new(0, 5, 0, 2), + Size = UDim2.new(0, 60, 0, 15), + Font = Enum.Font.Code, + Text = os.date("%H:%M:%S", logData.timestamp), + TextColor3 = Color3.fromRGB(150, 150, 150), + TextSize = 10, + TextXAlignment = Enum.TextXAlignment.Left, + }) + + -- Remote Type + local typeColor = logData.remoteType:match("FireServer") and Color3.fromRGB(100, 200, 255) + or logData.remoteType:match("InvokeServer") and Color3.fromRGB(255, 200, 100) + or logData.remoteType:match("FireClient") and Color3.fromRGB(100, 255, 200) + or logData.remoteType:match("InvokeClient") and Color3.fromRGB(255, 150, 255) + or Color3.fromRGB(255, 150, 100) + + createSimple("TextLabel", { + Name = "Type", + Parent = LogEntry, + BackgroundTransparency = 1, + Position = UDim2.new(0, 70, 0, 2), + Size = UDim2.new(0, 100, 0, 15), + Font = Enum.Font.SourceSansBold, + Text = logData.remoteType, + TextColor3 = typeColor, + TextSize = 10, + TextXAlignment = Enum.TextXAlignment.Left, + }) + + -- Remote Name + createSimple("TextLabel", { + Name = "RemoteName", + Parent = LogEntry, + BackgroundTransparency = 1, + Position = UDim2.new(0, 5, 0, 18), + Size = UDim2.new(1, -10, 0, 15), + Font = Enum.Font.SourceSansBold, + Text = logData.remoteName, + TextColor3 = Settings.Theme.Text, + TextSize = 11, + TextXAlignment = Enum.TextXAlignment.Left, + TextTruncate = Enum.TextTruncate.AtEnd, + }) + + -- Caller + local callerText = "From: " .. tostring(logData.caller) + createSimple("TextLabel", { + Name = "Caller", + Parent = LogEntry, + BackgroundTransparency = 1, + Position = UDim2.new(0, 5, 0, 33), + Size = UDim2.new(1, -10, 0, 12), + Font = Enum.Font.Code, + Text = callerText, + TextColor3 = Color3.fromRGB(200, 200, 200), + TextSize = 9, + TextXAlignment = Enum.TextXAlignment.Left, + TextTruncate = Enum.TextTruncate.AtEnd, + }) + + -- Arguments Preview + local argsText = "Args: " .. formatArgsPreview(logData.rawArgs or logData.args) + createSimple("TextLabel", { + Name = "Args", + Parent = LogEntry, + BackgroundTransparency = 1, + Position = UDim2.new(0, 5, 0, 45), + Size = UDim2.new(1, -45, 0, 12), + Font = Enum.Font.Code, + Text = argsText, + TextColor3 = Color3.fromRGB(180, 180, 180), + TextSize = 9, + TextXAlignment = Enum.TextXAlignment.Left, + TextTruncate = Enum.TextTruncate.AtEnd, + }) + + -- Block Button + local blockButton = createSimple("TextButton", { + Name = "BlockButton", + Parent = LogEntry, + BackgroundColor3 = Color3.fromRGB(150, 50, 50), + BorderSizePixel = 0, + Position = UDim2.new(1, -38, 0, 43), + Size = UDim2.new(0, 35, 0, 15), + Font = Enum.Font.SourceSansBold, + Text = "Block", + TextColor3 = Settings.Theme.Text, + TextSize = 9, + AutoButtonColor = false, + }) + + blockButton.MouseButton1Click:Connect(function() + addToBlockList(logData.remoteName) + -- Remove this entry from the display + LogEntry:Destroy() + end) + + -- Click handler to show details + LogEntry.MouseButton1Click:Connect(function() + -- Deselect previous + if SelectedLogIndex then + local prevEntry = LogList:FindFirstChild("LogEntry") + if prevEntry then + for _, child in ipairs(LogList:GetChildren()) do + if child:IsA("TextButton") and child.LayoutOrder == (index and -index or SelectedLogIndex) then + child.BackgroundColor3 = Settings.Theme.Main2 + end + end + end + end + + -- Select this one + SelectedLogIndex = logIndex + LogEntry.BackgroundColor3 = Settings.Theme.ListSelection + updateDetailPanel(logData) + end) + + -- Limit logs + if #RemoteLogs > MaxLogs then + local oldest = LogList:FindFirstChild("LogEntry") + if oldest then + oldest:Destroy() + end + table.remove(RemoteLogs, #RemoteLogs) + end + + -- Update canvas size + LogList.CanvasSize = UDim2.new(0, 0, 0, #RemoteLogs * 62) + + -- Auto-scroll to top for new entries if enabled + if AutoScroll then + LogList.CanvasPosition = Vector2.new(0, 0) + end + end + + -- Setup listener for server-side remote spy logs + local function setupLogListener() + RemoteSpy_LogEvent = game:GetService("ReplicatedStorage"):WaitForChild("RemoteSpy_LogEvent", 10) + if RemoteSpy_LogEvent then + LogEventConnection = RemoteSpy_LogEvent.OnClientEvent:Connect(function(logData) + if logData and not IsPaused then + -- Add rawArgs field (server sends it as args) + logData.rawArgs = logData.args or {} + -- Convert args to strings for preview + local formattedArgs = {} + for _, arg in ipairs(logData.rawArgs) do + table.insert(formattedArgs, tostring(arg)) + end + logData.args = formattedArgs + + table.insert(RemoteLogs, 1, logData) + addLogEntry(logData, 1) + end + end) + end + end + + -- Initialize + local function init() + createUI() + setupLogListener() + end + + -- Public API + RemoteSpy.Init = init + + return RemoteSpy +end + +return { InitDeps = initDeps, InitAfterMain = initAfterMain, Main = main } diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua index 143eeb0568..0b1a4f077d 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua @@ -14,7 +14,7 @@ ]] -- Main vars -local Main, Explorer, Properties, ScriptViewer, Console, ModelViewer, DefaultSettings, Notebook, Serializer, Lib +local Main, Explorer, Properties, ScriptViewer, Console, ModelViewer, RemoteSpy, DefaultSettings, Notebook, Serializer, Lib local API, RMD local SettingsEditor local AboutMenu @@ -152,7 +152,7 @@ end Main = (function() local Main = {} - Main.ModuleList = { "Explorer", "Properties", "Console", "ModelViewer" } --Main.ModuleList = {"Explorer","Properties","ScriptViewer"} + Main.ModuleList = { "Explorer", "Properties", "Console", "ModelViewer", "RemoteSpy" } --Main.ModuleList = {"Explorer","Properties","ScriptViewer"} Main.Elevated = false Main.MissingEnv = {} Main.Version = "Beta 1.0.6 Adonis" @@ -235,12 +235,14 @@ Main = (function() Properties = Apps.Properties ScriptViewer = Apps.ScriptViewer Console = Apps.Console + RemoteSpy = Apps.RemoteSpy ModelViewer = Apps.ModelViewer Notebook = Apps.Notebook local appTable = { Explorer = Explorer, Properties = Properties, Console = Console, + RemoteSpy = RemoteSpy, ModelViewer = ModelViewer, ScriptViewer = ScriptViewer, Notebook = Notebook, @@ -1469,6 +1471,13 @@ Main = (function() Main.CreateApp({ Name = "Console", IconMap = Main.LargeIcons, Icon = "Output", Window = Console.Window }) Main.CreateApp({ Name = "Model Viewer", IconMap = Main.LargeIcons, Icon = 6, Window = ModelViewer.Window }) + + Main.CreateApp({ + Name = "Remote Spy", + IconMap = Main.MiscIcons, + Icon = "CallRemote", + Window = RemoteSpy.Window, + }) --Main.CreateApp({Name = "Script Viewer", IconMap = Main.LargeIcons, Icon = "Script_Viewer", Window = ScriptViewer.Window}) Lib.ShowGui(gui) @@ -1582,6 +1591,7 @@ Main = (function() Properties.Init() Console.Init() ModelViewer.Init() + RemoteSpy.Init() --ScriptViewer.Init() SettingsEditor.Init() -- init this last diff --git a/MainModule/Server/Plugins/ServerNewDex/init.lua b/MainModule/Server/Plugins/ServerNewDex/init.lua index f7ee48fe77..af17f15129 100644 --- a/MainModule/Server/Plugins/ServerNewDex/init.lua +++ b/MainModule/Server/Plugins/ServerNewDex/init.lua @@ -68,7 +68,9 @@ return function(Vargs) ServerNewDex.newDex_main = newDex_main ServerNewDex.Event = nil ServerNewDex.LogEvent = nil -- RemoteEvent for pushing logs to clients + ServerNewDex.RemoteSpy_LogEvent = nil -- RemoteEvent for RemoteSpy logs ServerNewDex.Authorized = {} --// Users who have been given Dex and are authorized to use the remote event + ServerNewDex.RemoteSpyMonitoring = {} -- Players actively monitoring remotes -- Server-side log capturing local LogService = Service.LogService @@ -274,6 +276,24 @@ return function(Vargs) -- Send complete server log history to client return ServerLogHistory end, + + startremotespy = function(_Player: Player, _args, realPlr: Player) + -- Start monitoring remotes for this player + if not ServerNewDex.RemoteSpyMonitoring[realPlr] then + ServerNewDex.RemoteSpyMonitoring[realPlr] = true + return true + end + return false + end, + + stopremotespy = function(_Player: Player, _args, realPlr: Player) + -- Stop monitoring remotes for this player + if ServerNewDex.RemoteSpyMonitoring[realPlr] then + ServerNewDex.RemoteSpyMonitoring[realPlr] = nil + return true + end + return false + end, } function ServerNewDex.MakeEvent() @@ -308,8 +328,79 @@ return function(Vargs) Parent = game:GetService("ReplicatedStorage"), }, true, true) end + + -- Create RemoteSpy_LogEvent for pushing remote spy logs to clients + if not ServerNewDex.RemoteSpy_LogEvent then + ServerNewDex.RemoteSpy_LogEvent = Service.New("RemoteEvent", { + Name = "RemoteSpy_LogEvent", + Parent = game:GetService("ReplicatedStorage"), + }, true, true) + end end + -- Remote monitoring system + local MonitoredRemotes = {} + local function setupRemoteMonitoring(remote) + if MonitoredRemotes[remote] then + return -- Already monitoring + end + + local remoteName = remote:GetFullName() + local remoteType = remote.ClassName + + if remoteType == "RemoteEvent" then + -- Hook OnServerEvent + local originalEvent = remote.OnServerEvent + MonitoredRemotes[remote] = originalEvent:Connect(function(player, ...) + -- Broadcast to all monitoring clients + for monitoringPlayer, _ in pairs(ServerNewDex.RemoteSpyMonitoring) do + if monitoringPlayer and monitoringPlayer.Parent and ServerNewDex.RemoteSpy_LogEvent then + local args = { ... } + + local logData = { + remoteType = "FireServer", + remoteName = remoteName, + caller = player.Name, + args = args, -- Send raw args to client for detailed inspection + timestamp = os.time(), + } + + ServerNewDex.RemoteSpy_LogEvent:FireClient(monitoringPlayer, logData) + end + end + end) + elseif remoteType == "RemoteFunction" then + -- RemoteFunctions can't be hooked because OnServerInvoke is write-only + -- and we can't override the metatable on Roblox instances + -- For now, just mark as seen but don't actually hook + MonitoredRemotes[remote] = true + end + end + + -- Monitor all existing and future RemoteEvents/RemoteFunctions + local function monitorAllRemotes() + -- Monitor existing remotes (only RemoteEvents will actually be hooked) + for _, descendant in ipairs(game:GetDescendants()) do + if descendant:IsA("RemoteEvent") then + setupRemoteMonitoring(descendant) + end + end + + -- Monitor new remotes + game.DescendantAdded:Connect(function(descendant) + if descendant:IsA("RemoteEvent") then + task.wait(0.1) -- Small delay to let it initialize + setupRemoteMonitoring(descendant) + end + end) + end + + -- Start monitoring when the plugin loads + task.spawn(function() + task.wait(2) -- Wait for game to initialize + monitorAllRemotes() + end) + function ServerNewDex.MakeLocalDexForPlayer(ply, dexGui, destination) if ply then if dexGui and destination then From e9440333b0d4cca17f8d6514b6fb69cab25d1548 Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Sun, 30 Nov 2025 00:16:35 -0500 Subject: [PATCH 21/36] Improve Block List Editor UI and behavior Increased the Block List Editor window width, adjusted UI element positions for better layout, ensured the window stays on top by setting DisplayOrder, and updated block list refresh logic to use a callback for automatic UI updates. --- .../main_NewDex/Modules/RemoteSpy.lua | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/RemoteSpy.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/RemoteSpy.lua index 1ced20f396..3cacf05bb4 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/RemoteSpy.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/RemoteSpy.lua @@ -643,12 +643,14 @@ local function main() local function createBlockListEditor() if blockListWindow then blockListWindow:Show() + blockListWindow.Gui.DisplayOrder = 100 -- Always on top return end blockListWindow = Lib.Window.new() blockListWindow:SetTitle("Block List Editor") - blockListWindow:Resize(400, 300) + blockListWindow:Resize(500, 300) + blockListWindow.Gui.DisplayOrder = 100 -- Always on top local editorFrame = createSimple("Frame", { Name = "BlockListEditorContent", @@ -706,7 +708,7 @@ local function main() Parent = editorFrame, BackgroundColor3 = Settings.Theme.Button, BorderSizePixel = 0, - Position = UDim2.new(1, -80, 0, 25), + Position = UDim2.new(1, -80, 0, 42), Size = UDim2.new(0, 75, 0, 25), Font = Enum.Font.SourceSansBold, Text = "Add", @@ -718,7 +720,7 @@ local function main() local listLabel = createSimple("TextLabel", { Parent = editorFrame, BackgroundTransparency = 1, - Position = UDim2.new(0, 5, 0, 60), + Position = UDim2.new(0, 5, 0, 77), Size = UDim2.new(1, -10, 0, 15), Font = Enum.Font.SourceSansBold, Text = "Blocked Remotes:", @@ -733,8 +735,8 @@ local function main() BackgroundColor3 = Settings.Theme.Main2, BorderSizePixel = 1, BorderColor3 = Settings.Theme.Outline1, - Position = UDim2.new(0, 5, 0, 80), - Size = UDim2.new(1, -10, 1, -85), + Position = UDim2.new(0, 5, 0, 97), + Size = UDim2.new(1, -10, 1, -102), ScrollBarThickness = 6, ScrollBarImageColor3 = Settings.Theme.Outline2, CanvasSize = UDim2.new(0, 0, 0, 0), @@ -792,13 +794,16 @@ local function main() removeBtn.MouseButton1Click:Connect(function() removeFromBlockList(pattern) - refreshBlockList() + -- refreshBlockList is called automatically via callback end) end blockListScroll.CanvasSize = UDim2.new(0, 0, 0, #BlockList * 27) end + -- Set the refresh callback so block buttons can update this UI + blockListRefreshCallback = refreshBlockList + -- Add button handler addButton.MouseButton1Click:Connect(function() local pattern = inputBox.Text From 9564188a5b2a9bc743888bc1c0742e295c3b089d Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Sun, 30 Nov 2025 00:20:28 -0500 Subject: [PATCH 22/36] Refactor RemoteSpy formatting and conditionals Improves code readability in RemoteSpy.lua by expanding string concatenation and conditional statements, and standardizing argument formatting. No functional changes were made; this refactor enhances maintainability and clarity. --- .../main_NewDex/Modules/RemoteSpy.lua | 32 +++++++++++++------ 1 file changed, 23 insertions(+), 9 deletions(-) diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/RemoteSpy.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/RemoteSpy.lua index 3cacf05bb4..d9cb143e60 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/RemoteSpy.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/RemoteSpy.lua @@ -101,7 +101,13 @@ local function main() local hasContent = false for k, v in pairs(value) do hasContent = true - result = result .. indentStr .. " [" .. serializeValue(k, indent + 1, visited) .. "] = " .. serializeValue(v, indent + 1, visited) .. ",\n" + result = result + .. indentStr + .. " [" + .. serializeValue(k, indent + 1, visited) + .. "] = " + .. serializeValue(v, indent + 1, visited) + .. ",\n" end if hasContent then result = result .. indentStr .. "}" @@ -142,7 +148,9 @@ local function main() -- Update detail panel with selected log local function updateDetailPanel(logData) - if not DetailPanel then return end + if not DetailPanel then + return + end -- Clear existing detail content for _, child in ipairs(DetailPanel:GetChildren()) do @@ -484,7 +492,9 @@ local function main() -- Client-side monitoring setup local function setupClientMonitoring() - if MonitoringClient then return end + if MonitoringClient then + return + end MonitoringClient = true -- Hook all existing RemoteEvents and RemoteFunctions @@ -492,9 +502,11 @@ local function main() if descendant:IsA("RemoteEvent") then local remoteName = descendant:GetFullName() local connection = descendant.OnClientEvent:Connect(function(...) - if IsPaused then return end + if IsPaused then + return + end - local args = {...} + local args = { ... } local formattedArgs = {} for _, arg in ipairs(args) do table.insert(formattedArgs, tostring(arg)) @@ -524,9 +536,11 @@ local function main() task.wait(0.1) local remoteName = descendant:GetFullName() local conn = descendant.OnClientEvent:Connect(function(...) - if IsPaused then return end + if IsPaused then + return + end - local args = {...} + local args = { ... } local formattedArgs = {} for _, arg in ipairs(args) do table.insert(formattedArgs, tostring(arg)) @@ -636,7 +650,8 @@ local function main() AutoScrollButton.MouseButton1Click:Connect(function() AutoScroll = not AutoScroll - AutoScrollButton.BackgroundColor3 = AutoScroll and Color3.fromRGB(40, 120, 40) or Color3.fromRGB(120, 40, 40) + AutoScrollButton.BackgroundColor3 = AutoScroll and Color3.fromRGB(40, 120, 40) + or Color3.fromRGB(120, 40, 40) end) -- Create Block List Editor Window @@ -835,7 +850,6 @@ local function main() BlockListButton.MouseButton1Click:Connect(function() createBlockListEditor() end) - end -- Add log entry to UI (implementation) From ef6cddaf524f965670031a0f2ce258bcb0a9c5e5 Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Sun, 30 Nov 2025 00:30:03 -0500 Subject: [PATCH 23/36] Improve remote blocking and log clearing in RemoteSpy Updated log clearing to only remove TextButton entries. Enhanced block functionality to remove all log entries and log data for a blocked remote name, and adjusted auto-scroll behavior to scroll to the bottom for new entries. --- .../main_NewDex/Modules/RemoteSpy.lua | 31 +++++++++++++++---- 1 file changed, 25 insertions(+), 6 deletions(-) diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/RemoteSpy.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/RemoteSpy.lua index d9cb143e60..f9c8deb51d 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/RemoteSpy.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/RemoteSpy.lua @@ -600,7 +600,7 @@ local function main() ClearButton.MouseButton1Click:Connect(function() for _, child in ipairs(LogList:GetChildren()) do - if child:IsA("Frame") then + if child:IsA("TextButton") then child:Destroy() end end @@ -980,9 +980,28 @@ local function main() }) blockButton.MouseButton1Click:Connect(function() - addToBlockList(logData.remoteName) - -- Remove this entry from the display - LogEntry:Destroy() + local blockedRemoteName = logData.remoteName + addToBlockList(blockedRemoteName) + + -- Remove all entries with this remote name from the display + for _, child in ipairs(LogList:GetChildren()) do + if child:IsA("TextButton") and child.Name == "LogEntry" then + local remoteNameLabel = child:FindFirstChild("RemoteName") + if remoteNameLabel and remoteNameLabel.Text == blockedRemoteName then + child:Destroy() + end + end + end + + -- Remove all entries with this remote name from the log array + for i = #RemoteLogs, 1, -1 do + if RemoteLogs[i].remoteName == blockedRemoteName then + table.remove(RemoteLogs, i) + end + end + + -- Update canvas size + LogList.CanvasSize = UDim2.new(0, 0, 0, #RemoteLogs * 62) end) -- Click handler to show details @@ -1017,9 +1036,9 @@ local function main() -- Update canvas size LogList.CanvasSize = UDim2.new(0, 0, 0, #RemoteLogs * 62) - -- Auto-scroll to top for new entries if enabled + -- Auto-scroll to bottom for new entries if enabled if AutoScroll then - LogList.CanvasPosition = Vector2.new(0, 0) + LogList.CanvasPosition = Vector2.new(0, 9e9) end end From d009017115a9e05bf5a0d6ac2c8131ed7888ff43 Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Sun, 30 Nov 2025 01:51:13 -0500 Subject: [PATCH 24/36] Add Unload button to Dex client UI Introduces an 'Unload' button to the Dex client interface, allowing users to fully remove all Dex-related GUIs and windows. Updates button names, positions, and icons to accommodate the new button, and implements logic to destroy all relevant UI elements and the script itself when triggered. --- .../Dex_Client/main_NewDex/init.client.lua | 128 +++++++++++++++--- 1 file changed, 110 insertions(+), 18 deletions(-) diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua index 0b1a4f077d..df448e2787 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua @@ -1237,9 +1237,9 @@ Main = (function() BackgroundColor3 = Color3.new(1, 1, 1), BackgroundTransparency = 1, Font = 3, - Name = "Settings", + Name = "Unload", Parent = { 6 }, - Position = UDim2.new(1, -48, 0, 0), + Position = UDim2.new(1, -72, 0, 0), Size = UDim2.new(0, 24, 1, 0), Text = "", TextColor3 = Color3.new(1, 1, 1), @@ -1252,7 +1252,7 @@ Main = (function() { BackgroundColor3 = Color3.new(1, 1, 1), BackgroundTransparency = 1, - Image = "rbxassetid://6578871732", + Image = "rbxassetid://6031094678", ImageTransparency = 0.20000000298023, Name = "Icon", Parent = { 10 }, @@ -1267,9 +1267,9 @@ Main = (function() BackgroundColor3 = Color3.new(1, 1, 1), BackgroundTransparency = 1, Font = 3, - Name = "Information", + Name = "Settings", Parent = { 6 }, - Position = UDim2.new(1, -24, 0, 0), + Position = UDim2.new(1, -48, 0, 0), Size = UDim2.new(0, 24, 1, 0), Text = "", TextColor3 = Color3.new(1, 1, 1), @@ -1282,7 +1282,7 @@ Main = (function() { BackgroundColor3 = Color3.new(1, 1, 1), BackgroundTransparency = 1, - Image = "rbxassetid://6578933307", + Image = "rbxassetid://6578871732", ImageTransparency = 0.20000000298023, Name = "Icon", Parent = { 12 }, @@ -1292,6 +1292,36 @@ Main = (function() }, { 14, + "TextButton", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Font = 3, + Name = "Information", + Parent = { 6 }, + Position = UDim2.new(1, -24, 0, 0), + Size = UDim2.new(0, 24, 1, 0), + Text = "", + TextColor3 = Color3.new(1, 1, 1), + TextSize = 14, + }, + }, + { + 15, + "ImageLabel", + { + BackgroundColor3 = Color3.new(1, 1, 1), + BackgroundTransparency = 1, + Image = "rbxassetid://6578933307", + ImageTransparency = 0.20000000298023, + Name = "Icon", + Parent = { 14 }, + Position = UDim2.new(0, 4, 0, 4), + Size = UDim2.new(0, 16, 0, 16), + }, + }, + { + 16, "ScrollingFrame", { Active = true, @@ -1309,20 +1339,20 @@ Main = (function() }, }, { - 15, + 17, "Frame", { BackgroundColor3 = Color3.new(1, 1, 1), BackgroundTransparency = 1, Name = "Container", - Parent = { 14 }, + Parent = { 16 }, Position = UDim2.new(0, 7, 0, 8), Size = UDim2.new(1, -14, 0, 2), }, }, - { 16, "UIGridLayout", { CellSize = UDim2.new(0, 66, 0, 74), Parent = { 15 }, SortOrder = 2 } }, + { 18, "UIGridLayout", { CellSize = UDim2.new(0, 66, 0, 74), Parent = { 17 }, SortOrder = 2 } }, { - 17, + 19, "Frame", { BackgroundColor3 = Color3.new(1, 1, 1), @@ -1334,7 +1364,7 @@ Main = (function() }, }, { - 18, + 20, "TextButton", { AutoButtonColor = false, @@ -1342,7 +1372,7 @@ Main = (function() BorderSizePixel = 0, Font = 3, Name = "Main", - Parent = { 17 }, + Parent = { 19 }, Size = UDim2.new(1, 0, 0, 60), Text = "", TextColor3 = Color3.new(0, 0, 0), @@ -1350,7 +1380,7 @@ Main = (function() }, }, { - 19, + 21, "ImageLabel", { BackgroundColor3 = Color3.new(1, 1, 1), @@ -1358,14 +1388,14 @@ Main = (function() Image = "rbxassetid://6579106223", ImageRectSize = Vector2.new(32, 32), Name = "Icon", - Parent = { 18 }, + Parent = { 20 }, Position = UDim2.new(0.5, -16, 0, 4), ScaleType = 4, Size = UDim2.new(0, 32, 0, 32), }, }, { - 20, + 22, "TextLabel", { BackgroundColor3 = Color3.new(1, 1, 1), @@ -1373,7 +1403,7 @@ Main = (function() BorderSizePixel = 0, Font = 3, Name = "AppName", - Parent = { 18 }, + Parent = { 20 }, Position = UDim2.new(0, 2, 0, 38), Size = UDim2.new(1, -4, 1, -40), Text = "Explorer", @@ -1386,13 +1416,13 @@ Main = (function() }, }, { - 21, + 23, "Frame", { BackgroundColor3 = Color3.new(0, 0.66666668653488, 1), BorderSizePixel = 0, Name = "Highlight", - Parent = { 18 }, + Parent = { 20 }, Position = UDim2.new(0, 0, 1, -2), Size = UDim2.new(1, 0, 0, 2), }, @@ -1439,6 +1469,68 @@ Main = (function() end end) + -- Unload Button + local unloadButton = gui.OpenButton.MainFrame.BottomFrame.Unload + unloadButton.MouseButton1Click:Connect(function() + -- Close all windows first + if Lib.StoredWindows then + for _, windowData in pairs(Lib.StoredWindows) do + if windowData.Close then + pcall(function() windowData:Close() end) + end + if windowData.Gui then + windowData.Gui:Destroy() + end + end + end + + -- Destroy all major app windows + if Explorer and Explorer.Window and Explorer.Window.Gui then + Explorer.Window.Gui:Destroy() + end + if Properties and Properties.Window and Properties.Window.Gui then + Properties.Window.Gui:Destroy() + end + if Console and Console.Window and Console.Window.Gui then + Console.Window.Gui:Destroy() + end + if ModelViewer and ModelViewer.Window and ModelViewer.Window.Gui then + ModelViewer.Window.Gui:Destroy() + end + if RemoteSpy and RemoteSpy.Window and RemoteSpy.Window.Gui then + RemoteSpy.Window.Gui:Destroy() + end + + -- Destroy main GUIs + if Lib.SidesGui then + Lib.SidesGui:Destroy() + end + if Main.MainGui then + Main.MainGui:Destroy() + end + + -- Find and destroy ALL Dex-related GUIs in PlayerGui + local playerGui = plr:FindFirstChild("PlayerGui") + if playerGui then + for _, child in ipairs(playerGui:GetChildren()) do + if string.find(child.Name, "Dex") then + child:Destroy() + end + end + end + + -- Destroy the script itself + local scriptToDestroy = script + task.spawn(function() + task.wait(0.1) -- Small delay to ensure GUIs are destroyed first + if scriptToDestroy and scriptToDestroy.Parent then + scriptToDestroy:Destroy() + end + end) + + print("Dex has been unloaded") + end) + -- Settings Button local settingsButton = Main.SettingsGuiButton settingsButton.MouseButton1Click:Connect(function() From 7e55e5dffbff544254ff0e619b4008e31e1a8e8c Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Sun, 30 Nov 2025 08:33:25 -0500 Subject: [PATCH 25/36] Remove unnecessary wait before monitoring remotes Eliminated a 2-second delay before starting remote monitoring in the ServerNewDex plugin initialization. This allows monitoring to begin immediately when the plugin loads. --- MainModule/Server/Plugins/ServerNewDex/init.lua | 1 - 1 file changed, 1 deletion(-) diff --git a/MainModule/Server/Plugins/ServerNewDex/init.lua b/MainModule/Server/Plugins/ServerNewDex/init.lua index af17f15129..78413294b3 100644 --- a/MainModule/Server/Plugins/ServerNewDex/init.lua +++ b/MainModule/Server/Plugins/ServerNewDex/init.lua @@ -397,7 +397,6 @@ return function(Vargs) -- Start monitoring when the plugin loads task.spawn(function() - task.wait(2) -- Wait for game to initialize monitorAllRemotes() end) From 50d7609ef1f7313bb254b9f69e932a92f2e348ff Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Sun, 30 Nov 2025 11:54:37 -0500 Subject: [PATCH 26/36] Remove RemoteSpy module and related functionality Deleted the RemoteSpy client module and removed all references to RemoteSpy in client and server initialization, UI, and remote monitoring logic. This streamlines the codebase by eliminating the RemoteSpy feature and its associated server-side remote event and monitoring infrastructure. --- .../main_NewDex/Modules/RemoteSpy.lua | 1079 ----------------- .../Dex_Client/main_NewDex/init.client.lua | 16 +- .../Server/Plugins/ServerNewDex/init.lua | 90 -- 3 files changed, 2 insertions(+), 1183 deletions(-) delete mode 100644 MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/RemoteSpy.lua diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/RemoteSpy.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/RemoteSpy.lua deleted file mode 100644 index f9c8deb51d..0000000000 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/RemoteSpy.lua +++ /dev/null @@ -1,1079 +0,0 @@ -local RemoteSpy = {} - --- Common Locals -local Main, Lib, Settings -local createSimple -local Dex_RemoteFunction - -local function initDeps(data) - Main = data.Main - Lib = data.Lib - Settings = data.Settings - - createSimple = data.createSimple - - Dex_RemoteFunction = game:GetService("ReplicatedStorage"):WaitForChild("NewDex_Event") -end - -local function initAfterMain() - -- Nothing needed here for now -end - -local function main() - local RemoteSpy = {} - - local window - local LogList - local DetailPanel - local RemoteLogs = {} - local MaxLogs = 500 - local IsPaused = false - local IsMonitoring = false - local MonitoringClient = false - local LogEventConnection - local ClientHooks = {} -- Store client-side hooks for cleanup - local SelectedLogIndex = nil - local BlockList = {} -- List of blocked remote names/patterns - local AutoScroll = true -- Auto-scroll to top when new logs arrive - local blockListWindow -- Block list editor window - local blockListRefreshCallback = nil -- Callback to refresh block list UI - - -- Get RemoteEvent for receiving logs from server - local RemoteSpy_LogEvent - - -- Check if a remote name is blocked - local function isBlocked(remoteName) - for _, pattern in ipairs(BlockList) do - if remoteName:match(pattern) or remoteName == pattern then - return true - end - end - return false - end - - -- Add to block list - local function addToBlockList(remoteName) - for _, pattern in ipairs(BlockList) do - if pattern == remoteName then - return false -- Already blocked - end - end - table.insert(BlockList, remoteName) - - -- Refresh block list UI if it's open - if blockListRefreshCallback then - blockListRefreshCallback() - end - - return true - end - - -- Remove from block list - local function removeFromBlockList(remoteName) - for i, pattern in ipairs(BlockList) do - if pattern == remoteName then - table.remove(BlockList, i) - - -- Refresh block list UI if it's open - if blockListRefreshCallback then - blockListRefreshCallback() - end - - return true - end - end - return false - end - - -- Utility: Serialize a value to a readable string - local function serializeValue(value, indent, visited) - indent = indent or 0 - visited = visited or {} - local indentStr = string.rep(" ", indent) - - if type(value) == "table" then - if visited[value] then - return "" - end - visited[value] = true - - local result = "{\n" - local hasContent = false - for k, v in pairs(value) do - hasContent = true - result = result - .. indentStr - .. " [" - .. serializeValue(k, indent + 1, visited) - .. "] = " - .. serializeValue(v, indent + 1, visited) - .. ",\n" - end - if hasContent then - result = result .. indentStr .. "}" - else - result = "{}" - end - return result - elseif type(value) == "string" then - return '"' .. value .. '"' - elseif typeof(value) == "Instance" then - return value:GetFullName() .. " (" .. value.ClassName .. ")" - elseif type(value) == "userdata" then - return tostring(value) - else - return tostring(value) - end - end - - -- Format arguments for display - local function formatArgsPreview(args) - if #args == 0 then - return "none" - end - local preview = {} - for i, arg in ipairs(args) do - if i > 3 then - table.insert(preview, "...") - break - end - local argStr = tostring(arg) - if #argStr > 30 then - argStr = argStr:sub(1, 27) .. "..." - end - table.insert(preview, argStr) - end - return table.concat(preview, ", ") - end - - -- Update detail panel with selected log - local function updateDetailPanel(logData) - if not DetailPanel then - return - end - - -- Clear existing detail content - for _, child in ipairs(DetailPanel:GetChildren()) do - if child.Name ~= "TitleLabel" and not child:IsA("UIListLayout") and not child:IsA("UIPadding") then - child:Destroy() - end - end - - if not logData then - DetailPanel.TitleLabel.Text = "No packet selected" - return - end - - DetailPanel.TitleLabel.Text = "Packet Details" - - local yOffset = 25 - - -- Remote Type - local typeLabel = createSimple("TextLabel", { - Parent = DetailPanel, - BackgroundTransparency = 1, - Position = UDim2.new(0, 5, 0, yOffset), - Size = UDim2.new(1, -10, 0, 15), - Font = Enum.Font.SourceSansBold, - Text = "Type: " .. logData.remoteType, - TextColor3 = Settings.Theme.Text, - TextSize = 12, - TextXAlignment = Enum.TextXAlignment.Left, - }) - yOffset = yOffset + 20 - - -- Remote Name - local nameLabel = createSimple("TextLabel", { - Parent = DetailPanel, - BackgroundTransparency = 1, - Position = UDim2.new(0, 5, 0, yOffset), - Size = UDim2.new(1, -10, 0, 15), - Font = Enum.Font.SourceSans, - Text = "Remote: " .. logData.remoteName, - TextColor3 = Settings.Theme.Text, - TextSize = 11, - TextXAlignment = Enum.TextXAlignment.Left, - TextTruncate = Enum.TextTruncate.AtEnd, - }) - yOffset = yOffset + 20 - - -- Caller - local callerLabel = createSimple("TextLabel", { - Parent = DetailPanel, - BackgroundTransparency = 1, - Position = UDim2.new(0, 5, 0, yOffset), - Size = UDim2.new(1, -10, 0, 15), - Font = Enum.Font.SourceSans, - Text = "Caller: " .. tostring(logData.caller), - TextColor3 = Settings.Theme.Text, - TextSize = 11, - TextXAlignment = Enum.TextXAlignment.Left, - }) - yOffset = yOffset + 20 - - -- Timestamp - local timeLabel = createSimple("TextLabel", { - Parent = DetailPanel, - BackgroundTransparency = 1, - Position = UDim2.new(0, 5, 0, yOffset), - Size = UDim2.new(1, -10, 0, 15), - Font = Enum.Font.Code, - Text = "Time: " .. os.date("%H:%M:%S", logData.timestamp), - TextColor3 = Color3.fromRGB(150, 150, 150), - TextSize = 10, - TextXAlignment = Enum.TextXAlignment.Left, - }) - yOffset = yOffset + 25 - - -- Arguments Section - local argsHeader = createSimple("TextLabel", { - Parent = DetailPanel, - BackgroundTransparency = 1, - Position = UDim2.new(0, 5, 0, yOffset), - Size = UDim2.new(1, -10, 0, 15), - Font = Enum.Font.SourceSansBold, - Text = "Arguments (" .. #logData.rawArgs .. "):", - TextColor3 = Settings.Theme.Text, - TextSize = 12, - TextXAlignment = Enum.TextXAlignment.Left, - }) - yOffset = yOffset + 20 - - -- Display each argument - if #logData.rawArgs == 0 then - local noArgsLabel = createSimple("TextLabel", { - Parent = DetailPanel, - BackgroundTransparency = 1, - Position = UDim2.new(0, 15, 0, yOffset), - Size = UDim2.new(1, -20, 0, 15), - Font = Enum.Font.Code, - Text = "(none)", - TextColor3 = Color3.fromRGB(150, 150, 150), - TextSize = 10, - TextXAlignment = Enum.TextXAlignment.Left, - }) - yOffset = yOffset + 20 - else - for i, arg in ipairs(logData.rawArgs) do - -- Argument index - local argIndexLabel = createSimple("TextLabel", { - Parent = DetailPanel, - BackgroundTransparency = 1, - Position = UDim2.new(0, 10, 0, yOffset), - Size = UDim2.new(1, -15, 0, 15), - Font = Enum.Font.SourceSansBold, - Text = "[" .. i .. "] " .. typeof(arg), - TextColor3 = Color3.fromRGB(100, 200, 255), - TextSize = 11, - TextXAlignment = Enum.TextXAlignment.Left, - }) - yOffset = yOffset + 18 - - -- Argument value (in scrollable text box for long values) - local serialized = serializeValue(arg) - local argValueBox = createSimple("TextBox", { - Parent = DetailPanel, - BackgroundColor3 = Settings.Theme.Main1, - BorderSizePixel = 1, - BorderColor3 = Settings.Theme.Outline1, - Position = UDim2.new(0, 20, 0, yOffset), - Size = UDim2.new(1, -25, 0, math.min(100, math.max(30, #serialized / 2))), - Font = Enum.Font.Code, - Text = serialized, - TextColor3 = Color3.fromRGB(220, 220, 220), - TextSize = 10, - TextXAlignment = Enum.TextXAlignment.Left, - TextYAlignment = Enum.TextYAlignment.Top, - TextWrapped = true, - TextEditable = false, - ClearTextOnFocus = false, - MultiLine = true, - }) - yOffset = yOffset + argValueBox.Size.Y.Offset + 10 - end - end - - DetailPanel.CanvasSize = UDim2.new(0, 0, 0, yOffset + 20) - end - - -- Add log entry to UI (forward declaration) - local addLogEntry - - -- Create UI - local function createUI() - -- Create Window - window = Lib.Window.new() - window:SetTitle("Remote Spy") - window:Resize(800, 450) - RemoteSpy.Window = window - - -- Main Content Frame - local RemoteSpyFrame = createSimple("Frame", { - Name = "RemoteSpyContent", - Parent = window.GuiElems.Content, - BackgroundColor3 = Settings.Theme.Main1, - BorderSizePixel = 0, - Size = UDim2.new(1, 0, 1, 0), - Position = UDim2.new(0, 0, 0, 0), - }) - - -- Control Bar - local ControlBar = createSimple("Frame", { - Name = "ControlBar", - Parent = RemoteSpyFrame, - BackgroundColor3 = Settings.Theme.Main2, - BorderSizePixel = 0, - Position = UDim2.new(0, 0, 0, 0), - Size = UDim2.new(1, 0, 0, 30), - }) - - -- Pause/Resume Button - local PauseButton = createSimple("TextButton", { - Name = "PauseButton", - Parent = ControlBar, - BackgroundColor3 = Settings.Theme.Button, - BorderSizePixel = 0, - Position = UDim2.new(0, 5, 0, 5), - Size = UDim2.new(0, 60, 0, 20), - Font = Enum.Font.SourceSans, - Text = "Pause", - TextColor3 = Settings.Theme.Text, - TextSize = 12, - }) - - -- Clear Button - local ClearButton = createSimple("TextButton", { - Name = "ClearButton", - Parent = ControlBar, - BackgroundColor3 = Settings.Theme.Button, - BorderSizePixel = 0, - Position = UDim2.new(0, 70, 0, 5), - Size = UDim2.new(0, 60, 0, 20), - Font = Enum.Font.SourceSans, - Text = "Clear", - TextColor3 = Settings.Theme.Text, - TextSize = 12, - }) - - -- Server Monitor Button - local ServerMonitorButton = createSimple("TextButton", { - Name = "ServerMonitorButton", - Parent = ControlBar, - BackgroundColor3 = Color3.fromRGB(120, 40, 40), - BorderSizePixel = 0, - Position = UDim2.new(0, 135, 0, 5), - Size = UDim2.new(0, 110, 0, 20), - Font = Enum.Font.SourceSansBold, - Text = "Server: OFF", - TextColor3 = Settings.Theme.Text, - TextSize = 11, - }) - - -- Client Monitor Button - local ClientMonitorButton = createSimple("TextButton", { - Name = "ClientMonitorButton", - Parent = ControlBar, - BackgroundColor3 = Color3.fromRGB(120, 40, 40), - BorderSizePixel = 0, - Position = UDim2.new(0, 250, 0, 5), - Size = UDim2.new(0, 110, 0, 20), - Font = Enum.Font.SourceSansBold, - Text = "Client: OFF", - TextColor3 = Settings.Theme.Text, - TextSize = 11, - }) - - -- Auto-Scroll Toggle Button - local AutoScrollButton = createSimple("TextButton", { - Name = "AutoScrollButton", - Parent = ControlBar, - BackgroundColor3 = Color3.fromRGB(40, 120, 40), - BorderSizePixel = 0, - Position = UDim2.new(0, 365, 0, 5), - Size = UDim2.new(0, 90, 0, 20), - Font = Enum.Font.SourceSans, - Text = "Auto-Scroll", - TextColor3 = Settings.Theme.Text, - TextSize = 11, - }) - - -- Block List Editor Button - local BlockListButton = createSimple("TextButton", { - Name = "BlockListButton", - Parent = ControlBar, - BackgroundColor3 = Settings.Theme.Button, - BorderSizePixel = 0, - Position = UDim2.new(0, 460, 0, 5), - Size = UDim2.new(0, 80, 0, 20), - Font = Enum.Font.SourceSans, - Text = "Block List", - TextColor3 = Settings.Theme.Text, - TextSize = 11, - }) - - -- Status Label - local StatusLabel = createSimple("TextLabel", { - Name = "StatusLabel", - Parent = ControlBar, - BackgroundTransparency = 1, - Position = UDim2.new(0, 545, 0, 0), - Size = UDim2.new(1, -550, 1, 0), - Font = Enum.Font.Code, - Text = "Not monitoring", - TextColor3 = Color3.fromRGB(150, 150, 150), - TextSize = 10, - TextXAlignment = Enum.TextXAlignment.Left, - }) - - -- Left Panel (Log List) - local LeftPanel = createSimple("Frame", { - Name = "LeftPanel", - Parent = RemoteSpyFrame, - BackgroundColor3 = Settings.Theme.Main1, - BorderSizePixel = 0, - Position = UDim2.new(0, 5, 0, 35), - Size = UDim2.new(0.5, -10, 1, -40), - }) - - -- Log List (ScrollingFrame) - LogList = createSimple("ScrollingFrame", { - Name = "LogList", - Parent = LeftPanel, - BackgroundColor3 = Settings.Theme.Main1, - BorderSizePixel = 0, - Size = UDim2.new(1, 0, 1, 0), - ScrollBarThickness = 6, - ScrollBarImageColor3 = Settings.Theme.Outline2, - CanvasSize = UDim2.new(0, 0, 0, 0), - }) - - createSimple("UIListLayout", { - Parent = LogList, - SortOrder = Enum.SortOrder.LayoutOrder, - Padding = UDim.new(0, 2), - }) - - -- Right Panel (Detail View) - local RightPanel = createSimple("Frame", { - Name = "RightPanel", - Parent = RemoteSpyFrame, - BackgroundColor3 = Settings.Theme.Main2, - BorderSizePixel = 1, - BorderColor3 = Settings.Theme.Outline1, - Position = UDim2.new(0.5, 5, 0, 35), - Size = UDim2.new(0.5, -10, 1, -40), - }) - - -- Detail Panel (ScrollingFrame) - DetailPanel = createSimple("ScrollingFrame", { - Name = "DetailPanel", - Parent = RightPanel, - BackgroundColor3 = Settings.Theme.Main2, - BorderSizePixel = 0, - Size = UDim2.new(1, 0, 1, 0), - ScrollBarThickness = 6, - ScrollBarImageColor3 = Settings.Theme.Outline2, - CanvasSize = UDim2.new(0, 0, 0, 0), - }) - - -- Detail Panel Title - createSimple("TextLabel", { - Name = "TitleLabel", - Parent = DetailPanel, - BackgroundTransparency = 1, - Position = UDim2.new(0, 5, 0, 5), - Size = UDim2.new(1, -10, 0, 15), - Font = Enum.Font.SourceSansBold, - Text = "No packet selected", - TextColor3 = Color3.fromRGB(150, 150, 150), - TextSize = 13, - TextXAlignment = Enum.TextXAlignment.Left, - }) - - -- Client-side monitoring setup - local function setupClientMonitoring() - if MonitoringClient then - return - end - MonitoringClient = true - - -- Hook all existing RemoteEvents and RemoteFunctions - for _, descendant in ipairs(game:GetDescendants()) do - if descendant:IsA("RemoteEvent") then - local remoteName = descendant:GetFullName() - local connection = descendant.OnClientEvent:Connect(function(...) - if IsPaused then - return - end - - local args = { ... } - local formattedArgs = {} - for _, arg in ipairs(args) do - table.insert(formattedArgs, tostring(arg)) - end - - local logData = { - remoteType = "FireClient", - remoteName = remoteName, - caller = "Server", - args = formattedArgs, - rawArgs = args, - timestamp = os.time(), - } - - table.insert(RemoteLogs, 1, logData) - if not IsPaused then - addLogEntry(logData, 1) - end - end) - table.insert(ClientHooks, connection) - end - end - - -- Monitor future RemoteEvents - local connection = game.DescendantAdded:Connect(function(descendant) - if MonitoringClient and descendant:IsA("RemoteEvent") then - task.wait(0.1) - local remoteName = descendant:GetFullName() - local conn = descendant.OnClientEvent:Connect(function(...) - if IsPaused then - return - end - - local args = { ... } - local formattedArgs = {} - for _, arg in ipairs(args) do - table.insert(formattedArgs, tostring(arg)) - end - - local logData = { - remoteType = "FireClient", - remoteName = remoteName, - caller = "Server", - args = formattedArgs, - rawArgs = args, - timestamp = os.time(), - } - - table.insert(RemoteLogs, 1, logData) - if not IsPaused then - addLogEntry(logData, 1) - end - end) - table.insert(ClientHooks, conn) - end - end) - table.insert(ClientHooks, connection) - end - - local function stopClientMonitoring() - MonitoringClient = false - for _, connection in ipairs(ClientHooks) do - connection:Disconnect() - end - ClientHooks = {} - end - - local function updateStatus() - local status = {} - if IsMonitoring then - table.insert(status, "Server") - end - if MonitoringClient then - table.insert(status, "Client") - end - if #status > 0 then - StatusLabel.Text = "Monitoring: " .. table.concat(status, " + ") - StatusLabel.TextColor3 = Color3.fromRGB(100, 255, 100) - else - StatusLabel.Text = "Not monitoring" - StatusLabel.TextColor3 = Color3.fromRGB(150, 150, 150) - end - end - - -- Button Handlers - PauseButton.MouseButton1Click:Connect(function() - IsPaused = not IsPaused - PauseButton.Text = IsPaused and "Resume" or "Pause" - PauseButton.BackgroundColor3 = IsPaused and Color3.fromRGB(120, 40, 40) or Settings.Theme.Button - end) - - ClearButton.MouseButton1Click:Connect(function() - for _, child in ipairs(LogList:GetChildren()) do - if child:IsA("TextButton") then - child:Destroy() - end - end - RemoteLogs = {} - SelectedLogIndex = nil - updateDetailPanel(nil) - LogList.CanvasSize = UDim2.new(0, 0, 0, 0) - end) - - ServerMonitorButton.MouseButton1Click:Connect(function() - if not IsMonitoring then - -- Start server monitoring - local success = Dex_RemoteFunction:InvokeServer("StartRemoteSpy") - if success then - IsMonitoring = true - ServerMonitorButton.Text = "Server: ON" - ServerMonitorButton.BackgroundColor3 = Color3.fromRGB(40, 120, 40) - updateStatus() - else - warn("Failed to start server remote monitoring") - end - else - -- Stop server monitoring - local success = Dex_RemoteFunction:InvokeServer("StopRemoteSpy") - if success then - IsMonitoring = false - ServerMonitorButton.Text = "Server: OFF" - ServerMonitorButton.BackgroundColor3 = Color3.fromRGB(120, 40, 40) - updateStatus() - end - end - end) - - ClientMonitorButton.MouseButton1Click:Connect(function() - if not MonitoringClient then - setupClientMonitoring() - ClientMonitorButton.Text = "Client: ON" - ClientMonitorButton.BackgroundColor3 = Color3.fromRGB(40, 120, 40) - updateStatus() - else - stopClientMonitoring() - ClientMonitorButton.Text = "Client: OFF" - ClientMonitorButton.BackgroundColor3 = Color3.fromRGB(120, 40, 40) - updateStatus() - end - end) - - AutoScrollButton.MouseButton1Click:Connect(function() - AutoScroll = not AutoScroll - AutoScrollButton.BackgroundColor3 = AutoScroll and Color3.fromRGB(40, 120, 40) - or Color3.fromRGB(120, 40, 40) - end) - - -- Create Block List Editor Window - local function createBlockListEditor() - if blockListWindow then - blockListWindow:Show() - blockListWindow.Gui.DisplayOrder = 100 -- Always on top - return - end - - blockListWindow = Lib.Window.new() - blockListWindow:SetTitle("Block List Editor") - blockListWindow:Resize(500, 300) - blockListWindow.Gui.DisplayOrder = 100 -- Always on top - - local editorFrame = createSimple("Frame", { - Name = "BlockListEditorContent", - Parent = blockListWindow.GuiElems.Content, - BackgroundColor3 = Settings.Theme.Main1, - BorderSizePixel = 0, - Size = UDim2.new(1, 0, 1, 0), - }) - - -- Info Note - createSimple("TextLabel", { - Parent = editorFrame, - BackgroundTransparency = 1, - Position = UDim2.new(0, 5, 0, 5), - Size = UDim2.new(1, -10, 0, 15), - Font = Enum.Font.Code, - Text = "Note: Blocking only hides remotes from view, it does not prevent them from firing.", - TextColor3 = Color3.fromRGB(200, 200, 100), - TextSize = 10, - TextXAlignment = Enum.TextXAlignment.Left, - TextWrapped = true, - }) - - -- Add Remote Input Section - local inputLabel = createSimple("TextLabel", { - Parent = editorFrame, - BackgroundTransparency = 1, - Position = UDim2.new(0, 5, 0, 22), - Size = UDim2.new(1, -10, 0, 15), - Font = Enum.Font.SourceSansBold, - Text = "Add Remote to Block List:", - TextColor3 = Settings.Theme.Text, - TextSize = 12, - TextXAlignment = Enum.TextXAlignment.Left, - }) - - local inputBox = createSimple("TextBox", { - Name = "InputBox", - Parent = editorFrame, - BackgroundColor3 = Settings.Theme.TextBox, - BorderSizePixel = 1, - BorderColor3 = Settings.Theme.Outline3, - Position = UDim2.new(0, 5, 0, 42), - Size = UDim2.new(1, -90, 0, 25), - Font = Enum.Font.Code, - PlaceholderText = "Enter remote name or pattern...", - Text = "", - TextColor3 = Settings.Theme.Text, - TextSize = 11, - TextXAlignment = Enum.TextXAlignment.Left, - ClearTextOnFocus = false, - }) - - local addButton = createSimple("TextButton", { - Parent = editorFrame, - BackgroundColor3 = Settings.Theme.Button, - BorderSizePixel = 0, - Position = UDim2.new(1, -80, 0, 42), - Size = UDim2.new(0, 75, 0, 25), - Font = Enum.Font.SourceSansBold, - Text = "Add", - TextColor3 = Settings.Theme.Text, - TextSize = 12, - }) - - -- Block List Display - local listLabel = createSimple("TextLabel", { - Parent = editorFrame, - BackgroundTransparency = 1, - Position = UDim2.new(0, 5, 0, 77), - Size = UDim2.new(1, -10, 0, 15), - Font = Enum.Font.SourceSansBold, - Text = "Blocked Remotes:", - TextColor3 = Settings.Theme.Text, - TextSize = 12, - TextXAlignment = Enum.TextXAlignment.Left, - }) - - local blockListScroll = createSimple("ScrollingFrame", { - Name = "BlockListScroll", - Parent = editorFrame, - BackgroundColor3 = Settings.Theme.Main2, - BorderSizePixel = 1, - BorderColor3 = Settings.Theme.Outline1, - Position = UDim2.new(0, 5, 0, 97), - Size = UDim2.new(1, -10, 1, -102), - ScrollBarThickness = 6, - ScrollBarImageColor3 = Settings.Theme.Outline2, - CanvasSize = UDim2.new(0, 0, 0, 0), - }) - - createSimple("UIListLayout", { - Parent = blockListScroll, - SortOrder = Enum.SortOrder.LayoutOrder, - Padding = UDim.new(0, 2), - }) - - -- Function to refresh block list display - local function refreshBlockList() - for _, child in ipairs(blockListScroll:GetChildren()) do - if child:IsA("Frame") then - child:Destroy() - end - end - - for i, pattern in ipairs(BlockList) do - local entryFrame = createSimple("Frame", { - Name = "BlockEntry", - Parent = blockListScroll, - BackgroundColor3 = Settings.Theme.Main1, - BorderSizePixel = 1, - BorderColor3 = Settings.Theme.Outline1, - Size = UDim2.new(1, -10, 0, 25), - LayoutOrder = i, - }) - - createSimple("TextLabel", { - Parent = entryFrame, - BackgroundTransparency = 1, - Position = UDim2.new(0, 5, 0, 0), - Size = UDim2.new(1, -35, 1, 0), - Font = Enum.Font.Code, - Text = pattern, - TextColor3 = Settings.Theme.Text, - TextSize = 11, - TextXAlignment = Enum.TextXAlignment.Left, - TextTruncate = Enum.TextTruncate.AtEnd, - }) - - local removeBtn = createSimple("TextButton", { - Parent = entryFrame, - BackgroundColor3 = Color3.fromRGB(150, 50, 50), - BorderSizePixel = 0, - Position = UDim2.new(1, -28, 0, 3), - Size = UDim2.new(0, 25, 0, 19), - Font = Enum.Font.SourceSansBold, - Text = "X", - TextColor3 = Settings.Theme.Text, - TextSize = 12, - }) - - removeBtn.MouseButton1Click:Connect(function() - removeFromBlockList(pattern) - -- refreshBlockList is called automatically via callback - end) - end - - blockListScroll.CanvasSize = UDim2.new(0, 0, 0, #BlockList * 27) - end - - -- Set the refresh callback so block buttons can update this UI - blockListRefreshCallback = refreshBlockList - - -- Add button handler - addButton.MouseButton1Click:Connect(function() - local pattern = inputBox.Text - if pattern and pattern ~= "" then - if addToBlockList(pattern) then - inputBox.Text = "" - refreshBlockList() - end - end - end) - - -- Enter key handler - inputBox.FocusLost:Connect(function(enterPressed) - if enterPressed then - local pattern = inputBox.Text - if pattern and pattern ~= "" then - if addToBlockList(pattern) then - inputBox.Text = "" - refreshBlockList() - end - end - end - end) - - refreshBlockList() - blockListWindow:Show() - end - - BlockListButton.MouseButton1Click:Connect(function() - createBlockListEditor() - end) - end - - -- Add log entry to UI (implementation) - addLogEntry = function(logData, index) - if IsPaused then - return - end - - -- Check if this remote is blocked - if isBlocked(logData.remoteName) then - return - end - - local logIndex = index or #RemoteLogs - - -- Create log entry frame - local LogEntry = createSimple("TextButton", { - Name = "LogEntry", - Parent = LogList, - BackgroundColor3 = Settings.Theme.Main2, - BorderSizePixel = 0, - Size = UDim2.new(1, -10, 0, 60), - LayoutOrder = index and -index or logIndex, - Text = "", - AutoButtonColor = false, - }) - - createSimple("UIStroke", { - Parent = LogEntry, - Color = Settings.Theme.Outline1, - Thickness = 1, - }) - - -- Timestamp - createSimple("TextLabel", { - Name = "Timestamp", - Parent = LogEntry, - BackgroundTransparency = 1, - Position = UDim2.new(0, 5, 0, 2), - Size = UDim2.new(0, 60, 0, 15), - Font = Enum.Font.Code, - Text = os.date("%H:%M:%S", logData.timestamp), - TextColor3 = Color3.fromRGB(150, 150, 150), - TextSize = 10, - TextXAlignment = Enum.TextXAlignment.Left, - }) - - -- Remote Type - local typeColor = logData.remoteType:match("FireServer") and Color3.fromRGB(100, 200, 255) - or logData.remoteType:match("InvokeServer") and Color3.fromRGB(255, 200, 100) - or logData.remoteType:match("FireClient") and Color3.fromRGB(100, 255, 200) - or logData.remoteType:match("InvokeClient") and Color3.fromRGB(255, 150, 255) - or Color3.fromRGB(255, 150, 100) - - createSimple("TextLabel", { - Name = "Type", - Parent = LogEntry, - BackgroundTransparency = 1, - Position = UDim2.new(0, 70, 0, 2), - Size = UDim2.new(0, 100, 0, 15), - Font = Enum.Font.SourceSansBold, - Text = logData.remoteType, - TextColor3 = typeColor, - TextSize = 10, - TextXAlignment = Enum.TextXAlignment.Left, - }) - - -- Remote Name - createSimple("TextLabel", { - Name = "RemoteName", - Parent = LogEntry, - BackgroundTransparency = 1, - Position = UDim2.new(0, 5, 0, 18), - Size = UDim2.new(1, -10, 0, 15), - Font = Enum.Font.SourceSansBold, - Text = logData.remoteName, - TextColor3 = Settings.Theme.Text, - TextSize = 11, - TextXAlignment = Enum.TextXAlignment.Left, - TextTruncate = Enum.TextTruncate.AtEnd, - }) - - -- Caller - local callerText = "From: " .. tostring(logData.caller) - createSimple("TextLabel", { - Name = "Caller", - Parent = LogEntry, - BackgroundTransparency = 1, - Position = UDim2.new(0, 5, 0, 33), - Size = UDim2.new(1, -10, 0, 12), - Font = Enum.Font.Code, - Text = callerText, - TextColor3 = Color3.fromRGB(200, 200, 200), - TextSize = 9, - TextXAlignment = Enum.TextXAlignment.Left, - TextTruncate = Enum.TextTruncate.AtEnd, - }) - - -- Arguments Preview - local argsText = "Args: " .. formatArgsPreview(logData.rawArgs or logData.args) - createSimple("TextLabel", { - Name = "Args", - Parent = LogEntry, - BackgroundTransparency = 1, - Position = UDim2.new(0, 5, 0, 45), - Size = UDim2.new(1, -45, 0, 12), - Font = Enum.Font.Code, - Text = argsText, - TextColor3 = Color3.fromRGB(180, 180, 180), - TextSize = 9, - TextXAlignment = Enum.TextXAlignment.Left, - TextTruncate = Enum.TextTruncate.AtEnd, - }) - - -- Block Button - local blockButton = createSimple("TextButton", { - Name = "BlockButton", - Parent = LogEntry, - BackgroundColor3 = Color3.fromRGB(150, 50, 50), - BorderSizePixel = 0, - Position = UDim2.new(1, -38, 0, 43), - Size = UDim2.new(0, 35, 0, 15), - Font = Enum.Font.SourceSansBold, - Text = "Block", - TextColor3 = Settings.Theme.Text, - TextSize = 9, - AutoButtonColor = false, - }) - - blockButton.MouseButton1Click:Connect(function() - local blockedRemoteName = logData.remoteName - addToBlockList(blockedRemoteName) - - -- Remove all entries with this remote name from the display - for _, child in ipairs(LogList:GetChildren()) do - if child:IsA("TextButton") and child.Name == "LogEntry" then - local remoteNameLabel = child:FindFirstChild("RemoteName") - if remoteNameLabel and remoteNameLabel.Text == blockedRemoteName then - child:Destroy() - end - end - end - - -- Remove all entries with this remote name from the log array - for i = #RemoteLogs, 1, -1 do - if RemoteLogs[i].remoteName == blockedRemoteName then - table.remove(RemoteLogs, i) - end - end - - -- Update canvas size - LogList.CanvasSize = UDim2.new(0, 0, 0, #RemoteLogs * 62) - end) - - -- Click handler to show details - LogEntry.MouseButton1Click:Connect(function() - -- Deselect previous - if SelectedLogIndex then - local prevEntry = LogList:FindFirstChild("LogEntry") - if prevEntry then - for _, child in ipairs(LogList:GetChildren()) do - if child:IsA("TextButton") and child.LayoutOrder == (index and -index or SelectedLogIndex) then - child.BackgroundColor3 = Settings.Theme.Main2 - end - end - end - end - - -- Select this one - SelectedLogIndex = logIndex - LogEntry.BackgroundColor3 = Settings.Theme.ListSelection - updateDetailPanel(logData) - end) - - -- Limit logs - if #RemoteLogs > MaxLogs then - local oldest = LogList:FindFirstChild("LogEntry") - if oldest then - oldest:Destroy() - end - table.remove(RemoteLogs, #RemoteLogs) - end - - -- Update canvas size - LogList.CanvasSize = UDim2.new(0, 0, 0, #RemoteLogs * 62) - - -- Auto-scroll to bottom for new entries if enabled - if AutoScroll then - LogList.CanvasPosition = Vector2.new(0, 9e9) - end - end - - -- Setup listener for server-side remote spy logs - local function setupLogListener() - RemoteSpy_LogEvent = game:GetService("ReplicatedStorage"):WaitForChild("RemoteSpy_LogEvent", 10) - if RemoteSpy_LogEvent then - LogEventConnection = RemoteSpy_LogEvent.OnClientEvent:Connect(function(logData) - if logData and not IsPaused then - -- Add rawArgs field (server sends it as args) - logData.rawArgs = logData.args or {} - -- Convert args to strings for preview - local formattedArgs = {} - for _, arg in ipairs(logData.rawArgs) do - table.insert(formattedArgs, tostring(arg)) - end - logData.args = formattedArgs - - table.insert(RemoteLogs, 1, logData) - addLogEntry(logData, 1) - end - end) - end - end - - -- Initialize - local function init() - createUI() - setupLogListener() - end - - -- Public API - RemoteSpy.Init = init - - return RemoteSpy -end - -return { InitDeps = initDeps, InitAfterMain = initAfterMain, Main = main } diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua index df448e2787..fa9a7be561 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua @@ -14,7 +14,7 @@ ]] -- Main vars -local Main, Explorer, Properties, ScriptViewer, Console, ModelViewer, RemoteSpy, DefaultSettings, Notebook, Serializer, Lib +local Main, Explorer, Properties, ScriptViewer, Console, ModelViewer, DefaultSettings, Notebook, Serializer, Lib local API, RMD local SettingsEditor local AboutMenu @@ -152,7 +152,7 @@ end Main = (function() local Main = {} - Main.ModuleList = { "Explorer", "Properties", "Console", "ModelViewer", "RemoteSpy" } --Main.ModuleList = {"Explorer","Properties","ScriptViewer"} + Main.ModuleList = { "Explorer", "Properties", "Console", "ModelViewer" } --Main.ModuleList = {"Explorer","Properties","ScriptViewer"} Main.Elevated = false Main.MissingEnv = {} Main.Version = "Beta 1.0.6 Adonis" @@ -235,14 +235,12 @@ Main = (function() Properties = Apps.Properties ScriptViewer = Apps.ScriptViewer Console = Apps.Console - RemoteSpy = Apps.RemoteSpy ModelViewer = Apps.ModelViewer Notebook = Apps.Notebook local appTable = { Explorer = Explorer, Properties = Properties, Console = Console, - RemoteSpy = RemoteSpy, ModelViewer = ModelViewer, ScriptViewer = ScriptViewer, Notebook = Notebook, @@ -1497,9 +1495,6 @@ Main = (function() if ModelViewer and ModelViewer.Window and ModelViewer.Window.Gui then ModelViewer.Window.Gui:Destroy() end - if RemoteSpy and RemoteSpy.Window and RemoteSpy.Window.Gui then - RemoteSpy.Window.Gui:Destroy() - end -- Destroy main GUIs if Lib.SidesGui then @@ -1564,12 +1559,6 @@ Main = (function() Main.CreateApp({ Name = "Model Viewer", IconMap = Main.LargeIcons, Icon = 6, Window = ModelViewer.Window }) - Main.CreateApp({ - Name = "Remote Spy", - IconMap = Main.MiscIcons, - Icon = "CallRemote", - Window = RemoteSpy.Window, - }) --Main.CreateApp({Name = "Script Viewer", IconMap = Main.LargeIcons, Icon = "Script_Viewer", Window = ScriptViewer.Window}) Lib.ShowGui(gui) @@ -1683,7 +1672,6 @@ Main = (function() Properties.Init() Console.Init() ModelViewer.Init() - RemoteSpy.Init() --ScriptViewer.Init() SettingsEditor.Init() -- init this last diff --git a/MainModule/Server/Plugins/ServerNewDex/init.lua b/MainModule/Server/Plugins/ServerNewDex/init.lua index 78413294b3..f7ee48fe77 100644 --- a/MainModule/Server/Plugins/ServerNewDex/init.lua +++ b/MainModule/Server/Plugins/ServerNewDex/init.lua @@ -68,9 +68,7 @@ return function(Vargs) ServerNewDex.newDex_main = newDex_main ServerNewDex.Event = nil ServerNewDex.LogEvent = nil -- RemoteEvent for pushing logs to clients - ServerNewDex.RemoteSpy_LogEvent = nil -- RemoteEvent for RemoteSpy logs ServerNewDex.Authorized = {} --// Users who have been given Dex and are authorized to use the remote event - ServerNewDex.RemoteSpyMonitoring = {} -- Players actively monitoring remotes -- Server-side log capturing local LogService = Service.LogService @@ -276,24 +274,6 @@ return function(Vargs) -- Send complete server log history to client return ServerLogHistory end, - - startremotespy = function(_Player: Player, _args, realPlr: Player) - -- Start monitoring remotes for this player - if not ServerNewDex.RemoteSpyMonitoring[realPlr] then - ServerNewDex.RemoteSpyMonitoring[realPlr] = true - return true - end - return false - end, - - stopremotespy = function(_Player: Player, _args, realPlr: Player) - -- Stop monitoring remotes for this player - if ServerNewDex.RemoteSpyMonitoring[realPlr] then - ServerNewDex.RemoteSpyMonitoring[realPlr] = nil - return true - end - return false - end, } function ServerNewDex.MakeEvent() @@ -328,78 +308,8 @@ return function(Vargs) Parent = game:GetService("ReplicatedStorage"), }, true, true) end - - -- Create RemoteSpy_LogEvent for pushing remote spy logs to clients - if not ServerNewDex.RemoteSpy_LogEvent then - ServerNewDex.RemoteSpy_LogEvent = Service.New("RemoteEvent", { - Name = "RemoteSpy_LogEvent", - Parent = game:GetService("ReplicatedStorage"), - }, true, true) - end end - -- Remote monitoring system - local MonitoredRemotes = {} - local function setupRemoteMonitoring(remote) - if MonitoredRemotes[remote] then - return -- Already monitoring - end - - local remoteName = remote:GetFullName() - local remoteType = remote.ClassName - - if remoteType == "RemoteEvent" then - -- Hook OnServerEvent - local originalEvent = remote.OnServerEvent - MonitoredRemotes[remote] = originalEvent:Connect(function(player, ...) - -- Broadcast to all monitoring clients - for monitoringPlayer, _ in pairs(ServerNewDex.RemoteSpyMonitoring) do - if monitoringPlayer and monitoringPlayer.Parent and ServerNewDex.RemoteSpy_LogEvent then - local args = { ... } - - local logData = { - remoteType = "FireServer", - remoteName = remoteName, - caller = player.Name, - args = args, -- Send raw args to client for detailed inspection - timestamp = os.time(), - } - - ServerNewDex.RemoteSpy_LogEvent:FireClient(monitoringPlayer, logData) - end - end - end) - elseif remoteType == "RemoteFunction" then - -- RemoteFunctions can't be hooked because OnServerInvoke is write-only - -- and we can't override the metatable on Roblox instances - -- For now, just mark as seen but don't actually hook - MonitoredRemotes[remote] = true - end - end - - -- Monitor all existing and future RemoteEvents/RemoteFunctions - local function monitorAllRemotes() - -- Monitor existing remotes (only RemoteEvents will actually be hooked) - for _, descendant in ipairs(game:GetDescendants()) do - if descendant:IsA("RemoteEvent") then - setupRemoteMonitoring(descendant) - end - end - - -- Monitor new remotes - game.DescendantAdded:Connect(function(descendant) - if descendant:IsA("RemoteEvent") then - task.wait(0.1) -- Small delay to let it initialize - setupRemoteMonitoring(descendant) - end - end) - end - - -- Start monitoring when the plugin loads - task.spawn(function() - monitorAllRemotes() - end) - function ServerNewDex.MakeLocalDexForPlayer(ply, dexGui, destination) if ply then if dexGui and destination then From 45f4e9477b02ecb2b9eddea524b94560e5c0fb16 Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Sat, 13 Dec 2025 14:25:58 -0500 Subject: [PATCH 27/36] Refactor Dex: add Data.lua, remove API.lua, update modules Added Data.lua for property, icon, and class order mappings. Removed obsolete API.lua and RMD.lua. Updated Explorer.lua, Properties.lua, and init scripts to use new data structure. Added RemoteSpy module. --- .../Server/Plugins/ServerNewDex/Data.lua | 575 +++++++++ .../Dex_Client/main_NewDex/API.lua | 1 - .../main_NewDex/Modules/Explorer.lua | 14 +- .../main_NewDex/Modules/Properties.lua | 3 + .../main_NewDex/Modules/RemoteSpy.lua | 1079 +++++++++++++++++ .../Dex_Client/main_NewDex/RMD.lua | 1 - .../Dex_Client/main_NewDex/init.client.lua | 223 ++-- .../Server/Plugins/ServerNewDex/init.lua | 437 ++++++- 8 files changed, 2211 insertions(+), 122 deletions(-) create mode 100644 MainModule/Server/Plugins/ServerNewDex/Data.lua delete mode 100644 MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/API.lua create mode 100644 MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/RemoteSpy.lua delete mode 100644 MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/RMD.lua diff --git a/MainModule/Server/Plugins/ServerNewDex/Data.lua b/MainModule/Server/Plugins/ServerNewDex/Data.lua new file mode 100644 index 0000000000..f494ad714b --- /dev/null +++ b/MainModule/Server/Plugins/ServerNewDex/Data.lua @@ -0,0 +1,575 @@ +-- ServerNewDex Data Maps +-- Contains icon mappings, property priorities, and class sorting information + +return { + -- Property importance scoring for proper display order + propertyPriority = { + -- Core properties (most important) + Name = 0, + ClassName = 1, + -- Appearance + Color = 10, + Transparency = 11, + BackgroundColor3 = 12, + BackgroundTransparency = 13, + TextColor3 = 14, + -- Physics + Mass = 20, + Friction = 21, + Elasticity = 22, + CFrame = 23, + Position = 24, + Rotation = 25, + Size = 26, + Scale = 27, + CanCollide = 30, + Friction = 31, + Elasticity = 32, + Density = 33, + Velocity = 34, + RotVelocity = 35, + -- Behavior + Anchored = 40, + CanTouch = 41, + TopSurface = 42, + BottomSurface = 43, + -- Text properties + Text = 50, + Font = 51, + TextSize = 52, + TextWrapped = 53, + TextScaled = 54, + -- Audio + Volume = 60, + Pitch = 61, + TimePosition = 62, + }, + + -- Class icon mapping from original RMD (all 277 classes) + classIconMap = { + Accessory = 32, + Accoutrement = 32, + Actor = 113, + AdGui = 145, + AdPortal = 146, + AlignOrientation = 100, + AlignPosition = 99, + AngularVelocity = 103, + Animation = 60, + AnimationController = 60, + AnimationTrack = 60, + Animator = 60, + ArcHandles = 56, + Atmosphere = 28, + Attachment = 81, + AudioAnalyzer = 84, + AudioChannelMixer = 84, + AudioChannelSplitter = 84, + AudioChorus = 84, + AudioCompressor = 84, + AudioDeviceInput = 11, + AudioDeviceOutput = 11, + AudioDistortion = 84, + AudioEcho = 84, + AudioEmitter = 11, + AudioEqualizer = 84, + AudioFader = 84, + AudioFilter = 84, + AudioFlanger = 84, + AudioGate = 84, + AudioLimiter = 84, + AudioListener = 11, + AudioPitchShifter = 84, + AudioPlayer = 11, + AudioReverb = 84, + AudioUnEcho = 84, + Backpack = 2, + BaseWrap = 126, + BasePart = 1, + BaseScript = 30, + BillboardGui = 5, + BindableEvent = 37, + BindableFunction = 37, + BodyAngularVelocity = 34, + BodyGyro = 34, + BodyPosition = 34, + BodyThrust = 34, + BodyVelocity = 34, + BoolValue = 38, + BrickColorValue = 39, + BrushLocomotor = 34, + Bulkheads = 126, + Button = 145, + ButtonLocomotor = 34, + CFrameValue = 38, + Camera = 3, + CapsuleHandles = 56, + ChannelBot = 143, + Cherno = 1, + ChorusSoundEffect = 84, + Chat = 11, + ChatInputBar = 145, + ChatWindowConfiguration = 145, + Class = 101, + ClickDetector = 37, + Clothing = 32, + Color3Value = 38, + ColorSequence = 39, + ColorSequenceKeypoint = 39, + CommandBar = 11, + Configuration = 37, + ConnectGui = 145, + ContextActionService = 136, + Controller = 30, + CornerWedgePart = 1, + CustomEventReceiver = 11, + CustomSyncAction = 11, + CylinderHandles = 56, + CylindricalConstraint = 94, + Debris = 136, + DebuggerBreakpoint = 11, + DebuggerManager = 11, + DebuggerWatch = 11, + Decal = 6, + DepthOfFieldEffect = 11, + Dialog = 37, + DistortionSoundEffect = 84, + DragDetector = 37, + Dragger = 34, + EchoSoundEffect = 84, + Enum = 101, + EqualizerSoundEffect = 84, + EulerRotationCurve = 39, + EulerRotationCurveKey = 39, + Event = 101, + Explosion = 37, + ExposureAdjustment = 11, + FailureInducer = 11, + Feature = 128, + FileSystemWatcher = 11, + Fire = 37, + FlagStand = 145, + FlangeSoundEffect = 84, + FlexibleConstraint = 94, + FloatCurve = 39, + FloatCurveKey = 39, + FloorWire = 17, + Folder = 2, + ForceField = 34, + FormFactorPart = 1, + Frame = 52, + FreeMovementController = 34, + FreecamController = 34, + FriendCardiGui = 145, + FriendNotificationGui = 145, + FriendsCoreGui = 145, + FunctionsDialogModules = 11, + Gadget = 113, + GapDragDetector = 37, + GasProperties = 101, + GateSoundEffect = 84, + GeneralSettings = 11, + Geometry = 101, + GlueConstraint = 94, + Glue = 34, + GoalSensor = 145, + GraphicsSettings = 11, + GroundController = 34, + GuiBase = 52, + GuiBase2d = 52, + GuiBase3d = 52, + GuiButton = 52, + GuiLabel = 52, + GuiMain = 11, + GuiObject = 52, + GuiTextLabel = 52, + GuiTextField = 52, + Gyro = 34, + HandleAdornment = 56, + Handles = 56, + HapticService = 136, + Hat = 32, + HeadLocomotor = 34, + HeadsUpDisplay = 145, + HealthDecreaser = 145, + HingeConstraint = 94, + HitPoints = 145, + Hole = 1, + HoleSurface = 1, + HomeLowerGui = 145, + HomeScreenMotor = 11, + HtmlTextLabel = 52, + Humanoid = 7, + HumanoidController = 34, + HumanoidDescription = 7, + HumanoidRootPart = 1, + IKControl = 34, + ImageButton = 52, + ImageLabel = 52, + ImageSize = 101, + ImportedEnumType = 101, + InflateConstraint = 94, + InputObject = 101, + InputService = 136, + InsertService = 136, + Instance = 113, + IntConstrainedValue = 38, + IntValue = 38, + IntegrationBase = 101, + Interactable = 145, + InteractionController = 34, + InteractionPrompter = 145, + InterfaceAdornment = 56, + Inventory = 145, + InvokableGui = 145, + IslandConfigurator = 145, + JointInstance = 34, + JointLocomotor = 34, + Keyframe = 39, + KeyframeMarker = 39, + KeyframeSequence = 39, + Knee = 145, + L70Obsolete = 11, + LevelSequence = 39, + LevelSequenceKeypoint = 39, + Library = 128, + Lighting = 28, + LimiterSoundEffect = 84, + LineForce = 34, + LineHandleAdornment = 56, + LoadingGui = 145, + LocalizationEntry = 11, + LocalizationService = 136, + LocalScript = 30, + Locale = 11, + LockConstraint = 94, + Lod = 126, + LodData = 126, + LodGroup = 126, + LodRoot = 126, + LodTemplate = 126, + LogService = 136, + LoginGui = 145, + Lunge = 145, + LuaSourceContainer = 30, + Mannequin = 7, + ManualSurfaceGui = 52, + MarketplaceService = 136, + MemStorage = 11, + MemStorageConnection = 11, + MeshId = 101, + MeshPart = 1, + Message = 37, + MessageBusConnection = 11, + Metatable = 11, + Method = 101, + MethodError = 11, + MicroProfiler = 11, + MobileButton = 145, + MobileButtonsFrame = 145, + MobileInputFrame = 145, + ModuleScript = 30, + Motor = 34, + Motor6D = 34, + MotorFeature = 101, + Mount = 145, + MoveDetector = 37, + MovementController = 34, + MovieClip = 39, + NameDisplayGui = 145, + NetworkClient = 11, + NetworkMarker = 34, + NetworkReplicator = 11, + NetworkServer = 11, + NormalId = 101, + NotificationGui = 145, + NumberRange = 39, + NumberSequence = 39, + NumberSequenceKeypoint = 39, + NumberValue = 38, + ObjectValue = 38, + OcclusionGeometry = 113, + OffsetCurve = 39, + OrderedDictionary = 11, + Orientation = 101, + OutputAnalyzer = 11, + OutputContainer = 11, + OverlapParams = 101, + OverscrollShadow = 145, + OverscrollShadowFrame = 145, + PaddleLock = 94, + PaginatedList = 145, + PanLocomotor = 34, + PanValue = 101, + ParallelConstraint = 94, + Part = 1, + PartAdornment = 56, + PartAsset = 101, + ParticleEmitter = 37, + PartOperation = 1, + PartOperationAsset = 101, + PerfStatsItem = 145, + PerformanceStatsGui = 145, + PhysicalProperties = 101, + Physics = 11, + Picker = 145, + PitchShiftSoundEffect = 84, + PixelSize = 101, + PlaceId = 11, + PointLight = 8, + PointLocomotor = 34, + Pole = 145, + PollingTimer = 11, + PopupMenu = 52, + Position = 101, + PrimaryPart = 101, + PrismaticConstraint = 94, + ProximityPrompt = 37, + ProximityPrompterGui = 145, + PullConstraint = 94, + PushButton = 145, + PushNotificationReceiver = 136, + RBXGamepadButton = 101, + RBXScriptConnection = 101, + RBXScriptSignal = 101, + RadialConstraint = 94, + Radio = 11, + RainGear = 32, + RangeFilter = 11, + Rank = 145, + RaycastParams = 101, + RaycastResult = 101, + RaycastResultOrigin = 101, + RayValue = 38, + Rays = 11, + ReactorCore = 145, + Reactive = 145, + ReactiveButton = 145, + ReadyGui = 145, + Rectangle = 1, + RectangleHandles = 56, + ReflectionMetadata = 11, + ReflectionService = 136, + Regions = 128, + RemoteEvent = 37, + RemoteFunction = 37, + RemoteSpy = 11, + ReplicatedFirst = 2, + ReplicatedScriptService = 30, + ReplicatedStorage = 2, + ResourceFork = 11, + ResponsiveGui = 145, + RestrictedChild = 101, + ResultItem = 145, + ReverbSoundEffect = 84, + RevoluteConstraint = 94, + Ribbon = 126, + RichTextLabel = 52, + RigidConstraint = 94, + RootLocomotor = 34, + RopeDragDetector = 37, + RotatedRegion3 = 101, + RotatedRegionTest = 101, + RotInertiaConstraint = 94, + RotVelocityConstraint = 94, + RotationCurve = 39, + RotationCurveKey = 39, + Rotator = 34, + RouteWaypoint = 145, + RulesFrame = 145, + RunService = 136, + RuntimeNodeModuleScript = 30, + S1ButtonActivator = 145, + S2ButtonActivator = 145, + SKD = 128, + Seat = 1, + SeaWeedPlant = 145, + SectionLabel = 145, + SectionLabelFrame = 145, + Selection = 136, + SeqTweenItem = 39, + SequenceMotor = 34, + ServerScript = 30, + ServerScriptService = 30, + ServerStorage = 2, + ServiceBase = 101, + ServiceProvider = 101, + SetString = 11, + Settings = 11, + Shape = 101, + ShapeInParabola = 1, + SharedString = 11, + Shirt = 32, + ShirtGraphic = 32, + Signal = 101, + SignalRemoteEvent = 37, + Size = 101, + SizeConstraint = 94, + Skin = 145, + Smoke = 37, + SnapshotPublishService = 136, + Snap = 145, + SnappingConstraint = 94, + SnowballThrower = 145, + SnowCrusherTurret = 145, + SoundEffect = 84, + SoundGroup = 11, + Sound = 11, + Spark = 37, + SpawnLocation = 1, + SpecialMesh = 9, + SpectatorGui = 145, + SpellingErrorHighlightObject = 11, + SphereHandles = 56, + SplineConstraint = 94, + Spoke = 34, + SpringConstraint = 94, + StandardPages = 145, + StarterCharacterScripts = 30, + StarterGui = 52, + StarterPlayer = 7, + StarterPlayerCharacterScripts = 30, + StarterPlayerCharacterAppearance = 32, + StarterPlayerScripts = 30, + StaticGroup = 113, + StatsGui = 145, + Steering = 34, + StencilMesh = 9, + StepFunction = 34, + StepMotor = 34, + StepSnappingConstraint = 94, + StretchConstraint = 94, + StringValue = 38, + Structure = 128, + StudioAssetService = 136, + StudioData = 11, + StudioTheme = 11, + Style = 145, + StyleLayout = 52, + Subject = 101, + SubmitLockedPrompt = 145, + SubscriptionsPage = 145, + SurfaceAdornment = 56, + SurfaceGui = 52, + SurfaceSelection = 145, + SwappableFrame = 52, + SwayController = 34, + SwimLocomotor = 34, + SwimmingAnimationController = 34, + Symbol = 11, + SymbolScope = 11, + SyncController = 34, + SymbolType = 11, + SystemHardware = 11, + TABLE = 145, + TaskScheduler = 11, + TeleportService = 136, + Template = 126, + TemporalFramebuffer = 11, + Terrain = 28, + TerrainDetail = 11, + Test = 11, + TestService = 136, + TextBox = 52, + TextButton = 52, + TextLabel = 52, + TextSize = 101, + TextService = 136, + Texture = 1, + TextureId = 101, + ThumbnailGenerator = 11, + ThumbnailPreviewFrame = 145, + ThumbStick = 101, + TimeLabel = 145, + Timeout = 11, + TitleBar = 145, + ToggleButton = 145, + Tool = 2, + ToolTipGui = 145, + TopBar = 145, + TopBarContainer = 145, + TopBarFrame = 145, + TouchButton = 145, + TouchGui = 145, + TouchInputFrame = 145, + Tower = 145, + TrackPlane = 145, + TransformController = 34, + Translator = 136, + TransparencyController = 34, + TrussLocomotor = 34, + TubeConstraint = 94, + TubeConnection = 101, + Tunnel = 145, + TweenBase = 39, + TweenInfo = 101, + TweenService = 136, + TwistConstraint = 94, + TwoPointDragDetector = 37, + Type = 101, + TypeBase = 101, + TypeDef = 11, + UIAspectRatioConstraint = 52, + UICanvasSize = 52, + UICorner = 52, + UIGradient = 52, + UIGridLayout = 52, + UIListLayout = 52, + UIPadding = 52, + UIPageLayout = 52, + UIScale = 52, + UISizeConstraint = 52, + UIStroke = 52, + UITableLayout = 52, + UITextSizeConstraint = 52, + UnitBase = 101, + UnlockedGui = 145, + UnmanagedInstance = 113, + UserGameSettings = 11, + UserInputService = 136, + UserSettings = 11, + Utility = 128, + VRGear = 32, + VehicleController = 34, + VehicleFeature = 101, + Vector2 = 101, + Vector3 = 101, + Vector3int16 = 101, + Vector3Value = 38, + Vector4 = 101, + VectorForce = 34, + Version = 11, + VersionControlLockedGui = 145, + VideoFrame = 120, + ViewportFrame = 52, + VoiceChatService = 136, + VoiceSource = 11, + WedgePart = 1, + Weld = 34, + WeldConstraint = 94, + Wire = 17, + WireframeHandleAdornment = 113, + Workspace = 19, + WorldModel = 19, + WrapLayer = 126, + WrapTarget = 127, + }, + + -- Class sort/display order (critical for proper sorting in explorer) + classExplorerOrder = { + Workspace = 0, + Players = 1, + Lighting = 2, + ReplicatedStorage = 3, + ReplicatedFirst = 4, + ServerScriptService = 5, + ServerStorage = 6, + StarterPlayer = 7, + StarterGui = 8, + StarterPack = 9, + DataStoreService = 100, + InsertService = 100, + RunService = 100, + HttpService = 100, + }, +} diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/API.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/API.lua deleted file mode 100644 index cb17cc51c3..0000000000 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/API.lua +++ /dev/null @@ -1 +0,0 @@ -return [==[ { "Classes": [ { "Members": [ { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Archivable", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Attributes", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AttributesReplicate", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AttributesSerialize", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ClassName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DataCost", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HistoryId", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UniqueId" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Name", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Parent", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PropertyStatusStudio", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PropertyStatus" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RobloxLocked", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SourceAssetId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Tags", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UniqueId", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UniqueId" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "archivable", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Archivable", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "className", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "ClassName", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "numExpectedDirectChildren", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "AddTag", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClearAllChildren", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Clone", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Destroy", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindFirstAncestor", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "FindFirstAncestorOfClass", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "FindFirstAncestorWhichIsA", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "FindFirstChild", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "false", "Name": "recursive", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "FindFirstChildOfClass", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "FindFirstChildWhichIsA", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "false", "Name": "recursive", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "FindFirstDescendant", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetActor", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Actor" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetAttribute", "Parameters": [ { "Name": "attribute", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetAttributeChangedSignal", "Parameters": [ { "Name": "attribute", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptSignal" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAttributes", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetChildren", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetDebugId", "Parameters": [ { "Default": "4", "Name": "scopeLength", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "PluginSecurity", "Tags": [ "NotBrowsable" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetDescendants", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetFullName", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetPropertyChangedSignal", "Parameters": [ { "Name": "property", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptSignal" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTags", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "HasTag", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "IsA", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "IsAncestorOf", "Parameters": [ { "Name": "descendant", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "IsDescendantOf", "Parameters": [ { "Name": "ancestor", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "IsPropertyModified", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Remove", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveTag", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ResetPropertyToDefault", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetAttribute", "Parameters": [ { "Name": "attribute", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "WaitForChild", "Parameters": [ { "Name": "childName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "timeOut", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "CustomLuaState", "CanYield" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "children", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetChildren", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "clone", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Clone", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "destroy", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Destroy", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "findFirstChild", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "false", "Name": "recursive", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "FindFirstChild", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "getChildren", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetChildren", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "isA", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated", "CustomLuaState" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "isDescendantOf", "Parameters": [ { "Name": "ancestor", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "IsDescendantOf", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "remove", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Remove", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AncestryChanged", "Parameters": [ { "Name": "child", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "parent", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AttributeChanged", "Parameters": [ { "Name": "attribute", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "property", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ChildAdded", "Parameters": [ { "Name": "child", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ChildRemoved", "Parameters": [ { "Name": "child", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DescendantAdded", "Parameters": [ { "Name": "descendant", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DescendantRemoving", "Parameters": [ { "Name": "descendant", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Destroying", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "childAdded", "Parameters": [ { "Name": "child", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "ChildAdded", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Instance", "Superclass": "<<>>", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Transform", "Default": "-0, -0, -1", "MemberType": "Property", "Name": "AttachmentForward", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Transform", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "AttachmentPoint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Transform", "Default": "0, 0, 0", "MemberType": "Property", "Name": "AttachmentPos", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Transform", "Default": "1, 0, 0", "MemberType": "Property", "Name": "AttachmentRight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Transform", "Default": "0, 1, 0", "MemberType": "Property", "Name": "AttachmentUp", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "BackendAccoutrementState", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Event", "Name": "ServerEquipAccoutrement", "Parameters": [ { "Name": "character", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerUnequipAccoutrement", "Parameters": [ { "Name": "oldCharacter", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Accoutrement", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "Unknown", "MemberType": "Property", "Name": "AccessoryType", "Security": { "Read": "None", "Write": "NotAccessibleSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AccessoryType" } } ], "MemoryCategory": "Instances", "Name": "Accessory", "Superclass": "Accoutrement" }, { "Members": [], "MemoryCategory": "Instances", "Name": "Hat", "Superclass": "Accoutrement", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "State", "Default": "", "MemberType": "Property", "Name": "PortalInvalidReason", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "PortalVersion", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Behavior", "Default": "Inactive", "MemberType": "Property", "Name": "Status", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AdUnitStatus" } }, { "MemberType": "Function", "Name": "TeleportConfirmed", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TeleportRejected", "Parameters": [ { "Name": "shouldCooldown", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "rejectedByDistance", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AdPortal", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "GetAdTeleportInfo", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetReportAdInfo", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReturnToPublisherExperience", "Parameters": [ { "Name": "adTeleportMethod", "Type": { "Category": "Enum", "Name": "AdTeleportMethod" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowVideoAd", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AdTeleportEnded", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AdTeleportInitiated", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PortalPrompt", "Parameters": [ { "Name": "destinationId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "portal", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "requiresNoButton", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ReportImpressionSignal", "Parameters": [ { "Name": "ad_instance_name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "encrypted_ad_tracking_data", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "encryption_metadata", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ReportTeleportSignal", "Parameters": [ { "Name": "ad_instance_name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "encrypted_ad_tracking_data", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "encryption_metadata", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "teleport_type", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "teleport_source_universe_id", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "teleport_source_place_id", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "teleport_dest_place_id", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServeAdResponseSignal", "Parameters": [ { "Name": "uuid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "response", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "isError", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServeAdSignal", "Parameters": [ { "Name": "uuid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "request", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "VideoAdClosed", "Parameters": [ { "Name": "adShown", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AdService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "AdvancedDragger", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ApiKey", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "FireCustomEvent", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "eventCategory", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "customData", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FireEvent", "Parameters": [ { "Name": "category", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FireInGameEconomyEvent", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "itemName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "economyAction", "Type": { "Category": "Enum", "Name": "AnalyticsEconomyAction" } }, { "Name": "itemCategory", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "amount", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "currency", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "location", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "customData", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FireLogEvent", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "logLevel", "Type": { "Category": "Enum", "Name": "AnalyticsLogLevel" } }, { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "debugInfo", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "customData", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FirePlayerProgressionEvent", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "category", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "progressionStatus", "Type": { "Category": "Enum", "Name": "AnalyticsProgressionStatus" } }, { "Name": "location", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "statistics", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "customData", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AnalyticsService", "Superclass": "Instance", "Tags": [ "Service", "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "AnimationId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "Animation", "Name": "Animation", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Guid", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GuidBinaryString", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Loop", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Priority", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AnimationPriority" } } ], "MemoryCategory": "Instances", "Name": "AnimationClip", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "CurveAnimation", "Superclass": "AnimationClip" }, { "Members": [ { "Category": "Data", "Default": "2", "MemberType": "Property", "Name": "AuthoredHipHeight", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "AddKeyframe", "Parameters": [ { "Name": "keyframe", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetKeyframes", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveKeyframe", "Parameters": [ { "Name": "keyframe", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Animation", "Name": "KeyframeSequence", "Superclass": "AnimationClip" }, { "Members": [ { "MemberType": "Function", "Name": "GetAnimationClip", "Parameters": [ { "Name": "assetId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Class", "Name": "AnimationClip" }, "Security": "PluginSecurity", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetAnimationClipAsync", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAnimationClipById", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "useCache", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "AnimationClip" }, "Security": "PluginSecurity", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetAnimationClipAsync", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMemStats", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterActiveAnimationClip", "Parameters": [ { "Name": "animationClip", "Type": { "Category": "Class", "Name": "AnimationClip" } } ], "ReturnType": { "Category": "DataType", "Name": "Content" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterAnimationClip", "Parameters": [ { "Name": "animationClip", "Type": { "Category": "Class", "Name": "AnimationClip" } } ], "ReturnType": { "Category": "DataType", "Name": "Content" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAnimationClipAsync", "Parameters": [ { "Name": "assetId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Class", "Name": "AnimationClip" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAnimations", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Animation", "Name": "AnimationClipProvider", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetPlayingAnimationTracks", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPlayingAnimationTracks", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadAnimation", "Parameters": [ { "Name": "animation", "Type": { "Category": "Class", "Name": "Animation" } } ], "ReturnType": { "Category": "Class", "Name": "AnimationTrack" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "LoadAnimation", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AnimationPlayed", "Parameters": [ { "Name": "animationTrack", "Type": { "Category": "Class", "Name": "AnimationTrack" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "AnimationPlayed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Animation", "Name": "AnimationController", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "CreateJob", "Parameters": [ { "Name": "filePath", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DownloadJobResult", "Parameters": [ { "Name": "jobId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "outputFilePath", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FullProcess", "Parameters": [ { "Name": "videoFilePath", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "progressCallback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetJobStatus", "Parameters": [ { "Name": "jobId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AnimationFromVideoCreatorService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "IsAgeRestricted", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateAnimationByUploadingVideo", "Parameters": [ { "Name": "progressCallback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ImportVideoWithPrompt", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AnimationFromVideoCreatorStudioService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "animation", "Default": "", "MemberType": "Property", "Name": "articulatedJoint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "", "MemberType": "Property", "Name": "endEffectorRotationConstraint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "", "MemberType": "Property", "Name": "endEffectorTranslationConstraint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "", "MemberType": "Property", "Name": "endEffectorWeight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "", "MemberType": "Property", "Name": "facsControl", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "\u0001", "MemberType": "Property", "Name": "label", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "\u0001", "MemberType": "Property", "Name": "name", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "\u0001", "MemberType": "Property", "Name": "parent", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "\u0001", "MemberType": "Property", "Name": "postTransform", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "\u0001", "MemberType": "Property", "Name": "preTransform", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "\u0001", "MemberType": "Property", "Name": "transform", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "animation", "Default": "\u0001", "MemberType": "Property", "Name": "weight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "MemberType": "Function", "Name": "LoadFromHumanoid", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AnimationRigData", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Animation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "TrackerStreamAnimation" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsPlaying", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Priority", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AnimationPriority" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "WeightCurrent", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "WeightTarget", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "AdjustWeight", "Parameters": [ { "Default": "1", "Name": "weight", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "0.100000001", "Name": "fadeTime", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTrackerData", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Play", "Parameters": [ { "Default": "0.100000001", "Name": "fadeTime", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "1", "Name": "weight", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Stop", "Parameters": [ { "Default": "0.100000001", "Name": "fadeTime", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TogglePause", "Parameters": [ { "Name": "paused", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Stopped", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Animation", "Name": "AnimationStreamTrack", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Animation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Animation" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsPlaying", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Length", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Looped", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Priority", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AnimationPriority" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Speed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TimePosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "WeightCurrent", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "WeightTarget", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "AdjustSpeed", "Parameters": [ { "Default": "1", "Name": "speed", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AdjustWeight", "Parameters": [ { "Default": "1", "Name": "weight", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "0.100000001", "Name": "fadeTime", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMarkerReachedSignal", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptSignal" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTimeOfKeyframe", "Parameters": [ { "Name": "keyframeName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "double" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Play", "Parameters": [ { "Default": "0.100000001", "Name": "fadeTime", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "1", "Name": "weight", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "1", "Name": "speed", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Stop", "Parameters": [ { "Default": "0.100000001", "Name": "fadeTime", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DidLoop", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Ended", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "KeyframeReached", "Parameters": [ { "Name": "keyframeName", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Stopped", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Animation", "Name": "AnimationTrack", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "EvaluationThrottled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "NotBrowsable" ], "ThreadSafety": "Safe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "PreferLodEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "ApplyJointVelocities", "Parameters": [ { "Name": "motors", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPlayingAnimationTracks", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPlayingAnimationTracksCoreScript", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadAnimation", "Parameters": [ { "Name": "animation", "Type": { "Category": "Class", "Name": "Animation" } } ], "ReturnType": { "Category": "Class", "Name": "AnimationTrack" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadAnimationCoreScript", "Parameters": [ { "Name": "animation", "Type": { "Category": "Class", "Name": "Animation" } } ], "ReturnType": { "Category": "Class", "Name": "AnimationTrack" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadStreamAnimation", "Parameters": [ { "Name": "animation", "Type": { "Category": "Class", "Name": "TrackerStreamAnimation" } } ], "ReturnType": { "Category": "Class", "Name": "AnimationStreamTrack" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadStreamAnimationForSelfieView_deprecated", "Parameters": [ { "Name": "animation", "Type": { "Category": "Class", "Name": "TrackerStreamAnimation" } }, { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Class", "Name": "AnimationStreamTrack" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StepAnimations", "Parameters": [ { "Name": "deltaTime", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AnimationPlayed", "Parameters": [ { "Name": "animationTrack", "Type": { "Category": "Class", "Name": "AnimationTrack" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AnimationPlayedCoreScript", "Parameters": [ { "Name": "animationTrack", "Type": { "Category": "Class", "Name": "AnimationTrack" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AnimationStreamTrackPlayed", "Parameters": [ { "Name": "animationTrack", "Type": { "Category": "Class", "Name": "AnimationStreamTrack" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnCombinedUpdate2", "Parameters": [ { "Name": "animation", "Type": { "Category": "DataType", "Name": "Content" } }, { "Name": "playState", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "fadeTime", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "weight", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "speed", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "timePosition", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "priority", "Type": { "Category": "Enum", "Name": "AnimationPriority" } }, { "Name": "valuesUpdated", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnStreamingUpdated", "Parameters": [ { "Name": "fadeTime", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "weight", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "priority", "Type": { "Category": "Enum", "Name": "AnimationPriority" } }, { "Name": "valuesUpdated", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StreamSyncRequest", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Animator", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "CheckForUpdate", "Parameters": [ { "Default": "nil", "Name": "handler", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DisableDUAR", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DisableDUARAndOpenSurvey", "Parameters": [ { "Name": "surveyUrl", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PerformManagedUpdate", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AppUpdateService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "AssetCounterService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Interface", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Port", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "StartServer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "AssetDeliveryProxy", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetAllTemplates", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Map" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTemplate", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Map" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveTemplate", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SaveTemplate", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "importTemplate", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartSessionWithPath", "Parameters": [ { "Name": "filePath", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "AssetImportSession" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PickFileWithPrompt", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PickMultipleFilesWithPrompt", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartSessionWithPrompt", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "AssetImportSession" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AssetImportService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "ApplySettings", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ApplyTemplate", "Parameters": [ { "Name": "template", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Cancel", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCurrentStatusTable", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFilename", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetImportTree", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetInstance", "Parameters": [ { "Name": "nodeId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HasAnimation", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsAvatar", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsGltf", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsR15", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Reset", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Upload", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "usesCustomRestPoseLua", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UploadComplete", "Parameters": [ { "Name": "results", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UploadCompleteDeprecated", "Parameters": [ { "Name": "succeeded", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "errorMap", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UploadProgress", "Parameters": [ { "Name": "progressRatio", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AssetImportSession", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetMeshIdFromAliasName", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMeshIdFromAssetId", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTextureIdFromAliasName", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTextureIdFromAssetId", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HasUnpublishedChangesForLinkedSource", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertAudio", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "assetName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertImage", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertLinkedSourceAsLocalScript", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertLinkedSourceAsModuleScript", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertLinkedSourceAsScript", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertMesh", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "insertWithLocation", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertMeshesWithLocation", "Parameters": [ { "Name": "aliasNames", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertModel", "Parameters": [ { "Name": "modelId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertPackage", "Parameters": [ { "Name": "packageId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertVideo", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "assetName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenLinkedSource", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenPlace", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RefreshLinkedSource", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RevertLinkedSourceToLastPublishedVersion", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowPackageDetails", "Parameters": [ { "Name": "packageId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UpdateAllPackages", "Parameters": [ { "Name": "packageId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ViewPackageOnWebsite", "Parameters": [ { "Name": "packageId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddNewPlace", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateAlias", "Parameters": [ { "Name": "assetType", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DeleteAlias", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PublishLinkedSource", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemovePlace", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RenameAlias", "Parameters": [ { "Name": "assetType", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "oldAliasName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "newAliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RenameModel", "Parameters": [ { "Name": "modelId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "newName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RenamePlace", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "newName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AssetImportedSignal", "Parameters": [ { "Name": "assetType", "Type": { "Category": "Enum", "Name": "AssetType" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "assetName", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ImportSessionFinished", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ImportSessionStarted", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MayBeLinkedSourceModified", "Parameters": [ { "Name": "aliasName", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AssetManagerService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ContentId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "OutputPath", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "PatchId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "AssetPatchSettings", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "DeserializeInstance", "Parameters": [ { "Name": "serializedInstance", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBundleDetailsSync", "Parameters": [ { "Name": "bundleId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreatePlaceAsync", "Parameters": [ { "Name": "placeName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "templatePlaceID", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Default": "", "Name": "description", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreatePlaceInPlayerInventoryAsync", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "placeName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "templatePlaceID", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Default": "", "Name": "description", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAssetIdsForPackage", "Parameters": [ { "Name": "packageAssetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBundleDetailsAsync", "Parameters": [ { "Name": "bundleId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCreatorAssetID", "Parameters": [ { "Name": "creationID", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "None", "Tags": [ "Yields", "Deprecated", { "PreferredDescriptorName": "GetProductInfo", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGamePlacesAsync", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadImageAsync", "Parameters": [ { "Name": "textureId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Class", "Name": "DynamicImage" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptCreateAssetAsync", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "assetType", "Type": { "Category": "Enum", "Name": "AssetType" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SavePlaceAsync", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SearchAudio", "Parameters": [ { "Name": "searchParameters", "Type": { "Category": "Class", "Name": "AudioSearchParams" } } ], "ReturnType": { "Category": "Class", "Name": "AudioPages" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenCreateResultModal", "Parameters": [ { "Name": "resultType", "Type": { "Category": "Enum", "Name": "PromptCreateAssetResult" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenPublishResultModal", "Parameters": [ { "Name": "resultType", "Type": { "Category": "Enum", "Name": "PromptPublishAssetResult" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AssetService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "State", "Default": "0.7843, 0.6667, 0.4235", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "State", "Default": "0.3608, 0.2353, 0.0549", "MemberType": "Property", "Name": "Decay", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0.395000011", "MemberType": "Property", "Name": "Density", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "Glare", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "Haze", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "Offset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "Atmosphere", "Superclass": "Instance" }, { "Members": [ { "Category": "Derived Data", "Default": "1, 0, 0", "MemberType": "Property", "Name": "Axis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Transform", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Transform", "Default": "-0, 0, 0", "MemberType": "Property", "Name": "Orientation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Transform", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Transform", "Default": "-0, 0, -0", "MemberType": "Property", "Name": "Rotation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Orientation", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Derived Data", "Default": "0, 1, 0", "MemberType": "Property", "Name": "SecondaryAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "Visible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Derived World Data", "Default": "1, 0, 0", "MemberType": "Property", "Name": "WorldAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Derived World Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "WorldCFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Derived World Data", "Default": "-0, 0, 0", "MemberType": "Property", "Name": "WorldOrientation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Derived World Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "WorldPosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Derived World Data", "Default": "-0, 0, -0", "MemberType": "Property", "Name": "WorldRotation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "WorldOrientation", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Derived World Data", "Default": "0, 1, 0", "MemberType": "Property", "Name": "WorldSecondaryAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "MemberType": "Function", "Name": "GetAxis", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Axis", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetConstraints", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSecondaryAxis", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SecondaryAxis", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetAxis", "Parameters": [ { "Name": "axis", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Axis", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetSecondaryAxis", "Parameters": [ { "Name": "axis", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SecondaryAxis", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Attachment", "Superclass": "Instance" }, { "Members": [ { "Category": "Transform", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Transform", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Derived Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TransformedCFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Derived World Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TransformedWorldCFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } } ], "MemoryCategory": "Instances", "Name": "Bone", "Superclass": "Attachment" }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Album", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Artist", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "Music", "MemberType": "Property", "Name": "AudioSubType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AudioSubType" } }, { "Category": "Data", "Default": "Music", "MemberType": "Property", "Name": "AudioSubtype", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "AudioSubType", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AudioSubType" } }, { "Category": "Data", "Default": "2147483647", "MemberType": "Property", "Name": "MaxDuration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "MinDuration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "SearchKeyword", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Tag", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Title", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "AudioSearchParams", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [ { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "ClientFeatures", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "ClientFeaturesInitialized", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "ServerFeatures", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "IsEnabled", "Parameters": [ { "Name": "mask", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "feature", "Type": { "Category": "Enum", "Name": "AvatarChatServiceFeature" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsPlaceEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsUniverseEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PollClientFeatures", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PollServerFeatures", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetClientFeaturesAsync", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetServerFeaturesAsync", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnClientFeatures", "Parameters": [ { "Name": "features", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AvatarChatService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetAccessoryType", "Parameters": [ { "Name": "avatarAssetType", "Type": { "Category": "Enum", "Name": "AvatarAssetType" } } ], "ReturnType": { "Category": "Enum", "Name": "AccessoryType" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "NoPromptCreateOutfit", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "rigType", "Type": { "Category": "Enum", "Name": "HumanoidRigType" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "NoPromptDeleteOutfit", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "NoPromptRenameOutfit", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "NoPromptSaveAvatar", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "rigType", "Type": { "Category": "Enum", "Name": "HumanoidRigType" } }, { "Name": "saveDict", "Type": { "Category": "Group", "Name": "Dictionary" } }, { "Default": "0", "Name": "gearAssetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "NoPromptSaveAvatarThumbnailCustomization", "Parameters": [ { "Name": "thumbnailType", "Type": { "Category": "Enum", "Name": "AvatarThumbnailCustomizationType" } }, { "Name": "emoteAssetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "cameraDistanceScale", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "yRotDeg", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "0", "Name": "fieldOfViewDeg", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "NoPromptSetFavorite", "Parameters": [ { "Name": "itemId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "itemType", "Type": { "Category": "Enum", "Name": "AvatarItemType" } }, { "Name": "shouldFavorite", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "NoPromptUpdateOutfit", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "rigType", "Type": { "Category": "Enum", "Name": "HumanoidRigType" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PerformCreateOutfitWithDescription", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PerformDeleteOutfit", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PerformRenameOutfit", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PerformSaveAvatarWithDescription", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "addedAssets", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "removedAssets", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PerformSetFavorite", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PerformUpdateOutfit", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptAllowInventoryReadAccess", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptCreateOutfit", "Parameters": [ { "Name": "outfit", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "rigType", "Type": { "Category": "Enum", "Name": "HumanoidRigType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptDeleteOutfit", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptRenameOutfit", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptSaveAvatar", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "rigType", "Type": { "Category": "Enum", "Name": "HumanoidRigType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptSetFavorite", "Parameters": [ { "Name": "itemId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "itemType", "Type": { "Category": "Enum", "Name": "AvatarItemType" } }, { "Name": "shouldFavorite", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptUpdateOutfit", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "updatedOutfit", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "rigType", "Type": { "Category": "Enum", "Name": "HumanoidRigType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetAllowInventoryReadAccess", "Parameters": [ { "Name": "inventoryReadAccessGranted", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalCreateOutfitFailed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalCreateOutfitPermissionDenied", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalDeleteOutfitFailed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalDeleteOutfitPermissionDenied", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalRenameOutfitFailed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalRenameOutfitPermissionDenied", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalSaveAvatarFailed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalSaveAvatarPermissionDenied", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalSetFavoriteFailed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalSetFavoritePermissionDenied", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalUpdateOutfitFailed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalUpdateOutfitPermissionDenied", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CheckApplyDefaultClothing", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } } ], "ReturnType": { "Category": "Class", "Name": "HumanoidDescription" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ConformToAvatarRules", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } } ], "ReturnType": { "Category": "Class", "Name": "HumanoidDescription" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAvatarRules", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBatchItemDetails", "Parameters": [ { "Name": "itemIds", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "itemType", "Type": { "Category": "Enum", "Name": "AvatarItemType" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFavorite", "Parameters": [ { "Name": "itemId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "itemType", "Type": { "Category": "Enum", "Name": "AvatarItemType" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetInventory", "Parameters": [ { "Name": "assetTypes", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Class", "Name": "InventoryPages" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetItemDetails", "Parameters": [ { "Name": "itemId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "itemType", "Type": { "Category": "Enum", "Name": "AvatarItemType" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetOutfitDetails", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetOutfits", "Parameters": [ { "Default": "All", "Name": "outfitSource", "Type": { "Category": "Enum", "Name": "OutfitSource" } }, { "Default": "All", "Name": "outfitType", "Type": { "Category": "Enum", "Name": "OutfitType" } } ], "ReturnType": { "Category": "Class", "Name": "OutfitPages" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRecommendedAssets", "Parameters": [ { "Name": "assetType", "Type": { "Category": "Enum", "Name": "AvatarAssetType" } }, { "Default": "0", "Name": "contextAssetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRecommendedBundles", "Parameters": [ { "Name": "bundleId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SearchCatalog", "Parameters": [ { "Name": "searchParameters", "Type": { "Category": "DataType", "Name": "CatalogSearchParams" } } ], "ReturnType": { "Category": "Class", "Name": "CatalogPages" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenAllowInventoryReadAccess", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenPromptCreateOufit", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "rigType", "Type": { "Category": "Enum", "Name": "HumanoidRigType" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenPromptDeleteOutfit", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenPromptRenameOutfit", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenPromptSaveAvatar", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "rigType", "Type": { "Category": "Enum", "Name": "HumanoidRigType" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenPromptSetFavorite", "Parameters": [ { "Name": "itemId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "itemType", "Type": { "Category": "Enum", "Name": "AvatarItemType" } }, { "Name": "shouldFavorite", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenPromptUpdateOutfit", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "rigType", "Type": { "Category": "Enum", "Name": "HumanoidRigType" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptAllowInventoryReadAccessCompleted", "Parameters": [ { "Name": "result", "Type": { "Category": "Enum", "Name": "AvatarPromptResult" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptCreateOutfitCompleted", "Parameters": [ { "Name": "result", "Type": { "Category": "Enum", "Name": "AvatarPromptResult" } }, { "Name": "failureType", "Type": { "Category": "Group", "Name": "Variant" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptDeleteOutfitCompleted", "Parameters": [ { "Name": "result", "Type": { "Category": "Enum", "Name": "AvatarPromptResult" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptRenameOutfitCompleted", "Parameters": [ { "Name": "result", "Type": { "Category": "Enum", "Name": "AvatarPromptResult" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptSaveAvatarCompleted", "Parameters": [ { "Name": "result", "Type": { "Category": "Enum", "Name": "AvatarPromptResult" } }, { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptSaveAvatarThumbnailCustomizationCompleted", "Parameters": [ { "Name": "result", "Type": { "Category": "Enum", "Name": "AvatarPromptResult" } }, { "Name": "failureType", "Type": { "Category": "Group", "Name": "Variant" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptSetFavoriteCompleted", "Parameters": [ { "Name": "result", "Type": { "Category": "Enum", "Name": "AvatarPromptResult" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptUpdateOutfitCompleted", "Parameters": [ { "Name": "result", "Type": { "Category": "Enum", "Name": "AvatarPromptResult" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AvatarEditorService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "ImportFBXAnimationFromFilePathUserMayChooseModel", "Parameters": [ { "Name": "fbxFilePath", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "selectedRig", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "userChooseModelThenImportCB", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ImportFBXAnimationUserMayChooseModel", "Parameters": [ { "Name": "selectedRig", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "userChooseModelThenImportCB", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ImportFbxRigWithoutSceneLoad", "Parameters": [ { "Default": "true", "Name": "isR15", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ImportLoadedFBXAnimation", "Parameters": [ { "Name": "useFBXModel", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadRigAndDetectType", "Parameters": [ { "Name": "promptR15Callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "AvatarImportService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "Backpack", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "AwardBadge", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "badgeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBadgeInfoAsync", "Parameters": [ { "Name": "badgeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsDisabled", "Parameters": [ { "Name": "badgeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsLegal", "Parameters": [ { "Name": "badgeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UserHasBadge", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "badgeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UserHasBadgeAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "badgeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BadgeAwarded", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "badgeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnBadgeAwarded", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "creatorId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "badgeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BadgeService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Id", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ImportName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ShouldImport", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "CreateTemplateFromData", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Map" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetStatuses", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BaseImportData", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "AnimationImportData", "Superclass": "BaseImportData", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "FacsImportData", "Superclass": "BaseImportData", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Anchored", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ImportAsModelAsset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "InsertInWorkspace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "GroupImportData", "Superclass": "BaseImportData", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "JointImportData", "Superclass": "BaseImportData", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DiffuseFilePath", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsPbr", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MetalnessFilePath", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NormalFilePath", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RoughnessFilePath", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "MaterialImportData", "Superclass": "BaseImportData", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Anchored", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageManifold", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageMeshIntersectedPreview", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageMeshNotIntersected", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageNoOverlappingVertices", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageNonManifoldPreview", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageOverlappingVerticesPreview", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageUVMatched", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageUVMisMatchedPreview", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Dimensions", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DoubleSided", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IgnoreVertexColors", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IrrelevantCageModifiedPreview", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MeshHoleDetectedPreview", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MeshNoHoleDetected", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NoIrrelevantCageModified", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NoOuterCageFarExtendedFromMesh", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "OuterCageFarExtendedFromMeshPreview", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PolygonCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UseImportedPivot", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "MeshImportData", "Superclass": "BaseImportData", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AddModelToInventory", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Anchored", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AnimationIdForRestPose", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ExistingPackageId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FileDimensions", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ImportAsModelAsset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ImportAsPackage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "InsertInWorkspace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "InsertWithScenePosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "InvertNegativeFaces", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MergeMeshes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PolygonCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RestPose", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RestPose" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RigScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RigScale" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RigType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RigType" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RigVisualization", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ScaleUnit", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "MeshScaleUnit" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UseSceneOriginAsCFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UseSceneOriginAsPivot", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UsesCages", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "WorldForward", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NormalId" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "WorldUp", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NormalId" } } ], "MemoryCategory": "Instances", "Name": "RootImportData", "Superclass": "BaseImportData", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetGuiObjectsAtPosition", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGuiObjectsInCircle", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "radius", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BasePlayerGui", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionImageObject", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "GuiObject" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Version", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "SetUserGuiRendering", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "guiAdornee", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "faceId", "Type": { "Category": "Enum", "Name": "NormalId" } }, { "Default": "0", "Name": "horizontalCurvature", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TakeScreenshot", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ToggleRecording", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UserGuiRenderingChanged", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "guiAdornee", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "faceId", "Type": { "Category": "Enum", "Name": "NormalId" } }, { "Name": "horizontalCurvature", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CoreGui", "Superclass": "BasePlayerGui", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "LandscapeLeft", "MemberType": "Property", "Name": "CurrentScreenOrientation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ScreenOrientation" } }, { "Category": "Data", "Default": "LandscapeSensor", "MemberType": "Property", "Name": "ScreenOrientation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ScreenOrientation" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "SelectionImageObject", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "GuiObject" } }, { "MemberType": "Function", "Name": "GetTopbarTransparency", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTopbarTransparency", "Parameters": [ { "Name": "transparency", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TopbarTransparencyChangedSignal", "Parameters": [ { "Name": "transparency", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PlayerGui", "Superclass": "BasePlayerGui", "Tags": [ "NotCreatable", "PlayerReplicated" ] }, { "Members": [ { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ProcessUserInput", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ResetPlayerGuiOnSpawn", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RtlTextSupport", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RtlTextSupport" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ScreenOrientation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ScreenOrientation" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ShowDevelopmentGui", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VirtualCursorMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "VirtualCursorMode" } }, { "MemberType": "Function", "Name": "GetCoreGuiEnabled", "Parameters": [ { "Name": "coreGuiType", "Type": { "Category": "Enum", "Name": "CoreGuiType" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterGetCore", "Parameters": [ { "Name": "parameterName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "getFunction", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterSetCore", "Parameters": [ { "Name": "parameterName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "setFunction", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetCore", "Parameters": [ { "Name": "parameterName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetCoreGuiEnabled", "Parameters": [ { "Name": "coreGuiType", "Type": { "Category": "Enum", "Name": "CoreGuiType" } }, { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCore", "Parameters": [ { "Name": "parameterName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CoreGuiChangedSignal", "Parameters": [ { "Name": "coreGuiType", "Type": { "Category": "Enum", "Name": "CoreGuiType" } }, { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StarterGui", "Superclass": "BasePlayerGui", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageMeshId", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageOrigin", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CageOriginWorld", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HSRAssetId", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HSRData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SharedString" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HSRMeshIdData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SharedString" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ImportInProcess", "Security": { "Read": "None", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ImportOrigin", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ImportOriginWorld", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TemporaryCageMeshId", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "MemberType": "Function", "Name": "GetFaces", "Parameters": [ { "Name": "cageType", "Type": { "Category": "Enum", "Name": "CageType" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVertices", "Parameters": [ { "Name": "cageType", "Type": { "Category": "Enum", "Name": "CageType" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsHSRReady", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ModifyVertices", "Parameters": [ { "Name": "cageType", "Type": { "Category": "Enum", "Name": "CageType" } }, { "Name": "vertices", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BaseWrap", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Behavior", "Default": "Disabled", "MemberType": "Property", "Name": "AutoSkin", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "WrapLayerAutoSkin" } }, { "Category": "Tuning", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "BindOffset", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Debug", "Default": "1, 1, 1", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Debug", "Default": "None", "MemberType": "Property", "Name": "DebugMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "WrapLayerDebugMode" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "Order", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "Puffiness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "ReferenceMeshId", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "ReferenceOrigin", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "ReferenceOriginWorld", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Tuning", "Default": "0", "MemberType": "Property", "Name": "ShrinkFactor", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "TemporaryReferenceId", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "Instances", "Name": "WrapLayer", "Superclass": "BaseWrap" }, { "Members": [ { "Category": "Debug", "Default": "1, 1, 1", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Debug", "Default": "None", "MemberType": "Property", "Name": "DebugMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "WrapTargetDebugMode" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "Stiffness", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "WrapTarget", "Superclass": "BaseWrap" }, { "Members": [ { "Category": "Shape", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Attachment0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Attachment" } }, { "Category": "Shape", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Attachment1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Attachment" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "Brightness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0 1 1 1 0 1 1 1 1 0 ", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "ColorSequence" } }, { "Category": "Shape", "Default": "0", "MemberType": "Property", "Name": "CurveSize0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Shape", "Default": "0", "MemberType": "Property", "Name": "CurveSize1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Shape", "Default": "false", "MemberType": "Property", "Name": "FaceCamera", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "LightEmission", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "LightInfluence", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Shape", "Default": "10", "MemberType": "Property", "Name": "Segments", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "Texture", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "TextureLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "Stretch", "MemberType": "Property", "Name": "TextureMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextureMode" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "TextureSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0 0.5 0 1 0.5 0 ", "MemberType": "Property", "Name": "Transparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberSequence" } }, { "Category": "Shape", "Default": "1", "MemberType": "Property", "Name": "Width0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Shape", "Default": "1", "MemberType": "Property", "Name": "Width1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "ZOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "SetTextureOffset", "Parameters": [ { "Default": "0", "Name": "offset", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Beam", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "Fire", "Parameters": [ { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Event", "Name": "Event", "Parameters": [ { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BindableEvent", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "Invoke", "Parameters": [ { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "OnInvoke", "Parameters": [ { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BindableFunction", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "BodyMover", "Superclass": "Instance", "Tags": [ "NotCreatable", "Deprecated" ] }, { "Members": [ { "Category": "Goals", "Default": "0, 2, 0", "MemberType": "Property", "Name": "AngularVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "4000, 4000, 4000", "MemberType": "Property", "Name": "MaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "1250", "MemberType": "Property", "Name": "P", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Goals", "Default": "0, 2, 0", "MemberType": "Property", "Name": "angularvelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "AngularVelocity", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "4000, 4000, 4000", "MemberType": "Property", "Name": "maxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "MaxTorque", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "Instances", "Name": "BodyAngularVelocity", "Superclass": "BodyMover", "Tags": [ "Deprecated", { "PreferredDescriptorName": "AngularVelocity", "ThreadSafety": "Unknown" } ] }, { "Members": [ { "Category": "Goals", "Default": "0, 1, 0", "MemberType": "Property", "Name": "Force", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "0, 1, 0", "MemberType": "Property", "Name": "force", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Force", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "Instances", "Name": "BodyForce", "Superclass": "BodyMover", "Tags": [ "Deprecated", { "PreferredDescriptorName": "VectorForce", "ThreadSafety": "Unknown" } ] }, { "Members": [ { "Category": "Goals", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Goals", "Default": "500", "MemberType": "Property", "Name": "D", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Goals", "Default": "400000, 0, 400000", "MemberType": "Property", "Name": "MaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "3000", "MemberType": "Property", "Name": "P", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Goals", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "cframe", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "CFrame", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Goals", "Default": "400000, 0, 400000", "MemberType": "Property", "Name": "maxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "MaxTorque", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "Instances", "Name": "BodyGyro", "Superclass": "BodyMover", "Tags": [ "Deprecated", { "PreferredDescriptorName": "AlignOrientation", "ThreadSafety": "Unknown" } ] }, { "Members": [ { "Category": "Goals", "Default": "1250", "MemberType": "Property", "Name": "D", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Goals", "Default": "4000, 4000, 4000", "MemberType": "Property", "Name": "MaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "10000", "MemberType": "Property", "Name": "P", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Goals", "Default": "0, 50, 0", "MemberType": "Property", "Name": "Position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "4000, 4000, 4000", "MemberType": "Property", "Name": "maxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "MaxForce", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "0, 50, 0", "MemberType": "Property", "Name": "position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Position", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "MemberType": "Function", "Name": "GetLastForce", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "lastForce", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetLastForce", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ReachedTarget", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BodyPosition", "Superclass": "BodyMover", "Tags": [ "Deprecated", { "PreferredDescriptorName": "AlignPosition", "ThreadSafety": "Unknown" } ] }, { "Members": [ { "Category": "Goals", "Default": "0, 1, 0", "MemberType": "Property", "Name": "Force", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Location", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "0, 1, 0", "MemberType": "Property", "Name": "force", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Force", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "0, 0, 0", "MemberType": "Property", "Name": "location", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Location", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "Instances", "Name": "BodyThrust", "Superclass": "BodyMover", "Tags": [ "Deprecated", { "PreferredDescriptorName": "VectorForce", "ThreadSafety": "Unknown" } ] }, { "Members": [ { "Category": "Goals", "Default": "4000, 4000, 4000", "MemberType": "Property", "Name": "MaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "1250", "MemberType": "Property", "Name": "P", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Goals", "Default": "0, 2, 0", "MemberType": "Property", "Name": "Velocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "4000, 4000, 4000", "MemberType": "Property", "Name": "maxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "MaxForce", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "0, 2, 0", "MemberType": "Property", "Name": "velocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Velocity", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "MemberType": "Function", "Name": "GetLastForce", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "lastForce", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BodyVelocity", "Superclass": "BodyMover", "Tags": [ "Deprecated", { "PreferredDescriptorName": "LinearVelocity", "ThreadSafety": "Unknown" } ] }, { "Members": [ { "Category": "Internal", "Default": "false", "MemberType": "Property", "Name": "Active", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Goals", "Default": "0.699999988", "MemberType": "Property", "Name": "CartoonFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Thrust", "Default": "30", "MemberType": "Property", "Name": "MaxSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Thrust", "Default": "4000", "MemberType": "Property", "Name": "MaxThrust", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Turn", "Default": "400000, 400000, 0", "MemberType": "Property", "Name": "MaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Target", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Goals", "Default": "0, 0, 0", "MemberType": "Property", "Name": "TargetOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Goals", "Default": "4", "MemberType": "Property", "Name": "TargetRadius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Thrust", "Default": "0.00100000005", "MemberType": "Property", "Name": "ThrustD", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Thrust", "Default": "5", "MemberType": "Property", "Name": "ThrustP", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Turn", "Default": "500", "MemberType": "Property", "Name": "TurnD", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Turn", "Default": "3000", "MemberType": "Property", "Name": "TurnP", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "Abort", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Fire", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "fire", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Fire", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ReachedTarget", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RocketPropulsion", "Superclass": "BodyMover", "Tags": [ "Deprecated", { "PreferredDescriptorName": "LineForce", "ThreadSafety": "Unknown" } ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Condition", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "ContinueExecution", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Id", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Line", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "LogMessage", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "MetaBreakpointId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "RemoveOnHit", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Script", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "true", "MemberType": "Property", "Name": "Valid", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Verified", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "Breakpoint", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "CloseBrowserWindow", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CopyAuthCookieFromBrowserToEngine", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "EmitHybridEvent", "Parameters": [ { "Name": "moduleName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "params", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ExecuteJavaScript", "Parameters": [ { "Name": "javascript", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenBrowserWindow", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenNativeOverlay", "Parameters": [ { "Name": "title", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenWeChatAuthWindow", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReturnToJavaScript", "Parameters": [ { "Name": "callbackId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "success", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "params", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendCommand", "Parameters": [ { "Name": "command", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AuthCookieCopiedToEngine", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BrowserWindowClosed", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BrowserWindowWillNavigate", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "JavaScriptCallback", "Parameters": [ { "Name": "content", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BrowserService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Appearance", "Default": "0.980392, 0.980392, 0.980392", "MemberType": "Property", "Name": "BackgroundColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0.10000000149011611938", "MemberType": "Property", "Name": "BackgroundTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "FontFace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Font" } }, { "Category": "Appearance", "Default": "0.223529, 0.231373, 0.239216", "MemberType": "Property", "Name": "TextColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "16", "MemberType": "Property", "Name": "TextSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } } ], "MemoryCategory": "Instances", "Name": "BubbleChatMessageProperties", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "LaunchBulkImport", "Parameters": [ { "Name": "assetTypeToImport", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowBulkImportView", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AssetImported", "Parameters": [ { "Name": "assetType", "Type": { "Category": "Enum", "Name": "AssetType" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "id", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BulkImportFinished", "Parameters": [ { "Name": "state", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BulkImportStarted", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BulkImportService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "CacheableContentProvider", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "HSRDataContentProvider", "Superclass": "CacheableContentProvider", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetContentMemoryData", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MeshContentProvider", "Superclass": "CacheableContentProvider", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "SolidModelContentProvider", "Superclass": "CacheableContentProvider", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "AttachCallout", "Parameters": [ { "Name": "definitionId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "locationId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "target", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DefineCallout", "Parameters": [ { "Name": "definitionId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "title", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "description", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "learnMoreURL", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DetachCalloutsByDefinitionId", "Parameters": [ { "Name": "definitionId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CalloutService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Camera", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CameraSubject", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Camera", "Default": "Fixed", "MemberType": "Property", "Name": "CameraType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "CameraType" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CoordinateFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "CFrame", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Camera", "Default": "88.8765335", "MemberType": "Property", "Name": "DiagonalFieldOfView", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "70", "MemberType": "Property", "Name": "FieldOfView", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "Vertical", "MemberType": "Property", "Name": "FieldOfViewMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FieldOfViewMode" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Focus", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "HeadLocked", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "HeadScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "70", "MemberType": "Property", "Name": "MaxAxisFieldOfView", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "-0.5", "MemberType": "Property", "Name": "NearPlaneZ", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "VRTiltAndRollEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "1, 1", "MemberType": "Property", "Name": "ViewportSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "focus", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Focus", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "MemberType": "Function", "Name": "GetLargestCutoffDistance", "Parameters": [ { "Name": "ignoreList", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPanSpeed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPartsObscuringTarget", "Parameters": [ { "Name": "castPoints", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "ignoreList", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRenderCFrame", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRoll", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTiltSpeed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Interpolate", "Parameters": [ { "Name": "endPos", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "endFocus", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "duration", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PanUnits", "Parameters": [ { "Name": "units", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ScreenPointToRay", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "0", "Name": "depth", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "DataType", "Name": "Ray" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "SetCameraPanMode", "Parameters": [ { "Default": "Classic", "Name": "mode", "Type": { "Category": "Enum", "Name": "CameraPanMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetImageServerView", "Parameters": [ { "Name": "modelCoord", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetRoll", "Parameters": [ { "Name": "rollAngle", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TiltUnits", "Parameters": [ { "Name": "units", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ViewportPointToRay", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "0", "Name": "depth", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "DataType", "Name": "Ray" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "WorldToScreenPoint", "Parameters": [ { "Name": "worldPoint", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "WorldToViewportPoint", "Parameters": [ { "Name": "worldPoint", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "Zoom", "Parameters": [ { "Name": "distance", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ZoomToExtents", "Parameters": [ { "Name": "boundingBoxCFrame", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "boundingBoxSize", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FirstPersonTransition", "Parameters": [ { "Name": "entering", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InterpolationFinished", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Camera", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "RetrieveCaptures", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SaveScreenshotCapture", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCaptureSizeAsync", "Parameters": [ { "Name": "captureContentId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CaptureSaved", "Parameters": [ { "Name": "captureInfo", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CaptureService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "FinishRecording", "Parameters": [ { "Name": "identifier", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "operation", "Type": { "Category": "Enum", "Name": "FinishRecordingOperation" } }, { "Name": "finalOptions", "Type": { "Category": "Group", "Name": "Dictionary?" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCanRedo", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCanUndo", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsRecordingInProgress", "Parameters": [ { "Name": "identifier", "Type": { "Category": "Primitive", "Name": "string?" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Redo", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ResetWaypoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEnabled", "Parameters": [ { "Name": "state", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetWaypoint", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TryBeginRecording", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "displayName", "Type": { "Category": "Primitive", "Name": "string?" } } ], "ReturnType": { "Category": "Primitive", "Name": "string?" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Undo", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnRecordingFinished", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "displayName", "Type": { "Category": "Primitive", "Name": "string?" } }, { "Name": "identifier", "Type": { "Category": "Primitive", "Name": "string?" } }, { "Name": "operationn", "Type": { "Category": "Enum", "Name": "FinishRecordingOperation" } }, { "Name": "finalOptions", "Type": { "Category": "Group", "Name": "Dictionary?" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnRecordingStarted", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "displayName", "Type": { "Category": "Primitive", "Name": "string?" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnRedo", "Parameters": [ { "Name": "waypoint", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnUndo", "Parameters": [ { "Name": "waypoint", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ChangeHistoryService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "CharacterAppearance", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "HeadColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Appearance", "Default": "0.992157, 0.917647, 0.552941", "MemberType": "Property", "Name": "HeadColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "LeftArmColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Appearance", "Default": "0.992157, 0.917647, 0.552941", "MemberType": "Property", "Name": "LeftArmColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "LeftLegColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Appearance", "Default": "0.0509804, 0.411765, 0.67451", "MemberType": "Property", "Name": "LeftLegColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "RightArmColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Appearance", "Default": "0.992157, 0.917647, 0.552941", "MemberType": "Property", "Name": "RightArmColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "RightLegColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Appearance", "Default": "0.0509804, 0.411765, 0.67451", "MemberType": "Property", "Name": "RightLegColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TorsoColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Appearance", "Default": "0.156863, 0.498039, 0.278431", "MemberType": "Property", "Name": "TorsoColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } } ], "MemoryCategory": "Instances", "Name": "BodyColors", "Superclass": "CharacterAppearance" }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "BaseTextureId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "Head", "MemberType": "Property", "Name": "BodyPart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "BodyPart" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "MeshId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "OverlayTextureId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } } ], "MemoryCategory": "Instances", "Name": "CharacterMesh", "Superclass": "CharacterAppearance" }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Color3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Outfit1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Outfit2", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "Instances", "Name": "Clothing", "Superclass": "CharacterAppearance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "PantsTemplate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "Instances", "Name": "Pants", "Superclass": "Clothing" }, { "Members": [ { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "ShirtTemplate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "Instances", "Name": "Shirt", "Superclass": "Clothing" }, { "Members": [ { "Category": "Appearance", "Default": "1, 1, 1", "MemberType": "Property", "Name": "Color3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "Graphic", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "Instances", "Name": "ShirtGraphic", "Superclass": "CharacterAppearance" }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "SkinColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } } ], "MemoryCategory": "Instances", "Name": "Skin", "Superclass": "CharacterAppearance", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "BubbleChatEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "LoadDefaultChat", "Security": { "Read": "None", "Write": "NotAccessibleSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "Chat", "Parameters": [ { "Name": "partOrCharacter", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "Blue", "Name": "color", "Type": { "Category": "Enum", "Name": "ChatColor" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ChatLocal", "Parameters": [ { "Name": "partOrCharacter", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "Blue", "Name": "color", "Type": { "Category": "Enum", "Name": "ChatColor" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetShouldUseLuaChat", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InvokeChatCallback", "Parameters": [ { "Name": "callbackType", "Type": { "Category": "Enum", "Name": "ChatCallbackType" } }, { "Name": "callbackArguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterChatCallback", "Parameters": [ { "Name": "callbackType", "Type": { "Category": "Enum", "Name": "ChatCallbackType" } }, { "Name": "callbackFunction", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetBubbleChatSettings", "Parameters": [ { "Name": "settings", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CanUserChatAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CanUsersChatAsync", "Parameters": [ { "Name": "userIdFrom", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "userIdTo", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FilterStringAsync", "Parameters": [ { "Name": "stringToFilter", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "playerFrom", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "playerTo", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FilterStringForBroadcast", "Parameters": [ { "Name": "stringToFilter", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "playerFrom", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FilterStringForPlayerAsync", "Parameters": [ { "Name": "stringToFilter", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "playerToFilterFor", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields", "Deprecated", { "PreferredDescriptorName": "FilterStringAsync", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BubbleChatSettingsChanged", "Parameters": [ { "Name": "settings", "Type": { "Category": "Group", "Name": "Variant" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Chatted", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "color", "Type": { "Category": "Enum", "Name": "ChatColor" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ClientToServerFilterMessageSignalV2", "Parameters": [ { "Name": "sender", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "receiver", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "unfilteredMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ClientToServerReportUnfilteredSignal", "Parameters": [ { "Name": "unfilteredText", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "match", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "instancePath", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "instanceType", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerToClientUnderOver13FilteredResponseSignal", "Parameters": [ { "Name": "sender", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "unfilteredMessage", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "isError", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "errorStr", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "under13", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "over13", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Chat", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Image", "Default": "", "MemberType": "Property", "Name": "CursorIcon", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Data", "Default": "32", "MemberType": "Property", "Name": "MaxActivationDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Event", "Name": "MouseActionReplicated", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "actionType", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseClick", "Parameters": [ { "Name": "playerWhoClicked", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseHoverEnter", "Parameters": [ { "Name": "playerWhoHovered", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseHoverLeave", "Parameters": [ { "Name": "playerWhoHovered", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RightMouseClick", "Parameters": [ { "Name": "playerWhoClicked", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "mouseClick", "Parameters": [ { "Name": "playerWhoClicked", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "MouseClick", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ClickDetector", "Superclass": "Instance" }, { "Members": [ { "Category": "Image", "Default": "", "MemberType": "Property", "Name": "ActivatedCursorIcon", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Physics Response", "Default": "false", "MemberType": "Property", "Name": "ApplyAtCenterOfMass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Drag Directions", "Default": "0, 1, 0", "MemberType": "Property", "Name": "Axis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Dragged Amount", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "DragFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Behavior", "Default": "TranslatePlane", "MemberType": "Property", "Name": "DragStyle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DragDetectorDragStyle" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Mode Switching", "Default": "ButtonR1", "MemberType": "Property", "Name": "GamepadModeSwitchKeyCode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "KeyCode" } }, { "Category": "Mode Switching", "Default": "LeftControl", "MemberType": "Property", "Name": "KeyboardModeSwitchKeyCode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "KeyCode" } }, { "Category": "Drag Limits", "Default": "0", "MemberType": "Property", "Name": "MaxDragAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Drag Limits", "Default": "0, 0, 0", "MemberType": "Property", "Name": "MaxDragTranslation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Physics Response", "Default": "10000000", "MemberType": "Property", "Name": "MaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Physics Response", "Default": "10000", "MemberType": "Property", "Name": "MaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Drag Limits", "Default": "0", "MemberType": "Property", "Name": "MinDragAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Drag Limits", "Default": "0, 0, 0", "MemberType": "Property", "Name": "MinDragTranslation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Drag Directions", "Default": "-0, 180, 90", "MemberType": "Property", "Name": "Orientation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Internal", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "PhysicalDragClickedPart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Internal", "Default": "0, 0, 0", "MemberType": "Property", "Name": "PhysicalDragHitPoint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Internal", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "PhysicalDragTargetFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "ReferenceInstance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Behavior", "Default": "Physical", "MemberType": "Property", "Name": "ResponseStyle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DragDetectorResponseStyle" } }, { "Category": "Physics Response", "Default": "10", "MemberType": "Property", "Name": "Responsiveness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "RunLocally", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Drag Directions", "Default": "1, 0, 0", "MemberType": "Property", "Name": "SecondaryAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Behavior", "Default": "1", "MemberType": "Property", "Name": "TrackballRadialPullFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "1", "MemberType": "Property", "Name": "TrackballRollFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mode Switching", "Default": "ButtonL2", "MemberType": "Property", "Name": "VRSwitchKeyCode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "KeyCode" } }, { "Category": "Drag Directions", "Default": "0, 1, 0", "MemberType": "Property", "Name": "WorldAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Drag Directions", "Default": "1, 0, 0", "MemberType": "Property", "Name": "WorldSecondaryAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "MemberType": "Function", "Name": "AddConstraintFunction", "Parameters": [ { "Name": "priority", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "function", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptConnection" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetReferenceFrame", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RestartDrag", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetDragStyleFunction", "Parameters": [ { "Name": "function", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DragContinue", "Parameters": [ { "Name": "playerWhoDragged", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "cursorRay", "Type": { "Category": "DataType", "Name": "Ray" } }, { "Name": "viewFrame", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "vrInputFrame", "Type": { "Category": "DataType", "Name": "OptionalCoordinateFrame" } }, { "Name": "isModeSwitchKeyDown", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DragEnd", "Parameters": [ { "Name": "playerWhoDragged", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DragStart", "Parameters": [ { "Name": "playerWhoDragged", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "cursorRay", "Type": { "Category": "DataType", "Name": "Ray" } }, { "Name": "viewFrame", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "hitFrame", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "clickedPart", "Type": { "Category": "Class", "Name": "BasePart" } }, { "Name": "vrInputFrame", "Type": { "Category": "DataType", "Name": "OptionalCoordinateFrame" } }, { "Name": "isModeSwitchKeyDown", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DragDetector", "Superclass": "ClickDetector", "Tags": [ "NotBrowsable" ] }, { "Members": [ { "Category": "State", "Default": "1, 1, 1", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0.5", "MemberType": "Property", "Name": "Cover", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0.699999988", "MemberType": "Property", "Name": "Density", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "Clouds", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ClusterPacketCache", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "AddTag", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAllTags", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetCollection", "Parameters": [ { "Name": "class", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetTagged", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetInstanceAddedSignal", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptSignal" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetInstanceRemovedSignal", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptSignal" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTagged", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetTags", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "HasTag", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "RemoveTag", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ItemAdded", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetInstanceAddedSignal", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ItemRemoved", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetInstanceRemovedSignal", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TagAdded", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TagRemoved", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CollectionService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AllowGUIAccessPoints", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Checked", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DefaultShortcut", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DisplayName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Icon", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Name", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Permission", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "CommandPermission" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "StatusTip", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "EnableGuiAccess", "Parameters": [ { "Name": "displayName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "statusTip", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "defaultShortcut", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterExecutionCallback", "Parameters": [ { "Name": "callbackFunction", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CommandInstance", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "Execute", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "params", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterCommand", "Parameters": [ { "Name": "plugin", "Type": { "Category": "Class", "Name": "Plugin" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "context", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "LocalUser", "Name": "permission", "Type": { "Category": "Enum", "Name": "CommandPermission" } } ], "ReturnType": { "Category": "Class", "Name": "CommandInstance" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CommandExecuting", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "params", "Type": { "Category": "Group", "Name": "Variant" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CommandService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "Configuration", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ConfigureServerService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Active", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Attachments", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Attachment0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Attachment" } }, { "Category": "Attachments", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Attachment1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Attachment" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Visible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "PhysicsParts", "Name": "Constraint", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "AlignOrientation", "Default": "Parallel", "MemberType": "Property", "Name": "AlignType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AlignType" } }, { "Category": "TargetOrientation", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Compliance", "Default": "INF", "MemberType": "Property", "Name": "MaxAngularVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Compliance", "Default": "10000", "MemberType": "Property", "Name": "MaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AlignmentMode", "Default": "TwoAttachment", "MemberType": "Property", "Name": "Mode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "OrientationAlignmentMode" } }, { "Category": "TargetOrientation", "Default": "1, 0, 0", "MemberType": "Property", "Name": "PrimaryAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "AlignOrientation", "Default": "false", "MemberType": "Property", "Name": "PrimaryAxisOnly", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "AlignOrientation", "Default": "false", "MemberType": "Property", "Name": "ReactionTorqueEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Compliance", "Default": "10", "MemberType": "Property", "Name": "Responsiveness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AlignOrientation", "Default": "false", "MemberType": "Property", "Name": "RigidityEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "TargetOrientation", "Default": "0, 1, 0", "MemberType": "Property", "Name": "SecondaryAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "PhysicsParts", "Name": "AlignOrientation", "Superclass": "Constraint" }, { "Members": [ { "Category": "AlignPosition", "Default": "false", "MemberType": "Property", "Name": "ApplyAtCenterOfMass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Compliance", "Default": "Magnitude", "MemberType": "Property", "Name": "ForceLimitMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotBrowsable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ForceLimitMode" } }, { "Category": "Compliance", "Default": "World", "MemberType": "Property", "Name": "ForceRelativeTo", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ActuatorRelativeTo" } }, { "Category": "Compliance", "Default": "10000, 10000, 10000", "MemberType": "Property", "Name": "MaxAxesForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Compliance", "Default": "10000", "MemberType": "Property", "Name": "MaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Compliance", "Default": "INF", "MemberType": "Property", "Name": "MaxVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AlignmentMode", "Default": "TwoAttachment", "MemberType": "Property", "Name": "Mode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PositionAlignmentMode" } }, { "Category": "AlignPosition", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "AlignPosition", "Default": "false", "MemberType": "Property", "Name": "ReactionForceEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Compliance", "Default": "10", "MemberType": "Property", "Name": "Responsiveness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AlignPosition", "Default": "false", "MemberType": "Property", "Name": "RigidityEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "PhysicsParts", "Name": "AlignPosition", "Superclass": "Constraint" }, { "Members": [ { "Category": "Torque", "Default": "0, 0, 0", "MemberType": "Property", "Name": "AngularVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Torque", "Default": "0", "MemberType": "Property", "Name": "MaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Torque", "Default": "false", "MemberType": "Property", "Name": "ReactionTorqueEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Torque", "Default": "World", "MemberType": "Property", "Name": "RelativeTo", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ActuatorRelativeTo" } } ], "MemoryCategory": "PhysicsParts", "Name": "AngularVelocity", "Superclass": "Constraint" }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "IsKinematic", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Compliance", "Default": "10000", "MemberType": "Property", "Name": "MaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Compliance", "Default": "10000", "MemberType": "Property", "Name": "MaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Transform", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } } ], "MemoryCategory": "PhysicsParts", "Name": "AnimationConstraint", "Superclass": "Constraint", "Tags": [ "NotBrowsable" ] }, { "Members": [ { "Category": "BallSocket", "Default": "false", "MemberType": "Property", "Name": "LimitsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Friction", "Default": "0", "MemberType": "Property", "Name": "MaxFrictionTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Friction", "Default": "0", "MemberType": "Property", "Name": "MaxFrictionTorqueXml", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0.150000006", "MemberType": "Property", "Name": "Radius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "0", "MemberType": "Property", "Name": "Restitution", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "false", "MemberType": "Property", "Name": "TwistLimitsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "TwistLimits", "Default": "-45", "MemberType": "Property", "Name": "TwistLowerAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "TwistLimits", "Default": "45", "MemberType": "Property", "Name": "TwistUpperAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "45", "MemberType": "Property", "Name": "UpperAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "PhysicsParts", "Name": "BallSocketConstraint", "Superclass": "Constraint" }, { "Members": [ { "Category": "Hinge", "Default": "None", "MemberType": "Property", "Name": "ActuatorType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ActuatorType" } }, { "Category": "Servo", "Default": "45", "MemberType": "Property", "Name": "AngularResponsiveness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Servo", "Default": "0", "MemberType": "Property", "Name": "AngularSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Motor", "Default": "0", "MemberType": "Property", "Name": "AngularVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Derived", "Default": "0", "MemberType": "Property", "Name": "CurrentAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Hinge", "Default": "false", "MemberType": "Property", "Name": "LimitsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Limits", "Default": "-45", "MemberType": "Property", "Name": "LowerAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Motor", "Default": "INF", "MemberType": "Property", "Name": "MotorMaxAcceleration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Motor", "Default": "0", "MemberType": "Property", "Name": "MotorMaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0.150000006", "MemberType": "Property", "Name": "Radius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "0", "MemberType": "Property", "Name": "Restitution", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Servo", "Default": "0", "MemberType": "Property", "Name": "ServoMaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Servo", "Default": "0", "MemberType": "Property", "Name": "TargetAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "45", "MemberType": "Property", "Name": "UpperAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "PhysicsParts", "Name": "HingeConstraint", "Superclass": "Constraint" }, { "Members": [ { "Category": "LineForce", "Default": "false", "MemberType": "Property", "Name": "ApplyAtCenterOfMass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "LineForce", "Default": "false", "MemberType": "Property", "Name": "InverseSquareLaw", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "LineForce", "Default": "1000", "MemberType": "Property", "Name": "Magnitude", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "LineForce", "Default": "INF", "MemberType": "Property", "Name": "MaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "LineForce", "Default": "false", "MemberType": "Property", "Name": "ReactionForceEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "PhysicsParts", "Name": "LineForce", "Superclass": "Constraint" }, { "Members": [ { "Category": "Limits", "Default": "Magnitude", "MemberType": "Property", "Name": "ForceLimitMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ForceLimitMode" } }, { "Category": "Line", "Default": "1, 0, 0", "MemberType": "Property", "Name": "LineDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Line", "Default": "-0", "MemberType": "Property", "Name": "LineVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "1000, 1000, 1000", "MemberType": "Property", "Name": "MaxAxesForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Limits", "Default": "1000", "MemberType": "Property", "Name": "MaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "1000, 1000", "MemberType": "Property", "Name": "MaxPlanarAxesForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Plane", "Default": "0, 0", "MemberType": "Property", "Name": "PlaneVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Plane", "Default": "1, 0, 0", "MemberType": "Property", "Name": "PrimaryTangentAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Mode", "Default": "World", "MemberType": "Property", "Name": "RelativeTo", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ActuatorRelativeTo" } }, { "Category": "Plane", "Default": "0, 1, 0", "MemberType": "Property", "Name": "SecondaryTangentAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Vector", "Default": "0, 0, 0", "MemberType": "Property", "Name": "VectorVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Mode", "Default": "Vector", "MemberType": "Property", "Name": "VelocityConstraintMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "VelocityConstraintMode" } } ], "MemoryCategory": "PhysicsParts", "Name": "LinearVelocity", "Superclass": "Constraint" }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "PlaneConstraint", "Superclass": "Constraint" }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "Plane", "Superclass": "PlaneConstraint", "Tags": [ "Deprecated", { "PreferredDescriptorName": "PlaneConstraint", "ThreadSafety": "Unknown" } ] }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "RigidConstraint", "Superclass": "Constraint" }, { "Members": [ { "Category": "Derived", "Default": "0", "MemberType": "Property", "Name": "CurrentDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Rod", "Default": "5", "MemberType": "Property", "Name": "Length", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "90", "MemberType": "Property", "Name": "LimitAngle0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "90", "MemberType": "Property", "Name": "LimitAngle1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Rod", "Default": "false", "MemberType": "Property", "Name": "LimitsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0.100000001", "MemberType": "Property", "Name": "Thickness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "PhysicsParts", "Name": "RodConstraint", "Superclass": "Constraint" }, { "Members": [ { "Category": "Derived", "Default": "0", "MemberType": "Property", "Name": "CurrentDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Rope", "Default": "5", "MemberType": "Property", "Name": "Length", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Rope", "Default": "0", "MemberType": "Property", "Name": "Restitution", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0.100000001", "MemberType": "Property", "Name": "Thickness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Rope", "Default": "false", "MemberType": "Property", "Name": "WinchEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Winch", "Default": "10000", "MemberType": "Property", "Name": "WinchForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Winch", "Default": "45", "MemberType": "Property", "Name": "WinchResponsiveness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Winch", "Default": "2", "MemberType": "Property", "Name": "WinchSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Winch", "Default": "5", "MemberType": "Property", "Name": "WinchTarget", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "PhysicsParts", "Name": "RopeConstraint", "Superclass": "Constraint" }, { "Members": [ { "Category": "Slider", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ActuatorType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ActuatorType" } }, { "Category": "Derived", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CurrentPosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Slider", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LimitsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Servo", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LinearResponsiveness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LowerLimit", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Motor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MotorMaxAcceleration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Motor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MotorMaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Restitution", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Servo", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ServoMaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Servo", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Speed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Servo", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TargetPosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UpperLimit", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Motor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Velocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "PhysicsParts", "Name": "SlidingBallConstraint", "Superclass": "Constraint", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Cylinder", "Default": "None", "MemberType": "Property", "Name": "AngularActuatorType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ActuatorType" } }, { "Category": "Cylinder", "Default": "false", "MemberType": "Property", "Name": "AngularLimitsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "AngularServo", "Default": "45", "MemberType": "Property", "Name": "AngularResponsiveness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AngularLimits", "Default": "0", "MemberType": "Property", "Name": "AngularRestitution", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AngularServo", "Default": "0", "MemberType": "Property", "Name": "AngularSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AngularMotor", "Default": "0", "MemberType": "Property", "Name": "AngularVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Derived", "Default": "0", "MemberType": "Property", "Name": "CurrentAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Cylinder", "Default": "0", "MemberType": "Property", "Name": "InclinationAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AngularLimits", "Default": "-45", "MemberType": "Property", "Name": "LowerAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AngularMotor", "Default": "INF", "MemberType": "Property", "Name": "MotorMaxAngularAcceleration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AngularMotor", "Default": "0", "MemberType": "Property", "Name": "MotorMaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "RotationAxisVisible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "AngularServo", "Default": "0", "MemberType": "Property", "Name": "ServoMaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AngularServo", "Default": "0", "MemberType": "Property", "Name": "TargetAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "AngularLimits", "Default": "45", "MemberType": "Property", "Name": "UpperAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Derived", "Default": "1, 0, 0", "MemberType": "Property", "Name": "WorldRotationAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "PhysicsParts", "Name": "CylindricalConstraint", "Superclass": "SlidingBallConstraint" }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "PrismaticConstraint", "Superclass": "SlidingBallConstraint" }, { "Members": [ { "Category": "Appearance", "Default": "3", "MemberType": "Property", "Name": "Coils", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Derived", "Default": "0", "MemberType": "Property", "Name": "CurrentLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Spring", "Default": "0", "MemberType": "Property", "Name": "Damping", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Spring", "Default": "1", "MemberType": "Property", "Name": "FreeLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Spring", "Default": "false", "MemberType": "Property", "Name": "LimitsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Spring", "Default": "INF", "MemberType": "Property", "Name": "MaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "5", "MemberType": "Property", "Name": "MaxLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "0", "MemberType": "Property", "Name": "MinLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0.400000006", "MemberType": "Property", "Name": "Radius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Spring", "Default": "0", "MemberType": "Property", "Name": "Stiffness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0.100000001", "MemberType": "Property", "Name": "Thickness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "PhysicsParts", "Name": "SpringConstraint", "Superclass": "Constraint" }, { "Members": [ { "Category": "Torque", "Default": "Attachment0", "MemberType": "Property", "Name": "RelativeTo", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ActuatorRelativeTo" } }, { "Category": "Torque", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Torque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "PhysicsParts", "Name": "Torque", "Superclass": "Constraint" }, { "Members": [ { "Category": "Appearance", "Default": "8", "MemberType": "Property", "Name": "Coils", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Derived", "Default": "0", "MemberType": "Property", "Name": "CurrentAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Spring", "Default": "0.00999999978", "MemberType": "Property", "Name": "Damping", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Spring", "Default": "false", "MemberType": "Property", "Name": "LimitEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated", { "PreferredDescriptorName": "LimitsEnabled", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Spring", "Default": "false", "MemberType": "Property", "Name": "LimitsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Limits", "Default": "45", "MemberType": "Property", "Name": "MaxAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Spring", "Default": "INF", "MemberType": "Property", "Name": "MaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0.400000006", "MemberType": "Property", "Name": "Radius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "0", "MemberType": "Property", "Name": "Restitution", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Spring", "Default": "100", "MemberType": "Property", "Name": "Stiffness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "PhysicsParts", "Name": "TorsionSpringConstraint", "Superclass": "Constraint" }, { "Members": [ { "Category": "Universal", "Default": "false", "MemberType": "Property", "Name": "LimitsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Limits", "Default": "45", "MemberType": "Property", "Name": "MaxAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0.200000003", "MemberType": "Property", "Name": "Radius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Limits", "Default": "0", "MemberType": "Property", "Name": "Restitution", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "PhysicsParts", "Name": "UniversalConstraint", "Superclass": "Constraint" }, { "Members": [ { "Category": "VectorForce", "Default": "false", "MemberType": "Property", "Name": "ApplyAtCenterOfMass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "VectorForce", "Default": "1000, 0, 0", "MemberType": "Property", "Name": "Force", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "VectorForce", "Default": "Attachment0", "MemberType": "Property", "Name": "RelativeTo", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ActuatorRelativeTo" } } ], "MemoryCategory": "PhysicsParts", "Name": "VectorForce", "Superclass": "Constraint" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BaseUrl", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RequestQueueSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "CalculateNumTrianglesInMeshSync", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAssetFetchStatus", "Parameters": [ { "Name": "contentId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Enum", "Name": "AssetFetchStatus" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAssetFetchStatusChangedSignal", "Parameters": [ { "Name": "contentId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptSignal" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetDetailedFailedRequests", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFailedRequests", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ListEncryptedAssets", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Preload", "Parameters": [ { "Name": "contentId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "PreloadAsync", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterDefaultEncryptionKey", "Parameters": [ { "Name": "encryptionKey", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterDefaultSessionKey", "Parameters": [ { "Name": "sessionKey", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterEncryptedAsset", "Parameters": [ { "Name": "assetId", "Type": { "Category": "DataType", "Name": "Content" } }, { "Name": "encryptionKey", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterSessionEncryptedAsset", "Parameters": [ { "Name": "contentId", "Type": { "Category": "DataType", "Name": "Content" } }, { "Name": "sessionKey", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetBaseUrl", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnregisterDefaultEncryptionKey", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnregisterEncryptedAsset", "Parameters": [ { "Name": "assetId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CalculateNumTrianglesInMesh", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PreloadAsync", "Parameters": [ { "Name": "contentIdList", "Type": { "Category": "Group", "Name": "Array" } }, { "Default": "nil", "Name": "callbackFunction", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AssetFetchFailed", "Parameters": [ { "Name": "assetId", "Type": { "Category": "DataType", "Name": "Content" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ContentProvider", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "BindAction", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "functionToBind", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "createTouchButton", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "inputTypes", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BindActionAtPriority", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "functionToBind", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "createTouchButton", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "priorityLevel", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "inputTypes", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BindActionToInputTypes", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "functionToBind", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "createTouchButton", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "inputTypes", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "BindAction", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BindActivate", "Parameters": [ { "Name": "userInputTypeForActivation", "Type": { "Category": "Enum", "Name": "UserInputType" } }, { "Name": "keyCodesForActivation", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BindCoreAction", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "functionToBind", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "createTouchButton", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "inputTypes", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BindCoreActionAtPriority", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "functionToBind", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "createTouchButton", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "priorityLevel", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "inputTypes", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BindCoreActivate", "Parameters": [ { "Name": "userInputTypeForActivation", "Type": { "Category": "Enum", "Name": "UserInputType" } }, { "Name": "keyCodesForActivation", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CallFunction", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "state", "Type": { "Category": "Enum", "Name": "UserInputState" } }, { "Name": "inputObject", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FireActionButtonFoundSignal", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "actionButton", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAllBoundActionInfo", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAllBoundCoreActionInfo", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBoundActionInfo", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBoundCoreActionInfo", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCurrentLocalToolIcon", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetDescription", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "description", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetImage", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "image", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPosition", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "position", "Type": { "Category": "DataType", "Name": "UDim2" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTitle", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "title", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnbindAction", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnbindActivate", "Parameters": [ { "Name": "userInputTypeForActivation", "Type": { "Category": "Enum", "Name": "UserInputType" } }, { "Default": "Unknown", "Name": "keyCodeForActivation", "Type": { "Category": "Enum", "Name": "KeyCode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnbindAllActions", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnbindCoreAction", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnbindCoreActivate", "Parameters": [ { "Name": "userInputTypeForActivation", "Type": { "Category": "Enum", "Name": "UserInputType" } }, { "Default": "Unknown", "Name": "keyCodeForActivation", "Type": { "Category": "Enum", "Name": "KeyCode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetButton", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BoundActionAdded", "Parameters": [ { "Name": "actionAdded", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "createTouchButton", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "functionInfoTable", "Type": { "Category": "Group", "Name": "Dictionary" } }, { "Name": "isCore", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BoundActionChanged", "Parameters": [ { "Name": "actionChanged", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "changeName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "changeTable", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BoundActionRemoved", "Parameters": [ { "Name": "actionRemoved", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "functionInfoTable", "Type": { "Category": "Group", "Name": "Dictionary" } }, { "Name": "isCore", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GetActionButtonEvent", "Parameters": [ { "Name": "actionName", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LocalToolEquipped", "Parameters": [ { "Name": "toolEquipped", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LocalToolUnequipped", "Parameters": [ { "Name": "toolUnequipped", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ContextActionService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "BindButton", "Parameters": [ { "Name": "button", "Type": { "Category": "Enum", "Name": "Button" } }, { "Name": "caption", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetButton", "Parameters": [ { "Name": "button", "Type": { "Category": "Enum", "Name": "Button" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnbindButton", "Parameters": [ { "Name": "button", "Type": { "Category": "Enum", "Name": "Button" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "bindButton", "Parameters": [ { "Name": "button", "Type": { "Category": "Enum", "Name": "Button" } }, { "Name": "caption", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "BindButton", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "getButton", "Parameters": [ { "Name": "button", "Type": { "Category": "Enum", "Name": "Button" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetButton", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ButtonChanged", "Parameters": [ { "Name": "button", "Type": { "Category": "Enum", "Name": "Button" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Controller", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "HumanoidController", "Superclass": "Controller" }, { "Members": [ { "Category": "Axes", "Default": "0", "MemberType": "Property", "Name": "Steer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Axes", "Default": "0", "MemberType": "Property", "Name": "Throttle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Event", "Name": "AxisChanged", "Parameters": [ { "Name": "axis", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "SkateboardController", "Superclass": "Controller" }, { "Members": [], "MemoryCategory": "Instances", "Name": "VehicleController", "Superclass": "Controller" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Active", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Balance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BalanceRigidityEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Movement", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MoveSpeedFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "ControllerBase", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Balance", "Default": "10000", "MemberType": "Property", "Name": "BalanceMaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Balance", "Default": "100", "MemberType": "Property", "Name": "BalanceSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Movement", "Default": "0, 0, 0", "MemberType": "Property", "Name": "LinearImpulse", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Turn", "Default": "true", "MemberType": "Property", "Name": "MaintainAngularMomentum", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Movement", "Default": "true", "MemberType": "Property", "Name": "MaintainLinearMomentum", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Movement", "Default": "1000", "MemberType": "Property", "Name": "MoveMaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Turn", "Default": "10000", "MemberType": "Property", "Name": "TurnMaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Turn", "Default": "1", "MemberType": "Property", "Name": "TurnSpeedFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AirController", "Superclass": "ControllerBase", "Tags": [ "NotBrowsable" ] }, { "Members": [ { "Category": "Movement", "Default": "0", "MemberType": "Property", "Name": "AccelerationTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Balance", "Default": "10000", "MemberType": "Property", "Name": "BalanceMaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Balance", "Default": "100", "MemberType": "Property", "Name": "BalanceSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Movement", "Default": "10000", "MemberType": "Property", "Name": "MoveMaxForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "ClimbController", "Superclass": "ControllerBase", "Tags": [ "NotBrowsable" ] }, { "Members": [ { "Category": "Balance", "Default": "1", "MemberType": "Property", "Name": "AccelerationLean", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Movement", "Default": "0", "MemberType": "Property", "Name": "AccelerationTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Balance", "Default": "10000", "MemberType": "Property", "Name": "BalanceMaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Balance", "Default": "100", "MemberType": "Property", "Name": "BalanceSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Movement", "Default": "0", "MemberType": "Property", "Name": "DecelerationTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Movement", "Default": "2", "MemberType": "Property", "Name": "Friction", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Movement", "Default": "1", "MemberType": "Property", "Name": "FrictionWeight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Movement", "Default": "1", "MemberType": "Property", "Name": "GroundOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Movement", "Default": "10000", "MemberType": "Property", "Name": "StandForce", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Movement", "Default": "100", "MemberType": "Property", "Name": "StandSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Movement", "Default": "1", "MemberType": "Property", "Name": "TurnSpeedFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "GroundController", "Superclass": "ControllerBase", "Tags": [ "NotBrowsable" ] }, { "Members": [ { "Category": "Movement", "Default": "0", "MemberType": "Property", "Name": "AccelerationTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Balance", "Default": "10000", "MemberType": "Property", "Name": "PitchMaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Balance", "Default": "1", "MemberType": "Property", "Name": "PitchSpeedFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Balance", "Default": "10000", "MemberType": "Property", "Name": "RollMaxTorque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Balance", "Default": "1", "MemberType": "Property", "Name": "RollSpeedFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "SwimController", "Superclass": "ControllerBase", "Tags": [ "NotBrowsable" ] }, { "Members": [ { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "ActiveController", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "ControllerBase" } }, { "Category": "Behavior", "Default": "16", "MemberType": "Property", "Name": "BaseMoveSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "8", "MemberType": "Property", "Name": "BaseTurnSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "ClimbSensor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "ControllerSensor" } }, { "Category": "Input", "Default": "0, 0, 1", "MemberType": "Property", "Name": "FacingDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "GroundSensor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "ControllerSensor" } }, { "Category": "Input", "Default": "0, 0, 0", "MemberType": "Property", "Name": "MovingDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "RootPart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } } ], "MemoryCategory": "Instances", "Name": "ControllerManager", "Superclass": "Instance", "Tags": [ "NotBrowsable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ControllerService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "CookiesService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "CorePackages", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "CoreScriptDebuggingManagerHelper", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetScriptFilePath", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CoreScriptSyncService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "IsWatchingScriptLine", "Parameters": [ { "Name": "scriptRef", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "lineNumber", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartWatchingScriptLine", "Parameters": [ { "Name": "scriptRef", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "debuggerConnectionId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "lineNumber", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GuidLineContentsChanged", "Parameters": [ { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "lineNumber", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "contents", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GuidNameChanged", "Parameters": [ { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "fullName", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CrossDMScriptChangeListener", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "PersistedCurrentValue", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "GetAttachedReceivers", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetValue", "Parameters": [ { "Name": "newValue", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ReceiverConnected", "Parameters": [ { "Name": "receiver", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ReceiverDisconnected", "Parameters": [ { "Name": "receiver", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CustomEvent", "Superclass": "Instance", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Source", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "MemberType": "Function", "Name": "GetCurrentValue", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "EventConnected", "Parameters": [ { "Name": "event", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "EventDisconnected", "Parameters": [ { "Name": "event", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SourceValueChanged", "Parameters": [ { "Name": "newValue", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CustomEventReceiver", "Superclass": "Instance", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Offset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Scale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VertexColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "Instances", "Name": "DataModelMesh", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Bevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Bevel Roundness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Bulge", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "BevelMesh", "Superclass": "DataModelMesh", "Tags": [ "NotCreatable", "NotBrowsable", "Deprecated" ] }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "BlockMesh", "Superclass": "BevelMesh" }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "CylinderMesh", "Superclass": "BevelMesh", "Tags": [ "Deprecated" ] }, { "Members": [ { "MemberType": "Function", "Name": "AddTriangle", "Parameters": [ { "Name": "vertexId0", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "vertexId1", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "vertexId2", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddVertex", "Parameters": [ { "Name": "p", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindClosestPointOnSurface", "Parameters": [ { "Name": "point", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindClosestVertex", "Parameters": [ { "Name": "toThisPoint", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindVerticesWithinSphere", "Parameters": [ { "Name": "center", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "radius", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAdjacentTriangles", "Parameters": [ { "Name": "triangleId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAdjacentVertices", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPosition", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTriangleVertices", "Parameters": [ { "Name": "triangleId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTriangles", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUV", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVertexColor", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Color3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVertexColorAlpha", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVertexNormal", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVertices", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InitializeFromMeshIdAsync", "Parameters": [ { "Name": "meshId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InitializeFromMeshPartAsync", "Parameters": [ { "Name": "meshPart", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Raycast", "Parameters": [ { "Name": "origin", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "direction", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveTriangle", "Parameters": [ { "Name": "triangleId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveVertex", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPosition", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "p", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetUV", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "uv", "Type": { "Category": "DataType", "Name": "Vector2" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetVertexColor", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "color", "Type": { "Category": "DataType", "Name": "Color3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetVertexColorAlpha", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "alpha", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetVertexNormal", "Parameters": [ { "Name": "vertexId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "vnormal", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateMeshPartAsync", "Parameters": [ { "Name": "collisionFidelity", "Type": { "Category": "Enum", "Name": "CollisionFidelity" } } ], "ReturnType": { "Category": "Class", "Name": "MeshPart" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DynamicMesh", "Superclass": "DataModelMesh" }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "MeshId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "TextureId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "PhysicsParts", "Name": "FileMesh", "Superclass": "DataModelMesh" }, { "Members": [ { "Category": "Data", "Default": "Head", "MemberType": "Property", "Name": "MeshType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "MeshType" } } ], "MemoryCategory": "PhysicsParts", "Name": "SpecialMesh", "Superclass": "FileMesh" }, { "Members": [ { "MemberType": "Function", "Name": "GetPatch", "Parameters": [ { "Name": "patchName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterPatch", "Parameters": [ { "Name": "patchName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "behaviorName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "localConfigPath", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UpdatePatch", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "patchName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callbackFunction", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DataModelPatchService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CurrentDataModelType", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "StudioDataModelType" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SessionId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Event", "Name": "CurrentDataModelTypeAboutToChange", "Parameters": [ { "Name": "dataModelType", "Type": { "Category": "Enum", "Name": "StudioDataModelType" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CurrentDataModelTypeChanged", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DataModelCreated", "Parameters": [ { "Name": "gameStateType", "Type": { "Category": "Enum", "Name": "StudioDataModelType" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DataModelWillBeDestroyed", "Parameters": [ { "Name": "gameStateType", "Type": { "Category": "Enum", "Name": "StudioDataModelType" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DataModelSession", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetMetadata", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMetadata", "Parameters": [ { "Name": "attributes", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DataStoreIncrementOptions", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CreatedTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DataStoreName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UpdatedTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } } ], "MemoryCategory": "Instances", "Name": "DataStoreInfo", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "KeyName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "DataStoreKey", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CreatedTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UpdatedTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Version", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "GetMetadata", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserIds", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DataStoreKeyInfo", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CreatedTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsDeleted", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Version", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "DataStoreObjectVersionInfo", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "AllScopes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "SetExperimentalFeatures", "Parameters": [ { "Name": "experimentalFeatures", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DataStoreOptions", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [ { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "AutomaticRetry", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "LegacyNamingScheme", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "GetDataStore", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "global", "Name": "scope", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "nil", "Name": "options", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Class", "Name": "GlobalDataStore" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGlobalDataStore", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "GlobalDataStore" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetOrderedDataStore", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "global", "Name": "scope", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "OrderedDataStore" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRequestBudgetForRequestType", "Parameters": [ { "Name": "requestType", "Type": { "Category": "Enum", "Name": "DataStoreRequestType" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ListDataStoresAsync", "Parameters": [ { "Default": "", "Name": "prefix", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "0", "Name": "pageSize", "Type": { "Category": "Primitive", "Name": "int" } }, { "Default": "", "Name": "cursor", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "DataStoreListingPages" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DataStoreService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetMetadata", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMetadata", "Parameters": [ { "Name": "attributes", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DataStoreSetOptions", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MaxItems", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "AddItem", "Parameters": [ { "Name": "item", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "10", "Name": "lifetime", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetLegacyMaxItems", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "addItem", "Parameters": [ { "Name": "item", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "10", "Name": "lifetime", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Debris", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Performance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DataModel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Performance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "InstanceCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Errors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsScriptStackTracingEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Performance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "JobCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Performance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PlayerCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Errors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ReportSoundWarnings", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Profile", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RobloxVersion", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Benchmarking", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TickCountPreciseOverride", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TickCountSampleMethod" } } ], "MemoryCategory": "Instances", "Name": "DebugSettings", "Superclass": "Instance", "Tags": [ "NotCreatable", "Settings", "NotBrowsable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "DebuggablePluginWatcher", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Condition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "ContinueExecution", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "IsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Line", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "LogExpression", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "isContextDependentBreakpoint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "line", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } } ], "MemoryCategory": "Instances", "Name": "DebuggerBreakpoint", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ErrorMessage", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HasError", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Id", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsPaused", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "AddBreakpoint", "Parameters": [ { "Name": "script", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "Breakpoint" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Close", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "EvaluateWatch", "Parameters": [ { "Name": "expression", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "frame", "Type": { "Category": "Class", "Name": "StackFrame" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFrameById", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Class", "Name": "StackFrame" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSource", "Parameters": [ { "Name": "scriptRef", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "status", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetThreadById", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Class", "Name": "ThreadState" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetThreads", "Parameters": [ { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVariableById", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Class", "Name": "DebuggerVariable" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Pause", "Parameters": [ { "Name": "thread", "Type": { "Category": "Class", "Name": "ThreadState" } }, { "Name": "status", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Populate", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveBreakpoint", "Parameters": [ { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "Breakpoint" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Resume", "Parameters": [ { "Name": "thread", "Type": { "Category": "Class", "Name": "ThreadState" } }, { "Name": "status", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetExceptionBreakMode", "Parameters": [ { "Name": "breakMode", "Type": { "Category": "Enum", "Name": "DebuggerExceptionBreakMode" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetVariable", "Parameters": [ { "Name": "variable", "Type": { "Category": "Class", "Name": "DebuggerVariable" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Step", "Parameters": [ { "Name": "thread", "Type": { "Category": "Class", "Name": "ThreadState" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StepIn", "Parameters": [ { "Name": "thread", "Type": { "Category": "Class", "Name": "ThreadState" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StepOut", "Parameters": [ { "Name": "thread", "Type": { "Category": "Class", "Name": "ThreadState" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UpdateSelectedFrame", "Parameters": [ { "Name": "threadId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "frameNumber", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BreakpointAdded", "Parameters": [ { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "Breakpoint" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BreakpointChanged", "Parameters": [ { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "Breakpoint" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BreakpointRemoved", "Parameters": [ { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "Breakpoint" } }, { "Name": "reason", "Type": { "Category": "Enum", "Name": "BreakpointRemoveReason" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Paused", "Parameters": [ { "Name": "pausedState", "Type": { "Category": "Class", "Name": "PausedState" } }, { "Name": "reason", "Type": { "Category": "Enum", "Name": "DebuggerPauseReason" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Resumed", "Parameters": [ { "Name": "pausedState", "Type": { "Category": "Class", "Name": "PausedState" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DebuggerConnection", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "LocalDebuggerConnection", "Superclass": "DebuggerConnection", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Timeout", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "MemberType": "Function", "Name": "ConnectLocal", "Parameters": [ { "Name": "dataModel", "Type": { "Category": "Class", "Name": "DataModel" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ConnectRemote", "Parameters": [ { "Name": "host", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "port", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FocusConnection", "Parameters": [ { "Name": "connection", "Type": { "Category": "Class", "Name": "DebuggerConnection" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetConnectionById", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Class", "Name": "DebuggerConnection" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ConnectionEnded", "Parameters": [ { "Name": "connection", "Type": { "Category": "Class", "Name": "DebuggerConnection" } }, { "Name": "reason", "Type": { "Category": "Enum", "Name": "DebuggerEndReason" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ConnectionStarted", "Parameters": [ { "Name": "connection", "Type": { "Category": "Class", "Name": "DebuggerConnection" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FocusChanged", "Parameters": [ { "Name": "connection", "Type": { "Category": "Class", "Name": "DebuggerConnection" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DebuggerConnectionManager", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsError", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsSuccess", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Message", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RequestId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Status", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DebuggerStatus" } }, { "MemberType": "Function", "Name": "GetArg", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DebuggerLuaResponse", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DebuggingEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "AddDebugger", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "EnableDebugging", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetDebuggers", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Resume", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StepIn", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StepOut", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StepOver", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DebuggerAdded", "Parameters": [ { "Name": "debugger", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DebuggerRemoved", "Parameters": [ { "Name": "debugger", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DebuggerManager", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "EditBreakpoint", "Parameters": [ { "Name": "metaBreakpointId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "EditWatch", "Parameters": [ { "Name": "expression", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsConnectionForPlayDataModel", "Parameters": [ { "Name": "debuggerConnectionId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenScriptAtLine", "Parameters": [ { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "debuggerConnectionId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "showErrorOnFail", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Pause", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveScriptLineMarkers", "Parameters": [ { "Name": "debuggerConnectionId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "allMarkers", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Resume", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetCurrentThreadId", "Parameters": [ { "Name": "debuggerThreadId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetScriptLineMarker", "Parameters": [ { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "debuggerConnectionId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "lineMarkerType", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetWatchExpressions", "Parameters": [ { "Name": "expressions", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ExpressionAdded", "Parameters": [ { "Name": "expression", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ExpressionsCleared", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DebuggerUIService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Name", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Populated", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Type", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Value", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VariableId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VariablesCount", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "GetVariableByIndex", "Parameters": [ { "Name": "index", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Class", "Name": "DebuggerVariable" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVariableByName", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "DebuggerVariable" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DebuggerVariable", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Expression", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "DebuggerWatch", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "GetDeviceId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DeviceIdService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "SinglePlayer", "MemberType": "Property", "Name": "BehaviorType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DialogBehaviorType" } }, { "Category": "Data", "Default": "25", "MemberType": "Property", "Name": "ConversationDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "GoodbyeChoiceActive", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "GoodbyeDialog", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "InUse", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "InitialPrompt", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "Help", "MemberType": "Property", "Name": "Purpose", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DialogPurpose" } }, { "Category": "Data", "Default": "Neutral", "MemberType": "Property", "Name": "Tone", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DialogTone" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "TriggerDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "TriggerOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "MemberType": "Function", "Name": "GetCurrentPlayers", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPlayerIsUsing", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "isUsing", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalDialogChoiceSelected", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "dialogChoice", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DialogChoiceSelected", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "dialogChoice", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Dialog", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "GoodbyeChoiceActive", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "GoodbyeDialog", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ResponseDialog", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "UserDialog", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "DialogChoice", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "DiscardEdits", "Parameters": [ { "Name": "scripts", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetDraftStatus", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Enum", "Name": "DraftStatusCode" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetEditors", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RestoreScripts", "Parameters": [ { "Name": "scripts", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowDiffsAgainstBase", "Parameters": [ { "Name": "scripts", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowDiffsAgainstServer", "Parameters": [ { "Name": "scripts", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CommitEdits", "Parameters": [ { "Name": "scripts", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetDrafts", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UpdateToLatestVersion", "Parameters": [ { "Name": "scripts", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CommitStatusChanged", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "status", "Type": { "Category": "Enum", "Name": "DraftStatusCode" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DraftAdded", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DraftRemoved", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DraftStatusChanged", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "EditorsListChanged", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UpdateStatusChanged", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "status", "Type": { "Category": "Enum", "Name": "DraftStatusCode" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DraftsService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "AxisRotate", "Parameters": [ { "Default": "X", "Name": "axis", "Type": { "Category": "Enum", "Name": "Axis" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "MouseDown", "Parameters": [ { "Name": "mousePart", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "pointOnMousePart", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "parts", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "MouseMove", "Parameters": [ { "Name": "mouseRay", "Type": { "Category": "DataType", "Name": "Ray" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "MouseUp", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Dragger", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "AlignDraggedObjects", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "AngleSnapEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "AngleSnapIncrement", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "AnimateHover", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "CollisionsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DraggerCoordinateSpace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DraggerCoordinateSpace" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DraggerMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DraggerMovementMode" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "GeometrySnapColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "HoverAnimateFrequency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "HoverLineThickness", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "HoverThickness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "JointsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "LinearSnapEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "LinearSnapIncrement", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "PivotSnapToGeometry", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "ShowHover", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "ShowPivotIndicator", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "DraggerService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "MemberType": "Function", "Name": "Clear", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DrawCircle", "Parameters": [ { "Name": "center", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "radius", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "color", "Type": { "Category": "DataType", "Name": "Color3" } }, { "Name": "alpha", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReadPixels", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector2" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Resize", "Parameters": [ { "Name": "newSize", "Type": { "Category": "DataType", "Name": "Vector2" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Rotate", "Parameters": [ { "Name": "degrees", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "true", "Name": "resizeCanvas", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "WritePixels", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "pixels", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DynamicImage", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "XYZ", "MemberType": "Property", "Name": "RotationOrder", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RotationOrder" } }, { "MemberType": "Function", "Name": "GetAnglesAtTime", "Parameters": [ { "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRotationAtTime", "Parameters": [ { "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "X", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "FloatCurve" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Y", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "FloatCurve" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Z", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "FloatCurve" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "EulerRotationCurve", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "SendEventDeferred", "Parameters": [ { "Name": "target", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventContext", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "additionalArgs", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendEventImmediately", "Parameters": [ { "Name": "target", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventContext", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "additionalArgs", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetRBXEvent", "Parameters": [ { "Name": "target", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventContext", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "additionalArgs", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetRBXEventStream", "Parameters": [ { "Name": "target", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventContext", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "additionalArgs", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "EventIngestService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "ScopeCheckUIComplete", "Parameters": [ { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "scopes", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "result", "Type": { "Category": "Enum", "Name": "ScopeCheckResult" } }, { "Name": "metadata", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenAuthPrompt", "Parameters": [ { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "scopes", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "metadata", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScopeCheckResult", "Parameters": [ { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "result", "Type": { "Category": "Enum", "Name": "ScopeCheckResult" } }, { "Name": "token", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "scopes", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "metadata", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ExperienceAuthService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "InviteMessageId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "InviteUser", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "LaunchData", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "PromptMessage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "ExperienceInviteOptions", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "500000", "MemberType": "Property", "Name": "BlastPressure", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "4", "MemberType": "Property", "Name": "BlastRadius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "DestroyJointRadiusPercent", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "Craters", "MemberType": "Property", "Name": "ExplosionType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ExplosionType" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "TimeScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "Visible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Event", "Name": "Hit", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "BasePart" } }, { "Name": "distance", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Explosion", "Superclass": "Instance" }, { "Members": [ { "Category": "Control", "Default": "true", "MemberType": "Property", "Name": "AudioAnimationEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "false", "MemberType": "Property", "Name": "FlipHeadOrientation", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "true", "MemberType": "Property", "Name": "VideoAnimationEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "GetTrackerLodController", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "TrackerLodController" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Init", "Parameters": [ { "Name": "videoEnabled", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "audioEnabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsStarted", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Start", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Step", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Stop", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TrackerError", "Parameters": [ { "Name": "error", "Type": { "Category": "Enum", "Name": "TrackerError" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TrackerPrompt", "Parameters": [ { "Name": "prompt", "Type": { "Category": "Enum", "Name": "TrackerPromptEvent" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "FaceAnimatorService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "ChinRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "ChinRaiserUpperLip", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Brows", "Default": "0", "MemberType": "Property", "Name": "Corrugator", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Eyes", "Default": "0", "MemberType": "Property", "Name": "EyesLookDown", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Eyes", "Default": "0", "MemberType": "Property", "Name": "EyesLookLeft", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Eyes", "Default": "0", "MemberType": "Property", "Name": "EyesLookRight", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Eyes", "Default": "0", "MemberType": "Property", "Name": "EyesLookUp", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "FlatPucker", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "Funneler", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Jaw", "Default": "0", "MemberType": "Property", "Name": "JawDrop", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Jaw", "Default": "0", "MemberType": "Property", "Name": "JawLeft", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Jaw", "Default": "0", "MemberType": "Property", "Name": "JawRight", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Brows", "Default": "0", "MemberType": "Property", "Name": "LeftBrowLowerer", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "LeftCheekPuff", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Eyes", "Default": "0", "MemberType": "Property", "Name": "LeftCheekRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "LeftDimpler", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Eyes", "Default": "0", "MemberType": "Property", "Name": "LeftEyeClosed", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Eyes", "Default": "0", "MemberType": "Property", "Name": "LeftEyeUpperLidRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Brows", "Default": "0", "MemberType": "Property", "Name": "LeftInnerBrowRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "LeftLipCornerDown", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "LeftLipCornerPuller", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "LeftLipStretcher", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "LeftLowerLipDepressor", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Brows", "Default": "0", "MemberType": "Property", "Name": "LeftNoseWrinkler", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Brows", "Default": "0", "MemberType": "Property", "Name": "LeftOuterBrowRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "LeftUpperLipRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "LipPresser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "LipsTogether", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "LowerLipSuck", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "MouthLeft", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "MouthRight", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "Pucker", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Brows", "Default": "0", "MemberType": "Property", "Name": "RightBrowLowerer", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "RightCheekPuff", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Eyes", "Default": "0", "MemberType": "Property", "Name": "RightCheekRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "RightDimpler", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Eyes", "Default": "0", "MemberType": "Property", "Name": "RightEyeClosed", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Eyes", "Default": "0", "MemberType": "Property", "Name": "RightEyeUpperLidRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Brows", "Default": "0", "MemberType": "Property", "Name": "RightInnerBrowRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "RightLipCornerDown", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "RightLipCornerPuller", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "RightLipStretcher", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "RightLowerLipDepressor", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Brows", "Default": "0", "MemberType": "Property", "Name": "RightNoseWrinkler", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Brows", "Default": "0", "MemberType": "Property", "Name": "RightOuterBrowRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "RightUpperLipRaiser", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Tongue", "Default": "0", "MemberType": "Property", "Name": "TongueDown", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Tongue", "Default": "0", "MemberType": "Property", "Name": "TongueOut", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Tongue", "Default": "0", "MemberType": "Property", "Name": "TongueUp", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Mouth", "Default": "0", "MemberType": "Property", "Name": "UpperLipSuck", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Animation", "Name": "FaceControls", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Face", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NormalId" } } ], "MemoryCategory": "Instances", "Name": "FaceInstance", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Appearance", "Default": "1, 1, 1", "MemberType": "Property", "Name": "Color3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "LocalTransparencyModifier", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "20", "MemberType": "Property", "Name": "Shiny", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "Specular", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "Texture", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "Transparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "ZIndex", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } } ], "MemoryCategory": "GraphicsTexture", "Name": "Decal", "Superclass": "FaceInstance" }, { "Members": [ { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "OffsetStudsU", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "OffsetStudsV", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "2", "MemberType": "Property", "Name": "StudsPerTileU", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "2", "MemberType": "Property", "Name": "StudsPerTileV", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "GraphicsTexture", "Name": "Texture", "Superclass": "Decal" }, { "Members": [ { "Category": "State", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "BiometricDataConsent", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "IsAgeRestricted", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CheckOrRequestCameraPermission", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "FacialAnimationRecordingService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "Get", "Parameters": [ { "Name": "label", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetWithPlayerId", "Parameters": [ { "Name": "label", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "playerId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "FacialAnimationStreamingServiceStats", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "ServiceState", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "GetStats", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "FacialAnimationStreamingServiceStats" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsAudioEnabled", "Parameters": [ { "Name": "mask", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsPlaceEnabled", "Parameters": [ { "Name": "mask", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsServerEnabled", "Parameters": [ { "Name": "mask", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsVideoEnabled", "Parameters": [ { "Name": "mask", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ResolveStateForUser", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "FacialAnimationStreamingServiceV2", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "FacialAnimationStreamingSubsessionStats", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FaceId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NormalId" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "InOut", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "InOut" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LeftRight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "LeftRight" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TopBottom", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TopBottom" } } ], "MemoryCategory": "Instances", "Name": "Feature", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "Hole", "Superclass": "Feature", "Tags": [ "Deprecated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "MotorFeature", "Superclass": "Feature", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Size", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "MemberType": "Function", "Name": "GetBinaryContents", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTemporaryId", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Content" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "File", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "0.92549, 0.545098, 0.27451", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "9", "MemberType": "Property", "Name": "Heat", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0.545098, 0.313726, 0.215686", "MemberType": "Property", "Name": "SecondaryColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "5", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "TimeScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "9", "MemberType": "Property", "Name": "heat_xml", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "5", "MemberType": "Property", "Name": "size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Size", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "5", "MemberType": "Property", "Name": "size_xml", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "FastForward", "Parameters": [ { "Name": "numFrames", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Fire", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "FlagStandService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Length", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "\u0001", "MemberType": "Property", "Name": "ValuesAndTimes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "MemberType": "Function", "Name": "GetKeyAtIndex", "Parameters": [ { "Name": "index", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "FloatCurveKey" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetKeyIndicesAtTime", "Parameters": [ { "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetKeys", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetValueAtTime", "Parameters": [ { "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "float?" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertKey", "Parameters": [ { "Name": "key", "Type": { "Category": "DataType", "Name": "FloatCurveKey" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveKeyAtIndex", "Parameters": [ { "Name": "startingIndex", "Type": { "Category": "Primitive", "Name": "int" } }, { "Default": "1", "Name": "count", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetKeys", "Parameters": [ { "Name": "keys", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "FloatCurve", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "FlyweightService", "Superclass": "Instance", "Tags": [ "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "CSGDictionaryService", "Superclass": "FlyweightService", "Tags": [ "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "NonReplicatedCSGDictionaryService", "Superclass": "FlyweightService", "Tags": [ "Service" ] }, { "Members": [ { "Category": "Data", "Default": "2147483647", "MemberType": "Property", "Name": "ReplicatedGuiInsertionOrder", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } } ], "MemoryCategory": "Instances", "Name": "Folder", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "Visible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "ForceField", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "GetPlatformFriends", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FriendsUpdated", "Parameters": [ { "Name": "friendData", "Type": { "Category": "Group", "Name": "Array" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteFriendEventSignal", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "event", "Type": { "Category": "Enum", "Name": "FriendRequestEvent" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteFriendStatusSignal", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "status", "Type": { "Category": "Enum", "Name": "FriendStatus" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "FriendService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Physics", "Default": "true", "MemberType": "Property", "Name": "AllowSleep", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "?", "MemberType": "Property", "Name": "Description", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Settings", "Default": "false", "MemberType": "Property", "Name": "HasMigratedSettingsToTestService", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Physics", "Default": "true", "MemberType": "Property", "Name": "Is30FpsThrottleEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Physics", "Default": "true", "MemberType": "Property", "Name": "PhysicsEnvironmentalThrottle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Settings", "Default": "60", "MemberType": "Property", "Name": "Timeout", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "MemberType": "Function", "Name": "Error", "Parameters": [ { "Default": "", "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Failed", "Parameters": [ { "Default": "", "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Pass", "Parameters": [ { "Default": "", "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Passed", "Parameters": [ { "Default": "", "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Warn", "Parameters": [ { "Default": "", "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "FunctionalTest", "Superclass": "Instance", "Tags": [ "Deprecated" ] }, { "Members": [ { "MemberType": "Function", "Name": "PlayerHasPass", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "gamePassId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "GamePassService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Video", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VideoCaptureEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Video", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VideoRecording", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Event", "Name": "VideoRecordingChangeRequest", "Parameters": [ { "Name": "recording", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "GameSettings", "Superclass": "Instance", "Tags": [ "NotCreatable", "Settings", "NotBrowsable" ] }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "GamepadCursorEnabled", "Security": { "Read": "None", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "DisableGamepadCursor", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "EnableGamepadCursor", "Parameters": [ { "Name": "guiObject", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGamepadCursorPosition", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetGamepadCursorPosition", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GamepadThumbstick1Changed", "Parameters": [ { "Name": "event", "Type": { "Category": "DataType", "Name": "Vector2" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "GamepadService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "Geometry", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "CalculateConstraintsToPreserve", "Parameters": [ { "Name": "source", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "destination", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "options", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IntersectAsync", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "parts", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "options", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SubtractAsync", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "parts", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "options", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnionAsync", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "parts", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "options", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "GeometryService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Font", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Font" } }, { "Category": "Data", "Default": "20", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Text", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Width", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "GetTextBoundsParams", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "OnUpdate", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptConnection" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IncrementAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "1", "Name": "delta", "Type": { "Category": "Primitive", "Name": "int" } }, { "Default": "{}", "Name": "userIds", "Type": { "Category": "Group", "Name": "Array" } }, { "Default": "nil", "Name": "options", "Type": { "Category": "Class", "Name": "DataStoreIncrementOptions" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } }, { "Default": "{}", "Name": "userIds", "Type": { "Category": "Group", "Name": "Array" } }, { "Default": "nil", "Name": "options", "Type": { "Category": "Class", "Name": "DataStoreSetOptions" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UpdateAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "transformFunction", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "GlobalDataStore", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetVersionAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "version", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ListKeysAsync", "Parameters": [ { "Default": "", "Name": "prefix", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "0", "Name": "pageSize", "Type": { "Category": "Primitive", "Name": "int" } }, { "Default": "", "Name": "cursor", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "false", "Name": "excludeDeleted", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "DataStoreKeyPages" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ListVersionsAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "Ascending", "Name": "sortDirection", "Type": { "Category": "Enum", "Name": "SortDirection" } }, { "Default": "0", "Name": "minDate", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Default": "0", "Name": "maxDate", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Default": "0", "Name": "pageSize", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Class", "Name": "DataStoreVersionPages" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveVersionAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "version", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DataStore", "Superclass": "GlobalDataStore", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetSortedAsync", "Parameters": [ { "Name": "ascending", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "pagesize", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "minValue", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "maxValue", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "OrderedDataStore", "Superclass": "GlobalDataStore", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Configuration", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "gaID", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "GoogleAnalyticsConfiguration", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetAlliesAsync", "Parameters": [ { "Name": "groupId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "StandardPages" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetEnemiesAsync", "Parameters": [ { "Name": "groupId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "StandardPages" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGroupInfoAsync", "Parameters": [ { "Name": "groupId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGroupsAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "GroupService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "GuiBase", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AbsolutePosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AbsoluteRotation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AbsoluteSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Localization", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AutoLocalize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Debugging", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ClippedRect", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Rect" } }, { "Category": "Debugging", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsNotOccluded", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Localization", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Localize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "AutoLocalize", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Debugging", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RawRect2D", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Rect" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ReplicatedInsertionOrder", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Localization", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RootLocalizationTable", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "LocalizationTable" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionBehaviorDown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SelectionBehavior" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionBehaviorLeft", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SelectionBehavior" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionBehaviorRight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SelectionBehavior" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionBehaviorUp", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SelectionBehavior" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionGroup", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Debugging", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TotalGroupScale", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Event", "Name": "SelectionChanged", "Parameters": [ { "Name": "amISelected", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "previousSelection", "Type": { "Category": "Class", "Name": "GuiObject" } }, { "Name": "newSelection", "Type": { "Category": "Class", "Name": "GuiObject" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "GuiBase2d", "Superclass": "GuiBase", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Active", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AnchorPoint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AutomaticSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AutomaticSize" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BackgroundColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BackgroundColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BackgroundTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BorderColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BorderColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BorderMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "BorderMode" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BorderSizePixel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ClipsDescendants", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DragBeginConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DragStoppedConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Draggable", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LayoutOrder", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseEnterConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseLeaveConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseMovedConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseWheelBackwardConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseWheelForwardConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NextSelectionDown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "GuiObject" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NextSelectionLeft", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "GuiObject" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NextSelectionRight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "GuiObject" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NextSelectionUp", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "GuiObject" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Rotation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Selectable", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionImageObject", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "GuiObject" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionOrder", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SizeConstraint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SizeConstraint" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Transparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Visible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ZIndex", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "TweenPosition", "Parameters": [ { "Name": "endPosition", "Type": { "Category": "DataType", "Name": "UDim2" } }, { "Default": "Out", "Name": "easingDirection", "Type": { "Category": "Enum", "Name": "EasingDirection" } }, { "Default": "Quad", "Name": "easingStyle", "Type": { "Category": "Enum", "Name": "EasingStyle" } }, { "Default": "1", "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "false", "Name": "override", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "nil", "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TweenSize", "Parameters": [ { "Name": "endSize", "Type": { "Category": "DataType", "Name": "UDim2" } }, { "Default": "Out", "Name": "easingDirection", "Type": { "Category": "Enum", "Name": "EasingDirection" } }, { "Default": "Quad", "Name": "easingStyle", "Type": { "Category": "Enum", "Name": "EasingStyle" } }, { "Default": "1", "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "false", "Name": "override", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "nil", "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TweenSizeAndPosition", "Parameters": [ { "Name": "endSize", "Type": { "Category": "DataType", "Name": "UDim2" } }, { "Name": "endPosition", "Type": { "Category": "DataType", "Name": "UDim2" } }, { "Default": "Out", "Name": "easingDirection", "Type": { "Category": "Enum", "Name": "EasingDirection" } }, { "Default": "Quad", "Name": "easingStyle", "Type": { "Category": "Enum", "Name": "EasingStyle" } }, { "Default": "1", "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "false", "Name": "override", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "nil", "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DragBegin", "Parameters": [ { "Name": "initialPosition", "Type": { "Category": "DataType", "Name": "UDim2" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DragStopped", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InputBegan", "Parameters": [ { "Name": "input", "Type": { "Category": "Class", "Name": "InputObject" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InputChanged", "Parameters": [ { "Name": "input", "Type": { "Category": "Class", "Name": "InputObject" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InputEnded", "Parameters": [ { "Name": "input", "Type": { "Category": "Class", "Name": "InputObject" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseEnter", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseLeave", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseMoved", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseWheelBackward", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseWheelForward", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SelectionGained", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SelectionLost", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchLongPress", "Parameters": [ { "Name": "touchPositions", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "state", "Type": { "Category": "Enum", "Name": "UserInputState" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchPan", "Parameters": [ { "Name": "touchPositions", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "totalTranslation", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "velocity", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "state", "Type": { "Category": "Enum", "Name": "UserInputState" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchPinch", "Parameters": [ { "Name": "touchPositions", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "scale", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "velocity", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "state", "Type": { "Category": "Enum", "Name": "UserInputState" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchRotate", "Parameters": [ { "Name": "touchPositions", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "rotation", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "velocity", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "state", "Type": { "Category": "Enum", "Name": "UserInputState" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchSwipe", "Parameters": [ { "Name": "swipeDirection", "Type": { "Category": "Enum", "Name": "SwipeDirection" } }, { "Name": "numberOfTouches", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchTap", "Parameters": [ { "Name": "touchPositions", "Type": { "Category": "Group", "Name": "Array" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "GuiObject", "Superclass": "GuiBase2d", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Appearance", "Default": "1, 1, 1", "MemberType": "Property", "Name": "GroupColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "GroupTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Gui", "Name": "CanvasGroup", "Superclass": "GuiObject" }, { "Members": [ { "Category": "Data", "Default": "Custom", "MemberType": "Property", "Name": "Style", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FrameStyle" } } ], "MemoryCategory": "Gui", "Name": "Frame", "Superclass": "GuiObject" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AutoButtonColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Modal", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseButton1ClickConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseButton1DownConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseButton1UpConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseButton2ClickConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseButton2DownConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseButton2UpConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Selection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Selected", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Style", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ButtonStyle" } }, { "MemberType": "Event", "Name": "Activated", "Parameters": [ { "Name": "inputObject", "Type": { "Category": "Class", "Name": "InputObject" } }, { "Name": "clickCount", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseButton1Click", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseButton1Down", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseButton1Up", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseButton2Click", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseButton2Down", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseButton2Up", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "GuiButton", "Superclass": "GuiObject", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Image", "Default": "0, 0", "MemberType": "Property", "Name": "ContentImageSize", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Image", "Default": "", "MemberType": "Property", "Name": "HoverImage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Image", "Default": "", "MemberType": "Property", "Name": "Image", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Image", "Default": "1, 1, 1", "MemberType": "Property", "Name": "ImageColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Image", "Default": "0, 0", "MemberType": "Property", "Name": "ImageRectOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Image", "Default": "0, 0", "MemberType": "Property", "Name": "ImageRectSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Image", "Default": "0", "MemberType": "Property", "Name": "ImageTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Image", "Default": "false", "MemberType": "Property", "Name": "IsLoaded", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Image", "Default": "", "MemberType": "Property", "Name": "PressedImage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Image", "Default": "Default", "MemberType": "Property", "Name": "ResampleMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ResamplerMode" } }, { "Category": "Image", "Default": "Stretch", "MemberType": "Property", "Name": "ScaleType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ScaleType" } }, { "Category": "Image", "Default": "0, 0, 0, 0", "MemberType": "Property", "Name": "SliceCenter", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Rect" } }, { "Category": "Image", "Default": "1", "MemberType": "Property", "Name": "SliceScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Image", "Default": "{1, 0}, {1, 0}", "MemberType": "Property", "Name": "TileSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } }, { "MemberType": "Function", "Name": "SetEnableContentImageSizeChangedEvents", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "ImageButton", "Superclass": "GuiButton" }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "Confidential", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "Button", "MemberType": "Property", "Name": "ContentText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Text", "Default": "Legacy", "MemberType": "Property", "Name": "Font", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Font" } }, { "Category": "Text", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "FontFace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Font" } }, { "Category": "Text", "Default": "Size8", "MemberType": "Property", "Name": "FontSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "TextSize", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FontSize" } }, { "Category": "Text", "Default": "1", "MemberType": "Property", "Name": "LineHeight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "LocalizedText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Text", "Default": "-1", "MemberType": "Property", "Name": "MaxVisibleGraphemes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "RichText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "Button", "MemberType": "Property", "Name": "Text", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Text", "Default": "0, 0", "MemberType": "Property", "Name": "TextBounds", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Text", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TextColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Text", "Default": "0.105882, 0.164706, 0.207843", "MemberType": "Property", "Name": "TextColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Text", "Default": "Auto", "MemberType": "Property", "Name": "TextDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextDirection" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextFits", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextScaled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "8", "MemberType": "Property", "Name": "TextSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Text", "Default": "0, 0, 0", "MemberType": "Property", "Name": "TextStrokeColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Text", "Default": "1", "MemberType": "Property", "Name": "TextStrokeTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Text", "Default": "0", "MemberType": "Property", "Name": "TextTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Text", "Default": "None", "MemberType": "Property", "Name": "TextTruncate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextTruncate" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextWrap", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "TextWrapped", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextWrapped", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "Center", "MemberType": "Property", "Name": "TextXAlignment", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextXAlignment" } }, { "Category": "Text", "Default": "Center", "MemberType": "Property", "Name": "TextYAlignment", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextYAlignment" } }, { "MemberType": "Function", "Name": "SetTextFromInput", "Parameters": [ { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "TextButton", "Superclass": "GuiButton" }, { "Members": [], "MemoryCategory": "Gui", "Name": "GuiLabel", "Superclass": "GuiObject", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Image", "Default": "0, 0", "MemberType": "Property", "Name": "ContentImageSize", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Image", "Default": "", "MemberType": "Property", "Name": "Image", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Image", "Default": "1, 1, 1", "MemberType": "Property", "Name": "ImageColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Image", "Default": "0, 0", "MemberType": "Property", "Name": "ImageRectOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Image", "Default": "0, 0", "MemberType": "Property", "Name": "ImageRectSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Image", "Default": "0", "MemberType": "Property", "Name": "ImageTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Image", "Default": "false", "MemberType": "Property", "Name": "IsLoaded", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Image", "Default": "Default", "MemberType": "Property", "Name": "ResampleMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ResamplerMode" } }, { "Category": "Image", "Default": "Stretch", "MemberType": "Property", "Name": "ScaleType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ScaleType" } }, { "Category": "Image", "Default": "0, 0, 0, 0", "MemberType": "Property", "Name": "SliceCenter", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Rect" } }, { "Category": "Image", "Default": "1", "MemberType": "Property", "Name": "SliceScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Image", "Default": "{1, 0}, {1, 0}", "MemberType": "Property", "Name": "TileSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } }, { "MemberType": "Function", "Name": "SetEnableContentImageSizeChangedEvents", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "ImageLabel", "Superclass": "GuiLabel" }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "Confidential", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "Label", "MemberType": "Property", "Name": "ContentText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Text", "Default": "Legacy", "MemberType": "Property", "Name": "Font", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Font" } }, { "Category": "Text", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "FontFace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Font" } }, { "Category": "Text", "Default": "Size8", "MemberType": "Property", "Name": "FontSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "TextSize", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FontSize" } }, { "Category": "Text", "Default": "1", "MemberType": "Property", "Name": "LineHeight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "LocalizedText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Text", "Default": "-1", "MemberType": "Property", "Name": "MaxVisibleGraphemes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "RichText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "Label", "MemberType": "Property", "Name": "Text", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Text", "Default": "0, 0", "MemberType": "Property", "Name": "TextBounds", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Text", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TextColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Text", "Default": "0.105882, 0.164706, 0.207843", "MemberType": "Property", "Name": "TextColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Text", "Default": "Auto", "MemberType": "Property", "Name": "TextDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextDirection" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextFits", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextScaled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "8", "MemberType": "Property", "Name": "TextSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Text", "Default": "0, 0, 0", "MemberType": "Property", "Name": "TextStrokeColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Text", "Default": "1", "MemberType": "Property", "Name": "TextStrokeTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Text", "Default": "0", "MemberType": "Property", "Name": "TextTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Text", "Default": "None", "MemberType": "Property", "Name": "TextTruncate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextTruncate" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextWrap", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "TextWrapped", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextWrapped", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "Center", "MemberType": "Property", "Name": "TextXAlignment", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextXAlignment" } }, { "Category": "Text", "Default": "Center", "MemberType": "Property", "Name": "TextYAlignment", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextYAlignment" } }, { "MemberType": "Function", "Name": "SetTextFromInput", "Parameters": [ { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "TextLabel", "Superclass": "GuiLabel" }, { "Members": [ { "Category": "Scrolling", "Default": "0, 0", "MemberType": "Property", "Name": "AbsoluteCanvasSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Scrolling", "Default": "0, 0", "MemberType": "Property", "Name": "AbsoluteWindowSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Scrolling", "Default": "None", "MemberType": "Property", "Name": "AutomaticCanvasSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AutomaticSize" } }, { "Category": "Scrolling", "Default": "rbxasset://textures/ui/Scroll/scroll-bottom.png", "MemberType": "Property", "Name": "BottomImage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Scrolling", "Default": "0, 0", "MemberType": "Property", "Name": "CanvasPosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Scrolling", "Default": "{0, 0}, {2, 0}", "MemberType": "Property", "Name": "CanvasSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } }, { "Category": "Scrolling", "Default": "WhenScrollable", "MemberType": "Property", "Name": "ElasticBehavior", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ElasticBehavior" } }, { "Category": "Debugging", "Default": "0, 0, 0, 0", "MemberType": "Property", "Name": "HorizontalBarRect", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Rect" } }, { "Category": "Scrolling", "Default": "None", "MemberType": "Property", "Name": "HorizontalScrollBarInset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ScrollBarInset" } }, { "Category": "Debugging", "Default": "0, 0", "MemberType": "Property", "Name": "MaxCanvasPosition", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Scrolling", "Default": "rbxasset://textures/ui/Scroll/scroll-middle.png", "MemberType": "Property", "Name": "MidImage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Scrolling", "Default": "1, 1, 1", "MemberType": "Property", "Name": "ScrollBarImageColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Scrolling", "Default": "0", "MemberType": "Property", "Name": "ScrollBarImageTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Scrolling", "Default": "12", "MemberType": "Property", "Name": "ScrollBarThickness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Scrolling", "Default": "0, 0", "MemberType": "Property", "Name": "ScrollVelocity", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Scrolling", "Default": "XY", "MemberType": "Property", "Name": "ScrollingDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ScrollingDirection" } }, { "Category": "Scrolling", "Default": "true", "MemberType": "Property", "Name": "ScrollingEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Scrolling", "Default": "rbxasset://textures/ui/Scroll/scroll-top.png", "MemberType": "Property", "Name": "TopImage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Debugging", "Default": "0, 0, 0, 0", "MemberType": "Property", "Name": "VerticalBarRect", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Rect" } }, { "Category": "Scrolling", "Default": "None", "MemberType": "Property", "Name": "VerticalScrollBarInset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ScrollBarInset" } }, { "Category": "Scrolling", "Default": "Right", "MemberType": "Property", "Name": "VerticalScrollBarPosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "VerticalScrollBarPosition" } }, { "MemberType": "Function", "Name": "ClearInertialScrolling", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSampledInertialVelocity", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ScrollToTop", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "ScrollingFrame", "Superclass": "GuiObject" }, { "Members": [ { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "ClearTextOnFocus", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "Confidential", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "TextBox", "MemberType": "Property", "Name": "ContentText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "CursorPosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Text", "Default": "Legacy", "MemberType": "Property", "Name": "Font", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Font" } }, { "Category": "Text", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "FontFace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Font" } }, { "Category": "Text", "Default": "Size8", "MemberType": "Property", "Name": "FontSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "TextSize", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FontSize" } }, { "Category": "Text", "Default": "1", "MemberType": "Property", "Name": "LineHeight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "ManualFocusRelease", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "-1", "MemberType": "Property", "Name": "MaxVisibleGraphemes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "MultiLine", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "OverlayNativeInput", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "0.7, 0.7, 0.7", "MemberType": "Property", "Name": "PlaceholderColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Text", "Default": "", "MemberType": "Property", "Name": "PlaceholderText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "Default", "MemberType": "Property", "Name": "ReturnKeyType", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ReturnKeyType" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "RichText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "-1", "MemberType": "Property", "Name": "SelectionStart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "ShowNativeInput", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "TextBox", "MemberType": "Property", "Name": "Text", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Text", "Default": "0, 0", "MemberType": "Property", "Name": "TextBounds", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Text", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TextColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Text", "Default": "0.105882, 0.164706, 0.207843", "MemberType": "Property", "Name": "TextColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Text", "Default": "Auto", "MemberType": "Property", "Name": "TextDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextDirection" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "TextEditable", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextFits", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "Default", "MemberType": "Property", "Name": "TextInputType", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextInputType" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextScaled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "8", "MemberType": "Property", "Name": "TextSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Text", "Default": "0, 0, 0", "MemberType": "Property", "Name": "TextStrokeColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Text", "Default": "1", "MemberType": "Property", "Name": "TextStrokeTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Text", "Default": "0", "MemberType": "Property", "Name": "TextTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Text", "Default": "None", "MemberType": "Property", "Name": "TextTruncate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextTruncate" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextWrap", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "TextWrapped", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "false", "MemberType": "Property", "Name": "TextWrapped", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Text", "Default": "Center", "MemberType": "Property", "Name": "TextXAlignment", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextXAlignment" } }, { "Category": "Text", "Default": "Center", "MemberType": "Property", "Name": "TextYAlignment", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextYAlignment" } }, { "MemberType": "Function", "Name": "CaptureFocus", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsFocused", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReleaseFocus", "Parameters": [ { "Default": "false", "Name": "submitted", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ResetKeyboardMode", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTextFromInput", "Parameters": [ { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FocusLost", "Parameters": [ { "Name": "enterPressed", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "inputThatCausedFocusLoss", "Type": { "Category": "Class", "Name": "InputObject" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Focused", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ReturnPressedFromOnScreenKeyboard", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "TextBox", "Superclass": "GuiObject" }, { "Members": [ { "Category": "Video", "Default": "false", "MemberType": "Property", "Name": "IsLoaded", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Video", "Default": "false", "MemberType": "Property", "Name": "Looped", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Video", "Default": "false", "MemberType": "Property", "Name": "Playing", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Video", "Default": "false", "MemberType": "Property", "Name": "PlayingReplicating", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Video", "Default": "0, 0", "MemberType": "Property", "Name": "Resolution", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Video", "Default": "0", "MemberType": "Property", "Name": "TimeLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Video", "Default": "0", "MemberType": "Property", "Name": "TimePosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Video", "Default": "0", "MemberType": "Property", "Name": "TimePositionReplicating", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Video", "Default": "", "MemberType": "Property", "Name": "Video", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Video", "Default": "1", "MemberType": "Property", "Name": "Volume", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "Pause", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Play", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DidLoop", "Parameters": [ { "Name": "video", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Ended", "Parameters": [ { "Name": "video", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Loaded", "Parameters": [ { "Name": "video", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Paused", "Parameters": [ { "Name": "video", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Played", "Parameters": [ { "Name": "video", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayingUpdatedFromServer", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TimePositionUpdatedFromServer", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "VideoFrame", "Superclass": "GuiObject" }, { "Members": [ { "Category": "Appearance", "Default": "0.784314, 0.784314, 0.784314", "MemberType": "Property", "Name": "Ambient", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CameraCFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "1.22173059", "MemberType": "Property", "Name": "CameraFieldOfView", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CurrentCamera", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Camera" } }, { "Category": "Image", "Default": "1, 1, 1", "MemberType": "Property", "Name": "ImageColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Image", "Default": "0", "MemberType": "Property", "Name": "ImageTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "IsMirrored", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0.54902, 0.54902, 0.54902", "MemberType": "Property", "Name": "LightColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "-1, -1, -1", "MemberType": "Property", "Name": "LightDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "Gui", "Name": "ViewportFrame", "Superclass": "GuiObject" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ResetOnSpawn", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ZIndexBehavior", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ZIndexBehavior" } }, { "MemberType": "Function", "Name": "GetLayoutNodeTree", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "LayerCollector", "Superclass": "GuiBase2d", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "Active", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Adornee", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "AlwaysOnTop", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "Brightness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "ClipsDescendants", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "CurrentDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "DistanceLowerLimit", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "DistanceStep", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "-1", "MemberType": "Property", "Name": "DistanceUpperLimit", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "ExtentsOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "ExtentsOffsetWorldSpace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "LightInfluence", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "INF", "MemberType": "Property", "Name": "MaxDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "PlayerToHideFrom", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "{0, 0}, {0, 0}", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } }, { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "SizeOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "StudsOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "StudsOffsetWorldSpace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "MemberType": "Function", "Name": "GetScreenSpaceBounds", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BillboardGui", "Superclass": "LayerCollector" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Title", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "BindToClose", "Parameters": [ { "Default": "nil", "Name": "function", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRelativeMousePosition", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PluginDragDropped", "Parameters": [ { "Name": "dragData", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PluginDragEntered", "Parameters": [ { "Name": "dragData", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PluginDragLeft", "Parameters": [ { "Name": "dragData", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PluginDragMoved", "Parameters": [ { "Name": "dragData", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "WindowFocusReleased", "Parameters": [], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "WindowFocused", "Parameters": [], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PluginGui", "Superclass": "LayerCollector", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "HostWidgetWasRestored", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "RequestRaise", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DockWidgetPluginGui", "Superclass": "PluginGui", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "QWidgetPluginGui", "Superclass": "PluginGui", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Appearance", "Default": "true", "MemberType": "Property", "Name": "ClipToDeviceSafeArea", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotBrowsable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "DisplayOrder", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "IgnoreGuiInset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "OnTopOfCoreBlur", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "FullscreenExtension", "MemberType": "Property", "Name": "SafeAreaCompatibility", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotBrowsable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SafeAreaCompatibility" } }, { "Category": "Appearance", "Default": "CoreUISafeInsets", "MemberType": "Property", "Name": "ScreenInsets", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotBrowsable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ScreenInsets" } } ], "MemoryCategory": "Instances", "Name": "ScreenGui", "Superclass": "LayerCollector" }, { "Members": [], "MemoryCategory": "Instances", "Name": "GuiMain", "Superclass": "ScreenGui", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Active", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Adornee", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Face", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NormalId" } } ], "MemoryCategory": "Instances", "Name": "SurfaceGuiBase", "Superclass": "LayerCollector", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "HorizontalRectangle", "MemberType": "Property", "Name": "AdShape", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AdShape" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "FallbackImage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Behavior", "Default": "Inactive", "MemberType": "Property", "Name": "Status", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AdUnitStatus" } } ], "MemoryCategory": "Internal", "Name": "AdGui", "Superclass": "SurfaceGuiBase" }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "AlwaysOnTop", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "Brightness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Sizing", "Default": "800, 600", "MemberType": "Property", "Name": "CanvasSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "ClipsDescendants", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "HorizontalCurvature", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "LightInfluence", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Sizing", "Default": "50", "MemberType": "Property", "Name": "PixelsPerStud", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "Flat", "MemberType": "Property", "Name": "Shape", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SurfaceGuiShape" } }, { "Category": "Sizing", "Default": "FixedSize", "MemberType": "Property", "Name": "SizingMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SurfaceGuiSizingMode" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "ToolPunchThroughDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "ZOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "SurfaceGui", "Superclass": "SurfaceGuiBase" }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Color3", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Color3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Transparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Visible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "GuiBase3d", "Superclass": "GuiBase", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "CycleOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "From", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Data", "Default": "4", "MemberType": "Property", "Name": "StudsBetweenTextures", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "Texture", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "1, 1", "MemberType": "Property", "Name": "TextureSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "To", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Data", "Default": "2", "MemberType": "Property", "Name": "Velocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0.0625", "MemberType": "Property", "Name": "WireRadius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "FloorWire", "Superclass": "GuiBase3d", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Adornee", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } } ], "MemoryCategory": "Instances", "Name": "InstanceAdornment", "Superclass": "GuiBase3d", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Appearance", "Default": "0.150000006", "MemberType": "Property", "Name": "LineThickness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "StudioSelectionBox", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "SurfaceColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "SurfaceColor3", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Appearance", "Default": "0.0509804, 0.411765, 0.67451", "MemberType": "Property", "Name": "SurfaceColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "SurfaceTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "SelectionBox", "Superclass": "InstanceAdornment" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Adornee", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "PVInstance" } } ], "MemoryCategory": "Instances", "Name": "PVAdornment", "Superclass": "GuiBase3d", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AdornCullingMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AdornCullingMode" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AlwaysOnTop", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SizeRelativeOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ZIndex", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Event", "Name": "MouseButton1Down", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseButton1Up", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseEnter", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseLeave", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "HandleAdornment", "Superclass": "PVAdornment", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "1, 1, 1", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "Instances", "Name": "BoxHandleAdornment", "Superclass": "HandleAdornment" }, { "Members": [ { "Category": "Data", "Default": "2", "MemberType": "Property", "Name": "Height", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0.5", "MemberType": "Property", "Name": "Radius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "ConeHandleAdornment", "Superclass": "HandleAdornment" }, { "Members": [ { "Category": "Data", "Default": "360", "MemberType": "Property", "Name": "Angle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "Height", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "InnerRadius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "Radius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "CylinderHandleAdornment", "Superclass": "HandleAdornment" }, { "Members": [ { "Category": "Data", "Default": "rbxasset://textures/SurfacesDefault.png", "MemberType": "Property", "Name": "Image", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Data", "Default": "1, 1", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } } ], "MemoryCategory": "Instances", "Name": "ImageHandleAdornment", "Superclass": "HandleAdornment" }, { "Members": [ { "Category": "Data", "Default": "5", "MemberType": "Property", "Name": "Length", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "Thickness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "LineHandleAdornment", "Superclass": "HandleAdornment" }, { "Members": [ { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "Radius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "SphereHandleAdornment", "Superclass": "HandleAdornment" }, { "Members": [ { "Category": "Data", "Default": "1, 1, 1", "MemberType": "Property", "Name": "Scale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "MemberType": "Function", "Name": "AddLine", "Parameters": [ { "Name": "from", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "to", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddLines", "Parameters": [ { "Name": "points", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddPath", "Parameters": [ { "Name": "points", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "loop", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Clear", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "WireframeHandleAdornment", "Superclass": "HandleAdornment" }, { "Members": [ { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "A", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "B", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "C", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "Range", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "Thickness", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "FindPartOnParabola", "Parameters": [ { "Name": "ignoreDescendentsTable", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ParabolaAdornment", "Superclass": "PVAdornment" }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "SurfaceColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "SurfaceColor3", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Appearance", "Default": "0.0509804, 0.411765, 0.67451", "MemberType": "Property", "Name": "SurfaceColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "SurfaceTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "SelectionSphere", "Superclass": "PVAdornment" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Adornee", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } } ], "MemoryCategory": "Instances", "Name": "PartAdornment", "Superclass": "GuiBase3d", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "HandlesBase", "Superclass": "PartAdornment", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "X, Y, Z", "MemberType": "Property", "Name": "Axes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Axes" } }, { "Category": "EventReplicator", "Default": "0", "MemberType": "Property", "Name": "MouseButton1DownConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "0", "MemberType": "Property", "Name": "MouseButton1UpConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "0", "MemberType": "Property", "Name": "MouseDragConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "0", "MemberType": "Property", "Name": "MouseEnterConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "0", "MemberType": "Property", "Name": "MouseLeaveConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Event", "Name": "MouseButton1Down", "Parameters": [ { "Name": "axis", "Type": { "Category": "Enum", "Name": "Axis" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseButton1Up", "Parameters": [ { "Name": "axis", "Type": { "Category": "Enum", "Name": "Axis" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseDrag", "Parameters": [ { "Name": "axis", "Type": { "Category": "Enum", "Name": "Axis" } }, { "Name": "relativeAngle", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "deltaRadius", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseEnter", "Parameters": [ { "Name": "axis", "Type": { "Category": "Enum", "Name": "Axis" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseLeave", "Parameters": [ { "Name": "axis", "Type": { "Category": "Enum", "Name": "Axis" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ArcHandles", "Superclass": "HandlesBase" }, { "Members": [ { "Category": "Data", "Default": "Right, Top, Back, Left, Bottom, Front", "MemberType": "Property", "Name": "Faces", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Faces" } }, { "Category": "EventReplicator", "Default": "0", "MemberType": "Property", "Name": "MouseButton1DownConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "0", "MemberType": "Property", "Name": "MouseButton1UpConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "0", "MemberType": "Property", "Name": "MouseDragConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "0", "MemberType": "Property", "Name": "MouseEnterConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "EventReplicator", "Default": "0", "MemberType": "Property", "Name": "MouseLeaveConnectionCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Appearance", "Default": "Resize", "MemberType": "Property", "Name": "Style", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HandlesStyle" } }, { "MemberType": "Event", "Name": "MouseButton1Down", "Parameters": [ { "Name": "face", "Type": { "Category": "Enum", "Name": "NormalId" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseButton1Up", "Parameters": [ { "Name": "face", "Type": { "Category": "Enum", "Name": "NormalId" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseDrag", "Parameters": [ { "Name": "face", "Type": { "Category": "Enum", "Name": "NormalId" } }, { "Name": "distance", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseEnter", "Parameters": [ { "Name": "face", "Type": { "Category": "Enum", "Name": "NormalId" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseLeave", "Parameters": [ { "Name": "face", "Type": { "Category": "Enum", "Name": "NormalId" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Handles", "Superclass": "HandlesBase" }, { "Members": [ { "Category": "Data", "Default": "Right", "MemberType": "Property", "Name": "TargetSurface", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NormalId" } } ], "MemoryCategory": "Instances", "Name": "SurfaceSelection", "Superclass": "PartAdornment" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Humanoid", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Humanoid" } } ], "MemoryCategory": "Instances", "Name": "SelectionLasso", "Superclass": "GuiBase3d", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Part", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } } ], "MemoryCategory": "Instances", "Name": "SelectionPartLasso", "Superclass": "SelectionLasso", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Point", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "Instances", "Name": "SelectionPointLasso", "Superclass": "SelectionLasso", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AutoSelectGuiEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CoreEffectFolder", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Folder" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CoreGuiFolder", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Folder" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CoreGuiNavigationEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GuiNavigationEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsModalDialog", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsWindows", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MenuIsOpen", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PreferredTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ReducedMotionEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectedCoreObject", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "GuiObject" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectedObject", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "GuiObject" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TouchControlsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "AddCenterDialog", "Parameters": [ { "Name": "dialog", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "centerDialogType", "Type": { "Category": "Enum", "Name": "CenterDialogType" } }, { "Name": "showFunction", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "hideFunction", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddKey", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddSelectionParent", "Parameters": [ { "Name": "selectionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "selectionParent", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddSelectionTuple", "Parameters": [ { "Name": "selectionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "selections", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddSpecialKey", "Parameters": [ { "Name": "key", "Type": { "Category": "Enum", "Name": "SpecialKey" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BroadcastNotification", "Parameters": [ { "Name": "data", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "notificationType", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClearError", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CloseInspectMenu", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CloseStatsBasedOnInputString", "Parameters": [ { "Name": "input", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ForceTenFootInterface", "Parameters": [ { "Name": "isForced", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBrickCount", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetClosestDialogToPosition", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetEmotesMenuOpen", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetErrorCode", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "ConnectionError" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetErrorMessage", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetUiMessage", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetErrorType", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "ConnectionError" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGameplayPausedNotificationEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGuiInset", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGuiIsVisible", "Parameters": [ { "Name": "guiType", "Type": { "Category": "Enum", "Name": "GuiType" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetInspectMenuEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetNotificationTypeList", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetResolutionScale", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSafeZoneOffsets", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUiMessage", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InspectPlayerFromHumanoidDescription", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InspectPlayerFromUserId", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InspectPlayerFromUserIdWithCtx", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "ctx", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsMemoryTrackerEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsTenFootInterface", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenBrowserWindow", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenNativeOverlay", "Parameters": [ { "Name": "title", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveCenterDialog", "Parameters": [ { "Name": "dialog", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveKey", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveSelectionGroup", "Parameters": [ { "Name": "selectionName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveSpecialKey", "Parameters": [ { "Name": "key", "Type": { "Category": "Enum", "Name": "SpecialKey" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Select", "Parameters": [ { "Name": "selectionParent", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEmotesMenuOpen", "Parameters": [ { "Name": "isOpen", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetGameplayPausedNotificationEnabled", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetGlobalGuiInset", "Parameters": [ { "Name": "x1", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y1", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "x2", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y2", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetHardwareSafeAreaInsets", "Parameters": [ { "Name": "left", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "top", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "right", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "bottom", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetInspectMenuEnabled", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMenuIsOpen", "Parameters": [ { "Name": "open", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "default", "Name": "menuName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPurchasePromptIsShown", "Parameters": [ { "Name": "isShown", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetSafeZoneOffsets", "Parameters": [ { "Name": "top", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "bottom", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "left", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "right", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetUiMessage", "Parameters": [ { "Name": "msgType", "Type": { "Category": "Enum", "Name": "UiMessageType" } }, { "Default": "errorCode", "Name": "uiMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowStatsBasedOnInputString", "Parameters": [ { "Name": "input", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ToggleFullscreen", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ToggleGuiIsVisibleForCaptures", "Parameters": [ { "Name": "guiType", "Type": { "Category": "Enum", "Name": "GuiType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ToggleGuiIsVisibleIfAllowed", "Parameters": [ { "Name": "guiType", "Type": { "Category": "Enum", "Name": "GuiType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetScreenResolution", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BrowserWindowClosed", "Parameters": [], "Security": "RobloxScriptSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CloseInspectMenuRequest", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CoreGuiRenderOverflowed", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "EmotesMenuOpenChanged", "Parameters": [ { "Name": "isOpen", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ErrorMessageChanged", "Parameters": [ { "Name": "newErrorMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "Tags": [ "Deprecated", { "PreferredDescriptorName": "UiMessageChanged", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GuiVisibilityChangedSignal", "Parameters": [ { "Name": "guiType", "Type": { "Category": "Enum", "Name": "GuiType" } }, { "Name": "visible", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InspectMenuEnabledChangedSignal", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InspectPlayerFromHumanoidDescriptionRequest", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InspectPlayerFromUserIdWithCtxRequest", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "ctx", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "KeyPressed", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "modifiers", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MenuClosed", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MenuOpened", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "NativeClose", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "NetworkPausedEnabledChanged", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Open9SliceEditor", "Parameters": [ { "Name": "selectedImageObject", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PurchasePromptShown", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SafeZoneOffsetsChanged", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ShowLeaveConfirmation", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SpecialKeyPressed", "Parameters": [ { "Name": "key", "Type": { "Category": "Enum", "Name": "SpecialKey" } }, { "Name": "modifiers", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UiMessageChanged", "Parameters": [ { "Name": "msgType", "Type": { "Category": "Enum", "Name": "UiMessageType" } }, { "Name": "newUiMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "SendCoreUiNotification", "Parameters": [ { "Name": "title", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "GuiService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "GuidRegistryService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetMotor", "Parameters": [ { "Name": "inputType", "Type": { "Category": "Enum", "Name": "UserInputType" } }, { "Name": "vibrationMotor", "Type": { "Category": "Enum", "Name": "VibrationMotor" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsMotorSupported", "Parameters": [ { "Name": "inputType", "Type": { "Category": "Enum", "Name": "UserInputType" } }, { "Name": "vibrationMotor", "Type": { "Category": "Enum", "Name": "VibrationMotor" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsVibrationSupported", "Parameters": [ { "Name": "inputType", "Type": { "Category": "Enum", "Name": "UserInputType" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMotor", "Parameters": [ { "Name": "inputType", "Type": { "Category": "Enum", "Name": "UserInputType" } }, { "Name": "vibrationMotor", "Type": { "Category": "Enum", "Name": "VibrationMotor" } }, { "Name": "vibrationValues", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "HapticService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "CancelImportHeightmap", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsValidColormap", "Parameters": [ { "Name": "colormapAssetId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsValidHeightmap", "Parameters": [ { "Name": "heightmapAssetId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetImportHeightmapPaused", "Parameters": [ { "Name": "paused", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetHeightmapPreviewAsync", "Parameters": [ { "Name": "heightmapAssetId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ImportHeightmap", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Name": "heightmapAssetId", "Type": { "Category": "DataType", "Name": "Content" } }, { "Name": "colormapAssetId", "Type": { "Category": "DataType", "Name": "Content" } }, { "Name": "defaultMaterial", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ColormapHasUnknownPixels", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ProgressUpdate", "Parameters": [ { "Name": "progressRatio", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "operation", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "HeightmapImporterService", "Superclass": "Instance", "Tags": [ "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "HSRData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "HSRMeshIdData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } } ], "MemoryCategory": "Instances", "Name": "HiddenSurfaceRemovalAsset", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Adornee", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "AlwaysOnTop", "MemberType": "Property", "Name": "DepthMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HighlightDepthMode" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "1, 0, 0", "MemberType": "Property", "Name": "FillColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "0.5", "MemberType": "Property", "Name": "FillTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "LineThickness", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "1, 1, 1", "MemberType": "Property", "Name": "OutlineColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "OutlineTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "Standard", "MemberType": "Property", "Name": "ReservedId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ReservedHighlightId" } } ], "MemoryCategory": "Instances", "Name": "Highlight", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "Hopper", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "Deprecated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetDocumentationUrl", "Parameters": [ { "Name": "partialUrl", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAsync", "Parameters": [ { "Name": "apiUrlPath", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "Default", "Name": "priority", "Type": { "Category": "Enum", "Name": "ThrottlingPriority" } }, { "Default": "Default", "Name": "httpRequestType", "Type": { "Category": "Enum", "Name": "HttpRequestType" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAsyncFullUrl", "Parameters": [ { "Name": "apiUrl", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "Default", "Name": "priority", "Type": { "Category": "Enum", "Name": "ThrottlingPriority" } }, { "Default": "Default", "Name": "httpRequestType", "Type": { "Category": "Enum", "Name": "HttpRequestType" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PostAsync", "Parameters": [ { "Name": "apiUrlPath", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "data", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "Default", "Name": "priority", "Type": { "Category": "Enum", "Name": "ThrottlingPriority" } }, { "Default": "ApplicationJson", "Name": "content_type", "Type": { "Category": "Enum", "Name": "HttpContentType" } }, { "Default": "Default", "Name": "httpRequestType", "Type": { "Category": "Enum", "Name": "HttpRequestType" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PostAsyncFullUrl", "Parameters": [ { "Name": "apiUrl", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "data", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "Default", "Name": "priority", "Type": { "Category": "Enum", "Name": "ThrottlingPriority" } }, { "Default": "ApplicationJson", "Name": "content_type", "Type": { "Category": "Enum", "Name": "HttpContentType" } }, { "Default": "Default", "Name": "httpRequestType", "Type": { "Category": "Enum", "Name": "HttpRequestType" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestAsync", "Parameters": [ { "Name": "requestOptions", "Type": { "Category": "Group", "Name": "Dictionary" } }, { "Default": "Default", "Name": "priority", "Type": { "Category": "Enum", "Name": "ThrottlingPriority" } }, { "Default": "ApplicationJson", "Name": "content_type", "Type": { "Category": "Enum", "Name": "HttpContentType" } }, { "Default": "Default", "Name": "httpRequestType", "Type": { "Category": "Enum", "Name": "HttpRequestType" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestLimitedAsync", "Parameters": [ { "Name": "requestOptions", "Type": { "Category": "Group", "Name": "Dictionary" } }, { "Default": "Default", "Name": "priority", "Type": { "Category": "Enum", "Name": "ThrottlingPriority" } }, { "Default": "ApplicationJson", "Name": "content_type", "Type": { "Category": "Enum", "Name": "HttpContentType" } }, { "Default": "Default", "Name": "httpRequestType", "Type": { "Category": "Enum", "Name": "HttpRequestType" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "HttpRbxApiService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "Cancel", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Start", "Parameters": [ { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "HttpRequest", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "HttpEnabled", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "GenerateGUID", "Parameters": [ { "Default": "true", "Name": "wrapInCurlyBraces", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetHttpEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserAgent", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "JSONDecode", "Parameters": [ { "Name": "input", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "JSONEncode", "Parameters": [ { "Name": "input", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "RequestInternal", "Parameters": [ { "Name": "options", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetHttpEnabled", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UrlEncode", "Parameters": [ { "Name": "input", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetAsync", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "false", "Name": "nocache", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "headers", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PostAsync", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "data", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "ApplicationJson", "Name": "content_type", "Type": { "Category": "Enum", "Name": "HttpContentType" } }, { "Default": "false", "Name": "compress", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "headers", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestAsync", "Parameters": [ { "Name": "requestOptions", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "HttpService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Jump Settings", "Default": "true", "MemberType": "Property", "Name": "AutoJumpEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "true", "MemberType": "Property", "Name": "AutoRotate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Game", "Default": "true", "MemberType": "Property", "Name": "AutomaticScalingEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "BreakJointsOnDeath", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "400", "MemberType": "Property", "Name": "CameraMaxDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "CameraMinDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "Classic", "MemberType": "Property", "Name": "CameraMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "CameraMode" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "CameraOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Behavior", "Default": "OuterBox", "MemberType": "Property", "Name": "CollisionType", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HumanoidCollisionType" } }, { "Category": "Data", "Default": "Viewer", "MemberType": "Property", "Name": "DisplayDistanceType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HumanoidDisplayDistanceType" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "DisplayName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "EvaluateStateMachine", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotBrowsable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "Air", "MemberType": "Property", "Name": "FloorMaterial", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Material" } }, { "Category": "Game", "Default": "100", "MemberType": "Property", "Name": "Health", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "100", "MemberType": "Property", "Name": "HealthDisplayDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "DisplayWhenDamaged", "MemberType": "Property", "Name": "HealthDisplayType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HumanoidHealthDisplayType" } }, { "Category": "Game", "Default": "100", "MemberType": "Property", "Name": "Health_XML", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Game", "Default": "0", "MemberType": "Property", "Name": "HipHeight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1, 1, 1", "MemberType": "Property", "Name": "InternalBodyScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "InternalDisplayName", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "InternalHeadScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "InternalOriginalHipHeight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Control", "Default": "false", "MemberType": "Property", "Name": "Jump", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Jump Settings", "Default": "7.19999981", "MemberType": "Property", "Name": "JumpHeight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Jump Settings", "Default": "50", "MemberType": "Property", "Name": "JumpPower", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Control", "Default": "false", "MemberType": "Property", "Name": "JumpReplicate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "LeftLeg", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Game", "Default": "100", "MemberType": "Property", "Name": "MaxHealth", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Game", "Default": "89", "MemberType": "Property", "Name": "MaxSlopeAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Control", "Default": "0, 0, 0", "MemberType": "Property", "Name": "MoveDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Control", "Default": "0, 0, 0", "MemberType": "Property", "Name": "MoveDirectionInternal", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "100", "MemberType": "Property", "Name": "NameDisplayDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "OccludeAll", "MemberType": "Property", "Name": "NameOcclusion", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NameOcclusion" } }, { "Category": "Data", "Default": "FallingDown", "MemberType": "Property", "Name": "NetworkHumanoidState", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HumanoidStateType" } }, { "Category": "Control", "Default": "false", "MemberType": "Property", "Name": "PlatformStand", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "RequiresNeck", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "R6", "MemberType": "Property", "Name": "RigType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HumanoidRigType" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "RightLeg", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "RootPart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Control", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "SeatPart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Control", "Default": "false", "MemberType": "Property", "Name": "Sit", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "false", "MemberType": "Property", "Name": "Strafe", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "0, 0, 0", "MemberType": "Property", "Name": "TargetPoint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Torso", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Jump Settings", "Default": "true", "MemberType": "Property", "Name": "UseJumpPower", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "0", "MemberType": "Property", "Name": "WalkAngleError", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Control", "Default": "0, 0, 0", "MemberType": "Property", "Name": "WalkDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Game", "Default": "16", "MemberType": "Property", "Name": "WalkSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Control", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "WalkToPart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Control", "Default": "0, 0, 0", "MemberType": "Property", "Name": "WalkToPoint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Game", "Default": "100", "MemberType": "Property", "Name": "maxHealth", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "MaxHealth", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "AddAccessory", "Parameters": [ { "Name": "accessory", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddCustomStatus", "Parameters": [ { "Name": "status", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddStatus", "Parameters": [ { "Default": "Poison", "Name": "status", "Type": { "Category": "Enum", "Name": "Status" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ApplyDescriptionBlocking", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BuildRigFromAttachments", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CacheDefaults", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ChangeState", "Parameters": [ { "Default": "None", "Name": "state", "Type": { "Category": "Enum", "Name": "HumanoidStateType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "EquipTool", "Parameters": [ { "Name": "tool", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAccessories", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAccessoryHandleScale", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "partType", "Type": { "Category": "Enum", "Name": "BodyPartR15" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAppliedDescription", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "HumanoidDescription" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBodyPartR15", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Enum", "Name": "BodyPartR15" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetLimb", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Enum", "Name": "Limb" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMoveVelocity", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "Tags": [ "NotBrowsable" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPlayingAnimationTracks", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPlayingAnimationTracks", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetState", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "HumanoidStateType" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetStateEnabled", "Parameters": [ { "Name": "state", "Type": { "Category": "Enum", "Name": "HumanoidStateType" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetStatuses", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HasCustomStatus", "Parameters": [ { "Name": "status", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HasStatus", "Parameters": [ { "Default": "Poison", "Name": "status", "Type": { "Category": "Enum", "Name": "Status" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadAnimation", "Parameters": [ { "Name": "animation", "Type": { "Category": "Class", "Name": "Animation" } } ], "ReturnType": { "Category": "Class", "Name": "AnimationTrack" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "LoadAnimation", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Move", "Parameters": [ { "Name": "moveDirection", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Default": "false", "Name": "relativeToCamera", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "MoveTo", "Parameters": [ { "Name": "location", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Default": "nil", "Name": "part", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveAccessories", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveCustomStatus", "Parameters": [ { "Name": "status", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveStatus", "Parameters": [ { "Default": "Poison", "Name": "status", "Type": { "Category": "Enum", "Name": "Status" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReplaceBodyPartR15", "Parameters": [ { "Name": "bodyPart", "Type": { "Category": "Enum", "Name": "BodyPartR15" } }, { "Name": "part", "Type": { "Category": "Class", "Name": "BasePart" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetClickToWalkEnabled", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetStateEnabled", "Parameters": [ { "Name": "state", "Type": { "Category": "Enum", "Name": "HumanoidStateType" } }, { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TakeDamage", "Parameters": [ { "Name": "amount", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnequipTools", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "loadAnimation", "Parameters": [ { "Name": "animation", "Type": { "Category": "Class", "Name": "Animation" } } ], "ReturnType": { "Category": "Class", "Name": "AnimationTrack" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "LoadAnimation", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "takeDamage", "Parameters": [ { "Name": "amount", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "TakeDamage", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ApplyDescription", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Default": "Default", "Name": "assetTypeVerification", "Type": { "Category": "Enum", "Name": "AssetTypeVerification" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ApplyDescriptionClientServer", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ApplyDescriptionReset", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Default": "Default", "Name": "assetTypeVerification", "Type": { "Category": "Enum", "Name": "AssetTypeVerification" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PlayEmote", "Parameters": [ { "Name": "emoteName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PlayEmoteAndGetAnimTrackById", "Parameters": [ { "Name": "emoteId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AnimationPlayed", "Parameters": [ { "Name": "animationTrack", "Type": { "Category": "Class", "Name": "AnimationTrack" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "AnimationPlayed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Climbing", "Parameters": [ { "Name": "speed", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ClusterCompositionFinished", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CustomStatusAdded", "Parameters": [ { "Name": "status", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CustomStatusRemoved", "Parameters": [ { "Name": "status", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Died", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "EmoteTriggered", "Parameters": [ { "Name": "success", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "animationTrack", "Type": { "Category": "Class", "Name": "AnimationTrack" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FallingDown", "Parameters": [ { "Name": "active", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FreeFalling", "Parameters": [ { "Name": "active", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GettingUp", "Parameters": [ { "Name": "active", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "HealthChanged", "Parameters": [ { "Name": "health", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Jumping", "Parameters": [ { "Name": "active", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MoveToFinished", "Parameters": [ { "Name": "reached", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlatformStanding", "Parameters": [ { "Name": "active", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Ragdoll", "Parameters": [ { "Name": "active", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Running", "Parameters": [ { "Name": "speed", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Seated", "Parameters": [ { "Name": "active", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "currentSeatPart", "Type": { "Category": "Class", "Name": "BasePart" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerApplyDescription", "Parameters": [ { "Name": "status", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerBreakJoints", "Parameters": [], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerEquipTool", "Parameters": [ { "Name": "tool", "Type": { "Category": "Class", "Name": "Tool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StateChanged", "Parameters": [ { "Name": "old", "Type": { "Category": "Enum", "Name": "HumanoidStateType" } }, { "Name": "new", "Type": { "Category": "Enum", "Name": "HumanoidStateType" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StateEnabledChanged", "Parameters": [ { "Name": "state", "Type": { "Category": "Enum", "Name": "HumanoidStateType" } }, { "Name": "isEnabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StatusAdded", "Parameters": [ { "Name": "status", "Type": { "Category": "Enum", "Name": "Status" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StatusRemoved", "Parameters": [ { "Name": "status", "Type": { "Category": "Enum", "Name": "Status" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Strafing", "Parameters": [ { "Name": "active", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Swimming", "Parameters": [ { "Name": "speed", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Touched", "Parameters": [ { "Name": "touchingPart", "Type": { "Category": "Class", "Name": "BasePart" } }, { "Name": "humanoidPart", "Type": { "Category": "Class", "Name": "BasePart" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Humanoid", "Superclass": "Instance" }, { "Members": [ { "Category": "Accessories", "Default": "[]", "MemberType": "Property", "Name": "AccessoryBlob", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Accessories", "Default": "", "MemberType": "Property", "Name": "BackAccessory", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Scale", "Default": "0.300000012", "MemberType": "Property", "Name": "BodyTypeScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Animation", "Default": "0", "MemberType": "Property", "Name": "ClimbAnimation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Scale", "Default": "1", "MemberType": "Property", "Name": "DepthScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "EmotesDataInternal", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "EquippedEmotesDataInternal", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Body Parts", "Default": "0", "MemberType": "Property", "Name": "Face", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Accessories", "Default": "", "MemberType": "Property", "Name": "FaceAccessory", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Animation", "Default": "0", "MemberType": "Property", "Name": "FallAnimation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Accessories", "Default": "", "MemberType": "Property", "Name": "FrontAccessory", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Clothes", "Default": "0", "MemberType": "Property", "Name": "GraphicTShirt", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Accessories", "Default": "", "MemberType": "Property", "Name": "HairAccessory", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Accessories", "Default": "", "MemberType": "Property", "Name": "HatAccessory", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Body Parts", "Default": "0", "MemberType": "Property", "Name": "Head", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Body Colors", "Default": "0, 0, 0", "MemberType": "Property", "Name": "HeadColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Scale", "Default": "1", "MemberType": "Property", "Name": "HeadScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Scale", "Default": "1", "MemberType": "Property", "Name": "HeightScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Animation", "Default": "0", "MemberType": "Property", "Name": "IdleAnimation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Animation", "Default": "0", "MemberType": "Property", "Name": "JumpAnimation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Body Parts", "Default": "0", "MemberType": "Property", "Name": "LeftArm", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Body Colors", "Default": "0, 0, 0", "MemberType": "Property", "Name": "LeftArmColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Body Parts", "Default": "0", "MemberType": "Property", "Name": "LeftLeg", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Body Colors", "Default": "0, 0, 0", "MemberType": "Property", "Name": "LeftLegColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Animation", "Default": "0", "MemberType": "Property", "Name": "MoodAnimation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Accessories", "Default": "", "MemberType": "Property", "Name": "NeckAccessory", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Animation", "Default": "-1", "MemberType": "Property", "Name": "NumberEmotesLoaded", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Clothes", "Default": "0", "MemberType": "Property", "Name": "Pants", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Scale", "Default": "1", "MemberType": "Property", "Name": "ProportionScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Body Parts", "Default": "0", "MemberType": "Property", "Name": "RightArm", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Body Colors", "Default": "0, 0, 0", "MemberType": "Property", "Name": "RightArmColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Body Parts", "Default": "0", "MemberType": "Property", "Name": "RightLeg", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Body Colors", "Default": "0, 0, 0", "MemberType": "Property", "Name": "RightLegColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Animation", "Default": "0", "MemberType": "Property", "Name": "RunAnimation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Clothes", "Default": "0", "MemberType": "Property", "Name": "Shirt", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Accessories", "Default": "", "MemberType": "Property", "Name": "ShouldersAccessory", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Animation", "Default": "0", "MemberType": "Property", "Name": "SwimAnimation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Body Parts", "Default": "0", "MemberType": "Property", "Name": "Torso", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Body Colors", "Default": "0, 0, 0", "MemberType": "Property", "Name": "TorsoColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Accessories", "Default": "", "MemberType": "Property", "Name": "WaistAccessory", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Animation", "Default": "0", "MemberType": "Property", "Name": "WalkAnimation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Scale", "Default": "1", "MemberType": "Property", "Name": "WidthScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "AddEmote", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAccessories", "Parameters": [ { "Name": "includeRigidAccessories", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetEmotes", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetEquippedEmotes", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveEmote", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetAccessories", "Parameters": [ { "Name": "accessories", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "includeRigidAccessories", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEmotes", "Parameters": [ { "Name": "emotes", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEquippedEmotes", "Parameters": [ { "Name": "equippedEmotes", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "EmotesChanged", "Parameters": [ { "Name": "newEmotes", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "EquippedEmotesChanged", "Parameters": [ { "Name": "newEquippedEmotes", "Type": { "Category": "Group", "Name": "Array" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "HumanoidDescription", "Superclass": "Instance" }, { "Members": [ { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "ChainRoot", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "EndEffector", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "EndEffectorOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Offset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Pole", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Behavior", "Default": "0", "MemberType": "Property", "Name": "Priority", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Behavior", "Default": "0.0500000007", "MemberType": "Property", "Name": "SmoothTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Target", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Behavior", "Default": "Transform", "MemberType": "Property", "Name": "Type", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "IKControlType" } }, { "Category": "Behavior", "Default": "1", "MemberType": "Property", "Name": "Weight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "GetChainCount", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetChainLength", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetNodeLocalCFrame", "Parameters": [ { "Name": "index", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetNodeWorldCFrame", "Parameters": [ { "Name": "index", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRawFinalTarget", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSmoothedFinalTarget", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Animation", "Name": "IKControl", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ILegacyStudioBridge", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "LegacyStudioBridge", "Superclass": "ILegacyStudioBridge", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "ClearUserLayers", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBrowserTrackerLayerLoadingStatus", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "IXPLoadingStatus" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBrowserTrackerLayerVariables", "Parameters": [ { "Name": "layerName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBrowserTrackerStatusForLayer", "Parameters": [ { "Name": "layerName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Enum", "Name": "IXPLoadingStatus?" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRegisteredUserLayersToStatus", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserLayerLoadingStatus", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "IXPLoadingStatus" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserLayerVariables", "Parameters": [ { "Name": "layerName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserStatusForLayer", "Parameters": [ { "Name": "layerName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Enum", "Name": "IXPLoadingStatus?" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InitializeUserLayers", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LogBrowserTrackerLayerExposure", "Parameters": [ { "Name": "layerName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LogUserLayerExposure", "Parameters": [ { "Name": "layerName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterUserLayers", "Parameters": [ { "Name": "userLayers", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnBrowserTrackerLayerLoadingStatusChanged", "Parameters": [ { "Name": "status", "Type": { "Category": "Enum", "Name": "IXPLoadingStatus" } } ], "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnUserLayerLoadingStatusChanged", "Parameters": [ { "Name": "status", "Type": { "Category": "Enum", "Name": "IXPLoadingStatus" } } ], "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "IXPService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "AddPathsToBundle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "0.10000000000000000555", "MemberType": "Property", "Name": "BuildDebouncePeriod", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "HighCompression", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "SerializePatch", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "ZstdCompression", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "IncrementalPatchBuilder", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Delta", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "Unknown", "MemberType": "Property", "Name": "KeyCode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "KeyCode" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "State", "Default": "None", "MemberType": "Property", "Name": "UserInputState", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "UserInputState" } }, { "Category": "Data", "Default": "None", "MemberType": "Property", "Name": "UserInputType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "UserInputType" } }, { "MemberType": "Function", "Name": "IsModifierKeyDown", "Parameters": [ { "Name": "modifierKey", "Type": { "Category": "Enum", "Name": "ModifierKey" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "InputObject", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "AllowClientInsertModels", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "AllowInsertFreeModels", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated", "NotBrowsable", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "ApproveAssetId", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ApproveAssetVersionId", "Parameters": [ { "Name": "assetVersionId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetLocalFileContents", "Parameters": [ { "Name": "contentId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Insert", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadLocalAsset", "Parameters": [ { "Name": "assetPath", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadPackageAsset", "Parameters": [ { "Name": "url", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateMeshPartAsync", "Parameters": [ { "Name": "meshId", "Type": { "Category": "DataType", "Name": "Content" } }, { "Name": "collisionFidelity", "Type": { "Category": "Enum", "Name": "CollisionFidelity" } }, { "Name": "renderFidelity", "Type": { "Category": "Enum", "Name": "RenderFidelity" } } ], "ReturnType": { "Category": "Class", "Name": "MeshPart" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBaseCategories", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields", "Deprecated", { "PreferredDescriptorName": "GetBaseSets", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBaseSets", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCollection", "Parameters": [ { "Name": "categoryId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFreeDecals", "Parameters": [ { "Name": "searchText", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "pageNum", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFreeModels", "Parameters": [ { "Name": "searchText", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "pageNum", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetLatestAssetVersionAsync", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserCategories", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields", "Deprecated", { "PreferredDescriptorName": "GetUserSets", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserSets", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadAsset", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadAssetVersion", "Parameters": [ { "Name": "assetVersionId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadAssetWithFormat", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "format", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadPackageAssetAsync", "Parameters": [ { "Name": "url", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "loadAsset", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields", "Deprecated", { "PreferredDescriptorName": "LoadAsset", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InternalDelete", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "InsertService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "AutoSync", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Path", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Target", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } } ], "MemoryCategory": "Instances", "Name": "InternalSyncItem", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "InternalSyncService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Active", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "C0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "C1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Part0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Part1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "part1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Part1", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } } ], "MemoryCategory": "PhysicsParts", "Name": "JointInstance", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BaseAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "PhysicsParts", "Name": "DynamicRotate", "Superclass": "JointInstance", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "RotateP", "Superclass": "DynamicRotate", "Tags": [ "Deprecated", { "PreferredDescriptorName": "HingeConstraint", "ThreadSafety": "Unknown" } ] }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "RotateV", "Superclass": "DynamicRotate", "Tags": [ "Deprecated", { "PreferredDescriptorName": "HingeConstraint", "ThreadSafety": "Unknown" } ] }, { "Members": [ { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "F0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "F1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "F2", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "F3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } } ], "MemoryCategory": "PhysicsParts", "Name": "Glue", "Superclass": "JointInstance", "Tags": [ "Deprecated", { "PreferredDescriptorName": "WeldConstraint", "ThreadSafety": "Unknown" } ] }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "ManualSurfaceJointInstance", "Superclass": "JointInstance", "Tags": [ "NotCreatable", "Deprecated", { "PreferredDescriptorName": "WeldConstraint", "ThreadSafety": "Unknown" } ] }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "ManualGlue", "Superclass": "ManualSurfaceJointInstance", "Tags": [ "Deprecated", { "PreferredDescriptorName": "WeldConstraint", "ThreadSafety": "Unknown" } ] }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "ManualWeld", "Superclass": "ManualSurfaceJointInstance", "Tags": [ "Deprecated", { "PreferredDescriptorName": "WeldConstraint", "ThreadSafety": "Unknown" } ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "CurrentAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "DesiredAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "MaxVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "SetDesiredAngle", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "Motor", "Superclass": "JointInstance" }, { "Members": [ { "Category": "Animatable", "Default": "", "MemberType": "Property", "Name": "ChildName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Animatable", "Default": "", "MemberType": "Property", "Name": "ParentName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Transform", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } } ], "MemoryCategory": "PhysicsParts", "Name": "Motor6D", "Superclass": "Motor" }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "Rotate", "Superclass": "JointInstance", "Tags": [ "Deprecated", { "PreferredDescriptorName": "HingeConstraint", "ThreadSafety": "Unknown" } ] }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "Snap", "Superclass": "JointInstance", "Tags": [ "Deprecated", { "PreferredDescriptorName": "WeldConstraint", "ThreadSafety": "Unknown" } ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "CurrentAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "DesiredAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Hole", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Hole" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "MaxVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "PhysicsParts", "Name": "VelocityMotor", "Superclass": "JointInstance" }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "Weld", "Superclass": "JointInstance" }, { "Members": [ { "MemberType": "Function", "Name": "ClearJoinAfterMoveJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateJoinAfterMoveJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetJoinAfterMoveInstance", "Parameters": [ { "Name": "joinInstance", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetJoinAfterMoveTarget", "Parameters": [ { "Name": "joinTarget", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowPermissibleJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "JointsService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "Deprecated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "KeyboardService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Time", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "AddMarker", "Parameters": [ { "Name": "marker", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddPose", "Parameters": [ { "Name": "pose", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMarkers", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPoses", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveMarker", "Parameters": [ { "Name": "marker", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemovePose", "Parameters": [ { "Name": "pose", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Animation", "Name": "Keyframe", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Animation", "Name": "KeyframeMarker", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "GetKeyframeSequence", "Parameters": [ { "Name": "assetId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetKeyframeSequenceAsync", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetKeyframeSequenceById", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "useCache", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetKeyframeSequenceAsync", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMemStats", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterActiveKeyframeSequence", "Parameters": [ { "Name": "keyframeSequence", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "DataType", "Name": "Content" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterKeyframeSequence", "Parameters": [ { "Name": "keyframeSequence", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "DataType", "Name": "Content" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAnimations", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetKeyframeSequenceAsync", "Parameters": [ { "Name": "assetId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Animation", "Name": "KeyframeSequenceProvider", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "LSPFileSyncService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "LanguageService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Brightness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Shadows", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "Light", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Range", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "PointLight", "Superclass": "Light" }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Angle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Face", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NormalId" } }, { "Category": "Appearance", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Range", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "SpotLight", "Superclass": "Light" }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Angle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Face", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NormalId" } }, { "Category": "Appearance", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Range", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "SurfaceLight", "Superclass": "Light" }, { "Members": [ { "Category": "Appearance", "Default": "0.5, 0.5, 0.5", "MemberType": "Property", "Name": "Ambient", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "Brightness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "14", "MemberType": "Property", "Name": "ClockTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0, 0, 0", "MemberType": "Property", "Name": "ColorShift_Bottom", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0, 0, 0", "MemberType": "Property", "Name": "ColorShift_Top", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "EnvironmentDiffuseScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "EnvironmentSpecularScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Exposure", "Default": "0", "MemberType": "Property", "Name": "ExposureCompensation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Fog", "Default": "0.75, 0.75, 0.75", "MemberType": "Property", "Name": "FogColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Fog", "Default": "100000", "MemberType": "Property", "Name": "FogEnd", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Fog", "Default": "0", "MemberType": "Property", "Name": "FogStart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "41.7332993", "MemberType": "Property", "Name": "GeographicLatitude", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "GlobalShadows", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0.5, 0.5, 0.5", "MemberType": "Property", "Name": "OutdoorAmbient", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "true", "MemberType": "Property", "Name": "Outlines", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0.7, 0.7, 0.72", "MemberType": "Property", "Name": "ShadowColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0.5", "MemberType": "Property", "Name": "ShadowSoftness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "Compatibility", "MemberType": "Property", "Name": "Technology", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Technology" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "TempUseNewSkyRemovalBehaviour", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "14:00:00", "MemberType": "Property", "Name": "TimeOfDay", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "GetMinutesAfterMidnight", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "double" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMoonDirection", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMoonPhase", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSunDirection", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMinutesAfterMidnight", "Parameters": [ { "Name": "minutes", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "getMinutesAfterMidnight", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "double" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetMinutesAfterMidnight", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "setMinutesAfterMidnight", "Parameters": [ { "Name": "minutes", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SetMinutesAfterMidnight", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LightingChanged", "Parameters": [ { "Name": "skyChanged", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Lighting", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Event", "Name": "BeginEdit", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "EndEdit", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FailedToOpen", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "legalToOpenLocal", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "KickFromEdit", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OpenedWithSource", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "source", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SendOperation", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "op", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "LiveScriptingService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "Flush", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetItem", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetItem", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "WhenLoaded", "Parameters": [ { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ItemWasSet", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StoreWasCleared", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "LocalStorageService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "AppStorageService", "Superclass": "LocalStorageService", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "UserStorageService", "Superclass": "LocalStorageService", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Behavior", "Default": "", "MemberType": "Property", "Name": "ForcePlayModeGameLocaleId", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Behavior", "Default": "", "MemberType": "Property", "Name": "ForcePlayModeRobloxLocaleId", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Localization", "Default": "", "MemberType": "Property", "Name": "GameSourceLanguageId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Localization", "Default": "false", "MemberType": "Property", "Name": "IsTextScraperRunning", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Localization", "Default": "", "MemberType": "Property", "Name": "LocaleManifest", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Behavior", "Default": "", "MemberType": "Property", "Name": "RobloxForcePlayModeGameLocaleId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Behavior", "Default": "", "MemberType": "Property", "Name": "RobloxForcePlayModeRobloxLocaleId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Localization", "Default": "", "MemberType": "Property", "Name": "RobloxLocaleId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Localization", "Default": "false", "MemberType": "Property", "Name": "ShouldUseCloudTable", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Localization", "Default": "", "MemberType": "Property", "Name": "SystemLocaleId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "GetCorescriptLocalizations", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTableEntries", "Parameters": [ { "Default": "nil", "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTranslatorForPlayer", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetRobloxLocaleId", "Parameters": [ { "Name": "locale", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartTextScraper", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StopTextScraper", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCountryRegionForPlayerAsync", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTranslatorForLocaleAsync", "Parameters": [ { "Name": "locale", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTranslatorForPlayerAsync", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptDownloadGameTableToCSV", "Parameters": [ { "Name": "table", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptExportToCSVs", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptImportFromCSVs", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptUploadCSVToGameTable", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AutoTranslateWillRun", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TextScraperClientMessageWithPlayerSignal", "Parameters": [ { "Name": "version", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "message", "Type": { "Category": "Group", "Name": "Tuple" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "LocalizationService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Behavior", "Default": "[]", "MemberType": "Property", "Name": "Contents", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Localization", "Default": "en-us", "MemberType": "Property", "Name": "DevelopmentLanguage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "SourceLocaleId", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Localization", "Default": "false", "MemberType": "Property", "Name": "IsExemptFromUGCAnalytics", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Root", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "RootLocalizationTable", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Localization", "Default": "en-us", "MemberType": "Property", "Name": "SourceLocaleId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "GetContents", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetEntries", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetEntries", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetString", "Parameters": [ { "Name": "targetLocaleId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetTranslator", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTranslator", "Parameters": [ { "Name": "localeId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveEntry", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "source", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "context", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveEntryValue", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "source", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "context", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "localeId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveKey", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "RemoveEntry", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveTargetLocale", "Parameters": [ { "Name": "localeId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetContents", "Parameters": [ { "Name": "contents", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SetEntries", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEntries", "Parameters": [ { "Name": "entries", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEntry", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "targetLocaleId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SetEntryValue", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEntryContext", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "source", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "context", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "newContext", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEntryExample", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "source", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "context", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "example", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEntryKey", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "source", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "context", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "newKey", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEntrySource", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "source", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "context", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "newSource", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEntryValue", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "source", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "context", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "localeId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetIsExemptFromUGCAnalytics", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "LocalizationTable", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "CloudLocalizationTable", "Superclass": "LocalizationTable", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "EntityData", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SharedString" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "EntityLodEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "EntityPosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "EntityScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "EntitySource", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } } ], "MemoryCategory": "Instances", "Name": "LodDataEntity", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "LodDataService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "ClearOutput", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ExecuteScript", "Parameters": [ { "Name": "source", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetHttpResultHistory", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetLogHistory", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestHttpResultApproved", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestServerHttpResult", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestServerOutput", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "HttpResultOut", "Parameters": [ { "Name": "httpResult", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MessageOut", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "messageType", "Type": { "Category": "Enum", "Name": "MessageType" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnHttpResultApproved", "Parameters": [ { "Name": "isApproved", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestHttpResultApprovedSignal", "Parameters": [ { "Name": "requestingPlayer", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestScriptExecutionSignal", "Parameters": [ { "Name": "requestingPlayer", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "source", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestServerHttpResultSignal", "Parameters": [ { "Name": "requestingPlayer", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestServerOutputSignal", "Parameters": [ { "Name": "requestingPlayer", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestSettingsChange", "Parameters": [ { "Name": "requestingPlayer", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "expressivePrinting", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerHttpResultOut", "Parameters": [ { "Name": "httpResult", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerMessageOut", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "messageType", "Type": { "Category": "Enum", "Name": "MessageType" } }, { "Name": "timestamp", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerVariantMessageOut", "Parameters": [ { "Name": "data", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "LogService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "Logout", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptLogin", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LoginFailed", "Parameters": [ { "Name": "loginError", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LoginSucceeded", "Parameters": [ { "Name": "username", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "LoginService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "LuaSettings", "Superclass": "Instance", "Tags": [ "NotCreatable", "Settings" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CachedRemoteSource", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "ProtectedString" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CachedRemoteSourceLoadState", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CurrentEditor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HasAssociatedDrafts", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsDifferentFromFileSystem", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "OriginalScriptGuid", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RuntimeSource", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SandboxedSource", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "ProtectedString" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ScriptGuid", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SyncingEditorText", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Event", "Name": "LockGrantedOrNot", "Parameters": [ { "Name": "granted", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LostLock", "Parameters": [], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestLock", "Parameters": [], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestScriptHash", "Parameters": [], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "VerifyScriptHash", "Parameters": [ { "Name": "hash", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "LuaSourceContainer", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Disabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LinkedSource", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RunContext", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RunContext" } } ], "MemoryCategory": "Script", "Name": "BaseScript", "Superclass": "LuaSourceContainer", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Script", "Name": "CoreScript", "Superclass": "BaseScript", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Source", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "ProtectedString" } }, { "MemberType": "Function", "Name": "GetHash", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Script", "Name": "Script", "Superclass": "BaseScript" }, { "Members": [], "MemoryCategory": "Script", "Name": "LocalScript", "Superclass": "Script" }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "Confidential", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "LinkedSource", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Source", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "ProtectedString" } } ], "MemoryCategory": "Script", "Name": "ModuleScript", "Superclass": "LuaSourceContainer" }, { "Members": [], "MemoryCategory": "Instances", "Name": "LuaWebService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "LuauScriptAnalyzerService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Length", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ValuesAndTimes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "MemberType": "Function", "Name": "GetMarkerAtIndex", "Parameters": [ { "Name": "index", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMarkers", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertMarkerAtTime", "Parameters": [ { "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "marker", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveMarkerAtIndex", "Parameters": [ { "Name": "startingIndex", "Type": { "Category": "Primitive", "Name": "int" } }, { "Default": "1", "Name": "count", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MarkerCurve", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "PlayerCanMakePurchases", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PrepareCollectiblesPurchase", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "collectibleItemId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "collectibleItemInstanceId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "collectibleProductId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "expectedPrice", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptBundlePurchase", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "bundleId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptCollectiblesPurchase", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "collectibleItemId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "collectibleItemInstanceId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "collectibleProductId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "expectedPrice", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptGamePassPurchase", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "gamePassId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptNativePurchase", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptNativePurchaseWithLocalPlayer", "Parameters": [ { "Name": "productId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptPremiumPurchase", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptProductPurchase", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Default": "true", "Name": "equipIfPurchased", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "Default", "Name": "currencyType", "Type": { "Category": "Enum", "Name": "CurrencyType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptPurchase", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Default": "true", "Name": "equipIfPurchased", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "Default", "Name": "currencyType", "Type": { "Category": "Enum", "Name": "CurrencyType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptRobloxPurchase", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "equipIfPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptSubscriptionCancellation", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "subscriptionId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptSubscriptionPurchase", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "subscriptionId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptThirdPartyPurchase", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReportAssetSale", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "robuxAmount", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReportRobuxUpsellStarted", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalAssetTypePurchased", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "assetType", "Type": { "Category": "Enum", "Name": "AssetType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalClientPurchaseSuccess", "Parameters": [ { "Name": "ticket", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "playerId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalMockPurchasePremium", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalPromptBundlePurchaseFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "bundleId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "success", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalPromptGamePassPurchaseFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "gamePassId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "success", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalPromptPremiumPurchaseFinished", "Parameters": [ { "Name": "didTryPurchasing", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalPromptProductPurchaseFinished", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "success", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalPromptPurchaseFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "success", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalPromptSubscriptionCancellationFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "subscriptionId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "wasCanceled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalPromptSubscriptionPurchaseFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "subscriptionId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "wasPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SignalServerLuaDialogClosed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetDeveloperProductsAsync", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetProductInfo", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Default": "Asset", "Name": "infoType", "Type": { "Category": "Enum", "Name": "InfoType" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRobuxBalance", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsPlayerSubscribed", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "subscriptionId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PerformPurchase", "Parameters": [ { "Name": "infoType", "Type": { "Category": "Enum", "Name": "InfoType" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "expectedPrice", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "requestId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "isRobloxPurchase", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "", "Name": "collectibleItemId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "collectibleProductId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "idempotencyKey", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "purchaseAuthToken", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PerformPurchaseV2", "Parameters": [ { "Name": "infoType", "Type": { "Category": "Enum", "Name": "InfoType" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "expectedPrice", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "requestId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "isRobloxPurchase", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "collectiblesProductDetails", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PlayerOwnsAsset", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PlayerOwnsBundle", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "bundleId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UserOwnsGamePassAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "gamePassId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AssetTypePurchased", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "assetType", "Type": { "Category": "Enum", "Name": "AssetType" } } ], "Security": "RobloxScriptSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ClientLuaDialogRequested", "Parameters": [ { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ClientPurchaseSuccess", "Parameters": [ { "Name": "ticket", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "playerId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ConfirmPlayerMembership", "Parameters": [], "Security": "RobloxScriptSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LuaDialogCallbackSignal", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxScriptSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MockPurchasePremium", "Parameters": [], "Security": "RobloxScriptSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MockPurchaseSubscription", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "subscriptionId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "NativePurchaseFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "wasPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "NativePurchaseFinishedWithLocalPlayer", "Parameters": [ { "Name": "productId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "wasPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PrepareCollectiblesPurchaseRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "collectibleItemId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "collectibleItemInstanceId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "collectibleProductId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "expectedPrice", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptBundlePurchaseFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "bundleId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "wasPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptBundlePurchaseRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "bundleId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptCollectiblesPurchaseRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "collectibleItemId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "collectibleItemInstanceId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "collectibleProductId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "expectedPrice", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "idempotencyKey", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "purchaseAuthToken", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptGamePassPurchaseFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "gamePassId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "wasPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptGamePassPurchaseRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "gamePassId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptNativePurchaseRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptNativePurchaseRequestedWithLocalPlayer", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptPremiumPurchaseFinished", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptPremiumPurchaseRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptProductPurchaseFinished", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "isPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptProductPurchaseRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "equipIfPurchased", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "currencyType", "Type": { "Category": "Enum", "Name": "CurrencyType" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptPurchaseFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "isPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptPurchaseRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "equipIfPurchased", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "currencyType", "Type": { "Category": "Enum", "Name": "CurrencyType" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptPurchaseRequestedV2", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "equipIfPurchased", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "currencyType", "Type": { "Category": "Enum", "Name": "CurrencyType" } }, { "Name": "idempotencyKey", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "purchaseAuthToken", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptRobloxPurchaseRequested", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "equipIfPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptSubscriptionCancellationFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "subscriptionId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "wasCanceled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptSubscriptionCancellationRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "subscriptionId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptSubscriptionPurchaseFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "subscriptionId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "wasPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptSubscriptionPurchaseRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "subscriptionId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptThirdPartyPurchaseRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerPurchaseVerification", "Parameters": [ { "Name": "serverResponseTable", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ThirdPartyPurchaseFinished", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "productId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "receipt", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "wasPurchased", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "ProcessReceipt", "Parameters": [ { "Name": "receiptInfo", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Enum", "Name": "ProductPurchaseDecision" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MarketplaceService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "StartSession", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "MaterialGenerationSession" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAccountingBalanceAsync", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "double" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RefillAccountingBalanceAsync", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "double" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MaterialGenerationService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GenerateImagesAsync", "Parameters": [ { "Name": "prompt", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "options", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GenerateMaterialMapsAsync", "Parameters": [ { "Name": "imageId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UploadMaterialAsync", "Parameters": [ { "Name": "imageId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MaterialGenerationSession", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Material Overrides", "Default": "Asphalt", "MemberType": "Property", "Name": "AsphaltName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Basalt", "MemberType": "Property", "Name": "BasaltName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Brick", "MemberType": "Property", "Name": "BrickName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Cobblestone", "MemberType": "Property", "Name": "CobblestoneName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Concrete", "MemberType": "Property", "Name": "ConcreteName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "CorrodedMetal", "MemberType": "Property", "Name": "CorrodedMetalName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "CrackedLava", "MemberType": "Property", "Name": "CrackedLavaName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "DiamondPlate", "MemberType": "Property", "Name": "DiamondPlateName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Fabric", "MemberType": "Property", "Name": "FabricName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Foil", "MemberType": "Property", "Name": "FoilName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Glacier", "MemberType": "Property", "Name": "GlacierName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Granite", "MemberType": "Property", "Name": "GraniteName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Grass", "MemberType": "Property", "Name": "GrassName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Ground", "MemberType": "Property", "Name": "GroundName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Ice", "MemberType": "Property", "Name": "IceName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "LeafyGrass", "MemberType": "Property", "Name": "LeafyGrassName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Limestone", "MemberType": "Property", "Name": "LimestoneName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Marble", "MemberType": "Property", "Name": "MarbleName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Metal", "MemberType": "Property", "Name": "MetalName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Mud", "MemberType": "Property", "Name": "MudName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Pavement", "MemberType": "Property", "Name": "PavementName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Pebble", "MemberType": "Property", "Name": "PebbleName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Plastic", "MemberType": "Property", "Name": "PlasticName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Rock", "MemberType": "Property", "Name": "RockName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Salt", "MemberType": "Property", "Name": "SaltName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Sand", "MemberType": "Property", "Name": "SandName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Sandstone", "MemberType": "Property", "Name": "SandstoneName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Slate", "MemberType": "Property", "Name": "SlateName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "SmoothPlastic", "MemberType": "Property", "Name": "SmoothPlasticName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "Snow", "MemberType": "Property", "Name": "SnowName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Pack", "Default": "false", "MemberType": "Property", "Name": "Use2022Materials", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Material Pack", "Default": "false", "MemberType": "Property", "Name": "Use2022MaterialsXml", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Material Overrides", "Default": "Wood", "MemberType": "Property", "Name": "WoodName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Material Overrides", "Default": "WoodPlanks", "MemberType": "Property", "Name": "WoodPlanksName", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "GetBaseMaterialOverride", "Parameters": [ { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMaterialOverrideChanged", "Parameters": [ { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptSignal" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMaterialVariant", "Parameters": [ { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "MaterialVariant" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetOverrideStatus", "Parameters": [ { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Enum", "Name": "PropertyStatus" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetBaseMaterialOverride", "Parameters": [ { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OverrideStatusChanged", "Parameters": [ { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MaterialService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Internal", "Default": "0", "MemberType": "Property", "Name": "AvgMetalness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Internal", "Default": "127", "MemberType": "Property", "Name": "AvgRoughness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Appearance", "Default": "Plastic", "MemberType": "Property", "Name": "BaseMaterial", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Material" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "ColorMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Material", "Default": "default", "MemberType": "Property", "Name": "CustomPhysicalProperties", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "PhysicalProperties" } }, { "Category": "Appearance", "Default": "Regular", "MemberType": "Property", "Name": "MaterialPattern", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "MaterialPattern" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "MetalnessMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "NormalMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "RoughnessMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "10", "MemberType": "Property", "Name": "StudsPerTile", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Internal", "Default": "", "MemberType": "Property", "Name": "TexturePack", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "Instances", "Name": "MaterialVariant", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "Disconnect", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MemStorageConnection", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "Bind", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Class", "Name": "MemStorageConnection" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BindAndFire", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Class", "Name": "MemStorageConnection" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Call", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "input", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Fire", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetItem", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "defaultValue", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HasItem", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveItem", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetItem", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MemStorageService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "AddAsync", "Parameters": [ { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "expiration", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Default": "0", "Name": "priority", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReadAsync", "Parameters": [ { "Name": "count", "Type": { "Category": "Primitive", "Name": "int" } }, { "Default": "false", "Name": "allOrNothing", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "-1", "Name": "waitTimeout", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveAsync", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MemoryStoreQueue", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetQueue", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "30", "Name": "invisibilityTimeout", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Class", "Name": "MemoryStoreQueue" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSortedMap", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "MemoryStoreSortedMap" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MemoryStoreService", "Superclass": "Instance", "Tags": [ "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRangeAsync", "Parameters": [ { "Name": "direction", "Type": { "Category": "Enum", "Name": "SortDirection" } }, { "Name": "count", "Type": { "Category": "Primitive", "Name": "int" } }, { "Default": "", "Name": "exclusiveLowerBound", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "exclusiveUpperBound", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "expiration", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UpdateAsync", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "transformFunction", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "expiration", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MemoryStoreSortedMap", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "Text", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "Message", "Superclass": "Instance", "Tags": [ "Deprecated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "Hint", "Superclass": "Message", "Tags": [ "Deprecated" ] }, { "Members": [ { "MemberType": "Function", "Name": "Disconnect", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MessageBusConnection", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "Call", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "input", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetLast", "Parameters": [ { "Name": "mid", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMessageId", "Parameters": [ { "Name": "domainName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "messageName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetProtocolMethodRequestMessageId", "Parameters": [ { "Name": "protocolName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "methodName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetProtocolMethodResponseMessageId", "Parameters": [ { "Name": "protocolName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "methodName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "MakeRequest", "Parameters": [ { "Name": "protocolName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "methodName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "message", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "customTelemetryData", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Publish", "Parameters": [ { "Name": "mid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "params", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PublishProtocolMethodRequest", "Parameters": [ { "Name": "protocolName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "methodName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "message", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "customTelemetryData", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PublishProtocolMethodResponse", "Parameters": [ { "Name": "protocolName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "methodName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "message", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "responseCode", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "customTelemetryData", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetRequestHandler", "Parameters": [ { "Name": "protocolName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "methodName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Subscribe", "Parameters": [ { "Name": "mid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "once", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "sticky", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SubscribeToProtocolMethodRequest", "Parameters": [ { "Name": "protocolName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "methodName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "once", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "sticky", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SubscribeToProtocolMethodResponse", "Parameters": [ { "Name": "protocolName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "methodName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } }, { "Name": "once", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "sticky", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MessageBusService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "PublishAsync", "Parameters": [ { "Name": "topic", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "message", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SubscribeAsync", "Parameters": [ { "Name": "topic", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptConnection" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MessagingService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Condition", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "ContinueExecution", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "4", "MemberType": "Property", "Name": "Id", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "IsLogpoint", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Line", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "LogMessage", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "RemoveOnHit", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Script", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "true", "MemberType": "Property", "Name": "Valid", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "GetContextBreakpoints", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Remove", "Parameters": [ { "Name": "status", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetChildBreakpointEnabledByScriptAndContext", "Parameters": [ { "Name": "script", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "contextGST", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetContextEnabled", "Parameters": [ { "Name": "context", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetContinueExecution", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEnabled", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetLine", "Parameters": [ { "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "status", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetRemoveOnHit", "Parameters": [ { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MetaBreakpoint", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "0 1 2 ", "MemberType": "Property", "Name": "ContextDataInternal", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "MetaBreakpointContext", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "AddBreakpoint", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "condition", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBreakpointById", "Parameters": [ { "Name": "metaBreakpointId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Class", "Name": "MetaBreakpoint" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveBreakpointById", "Parameters": [ { "Name": "metaBreakpointId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MetaBreakpointAdded", "Parameters": [ { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "MetaBreakpoint" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MetaBreakpointChanged", "Parameters": [ { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "MetaBreakpoint" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MetaBreakpointRemoved", "Parameters": [ { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "MetaBreakpoint" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MetaBreakpointSetChanged", "Parameters": [ { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "MetaBreakpoint" } }, { "Name": "detail", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MetaBreakpointManager", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Hit", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Icon", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Origin", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Target", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TargetFilter", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TargetSurface", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NormalId" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UnitRay", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Ray" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ViewSizeX", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ViewSizeY", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "X", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Y", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "hit", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Hit", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "target", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Target", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "MemberType": "Event", "Name": "Button1Down", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Button1Up", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Button2Down", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Button2Up", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Idle", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "KeyDown", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "InputBegan", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "KeyUp", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "InputEnded", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Move", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "WheelBackward", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "WheelForward", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "keyDown", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "InputBegan", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Mouse", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "PlayerMouse", "Superclass": "Mouse", "Tags": [ "NotCreatable" ] }, { "Members": [ { "MemberType": "Event", "Name": "DragEnter", "Parameters": [ { "Name": "instances", "Type": { "Category": "DataType", "Name": "Objects" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PluginMouse", "Superclass": "Mouse", "Tags": [ "NotCreatable" ] }, { "Members": [ { "MemberType": "Event", "Name": "MouseEnterStudioViewport", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MouseLeaveStudioViewport", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MouseService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FocusedDataModelSession", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "MemberType": "Event", "Name": "DataModelSessionEnded", "Parameters": [ { "Name": "dataModelSession", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DataModelSessionStarted", "Parameters": [ { "Name": "dataModelSession", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "MultipleDocumentInterfaceInstance", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Event", "Name": "Received", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "NetworkMarker", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "MemberType": "Function", "Name": "SetOutgoingKBPSLimit", "Parameters": [ { "Name": "limit", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "NetworkPeer", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "MemberType": "Event", "Name": "ConnectionAccepted", "Parameters": [ { "Name": "peer", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "replicator", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ConnectionFailed", "Parameters": [ { "Name": "peer", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "code", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "reason", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "NetworkClient", "Superclass": "NetworkPeer", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "EncryptStringForPlayerId", "Parameters": [ { "Name": "toEncrypt", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "playerId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "NetworkServer", "Superclass": "NetworkPeer", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetPlayer", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "NetworkReplicator", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "RequestRCCProfilerData", "Parameters": [ { "Name": "frameRate", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "timeFrame", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestServerScriptProfiling", "Parameters": [ { "Name": "start", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "frequency", "Type": { "Category": "Primitive", "Name": "int?" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestServerStats", "Parameters": [ { "Name": "request", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RCCProfilerDataComplete", "Parameters": [ { "Name": "success", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StatsReceived", "Parameters": [ { "Name": "stats", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ClientReplicator", "Superclass": "NetworkReplicator", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ServerReplicator", "Superclass": "NetworkReplicator", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EmulatedTotalMemoryInMB", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FreeMemoryMBytes", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Proxy Settings", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HttpProxyEnabled", "Security": { "Read": "None", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Proxy Settings", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HttpProxyURL", "Security": { "Read": "None", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Diagnostics", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IncomingReplicationLag", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Proxy Settings", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "OpenCertManagerDialog", "Security": { "Read": "NotAccessibleSecurity", "Write": "NotAccessibleSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Diagnostics", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PrintJoinSizeBreakdown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Diagnostics", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PrintPhysicsErrors", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Diagnostics", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PrintStreamInstanceQuota", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Advanced", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RandomizeJoinInstanceOrder", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RenderStreamedRegions", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ShowActiveAnimationAsset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "NetworkSettings", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotBrowsable" ] }, { "Members": [ { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Parts", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Part0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Parts", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Part1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } } ], "MemoryCategory": "PhysicsParts", "Name": "NoCollisionConstraint", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsConnected", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsLuaChatEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsLuaGameDetailsEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectedTheme", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "ActionEnabled", "Parameters": [ { "Name": "actionType", "Type": { "Category": "Enum", "Name": "AppShellActionType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ActionTaken", "Parameters": [ { "Name": "actionType", "Type": { "Category": "Enum", "Name": "AppShellActionType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CancelAllNotification", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CancelNotification", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "alertId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ScheduleNotification", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "alertId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "alertMsg", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "minutesToFire", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SwitchedToAppShellFeature", "Parameters": [ { "Name": "appShellFeature", "Type": { "Category": "Enum", "Name": "AppShellFeature" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetScheduledNotifications", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "LocalUserSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Roblox17sConnectionChanged", "Parameters": [ { "Name": "connectionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "connectionState", "Type": { "Category": "Enum", "Name": "ConnectionState" } }, { "Name": "namespaceSequenceNumbers", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Roblox17sEventReceived", "Parameters": [ { "Name": "eventData", "Type": { "Category": "Group", "Name": "Map" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RobloxConnectionChanged", "Parameters": [ { "Name": "connectionName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "connectionState", "Type": { "Category": "Enum", "Name": "ConnectionState" } }, { "Name": "sequenceNumber", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "namespaceSequenceNumbers", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RobloxEventReceived", "Parameters": [ { "Name": "eventData", "Type": { "Category": "Group", "Name": "Map" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "NotificationService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "ClearSessionId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSessionId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "MakeRequest", "Parameters": [ { "Name": "nextPageToken", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "HttpRequest" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "OmniRecommendationsService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "CreateModel", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "OpenCloudModel" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateUserNotificationAsync", "Parameters": [ { "Name": "user", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "userNotification", "Type": { "Category": "DataType", "Name": "OpenCloudModel" } } ], "ReturnType": { "Category": "DataType", "Name": "OpenCloudModel" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "OpenCloudApiV1", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetApiV1", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "OpenCloudApiV1" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "OpenCloudService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Transform", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Origin", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Pivot", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Pivot Offset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "MemberType": "Function", "Name": "GetPivot", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "PivotTo", "Parameters": [ { "Name": "targetCFrame", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PVInstance", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Anchored", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Assembly", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AssemblyAngularVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Assembly", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AssemblyCenterOfMass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Assembly", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AssemblyLinearVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Assembly", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AssemblyMass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Assembly", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AssemblyRootPart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BackParamA", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BackParamB", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BackSurface", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SurfaceType" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BackSurfaceInput", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "InputType" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BottomParamA", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BottomParamB", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BottomSurface", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SurfaceType" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BottomSurfaceInput", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "InputType" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BrickColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Transform", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Collision", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CanCollide", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Collision", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CanQuery", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Collision", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CanTouch", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CastShadow", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CenterOfMass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Collision", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CollisionGroup", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Collision", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CollisionGroupId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "CollisionGroup", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Collision", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CollisionGroupReplicate", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Color3uint8", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3uint8" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CurrentPhysicalProperties", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "PhysicalProperties" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CustomPhysicalProperties", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "PhysicalProperties" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DraggingV1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Elasticity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EnableFluidForces", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Transform", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ExtentsCFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Transform", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ExtentsSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Friction", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FrontParamA", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FrontParamB", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FrontSurface", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SurfaceType" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FrontSurfaceInput", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "InputType" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LeftParamA", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LeftParamB", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LeftSurface", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SurfaceType" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LeftSurfaceInput", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "InputType" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LocalSimulationValidation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LocalTransparencyModifier", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Locked", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Mass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Massless", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Material", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Material" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MaterialVariant", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MaterialVariantSerialized", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NetworkIsSleeping", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NetworkOwnerV3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SystemAddress" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NetworkOwnershipRule", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NetworkOwnership" } }, { "Category": "Transform", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Orientation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Pivot", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PivotOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Transform", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ReceiveAge", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Reflectance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ResizeIncrement", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ResizeableFaces", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Faces" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RightParamA", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RightParamB", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RightSurface", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SurfaceType" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RightSurfaceInput", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "InputType" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RootPriority", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RotVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated", { "PreferredDescriptorName": "AssemblyAngularVelocity", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Rotation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Transform", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SpecificGravity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "SpecificGravity", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TopParamA", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TopParamB", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Surface", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TopSurface", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SurfaceType" } }, { "Category": "Surface Inputs", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TopSurfaceInput", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "InputType" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Transparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Velocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "Deprecated", { "PreferredDescriptorName": "AssemblyLinearVelocity", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "brickColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "BrickColor", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "siz", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "WriteOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "MemberType": "Function", "Name": "ApplyAngularImpulse", "Parameters": [ { "Name": "impulse", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ApplyImpulse", "Parameters": [ { "Name": "impulse", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ApplyImpulseAtPosition", "Parameters": [ { "Name": "impulse", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BreakJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CanCollideWith", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "BasePart" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "CanSetNetworkOwnership", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetClosestPointOnSurface", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetConnectedParts", "Parameters": [ { "Default": "false", "Name": "recursive", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetJoints", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetMass", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetNetworkOwner", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetNetworkOwnershipAuto", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetNoCollisionConstraints", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRenderCFrame", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRootPart", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetTouchingParts", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVelocityAtPosition", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "IsGrounded", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "MakeJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Resize", "Parameters": [ { "Name": "normalId", "Type": { "Category": "Enum", "Name": "NormalId" } }, { "Name": "deltaAmount", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetNetworkOwner", "Parameters": [ { "Default": "nil", "Name": "playerInstance", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetNetworkOwnershipAuto", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "breakJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "BreakJoints", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "getMass", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "makeJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "resize", "Parameters": [ { "Name": "normalId", "Type": { "Category": "Enum", "Name": "NormalId" } }, { "Name": "deltaAmount", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Resize", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IntersectAsync", "Parameters": [ { "Name": "parts", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "Default", "Name": "collisionfidelity", "Type": { "Category": "Enum", "Name": "CollisionFidelity" } }, { "Default": "Automatic", "Name": "renderFidelity", "Type": { "Category": "Enum", "Name": "RenderFidelity" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SubtractAsync", "Parameters": [ { "Name": "parts", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "Default", "Name": "collisionfidelity", "Type": { "Category": "Enum", "Name": "CollisionFidelity" } }, { "Default": "Automatic", "Name": "renderFidelity", "Type": { "Category": "Enum", "Name": "RenderFidelity" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnionAsync", "Parameters": [ { "Name": "parts", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "Default", "Name": "collisionfidelity", "Type": { "Category": "Enum", "Name": "CollisionFidelity" } }, { "Default": "Automatic", "Name": "renderFidelity", "Type": { "Category": "Enum", "Name": "RenderFidelity" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "subtractAsync2_INTERNAL", "Parameters": [ { "Name": "parts", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "Default", "Name": "collisionfidelity", "Type": { "Category": "Enum", "Name": "CollisionFidelity" } }, { "Default": "Automatic", "Name": "renderFidelity", "Type": { "Category": "Enum", "Name": "RenderFidelity" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "unionAsync2_INTERNAL", "Parameters": [ { "Name": "parts", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "Default", "Name": "collisionfidelity", "Type": { "Category": "Enum", "Name": "CollisionFidelity" } }, { "Default": "Automatic", "Name": "renderFidelity", "Type": { "Category": "Enum", "Name": "RenderFidelity" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LocalSimulationTouched", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "BasePart" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "NetworkOwnerChanged", "Parameters": [ { "Name": "systemAddress", "Type": { "Category": "DataType", "Name": "SystemAddress" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OutfitChanged", "Parameters": [], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StoppedTouching", "Parameters": [ { "Name": "otherPart", "Type": { "Category": "Class", "Name": "BasePart" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "TouchEnded", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchEnded", "Parameters": [ { "Name": "otherPart", "Type": { "Category": "Class", "Name": "BasePart" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Touched", "Parameters": [ { "Name": "otherPart", "Type": { "Category": "Class", "Name": "BasePart" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BasePart", "Superclass": "PVInstance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "CornerWedgePart", "Superclass": "BasePart" }, { "Members": [ { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FormFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FormFactor" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "formFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FormFactor" } }, { "Category": "Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "formFactorRaw", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FormFactor" } } ], "MemoryCategory": "Instances", "Name": "FormFactorPart", "Superclass": "BasePart", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Part", "Default": "Block", "MemberType": "Property", "Name": "Shape", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PartType" } }, { "Category": "Part", "Default": "__api_dump_write_only_property__", "MemberType": "Property", "Name": "shap", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "WriteOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PartType" } }, { "Category": "Part", "Default": "Block", "MemberType": "Property", "Name": "shape", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PartType" } } ], "MemoryCategory": "PhysicsParts", "Name": "Part", "Superclass": "FormFactorPart" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TeamColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "MemberType": "Event", "Name": "FlagCaptured", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "FlagStand", "Superclass": "Part", "Tags": [ "Deprecated" ] }, { "Members": [ { "MemberType": "Event", "Name": "RemoteCreateMotor6D", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteDestroyMotor6D", "Parameters": [], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "Platform", "Superclass": "Part", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Control", "Default": "false", "MemberType": "Property", "Name": "Disabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Occupant", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Humanoid" } }, { "MemberType": "Function", "Name": "Sit", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteCreateSeatWeld", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteDestroySeatWeld", "Parameters": [], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "Seat", "Superclass": "Part" }, { "Members": [ { "Category": "Control", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Controller", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "SkateboardController" } }, { "Category": "Control", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "ControllingHumanoid", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Humanoid" } }, { "Category": "Control", "Default": "Stopped", "MemberType": "Property", "Name": "MoveState", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "MoveState" } }, { "Category": "Control", "Default": "0", "MemberType": "Property", "Name": "Steer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Control", "Default": "true", "MemberType": "Property", "Name": "StickyWheels", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "0", "MemberType": "Property", "Name": "Throttle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "ApplySpecificImpulse", "Parameters": [ { "Name": "impulseWorld", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Equipped", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "skateboardController", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MoveStateChanged", "Parameters": [ { "Name": "newState", "Type": { "Category": "Enum", "Name": "MoveState" } }, { "Name": "oldState", "Type": { "Category": "Enum", "Name": "MoveState" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteCreateMotor6D", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteDestroyMotor6D", "Parameters": [], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Unequipped", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "equipped", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "skateboardController", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Equipped", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "unequipped", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Unequipped", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "SkateboardPlatform", "Superclass": "Part", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Teams", "Default": "false", "MemberType": "Property", "Name": "AllowTeamChangeOnTouch", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Forcefield", "Default": "10", "MemberType": "Property", "Name": "Duration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Teams", "Default": "true", "MemberType": "Property", "Name": "Neutral", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Teams", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TeamColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } } ], "MemoryCategory": "PhysicsParts", "Name": "SpawnLocation", "Superclass": "Part" }, { "Members": [], "MemoryCategory": "Instances", "Name": "WedgePart", "Superclass": "FormFactorPart" }, { "Members": [ { "Category": "Data", "Default": "None", "MemberType": "Property", "Name": "AcquisitionMethod", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TerrainAcquisitionMethod" } }, { "Category": "Data", "Default": "__api_dump_write_only_property__", "MemberType": "Property", "Name": "ClusterGrid", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "WriteOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_write_only_property__", "MemberType": "Property", "Name": "ClusterGridV2", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "WriteOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_write_only_property__", "MemberType": "Property", "Name": "ClusterGridV3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "WriteOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "Decoration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "IsSmooth", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "None", "MemberType": "Property", "Name": "LastUsedModificationMethod", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TerrainAcquisitionMethod" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "MaterialColors", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "MaxExtents", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Region3int16" } }, { "Category": "Data", "Default": "\u0002\u0003", "MemberType": "Property", "Name": "PhysicsGrid", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "ShorelinesUpgraded", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "\u0001\u0005", "MemberType": "Property", "Name": "SmoothGrid", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "SmoothVoxelsUpgraded", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0.05, 0.33, 0.36", "MemberType": "Property", "Name": "WaterColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "WaterReflectance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0.300000012", "MemberType": "Property", "Name": "WaterTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0.150000006", "MemberType": "Property", "Name": "WaterWaveSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "10", "MemberType": "Property", "Name": "WaterWaveSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "AutowedgeCell", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "z", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AutowedgeCells", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3int16" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CanShorelinesBeUpgraded", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CanSmoothVoxelsBeUpgraded", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CellCenterToWorld", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "z", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CellCornerToWorld", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "z", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Clear", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ConvertToSmooth", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CopyRegion", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3int16" } } ], "ReturnType": { "Category": "Class", "Name": "TerrainRegion" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CountCells", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FillBall", "Parameters": [ { "Name": "center", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "radius", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FillBlock", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FillCylinder", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "height", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "radius", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FillRegion", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Name": "resolution", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FillWedge", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCell", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "z", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMaterialColor", "Parameters": [ { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "DataType", "Name": "Color3" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetTerrainWireframe", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetWaterCell", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "z", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PasteRegion", "Parameters": [ { "Name": "region", "Type": { "Category": "Class", "Name": "TerrainRegion" } }, { "Name": "corner", "Type": { "Category": "DataType", "Name": "Vector3int16" } }, { "Name": "pasteEmptyCells", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReadVoxels", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Name": "resolution", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "ReplaceMaterial", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Name": "resolution", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "sourceMaterial", "Type": { "Category": "Enum", "Name": "Material" } }, { "Name": "targetMaterial", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReplaceMaterialInTransform", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "sourceMaterial", "Type": { "Category": "Enum", "Name": "Material" } }, { "Name": "targetMaterial", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReplaceMaterialInTransformSubregion", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "sourceMaterial", "Type": { "Category": "Enum", "Name": "Material" } }, { "Name": "targetMaterial", "Type": { "Category": "Enum", "Name": "Material" } }, { "Name": "targetRegion", "Type": { "Category": "DataType", "Name": "Region3int16" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetCell", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "z", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "material", "Type": { "Category": "Enum", "Name": "CellMaterial" } }, { "Name": "block", "Type": { "Category": "Enum", "Name": "CellBlock" } }, { "Name": "orientation", "Type": { "Category": "Enum", "Name": "CellOrientation" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetCells", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3int16" } }, { "Name": "material", "Type": { "Category": "Enum", "Name": "CellMaterial" } }, { "Name": "block", "Type": { "Category": "Enum", "Name": "CellBlock" } }, { "Name": "orientation", "Type": { "Category": "Enum", "Name": "CellOrientation" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMaterialColor", "Parameters": [ { "Name": "material", "Type": { "Category": "Enum", "Name": "Material" } }, { "Name": "value", "Type": { "Category": "DataType", "Name": "Color3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMaterialInTransform", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "targetMaterial", "Type": { "Category": "Enum", "Name": "Material" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMaterialInTransformSubregion", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "targetMaterial", "Type": { "Category": "Enum", "Name": "Material" } }, { "Name": "targetRegion", "Type": { "Category": "DataType", "Name": "Region3int16" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetWaterCell", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "z", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "force", "Type": { "Category": "Enum", "Name": "WaterForce" } }, { "Name": "direction", "Type": { "Category": "Enum", "Name": "WaterDirection" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SmoothRegion", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Name": "resolution", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "strength", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "WorldToCell", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "WorldToCellPreferEmpty", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "WorldToCellPreferSolid", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "WriteVoxels", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Name": "resolution", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "materials", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "occupancy", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Terrain", "Superclass": "BasePart", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Collision", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CollisionFidelity", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "CollisionFidelity" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MeshSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PhysicalConfigData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SharedString" } } ], "MemoryCategory": "Instances", "Name": "TriangleMeshPart", "Superclass": "BasePart", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "AeroMeshData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SharedString" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "AlternateMeshHash", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "DoubleSided", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "HasJointOffset", "Security": { "Read": "None", "Write": "NotAccessibleSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "HasSkinnedMesh", "Security": { "Read": "None", "Write": "NotAccessibleSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "InitialSize", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "JointOffset", "Security": { "Read": "None", "Write": "NotAccessibleSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "MeshID", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable", "Deprecated", { "PreferredDescriptorName": "MeshId", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "MeshId", "Security": { "Read": "None", "Write": "NotAccessibleSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "PhysicsData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Appearance", "Default": "Precise", "MemberType": "Property", "Name": "RenderFidelity", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RenderFidelity" } }, { "Category": "Appearance", "Default": "Precise", "MemberType": "Property", "Name": "RenderFidelityReplicate", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RenderFidelity" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "TextureID", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "VertexCount", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "ApplyMesh", "Parameters": [ { "Name": "meshPart", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "MeshPart", "Superclass": "TriangleMeshPart" }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "AssetId", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CSGMesh2KernelMap", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SharedString" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CSGPropertyData", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CSGPropertyData" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ChildData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "ChildData2", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SharedString" } }, { "Category": "Data", "Default": "Custom", "MemberType": "Property", "Name": "FormFactor", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FormFactor" } }, { "Category": "Data", "Default": "1, 1, 1", "MemberType": "Property", "Name": "InitialSize", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "MeshData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "MeshData2", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SharedString" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "PhysicsData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Appearance", "Default": "Precise", "MemberType": "Property", "Name": "RenderFidelity", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RenderFidelity" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "SerializedCSGTree", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SharedString" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "SmoothingAngle", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "TriangleCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "UsePartColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "SubstituteGeometry", "Parameters": [ { "Name": "source", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MeshDeltaUpdate", "Parameters": [ { "Name": "originalMeshHash", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "newMeshHash", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "mesh", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MeshFullUpdate", "Parameters": [ { "Name": "newMeshHash", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "mesh", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestMeshFullUpdate", "Parameters": [], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PartOperation", "Superclass": "TriangleMeshPart" }, { "Members": [], "MemoryCategory": "Instances", "Name": "IntersectOperation", "Superclass": "PartOperation" }, { "Members": [], "MemoryCategory": "Instances", "Name": "NegateOperation", "Superclass": "PartOperation" }, { "Members": [], "MemoryCategory": "Instances", "Name": "UnionOperation", "Superclass": "PartOperation" }, { "Members": [ { "Category": "Part", "Default": "AlternatingSupports", "MemberType": "Property", "Name": "Style", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Style" } }, { "Category": "Part", "Default": "AlternatingSupports", "MemberType": "Property", "Name": "style", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Style" } } ], "MemoryCategory": "Instances", "Name": "TrussPart", "Superclass": "BasePart" }, { "Members": [ { "Category": "Control", "Default": "0", "MemberType": "Property", "Name": "AreHingesDetected", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Control", "Default": "false", "MemberType": "Property", "Name": "Disabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "true", "MemberType": "Property", "Name": "HeadsUpDisplay", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "25", "MemberType": "Property", "Name": "MaxSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Control", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Occupant", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Humanoid" } }, { "Category": "Control", "Default": "0", "MemberType": "Property", "Name": "Steer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Control", "Default": "0", "MemberType": "Property", "Name": "SteerFloat", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Control", "Default": "0", "MemberType": "Property", "Name": "Throttle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Control", "Default": "0", "MemberType": "Property", "Name": "ThrottleFloat", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Control", "Default": "10", "MemberType": "Property", "Name": "Torque", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Control", "Default": "1", "MemberType": "Property", "Name": "TurnSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "Sit", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteCreateSeatWeld", "Parameters": [ { "Name": "humanoid", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteDestroySeatWeld", "Parameters": [], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "VehicleSeat", "Superclass": "BasePart" }, { "Members": [ { "Category": "Appearance", "Default": "Automatic", "MemberType": "Property", "Name": "LevelOfDetail", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ModelLevelOfDetail" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "LodEntity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "LodDataEntity" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "ModelMeshCFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "ModelMeshData", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "SharedString" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "ModelMeshSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Behavior", "Default": "Default", "MemberType": "Property", "Name": "ModelStreamingMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ModelStreamingMode" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "NeedsPivotMigration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Pivot", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "PrimaryPart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Pivot", "Default": "1", "MemberType": "Property", "Name": "Scale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Pivot", "Default": "1", "MemberType": "Property", "Name": "ScaleFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Pivot", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "WorldPivot", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Pivot", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "WorldPivotData", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "OptionalCoordinateFrame" } }, { "MemberType": "Function", "Name": "AddPersistentPlayer", "Parameters": [ { "Default": "nil", "Name": "playerInstance", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "BreakJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBoundingBox", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetExtentsSize", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetModelCFrame", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPrimaryPartCFrame", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetModelSize", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector3" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetExtentsSize", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPersistentPlayers", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPrimaryPartCFrame", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPivot", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetScale", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "MakeJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "MoveTo", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemovePersistentPlayer", "Parameters": [ { "Default": "nil", "Name": "playerInstance", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ResetOrientationToIdentity", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SetPrimaryPartCFrame", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ScaleTo", "Parameters": [ { "Name": "newScaleFactor", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetIdentityOrientation", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SetPrimaryPartCFrame", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPrimaryPartCFrame", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "PivotTo", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TranslateBy", "Parameters": [ { "Name": "delta", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "breakJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "BreakJoints", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "makeJoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "MakeJoints", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "move", "Parameters": [ { "Name": "location", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "MoveTo", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "moveTo", "Parameters": [ { "Name": "location", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "MoveTo", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "Model", "Superclass": "PVInstance" }, { "Members": [ { "MemberType": "Function", "Name": "BindToMessage", "Parameters": [ { "Name": "topic", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "function", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptConnection" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "BindToMessageParallel", "Parameters": [ { "Name": "topic", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "function", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "DataType", "Name": "RBXScriptConnection" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "SendMessage", "Parameters": [ { "Name": "topic", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "message", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Safe" } ], "MemoryCategory": "PhysicsParts", "Name": "Actor", "Superclass": "Model" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TextureId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "PhysicsParts", "Name": "BackpackItem", "Superclass": "Model", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "Active", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "Script", "MemberType": "Property", "Name": "BinType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "BinType" } }, { "Category": "Data", "Default": "__api_dump_write_only_property__", "MemberType": "Property", "Name": "Command", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "WriteOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_write_only_property__", "MemberType": "Property", "Name": "TextureName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "WriteOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "Disable", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ToggleSelect", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Deselected", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ReplicatedSelected", "Parameters": [], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Selected", "Parameters": [ { "Name": "mouse", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "HopperBin", "Superclass": "BackpackItem", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "CanBeDropped", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Transform", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Grip", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Transform", "Default": "-0, -0, -1", "MemberType": "Property", "Name": "GripForward", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Transform", "Default": "0, 0, 0", "MemberType": "Property", "Name": "GripPos", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Transform", "Default": "1, 0, 0", "MemberType": "Property", "Name": "GripRight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Transform", "Default": "0, 1, 0", "MemberType": "Property", "Name": "GripUp", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "ManualActivationOnly", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "RequiresHandle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "ToolTip", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "Activate", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Deactivate", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Activated", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Deactivated", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Equipped", "Parameters": [ { "Name": "mouse", "Type": { "Category": "Class", "Name": "Mouse" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Unequipped", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "VRLaserPointerClicked", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "Tool", "Superclass": "BackpackItem" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TeamColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } } ], "MemoryCategory": "PhysicsParts", "Name": "Flag", "Superclass": "Tool", "Tags": [ "Deprecated" ] }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "Status", "Superclass": "Model", "Tags": [ "NotCreatable", "Deprecated" ] }, { "Members": [ { "MemberType": "Function", "Name": "ArePartsTouchingOthers", "Parameters": [ { "Name": "partList", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "0.000199999995", "Name": "overlapIgnored", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Blockcast", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "direction", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Default": "RaycastParams{IgnoreWater=false, BruteForceAllSlow=false, RespectCanCollide=false, CollisionGroup=Default, FilterDescendantsInstances={}}", "Name": "params", "Type": { "Category": "DataType", "Name": "RaycastParams" } } ], "ReturnType": { "Category": "DataType", "Name": "RaycastResult" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "BulkMoveTo", "Parameters": [ { "Name": "partList", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "cframeList", "Type": { "Category": "Group", "Name": "Array" } }, { "Default": "FireAllEvents", "Name": "eventMode", "Type": { "Category": "Enum", "Name": "BulkMoveMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CacheCurrentTerrain", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "center", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "radius", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClearCachedTerrain", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindPartOnRay", "Parameters": [ { "Name": "ray", "Type": { "Category": "DataType", "Name": "Ray" } }, { "Default": "nil", "Name": "ignoreDescendantsInstance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "false", "Name": "terrainCellsAreCubes", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "false", "Name": "ignoreWater", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Raycast", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindPartOnRayWithIgnoreList", "Parameters": [ { "Name": "ray", "Type": { "Category": "DataType", "Name": "Ray" } }, { "Name": "ignoreDescendantsTable", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "false", "Name": "terrainCellsAreCubes", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "false", "Name": "ignoreWater", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Raycast", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindPartOnRayWithWhitelist", "Parameters": [ { "Name": "ray", "Type": { "Category": "DataType", "Name": "Ray" } }, { "Name": "whitelistDescendantsTable", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "false", "Name": "ignoreWater", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Raycast", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindPartsInRegion3", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Default": "nil", "Name": "ignoreDescendantsInstance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "20", "Name": "maxParts", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPartBoundsInBox", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindPartsInRegion3WithIgnoreList", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Name": "ignoreDescendantsTable", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "20", "Name": "maxParts", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPartBoundsInBox", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindPartsInRegion3WithWhiteList", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Name": "whitelistDescendantsTable", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "20", "Name": "maxParts", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPartBoundsInBox", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPartBoundsInBox", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Default": "OverlapParams{MaxParts=false, BruteForceAllSlow=false, RespectCanCollide=false, CollisionGroup=Default, FilterDescendantsInstances={}}", "Name": "overlapParams", "Type": { "Category": "DataType", "Name": "OverlapParams" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetPartBoundsInRadius", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "radius", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "OverlapParams{MaxParts=false, BruteForceAllSlow=false, RespectCanCollide=false, CollisionGroup=Default, FilterDescendantsInstances={}}", "Name": "overlapParams", "Type": { "Category": "DataType", "Name": "OverlapParams" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetPartsInPart", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "BasePart" } }, { "Default": "OverlapParams{MaxParts=false, BruteForceAllSlow=false, RespectCanCollide=false, CollisionGroup=Default, FilterDescendantsInstances={}}", "Name": "overlapParams", "Type": { "Category": "DataType", "Name": "OverlapParams" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "IKMoveTo", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "BasePart" } }, { "Name": "target", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Default": "0.5", "Name": "translateStiffness", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "0.5", "Name": "rotateStiffness", "Type": { "Category": "Primitive", "Name": "float" } }, { "Default": "OtherMechanismsAnchored", "Name": "collisionsMode", "Type": { "Category": "Enum", "Name": "IKCollisionsMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsRegion3Empty", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Default": "nil", "Name": "ignoreDescendentsInstance", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPartBoundsInBox", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsRegion3EmptyWithIgnoreList", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Name": "ignoreDescendentsTable", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPartBoundsInBox", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Raycast", "Parameters": [ { "Name": "origin", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "direction", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Default": "RaycastParams{IgnoreWater=false, BruteForceAllSlow=false, RespectCanCollide=false, CollisionGroup=Default, FilterDescendantsInstances={}}", "Name": "raycastParams", "Type": { "Category": "DataType", "Name": "RaycastParams" } } ], "ReturnType": { "Category": "DataType", "Name": "RaycastResult" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "RaycastCachedTerrain", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "origin", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "direction", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "ignoreWater", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "DataType", "Name": "RaycastResult" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetInsertPoint", "Parameters": [ { "Name": "point", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Default": "false", "Name": "ignoreGrid", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Spherecast", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "radius", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "direction", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Default": "RaycastParams{IgnoreWater=false, BruteForceAllSlow=false, RespectCanCollide=false, CollisionGroup=Default, FilterDescendantsInstances={}}", "Name": "params", "Type": { "Category": "DataType", "Name": "RaycastParams" } } ], "ReturnType": { "Category": "DataType", "Name": "RaycastResult" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "findPartOnRay", "Parameters": [ { "Name": "ray", "Type": { "Category": "DataType", "Name": "Ray" } }, { "Default": "nil", "Name": "ignoreDescendantsInstance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "false", "Name": "terrainCellsAreCubes", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "false", "Name": "ignoreWater", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Raycast", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "findPartsInRegion3", "Parameters": [ { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3" } }, { "Default": "nil", "Name": "ignoreDescendantsInstance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "20", "Name": "maxParts", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPartBoundsInBox", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "WorldRoot", "Superclass": "Model", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "AirProperties", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AirDensity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AllowThirdPartySales", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AvatarUnificationMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AvatarUnificationMode" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ClientAnimatorThrottling", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ClientAnimatorThrottlingMode" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CollisionGroupData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CollisionGroups", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "WriteOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CurrentCamera", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Camera" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DataModelPlaceVersion", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DistributedGameTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ExplicitAutoJoints", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FallenPartsDestroyHeight", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FilteringEnabled", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FluidForces", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FluidForces" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GlobalWind", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Gravity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HumanoidOnlySetCollisionsOnStateChange", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HumanoidOnlySetCollisionsOnStateChange" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IKControlConstraintSupport", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "IKControlConstraintSupport" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "InterpolationThrottling", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "InterpolationThrottlingMode" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MeshPartHeadsAndAccessories", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "MeshPartHeadsAndAccessories" } }, { "Category": "Streaming", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ModelStreamingBehavior", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ModelStreamingBehavior" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PhysicsSteppingMethod", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PhysicsSteppingMethod" } }, { "Category": "Networking", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RejectCharacterDeletions", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RejectCharacterDeletions" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ReplicateInstanceDestroySetting", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ReplicateInstanceDestroySetting" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Retargeting", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AnimatorRetargetingMode" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SignalBehavior", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SignalBehavior" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SignalBehavior2", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SignalBehavior" } }, { "Category": "Streaming", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "StreamOutBehavior", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "StreamOutBehavior" } }, { "Category": "Streaming", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "StreamingEnabled", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Streaming", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "StreamingIntegrityMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "StreamingIntegrityMode" } }, { "Category": "Streaming", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "StreamingMinRadius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Streaming", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "StreamingPauseMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "WriteOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "StreamingPauseMode" } }, { "Category": "Streaming", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "StreamingTargetRadius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Terrain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Terrain" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TerrainWeldsFixed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TouchesUseCollisionGroups", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "BreakJoints", "Parameters": [ { "Name": "objects", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CalculateJumpDistance", "Parameters": [ { "Name": "gravity", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "jumpPower", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "walkSpeed", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CalculateJumpHeight", "Parameters": [ { "Name": "gravity", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "jumpPower", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CalculateJumpPower", "Parameters": [ { "Name": "gravity", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "jumpHeight", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ExperimentalSolverIsEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetNumAwakeParts", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetPhysicsThrottling", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetRealPhysicsFPS", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "double" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetServerTimeNow", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "double" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "JoinToOutsiders", "Parameters": [ { "Name": "objects", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "jointType", "Type": { "Category": "Enum", "Name": "JointCreationMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "MakeJoints", "Parameters": [ { "Name": "objects", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PGSIsEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMeshPartHeadsAndAccessories", "Parameters": [ { "Name": "value", "Type": { "Category": "Enum", "Name": "MeshPartHeadsAndAccessories" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPhysicsThrottleEnabled", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnjoinFromOutsiders", "Parameters": [ { "Name": "objects", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ZoomToExtents", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PersistentLoaded", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "PhysicsParts", "Name": "Workspace", "Superclass": "WorldRoot", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "PhysicsParts", "Name": "WorldModel", "Superclass": "WorldRoot" }, { "Members": [ { "Category": "Link", "Default": "false", "MemberType": "Property", "Name": "AutoUpdate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "CanAutoUpdate", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Creator", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Link", "Default": "0", "MemberType": "Property", "Name": "ModifiedState", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "PackageAssetName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Link", "Default": "0", "MemberType": "Property", "Name": "PackageGuid", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Link", "Default": "", "MemberType": "Property", "Name": "PackageId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Link", "Default": "", "MemberType": "Property", "Name": "PackageIdSerialize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Data", "Default": "None", "MemberType": "Property", "Name": "PermissionLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PackagePermission" } }, { "Category": "Link", "Default": "Up To Date", "MemberType": "Property", "Name": "Status", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Link", "Default": "0", "MemberType": "Property", "Name": "VersionIdSerialize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Link", "Default": "0", "MemberType": "Property", "Name": "VersionNumber", "Security": { "Read": "None", "Write": "NotAccessibleSecurity" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } } ], "MemoryCategory": "Instances", "Name": "PackageLink", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "PackageService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "ConvertToPackageUpload", "Parameters": [ { "Name": "uploadUrl", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "cloneInstances", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "originalInstances", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPackageInfo", "Parameters": [ { "Name": "packageAssetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PublishPackage", "Parameters": [ { "Name": "packageInstance", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPackageVersion", "Parameters": [ { "Name": "packageInstance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "versionNumber", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnConvertToPackageResult", "Parameters": [ { "Name": "isSuccessful", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "errorMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnOpenConvertToPackagePlugin", "Parameters": [ { "Name": "instances", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "cloneInstances", "Type": { "Category": "DataType", "Name": "Objects" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PackageUIService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsFinished", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "GetCurrentPage", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AdvanceToNextPageAsync", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Pages", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "AudioPages", "Superclass": "Pages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "CatalogPages", "Superclass": "Pages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Cursor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "DataStoreKeyPages", "Superclass": "Pages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Cursor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "DataStoreListingPages", "Superclass": "Pages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "DataStorePages", "Superclass": "Pages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "DataStoreVersionPages", "Superclass": "Pages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "FriendPages", "Superclass": "Pages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "InventoryPages", "Superclass": "Pages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "EmotesPages", "Superclass": "InventoryPages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "OutfitPages", "Superclass": "Pages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "StandardPages", "Superclass": "Pages", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ChildData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "MeshData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } } ], "MemoryCategory": "Instances", "Name": "PartOperationAsset", "Superclass": "Instance" }, { "Members": [ { "Category": "Motion", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Acceleration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "Brightness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0 1 1 1 0 1 1 1 1 0 ", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "ColorSequence" } }, { "Category": "Particles", "Default": "0", "MemberType": "Property", "Name": "Drag", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Emission", "Default": "Top", "MemberType": "Property", "Name": "EmissionDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "NormalId" } }, { "Category": "Emission", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Flipbook", "Default": "1 1 ", "MemberType": "Property", "Name": "FlipbookFramerate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Flipbook", "Default": "Particle texture must be 1024 by 1024 to use flipbooks.", "MemberType": "Property", "Name": "FlipbookIncompatible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Flipbook", "Default": "None", "MemberType": "Property", "Name": "FlipbookLayout", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ParticleFlipbookLayout" } }, { "Category": "Flipbook", "Default": "Loop", "MemberType": "Property", "Name": "FlipbookMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ParticleFlipbookMode" } }, { "Category": "Flipbook", "Default": "false", "MemberType": "Property", "Name": "FlipbookStartRandom", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Flipbook", "Default": "Unknown", "MemberType": "Property", "Name": "FlipbookTextureCompatible", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ParticleFlipbookTextureCompatible" } }, { "Category": "Emission", "Default": "5 10 ", "MemberType": "Property", "Name": "Lifetime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "LightEmission", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "LightInfluence", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Particles", "Default": "false", "MemberType": "Property", "Name": "LockedToPart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "FacingCamera", "MemberType": "Property", "Name": "Orientation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ParticleOrientation" } }, { "Category": "Emission", "Default": "20", "MemberType": "Property", "Name": "Rate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Emission", "Default": "0 0 ", "MemberType": "Property", "Name": "RotSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Emission", "Default": "0 0 ", "MemberType": "Property", "Name": "Rotation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "EmitterShape", "Default": "Box", "MemberType": "Property", "Name": "Shape", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ParticleEmitterShape" } }, { "Category": "EmitterShape", "Default": "Outward", "MemberType": "Property", "Name": "ShapeInOut", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ParticleEmitterShapeInOut" } }, { "Category": "EmitterShape", "Default": "1", "MemberType": "Property", "Name": "ShapePartial", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "EmitterShape", "Default": "Volume", "MemberType": "Property", "Name": "ShapeStyle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ParticleEmitterShapeStyle" } }, { "Category": "Appearance", "Default": "0 1 0 1 1 0 ", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberSequence" } }, { "Category": "Emission", "Default": "5 5 ", "MemberType": "Property", "Name": "Speed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Emission", "Default": "0, 0", "MemberType": "Property", "Name": "SpreadAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Appearance", "Default": "0 0 0 1 0 0 ", "MemberType": "Property", "Name": "Squash", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberSequence" } }, { "Category": "Appearance", "Default": "rbxasset://textures/particles/sparkles_main.dds", "MemberType": "Property", "Name": "Texture", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Particles", "Default": "1", "MemberType": "Property", "Name": "TimeScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0 0 0 1 0 0 ", "MemberType": "Property", "Name": "Transparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberSequence" } }, { "Category": "Particles", "Default": "0", "MemberType": "Property", "Name": "VelocityInheritance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Emission", "Default": "0", "MemberType": "Property", "Name": "VelocitySpread", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated", { "PreferredDescriptorName": "SpreadAngle", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Particles", "Default": "false", "MemberType": "Property", "Name": "WindAffectsDrag", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "ZOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "Clear", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Emit", "Parameters": [ { "Default": "16", "Name": "particleCount", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FastForward", "Parameters": [ { "Name": "numFrames", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnClearRequested", "Parameters": [], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnEmitRequested", "Parameters": [ { "Name": "particleCount", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ParticleEmitter", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "PatchBundlerFileWatch", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "FlattenTree", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "PatchId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "TargetPath", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "PatchMapping", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Status", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PathStatus" } }, { "MemberType": "Function", "Name": "GetPointCoordinates", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetWaypoints", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetWaypoints", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CheckOcclusionAsync", "Parameters": [ { "Name": "start", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ComputeAsync", "Parameters": [ { "Name": "start", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "finish", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Blocked", "Parameters": [ { "Name": "blockedWaypointIdx", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Unblocked", "Parameters": [ { "Name": "unblockedWaypointIdx", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Path", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Attachment0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Attachment" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Attachment1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Attachment" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "IsBidirectional", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Label", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "PathfindingLink", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Label", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "PassThrough", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "PathfindingModifier", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "EmptyCutoff", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "CreatePath", "Parameters": [ { "Default": "nil", "Name": "agentParameters", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ComputeRawPathAsync", "Parameters": [ { "Name": "start", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "finish", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "maxDistance", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields", "Deprecated", { "PreferredDescriptorName": "FindPathAsync", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ComputeSmoothPathAsync", "Parameters": [ { "Name": "start", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "finish", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "maxDistance", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields", "Deprecated", { "PreferredDescriptorName": "FindPathAsync", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindPathAsync", "Parameters": [ { "Name": "start", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "finish", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PathfindingService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AllThreadsPaused", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Reason", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DebuggerPauseReason" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ThreadId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } } ], "MemoryCategory": "Instances", "Name": "PausedState", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Breakpoint", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Breakpoint" } } ], "MemoryCategory": "Instances", "Name": "PausedStateBreakpoint", "Superclass": "PausedState", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ExceptionText", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "PausedStateException", "Superclass": "PausedState", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetIsThirdPartyAssetAllowed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetIsThirdPartyPurchaseAllowed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetIsThirdPartyTeleportAllowed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPermissions", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPermissions", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "permissions", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PermissionsService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "CollisionGroupContainsPart", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "part", "Type": { "Category": "Class", "Name": "BasePart" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "CollisionGroup", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CollisionGroupSetCollidable", "Parameters": [ { "Name": "name1", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "name2", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "collidable", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CollisionGroupsAreCollidable", "Parameters": [ { "Name": "name1", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "name2", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateCollisionGroup", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "RegisterCollisionGroup", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCollisionGroupId", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "CollisionGroup", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCollisionGroupName", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "CollisionGroup", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCollisionGroups", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetRegisteredCollisionGroups", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMaxCollisionGroups", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRegisteredCollisionGroups", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IkSolve", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "BasePart" } }, { "Name": "target", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "translateStiffness", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "rotateStiffness", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsCollisionGroupRegistered", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LocalIkSolve", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "BasePart" } }, { "Name": "target", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "translateStiffness", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "rotateStiffness", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterCollisionGroup", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveCollisionGroup", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "UnregisterCollisionGroup", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RenameCollisionGroup", "Parameters": [ { "Name": "from", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "to", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPartCollisionGroup", "Parameters": [ { "Name": "part", "Type": { "Category": "Class", "Name": "BasePart" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "CollisionGroup", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnregisterCollisionGroup", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PhysicsService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Performance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AllowSleep", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreAnchorsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreAssembliesShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreAwakePartsHighlighted", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreBodyTypesShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreCollisionCostsShown", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreConstraintForcesShownForSelectedOrHoveredInstances", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreConstraintTorquesShownForSelectedOrHoveredInstances", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreContactForcesShownForSelectedOrHoveredAssemblies", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreContactIslandsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreContactPointsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreJointCoordinatesShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreMagnitudesShownForDrawnForcesAndTorques", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreMechanismsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreModelCoordsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreOwnersShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ArePartCoordsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreRegionsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreSolverIslandsShown", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreTerrainReplicationRegionsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreTimestepsShown", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreUnalignedPartsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AreWorldCoordsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DisableCSGv2", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DisableCSGv3ForPlugins", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ForceCSGv2", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ForceDrawScale", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsInterpolationThrottleShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsReceiveAgeShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsTreeShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Performance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PhysicsEnvironmentalThrottle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "EnviromentalPhysicsThrottle" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ShowDecompositionGeometry", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SolverConvergenceVisualizationMode", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SolverConvergenceVisualizationMode" } }, { "Category": "Performance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ThrottleAdjustTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Display", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UseCSGv2", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "PhysicsSettings", "Superclass": "Instance", "Tags": [ "NotCreatable", "Settings" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "PlaceStatsService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "StartPlaySolo", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PlacesService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "AccountAge", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "AccountAgeReplicate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "AppearanceDidLoad", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "AutoJumpEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Camera", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "CameraMaxZoomDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "CameraMinZoomDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "CameraMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "CameraMode" } }, { "Category": "Behavior", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "CanLoadCharacterAppearance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Character", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Model" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "CharacterAppearance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotBrowsable", "Deprecated", { "PreferredDescriptorName": "CharacterAppearanceId", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "CharacterAppearanceId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "ChararacterRegionId", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "ChatMode", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ChatMode" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "ChatPrivacyMode", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ChatPrivacyMode" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "CloudEditCameraCoordinateFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "CloudEditPlayerActive", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "CountryRegionCodeReplicate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DataComplexity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DataComplexityLimit", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DataReady", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Camera", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DevCameraOcclusionMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DevCameraOcclusionMode" } }, { "Category": "Camera", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DevComputerCameraMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DevComputerCameraMovementMode" } }, { "Category": "Control", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DevComputerMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DevComputerMovementMode" } }, { "Category": "Camera", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DevEnableMouseLock", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Camera", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DevTouchCameraMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DevTouchCameraMovementMode" } }, { "Category": "Control", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DevTouchMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DevTouchMovementMode" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DisplayName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "FollowUserId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "FollowUserIdReplicated", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Behavior", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "GameplayPaused", "Security": { "Read": "None", "Write": "NotAccessibleSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Guest", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "HasVerifiedBadge", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Camera", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "HealthDisplayDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "InternalCharacterAppearanceLoaded", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "LocaleId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "MaxSimulationRadius", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "MaximumSimulationRadius", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "MembershipType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "MembershipType" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "MembershipTypeReplicate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "MembershipType" } }, { "Category": "Camera", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "NameDisplayDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Team", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Neutral", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "OsPlatform", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "PlatformName", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "RawJoinData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "ReplicationFocus", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "RespawnLocation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "SpawnLocation" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "SimulationRadius", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "SuperSafeChatReplicate", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Team", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Team", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Team" } }, { "Category": "Team", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "TeamColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "Teleported", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "TeleportedIn", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "UnfilteredChat", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "UserId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "VRDevice", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "VREnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "userId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Deprecated", { "PreferredDescriptorName": "UserId", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "MemberType": "Function", "Name": "AddToBlockList", "Parameters": [ { "Name": "userIds", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClearCharacterAppearance", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DistanceFromCharacter", "Parameters": [ { "Name": "point", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFriendStatus", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Enum", "Name": "FriendStatus" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGameSessionID", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetJoinData", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMouse", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Mouse" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetNetworkPing", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetUnder13", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HasAppearanceLoaded", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsVerified", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Kick", "Parameters": [ { "Default": "", "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadBoolean", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadCharacterAppearance", "Parameters": [ { "Name": "assetInstance", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadData", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadInstance", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadNumber", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "double" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadString", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Move", "Parameters": [ { "Name": "walkDirection", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Default": "false", "Name": "relativeToCamera", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveCharacter", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestFriendship", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RevokeFriendship", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SaveBoolean", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SaveData", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SaveInstance", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SaveNumber", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SaveString", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetAccountAge", "Parameters": [ { "Name": "accountAge", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetCharacterAppearanceJson", "Parameters": [ { "Name": "jsonBlob", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetExperienceSettingsLocaleId", "Parameters": [ { "Name": "locale", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMembershipType", "Parameters": [ { "Name": "membershipType", "Type": { "Category": "Enum", "Name": "MembershipType" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetModerationAccessKey", "Parameters": [ { "Name": "moderationAccessKey", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetSuperSafeChat", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetUnder13", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UpdatePlayerBlocked", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "blocked", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "loadBoolean", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "LoadBoolean", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "loadInstance", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "LoadInstance", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "loadNumber", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "double" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "LoadNumber", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "loadString", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "LoadString", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "saveBoolean", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SaveBoolean", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "saveInstance", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SaveInstance", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "saveNumber", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SaveNumber", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "saveString", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "SaveString", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFriendsOnline", "Parameters": [ { "Default": "200", "Name": "maxFriends", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRankInGroup", "Parameters": [ { "Name": "groupId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRoleInGroup", "Parameters": [ { "Name": "groupId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsBestFriendsWith", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsFriendsWith", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsInGroup", "Parameters": [ { "Name": "groupId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadCharacter", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadCharacterBlocking", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "LoadCharacterWithHumanoidDescription", "Parameters": [ { "Name": "humanoidDescription", "Type": { "Category": "Class", "Name": "HumanoidDescription" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestStreamAroundAsync", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Default": "0", "Name": "timeOut", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "WaitForDataReady", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "isFriendsWith", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields", "Deprecated", { "PreferredDescriptorName": "IsFriendsWith", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "waitForDataReady", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields", "Deprecated", { "PreferredDescriptorName": "WaitForDataReady", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CharacterAdded", "Parameters": [ { "Name": "character", "Type": { "Category": "Class", "Name": "Model" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CharacterAppearanceLoaded", "Parameters": [ { "Name": "character", "Type": { "Category": "Class", "Name": "Model" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CharacterRemoving", "Parameters": [ { "Name": "character", "Type": { "Category": "Class", "Name": "Model" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Chatted", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "recipient", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CloudEditSelectionChanged", "Parameters": [ { "Name": "newSelection", "Type": { "Category": "Group", "Name": "Array" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ConnectDiedSignalBackend", "Parameters": [], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FriendStatusChanged", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "friendStatus", "Type": { "Category": "Enum", "Name": "FriendStatus" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Idled", "Parameters": [ { "Name": "time", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Kill", "Parameters": [], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnTeleport", "Parameters": [ { "Name": "teleportState", "Type": { "Category": "Enum", "Name": "TeleportState" } }, { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "spawnName", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnTeleportInternal", "Parameters": [ { "Name": "teleportState", "Type": { "Category": "Enum", "Name": "TeleportState" } }, { "Name": "teleportInfo", "Type": { "Category": "Group", "Name": "Dictionary" } }, { "Name": "customLoadingScreen", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayerExperienceSettingsLocaleSetFromLua", "Parameters": [ { "Name": "newLocaleId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ReceivedJoinTelemetry", "Parameters": [ { "Name": "details", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteFriendRequestSignal", "Parameters": [ { "Name": "otherUserId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "eventType", "Type": { "Category": "Enum", "Name": "FriendRequestEvent" } } ], "Security": "RobloxScriptSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteInsert", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScopeCheckInitiated", "Parameters": [ { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "serializedScopes", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "metadata", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptSecurityError", "Parameters": [ { "Name": "hash", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "error", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "stack", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerToClientUnfilteredChatReplicate", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SetShutdownMessage", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SimulationRadiusChanged", "Parameters": [ { "Name": "radius", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StatsAvailable", "Parameters": [ { "Name": "info", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Player", "Superclass": "Instance" }, { "Members": [ { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "CustomPoliciesEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "", "MemberType": "Property", "Name": "EmulatedCountryCode", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Behavior", "Default": "", "MemberType": "Property", "Name": "EmulatedGameLocale", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "PlayerEmulationEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "", "MemberType": "Property", "Name": "SerializedEmulatedPolicyInfo", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "MemberType": "Function", "Name": "GetEmulatedPolicyInfo", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegionCodeWillHaveAutomaticNonCustomPolicies", "Parameters": [ { "Name": "regionCode", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetEmulatedPolicyInfo", "Parameters": [ { "Name": "emulatedPolicyInfo", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PlayerEmulatorService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "ClearComputerCameraMovementModes", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClearComputerMovementModes", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClearTouchCameraMovementModes", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClearTouchMovementModes", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRegisteredComputerCameraMovementModes", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRegisteredComputerMovementModes", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRegisteredTouchCameraMovementModes", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRegisteredTouchMovementModes", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterComputerCameraMovementMode", "Parameters": [ { "Name": "cameraMovementMode", "Type": { "Category": "Enum", "Name": "ComputerCameraMovementMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterComputerMovementMode", "Parameters": [ { "Name": "movementMode", "Type": { "Category": "Enum", "Name": "ComputerMovementMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterTouchCameraMovementMode", "Parameters": [ { "Name": "cameraMovementMode", "Type": { "Category": "Enum", "Name": "TouchCameraMovementMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterTouchMovementMode", "Parameters": [ { "Name": "movementMode", "Type": { "Category": "Enum", "Name": "TouchMovementMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ComputerCameraMovementModeRegistered", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ComputerMovementModeRegistered", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchCameraMovementModeRegistered", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchMovementModeRegistered", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PlayerScripts", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "BubbleChat", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CharacterAutoLoads", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ClassicChat", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LocalPlayer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Player" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MaxPlayers", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MaxPlayersInternal", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "NumPlayers", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "GetPlayers", "ThreadSafety": "Safe" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PreferredPlayers", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PreferredPlayersInternal", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RespawnTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ServerGitHash", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ServerLogPrefix", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UseStrafingAnimations", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "localPlayer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "LocalPlayer", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Player" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "numPlayers", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "NumPlayers", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "Chat", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateLocalPlayer", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Player" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPlayerByUserId", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "Player" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetPlayerFromCharacter", "Parameters": [ { "Name": "character", "Type": { "Category": "Class", "Name": "Model" } } ], "ReturnType": { "Category": "Class", "Name": "Player" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPlayers", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "ReportAbuse", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "reason", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "optionalMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReportAbuseV3", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "jsonTags", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ResetLocalPlayer", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetChatStyle", "Parameters": [ { "Default": "Classic", "Name": "style", "Type": { "Category": "Enum", "Name": "ChatStyle" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetLocalPlayerInfo", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "userName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "displayName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "membershipType", "Type": { "Category": "Enum", "Name": "MembershipType" } }, { "Name": "isUnder13", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TeamChat", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "WhisperChat", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "getPlayers", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPlayers", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "playerFromCharacter", "Parameters": [ { "Name": "character", "Type": { "Category": "Class", "Name": "Model" } } ], "ReturnType": { "Category": "Class", "Name": "Player" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPlayerFromCharacter", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "players", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetPlayers", "ThreadSafety": "Safe" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateHumanoidModelFromDescription", "Parameters": [ { "Name": "description", "Type": { "Category": "Class", "Name": "HumanoidDescription" } }, { "Name": "rigType", "Type": { "Category": "Enum", "Name": "HumanoidRigType" } }, { "Default": "Default", "Name": "assetTypeVerification", "Type": { "Category": "Enum", "Name": "AssetTypeVerification" } } ], "ReturnType": { "Category": "Class", "Name": "Model" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateHumanoidModelFromUserId", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "Model" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCharacterAppearanceAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "Model" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCharacterAppearanceInfoAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFriendsAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "FriendPages" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetHumanoidDescriptionFromOutfitId", "Parameters": [ { "Name": "outfitId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "HumanoidDescription" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetHumanoidDescriptionFromUserId", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Class", "Name": "HumanoidDescription" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetNameFromUserIdAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserIdFromNameAsync", "Parameters": [ { "Name": "userName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserThumbnailAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "thumbnailType", "Type": { "Category": "Enum", "Name": "ThumbnailType" } }, { "Name": "thumbnailSize", "Type": { "Category": "Enum", "Name": "ThumbnailSize" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CloudEditApplyEditsMessage", "Parameters": [ { "Name": "playerName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "scriptName", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FriendRequestEvent", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "friendRequestEvent", "Type": { "Category": "Enum", "Name": "FriendRequestEvent" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GameAnnounce", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnLinkedScriptsUpdated", "Parameters": [], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayerAdded", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayerChatted", "Parameters": [ { "Name": "chatType", "Type": { "Category": "Enum", "Name": "PlayerChatType" } }, { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "targetPlayer", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayerConnecting", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayerDisconnecting", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayerMembershipChanged", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayerRejoining", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayerRemoving", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptGameServerReportEnrichment", "Parameters": [ { "Name": "reportId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptReportServerEnrichmentAndScan", "Parameters": [ { "Name": "v1comment", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "submitterId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "abuserId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "reportId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestCloudEditImmediatePublishWithContext", "Parameters": [ { "Name": "spanContext", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestCloudEditKick", "Parameters": [ { "Name": "playerId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestCloudEditShutdown", "Parameters": [], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestTeamCreateImmediateSaveWithContext", "Parameters": [ { "Name": "spanContext", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TeamCreatePublishFinished", "Parameters": [ { "Name": "publishSuccessful", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TeamCreateSaveFinished", "Parameters": [ { "Name": "saveSuccessful", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TeamCreateServerMessage", "Parameters": [ { "Name": "messageType", "Type": { "Category": "Enum", "Name": "MessageType" } }, { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "printToStatusBar", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Players", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CollisionEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GridSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HostDataModelType", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "StudioDataModelType" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HostDataModelTypeIsCurrent", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MultipleDocumentInterfaceInstance", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "MultipleDocumentInterfaceInstance" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UsesAssetInsertionDrag", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "Activate", "Parameters": [ { "Name": "exclusiveMouse", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreatePluginAction", "Parameters": [ { "Name": "actionId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "statusTip", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "iconName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "true", "Name": "allowBinding", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "PluginAction" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreatePluginMenu", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "title", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "icon", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "PluginMenu" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateToolbar", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "PluginToolbar" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Deactivate", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetItem", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "defaultValue", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetJoinMode", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "JointCreationMode" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMouse", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "PluginMouse" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSelectedRibbonTool", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "RibbonTool" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSetting", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetStudioUserId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "PluginSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Intersect", "Parameters": [ { "Name": "objects", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Invoke", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsActivated", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsActivatedWithExclusiveMouse", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Negate", "Parameters": [ { "Name": "objects", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OnInvoke", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OnSetItem", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "callback", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenScript", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "LuaSourceContainer" } }, { "Default": "1", "Name": "lineNumber", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenWikiPage", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PauseSound", "Parameters": [ { "Name": "sound", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PlaySound", "Parameters": [ { "Name": "sound", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "0", "Name": "normalizedTimePosition", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ResumeSound", "Parameters": [ { "Name": "sound", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SaveSelectedToRoblox", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SelectRibbonTool", "Parameters": [ { "Name": "tool", "Type": { "Category": "Enum", "Name": "RibbonTool" } }, { "Name": "position", "Type": { "Category": "DataType", "Name": "UDim2" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Separate", "Parameters": [ { "Name": "objects", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetItem", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetReady", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetSetting", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartDecalDrag", "Parameters": [ { "Name": "decal", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartDrag", "Parameters": [ { "Name": "dragData", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StopAllSounds", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Union", "Parameters": [ { "Name": "objects", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateDockWidgetPluginGui", "Parameters": [ { "Name": "pluginGuiId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "dockWidgetPluginGuiInfo", "Type": { "Category": "DataType", "Name": "DockWidgetPluginGuiInfo" } } ], "ReturnType": { "Category": "Class", "Name": "DockWidgetPluginGui" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateQWidgetPluginGui", "Parameters": [ { "Name": "pluginGuiId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "pluginGuiOptions", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Class", "Name": "QWidgetPluginGui" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ImportFbxAnimation", "Parameters": [ { "Name": "rigModel", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "true", "Name": "isR15", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ImportFbxRig", "Parameters": [ { "Default": "true", "Name": "isR15", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptForExistingAssetId", "Parameters": [ { "Name": "assetType", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptSaveSelection", "Parameters": [ { "Default": "", "Name": "suggestedFileName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Deactivation", "Parameters": [], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Ready", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Unloading", "Parameters": [], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "ProcessAssetInsertionDrag", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "assetTypeId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "instances", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "Tags": [ "NoYield" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "ProcessAssetInsertionDrop", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "NoYield" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Plugin", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ActionId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "AllowBinding", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "Checked", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "DefaultShortcut", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "StatusTip", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Text", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Event", "Name": "Triggered", "Parameters": [], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PluginAction", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "{\"Metadata\":{\"TargetDataModels\": [\"Edit\", \"Server\", \"Client\"]},\"Permissions\":{}}", "MemberType": "Property", "Name": "Manifest", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "PluginCapabilities", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "PluginDebugService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Data", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MimeType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Sender", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "PluginDragEvent", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "PluginGuiService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "SetAutoUpdate", "Parameters": [ { "Name": "pluginId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "state", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetOTAPluginVersion", "Parameters": [ { "Default": "", "Name": "pluginName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PluginManagementService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "CreatePlugin", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "Tags": [ "Deprecated", "CustomLuaState" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ExportPlace", "Parameters": [ { "Default": "", "Name": "filePath", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ExportSelection", "Parameters": [ { "Default": "", "Name": "filePath", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PluginManager", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "MemberType": "Function", "Name": "CreatePlugin", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "Tags": [ "Deprecated", "CustomLuaState" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ExportPlace", "Parameters": [ { "Default": "", "Name": "filePath", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ExportSelection", "Parameters": [ { "Default": "", "Name": "filePath", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PluginManagerInterface", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Icon", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Title", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "AddAction", "Parameters": [ { "Name": "action", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddMenu", "Parameters": [ { "Name": "menu", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddNewAction", "Parameters": [ { "Name": "actionId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "icon", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddSeparator", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Clear", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowAsync", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PluginMenu", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetPluginPolicy", "Parameters": [ { "Name": "pluginName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PluginPolicyService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "CreateButton", "Parameters": [ { "Name": "buttonId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "tooltip", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "iconname", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PluginToolbar", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ClickableWhenViewportHidden", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Icon", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "MemberType": "Function", "Name": "SetActive", "Parameters": [ { "Name": "active", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Click", "Parameters": [], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PluginToolbarButton", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetAwardablePoints", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AwardPoints", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "amount", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGamePointBalance", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPointBalance", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PointsAwarded", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "pointsAwarded", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "userBalanceInGame", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "userTotalBalance", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PointsService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "Unknown", "MemberType": "Property", "Name": "IsLuobuServer", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TriStateBoolean" } }, { "Category": "Data", "Default": "Unknown", "MemberType": "Property", "Name": "LuobuWhitelisted", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TriStateBoolean" } }, { "MemberType": "Function", "Name": "GetPolicyInfoForPlayerAsync", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPolicyInfoForServerRobloxOnlyAsync", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PolicyService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EasingDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PoseEasingDirection" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EasingStyle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PoseEasingStyle" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Weight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "PoseBase", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } } ], "MemoryCategory": "Animation", "Name": "NumberPose", "Superclass": "PoseBase" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "MaskWeight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "AddSubPose", "Parameters": [ { "Name": "pose", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSubPoses", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveSubPose", "Parameters": [ { "Name": "pose", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Animation", "Name": "Pose", "Superclass": "PoseBase" }, { "Members": [ { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "PostEffect", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "State", "Default": "0.400000006", "MemberType": "Property", "Name": "Intensity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "24", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.949999988", "MemberType": "Property", "Name": "Threshold", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "BloomEffect", "Superclass": "PostEffect" }, { "Members": [ { "Category": "State", "Default": "24", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "BlurEffect", "Superclass": "PostEffect" }, { "Members": [ { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "Brightness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "Contrast", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "Saturation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "1, 1, 1", "MemberType": "Property", "Name": "TintColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } } ], "MemoryCategory": "Instances", "Name": "ColorCorrectionEffect", "Superclass": "PostEffect" }, { "Members": [ { "Category": "State", "Default": "0.75", "MemberType": "Property", "Name": "FarIntensity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.0500000007", "MemberType": "Property", "Name": "FocusDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "10", "MemberType": "Property", "Name": "InFocusRadius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.75", "MemberType": "Property", "Name": "NearIntensity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "DepthOfFieldEffect", "Superclass": "PostEffect" }, { "Members": [ { "Category": "State", "Default": "0.25", "MemberType": "Property", "Name": "Intensity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Spread", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "SunRaysEffect", "Superclass": "PostEffect" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ProcessInstancePhysicsService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "Interact", "MemberType": "Property", "Name": "ActionText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Localization", "Default": "true", "MemberType": "Property", "Name": "AutoLocalize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "ClickablePrompt", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "OnePerButton", "MemberType": "Property", "Name": "Exclusivity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ProximityPromptExclusivity" } }, { "Category": "Data", "Default": "ButtonX", "MemberType": "Property", "Name": "GamepadKeyCode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "KeyCode" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "HoldDuration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "E", "MemberType": "Property", "Name": "KeyboardKeyCode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "KeyCode" } }, { "Category": "Data", "Default": "10", "MemberType": "Property", "Name": "MaxActivationDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ObjectText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "RequiresLineOfSight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Localization", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "RootLocalizationTable", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "LocalizationTable" } }, { "Category": "Data", "Default": "Default", "MemberType": "Property", "Name": "Style", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ProximityPromptStyle" } }, { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "UIOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "MemberType": "Function", "Name": "InputHoldBegin", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InputHoldEnd", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ButtonHoldBeganActionReplicated", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ButtonHoldEndedActionReplicated", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptButtonHoldBegan", "Parameters": [ { "Name": "playerWhoTriggered", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptButtonHoldEnded", "Parameters": [ { "Name": "playerWhoTriggered", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptHidden", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptShown", "Parameters": [ { "Name": "inputType", "Type": { "Category": "Enum", "Name": "ProximityPromptInputType" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TriggerEnded", "Parameters": [ { "Name": "playerWhoTriggered", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TriggerEndedActionReplicated", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Triggered", "Parameters": [ { "Name": "playerWhoTriggered", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TriggeredActionReplicated", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ProximityPrompt", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "16", "MemberType": "Property", "Name": "MaxPromptsVisible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Event", "Name": "PromptButtonHoldBegan", "Parameters": [ { "Name": "prompt", "Type": { "Category": "Class", "Name": "ProximityPrompt" } }, { "Name": "playerWhoTriggered", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptButtonHoldEnded", "Parameters": [ { "Name": "prompt", "Type": { "Category": "Class", "Name": "ProximityPrompt" } }, { "Name": "playerWhoTriggered", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptHidden", "Parameters": [ { "Name": "prompt", "Type": { "Category": "Class", "Name": "ProximityPrompt" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptShown", "Parameters": [ { "Name": "prompt", "Type": { "Category": "Class", "Name": "ProximityPrompt" } }, { "Name": "inputType", "Type": { "Category": "Enum", "Name": "ProximityPromptInputType" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptTriggerEnded", "Parameters": [ { "Name": "prompt", "Type": { "Category": "Class", "Name": "ProximityPrompt" } }, { "Name": "playerWhoTriggered", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptTriggered", "Parameters": [ { "Name": "prompt", "Type": { "Category": "Class", "Name": "ProximityPrompt" } }, { "Name": "playerWhoTriggered", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ProximityPromptService", "Superclass": "Instance", "Tags": [ "Service", "NotBrowsable" ] }, { "Members": [ { "MemberType": "Function", "Name": "PublishDescendantAssets", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CreateAssetAndWaitForAssetId", "Parameters": [ { "Name": "instances", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "operationId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "creatorId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "assetType", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "description", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PublishCageMeshAsync", "Parameters": [ { "Name": "wrap", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "cageType", "Type": { "Category": "Enum", "Name": "CageType" } } ], "ReturnType": { "Category": "DataType", "Name": "Content" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "PublishService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "AddGlobalPointsField", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddGlobalPointsTag", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DEPRECATED_TrackEvent", "Parameters": [ { "Name": "category", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "action", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "label", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "0", "Name": "value", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DEPRECATED_TrackEventWithArgs", "Parameters": [ { "Name": "category", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "action", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "label", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "args", "Type": { "Category": "Group", "Name": "Dictionary" } }, { "Default": "0", "Name": "value", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetClientId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPlaySessionId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSessionId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReleaseRBXEventStream", "Parameters": [ { "Name": "target", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveGlobalPointsField", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveGlobalPointsTag", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReportCounter", "Parameters": [ { "Name": "counterName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "1", "Name": "amount", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReportInfluxSeries", "Parameters": [ { "Name": "seriesName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "points", "Type": { "Category": "Group", "Name": "Dictionary" } }, { "Name": "throttlingPercentage", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReportStats", "Parameters": [ { "Name": "category", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReportToDiagByCountryCode", "Parameters": [ { "Name": "featureName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "measureName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "seconds", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendEventDeferred", "Parameters": [ { "Name": "target", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventContext", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "additionalArgs", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendEventImmediately", "Parameters": [ { "Name": "target", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventContext", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "additionalArgs", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetRBXEvent", "Parameters": [ { "Name": "target", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventContext", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "additionalArgs", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetRBXEventStream", "Parameters": [ { "Name": "target", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventContext", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "eventName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "additionalArgs", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TrackEvent", "Parameters": [ { "Name": "category", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "action", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "label", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "0", "Name": "value", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TrackEventWithArgs", "Parameters": [ { "Name": "category", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "action", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "label", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "args", "Type": { "Category": "Group", "Name": "Dictionary" } }, { "Default": "0", "Name": "value", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UpdateHeartbeatObject", "Parameters": [ { "Name": "args", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RbxAnalyticsService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadata", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadataCallbacks", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadataClasses", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadataEnums", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadataEvents", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadataFunctions", "Superclass": "Instance" }, { "Members": [ { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Browsable", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ClassCategory", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ClientOnly", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Constraint", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Deprecated", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EditingDisabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EditorType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FFlag", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsBackend", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PropertyOrder", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ScriptContext", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ServerOnly", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SliderScaling", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UIMaximum", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UIMinimum", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Reflection", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UINumTicks", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } } ], "MemoryCategory": "Instances", "Name": "ReflectionMetadataItem", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Reflection", "Default": "0", "MemberType": "Property", "Name": "ExplorerImageIndex", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Reflection", "Default": "2147483647", "MemberType": "Property", "Name": "ExplorerOrder", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Reflection", "Default": "true", "MemberType": "Property", "Name": "Insertable", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Reflection", "Default": "", "MemberType": "Property", "Name": "PreferredParent", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Reflection", "Default": "Always", "MemberType": "Property", "Name": "ServiceVisibility", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ServiceVisibility" } } ], "MemoryCategory": "Instances", "Name": "ReflectionMetadataClass", "Superclass": "ReflectionMetadataItem" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadataEnum", "Superclass": "ReflectionMetadataItem" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadataEnumItem", "Superclass": "ReflectionMetadataItem" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadataMember", "Superclass": "ReflectionMetadataItem" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadataProperties", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReflectionMetadataYieldFunctions", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Event", "Name": "BroadcastRemoteCursorPositions", "Parameters": [ { "Name": "script", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "remoteCursorPosition", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestAllRemoteCursorPositionForScript", "Parameters": [ { "Name": "script", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UpdateClientRemoteCursorPosition", "Parameters": [ { "Name": "script", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "remoteCursorPosition", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RemoteCursorService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "RemoteDebuggerServer", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "FireAllClients", "Parameters": [ { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FireClient", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FireServer", "Parameters": [ { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnClientEvent", "Parameters": [ { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnServerEvent", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RemoteEvent", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "InvokeClient", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InvokeServer", "Parameters": [ { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteOnInvokeClient", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteOnInvokeError", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "arguments", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteOnInvokeServer", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoteOnInvokeSuccess", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "OnClientInvoke", "Parameters": [ { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "OnServerInvoke", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } }, { "Name": "arguments", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RemoteFunction", "Superclass": "Instance" }, { "Members": [ { "Category": "Debug", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AutoFRMLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Performance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EagerBulkExecution", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Performance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EditQualityLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "QualityLevel" } }, { "Category": "Debug", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EnableFRM", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "General", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ExportMergeByMaterial", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "General", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FrameRateManager", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FramerateManagerMode" } }, { "Category": "General", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GraphicsMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "GraphicsMode" } }, { "Category": "Cache", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MeshCacheSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Debug", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MeshPartDetailLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "MeshPartDetailLevel" } }, { "Category": "Performance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "QualityLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "QualityLevel" } }, { "Category": "Debug", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ReloadAssets", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Debug", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RenderCSGTrianglesDebug", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Debug", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ShowBoundingBoxes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Debug", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ViewMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ViewMode" } }, { "MemberType": "Function", "Name": "GetMaxQualityLevel", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RenderSettings", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotBrowsable" ] }, { "Members": [ { "Category": "RenderingTest", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "RenderingTest", "Default": "10", "MemberType": "Property", "Name": "ComparisonDiffThreshold", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "RenderingTest", "Default": "psnr", "MemberType": "Property", "Name": "ComparisonMethod", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RenderingTestComparisonMethod" } }, { "Category": "RenderingTest", "Default": "50", "MemberType": "Property", "Name": "ComparisonPsnrThreshold", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "RenderingTest", "Default": "", "MemberType": "Property", "Name": "Description", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "RenderingTest", "Default": "70", "MemberType": "Property", "Name": "FieldOfView", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "RenderingTest", "Default": "-0, 0, 0", "MemberType": "Property", "Name": "Orientation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "RenderingTest", "Default": "false", "MemberType": "Property", "Name": "PerfTest", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "RenderingTest", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "RenderingTest", "Default": "21", "MemberType": "Property", "Name": "QualityLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "RenderingTest", "Default": "false", "MemberType": "Property", "Name": "ShouldSkip", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "RenderingTest", "Default": "", "MemberType": "Property", "Name": "Ticket", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "RenderingTest", "Default": "10", "MemberType": "Property", "Name": "Timeout", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "RenderdocTriggerCapture", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RenderingTest", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "IsDefaultLoadingGuiRemoved", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsFinishedReplicating", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveDefaultLoadingScreen", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetDefaultLoadingGuiRemoved", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DefaultLoadingGuiRemoved", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FinishedReplicating", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RemoveDefaultLoadingGuiSignal", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ReplicatedFirst", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ReplicatedStorage", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "RobloxPluginGuiService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "RobloxReplicatedStorage", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotBrowsable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "RobloxServerStorage", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "EndRemoteRomarkTest", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RomarkEndOfTest", "Parameters": [], "Security": "RobloxScriptSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RomarkService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Length", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ValuesAndTimes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "MemberType": "Function", "Name": "GetKeyAtIndex", "Parameters": [ { "Name": "index", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "RotationCurveKey" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetKeyIndicesAtTime", "Parameters": [ { "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetKeys", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetValueAtTime", "Parameters": [ { "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "DataType", "Name": "CoordinateFrame?" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertKey", "Parameters": [ { "Name": "key", "Type": { "Category": "DataType", "Name": "RotationCurveKey" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveKeyAtIndex", "Parameters": [ { "Name": "startingIndex", "Type": { "Category": "Primitive", "Name": "int" } }, { "Default": "1", "Name": "count", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetKeys", "Parameters": [ { "Name": "keys", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RotationCurve", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "RtMessagingService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ClientGitHash", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "BindToRenderStep", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "priority", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "function", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCoreScriptVersion", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRobloxClientChannel", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRobloxVersion", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsClient", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "IsEdit", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "PluginSecurity", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "IsRunMode", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "IsRunning", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsServer", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "IsStudio", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "Pause", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Reset", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Run", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Set3dRenderingEnabled", "Parameters": [ { "Name": "enable", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetRobloxGuiFocused", "Parameters": [ { "Name": "focus", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Stop", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnbindFromRenderStep", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "setThrottleFramerateEnabled", "Parameters": [ { "Name": "enable", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Heartbeat", "Parameters": [ { "Name": "deltaTime", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PostSimulation", "Parameters": [ { "Name": "deltaTimeSim", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PreAnimation", "Parameters": [ { "Name": "deltaTimeSim", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PreRender", "Parameters": [ { "Name": "deltaTimeRender", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PreSimulation", "Parameters": [ { "Name": "deltaTimeSim", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RenderStepped", "Parameters": [ { "Name": "deltaTime", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Stepped", "Parameters": [ { "Name": "time", "Type": { "Category": "Primitive", "Name": "double" } }, { "Name": "deltaTime", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RunService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "RuntimeScriptService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "TakeScreenshot", "Parameters": [ { "Name": "screenshotOptions", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FSTriggeredSignal", "Parameters": [ { "Name": "requestId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "playerId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "mac", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "args", "Type": { "Category": "Group", "Name": "Tuple" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScreenshotContentReady", "Parameters": [ { "Name": "screenshotJobId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "contentId", "Type": { "Category": "DataType", "Name": "Content" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScreenshotUploaded", "Parameters": [ { "Name": "screenshotJobId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "screenshotId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "SafetyService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CameraButtonIcon", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CameraButtonPosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CloseButtonPosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CloseWhenScreenshotTaken", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ExperienceNameOverlayEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "OverlayFont", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Font" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UsernameOverlayEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Visible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "ScreenshotHud", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ScriptBuilder", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "CoreScript", "MemberType": "Property", "Name": "CompileTarget", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "CompileTarget" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "CoverageInfo", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "DebugInfo", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "PackAsSource", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "RawBytecode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Deprecated", { "PreferredDescriptorName": "CompileTarget", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "SyncScriptBuilder", "Superclass": "ScriptBuilder", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Event", "Name": "ScriptAdded", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "LuaSourceContainer" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptBeingRemoved", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "LuaSourceContainer" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptChanged", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "LuaSourceContainer" } }, { "Name": "property", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptFullNameChanged", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "LuaSourceContainer" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptSourceChanged", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "LuaSourceContainer" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ScriptChangeService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ScriptCloneWatcher", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ScriptCloneWatcherHelper", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ScriptCommitService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "ScriptsDisabled", "Security": { "Read": "LocalUserSecurity", "Write": "LocalUserSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "AddCoreScriptLocal", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "parent", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClearScriptProfilingData", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DeserializeScriptProfilerString", "Parameters": [ { "Name": "jsonString", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "Tags": [ "CustomLuaState" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCoverageStats", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SaveScriptProfilingData", "Parameters": [ { "Name": "filename", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTimeout", "Parameters": [ { "Name": "seconds", "Type": { "Category": "Primitive", "Name": "double" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartScriptProfiling", "Parameters": [ { "Name": "frequency", "Type": { "Category": "Primitive", "Name": "int?" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StopScriptProfiling", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Error", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "stackTrace", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ErrorDetailed", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "stackTrace", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "details", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "securityLevel", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ScriptContext", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "CoreScriptIdentifier", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "CurrentLine", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "IsDebugging", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "IsPaused", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Script", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ScriptGuid", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "AddWatch", "Parameters": [ { "Name": "expression", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBreakpoints", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGlobals", "Parameters": [ { "Default": "0", "Name": "stackFrame", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Map" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetLocals", "Parameters": [ { "Default": "0", "Name": "stackFrame", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Map" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetStack", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUpvalues", "Parameters": [ { "Default": "0", "Name": "stackFrame", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Map" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetWatchValue", "Parameters": [ { "Name": "watch", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetWatches", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetBreakpoint", "Parameters": [ { "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "isContextDependentBreakpoint", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetGlobal", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } }, { "Name": "stackFrame", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetLocal", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } }, { "Default": "0", "Name": "stackFrame", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetUpvalue", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } }, { "Default": "0", "Name": "stackFrame", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BreakpointAdded", "Parameters": [ { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BreakpointRemoved", "Parameters": [ { "Name": "breakpoint", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "EncounteredBreak", "Parameters": [ { "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "breakReason", "Type": { "Category": "Enum", "Name": "BreakReason" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Resuming", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "WatchAdded", "Parameters": [ { "Name": "watch", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "WatchRemoved", "Parameters": [ { "Name": "watch", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ScriptDebugger", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetInternalUri", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetLine", "Parameters": [ { "Default": "nil", "Name": "lineIndex", "Type": { "Category": "Primitive", "Name": "int?" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetLineCount", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetScript", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "LuaSourceContainer" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSelectedText", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSelection", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSelectionEnd", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSelectionStart", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetText", "Parameters": [ { "Default": "nil", "Name": "startLine", "Type": { "Category": "Primitive", "Name": "int?" } }, { "Default": "nil", "Name": "startCharacter", "Type": { "Category": "Primitive", "Name": "int?" } }, { "Default": "nil", "Name": "endLine", "Type": { "Category": "Primitive", "Name": "int?" } }, { "Default": "nil", "Name": "endCharacter", "Type": { "Category": "Primitive", "Name": "int?" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetViewport", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HasSelectedText", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsCommandBar", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CloseAsync", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "EditTextAsync", "Parameters": [ { "Name": "newText", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "startLine", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "startCharacter", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "endLine", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "endCharacter", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ForceSetSelectionAsync", "Parameters": [ { "Name": "cursorLine", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "cursorCharacter", "Type": { "Category": "Primitive", "Name": "int" } }, { "Default": "nil", "Name": "anchorLine", "Type": { "Category": "Primitive", "Name": "int?" } }, { "Default": "nil", "Name": "anchorCharacter", "Type": { "Category": "Primitive", "Name": "int?" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestSetSelectionAsync", "Parameters": [ { "Name": "cursorLine", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "cursorCharacter", "Type": { "Category": "Primitive", "Name": "int" } }, { "Default": "nil", "Name": "anchorLine", "Type": { "Category": "Primitive", "Name": "int?" } }, { "Default": "nil", "Name": "anchorCharacter", "Type": { "Category": "Primitive", "Name": "int?" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SelectionChanged", "Parameters": [ { "Name": "positionLine", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "positionCharacter", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "anchorLine", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "anchorCharacter", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ViewportChanged", "Parameters": [ { "Name": "startLine", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "endLine", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ScriptDocument", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "DeregisterAutocompleteCallback", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DeregisterScriptAnalysisCallback", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FindScriptDocument", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "LuaSourceContainer" } } ], "ReturnType": { "Category": "Class", "Name": "ScriptDocument" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ForceReloadSource", "Parameters": [ { "Name": "uri", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "newsrc", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetEditorSource", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "LuaSourceContainer" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetScriptDocuments", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterAutocompleteCallback", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "priority", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "callbackFunction", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterScriptAnalysisCallback", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "priority", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "callbackFunction", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenScriptDocumentAsync", "Parameters": [ { "Name": "script", "Type": { "Category": "Class", "Name": "LuaSourceContainer" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TextDocumentDidChange", "Parameters": [ { "Name": "document", "Type": { "Category": "Class", "Name": "ScriptDocument" } }, { "Name": "changesArray", "Type": { "Category": "Group", "Name": "Variant" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TextDocumentDidClose", "Parameters": [ { "Name": "oldDocument", "Type": { "Category": "Class", "Name": "ScriptDocument" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TextDocumentDidOpen", "Parameters": [ { "Name": "newDocument", "Type": { "Category": "Class", "Name": "ScriptDocument" } } ], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ScriptEditorService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetSourceContainerByScriptGuid", "Parameters": [ { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "LuaSourceContainer" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ScriptRegistrationService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ScriptRuntime", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ScriptService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ActiveInstance", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RenderMode", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SelectionRenderMode" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionBoxThickness", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionLineThickness", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SelectionThickness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ShowActiveInstanceHighlight", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "Add", "Parameters": [ { "Name": "instancesToAdd", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClearTerrainSelectionHack", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Get", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Remove", "Parameters": [ { "Name": "instancesToRemove", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Set", "Parameters": [ { "Name": "selection", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTerrainSelectionHack", "Parameters": [ { "Name": "center", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SelectionChanged", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Selection", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "SelectionHighlightManager", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Settings", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UpdateType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SensorUpdateType" } }, { "MemberType": "Function", "Name": "Sense", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnSensorOutputChanged", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "SensorBase", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Output", "Default": "false", "MemberType": "Property", "Name": "FullySubmerged", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Output", "Default": "false", "MemberType": "Property", "Name": "TouchingSurface", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "BuoyancySensor", "Superclass": "SensorBase", "Tags": [ "NotBrowsable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ControllerSensor", "Superclass": "SensorBase", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Output", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "HitFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Output", "Default": "0, 0, 0", "MemberType": "Property", "Name": "HitNormal", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Input", "Default": "0", "MemberType": "Property", "Name": "SearchDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Output", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "SensedPart", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Input", "Default": "Floor", "MemberType": "Property", "Name": "SensorMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SensorMode" } } ], "MemoryCategory": "Instances", "Name": "ControllerPartSensor", "Superclass": "ControllerSensor", "Tags": [ "NotBrowsable" ] }, { "Members": [ { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "LoadStringEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "ServerScriptService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ServerStorage", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "FindService", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "GetService", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "getService", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetService", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "service", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "GetService", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Close", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CloseLate", "Parameters": [], "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServiceAdded", "Parameters": [ { "Name": "service", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServiceRemoving", "Parameters": [ { "Name": "service", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ServiceProvider", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CreatorId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CreatorType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "CreatorType" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ForceR15", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GameAvatarType", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "GameAvatarType" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GameId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GearGenreSetting", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "GearGenreSetting" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Genre", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Genre" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsSFFlagsLoaded", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "JobInfo", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "JobId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PlaceId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PlaceVersion", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PrivateServerId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PrivateServerOwnerId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "R15CollisionType", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "R15CollisionType" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VIPServerId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "PrivateServerId", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VIPServerOwnerId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "PrivateServerOwnerId", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Workspace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Workspace" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "lighting", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "workspace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "Workspace", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Workspace" } }, { "MemberType": "Function", "Name": "BindToClose", "Parameters": [ { "Name": "function", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DefineFastFlag", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "defaultValue", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DefineFastInt", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "defaultValue", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "DefineFastString", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "defaultValue", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetEngineFeature", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFastFlag", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFastInt", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFastString", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetJobsInfo", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMessage", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetObjects", "Parameters": [ { "Name": "url", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetObjectsAllOrNone", "Parameters": [ { "Name": "url", "Type": { "Category": "DataType", "Name": "Content" } }, { "Default": "false", "Name": "binaryFormatOnly", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetObjectsList", "Parameters": [ { "Name": "urls", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPlaySessionId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRemoteBuildMode", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsContentLoaded", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsGearTypeAllowed", "Parameters": [ { "Name": "gearType", "Type": { "Category": "Enum", "Name": "GearType" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsLoaded", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsUniverseMetadataLoaded", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Load", "Parameters": [ { "Name": "url", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenScreenshotsFolder", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenVideosFolder", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReportInGoogleAnalytics", "Parameters": [ { "Name": "category", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "custom", "Name": "action", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "none", "Name": "label", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "0", "Name": "value", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetFastFlagForTesting", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "newValue", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetFastIntForTesting", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "newValue", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetFastStringForTesting", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "newValue", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetFlagVersion", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "version", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetIsLoaded", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "placeSizeInBytes", "Type": { "Category": "Primitive", "Name": "int?" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPlaceId", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetUniverseId", "Parameters": [ { "Name": "universeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Shutdown", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetObjectsAsync", "Parameters": [ { "Name": "url", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HttpGetAsync", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "Default", "Name": "httpRequestType", "Type": { "Category": "Enum", "Name": "HttpRequestType" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HttpPostAsync", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "data", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "*/*", "Name": "contentType", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "Default", "Name": "httpRequestType", "Type": { "Category": "Enum", "Name": "HttpRequestType" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertObjectsAndJoinIfLegacyAsync", "Parameters": [ { "Name": "url", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SavePlace", "Parameters": [ { "Default": "SaveAll", "Name": "saveFilter", "Type": { "Category": "Enum", "Name": "SaveFilter" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields", "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "AllowedGearTypeChanged", "Parameters": [], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GraphicsQualityChangeRequest", "Parameters": [ { "Name": "betterQuality", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ItemChanged", "Parameters": [ { "Name": "object", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "descriptor", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Loaded", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScreenshotReady", "Parameters": [ { "Name": "path", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScreenshotSavedToAlbum", "Parameters": [ { "Name": "filename", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "success", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UniverseMetadataLoaded", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "OnClose", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "BindToClose", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DataModel", "Superclass": "ServiceProvider", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "GenericSettings", "Superclass": "ServiceProvider", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "AnalysticsSettings", "Superclass": "GenericSettings", "Tags": [ "NotCreatable" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetFFlag", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFVariable", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "GlobalSettings", "Superclass": "GenericSettings", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "MemberType": "Function", "Name": "IsUserFeatureEnabled", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Reset", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SaveState", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "UserSettings", "Superclass": "GenericSettings", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "HiddenServices", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Behavior", "Default": "", "MemberType": "Property", "Name": "VisibleServices", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } } ], "MemoryCategory": "Instances", "Name": "ServiceVisibilityService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetCreatedTimestampUtcMs", "Parameters": [ { "Name": "sid", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMetadata", "Parameters": [ { "Name": "sid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRootSID", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveMetadata", "Parameters": [ { "Name": "sid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveSession", "Parameters": [ { "Name": "sid", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RemoveSessionsWithMetadataKey", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReplaceSession", "Parameters": [ { "Name": "sid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SessionExists", "Parameters": [ { "Name": "sid", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMetadata", "Parameters": [ { "Name": "sid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetSession", "Parameters": [ { "Name": "parentSid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "childSid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "SessionService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetSharedTable", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "SharedTable" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Function", "Name": "SetSharedTable", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "st", "Type": { "Category": "DataType", "Name": "SharedTable?" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Safe" } ], "MemoryCategory": "Instances", "Name": "SharedTableRegistry", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "Cancel", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Start", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Status", "Parameters": [ { "Name": "progressRatio", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ShorelineUpgraderService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Appearance", "Default": "true", "MemberType": "Property", "Name": "CelestialBodiesShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "11", "MemberType": "Property", "Name": "MoonAngularSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "rbxasset://sky/moon.jpg", "MemberType": "Property", "Name": "MoonTextureId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "rbxasset://textures/sky/sky512_bk.tex", "MemberType": "Property", "Name": "SkyboxBk", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "rbxasset://textures/sky/sky512_dn.tex", "MemberType": "Property", "Name": "SkyboxDn", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "rbxasset://textures/sky/sky512_ft.tex", "MemberType": "Property", "Name": "SkyboxFt", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "rbxasset://textures/sky/sky512_lf.tex", "MemberType": "Property", "Name": "SkyboxLf", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "rbxasset://textures/sky/sky512_rt.tex", "MemberType": "Property", "Name": "SkyboxRt", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "rbxasset://textures/sky/sky512_up.tex", "MemberType": "Property", "Name": "SkyboxUp", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "3000", "MemberType": "Property", "Name": "StarCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Appearance", "Default": "21", "MemberType": "Property", "Name": "SunAngularSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "rbxasset://sky/sun.jpg", "MemberType": "Property", "Name": "SunTextureId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "Instances", "Name": "Sky", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "1, 1, 1", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "0.5", "MemberType": "Property", "Name": "Opacity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "RiseVelocity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "Size", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "TimeScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "0.5", "MemberType": "Property", "Name": "opacity_xml", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "riseVelocity_xml", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "size_xml", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "FastForward", "Parameters": [ { "Name": "numFrames", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Smoke", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "Cancel", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Start", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Status", "Parameters": [ { "Name": "progressRatio", "Type": { "Category": "Primitive", "Name": "float" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "SmoothVoxelsUpgraderService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "SnippetService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "HideSelfView", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InvokeGameInvitePromptClosed", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "recipientIds", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InvokeIrisInvite", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "irisParticipantIds", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InvokeIrisInvitePromptClosed", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptGameInvite", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "nil", "Name": "experienceInviteOptions", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptIrisInvite", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowSelfView", "Parameters": [ { "Default": "LastPosition", "Name": "selfViewPosition", "Type": { "Category": "Enum", "Name": "SelfViewPosition" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CanSendGameInviteAsync", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "0", "Name": "recipientId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CanSendIrisInviteAsync", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GameInvitePromptClosed", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "recipientIds", "Type": { "Category": "Group", "Name": "Array" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "IrisInviteInitiated", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "IrisInvitePromptClosed", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptInviteRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "experienceInviteOptions", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptIrisInviteRequested", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SelfViewHidden", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SelfViewVisible", "Parameters": [ { "Name": "selfViewPosition", "Type": { "Category": "Enum", "Name": "SelfViewPosition" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "OnIrisInviteInvoked", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "irisParticipantIds", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "SocialService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Asset", "Default": "0", "MemberType": "Property", "Name": "ChannelCount", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "NotBrowsable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "10", "MemberType": "Property", "Name": "EmitterSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Deprecated", { "PreferredDescriptorName": "RollOffMinDistance", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Asset", "Default": "false", "MemberType": "Property", "Name": "IsLoaded", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Playback", "Default": "true", "MemberType": "Property", "Name": "IsPaused", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "IsPlaying", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "IsSpatial", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Regions", "Default": "0 60000 ", "MemberType": "Property", "Name": "LoopRegion", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "Looped", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "10000", "MemberType": "Property", "Name": "MaxDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Deprecated", { "PreferredDescriptorName": "RollOffMaxDistance", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "10", "MemberType": "Property", "Name": "MinDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Deprecated", { "PreferredDescriptorName": "RollOffMinDistance", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "Pitch", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Deprecated", { "PreferredDescriptorName": "PlaybackSpeed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "PlayOnRemove", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Playback", "Default": "0", "MemberType": "Property", "Name": "PlaybackLoudness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Regions", "Default": "0 60000 ", "MemberType": "Property", "Name": "PlaybackRegion", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "PlaybackRegionsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Playback", "Default": "1", "MemberType": "Property", "Name": "PlaybackSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "Playing", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "PlayingReplicator", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Playback", "Default": "1", "MemberType": "Property", "Name": "RollOffGain", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Emitter", "Default": "10000", "MemberType": "Property", "Name": "RollOffMaxDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Emitter", "Default": "10", "MemberType": "Property", "Name": "RollOffMinDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Emitter", "Default": "Inverse", "MemberType": "Property", "Name": "RollOffMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RollOffMode" } }, { "Category": "Routing", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "SoundGroup", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "SoundGroup" } }, { "Category": "Asset", "Default": "", "MemberType": "Property", "Name": "SoundId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Asset", "Default": "0", "MemberType": "Property", "Name": "TimeLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Playback", "Default": "0", "MemberType": "Property", "Name": "TimePosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "TimePositionReplicator", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Behavior", "Default": "Default", "MemberType": "Property", "Name": "UsageContextPermission", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "UsageContext" } }, { "Category": "Playback", "Default": "0.5", "MemberType": "Property", "Name": "Volume", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "isPlaying", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "IsPlaying", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "10000", "MemberType": "Property", "Name": "xmlRead_MaxDistance_3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "10", "MemberType": "Property", "Name": "xmlRead_MinDistance_3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "Pause", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Play", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Resume", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Stop", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "pause", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Pause", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "play", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Play", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "stop", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Stop", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DidLoop", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "numOfTimesLooped", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Ended", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Loaded", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Paused", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Played", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayingUpdatedFromClient", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayingUpdatedFromServer", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Resumed", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Stopped", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TimePositionUpdatedFromClient", "Parameters": [ { "Name": "newPositionSeconds", "Type": { "Category": "Primitive", "Name": "double" } }, { "Name": "lastLuaSetTimePosition", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TimePositionUpdatedFromServer", "Parameters": [ { "Name": "newPositionSeconds", "Type": { "Category": "Primitive", "Name": "double" } }, { "Name": "lastLuaSetTimePosition", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "playbackActionSync", "Parameters": [ { "Name": "action", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Internal", "Name": "Sound", "Superclass": "Instance" }, { "Members": [ { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Priority", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } } ], "MemoryCategory": "Instances", "Name": "SoundEffect", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "State", "Default": "0.150000006", "MemberType": "Property", "Name": "Depth", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.5", "MemberType": "Property", "Name": "Mix", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.5", "MemberType": "Property", "Name": "Rate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "ChorusSoundEffect", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "0.100000001", "MemberType": "Property", "Name": "Attack", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "GainMakeup", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "40", "MemberType": "Property", "Name": "Ratio", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.100000001", "MemberType": "Property", "Name": "Release", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "SideChain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "State", "Default": "-40", "MemberType": "Property", "Name": "Threshold", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "CompressorSoundEffect", "Superclass": "SoundEffect" }, { "Members": [], "MemoryCategory": "Instances", "Name": "CustomSoundEffect", "Superclass": "SoundEffect", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "AssetSoundEffect", "Superclass": "CustomSoundEffect", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Channel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } } ], "MemoryCategory": "Instances", "Name": "ChannelSelectorSoundEffect", "Superclass": "CustomSoundEffect", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "State", "Default": "0.75", "MemberType": "Property", "Name": "Level", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "DistortionSoundEffect", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Delay", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "DryLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.5", "MemberType": "Property", "Name": "Feedback", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "WetLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "EchoSoundEffect", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "HighGain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "-20", "MemberType": "Property", "Name": "LowGain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "-10", "MemberType": "Property", "Name": "MidGain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "EqualizerSoundEffect", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "HighGain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "LowGain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "MidGain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "400 400 ", "MemberType": "Property", "Name": "MidRange", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } } ], "MemoryCategory": "Instances", "Name": "AudioEqualizer", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "0.449999988", "MemberType": "Property", "Name": "Depth", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.850000024", "MemberType": "Property", "Name": "Mix", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "5", "MemberType": "Property", "Name": "Rate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "FlangeSoundEffect", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "1.25", "MemberType": "Property", "Name": "Octave", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "PitchShiftSoundEffect", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "1.25", "MemberType": "Property", "Name": "Pitch", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "Medium", "MemberType": "Property", "Name": "WindowSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AudioWindowSize" } } ], "MemoryCategory": "Instances", "Name": "AudioPitchShifter", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "Asset", "Default": "0", "MemberType": "Property", "Name": "ChannelCount", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "NotBrowsable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Asset", "Default": "false", "MemberType": "Property", "Name": "IsLoaded", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Playback", "Default": "true", "MemberType": "Property", "Name": "IsPaused", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "IsPlaying", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "IsSpatial", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Regions", "Default": "0 60000 ", "MemberType": "Property", "Name": "LoopRegion", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "Looping", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Regions", "Default": "0 60000 ", "MemberType": "Property", "Name": "PlaybackRegion", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "PlaybackRegionsEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Playback", "Default": "1", "MemberType": "Property", "Name": "PlaybackSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "Playing", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "PlayingReplicator", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Asset", "Default": "", "MemberType": "Property", "Name": "Asset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Asset", "Default": "0", "MemberType": "Property", "Name": "TimeLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Playback", "Default": "0", "MemberType": "Property", "Name": "TimePosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "TimePositionReplicator", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Behavior", "Default": "Default", "MemberType": "Property", "Name": "UsageContextPermission", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "UsageContext" } }, { "Category": "Playback", "Default": "1", "MemberType": "Property", "Name": "Volume", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "isPlaying", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated", { "PreferredDescriptorName": "IsPlaying", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "10000", "MemberType": "Property", "Name": "xmlRead_MaxDistance_3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "10", "MemberType": "Property", "Name": "xmlRead_MinDistance_3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "Pause", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Play", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Resume", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Stop", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "pause", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Pause", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "play", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Play", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "stop", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Stop", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DidLoop", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "numOfTimesLooped", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Ended", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Loaded", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Paused", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Played", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayingUpdatedFromClient", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayingUpdatedFromServer", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Resumed", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Stopped", "Parameters": [ { "Name": "soundId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TimePositionUpdatedFromClient", "Parameters": [ { "Name": "newPositionSeconds", "Type": { "Category": "Primitive", "Name": "double" } }, { "Name": "lastLuaSetTimePosition", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TimePositionUpdatedFromServer", "Parameters": [ { "Name": "newPositionSeconds", "Type": { "Category": "Primitive", "Name": "double" } }, { "Name": "lastLuaSetTimePosition", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "IsReady", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Event", "Name": "playbackActionSync", "Parameters": [ { "Name": "action", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Internal", "Name": "AudioPlayer", "Superclass": "Instance" }, { "Members": [ { "Category": "Connections", "Default": "false", "MemberType": "Property", "Name": "Connected", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Connections", "MemberType": "Property", "Name": "SourceInstance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Connections", "MemberType": "Property", "Name": "TargetInstance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Connections", "MemberType": "Property", "Name": "SourceName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Connections", "MemberType": "Property", "Name": "TargetName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "Wire", "Superclass": "Instance" }, { "Members": [ { "Category": "State", "Default": "Medium", "MemberType": "Property", "Name": "Layout", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AudioChannelLayout" } } ], "MemoryCategory": "Instances", "Name": "AudioChannelMixer", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "Medium", "MemberType": "Property", "Name": "Layout", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AudioChannelLayout" } } ], "MemoryCategory": "Instances", "Name": "AudioChannelSplitter", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "DelayTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "DryLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.5", "MemberType": "Property", "Name": "Feedback", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "RampTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "WetLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioEcho", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "0.45", "MemberType": "Property", "Name": "Depth", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.85", "MemberType": "Property", "Name": "Mix", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "5", "MemberType": "Property", "Name": "Rate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioFlanger", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "MaxLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.01", "MemberType": "Property", "Name": "Release", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioLimiter", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "Interactions", "Default": "", "MemberType": "Property", "Name": "AudioInteractionGroup", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "AcousticSimulationEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Listening", "Default": "false", "MemberType": "Property", "Name": "AngleAttenuation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Listening", "Default": "false", "MemberType": "Property", "Name": "DistanceAttenuation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } } ], "MemoryCategory": "Instances", "Name": "AudioListener", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "PositionOverride", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Interactions", "Default": "", "MemberType": "Property", "Name": "AudioInteractionGroup", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "AcousticSimulationEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Emission", "Default": "false", "MemberType": "Property", "Name": "AngleAttenuation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Emission", "Default": "false", "MemberType": "Property", "Name": "DistanceAttenuation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } } ], "MemoryCategory": "Instances", "Name": "AudioEmitter", "Superclass": "Instance" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "0.45", "MemberType": "Property", "Name": "Depth", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.85", "MemberType": "Property", "Name": "Mix", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "5", "MemberType": "Property", "Name": "Rate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioChorus", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "0.5", "MemberType": "Property", "Name": "DecayRatio", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "1.5", "MemberType": "Property", "Name": "DecayTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Density", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Diffusion", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "DryLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.02", "MemberType": "Property", "Name": "EarlyDelayTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "20000", "MemberType": "Property", "Name": "HighCutFrequency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.04", "MemberType": "Property", "Name": "LastDelayTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "250", "MemberType": "Property", "Name": "LowShelfFrequency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "LowShelfGain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "5000", "MemberType": "Property", "Name": "ReferenceFrequency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "-6", "MemberType": "Property", "Name": "WetLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioReverb", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "0.01", "MemberType": "Property", "Name": "Attack", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.1", "MemberType": "Property", "Name": "Release", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "-36 -24 ", "MemberType": "Property", "Name": "Threshold", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } } ], "MemoryCategory": "Instances", "Name": "AudioGate", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "Asset", "Default": "false", "MemberType": "Property", "Name": "IsLoaded", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Asset", "Default": "0", "MemberType": "Property", "Name": "Pitch", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Asset", "Default": "1", "MemberType": "Property", "Name": "Speed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "", "MemberType": "Property", "Name": "Text", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "", "MemberType": "Property", "Name": "TimeLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "State", "Default": "", "MemberType": "Property", "Name": "VoiceId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "IsPlaying", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Playback", "Default": "false", "MemberType": "Property", "Name": "Looping", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Asset", "Default": "1", "MemberType": "Property", "Name": "PlaybackSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Asset", "Default": "0", "MemberType": "Property", "Name": "TimePosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Volume", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioTextToSpeech", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Depth", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.5", "MemberType": "Property", "Name": "Duty", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "5", "MemberType": "Property", "Name": "Frequency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "Shape", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "Skew", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "Square", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioTremolo", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "0.1", "MemberType": "Property", "Name": "Attack", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "MakeupGain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "40", "MemberType": "Property", "Name": "Ratio", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.1", "MemberType": "Property", "Name": "Release", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "-40", "MemberType": "Property", "Name": "Threshold", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioCompressor", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Volume", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioFader", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "2000", "MemberType": "Property", "Name": "Frequency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "Gain", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.707", "MemberType": "Property", "Name": "Q", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "Medium", "MemberType": "Property", "Name": "FilterType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AudioFilterType" } } ], "MemoryCategory": "Instances", "Name": "AudioFilter", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "Recording", "Default": "true", "MemberType": "Property", "Name": "Active", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Recording", "Default": "false", "MemberType": "Property", "Name": "IsReady", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Recording", "Default": "false", "MemberType": "Property", "Name": "Muted", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Recording", "Default": "false", "MemberType": "Property", "Name": "MutedByLocalUser", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Recording", "MemberType": "Property", "Name": "Player", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Player" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Volume", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioDeviceInput", "Superclass": "Instance" }, { "Members": [ { "Category": "State", "MemberType": "Property", "Name": "Player", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Player" } } ], "MemoryCategory": "Instances", "Name": "AudioDeviceOutput", "Superclass": "Instance" }, { "Members": [ { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "Bypass", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "0.5", "MemberType": "Property", "Name": "Level", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "AudioDistortion", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "Metering", "Default": "true", "MemberType": "Property", "Name": "SpectrumEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Metering", "Default": "0", "MemberType": "Property", "Name": "PeakLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Metering", "Default": "0", "MemberType": "Property", "Name": "RmsLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "State", "Default": "Medium", "MemberType": "Property", "Name": "WindowSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AudioWindowSize" } } ], "MemoryCategory": "Instances", "Name": "AudioAnalyzer", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "1.5", "MemberType": "Property", "Name": "DecayTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Density", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Diffusion", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "-6", "MemberType": "Property", "Name": "DryLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0", "MemberType": "Property", "Name": "WetLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "ReverbSoundEffect", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "1", "MemberType": "Property", "Name": "Depth", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "0.5", "MemberType": "Property", "Name": "Duty", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "State", "Default": "5", "MemberType": "Property", "Name": "Frequency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "TremoloSoundEffect", "Superclass": "SoundEffect" }, { "Members": [ { "Category": "State", "Default": "0.5", "MemberType": "Property", "Name": "Volume", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Internal", "Name": "SoundGroup", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "NoReverb", "MemberType": "Property", "Name": "AmbientReverb", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ReverbType" } }, { "Category": "Data", "Default": "3.32999992", "MemberType": "Property", "Name": "DistanceFactor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "DopplerScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "RespectFilteringEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "RolloffScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "Automatic", "MemberType": "Property", "Name": "VolumetricAudio", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "VolumetricAudio" } }, { "MemberType": "Function", "Name": "BeginRecording", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetInputDevice", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetInputDevices", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetListener", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetOutputDevice", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetOutputDevices", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSoundMemoryData", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PlayLocalSound", "Parameters": [ { "Name": "sound", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetInputDevice", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetListener", "Parameters": [ { "Name": "listenerType", "Type": { "Category": "Enum", "Name": "ListenerType" } }, { "Name": "listener", "Type": { "Category": "Group", "Name": "Tuple" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetOutputDevice", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetRecordingDevice", "Parameters": [ { "Name": "deviceIndex", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "EndRecording", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRecordingDevices", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ClientLoggedEvent", "Parameters": [ { "Name": "sessionIdRaw", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DeviceListChanged", "Parameters": [ { "Name": "newDevices", "Type": { "Category": "Group", "Name": "Tuple" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "SoundService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "1, 1, 1", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "0.564706, 0.0980392, 1", "MemberType": "Property", "Name": "SparkleColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "TimeScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "FastForward", "Parameters": [ { "Name": "numFrames", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Sparkles", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "SpawnerService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FrameId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FrameName", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FrameType", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DebuggerFrameType" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Globals", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "DebuggerVariable" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Line", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Locals", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "DebuggerVariable" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Populated", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Script", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Upvalues", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "DebuggerVariable" } } ], "MemoryCategory": "Instances", "Name": "StackFrame", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "StandalonePluginScripts", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "StarterGear", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "StarterPack", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Character", "Default": "true", "MemberType": "Property", "Name": "AllowCustomAnimations", "Security": { "Read": "None", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Mobile", "Default": "true", "MemberType": "Property", "Name": "AutoJumpEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Character", "Default": "", "MemberType": "Property", "Name": "AvatarJointUpgrade", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotBrowsable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AvatarJointUpgrade" } }, { "Category": "Camera", "Default": "400", "MemberType": "Property", "Name": "CameraMaxZoomDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "0.5", "MemberType": "Property", "Name": "CameraMinZoomDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "Classic", "MemberType": "Property", "Name": "CameraMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "CameraMode" } }, { "Category": "Character Jump Settings", "Default": "7.19999981", "MemberType": "Property", "Name": "CharacterJumpHeight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Character Jump Settings", "Default": "50", "MemberType": "Property", "Name": "CharacterJumpPower", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Character", "Default": "89", "MemberType": "Property", "Name": "CharacterMaxSlopeAngle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Character Jump Settings", "Default": "true", "MemberType": "Property", "Name": "CharacterUseJumpPower", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Character", "Default": "16", "MemberType": "Property", "Name": "CharacterWalkSpeed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Character", "Default": "Default", "MemberType": "Property", "Name": "DeathStyle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotBrowsable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DeathStyle" } }, { "Category": "Camera", "Default": "Zoom", "MemberType": "Property", "Name": "DevCameraOcclusionMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DevCameraOcclusionMode" } }, { "Category": "Camera", "Default": "UserChoice", "MemberType": "Property", "Name": "DevComputerCameraMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DevComputerCameraMovementMode" } }, { "Category": "Controls", "Default": "UserChoice", "MemberType": "Property", "Name": "DevComputerMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DevComputerMovementMode" } }, { "Category": "Camera", "Default": "UserChoice", "MemberType": "Property", "Name": "DevTouchCameraMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DevTouchCameraMovementMode" } }, { "Category": "Controls", "Default": "UserChoice", "MemberType": "Property", "Name": "DevTouchMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DevTouchMovementMode" } }, { "Category": "Character", "Default": "Default", "MemberType": "Property", "Name": "EnableDynamicHeads", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "LoadDynamicHeads" } }, { "Category": "Controls", "Default": "true", "MemberType": "Property", "Name": "EnableMouseLockOption", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Character", "Default": "0", "MemberType": "Property", "Name": "GameSettingsAssetIDFace", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Character", "Default": "0", "MemberType": "Property", "Name": "GameSettingsAssetIDHead", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Character", "Default": "0", "MemberType": "Property", "Name": "GameSettingsAssetIDLeftArm", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Character", "Default": "0", "MemberType": "Property", "Name": "GameSettingsAssetIDLeftLeg", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Character", "Default": "0", "MemberType": "Property", "Name": "GameSettingsAssetIDPants", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Character", "Default": "0", "MemberType": "Property", "Name": "GameSettingsAssetIDRightArm", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Character", "Default": "0", "MemberType": "Property", "Name": "GameSettingsAssetIDRightLeg", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Character", "Default": "0", "MemberType": "Property", "Name": "GameSettingsAssetIDShirt", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Character", "Default": "0", "MemberType": "Property", "Name": "GameSettingsAssetIDTeeShirt", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Character", "Default": "0", "MemberType": "Property", "Name": "GameSettingsAssetIDTorso", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Character", "Default": "R15", "MemberType": "Property", "Name": "GameSettingsAvatar", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "GameAvatarType" } }, { "Category": "Character", "Default": "OuterBox", "MemberType": "Property", "Name": "GameSettingsR15Collision", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "R15CollisionType" } }, { "Category": "Character", "Default": "0 1 ", "MemberType": "Property", "Name": "GameSettingsScaleRangeBodyType", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Character", "Default": "0.95 1 ", "MemberType": "Property", "Name": "GameSettingsScaleRangeHead", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Character", "Default": "0.9 1.05 ", "MemberType": "Property", "Name": "GameSettingsScaleRangeHeight", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Character", "Default": "0 1 ", "MemberType": "Property", "Name": "GameSettingsScaleRangeProportion", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Character", "Default": "0.7 1 ", "MemberType": "Property", "Name": "GameSettingsScaleRangeWidth", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberRange" } }, { "Category": "Data", "Default": "100", "MemberType": "Property", "Name": "HealthDisplayDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Controls", "Default": "Default", "MemberType": "Property", "Name": "HumanoidStateMachineMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotBrowsable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HumanoidStateMachineMode" } }, { "Category": "Character", "Default": "true", "MemberType": "Property", "Name": "LoadCharacterAppearance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Character", "Default": "Default", "MemberType": "Property", "Name": "LoadCharacterLayeredClothing", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "LoadCharacterLayeredClothing" } }, { "Category": "Character", "Default": "Default", "MemberType": "Property", "Name": "LoadCharacterLayeredClothing ", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "LoadCharacterLayeredClothing" } }, { "Category": "Data", "Default": "100", "MemberType": "Property", "Name": "NameDisplayDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Character", "Default": "true", "MemberType": "Property", "Name": "UserEmotesEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "ClearDefaults", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StarterPlayer", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "StarterPlayerScripts", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "StarterCharacterScripts", "Superclass": "StarterPlayerScripts", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ContactsCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DataReceiveKbps", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DataSendKbps", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HeartbeatTimeMs", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "InstanceCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MovingPrimitivesCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PhysicsReceiveKbps", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PhysicsSendKbps", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PhysicsStepTimeMs", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PrimitivesCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "GetBrowserTrackerId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMemoryUsageMbForTag", "Parameters": [ { "Name": "tag", "Type": { "Category": "Enum", "Name": "DeveloperMemoryTag" } } ], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTotalMemoryUsageMb", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPaginatedMemoryByTexture", "Parameters": [ { "Name": "queryType", "Type": { "Category": "Enum", "Name": "TextureQueryType" } }, { "Name": "pageIndex", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "pageSize", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Stats", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DisplayName", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "GetValue", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "double" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetValueString", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StatsItem", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "RunningAverageItemDouble", "Superclass": "StatsItem", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "RunningAverageItemInt", "Superclass": "StatsItem", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "RunningAverageTimeIntervalItem", "Superclass": "StatsItem", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "TotalCountTimeIntervalItem", "Superclass": "StatsItem", "Tags": [ "NotCreatable" ] }, { "Members": [ { "MemberType": "Function", "Name": "FinishTask", "Parameters": [ { "Name": "taskId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendReport", "Parameters": [ { "Name": "reportName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartTask", "Parameters": [ { "Name": "reportName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "taskName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StopWatchReporter", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "\"TODO\" Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "\"function\" Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "\"local\" Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "\"nil\" Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "\"self\" Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Active Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Active Hover Over Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "General", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Always Save Script Changes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Animate Hover Over", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Auto Clean Empty Line", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Auto Closing Brackets", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Auto Closing Quotes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Auto Delete Closing Brackets and Quotes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Auto Indent Rule", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AutoIndentRule" } }, { "Category": "Auto-Recovery", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Auto-Recovery Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Auto-Recovery", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Auto-Recovery Interval (Minutes)", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Auto-Recovery", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Auto-Recovery Path", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "QDir" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Automatically commit locked scripts when you save or publish to Roblox", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Automatically trigger AI Code Completion", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Background Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "General", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Basic Objects Display Mode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ListDisplayMode" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Bool Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Bracket Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Built-in Function Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Camera", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Camera Mouse Wheel Speed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Camera Pan Speed", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Camera Shift Speed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Camera Speed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Camera", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Camera Zoom to Mouse Position", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Output", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Clear Output On Start", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Lua Debugger", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CommandBarLocalState", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Comment Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Current Line Highlight Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Debugger Current Line Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Debugger Error Line Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Directories", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DefaultScriptFileDir", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "QDir" } }, { "Category": "Browsing", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DeprecatedObjectsShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "General", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DisplayLanguage", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Doc View Code Background Color", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Autocomplete", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Autocomplete Doc View", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Advanced", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable CoreScript Debugger", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Advanced", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Http Sandboxing", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Advanced", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Internal Beta Features", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Advanced", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Internal Features", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Script Analysis", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Scrollbar Markers", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Signature Help", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Signature Help Doc View", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Temporary Tabs", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Temporary Tabs In Explorer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Enable Type Hover", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EnableIndentationRulers", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "EnableOnTypeAutocomplete", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Error Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Find Selection Background Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Font", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "QFont" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Format On Paste", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Format On Type", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Function Name Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Highlight Current Line", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Highlight Occurances", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HintColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Hover Animate Speed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HoverAnimateSpeed" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Hover Box Thickness", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Hover Line Thickness", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Hover Over Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Directories", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IconOverrideDir", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "QDir" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Indent Using Spaces", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IndentationRulerColor", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "InformationColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Keyword Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Primary Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Line Thickness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Directories", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LocalAssetsFolder", "Security": { "Read": "None", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "QDir" } }, { "Category": "Lua Debugger", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LuaDebuggerEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Lua Debugger", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LuaDebuggerEnabledAtStartup", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Luau Keyword Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Audio", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Main Volume", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Matching Word Background Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Output", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Maximum Output Lines", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Menu Item Background Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Method Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Number Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Audio", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Only Play Audio from Window in Focus", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Operator Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Output", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Output Font", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "QFont" } }, { "Category": "Output", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Output Layout Mode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "OutputLayoutMode" } }, { "Category": "Browsing", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PermissionLevelShown", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PermissionLevelShown" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Physical Draggers Select Scope By Default", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Pivot Snap To Geometry Color", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Lua Debugger", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PluginDebuggingEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Directories", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PluginsDir", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "QDir" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Primary Text Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Property Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Directories", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ReloadBuiltinPluginsOnChange", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Directories", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ReloadLocalPluginsOnChange", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "General", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Render Throttle Percentage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Advanced", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Respect Studio shortcuts when game has focus", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Ruler Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Rulers", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Undo", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RuntimeUndoBehavior", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RuntimeUndoBehavior" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Script Editor Color Preset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "StudioScriptEditorColorPresets" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Script Editor Scrollbar Background Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Script Editor Scrollbar Handle Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ScriptEditorMenuBorderColor", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ScriptEditorShouldShowPluginMethods", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Lua Debugger", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ScriptTimeoutLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Scroll Past Last Line", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Secondary Text Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Select Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Primary Part", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Select/Hover Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Selected Menu Item Background Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Selected Text Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Selection Background Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Selection Box Thickness", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Selection Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Selection Line Thickness", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Audio", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Server Audio Behavior", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ServerAudioBehavior" } }, { "Category": "Advanced", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Set Pivot of Imported Parts", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Explorer", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Core GUI in Explorer while Playing", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Advanced", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Diagnostics Bar", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Explorer", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show FileSyncService", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Explorer", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Hidden Objects in Explorer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Hover Over", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Visualization", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Light Guides", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Visualization", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Navigation Labels", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Visualization", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Navigation Mesh", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Visualization", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Pathfinding Links", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Explorer", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Plugin GUI Service in Explorer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Visualization", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Singly Selected Attachment Parent Frame", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show Whitespace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Explorer", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Show plus button on hover in Explorer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Explorer", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ShowCorePackagesInExplorer", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Skip Closing Brackets and Quotes", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "String Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Tab Width", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Text Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Text Wrapping", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "General", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Theme", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "General", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UI Theme", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "UITheme" } }, { "Category": "Tools", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Use Bounding Box Move Handles", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Warning Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Script Editor Colors", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Whitespace Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "MemberType": "Function", "Name": "GetAvailableThemes", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ThemeChanged", "Parameters": [], "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Studio", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "ConvertToPackageUpload", "Parameters": [ { "Name": "uploadUrl", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "cloneInstances", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "originalInstances", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PublishPackage", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "publishInfo", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowSaveToRoblox", "Parameters": [ { "Name": "instances", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "assetType", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SerializeInstances", "Parameters": [ { "Name": "instances", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnConvertToPackageResult", "Parameters": [ { "Name": "isSuccessful", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "errorMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnPublishPackageResult", "Parameters": [ { "Name": "result", "Type": { "Category": "Group", "Name": "Dictionary" } }, { "Name": "errorMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnSaveToRoblox", "Parameters": [ { "Name": "instances", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "assetType", "Type": { "Category": "Group", "Name": "Variant" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StudioAssetService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "0.5, 0", "MemberType": "Property", "Name": "AnchorPoint", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "IsArrowVisible", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "IsNextVisible", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "RowName", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Text", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Title", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "SetOnNextClicked", "Parameters": [ { "Name": "onClick", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StudioCallout", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "EnableScriptCollabByDefaultOnLoad", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } } ], "MemoryCategory": "Instances", "Name": "StudioData", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "State", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "HasMultiTouchStarted", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "IsMultiTouchEmulationOn", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "IsMultiTouchEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "PivotPosition", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "MemberType": "Function", "Name": "GetMaxNumTouches", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTouchInBounds", "Parameters": [ { "Name": "index", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTouchPosition", "Parameters": [ { "Name": "index", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "EmulatePCDeviceWithResolution", "Parameters": [ { "Name": "deviceId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "resolution", "Type": { "Category": "DataType", "Name": "Vector2" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCurrentDeviceId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetCurrentOrientation", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "ScreenOrientation" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HasDeviceWithId", "Parameters": [ { "Name": "deviceId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetCurrentDeviceId", "Parameters": [ { "Name": "deviceId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetCurrentOrientation", "Parameters": [ { "Name": "orientation", "Type": { "Category": "Enum", "Name": "ScreenOrientation" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "CurrentDeviceIdChanged", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OrientationChanged", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchInBoundsChanged", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchPositionsChanged", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StudioDeviceEmulatorService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "StudioObjectBase", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "StudioWidget", "Superclass": "StudioObjectBase" }, { "Members": [ { "MemberType": "Function", "Name": "ClearUploadNames", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PublishAs", "Parameters": [ { "Name": "universeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "groupId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "isPublish", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "publishParameters", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PublishThenTurnOnTeamCreate", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RefreshDocumentDisplayName", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTeamCreateOnPublishInfo", "Parameters": [ { "Name": "shouldTurnOnTcOnPublish", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "newPlaceName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetUniverseDisplayName", "Parameters": [ { "Name": "newName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetUploadNames", "Parameters": [ { "Name": "placeName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "universeName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowSaveOrPublishPlaceToRoblox", "Parameters": [ { "Name": "showGameSelect", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "isPublish", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "closeMode", "Type": { "Category": "Enum", "Name": "StudioCloseMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GameNameUpdated", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GamePublishCancelled", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GamePublishFinished", "Parameters": [ { "Name": "success", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "gameId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnSaveOrPublishPlaceToRoblox", "Parameters": [ { "Name": "showGameSelect", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "isPublish", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "closeMode", "Type": { "Category": "Enum", "Name": "StudioCloseMode" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StudioPublishService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "StudioScriptDebugEventListener", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetSdk", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetSdk", "Parameters": [ { "Name": "sdk", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StudioSdkService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "State", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "ActiveScript", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "AlignDraggedObjects", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DraggerSolveConstraints", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "DrawConstraintsOnTop", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "GridSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "HoverInstance", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "InstalledPluginData", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "PivotSnapToGeometry", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "RotateIncrement", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "ShowConstraintDetails", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "StudioLocaleId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "UseLocalSpace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "AnimationIdSelected", "Parameters": [ { "Name": "id", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CopyToClipboard", "Parameters": [ { "Name": "stringToCopy", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBadgeConfigureUrl", "Parameters": [ { "Name": "badgeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetBadgeUploadUrl", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetClassIcon", "Parameters": [ { "Name": "className", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPlaceIsPersistedToCloud", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetResourceByCategory", "Parameters": [ { "Name": "category", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetStartupAssetId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetStartupPluginId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTermsOfUseUrl", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int64" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GizmoRaycast", "Parameters": [ { "Name": "origin", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "direction", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Default": "RaycastParams{IgnoreWater=false, BruteForceAllSlow=false, RespectCanCollide=false, CollisionGroup=Default, FilterDescendantsInstances={}}", "Name": "raycastParams", "Type": { "Category": "DataType", "Name": "RaycastParams" } } ], "ReturnType": { "Category": "DataType", "Name": "RaycastResult" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HasInternalPermission", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsPluginInstalled", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsPluginUpToDate", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "currentAssetVersion", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "OpenInBrowser_DONOTUSE", "Parameters": [ { "Name": "url", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestClose", "Parameters": [ { "Name": "closeMode", "Type": { "Category": "Enum", "Name": "StudioCloseMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetPluginEnabled", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "state", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowPlaceVersionHistoryDialog", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowPublishToRoblox", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UninstallPlugin", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UpdatePluginManagement", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptImportFile", "Parameters": [ { "Default": "{}", "Name": "fileTypeFilter", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptImportFiles", "Parameters": [ { "Default": "{}", "Name": "fileTypeFilter", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TryInstallPlugin", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "assetVersionId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnImportFromRoblox", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnOpenGameSettings", "Parameters": [ { "Name": "pageIdentifier", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnOpenManagePackagePlugin", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnPluginInstalledFromToolbox", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnPluginInstalledFromWeb", "Parameters": [ { "Name": "pluginId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnPublishAsPlugin", "Parameters": [ { "Name": "instances", "Type": { "Category": "DataType", "Name": "Objects" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnSaveToRoblox", "Parameters": [ { "Name": "instances", "Type": { "Category": "DataType", "Name": "Objects" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PromptTransformPluginCheckEnable", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SaveLocallyAsComplete", "Parameters": [ { "Name": "success", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StudioService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetColor", "Parameters": [ { "Name": "styleguideitem", "Type": { "Category": "Enum", "Name": "StudioStyleGuideColor" } }, { "Default": "Default", "Name": "modifier", "Type": { "Category": "Enum", "Name": "StudioStyleGuideModifier" } } ], "ReturnType": { "Category": "DataType", "Name": "Color3" }, "Security": "PluginSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StudioTheme", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetStyleRules", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InsertStyleRule", "Parameters": [ { "Name": "rule", "Type": { "Category": "Class", "Name": "StyleRule" } }, { "Name": "index", "Type": { "Category": "Primitive", "Name": "int?" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetStyleRules", "Parameters": [ { "Name": "rules", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StyleRulesChanged", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "StyleBase", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "-1", "MemberType": "Property", "Name": "Index", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "PropertiesSerialize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Selector", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "SelectorError", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "GetProperties", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPropertiesResolved", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetProperty", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPropertyResolved", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetProperties", "Parameters": [ { "Name": "table", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetProperty", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "StyleRule", "Superclass": "StyleBase" }, { "Members": [ { "MemberType": "Function", "Name": "GetDerives", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetDerives", "Parameters": [ { "Name": "derives", "Type": { "Category": "DataType", "Name": "Objects" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "StyleSheet", "Superclass": "StyleBase" }, { "Members": [ { "Category": "Data", "Default": "-1", "MemberType": "Property", "Name": "Index", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "StyleSheet", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "StyleSheet" } } ], "MemoryCategory": "Gui", "Name": "StyleDerive", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "StyleSheet", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "StyleSheet" } } ], "MemoryCategory": "Gui", "Name": "StyleLink", "Superclass": "Instance" }, { "Members": [ { "MemberType": "Function", "Name": "GetAppliedStyles", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetStyleInfo", "Parameters": [ { "Name": "style", "Type": { "Category": "Class", "Name": "StyleRule" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetStyleSheetDerivesChain", "Parameters": [ { "Name": "styleSheet", "Type": { "Category": "Class", "Name": "StyleSheet" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetStyleSheetInfo", "Parameters": [ { "Name": "styleSheet", "Type": { "Category": "Class", "Name": "StyleSheet" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Gui", "Name": "StylingService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Appearance", "Default": "Overlay", "MemberType": "Property", "Name": "AlphaMode", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AlphaMode" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "ColorMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "MetalnessMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "NormalMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "RoughnessMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "TexturePack", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "Instances", "Name": "SurfaceAppearance", "Superclass": "Instance" }, { "Members": [ { "Category": "Diagnostics", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SchedulerDutyCycle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Diagnostics", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SchedulerRate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Configuration", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ThreadPoolConfig", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ThreadPoolConfig" } }, { "Category": "Diagnostics", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ThreadPoolSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } } ], "MemoryCategory": "Instances", "Name": "TaskScheduler", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "AutoAssignable", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "AutoColorCharacters", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "-1", "MemberType": "Property", "Name": "ChildOrder", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Score", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TeamColor", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "MemberType": "Function", "Name": "GetPlayers", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Safe" }, { "MemberType": "Event", "Name": "PlayerAdded", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayerRemoved", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Player" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Team", "Superclass": "Instance" }, { "Members": [ { "Category": "Camera", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "InitialCameraCFrame", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } } ], "MemoryCategory": "Instances", "Name": "TeamCreateData", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Event", "Name": "TeamCreatePublishResult", "Parameters": [ { "Name": "publishSuccessful", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "statusCode", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "errMessage", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "rawMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TeamCreateReplicatedMessage", "Parameters": [ { "Name": "messageType", "Type": { "Category": "Enum", "Name": "MessageType" } }, { "Name": "failureMessage", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "statusCode", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "isPublish", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "authorName", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TeamCreateSaveResult", "Parameters": [ { "Name": "saveSuccessful", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "statusCode", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "errMessage", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "rawMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TeamCreatePublishService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "CloseGameIfUserDoesntHavePerms", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ToggleManageCollaborators", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TeamCreateService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetTeams", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RebalanceTeams", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Teams", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PrivateServerId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ReservedServerAccessCode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "TeleportAsyncResult", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ReservedServerAccessCode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "ServerInstanceId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "ShouldReserveServer", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "GetTeleportData", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTeleportData", "Parameters": [ { "Name": "teleportData", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TeleportOptions", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CustomizedTeleportUI", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "Block", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetArrivingTeleportGui", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetLocalPlayerTeleportData", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTeleportSetting", "Parameters": [ { "Name": "setting", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTeleportGui", "Parameters": [ { "Name": "gui", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTeleportSetting", "Parameters": [ { "Name": "setting", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Teleport", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Default": "nil", "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "teleportData", "Type": { "Category": "Group", "Name": "Variant" } }, { "Default": "nil", "Name": "customLoadingScreen", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TeleportCancel", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TeleportToPlaceInstance", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "instanceId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "nil", "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "", "Name": "spawnName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "teleportData", "Type": { "Category": "Group", "Name": "Variant" } }, { "Default": "nil", "Name": "customLoadingScreen", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TeleportToPrivateServer", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "reservedServerAccessCode", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "players", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "", "Name": "spawnName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "teleportData", "Type": { "Category": "Group", "Name": "Variant" } }, { "Default": "nil", "Name": "customLoadingScreen", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TeleportToSpawnByName", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "spawnName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "nil", "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "teleportData", "Type": { "Category": "Group", "Name": "Variant" } }, { "Default": "nil", "Name": "customLoadingScreen", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPlayerPlaceInstanceAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReserveServer", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TeleportAsync", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "players", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Default": "nil", "Name": "teleportOptions", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TeleportPartyAsync", "Parameters": [ { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "players", "Type": { "Category": "DataType", "Name": "Objects" } }, { "Name": "teleportData", "Type": { "Category": "Group", "Name": "Variant" } }, { "Default": "nil", "Name": "customLoadingScreen", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UnblockAsync", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LocalPlayerArrivedFromTeleport", "Parameters": [ { "Name": "loadingGui", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "dataTable", "Type": { "Category": "Group", "Name": "Variant" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MenuTeleportAttempt", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TeleportInProgress", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "teleportInfo", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TeleportInitFailed", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "teleportResult", "Type": { "Category": "Enum", "Name": "TeleportResult" } }, { "Name": "errorMessage", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "placeId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "teleportOptions", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TeleportInitFailedInternal", "Parameters": [ { "Name": "player", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "teleportResult", "Type": { "Category": "Enum", "Name": "TeleportResult" } }, { "Name": "errorMessage", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "guid", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TeleportService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "TemporaryCageMeshProvider", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "TemporaryScriptService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "ColorMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "Side", "MemberType": "Property", "Name": "Face", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TerrainFace" } }, { "Category": "Appearance", "Default": "Regular", "MemberType": "Property", "Name": "MaterialPattern", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "MaterialPattern" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "MetalnessMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "NormalMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "RoughnessMap", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "10", "MemberType": "Property", "Name": "StudsPerTile", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Internal", "Default": "", "MemberType": "Property", "Name": "TexturePack", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } } ], "MemoryCategory": "Instances", "Name": "TerrainDetail", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "ExtentsMax", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3int16" } }, { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "ExtentsMin", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3int16" } }, { "Category": "Data", "Default": "__api_dump_write_only_property__", "MemberType": "Property", "Name": "GridV3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "WriteOnly", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "IsSmooth", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "1, 1, 1", "MemberType": "Property", "Name": "SizeInCells", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Data", "Default": "\u0001\u0005", "MemberType": "Property", "Name": "SmoothGrid", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "MemberType": "Function", "Name": "ApplyTransform", "Parameters": [ { "Name": "rotation", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ApplyTransformSubregion", "Parameters": [ { "Name": "rotation", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "size", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "region", "Type": { "Category": "DataType", "Name": "Region3int16" } } ], "ReturnType": { "Category": "Class", "Name": "TerrainRegion" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ConvertToSmooth", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetRegionWireframe", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TerrainRegion", "Superclass": "Instance" }, { "Members": [ { "Category": "Physics", "Default": "true", "MemberType": "Property", "Name": "AutoRuns", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Description", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Results", "Default": "0", "MemberType": "Property", "Name": "ErrorCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Settings", "Default": "false", "MemberType": "Property", "Name": "ExecuteWithStudioRun", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Physics", "Default": "true", "MemberType": "Property", "Name": "Is30FpsThrottleEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Physics", "Default": "true", "MemberType": "Property", "Name": "IsPhysicsEnvironmentalThrottled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Physics", "Default": "true", "MemberType": "Property", "Name": "IsSleepAllowed", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Settings", "Default": "0", "MemberType": "Property", "Name": "NumberOfPlayers", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Settings", "Default": "0", "MemberType": "Property", "Name": "SimulateSecondsLag", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Results", "Default": "0", "MemberType": "Property", "Name": "TestCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Settings", "Default": "10", "MemberType": "Property", "Name": "Timeout", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Results", "Default": "0", "MemberType": "Property", "Name": "WarnCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "MemberType": "Function", "Name": "Check", "Parameters": [ { "Name": "condition", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "description", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "nil", "Name": "source", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "0", "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Checkpoint", "Parameters": [ { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "nil", "Name": "source", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "0", "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Done", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Error", "Parameters": [ { "Name": "description", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "nil", "Name": "source", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "0", "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Fail", "Parameters": [ { "Name": "description", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "nil", "Name": "source", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "0", "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Message", "Parameters": [ { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "nil", "Name": "source", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "0", "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Require", "Parameters": [ { "Name": "condition", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "description", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "nil", "Name": "source", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "0", "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ScopeTime", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Warn", "Parameters": [ { "Name": "condition", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "description", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "nil", "Name": "source", "Type": { "Category": "Class", "Name": "Instance" } }, { "Default": "0", "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "isFeatureEnabled", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Run", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "PluginSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerCollectConditionalResult", "Parameters": [ { "Name": "condition", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerCollectResult", "Parameters": [ { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "script", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "line", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TestService", "Superclass": "Instance", "Tags": [ "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "TextBoxService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "DisplaySystemMessage", "Parameters": [ { "Name": "systemMessage", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "metadata", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "TextChatMessage" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AddUserAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendAsync", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "", "Name": "metadata", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "TextChatMessage" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MessageReceived", "Parameters": [ { "Name": "incomingMessage", "Type": { "Category": "Class", "Name": "TextChatMessage" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "OnIncomingMessage", "Parameters": [ { "Name": "message", "Type": { "Category": "Class", "Name": "TextChatMessage" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "ShouldDeliverCallback", "Parameters": [ { "Name": "message", "Type": { "Category": "Class", "Name": "TextChatMessage" } }, { "Name": "textSource", "Type": { "Category": "Class", "Name": "TextSource" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TextChannel", "Superclass": "Instance" }, { "Members": [ { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "", "MemberType": "Property", "Name": "PrimaryAlias", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Behavior", "Default": "", "MemberType": "Property", "Name": "SecondaryAlias", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Event", "Name": "Triggered", "Parameters": [ { "Name": "originTextSource", "Type": { "Category": "Class", "Name": "TextSource" } }, { "Name": "unfilteredText", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TextChatCommand", "Superclass": "Instance" }, { "Members": [], "MemoryCategory": "Instances", "Name": "TextChatConfigurations", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Behavior", "Default": "HumanoidRootPart", "MemberType": "Property", "Name": "AdorneeName", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Appearance", "Default": "0.980392, 0.980392, 0.980392", "MemberType": "Property", "Name": "BackgroundColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0.10000000000000000555", "MemberType": "Property", "Name": "BackgroundTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Behavior", "Default": "15", "MemberType": "Property", "Name": "BubbleDuration", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "6", "MemberType": "Property", "Name": "BubblesSpacing", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "GothamMedium", "MemberType": "Property", "Name": "Font", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "Font" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "FontFace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Font" } }, { "Category": "Behavior", "Default": "0, 0, 0", "MemberType": "Property", "Name": "LocalPlayerStudsOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "Category": "Behavior", "Default": "3", "MemberType": "Property", "Name": "MaxBubbles", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "100", "MemberType": "Property", "Name": "MaxDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "40", "MemberType": "Property", "Name": "MinimizeDistance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "true", "MemberType": "Property", "Name": "TailVisible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0.223529, 0.231373, 0.239216", "MemberType": "Property", "Name": "TextColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "16", "MemberType": "Property", "Name": "TextSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Behavior", "Default": "0", "MemberType": "Property", "Name": "VerticalStudsOffset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "BubbleChatConfiguration", "Superclass": "TextChatConfigurations", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "AbsolutePosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "AbsolutePositionWrite", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "AbsoluteSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "AbsoluteSizeWrite", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Appearance", "Default": "0.0980392, 0.105882, 0.113725", "MemberType": "Property", "Name": "BackgroundColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0.2000000000000000111", "MemberType": "Property", "Name": "BackgroundTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "FontFace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Font" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "IsFocused", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "IsFocusedWrite", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "Slash", "MemberType": "Property", "Name": "KeyboardKeyCode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "KeyCode" } }, { "Category": "Appearance", "Default": "0.698039, 0.698039, 0.698039", "MemberType": "Property", "Name": "PlaceholderColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TargetTextChannel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "TextChannel" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TextBox", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "TextBox" } }, { "Category": "Appearance", "Default": "1, 1, 1", "MemberType": "Property", "Name": "TextColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "14", "MemberType": "Property", "Name": "TextSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Appearance", "Default": "0, 0, 0", "MemberType": "Property", "Name": "TextStrokeColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0.5", "MemberType": "Property", "Name": "TextStrokeTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } } ], "MemoryCategory": "Instances", "Name": "ChatInputBarConfiguration", "Superclass": "TextChatConfigurations", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "AbsolutePosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "AbsolutePositionWrite", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "AbsoluteSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "AbsoluteSizeWrite", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Appearance", "Default": "0.0980392, 0.105882, 0.113725", "MemberType": "Property", "Name": "BackgroundColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0.2999999999999999889", "MemberType": "Property", "Name": "BackgroundTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "FontFace", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Font" } }, { "Category": "Behavior", "Default": "1", "MemberType": "Property", "Name": "HeightScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "Left", "MemberType": "Property", "Name": "HorizontalAlignment", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "Unsafe", "ValueType": { "Category": "Enum", "Name": "HorizontalAlignment" } }, { "Category": "Appearance", "Default": "1, 1, 1", "MemberType": "Property", "Name": "TextColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "14", "MemberType": "Property", "Name": "TextSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Appearance", "Default": "0, 0, 0", "MemberType": "Property", "Name": "TextStrokeColor3", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Appearance", "Default": "0.5", "MemberType": "Property", "Name": "TextStrokeTransparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Data", "Default": "Top", "MemberType": "Property", "Name": "VerticalAlignment", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "Unsafe", "ValueType": { "Category": "Enum", "Name": "VerticalAlignment" } }, { "Category": "Behavior", "Default": "1", "MemberType": "Property", "Name": "WidthScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "ChatWindowConfiguration", "Superclass": "TextChatConfigurations", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "BubbleChatMessageProperties", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BubbleChatMessageProperties" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "MessageId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Metadata", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "PrefixText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Status", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextChatMessageStatus" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Text", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TextChannel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "TextChannel" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "TextSource", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "TextSource" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Timestamp", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "DateTime" } } ], "MemoryCategory": "Instances", "Name": "TextChatMessage", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "PrefixText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Text", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } } ], "MemoryCategory": "Instances", "Name": "TextChatMessageProperties", "Superclass": "Instance" }, { "Members": [ { "Category": "Data", "Default": "LegacyChatService", "MemberType": "Property", "Name": "ChatVersion", "Security": { "Read": "None", "Write": "NotAccessibleSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ChatVersion" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "CreateDefaultCommands", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "CreateDefaultTextChannels", "Security": { "Read": "None", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "DisplayBubble", "Parameters": [ { "Name": "partOrCharacter", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CanUserChatAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CanUsersChatAsync", "Parameters": [ { "Name": "userIdFrom", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "userIdTo", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "BubbleDisplayed", "Parameters": [ { "Name": "partOrCharacter", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "textChatMessage", "Type": { "Category": "Class", "Name": "TextChatMessage" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ClientToServerMessageReplicateSignal", "Parameters": [ { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "prefixText", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "metadata", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "messageId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "textSource", "Type": { "Category": "Class", "Name": "TextSource" } }, { "Name": "textChannel", "Type": { "Category": "Class", "Name": "TextChannel" } }, { "Name": "status", "Type": { "Category": "Enum", "Name": "TextChatMessageStatus" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ClientToServerMessageReplicateSignalV2", "Parameters": [ { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "metadata", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "messageId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "textSource", "Type": { "Category": "Class", "Name": "TextSource" } }, { "Name": "textChannel", "Type": { "Category": "Class", "Name": "TextChannel" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "MessageReceived", "Parameters": [ { "Name": "textChatMessage", "Type": { "Category": "Class", "Name": "TextChatMessage" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "SendingMessage", "Parameters": [ { "Name": "textChatMessage", "Type": { "Category": "Class", "Name": "TextChatMessage" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ServerToClientMessageReplicateSignal", "Parameters": [ { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "prefixText", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "metadata", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "messageId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "textSource", "Type": { "Category": "Class", "Name": "TextSource" } }, { "Name": "textChannel", "Type": { "Category": "Class", "Name": "TextChannel" } }, { "Name": "timestamp", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "status", "Type": { "Category": "Enum", "Name": "TextChatMessageStatus" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "OnBubbleAdded", "Parameters": [ { "Name": "message", "Type": { "Category": "Class", "Name": "TextChatMessage" } }, { "Name": "adornee", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Callback", "Name": "OnIncomingMessage", "Parameters": [ { "Name": "message", "Type": { "Category": "Class", "Name": "TextChatMessage" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TextChatService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetChatForUserAsync", "Parameters": [ { "Name": "toUserId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetNonChatStringForBroadcastAsync", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetNonChatStringForUserAsync", "Parameters": [ { "Name": "toUserId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TextFilterResult", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SourceLanguage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SourceText", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "TextFilterResult" } }, { "MemberType": "Function", "Name": "GetTranslationForLocale", "Parameters": [ { "Name": "locale", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "TextFilterResult" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTranslations", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TextFilterTranslatedResult", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetFontMemoryData", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTextSize", "Parameters": [ { "Name": "string", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "fontSize", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "font", "Type": { "Category": "Enum", "Name": "Font" } }, { "Name": "frameSize", "Type": { "Category": "DataType", "Name": "Vector2" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetResolutionScale", "Parameters": [ { "Name": "scale", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FilterAndTranslateStringAsync", "Parameters": [ { "Name": "stringToFilter", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "fromUserId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "targetLocales", "Type": { "Category": "Group", "Name": "Array" } }, { "Default": "PrivateChat", "Name": "textContext", "Type": { "Category": "Enum", "Name": "TextFilterContext" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FilterStringAsync", "Parameters": [ { "Name": "stringToFilter", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "fromUserId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Default": "PrivateChat", "Name": "textContext", "Type": { "Category": "Enum", "Name": "TextFilterContext" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFamilyInfoAsync", "Parameters": [ { "Name": "assetId", "Type": { "Category": "DataType", "Name": "Content" } } ], "ReturnType": { "Category": "Group", "Name": "Dictionary" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTextBoundsAsync", "Parameters": [ { "Name": "params", "Type": { "Category": "Class", "Name": "GetTextBoundsParams" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TextService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "CanSend", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "UserId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "UserIdReplicated", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } } ], "MemoryCategory": "Instances", "Name": "TextSource", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetUserPlatformId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserPlatformName", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HaveActiveUser", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsOver13", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ReturnToEngagement", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowAccountPicker", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RegisterActiveUser", "Parameters": [ { "Name": "gamepadId", "Type": { "Category": "Enum", "Name": "UserInputType" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ActiveUserSignedOut", "Parameters": [ { "Name": "signOutStatus", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ThirdPartyUserService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FrameCount", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "State", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Populated", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ThreadId", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ThreadName", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "GetFrame", "Parameters": [ { "Name": "index", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Class", "Name": "Instance" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ThreadState", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "TimerService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "HideNotification", "Parameters": [ { "Name": "notificationId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShowNotification", "Parameters": [ { "Name": "message", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "notificationId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ToastNotificationService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "TouchInputService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "TouchTransmitter", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "MemberType": "Function", "Name": "FinishSpan", "Parameters": [ { "Name": "spanId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartSpan", "Parameters": [ { "Name": "name", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "parentId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TracerService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AudioMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TrackerLodFlagMode" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VideoExtrapolationMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TrackerExtrapolationFlagMode" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VideoLodMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TrackerLodValueMode" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VideoMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TrackerLodFlagMode" } }, { "MemberType": "Function", "Name": "getExtrapolation", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "getVideoLod", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "isAudioEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "isVideoEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UpdateState", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TrackerLodController", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Animation", "Name": "TrackerStreamAnimation", "Superclass": "Instance", "Tags": [ "NotReplicated" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Attachment0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Attachment" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Attachment1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Attachment" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "Brightness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0 1 1 1 0 1 1 1 1 0 ", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "ColorSequence" } }, { "Category": "Emission", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "FaceCamera", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Emission", "Default": "2", "MemberType": "Property", "Name": "Lifetime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "LightEmission", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "LightInfluence", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Emission", "Default": "0", "MemberType": "Property", "Name": "MaxLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Emission", "Default": "0.100000001", "MemberType": "Property", "Name": "MinLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "", "MemberType": "Property", "Name": "Texture", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "TextureLength", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "Stretch", "MemberType": "Property", "Name": "TextureMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TextureMode" } }, { "Category": "Appearance", "Default": "0 0.5 0 1 0.5 0 ", "MemberType": "Property", "Name": "Transparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberSequence" } }, { "Category": "Emission", "Default": "0 1 0 1 1 0 ", "MemberType": "Property", "Name": "WidthScale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberSequence" } }, { "MemberType": "Function", "Name": "Clear", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "OnClearRequested", "Parameters": [], "Security": "None", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Trail", "Superclass": "Instance" }, { "Members": [ { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LocaleId", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "FormatByKey", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "args", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RobloxOnlyTranslate", "Parameters": [ { "Name": "context", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Translate", "Parameters": [ { "Name": "context", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "text", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Translator", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetMainViewSessionId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetStudioWidgetFromLabel", "Parameters": [ { "Name": "label", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Class", "Name": "StudioWidget" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HasUserCompletedTutorial", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PromptClosePlace", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTutorialCompletionStatus", "Parameters": [ { "Name": "completed", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ShouldLaunchTutorial", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TutorialService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PlaybackState", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "PlaybackState" } }, { "MemberType": "Function", "Name": "Cancel", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Pause", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Play", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Completed", "Parameters": [ { "Name": "playbackState", "Type": { "Category": "Enum", "Name": "PlaybackState" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TweenBase", "Superclass": "Instance", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Instance", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "Category": "Data", "Default": "Time:1 DelayTime:0 RepeatCount:0 Reverses:False EasingDirection:Out EasingStyle:Quad", "MemberType": "Property", "Name": "TweenInfo", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "TweenInfo" } } ], "MemoryCategory": "Instances", "Name": "Tween", "Superclass": "TweenBase" }, { "Members": [ { "MemberType": "Function", "Name": "Create", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "tweenInfo", "Type": { "Category": "DataType", "Name": "TweenInfo" } }, { "Name": "propertyTable", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "ReturnType": { "Category": "Class", "Name": "Tween" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetValue", "Parameters": [ { "Name": "alpha", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "easingStyle", "Type": { "Category": "Enum", "Name": "EasingStyle" } }, { "Name": "easingDirection", "Type": { "Category": "Enum", "Name": "EasingDirection" } } ], "ReturnType": { "Category": "Primitive", "Name": "float" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "TweenService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "UGCAvatarService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetPropertyValue", "Parameters": [ { "Name": "instance", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "property", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Variant" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ResetCollisionFidelity", "Parameters": [ { "Name": "meshPart", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMeshIdBlocking", "Parameters": [ { "Name": "meshPart", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CalculateUniqueUVCount", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CanLoadAsset", "Parameters": [ { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "FetchAssetWithFormat", "Parameters": [ { "Name": "url", "Type": { "Category": "DataType", "Name": "Content" } }, { "Name": "assetFormat", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "Objects" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMeshTriCount", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMeshVertColors", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMeshVerts", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTextureSize", "Parameters": [ { "Name": "textureId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateCageMeshIntersection", "Parameters": [ { "Name": "innerCageMeshId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "outerCageMeshId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "refMeshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateCageNonManifoldAndHoles", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateDynamicHeadMesh", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateFullBodyCageDeletion", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateMeshBounds", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "meshScale", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "boundsOffset", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "attachmentCF", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "handleCF", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateMeshTriangles", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateMeshVertColors", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "true", "Name": "includeAlpha", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateMisMatchUV", "Parameters": [ { "Name": "innerCageMeshId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "outerCageMeshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateNumTextureChannels", "Parameters": [ { "Name": "textureId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "numChannelsRequired", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateOverlappingVertices", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateSkinnedMesh", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateTextureSize", "Parameters": [ { "Name": "textureId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateUVSpace", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ValidateUniqueUVCount", "Parameters": [ { "Name": "meshId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "numRequired", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "UGCValidationService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "UIBase", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "UIComponent", "Superclass": "UIBase", "Tags": [ "NotCreatable" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "UIConstraint", "Superclass": "UIComponent", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Behavior", "Default": "1", "MemberType": "Property", "Name": "AspectRatio", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Behavior", "Default": "FitWithinMaxSize", "MemberType": "Property", "Name": "AspectType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "AspectType" } }, { "Category": "Behavior", "Default": "Width", "MemberType": "Property", "Name": "DominantAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "DominantAxis" } } ], "MemoryCategory": "Instances", "Name": "UIAspectRatioConstraint", "Superclass": "UIConstraint" }, { "Members": [ { "Category": "Behavior", "Default": "INF, INF", "MemberType": "Property", "Name": "MaxSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Behavior", "Default": "0, 0", "MemberType": "Property", "Name": "MinSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } } ], "MemoryCategory": "Instances", "Name": "UISizeConstraint", "Superclass": "UIConstraint" }, { "Members": [ { "Category": "Behavior", "Default": "100", "MemberType": "Property", "Name": "MaxTextSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Behavior", "Default": "1", "MemberType": "Property", "Name": "MinTextSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } } ], "MemoryCategory": "Instances", "Name": "UITextSizeConstraint", "Superclass": "UIConstraint" }, { "Members": [ { "Category": "Appearance", "Default": "0, 8", "MemberType": "Property", "Name": "CornerRadius", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim" } } ], "MemoryCategory": "Instances", "Name": "UICorner", "Superclass": "UIComponent" }, { "Members": [ { "Category": "Appearance", "Default": "0 1 1 1 0 1 1 1 1 0 ", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "ColorSequence" } }, { "Category": "Appearance", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0, 0", "MemberType": "Property", "Name": "Offset", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "Rotation", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0 0 0 1 0 0 ", "MemberType": "Property", "Name": "Transparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "NumberSequence" } } ], "MemoryCategory": "Instances", "Name": "UIGradient", "Superclass": "UIComponent" }, { "Members": [], "MemoryCategory": "Instances", "Name": "UILayout", "Superclass": "UIComponent", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AbsoluteContentSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FillDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "FillDirection" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HorizontalAlignment", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "HorizontalAlignment" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SortOrder", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SortOrder" } }, { "Category": "Behavior", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VerticalAlignment", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "VerticalAlignment" } }, { "MemberType": "Function", "Name": "ApplyLayout", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetCustomSortFunction", "Parameters": [ { "Default": "nil", "Name": "function", "Type": { "Category": "DataType", "Name": "Function" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "UIGridStyleLayout", "Superclass": "UILayout", "Tags": [ "NotCreatable", "NotBrowsable" ] }, { "Members": [ { "Category": "Data", "Default": "0, 0", "MemberType": "Property", "Name": "AbsoluteCellCount", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "100, 100", "MemberType": "Property", "Name": "AbsoluteCellSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "Unsafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Appearance", "Default": "{0, 5}, {0, 5}", "MemberType": "Property", "Name": "CellPadding", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } }, { "Category": "Appearance", "Default": "{0, 100}, {0, 100}", "MemberType": "Property", "Name": "CellSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } }, { "Category": "Behavior", "Default": "0", "MemberType": "Property", "Name": "FillDirectionMaxCells", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Behavior", "Default": "TopLeft", "MemberType": "Property", "Name": "StartCorner", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "StartCorner" } } ], "MemoryCategory": "Instances", "Name": "UIGridLayout", "Superclass": "UIGridStyleLayout" }, { "Members": [ { "Category": "Appearance", "Default": "0, 0", "MemberType": "Property", "Name": "Padding", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim" } } ], "MemoryCategory": "Instances", "Name": "UIListLayout", "Superclass": "UIGridStyleLayout" }, { "Members": [ { "Category": "Appearance", "Default": "true", "MemberType": "Property", "Name": "Animated", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "Circular", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CurrentPage", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "GuiObject" } }, { "Category": "Appearance", "Default": "Out", "MemberType": "Property", "Name": "EasingDirection", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "EasingDirection" } }, { "Category": "Appearance", "Default": "Back", "MemberType": "Property", "Name": "EasingStyle", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "EasingStyle" } }, { "Category": "Input", "Default": "true", "MemberType": "Property", "Name": "GamepadInputEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "0, 0", "MemberType": "Property", "Name": "Padding", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim" } }, { "Category": "Input", "Default": "true", "MemberType": "Property", "Name": "ScrollWheelInputEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Input", "Default": "true", "MemberType": "Property", "Name": "TouchInputEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "TweenTime", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "MemberType": "Function", "Name": "JumpTo", "Parameters": [ { "Name": "page", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "JumpToIndex", "Parameters": [ { "Name": "index", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Next", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Previous", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PageEnter", "Parameters": [ { "Name": "page", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PageLeave", "Parameters": [ { "Name": "page", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Stopped", "Parameters": [ { "Name": "currentPage", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "UIPageLayout", "Superclass": "UIGridStyleLayout" }, { "Members": [ { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "FillEmptySpaceColumns", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "false", "MemberType": "Property", "Name": "FillEmptySpaceRows", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "RowMajor", "MemberType": "Property", "Name": "MajorAxis", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TableMajorAxis" } }, { "Category": "Appearance", "Default": "{0, 0}, {0, 0}", "MemberType": "Property", "Name": "Padding", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim2" } } ], "MemoryCategory": "Instances", "Name": "UITableLayout", "Superclass": "UIGridStyleLayout" }, { "Members": [ { "Category": "Behavior", "Default": "0, 0", "MemberType": "Property", "Name": "PaddingBottom", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim" } }, { "Category": "Behavior", "Default": "0, 0", "MemberType": "Property", "Name": "PaddingLeft", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim" } }, { "Category": "Behavior", "Default": "0, 0", "MemberType": "Property", "Name": "PaddingRight", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim" } }, { "Category": "Behavior", "Default": "0, 0", "MemberType": "Property", "Name": "PaddingTop", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "UDim" } } ], "MemoryCategory": "Instances", "Name": "UIPadding", "Superclass": "UIComponent" }, { "Members": [ { "Category": "Behavior", "Default": "1", "MemberType": "Property", "Name": "Scale", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "UIScale", "Superclass": "UIComponent" }, { "Members": [ { "Category": "Appearance", "Default": "Contextual", "MemberType": "Property", "Name": "ApplyStrokeMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ApplyStrokeMode" } }, { "Category": "Appearance", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Color", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "Category": "Data", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Appearance", "Default": "Round", "MemberType": "Property", "Name": "LineJoinMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "LineJoinMode" } }, { "Category": "Appearance", "Default": "1", "MemberType": "Property", "Name": "Thickness", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "0", "MemberType": "Property", "Name": "Transparency", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } } ], "MemoryCategory": "Instances", "Name": "UIStroke", "Superclass": "UIComponent" }, { "Members": [ { "Category": "Data", "Default": "{\"lastSaveTime\":0,\"lastKnownPublishRequest\":0,\"users\":[]}", "MemberType": "Property", "Name": "CachedData", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "AppendTempAssetId", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "id", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "lookAt", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "camPos", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "usage", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "AppendVantagePoint", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "id", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "lookAt", "Type": { "Category": "DataType", "Name": "Vector3" } }, { "Name": "camPos", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "UpgradeTempAssetId", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "tempId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "assetId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "UnvalidatedAssetService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AllTutorialsDisabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CameraMode", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "CustomCameraMode" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CameraYInverted", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ChatVisible", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "CompletedTutorials", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ComputerCameraMovementChanged", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ComputerCameraMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ComputerCameraMovementMode" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ComputerMovementChanged", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ComputerMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ComputerMovementMode" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ControlMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "ControlMode" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DefaultCameraID", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "Fullscreen", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GamepadCameraSensitivity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GraphicsQualityLevel", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "HasEverUsedVR", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsUsingCameraYInverted", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "IsUsingGamepadCameraSensitivity", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MasterVolume", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MicroProfilerWebServerEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MicroProfilerWebServerIP", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MicroProfilerWebServerPort", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseSensitivity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseSensitivityFirstPerson", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "MouseSensitivityThirdPerson", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "OnScreenProfilerEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "OnboardingsCompleted", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PerformanceStatsVisible", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PlayerHeight", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PreferredTransparency", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RCCProfilerRecordFrameRate", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RCCProfilerRecordTimeFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "ReducedMotion", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "RotationType", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "RotationType" } }, { "Category": "Appearance", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "SavedQualityLevel", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "SavedQualitySetting" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "StartMaximized", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "StartScreenPosition", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "StartScreenSize", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TouchCameraMovementChanged", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TouchCameraMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TouchCameraMovementMode" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TouchMovementChanged", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "TouchMovementMode", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "TouchMovementMode" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UiNavigationKeyBindEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UsedCoreGuiIsVisibleToggle", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UsedCustomGuiIsVisibleToggle", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "UsedHideHudShortcut", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VREnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VRRotationIntensity", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } }, { "Category": "Control", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VRSafetyBubbleMode", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "VRSafetyBubbleMode" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VRSmoothRotationEnabled", "Security": { "Read": "None", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VignetteEnabled", "Security": { "Read": "None", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Configuration", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "gaID", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "GetCameraYInvertValue", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetOnboardingCompleted", "Parameters": [ { "Name": "onboardingId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetTutorialState", "Parameters": [ { "Name": "tutorialId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InFullScreen", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "InStudioMode", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ResetOnboardingCompleted", "Parameters": [ { "Name": "onboardingId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetCameraYInvertVisible", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetGamepadCameraSensitivityVisible", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetOnboardingCompleted", "Parameters": [ { "Name": "onboardingId", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTutorialState", "Parameters": [ { "Name": "tutorialId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "FullscreenChanged", "Parameters": [ { "Name": "isFullscreen", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PerformanceStatsVisibleChanged", "Parameters": [ { "Name": "isPerformanceStatsVisible", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StudioModeChanged", "Parameters": [ { "Name": "isStudioMode", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "UserGameSettings", "Superclass": "Instance", "Tags": [ "NotCreatable", "UserSettings" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "AccelerometerEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "BottomBarSize", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "GamepadEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "GyroscopeEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "KeyboardEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "LegacyInputEventsEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "ModalEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Deprecated", { "PreferredDescriptorName": "TouchControlsEnabled", "ThreadSafety": "Unknown" } ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "MouseBehavior", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "MouseBehavior" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "MouseDeltaSensitivity", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "MouseEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "MouseIcon", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Content" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "MouseIconEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "NavBarSize", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "OnScreenKeyboardAnimationDuration", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "OnScreenKeyboardPosition", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "OnScreenKeyboardSize", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "OnScreenKeyboardVisible", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "OverrideMouseIconBehavior", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "OverrideMouseIconBehavior" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "RightBarSize", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "StatusBarSize", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector2" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "TouchEnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "UserHeadCFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_skipped_class__", "MemberType": "Property", "Name": "VREnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "GamepadSupports", "Parameters": [ { "Name": "gamepadNum", "Type": { "Category": "Enum", "Name": "UserInputType" } }, { "Name": "gamepadKeyCode", "Type": { "Category": "Enum", "Name": "KeyCode" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetConnectedGamepads", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetDeviceAcceleration", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "InputObject" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetDeviceGravity", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "InputObject" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetDeviceRotation", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetDeviceType", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "DeviceType" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetFocusedTextBox", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "TextBox" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGamepadConnected", "Parameters": [ { "Name": "gamepadNum", "Type": { "Category": "Enum", "Name": "UserInputType" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGamepadState", "Parameters": [ { "Name": "gamepadNum", "Type": { "Category": "Enum", "Name": "UserInputType" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetKeysPressed", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetLastInputType", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "UserInputType" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMouseButtonsPressed", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMouseDelta", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMouseLocation", "Parameters": [], "ReturnType": { "Category": "DataType", "Name": "Vector2" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetNavigationGamepads", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetPlatform", "Parameters": [], "ReturnType": { "Category": "Enum", "Name": "Platform" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetStringForKeyCode", "Parameters": [ { "Name": "keyCode", "Type": { "Category": "Enum", "Name": "KeyCode" } } ], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSupportedGamepadKeyCodes", "Parameters": [ { "Name": "gamepadNum", "Type": { "Category": "Enum", "Name": "UserInputType" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserCFrame", "Parameters": [ { "Name": "type", "Type": { "Category": "Enum", "Name": "UserCFrame" } } ], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsGamepadButtonDown", "Parameters": [ { "Name": "gamepadNum", "Type": { "Category": "Enum", "Name": "UserInputType" } }, { "Name": "gamepadKeyCode", "Type": { "Category": "Enum", "Name": "KeyCode" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsKeyDown", "Parameters": [ { "Name": "keyCode", "Type": { "Category": "Enum", "Name": "KeyCode" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsMouseButtonPressed", "Parameters": [ { "Name": "mouseButton", "Type": { "Category": "Enum", "Name": "UserInputType" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsNavigationGamepad", "Parameters": [ { "Name": "gamepadEnum", "Type": { "Category": "Enum", "Name": "UserInputType" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RecenterUserHeadCFrame", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendAppUISizes", "Parameters": [ { "Name": "statusBarSize", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "navBarSize", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "bottomBarSize", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "rightBarSize", "Type": { "Category": "DataType", "Name": "Vector2" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetNavigationGamepad", "Parameters": [ { "Name": "gamepadEnum", "Type": { "Category": "Enum", "Name": "UserInputType" } }, { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DeviceAccelerationChanged", "Parameters": [ { "Name": "acceleration", "Type": { "Category": "Class", "Name": "InputObject" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DeviceGravityChanged", "Parameters": [ { "Name": "gravity", "Type": { "Category": "Class", "Name": "InputObject" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DeviceRotationChanged", "Parameters": [ { "Name": "rotation", "Type": { "Category": "Class", "Name": "InputObject" } }, { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GamepadConnected", "Parameters": [ { "Name": "gamepadNum", "Type": { "Category": "Enum", "Name": "UserInputType" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "GamepadDisconnected", "Parameters": [ { "Name": "gamepadNum", "Type": { "Category": "Enum", "Name": "UserInputType" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InputBegan", "Parameters": [ { "Name": "input", "Type": { "Category": "Class", "Name": "InputObject" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InputChanged", "Parameters": [ { "Name": "input", "Type": { "Category": "Class", "Name": "InputObject" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "InputEnded", "Parameters": [ { "Name": "input", "Type": { "Category": "Class", "Name": "InputObject" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "JumpRequest", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LastInputTypeChanged", "Parameters": [ { "Name": "lastInputType", "Type": { "Category": "Enum", "Name": "UserInputType" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PointerAction", "Parameters": [ { "Name": "wheel", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "pan", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "pinch", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StatusBarTapped", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TextBoxFocusReleased", "Parameters": [ { "Name": "textboxReleased", "Type": { "Category": "Class", "Name": "TextBox" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TextBoxFocused", "Parameters": [ { "Name": "textboxFocused", "Type": { "Category": "Class", "Name": "TextBox" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchEnded", "Parameters": [ { "Name": "touch", "Type": { "Category": "Class", "Name": "InputObject" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchLongPress", "Parameters": [ { "Name": "touchPositions", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "state", "Type": { "Category": "Enum", "Name": "UserInputState" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchMoved", "Parameters": [ { "Name": "touch", "Type": { "Category": "Class", "Name": "InputObject" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchPan", "Parameters": [ { "Name": "touchPositions", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "totalTranslation", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "velocity", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "state", "Type": { "Category": "Enum", "Name": "UserInputState" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchPinch", "Parameters": [ { "Name": "touchPositions", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "scale", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "velocity", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "state", "Type": { "Category": "Enum", "Name": "UserInputState" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchRotate", "Parameters": [ { "Name": "touchPositions", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "rotation", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "velocity", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "state", "Type": { "Category": "Enum", "Name": "UserInputState" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchStarted", "Parameters": [ { "Name": "touch", "Type": { "Category": "Class", "Name": "InputObject" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchSwipe", "Parameters": [ { "Name": "swipeDirection", "Type": { "Category": "Enum", "Name": "SwipeDirection" } }, { "Name": "numberOfTouches", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchTap", "Parameters": [ { "Name": "touchPositions", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "gameProcessedEvent", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchTapInWorld", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Name": "processedByUI", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UserCFrameChanged", "Parameters": [ { "Name": "type", "Type": { "Category": "Enum", "Name": "UserCFrame" } }, { "Name": "value", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "WindowFocusReleased", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "WindowFocused", "Parameters": [], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "UserInputService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "MemberType": "Function", "Name": "GetUserInfosByUserIdsAsync", "Parameters": [ { "Name": "userIds", "Type": { "Category": "Group", "Name": "Array" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "UserService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "AutomaticScaling", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "VRScaling" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "DidPointerHit", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "FadeOutViewOnCollision", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "GuiInputUserCFrame", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "UserCFrame" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "LaserDistance", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "float" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "PointerHitCFrame", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VRDeviceAvailable", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VRDeviceName", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VREnabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "__api_dump_class_not_creatable__", "MemberType": "Property", "Name": "VRSessionState", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "VRSessionState" } }, { "MemberType": "Function", "Name": "GetTouchpadMode", "Parameters": [ { "Name": "pad", "Type": { "Category": "Enum", "Name": "VRTouchpad" } } ], "ReturnType": { "Category": "Enum", "Name": "VRTouchpadMode" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserCFrame", "Parameters": [ { "Name": "type", "Type": { "Category": "Enum", "Name": "UserCFrame" } } ], "ReturnType": { "Category": "DataType", "Name": "CFrame" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetUserCFrameEnabled", "Parameters": [ { "Name": "type", "Type": { "Category": "Enum", "Name": "UserCFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsMaquettes", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsVRAppBuild", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RecenterUserHeadCFrame", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "RequestNavigation", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "inputUserCFrame", "Type": { "Category": "Enum", "Name": "UserCFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetTouchpadMode", "Parameters": [ { "Name": "pad", "Type": { "Category": "Enum", "Name": "VRTouchpad" } }, { "Name": "mode", "Type": { "Category": "Enum", "Name": "VRTouchpadMode" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LaserPointerTriggered", "Parameters": [ { "Name": "input", "Type": { "Category": "Class", "Name": "InputObject" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "NavigationRequested", "Parameters": [ { "Name": "cframe", "Type": { "Category": "DataType", "Name": "CFrame" } }, { "Name": "inputUserCFrame", "Type": { "Category": "Enum", "Name": "UserCFrame" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "TouchpadModeChanged", "Parameters": [ { "Name": "pad", "Type": { "Category": "Enum", "Name": "VRTouchpad" } }, { "Name": "mode", "Type": { "Category": "Enum", "Name": "VRTouchpadMode" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UserCFrameChanged", "Parameters": [ { "Name": "type", "Type": { "Category": "Enum", "Name": "UserCFrame" } }, { "Name": "value", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "UserCFrameEnabled", "Parameters": [ { "Name": "type", "Type": { "Category": "Enum", "Name": "UserCFrame" } }, { "Name": "enabled", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "VRService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "VRStatusService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "ValueBase", "Superclass": "Instance", "Tags": [ "NotCreatable" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BinaryString" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "BinaryString" } } ], "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BinaryStringValue", "Superclass": "ValueBase" }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BoolValue", "Superclass": "ValueBase" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "BrickColor" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "BrickColor" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "BrickColor" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "BrickColorValue", "Superclass": "ValueBase" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "CFrameValue", "Superclass": "ValueBase" }, { "Members": [ { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Color3" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "Color3" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "Color3" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Color3Value", "Superclass": "ValueBase" }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "ConstrainedValue", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Data", "Default": "1", "MemberType": "Property", "Name": "MaxValue", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "MinValue", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "DoubleConstrainedValue", "Superclass": "ValueBase", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "ConstrainedValue", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "10", "MemberType": "Property", "Name": "MaxValue", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "MinValue", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "IntConstrainedValue", "Superclass": "ValueBase", "Tags": [ "Deprecated" ] }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int64" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "int64" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "IntValue", "Superclass": "ValueBase" }, { "Members": [ { "Category": "Data", "Default": "0", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "double" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "double" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "NumberValue", "Superclass": "ValueBase" }, { "Members": [ { "Category": "Data", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "Instance" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "ObjectValue", "Superclass": "ValueBase" }, { "Members": [ { "Category": "Data", "Default": "{0, 0, 0}, {0, 0, 0}", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Ray" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "Ray" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "Ray" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "RayValue", "Superclass": "ValueBase" }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "StringValue", "Superclass": "ValueBase" }, { "Members": [ { "Category": "Data", "Default": "0, 0, 0", "MemberType": "Property", "Name": "Value", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "Vector3" } }, { "MemberType": "Event", "Name": "Changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "changed", "Parameters": [ { "Name": "value", "Type": { "Category": "DataType", "Name": "Vector3" } } ], "Security": "None", "Tags": [ "Deprecated", { "PreferredDescriptorName": "Changed", "ThreadSafety": "Unknown" } ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Vector3Value", "Superclass": "ValueBase" }, { "Members": [ { "MemberType": "Function", "Name": "GetValueAtTime", "Parameters": [ { "Name": "time", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "X", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "FloatCurve" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Y", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "FloatCurve" }, "Security": "None", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Z", "Parameters": [], "ReturnType": { "Category": "Class", "Name": "FloatCurve" }, "Security": "None", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "Vector3Curve", "Superclass": "Instance" }, { "Members": [ { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "ScriptCollabEnabled", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "ScriptCollabVersionHistoryEnabled", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Event", "Name": "CommitRejectedInfo", "Parameters": [ { "Name": "reason", "Type": { "Category": "Primitive", "Name": "int" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LockedScriptBatchCommit", "Parameters": [ { "Name": "scriptGuidTuple", "Type": { "Category": "Group", "Name": "Tuple" } }, { "Name": "scriptTextTuple", "Type": { "Category": "Group", "Name": "Tuple" } }, { "Name": "commitMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RequestAllEditorsSignal", "Parameters": [], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptBatchCommit", "Parameters": [ { "Name": "scriptGuidTuple", "Type": { "Category": "Group", "Name": "Tuple" } }, { "Name": "scriptHashBaseTuple", "Type": { "Category": "Group", "Name": "Tuple" } }, { "Name": "scriptTextTuple", "Type": { "Category": "Group", "Name": "Tuple" } }, { "Name": "commitMessage", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptChangesSubmitted", "Parameters": [ { "Name": "scriptGuid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "submitted", "Type": { "Category": "Primitive", "Name": "bool" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptEditorAdded", "Parameters": [ { "Name": "scriptGuid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "editor", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptEditorRemoved", "Parameters": [ { "Name": "scriptGuid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "editor", "Type": { "Category": "Class", "Name": "Instance" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptStartEdit", "Parameters": [ { "Name": "scriptGuid", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ScriptStopEdit", "Parameters": [ { "Name": "scriptGuid", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "LocalUserSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "VersionControlService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "Active", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "CameraID", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "GetCameraDevices", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Map" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "DevicesChanged", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Error", "Parameters": [ { "Name": "cameraid", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "errorcode", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Started", "Parameters": [ { "Name": "cameraid", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "Stopped", "Parameters": [ { "Name": "cameraid", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "VideoCaptureService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "VideoService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Data", "Default": "", "MemberType": "Property", "Name": "AdditionalLuaState", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "string" } }, { "MemberType": "Function", "Name": "Dump", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HandleGamepadAxisInput", "Parameters": [ { "Name": "objectId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "keyCode", "Type": { "Category": "Enum", "Name": "KeyCode" } }, { "Name": "x", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "z", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HandleGamepadButtonInput", "Parameters": [ { "Name": "deviceId", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "keyCode", "Type": { "Category": "Enum", "Name": "KeyCode" } }, { "Name": "buttonState", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HandleGamepadConnect", "Parameters": [ { "Name": "deviceId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "HandleGamepadDisconnect", "Parameters": [ { "Name": "deviceId", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendAccelerometerEvent", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "z", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendGravityEvent", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "z", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendGyroscopeEvent", "Parameters": [ { "Name": "quatX", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "quatY", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "quatZ", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "quatW", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendKeyEvent", "Parameters": [ { "Name": "isPressed", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "keyCode", "Type": { "Category": "Enum", "Name": "KeyCode" } }, { "Name": "isRepeatedKey", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "layerCollector", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendMouseButtonEvent", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "mouseButton", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "isDown", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "layerCollector", "Type": { "Category": "Class", "Name": "Instance" } }, { "Name": "repeatCount", "Type": { "Category": "Primitive", "Name": "int" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendMouseMoveEvent", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "layerCollector", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendMouseWheelEvent", "Parameters": [ { "Name": "x", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "isForwardScroll", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Name": "layerCollector", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendTextInputCharacterEvent", "Parameters": [ { "Name": "str", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "layerCollector", "Type": { "Category": "Class", "Name": "Instance" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SendTouchEvent", "Parameters": [ { "Name": "touchId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "state", "Type": { "Category": "Primitive", "Name": "int" } }, { "Name": "x", "Type": { "Category": "Primitive", "Name": "float" } }, { "Name": "y", "Type": { "Category": "Primitive", "Name": "float" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetInputTypesToIgnore", "Parameters": [ { "Name": "inputTypesToIgnore", "Type": { "Category": "Group", "Name": "Variant" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartPlaying", "Parameters": [ { "Name": "fileName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartPlayingJSON", "Parameters": [ { "Name": "string", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartRecording", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StopPlaying", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StopRecording", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "sendRobloxEvent", "Parameters": [ { "Name": "namespace", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "detail", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "detailType", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "sendThemeChangeEvent", "Parameters": [ { "Name": "themeName", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "WaitForInputEventsProcessed", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "RobloxScriptSecurity", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlaybackCompleted", "Parameters": [ { "Name": "additionalLuaState", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "RecordingCompleted", "Parameters": [ { "Name": "result", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "VirtualInputManager", "Superclass": "Instance", "Tags": [ "Service" ] }, { "Members": [ { "MemberType": "Function", "Name": "Button1Down", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Default": "Identity", "Name": "camera", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Button1Up", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Default": "Identity", "Name": "camera", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Button2Down", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Default": "Identity", "Name": "camera", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Button2Up", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Default": "Identity", "Name": "camera", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "CaptureController", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClickButton1", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Default": "Identity", "Name": "camera", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "ClickButton2", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Default": "Identity", "Name": "camera", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "MoveMouse", "Parameters": [ { "Name": "position", "Type": { "Category": "DataType", "Name": "Vector2" } }, { "Default": "Identity", "Name": "camera", "Type": { "Category": "DataType", "Name": "CFrame" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetKeyDown", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetKeyUp", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StartRecording", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "StopRecording", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "TypeKey", "Parameters": [ { "Name": "key", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "LocalUserSecurity", "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "VirtualUser", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "VisibilityCheckDispatcher", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "VisibilityService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [], "MemoryCategory": "Instances", "Name": "Visit", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotReplicated" ] }, { "Members": [ { "Category": "State", "Default": "Idle", "MemberType": "Property", "Name": "VoiceChatState", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden", "ReadOnly", "NotReplicated", "Deprecated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Enum", "Name": "VoiceChatState" } }, { "MemberType": "Function", "Name": "GetAndClearCallFailureMessage", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetAudioProcessingSettings", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetChannelId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetGroupId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetMicDevices", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetParticipants", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Array" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSessionId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetSpeakerDevices", "Parameters": [], "ReturnType": { "Category": "Group", "Name": "Tuple" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVoiceChatApiVersion", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVoiceChatAvailable", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "int" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "GetVoiceExperienceId", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "string" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsContextVoiceEnabled", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsPublishPaused", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsSubscribePaused", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "JoinByGroupId", "Parameters": [ { "Name": "groupId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Default": "false", "Name": "isMicMuted", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "JoinByGroupIdToken", "Parameters": [ { "Name": "groupId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "isMicMuted", "Type": { "Category": "Primitive", "Name": "bool" } }, { "Default": "false", "Name": "isRetry", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "Leave", "Parameters": [], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "PublishPause", "Parameters": [ { "Name": "paused", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetMicDevice", "Parameters": [ { "Name": "micDeviceName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "micDeviceGuid", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SetSpeakerDevice", "Parameters": [ { "Name": "speakerDeviceName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "speakerDeviceGuid", "Type": { "Category": "Primitive", "Name": "string" } } ], "ReturnType": { "Category": "Primitive", "Name": "null" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SubscribeBlock", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SubscribePause", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "paused", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SubscribePauseAll", "Parameters": [ { "Name": "paused", "Type": { "Category": "Primitive", "Name": "bool" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SubscribeRetry", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "SubscribeUnblock", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Function", "Name": "IsVoiceEnabledForUserIdAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "LocalPlayerModerated", "Parameters": [], "Security": "RobloxScriptSecurity", "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ParticipantsStateChanged", "Parameters": [ { "Name": "participantsLeft", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "participantsJoined", "Type": { "Category": "Group", "Name": "Array" } }, { "Name": "updatedStates", "Type": { "Category": "Group", "Name": "Array" } } ], "Security": "RobloxScriptSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "PlayerMicActivitySignalChange", "Parameters": [ { "Name": "activityInfo", "Type": { "Category": "Group", "Name": "Dictionary" } } ], "Security": "RobloxScriptSecurity", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "StateChanged", "Parameters": [ { "Name": "old", "Type": { "Category": "Enum", "Name": "VoiceChatState" } }, { "Name": "new", "Type": { "Category": "Enum", "Name": "VoiceChatState" } } ], "Security": "None", "Tags": [ "Deprecated" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "VoiceChatInternal", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service", "NotBrowsable" ] }, { "Members": [ { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "EnableDefaultVoice", "Security": { "Read": "PluginSecurity", "Write": "PluginSecurity" }, "Serialization": { "CanLoad": true, "CanSave": true }, "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Data", "Default": "false", "MemberType": "Property", "Name": "UseNewJoinFlow", "Security": { "Read": "RobloxSecurity", "Write": "RobloxSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "VoiceChatEnabledForPlaceOnRcc", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "State", "Default": "false", "MemberType": "Property", "Name": "VoiceChatEnabledForUniverseOnRcc", "Security": { "Read": "RobloxScriptSecurity", "Write": "RobloxScriptSecurity" }, "Serialization": { "CanLoad": false, "CanSave": false }, "Tags": [ "Hidden" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "MemberType": "Function", "Name": "IsVoiceEnabledForUserIdAsync", "Parameters": [ { "Name": "userId", "Type": { "Category": "Primitive", "Name": "int64" } } ], "ReturnType": { "Category": "Primitive", "Name": "bool" }, "Security": "None", "Tags": [ "Yields" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ClientRetryJoin", "Parameters": [], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "JoinedVoice", "Parameters": [ { "Name": "channelName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "participantId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "sessionId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "channelId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "ReJoinedVoice", "Parameters": [ { "Name": "channelName", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "participantId", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "sessionId", "Type": { "Category": "Primitive", "Name": "string" } }, { "Name": "channelId", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "VoiceChatClientVoiceCapability", "Parameters": [], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "VoiceChatPlayerMuteStateChangedClientToServer", "Parameters": [ { "Name": "muteState", "Type": { "Category": "Enum", "Name": "MuteState" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "VoiceChatPlayerMuteStateChangedServerToClient", "Parameters": [ { "Name": "muteState", "Type": { "Category": "Enum", "Name": "MuteState" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "VoiceChatSampleTaggedEventClientToServer", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" }, { "MemberType": "Event", "Name": "VoiceChatSampleTaggedEventServerToClient", "Parameters": [ { "Name": "tag", "Type": { "Category": "Primitive", "Name": "int64" } }, { "Name": "value", "Type": { "Category": "Primitive", "Name": "string" } } ], "Security": "RobloxSecurity", "Tags": [ "Hidden" ], "ThreadSafety": "Unsafe" } ], "MemoryCategory": "Instances", "Name": "VoiceChatService", "Superclass": "Instance", "Tags": [ "NotCreatable", "Service" ] }, { "Members": [ { "Category": "Behavior", "Default": "false", "MemberType": "Property", "Name": "Active", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": false, "CanSave": true }, "Tags": [ "ReadOnly", "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Parts", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CFrame0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Parts", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "CFrame1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "Hidden", "NotReplicated", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "DataType", "Name": "CFrame" } }, { "Category": "Behavior", "Default": "true", "MemberType": "Property", "Name": "Enabled", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "bool" } }, { "Category": "Parts", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Part0", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Parts", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Part0Internal", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Parts", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Part1", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": false }, "Tags": [ "NotReplicated" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Parts", "Default": "__api_dump_no_string_value__", "MemberType": "Property", "Name": "Part1Internal", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Class", "Name": "BasePart" } }, { "Category": "Behavior", "Default": "3", "MemberType": "Property", "Name": "State", "Security": { "Read": "None", "Write": "None" }, "Serialization": { "CanLoad": true, "CanSave": true }, "Tags": [ "Hidden", "NotScriptable" ], "ThreadSafety": "ReadSafe", "ValueType": { "Category": "Primitive", "Name": "int" } } ], "MemoryCategory": "PhysicsParts", "Name": "WeldConstraint", "Superclass": "Instance" } ], "Enums": [ { "Items": [ { "Name": "Unknown", "Value": 0 }, { "Name": "Hat", "Value": 1 }, { "Name": "Hair", "Value": 2 }, { "Name": "Face", "Value": 3 }, { "Name": "Neck", "Value": 4 }, { "Name": "Shoulder", "Value": 5 }, { "Name": "Front", "Value": 6 }, { "Name": "Back", "Value": 7 }, { "Name": "Waist", "Value": 8 }, { "LegacyNames": [ "TeeShirt" ], "Name": "TShirt", "Value": 9 }, { "Name": "Shirt", "Value": 10 }, { "Name": "Pants", "Value": 11 }, { "Name": "Jacket", "Value": 12 }, { "Name": "Sweater", "Value": 13 }, { "Name": "Shorts", "Value": 14 }, { "Name": "LeftShoe", "Value": 15 }, { "Name": "RightShoe", "Value": 16 }, { "Name": "DressSkirt", "Value": 17 }, { "Name": "Eyebrow", "Value": 18 }, { "Name": "Eyelash", "Value": 19 } ], "Name": "AccessoryType" }, { "Items": [ { "Name": "Nothing", "Value": 0 }, { "Name": "Pause", "Value": 1 }, { "Name": "Lose", "Value": 2 }, { "Name": "Draw", "Value": 3 }, { "Name": "Win", "Value": 4 } ], "Name": "ActionType" }, { "Items": [ { "Name": "Attachment0", "Value": 0 }, { "Name": "Attachment1", "Value": 1 }, { "Name": "World", "Value": 2 } ], "Name": "ActuatorRelativeTo" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "Motor", "Value": 1 }, { "Name": "Servo", "Value": 2 } ], "Name": "ActuatorType" }, { "Items": [ { "Name": "HorizontalRectangle", "Value": 1 } ], "Name": "AdShape" }, { "Items": [ { "Name": "Undefined", "Value": 0 }, { "Name": "PortalForward", "Value": 1 }, { "Name": "InGameMenuBackButton", "Value": 2 }, { "Name": "UIBackButton", "Value": 3 } ], "Name": "AdTeleportMethod" }, { "Items": [ { "Name": "Inactive", "Value": 0 }, { "Name": "Active", "Value": 1 } ], "Name": "AdUnitStatus" }, { "Items": [ { "Name": "Automatic", "Value": 0 }, { "Name": "Never", "Value": 1 } ], "Name": "AdornCullingMode" }, { "Items": [ { "Name": "Parallel", "Value": 0 }, { "Name": "Perpendicular", "Value": 1 } ], "Name": "AlignType" }, { "Items": [ { "Name": "Overlay", "Value": 0 }, { "Name": "Transparency", "Value": 1 } ], "Name": "AlphaMode" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Acquire", "Value": 1 }, { "Name": "Spend", "Value": 2 } ], "Name": "AnalyticsEconomyAction" }, { "Items": [ { "Name": "Trace", "Value": 0 }, { "Name": "Debug", "Value": 1 }, { "Name": "Information", "Value": 2 }, { "Name": "Warning", "Value": 3 }, { "Name": "Error", "Value": 4 }, { "Name": "Fatal", "Value": 5 } ], "Name": "AnalyticsLogLevel" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Begin", "Value": 1 }, { "Name": "Complete", "Value": 2 }, { "Name": "Abandon", "Value": 3 }, { "Name": "Fail", "Value": 4 } ], "Name": "AnalyticsProgressionStatus" }, { "Items": [ { "Name": "Idle", "Value": 0 }, { "Name": "Movement", "Value": 1 }, { "Name": "Action", "Value": 2 }, { "Name": "Action2", "Value": 3 }, { "Name": "Action3", "Value": 4 }, { "Name": "Action4", "Value": 5 }, { "Name": "Core", "Value": 1000 } ], "Name": "AnimationPriority" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "AnimatorRetargetingMode" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "OpenApp", "Value": 1 }, { "Name": "TapChatTab", "Value": 2 }, { "Name": "TapConversationEntry", "Value": 3 }, { "Name": "TapAvatarTab", "Value": 4 }, { "Name": "ReadConversation", "Value": 5 }, { "Name": "TapGamePageTab", "Value": 6 }, { "Name": "TapHomePageTab", "Value": 7 }, { "Name": "GamePageLoaded", "Value": 8 }, { "Name": "HomePageLoaded", "Value": 9 }, { "Name": "AvatarEditorPageLoaded", "Value": 10 } ], "Name": "AppShellActionType" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "Chat", "Value": 1 }, { "Name": "AvatarEditor", "Value": 2 }, { "Name": "GamePage", "Value": 3 }, { "Name": "HomePage", "Value": 4 }, { "Name": "More", "Value": 5 }, { "Name": "Landing", "Value": 6 } ], "Name": "AppShellFeature" }, { "Items": [ { "Name": "Unknown", "Value": 0 }, { "Name": "NotSupported", "Value": 1 }, { "Name": "Failed", "Value": 2 }, { "Name": "NotAvailable", "Value": 3 }, { "Name": "Available", "Value": 4 } ], "Name": "AppUpdateStatus" }, { "Items": [ { "Name": "Contextual", "Value": 0 }, { "Name": "Border", "Value": 1 } ], "Name": "ApplyStrokeMode" }, { "Items": [ { "Name": "FitWithinMaxSize", "Value": 0 }, { "Name": "ScaleWithParentSize", "Value": 1 } ], "Name": "AspectType" }, { "Items": [ { "Name": "Success", "Value": 0 }, { "Name": "Failure", "Value": 1 }, { "Name": "None", "Value": 2 }, { "Name": "Loading", "Value": 3 }, { "Name": "TimedOut", "Value": 4 } ], "Name": "AssetFetchStatus" }, { "Items": [ { "Name": "Image", "Value": 1 }, { "LegacyNames": [ "TeeShirt" ], "Name": "TShirt", "Value": 2 }, { "Name": "Audio", "Value": 3 }, { "Name": "Mesh", "Value": 4 }, { "Name": "Lua", "Value": 5 }, { "Name": "Hat", "Value": 8 }, { "Name": "Place", "Value": 9 }, { "Name": "Model", "Value": 10 }, { "Name": "Shirt", "Value": 11 }, { "Name": "Pants", "Value": 12 }, { "Name": "Decal", "Value": 13 }, { "Name": "Head", "Value": 17 }, { "Name": "Face", "Value": 18 }, { "Name": "Gear", "Value": 19 }, { "Name": "Badge", "Value": 21 }, { "Name": "Animation", "Value": 24 }, { "Name": "Torso", "Value": 27 }, { "Name": "RightArm", "Value": 28 }, { "Name": "LeftArm", "Value": 29 }, { "Name": "LeftLeg", "Value": 30 }, { "Name": "RightLeg", "Value": 31 }, { "Name": "Package", "Value": 32 }, { "Name": "GamePass", "Value": 34 }, { "Name": "Plugin", "Value": 38 }, { "Name": "MeshPart", "Value": 40 }, { "Name": "HairAccessory", "Value": 41 }, { "Name": "FaceAccessory", "Value": 42 }, { "Name": "NeckAccessory", "Value": 43 }, { "Name": "ShoulderAccessory", "Value": 44 }, { "Name": "FrontAccessory", "Value": 45 }, { "Name": "BackAccessory", "Value": 46 }, { "Name": "WaistAccessory", "Value": 47 }, { "Name": "ClimbAnimation", "Value": 48 }, { "Name": "DeathAnimation", "Value": 49 }, { "Name": "FallAnimation", "Value": 50 }, { "Name": "IdleAnimation", "Value": 51 }, { "Name": "JumpAnimation", "Value": 52 }, { "Name": "RunAnimation", "Value": 53 }, { "Name": "SwimAnimation", "Value": 54 }, { "Name": "WalkAnimation", "Value": 55 }, { "Name": "PoseAnimation", "Value": 56 }, { "Name": "MoodAnimation", "Value": 78 }, { "Name": "EarAccessory", "Value": 57 }, { "Name": "EyeAccessory", "Value": 58 }, { "Name": "EmoteAnimation", "Value": 61 }, { "Name": "Video", "Value": 62 }, { "LegacyNames": [ "TeeShirtAccessory" ], "Name": "TShirtAccessory", "Value": 64 }, { "Name": "ShirtAccessory", "Value": 65 }, { "Name": "PantsAccessory", "Value": 66 }, { "Name": "JacketAccessory", "Value": 67 }, { "Name": "SweaterAccessory", "Value": 68 }, { "Name": "ShortsAccessory", "Value": 69 }, { "Name": "LeftShoeAccessory", "Value": 70 }, { "Name": "RightShoeAccessory", "Value": 71 }, { "Name": "DressSkirtAccessory", "Value": 72 }, { "Name": "EyebrowAccessory", "Value": 76 }, { "Name": "EyelashAccessory", "Value": 77 }, { "Name": "DynamicHead", "Value": 79 }, { "Name": "FontFamily", "Value": 73 } ], "Name": "AssetType" }, { "Items": [ { "Name": "Default", "Value": 1 }, { "Name": "ClientOnly", "Value": 2 }, { "Name": "Always", "Value": 3 } ], "Name": "AssetTypeVerification" }, { "Items": [ { "Name": "Music", "Value": 1 }, { "Name": "SoundEffect", "Value": 2 } ], "Name": "AudioSubType" }, { "Items": [ { "Name": "Off", "Value": 0 }, { "Name": "Absolute", "Value": 1 }, { "Name": "Relative", "Value": 2 } ], "Name": "AutoIndentRule" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "X", "Value": 1 }, { "Name": "Y", "Value": 2 }, { "Name": "XY", "Value": 3 } ], "Name": "AutomaticSize" }, { "Items": [ { "Name": "TShirt", "Value": 2 }, { "Name": "Hat", "Value": 8 }, { "Name": "HairAccessory", "Value": 41 }, { "Name": "FaceAccessory", "Value": 42 }, { "Name": "NeckAccessory", "Value": 43 }, { "Name": "ShoulderAccessory", "Value": 44 }, { "Name": "FrontAccessory", "Value": 45 }, { "Name": "BackAccessory", "Value": 46 }, { "Name": "WaistAccessory", "Value": 47 }, { "Name": "Shirt", "Value": 11 }, { "Name": "Pants", "Value": 12 }, { "Name": "Gear", "Value": 19 }, { "Name": "Head", "Value": 17 }, { "Name": "Face", "Value": 18 }, { "Name": "Torso", "Value": 27 }, { "Name": "RightArm", "Value": 28 }, { "Name": "LeftArm", "Value": 29 }, { "Name": "LeftLeg", "Value": 30 }, { "Name": "RightLeg", "Value": 31 }, { "Name": "ClimbAnimation", "Value": 48 }, { "Name": "FallAnimation", "Value": 50 }, { "Name": "IdleAnimation", "Value": 51 }, { "Name": "JumpAnimation", "Value": 52 }, { "Name": "RunAnimation", "Value": 53 }, { "Name": "SwimAnimation", "Value": 54 }, { "Name": "WalkAnimation", "Value": 55 }, { "Name": "MoodAnimation", "Value": 78 }, { "Name": "EmoteAnimation", "Value": 61 }, { "LegacyNames": [ "TeeShirtAccessory" ], "Name": "TShirtAccessory", "Value": 64 }, { "Name": "ShirtAccessory", "Value": 65 }, { "Name": "PantsAccessory", "Value": 66 }, { "Name": "JacketAccessory", "Value": 67 }, { "Name": "SweaterAccessory", "Value": 68 }, { "Name": "ShortsAccessory", "Value": 69 }, { "Name": "LeftShoeAccessory", "Value": 70 }, { "Name": "RightShoeAccessory", "Value": 71 }, { "Name": "DressSkirtAccessory", "Value": 72 }, { "Name": "EyebrowAccessory", "Value": 76 }, { "Name": "EyelashAccessory", "Value": 77 }, { "Name": "DynamicHead", "Value": 79 } ], "Name": "AvatarAssetType" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "UniverseAudio", "Value": 1 }, { "Name": "UniverseVideo", "Value": 2 }, { "Name": "PlaceAudio", "Value": 4 }, { "Name": "PlaceVideo", "Value": 8 }, { "Name": "UserAudioEligible", "Value": 16 }, { "Name": "UserAudio", "Value": 32 }, { "Name": "UserVideoEligible", "Value": 64 }, { "Name": "UserVideo", "Value": 128 }, { "Name": "UserBanned", "Value": 256 } ], "Name": "AvatarChatServiceFeature" }, { "Items": [ { "Name": "Friend", "Value": 0 }, { "Name": "Chat", "Value": 1 }, { "Name": "Emote", "Value": 2 }, { "Name": "InspectMenu", "Value": 3 } ], "Name": "AvatarContextMenuOption" }, { "Items": [ { "Name": "Asset", "Value": 1 }, { "Name": "Bundle", "Value": 2 } ], "Name": "AvatarItemType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Enabled", "Value": 1 }, { "Name": "Disabled", "Value": 2 } ], "Name": "AvatarJointUpgrade" }, { "Items": [ { "Name": "Success", "Value": 1 }, { "Name": "PermissionDenied", "Value": 2 }, { "Name": "Failed", "Value": 3 } ], "Name": "AvatarPromptResult" }, { "Items": [ { "Name": "Closeup", "Value": 1 }, { "Name": "FullBody", "Value": 2 } ], "Name": "AvatarThumbnailCustomizationType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "AvatarUnificationMode" }, { "Items": [ { "LegacyNames": [ "Left", "Right" ], "Name": "X", "Value": 0 }, { "LegacyNames": [ "Bottom", "Top" ], "Name": "Y", "Value": 1 }, { "LegacyNames": [ "Back", "Front" ], "Name": "Z", "Value": 2 } ], "Name": "Axis" }, { "Items": [ { "LegacyNames": [ "Laser", "Rocket", "Slingshot" ], "Name": "Script", "Value": 0 }, { "Name": "GameTool", "Value": 1 }, { "Name": "Grab", "Value": 2 }, { "Name": "Clone", "Value": 3 }, { "Name": "Hammer", "Value": 4 } ], "Name": "BinType" }, { "Items": [ { "Name": "Head", "Value": 0 }, { "Name": "Torso", "Value": 1 }, { "Name": "LeftArm", "Value": 2 }, { "Name": "RightArm", "Value": 3 }, { "Name": "LeftLeg", "Value": 4 }, { "Name": "RightLeg", "Value": 5 } ], "Name": "BodyPart" }, { "Items": [ { "Name": "Head", "Value": 0 }, { "Name": "UpperTorso", "Value": 1 }, { "Name": "LowerTorso", "Value": 2 }, { "Name": "LeftFoot", "Value": 3 }, { "Name": "LeftLowerLeg", "Value": 4 }, { "Name": "LeftUpperLeg", "Value": 5 }, { "Name": "RightFoot", "Value": 6 }, { "Name": "RightLowerLeg", "Value": 7 }, { "Name": "RightUpperLeg", "Value": 8 }, { "Name": "LeftHand", "Value": 9 }, { "Name": "LeftLowerArm", "Value": 10 }, { "Name": "LeftUpperArm", "Value": 11 }, { "Name": "RightHand", "Value": 12 }, { "Name": "RightLowerArm", "Value": 13 }, { "Name": "RightUpperArm", "Value": 14 }, { "Name": "RootPart", "Value": 15 }, { "Name": "Unknown", "Value": 17 } ], "Name": "BodyPartR15" }, { "Items": [ { "Name": "Outline", "Value": 0 }, { "Name": "Middle", "Value": 1 }, { "Name": "Inset", "Value": 2 } ], "Name": "BorderMode" }, { "Items": [ { "Name": "Other", "Value": 0 }, { "Name": "Error", "Value": 1 }, { "Name": "UserBreakpoint", "Value": 3 }, { "Name": "SpecialBreakpoint", "Value": 2 } ], "Name": "BreakReason" }, { "Items": [ { "Name": "Requested", "Value": 0 }, { "Name": "ScriptChanged", "Value": 1 }, { "Name": "ScriptRemoved", "Value": 2 } ], "Name": "BreakpointRemoveReason" }, { "Items": [ { "Name": "FireAllEvents", "Value": 0 }, { "Name": "FireCFrameChanged", "Value": 1 } ], "Name": "BulkMoveMode" }, { "Items": [ { "Name": "BodyParts", "Value": 1 }, { "Name": "Animations", "Value": 2 }, { "Name": "Shoes", "Value": 3 }, { "Name": "DynamicHead", "Value": 4 }, { "Name": "DynamicHeadAvatar", "Value": 5 } ], "Name": "BundleType" }, { "Items": [ { "Name": "Jump", "Value": 32 }, { "Name": "Dismount", "Value": 8 } ], "Name": "Button" }, { "Items": [ { "Name": "Custom", "Value": 0 }, { "Name": "RobloxButtonDefault", "Value": 1 }, { "Name": "RobloxButton", "Value": 2 }, { "Name": "RobloxRoundButton", "Value": 3 }, { "Name": "RobloxRoundDefaultButton", "Value": 4 }, { "Name": "RobloxRoundDropdownButton", "Value": 5 } ], "Name": "ButtonStyle" }, { "Items": [ { "Name": "Inner", "Value": 0 }, { "Name": "Outer", "Value": 1 } ], "Name": "CageType" }, { "Items": [ { "Name": "Classic", "Value": 0 }, { "Name": "LockFirstPerson", "Value": 1 } ], "Name": "CameraMode" }, { "Items": [ { "Name": "Classic", "Value": 0 }, { "Name": "EdgeBump", "Value": 1 } ], "Name": "CameraPanMode" }, { "Items": [ { "Name": "Fixed", "Value": 0 }, { "Name": "Watch", "Value": 2 }, { "Name": "Attach", "Value": 1 }, { "Name": "Track", "Value": 3 }, { "Name": "Follow", "Value": 4 }, { "Name": "Custom", "Value": 5 }, { "Name": "Scriptable", "Value": 6 }, { "Name": "Orbital", "Value": 7 } ], "Name": "CameraType" }, { "Items": [ { "Name": "None", "Value": 1 }, { "Name": "Featured", "Value": 2 }, { "Name": "Collectibles", "Value": 3 }, { "Name": "CommunityCreations", "Value": 4 }, { "Name": "Premium", "Value": 5 }, { "Name": "Recommended", "Value": 6 } ], "Name": "CatalogCategoryFilter" }, { "Items": [ { "Name": "Past12Hours", "Value": 1 }, { "Name": "PastDay", "Value": 2 }, { "Name": "Past3Days", "Value": 3 }, { "Name": "PastWeek", "Value": 4 }, { "Name": "PastMonth", "Value": 5 }, { "Name": "AllTime", "Value": 6 } ], "Name": "CatalogSortAggregation" }, { "Items": [ { "Name": "Relevance", "Value": 1 }, { "Name": "PriceHighToLow", "Value": 2 }, { "Name": "PriceLowToHigh", "Value": 3 }, { "Name": "MostFavorited", "Value": 5 }, { "LegacyNames": [ "RecentlyUpdated" ], "Name": "RecentlyCreated", "Value": 6 }, { "Name": "Bestselling", "Value": 7 } ], "Name": "CatalogSortType" }, { "Items": [ { "Name": "Solid", "Value": 0 }, { "Name": "VerticalWedge", "Value": 1 }, { "Name": "CornerWedge", "Value": 2 }, { "Name": "InverseCornerWedge", "Value": 3 }, { "Name": "HorizontalWedge", "Value": 4 } ], "Name": "CellBlock" }, { "Items": [ { "Name": "Empty", "Value": 0 }, { "Name": "Grass", "Value": 1 }, { "Name": "Sand", "Value": 2 }, { "Name": "Brick", "Value": 3 }, { "Name": "Granite", "Value": 4 }, { "Name": "Asphalt", "Value": 5 }, { "Name": "Iron", "Value": 6 }, { "Name": "Aluminum", "Value": 7 }, { "Name": "Gold", "Value": 8 }, { "Name": "WoodPlank", "Value": 9 }, { "Name": "WoodLog", "Value": 10 }, { "Name": "Gravel", "Value": 11 }, { "Name": "CinderBlock", "Value": 12 }, { "Name": "MossyStone", "Value": 13 }, { "Name": "Cement", "Value": 14 }, { "Name": "RedPlastic", "Value": 15 }, { "Name": "BluePlastic", "Value": 16 }, { "Name": "Water", "Value": 17 } ], "Name": "CellMaterial" }, { "Items": [ { "Name": "NegZ", "Value": 0 }, { "Name": "X", "Value": 1 }, { "Name": "Z", "Value": 2 }, { "Name": "NegX", "Value": 3 } ], "Name": "CellOrientation" }, { "Items": [ { "Name": "UnsolicitedDialog", "Value": 1 }, { "Name": "PlayerInitiatedDialog", "Value": 2 }, { "Name": "ModalDialog", "Value": 3 }, { "Name": "QuitDialog", "Value": 4 } ], "Name": "CenterDialogType" }, { "Items": [ { "Name": "OnCreatingChatWindow", "Value": 1 }, { "Name": "OnClientSendingMessage", "Value": 2 }, { "Name": "OnClientFormattingMessage", "Value": 3 }, { "Name": "OnServerReceivingMessage", "Value": 17 } ], "Name": "ChatCallbackType" }, { "Items": [ { "Name": "Blue", "Value": 0 }, { "Name": "Green", "Value": 1 }, { "Name": "Red", "Value": 2 }, { "Name": "White", "Value": 3 } ], "Name": "ChatColor" }, { "Items": [ { "Name": "Menu", "Value": 0 }, { "Name": "TextAndMenu", "Value": 1 } ], "Name": "ChatMode" }, { "Items": [ { "Name": "AllUsers", "Value": 0 }, { "Name": "NoOne", "Value": 1 }, { "Name": "Friends", "Value": 2 } ], "Name": "ChatPrivacyMode" }, { "Items": [ { "Name": "Classic", "Value": 0 }, { "Name": "Bubble", "Value": 1 }, { "Name": "ClassicAndBubble", "Value": 2 } ], "Name": "ChatStyle" }, { "Items": [ { "Name": "LegacyChatService", "Value": 0 }, { "Name": "TextChatService", "Value": 1 } ], "Name": "ChatVersion" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "ClientAnimatorThrottlingMode" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Hull", "Value": 1 }, { "Name": "Box", "Value": 2 }, { "Name": "PreciseConvexDecomposition", "Value": 3 }, { "Name": "DynamicPreciseConvexDecomposition", "Value": 4 } ], "Name": "CollisionFidelity" }, { "Items": [ { "Name": "Plugin", "Value": 0 }, { "Name": "LocalUser", "Value": 1 } ], "Name": "CommandPermission" }, { "Items": [ { "Name": "Client", "Value": 0 }, { "Name": "CoreScript", "Value": 1 }, { "Name": "Studio", "Value": 2 }, { "Name": "CoreScriptRaw", "Value": 3 } ], "Name": "CompileTarget" }, { "Items": [ { "Name": "Text", "Value": 1 }, { "Name": "Method", "Value": 2 }, { "Name": "Function", "Value": 3 }, { "Name": "Constructor", "Value": 4 }, { "Name": "Field", "Value": 5 }, { "Name": "Variable", "Value": 6 }, { "Name": "Class", "Value": 7 }, { "Name": "Interface", "Value": 8 }, { "Name": "Module", "Value": 9 }, { "Name": "Property", "Value": 10 }, { "Name": "Unit", "Value": 11 }, { "Name": "Value", "Value": 12 }, { "Name": "Enum", "Value": 13 }, { "Name": "Keyword", "Value": 14 }, { "Name": "Snippet", "Value": 15 }, { "Name": "Color", "Value": 16 }, { "Name": "File", "Value": 17 }, { "Name": "Reference", "Value": 18 }, { "Name": "Folder", "Value": 19 }, { "Name": "EnumMember", "Value": 20 }, { "Name": "Constant", "Value": 21 }, { "Name": "Struct", "Value": 22 }, { "Name": "Event", "Value": 23 }, { "Name": "Operator", "Value": 24 }, { "Name": "TypeParameter", "Value": 25 } ], "Name": "CompletionItemKind" }, { "Items": [ { "Name": "Deprecated", "Value": 1 }, { "Name": "IncorrectIndexType", "Value": 2 }, { "Name": "PluginPermissions", "Value": 3 }, { "Name": "CommandLinePermissions", "Value": 4 }, { "Name": "RobloxPermissions", "Value": 5 }, { "Name": "AddParens", "Value": 6 }, { "Name": "PutCursorInParens", "Value": 7 }, { "Name": "TypeCorrect", "Value": 8 }, { "Name": "ClientServerBoundaryViolation", "Value": 9 } ], "Name": "CompletionItemTag" }, { "Items": [ { "Name": "Invoked", "Value": 1 }, { "Name": "TriggerCharacter", "Value": 2 }, { "Name": "TriggerForIncompleteCompletions", "Value": 3 } ], "Name": "CompletionTriggerKind" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Follow", "Value": 2 }, { "Name": "Classic", "Value": 1 }, { "Name": "Orbital", "Value": 3 }, { "Name": "CameraToggle", "Value": 4 } ], "Name": "ComputerCameraMovementMode" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "KeyboardMouse", "Value": 1 }, { "Name": "ClickToMove", "Value": 2 } ], "Name": "ComputerMovementMode" }, { "Items": [ { "Name": "OK", "Value": 0 }, { "Name": "Unknown", "Value": 1 }, { "Name": "DisconnectErrors", "Value": 256 }, { "Name": "DisconnectBadhash", "Value": 257 }, { "Name": "DisconnectSecurityKeyMismatch", "Value": 258 }, { "Name": "DisconnectNewSecurityKeyMismatch", "Value": 272 }, { "Name": "DisconnectProtocolMismatch", "Value": 259 }, { "Name": "DisconnectReceivePacketError", "Value": 260 }, { "Name": "DisconnectReceivePacketStreamError", "Value": 261 }, { "Name": "DisconnectSendPacketError", "Value": 262 }, { "Name": "DisconnectIllegalTeleport", "Value": 263 }, { "Name": "DisconnectDuplicatePlayer", "Value": 264 }, { "Name": "DisconnectDuplicateTicket", "Value": 265 }, { "Name": "DisconnectTimeout", "Value": 266 }, { "Name": "DisconnectLuaKick", "Value": 267 }, { "Name": "DisconnectOnRemoteSysStats", "Value": 268 }, { "Name": "DisconnectHashTimeout", "Value": 269 }, { "Name": "DisconnectCloudEditKick", "Value": 270 }, { "Name": "DisconnectPlayerless", "Value": 271 }, { "Name": "DisconnectEvicted", "Value": 273 }, { "Name": "DisconnectDevMaintenance", "Value": 274 }, { "Name": "DisconnectRobloxMaintenance", "Value": 275 }, { "Name": "DisconnectRejoin", "Value": 276 }, { "Name": "DisconnectConnectionLost", "Value": 277 }, { "Name": "DisconnectIdle", "Value": 278 }, { "Name": "DisconnectRaknetErrors", "Value": 279 }, { "Name": "DisconnectWrongVersion", "Value": 280 }, { "Name": "DisconnectBySecurityPolicy", "Value": 281 }, { "Name": "DisconnectBlockedIP", "Value": 282 }, { "Name": "DisconnectClientFailure", "Value": 284 }, { "Name": "DisconnectClientRequest", "Value": 285 }, { "Name": "DisconnectPrivateServerKickout", "Value": 286 }, { "Name": "DisconnectModeratedGame", "Value": 287 }, { "Name": "DisconnectRomarkEndOfTest", "Value": 293 }, { "Name": "ReplicatorTimeout", "Value": 290 }, { "Name": "PlayerRemoved", "Value": 291 }, { "Name": "DisconnectOutOfMemoryKeepPlayingLeave", "Value": 292 }, { "Name": "DisconnectCollaboratorPermissionRevoked", "Value": 294 }, { "Name": "DisconnectCollaboratorUnderage", "Value": 295 }, { "Name": "PlacelaunchErrors", "Value": 512 }, { "Name": "PlacelaunchDisabled", "Value": 515 }, { "Name": "PlacelaunchError", "Value": 516 }, { "Name": "PlacelaunchGameEnded", "Value": 517 }, { "Name": "PlacelaunchGameFull", "Value": 518 }, { "Name": "PlacelaunchUserLeft", "Value": 522 }, { "Name": "PlacelaunchRestricted", "Value": 523 }, { "Name": "PlacelaunchUnauthorized", "Value": 524 }, { "Name": "PlacelaunchFlooded", "Value": 525 }, { "Name": "PlacelaunchHashExpired", "Value": 526 }, { "Name": "PlacelaunchHashException", "Value": 527 }, { "Name": "PlacelaunchPartyCannotFit", "Value": 528 }, { "Name": "PlacelaunchHttpError", "Value": 529 }, { "Name": "PlacelaunchUserPrivacyUnauthorized", "Value": 533 }, { "Name": "PlacelaunchCustomMessage", "Value": 610 }, { "Name": "PlacelaunchOtherError", "Value": 611 }, { "Name": "TeleportErrors", "Value": 768 }, { "Name": "TeleportFailure", "Value": 769 }, { "Name": "TeleportGameNotFound", "Value": 770 }, { "Name": "TeleportGameEnded", "Value": 771 }, { "Name": "TeleportGameFull", "Value": 772 }, { "Name": "TeleportUnauthorized", "Value": 773 }, { "Name": "TeleportFlooded", "Value": 774 }, { "Name": "TeleportIsTeleporting", "Value": 775 } ], "Name": "ConnectionError" }, { "Items": [ { "Name": "Connected", "Value": 0 }, { "Name": "Disconnected", "Value": 1 } ], "Name": "ConnectionState" }, { "Items": [ { "Name": "Low", "Value": 1000 }, { "LegacyNames": [ "Default" ], "Name": "Medium", "Value": 2000 }, { "Name": "High", "Value": 3000 } ], "Name": "ContextActionPriority" }, { "Items": [ { "Name": "Pass", "Value": 1 }, { "Name": "Sink", "Value": 0 } ], "Name": "ContextActionResult" }, { "Items": [ { "LegacyNames": [ "Mouse Lock Switch" ], "Name": "MouseLockSwitch", "Value": 1 }, { "Name": "Classic", "Value": 0 } ], "Name": "ControlMode" }, { "Items": [ { "Name": "PlayerList", "Value": 0 }, { "Name": "Health", "Value": 1 }, { "Name": "Backpack", "Value": 2 }, { "Name": "Chat", "Value": 3 }, { "Name": "All", "Value": 4 }, { "Name": "EmotesMenu", "Value": 5 }, { "Name": "SelfView", "Value": 6 } ], "Name": "CoreGuiType" }, { "Items": [ { "Name": "InvalidName", "Value": 1 }, { "Name": "OutfitLimitReached", "Value": 2 }, { "Name": "Other", "Value": 3 } ], "Name": "CreateOutfitFailure" }, { "Items": [ { "Name": "User", "Value": 0 }, { "Name": "Group", "Value": 1 } ], "Name": "CreatorType" }, { "Items": [ { "Name": "User", "Value": 0 }, { "Name": "Group", "Value": 1 }, { "Name": "All", "Value": 2 } ], "Name": "CreatorTypeFilter" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Robux", "Value": 1 }, { "Name": "Tix", "Value": 2 } ], "Name": "CurrencyType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Follow", "Value": 2 }, { "Name": "Classic", "Value": 1 } ], "Name": "CustomCameraMode" }, { "Items": [ { "Name": "GetAsync", "Value": 0 }, { "Name": "SetIncrementAsync", "Value": 1 }, { "Name": "UpdateAsync", "Value": 2 }, { "Name": "GetSortedAsync", "Value": 3 }, { "Name": "SetIncrementSortedAsync", "Value": 4 }, { "Name": "OnUpdate", "Value": 5 } ], "Name": "DataStoreRequestType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "ClassicBreakApart", "Value": 1 }, { "Name": "NonGraphic", "Value": 2 }, { "Name": "Scriptable", "Value": 3 } ], "Name": "DeathStyle" }, { "Items": [ { "Name": "ClientRequest", "Value": 0 }, { "Name": "Timeout", "Value": 1 }, { "Name": "InvalidHost", "Value": 2 }, { "Name": "Disconnected", "Value": 3 }, { "Name": "ServerShutdown", "Value": 4 }, { "Name": "ServerProtocolMismatch", "Value": 5 }, { "Name": "ConfigurationFailed", "Value": 6 }, { "Name": "RpcError", "Value": 7 } ], "Name": "DebuggerEndReason" }, { "Items": [ { "Name": "Never", "Value": 0 }, { "Name": "Unhandled", "Value": 2 }, { "Name": "Always", "Value": 1 } ], "Name": "DebuggerExceptionBreakMode" }, { "Items": [ { "Name": "C", "Value": 0 }, { "Name": "Lua", "Value": 1 } ], "Name": "DebuggerFrameType" }, { "Items": [ { "Name": "Unknown", "Value": 0 }, { "Name": "Requested", "Value": 1 }, { "Name": "Breakpoint", "Value": 2 }, { "Name": "Exception", "Value": 3 }, { "Name": "SingleStep", "Value": 4 }, { "Name": "Entrypoint", "Value": 5 } ], "Name": "DebuggerPauseReason" }, { "Items": [ { "Name": "Success", "Value": 0 }, { "Name": "Timeout", "Value": 1 }, { "Name": "ConnectionLost", "Value": 2 }, { "Name": "InvalidResponse", "Value": 3 }, { "Name": "InternalError", "Value": 4 }, { "Name": "InvalidState", "Value": 5 }, { "Name": "RpcError", "Value": 6 }, { "Name": "InvalidArgument", "Value": 7 }, { "Name": "ConnectionClosed", "Value": 8 } ], "Name": "DebuggerStatus" }, { "Items": [ { "Name": "Zoom", "Value": 0 }, { "Name": "Invisicam", "Value": 1 } ], "Name": "DevCameraOcclusionMode" }, { "Items": [ { "Name": "UserChoice", "Value": 0 }, { "Name": "Classic", "Value": 1 }, { "Name": "Follow", "Value": 2 }, { "Name": "Orbital", "Value": 3 }, { "Name": "CameraToggle", "Value": 4 } ], "Name": "DevComputerCameraMovementMode" }, { "Items": [ { "Name": "UserChoice", "Value": 0 }, { "Name": "KeyboardMouse", "Value": 1 }, { "Name": "ClickToMove", "Value": 2 }, { "Name": "Scriptable", "Value": 3 } ], "Name": "DevComputerMovementMode" }, { "Items": [ { "Name": "UserChoice", "Value": 0 }, { "Name": "Classic", "Value": 1 }, { "Name": "Follow", "Value": 2 }, { "Name": "Orbital", "Value": 3 } ], "Name": "DevTouchCameraMovementMode" }, { "Items": [ { "Name": "UserChoice", "Value": 0 }, { "Name": "Thumbstick", "Value": 1 }, { "Name": "DPad", "Value": 2 }, { "Name": "Thumbpad", "Value": 3 }, { "Name": "ClickToMove", "Value": 4 }, { "Name": "Scriptable", "Value": 5 }, { "Name": "DynamicThumbstick", "Value": 6 } ], "Name": "DevTouchMovementMode" }, { "Items": [ { "Name": "Internal", "Value": 0 }, { "Name": "HttpCache", "Value": 1 }, { "Name": "Instances", "Value": 2 }, { "Name": "Signals", "Value": 3 }, { "Name": "LuaHeap", "Value": 4 }, { "Name": "Script", "Value": 5 }, { "Name": "PhysicsCollision", "Value": 6 }, { "Name": "PhysicsParts", "Value": 7 }, { "Name": "GraphicsSolidModels", "Value": 8 }, { "Name": "GraphicsMeshParts", "Value": 10 }, { "Name": "GraphicsParticles", "Value": 11 }, { "Name": "GraphicsParts", "Value": 12 }, { "Name": "GraphicsSpatialHash", "Value": 13 }, { "Name": "GraphicsTerrain", "Value": 14 }, { "Name": "GraphicsTexture", "Value": 15 }, { "Name": "GraphicsTextureCharacter", "Value": 16 }, { "Name": "Sounds", "Value": 17 }, { "Name": "StreamingSounds", "Value": 18 }, { "Name": "TerrainVoxels", "Value": 19 }, { "Name": "Gui", "Value": 21 }, { "Name": "Animation", "Value": 22 }, { "Name": "Navigation", "Value": 23 }, { "Name": "GeometryCSG", "Value": 24 } ], "Name": "DeveloperMemoryTag" }, { "Items": [ { "Name": "Unknown", "Value": 0 }, { "Name": "Desktop", "Value": 1 }, { "Name": "Tablet", "Value": 2 }, { "Name": "Phone", "Value": 3 } ], "Name": "DeviceType" }, { "Items": [ { "Name": "SinglePlayer", "Value": 0 }, { "Name": "MultiplePlayers", "Value": 1 } ], "Name": "DialogBehaviorType" }, { "Items": [ { "Name": "Quest", "Value": 0 }, { "Name": "Help", "Value": 1 }, { "Name": "Shop", "Value": 2 } ], "Name": "DialogPurpose" }, { "Items": [ { "Name": "Neutral", "Value": 0 }, { "Name": "Friendly", "Value": 1 }, { "Name": "Enemy", "Value": 2 } ], "Name": "DialogTone" }, { "Items": [ { "Name": "Width", "Value": 0 }, { "Name": "Height", "Value": 1 } ], "Name": "DominantAxis" }, { "Items": [ { "Name": "OK", "Value": 0 }, { "Name": "DraftOutdated", "Value": 1 }, { "Name": "ScriptRemoved", "Value": 2 }, { "Name": "DraftCommitted", "Value": 3 } ], "Name": "DraftStatusCode" }, { "Items": [ { "Name": "TranslateLine", "Value": 0 }, { "Name": "TranslatePlane", "Value": 1 }, { "Name": "TranslatePlaneOrLine", "Value": 2 }, { "Name": "TranslateLineOrPlane", "Value": 3 }, { "Name": "TranslateViewPlane", "Value": 4 }, { "Name": "RotateAxis", "Value": 5 }, { "Name": "RotateTrackball", "Value": 6 }, { "Name": "Scriptable", "Value": 7 }, { "Name": "BestForDevice", "Value": 8 } ], "Name": "DragDetectorDragStyle" }, { "Items": [ { "Name": "Geometric", "Value": 0 }, { "Name": "Physical", "Value": 1 }, { "Name": "Custom", "Value": 2 } ], "Name": "DragDetectorResponseStyle" }, { "Items": [ { "Name": "Object", "Value": 0 }, { "Name": "World", "Value": 1 } ], "Name": "DraggerCoordinateSpace" }, { "Items": [ { "Name": "Geometric", "Value": 0 }, { "Name": "Physical", "Value": 1 } ], "Name": "DraggerMovementMode" }, { "Items": [ { "Name": "In", "Value": 0 }, { "Name": "Out", "Value": 1 }, { "Name": "InOut", "Value": 2 } ], "Name": "EasingDirection" }, { "Items": [ { "Name": "Linear", "Value": 0 }, { "Name": "Sine", "Value": 1 }, { "Name": "Back", "Value": 2 }, { "Name": "Quad", "Value": 3 }, { "Name": "Quart", "Value": 4 }, { "Name": "Quint", "Value": 5 }, { "Name": "Bounce", "Value": 6 }, { "Name": "Elastic", "Value": 7 }, { "Name": "Exponential", "Value": 8 }, { "Name": "Circular", "Value": 9 }, { "Name": "Cubic", "Value": 10 } ], "Name": "EasingStyle" }, { "Items": [ { "Name": "WhenScrollable", "Value": 0 }, { "Name": "Always", "Value": 1 }, { "Name": "Never", "Value": 2 } ], "Name": "ElasticBehavior" }, { "Items": [ { "Name": "DefaultAuto", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Always", "Value": 2 }, { "Name": "Skip2", "Value": 3 }, { "Name": "Skip4", "Value": 4 }, { "Name": "Skip8", "Value": 5 }, { "Name": "Skip16", "Value": 6 } ], "Name": "EnviromentalPhysicsThrottle" }, { "Items": [ { "Name": "DefaultScope", "Value": 0 }, { "Name": "CreatorAssetsCreate", "Value": 1 } ], "Name": "ExperienceAuthScope" }, { "Items": [ { "Name": "NoCraters", "Value": 0 }, { "LegacyNames": [ "CratersAndDebris" ], "Name": "Craters", "Value": 1 } ], "Name": "ExplosionType" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "Audio", "Value": 1 }, { "Name": "Video", "Value": 2 }, { "Name": "Place", "Value": 4 }, { "Name": "Server", "Value": 8 } ], "Name": "FacialAnimationStreamingState" }, { "Items": [ { "Name": "Vertical", "Value": 0 }, { "Name": "Diagonal", "Value": 1 }, { "Name": "MaxAxis", "Value": 2 } ], "Name": "FieldOfViewMode" }, { "Items": [ { "Name": "Horizontal", "Value": 0 }, { "Name": "Vertical", "Value": 1 } ], "Name": "FillDirection" }, { "Items": [ { "Name": "Rejected", "Value": 1 }, { "Name": "Accepted", "Value": 0 } ], "Name": "FilterResult" }, { "Items": [ { "Name": "Cancel", "Value": 0 }, { "Name": "Commit", "Value": 1 }, { "Name": "Append", "Value": 2 } ], "Name": "FinishRecordingOperation" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Experimental", "Value": 1 } ], "Name": "FluidForces" }, { "Items": [ { "Name": "Legacy", "Value": 0 }, { "Name": "Arial", "Value": 1 }, { "Name": "ArialBold", "Value": 2 }, { "Name": "SourceSans", "Value": 3 }, { "Name": "SourceSansBold", "Value": 4 }, { "Name": "SourceSansSemibold", "Value": 16 }, { "Name": "SourceSansLight", "Value": 5 }, { "Name": "SourceSansItalic", "Value": 6 }, { "Name": "Bodoni", "Value": 7 }, { "Name": "Garamond", "Value": 8 }, { "Name": "Cartoon", "Value": 9 }, { "Name": "Code", "Value": 10 }, { "Name": "Highway", "Value": 11 }, { "Name": "SciFi", "Value": 12 }, { "Name": "Arcade", "Value": 13 }, { "Name": "Fantasy", "Value": 14 }, { "Name": "Antique", "Value": 15 }, { "LegacyNames": [ "Montserrat" ], "Name": "Gotham", "Value": 17 }, { "LegacyNames": [ "GothamSemibold", "MontserratMedium" ], "Name": "GothamMedium", "Value": 18 }, { "LegacyNames": [ "MontserratBold" ], "Name": "GothamBold", "Value": 19 }, { "LegacyNames": [ "MontserratBlack" ], "Name": "GothamBlack", "Value": 20 }, { "Name": "AmaticSC", "Value": 21 }, { "Name": "Bangers", "Value": 22 }, { "Name": "Creepster", "Value": 23 }, { "Name": "DenkOne", "Value": 24 }, { "Name": "Fondamento", "Value": 25 }, { "Name": "FredokaOne", "Value": 26 }, { "Name": "GrenzeGotisch", "Value": 27 }, { "Name": "IndieFlower", "Value": 28 }, { "Name": "JosefinSans", "Value": 29 }, { "Name": "Jura", "Value": 30 }, { "Name": "Kalam", "Value": 31 }, { "Name": "LuckiestGuy", "Value": 32 }, { "Name": "Merriweather", "Value": 33 }, { "Name": "Michroma", "Value": 34 }, { "Name": "Nunito", "Value": 35 }, { "Name": "Oswald", "Value": 36 }, { "Name": "PatrickHand", "Value": 37 }, { "Name": "PermanentMarker", "Value": 38 }, { "Name": "Roboto", "Value": 39 }, { "Name": "RobotoCondensed", "Value": 40 }, { "Name": "RobotoMono", "Value": 41 }, { "Name": "Sarpanch", "Value": 42 }, { "Name": "SpecialElite", "Value": 43 }, { "Name": "TitilliumWeb", "Value": 44 }, { "Name": "Ubuntu", "Value": 45 }, { "Name": "Unknown", "Value": 100 } ], "Name": "Font" }, { "Items": [ { "Name": "Size8", "Value": 0 }, { "Name": "Size9", "Value": 1 }, { "Name": "Size10", "Value": 2 }, { "Name": "Size11", "Value": 3 }, { "Name": "Size12", "Value": 4 }, { "Name": "Size14", "Value": 5 }, { "Name": "Size18", "Value": 6 }, { "Name": "Size24", "Value": 7 }, { "Name": "Size36", "Value": 8 }, { "Name": "Size48", "Value": 9 }, { "Name": "Size28", "Value": 10 }, { "Name": "Size32", "Value": 11 }, { "Name": "Size42", "Value": 12 }, { "Name": "Size60", "Value": 13 }, { "Name": "Size96", "Value": 14 } ], "Name": "FontSize" }, { "Items": [ { "Name": "Normal", "Value": 0 }, { "Name": "Italic", "Value": 1 } ], "Name": "FontStyle" }, { "Items": [ { "Name": "Thin", "Value": 100 }, { "Name": "ExtraLight", "Value": 200 }, { "Name": "Light", "Value": 300 }, { "Name": "Regular", "Value": 400 }, { "Name": "Medium", "Value": 500 }, { "Name": "SemiBold", "Value": 600 }, { "Name": "Bold", "Value": 700 }, { "Name": "ExtraBold", "Value": 800 }, { "Name": "Heavy", "Value": 900 } ], "Name": "FontWeight" }, { "Items": [ { "Name": "Magnitude", "Value": 0 }, { "Name": "PerAxis", "Value": 1 } ], "Name": "ForceLimitMode" }, { "Items": [ { "Name": "Symmetric", "Value": 0 }, { "LegacyNames": [ "Block" ], "Name": "Brick", "Value": 1 }, { "Name": "Plate", "Value": 2 }, { "Name": "Custom", "Value": 3 } ], "Name": "FormFactor" }, { "Items": [ { "Name": "Custom", "Value": 0 }, { "Name": "ChatBlue", "Value": 1 }, { "Name": "RobloxSquare", "Value": 2 }, { "Name": "RobloxRound", "Value": 3 }, { "Name": "ChatGreen", "Value": 4 }, { "Name": "ChatRed", "Value": 5 }, { "Name": "DropShadow", "Value": 6 } ], "Name": "FrameStyle" }, { "Items": [ { "Name": "Automatic", "Value": 0 }, { "Name": "On", "Value": 1 }, { "Name": "Off", "Value": 2 } ], "Name": "FramerateManagerMode" }, { "Items": [ { "Name": "Issue", "Value": 0 }, { "Name": "Revoke", "Value": 1 }, { "Name": "Accept", "Value": 2 }, { "Name": "Deny", "Value": 3 } ], "Name": "FriendRequestEvent" }, { "Items": [ { "Name": "Unknown", "Value": 0 }, { "Name": "NotFriend", "Value": 1 }, { "Name": "Friend", "Value": 2 }, { "Name": "FriendRequestSent", "Value": 3 }, { "Name": "FriendRequestReceived", "Value": 4 } ], "Name": "FriendStatus" }, { "Items": [ { "Name": "Passed", "Value": 0 }, { "Name": "Warning", "Value": 1 }, { "Name": "Error", "Value": 2 } ], "Name": "FunctionalTestResult" }, { "Items": [ { "Name": "R6", "Value": 0 }, { "Name": "R15", "Value": 1 }, { "Name": "PlayerChoice", "Value": 2 } ], "Name": "GameAvatarType" }, { "Items": [ { "Name": "AllGenres", "Tags": [ "Deprecated" ], "Value": 0 }, { "Name": "MatchingGenreOnly", "Tags": [ "Deprecated" ], "Value": 1 } ], "Name": "GearGenreSetting", "Tags": [ "Deprecated" ] }, { "Items": [ { "Name": "MeleeWeapons", "Tags": [ "Deprecated" ], "Value": 0 }, { "Name": "RangedWeapons", "Tags": [ "Deprecated" ], "Value": 1 }, { "Name": "Explosives", "Tags": [ "Deprecated" ], "Value": 2 }, { "Name": "PowerUps", "Tags": [ "Deprecated" ], "Value": 3 }, { "Name": "NavigationEnhancers", "Tags": [ "Deprecated" ], "Value": 4 }, { "Name": "MusicalInstruments", "Tags": [ "Deprecated" ], "Value": 5 }, { "Name": "SocialItems", "Tags": [ "Deprecated" ], "Value": 6 }, { "Name": "BuildingTools", "Tags": [ "Deprecated" ], "Value": 7 }, { "Name": "Transport", "Tags": [ "Deprecated" ], "Value": 8 } ], "Name": "GearType", "Tags": [ "Deprecated" ] }, { "Items": [ { "Name": "All", "Value": 0 }, { "Name": "TownAndCity", "Value": 1 }, { "Name": "Fantasy", "Value": 2 }, { "Name": "SciFi", "Value": 3 }, { "Name": "Ninja", "Value": 4 }, { "Name": "Scary", "Value": 5 }, { "Name": "Pirate", "Value": 6 }, { "Name": "Adventure", "Value": 7 }, { "Name": "Sports", "Value": 8 }, { "Name": "Funny", "Value": 9 }, { "Name": "WildWest", "Value": 10 }, { "Name": "War", "Value": 11 }, { "Name": "SkatePark", "Value": 12 }, { "Name": "Tutorial", "Value": 13 } ], "Name": "Genre", "Tags": [ "Deprecated" ] }, { "Items": [ { "Name": "Automatic", "Value": 1 }, { "Name": "Direct3D11", "Value": 2 }, { "Name": "OpenGL", "Value": 4 }, { "Name": "Metal", "Value": 5 }, { "Name": "Vulkan", "Value": 6 }, { "Name": "NoGraphics", "Value": 9 } ], "Name": "GraphicsMode" }, { "Items": [ { "Name": "Core", "Value": 0 }, { "Name": "Custom", "Value": 1 }, { "Name": "CustomBillboards", "Value": 3 }, { "Name": "PlayerNameplates", "Value": 2 } ], "Name": "GuiType" }, { "Items": [ { "Name": "Resize", "Value": 0 }, { "Name": "Movement", "Value": 1 } ], "Name": "HandlesStyle" }, { "Items": [ { "Name": "AlwaysOnTop", "Value": 0 }, { "Name": "Occluded", "Value": 1 } ], "Name": "HighlightDepthMode" }, { "Items": [ { "Name": "Center", "Value": 0 }, { "Name": "Left", "Value": 1 }, { "Name": "Right", "Value": 2 } ], "Name": "HorizontalAlignment" }, { "Items": [ { "Name": "VerySlow", "Value": 0 }, { "Name": "Slow", "Value": 1 }, { "Name": "Medium", "Value": 2 }, { "Name": "Fast", "Value": 3 }, { "Name": "VeryFast", "Value": 4 } ], "Name": "HoverAnimateSpeed" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "Full", "Value": 1 }, { "Name": "DataOnly", "Value": 2 }, { "Name": "Default", "Value": 3 }, { "Name": "InternalRedirectRefresh", "Value": 4 } ], "Name": "HttpCachePolicy" }, { "Items": [ { "Name": "ApplicationJson", "Value": 0 }, { "Name": "ApplicationXml", "Value": 1 }, { "Name": "ApplicationUrlEncoded", "Value": 2 }, { "Name": "TextPlain", "Value": 3 }, { "Name": "TextXml", "Value": 4 } ], "Name": "HttpContentType" }, { "Items": [ { "Name": "OK", "Value": 0 }, { "Name": "InvalidUrl", "Value": 1 }, { "Name": "DnsResolve", "Value": 2 }, { "Name": "ConnectFail", "Value": 3 }, { "Name": "OutOfMemory", "Value": 4 }, { "Name": "TimedOut", "Value": 5 }, { "Name": "TooManyRedirects", "Value": 6 }, { "Name": "InvalidRedirect", "Value": 7 }, { "Name": "NetFail", "Value": 8 }, { "Name": "Aborted", "Value": 9 }, { "Name": "SslConnectFail", "Value": 10 }, { "Name": "SslVerificationFail", "Value": 11 }, { "Name": "Unknown", "Value": 12 } ], "Name": "HttpError" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "MarketplaceService", "Value": 2 }, { "Name": "Players", "Value": 7 }, { "Name": "Chat", "Value": 15 }, { "Name": "Avatar", "Value": 16 }, { "Name": "Analytics", "Value": 23 }, { "Name": "Localization", "Value": 25 } ], "Name": "HttpRequestType" }, { "Items": [ { "Name": "OuterBox", "Value": 0 }, { "Name": "InnerBox", "Value": 1 } ], "Name": "HumanoidCollisionType" }, { "Items": [ { "Name": "Viewer", "Value": 0 }, { "Name": "Subject", "Value": 1 }, { "Name": "None", "Value": 2 } ], "Name": "HumanoidDisplayDistanceType" }, { "Items": [ { "Name": "DisplayWhenDamaged", "Value": 0 }, { "Name": "AlwaysOn", "Value": 1 }, { "Name": "AlwaysOff", "Value": 2 } ], "Name": "HumanoidHealthDisplayType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "HumanoidOnlySetCollisionsOnStateChange" }, { "Items": [ { "Name": "R6", "Value": 0 }, { "Name": "R15", "Value": 1 } ], "Name": "HumanoidRigType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Legacy", "Value": 1 }, { "Name": "NoStateMachine", "Value": 2 }, { "Name": "LuaStateMachine", "Value": 3 } ], "Name": "HumanoidStateMachineMode" }, { "Items": [ { "Name": "FallingDown", "Value": 0 }, { "Name": "Running", "Value": 8 }, { "Name": "RunningNoPhysics", "Value": 10 }, { "Name": "Climbing", "Value": 12 }, { "Name": "StrafingNoPhysics", "Value": 11 }, { "Name": "Ragdoll", "Value": 1 }, { "Name": "GettingUp", "Value": 2 }, { "Name": "Jumping", "Value": 3 }, { "Name": "Landed", "Value": 7 }, { "Name": "Flying", "Value": 6 }, { "Name": "Freefall", "Value": 5 }, { "Name": "Seated", "Value": 13 }, { "Name": "PlatformStanding", "Value": 14 }, { "Name": "Dead", "Value": 15 }, { "Name": "Swimming", "Value": 4 }, { "Name": "Physics", "Value": 16 }, { "Name": "None", "Value": 18 } ], "Name": "HumanoidStateType" }, { "Items": [ { "Name": "NoCollisions", "Value": 0 }, { "Name": "OtherMechanismsAnchored", "Value": 1 }, { "Name": "IncludeContactedMechanisms", "Value": 2 } ], "Name": "IKCollisionsMode" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "IKControlConstraintSupport" }, { "Items": [ { "Name": "Transform", "Value": 0 }, { "Name": "Position", "Value": 1 }, { "Name": "Rotation", "Value": 2 }, { "Name": "LookAt", "Value": 3 } ], "Name": "IKControlType" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "Pending", "Value": 1 }, { "Name": "Initialized", "Value": 2 }, { "Name": "ErrorTimedOut", "Value": 6 }, { "Name": "ErrorConnection", "Value": 4 }, { "Name": "ErrorJsonParse", "Value": 5 }, { "Name": "ErrorInvalidUser", "Value": 3 } ], "Name": "IXPLoadingStatus" }, { "Items": [ { "Name": "Edge", "Value": 0 }, { "Name": "Inset", "Value": 1 }, { "Name": "Center", "Value": 2 } ], "Name": "InOut" }, { "Items": [ { "Name": "Asset", "Value": 0 }, { "Name": "Product", "Value": 1 }, { "Name": "GamePass", "Value": 2 }, { "Name": "Subscription", "Value": 3 }, { "Name": "Bundle", "Value": 4 } ], "Name": "InfoType" }, { "Items": [ { "Name": "Top", "Value": 0 }, { "Name": "Bottom", "Value": 1 }, { "Name": "Left", "Value": 2 }, { "Name": "Right", "Value": 3 }, { "Name": "Float", "Value": 4 } ], "Name": "InitialDockState" }, { "Items": [ { "LegacyNames": [ "Action1", "Action2", "Action3", "Action4", "Action5", "LeftTread", "RightTread", "Steer", "Throtle", "Throttle", "UpDown" ], "Name": "NoInput", "Value": 0 }, { "Name": "Constant", "Value": 12 }, { "Name": "Sin", "Value": 13 } ], "Name": "InputType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "InterpolationThrottlingMode" }, { "Items": [ { "Name": "All", "Value": 0 }, { "Name": "Surface", "Value": 1 }, { "Name": "None", "Value": 2 } ], "Name": "JointCreationMode" }, { "Items": [ { "Name": "Unknown", "Value": 0 }, { "Name": "Backspace", "Value": 8 }, { "Name": "Tab", "Value": 9 }, { "Name": "Clear", "Value": 12 }, { "Name": "Return", "Value": 13 }, { "Name": "Pause", "Value": 19 }, { "Name": "Escape", "Value": 27 }, { "Name": "Space", "Value": 32 }, { "Name": "QuotedDouble", "Value": 34 }, { "Name": "Hash", "Value": 35 }, { "Name": "Dollar", "Value": 36 }, { "Name": "Percent", "Value": 37 }, { "Name": "Ampersand", "Value": 38 }, { "Name": "Quote", "Value": 39 }, { "Name": "LeftParenthesis", "Value": 40 }, { "Name": "RightParenthesis", "Value": 41 }, { "Name": "Asterisk", "Value": 42 }, { "Name": "Plus", "Value": 43 }, { "Name": "Comma", "Value": 44 }, { "Name": "Minus", "Value": 45 }, { "Name": "Period", "Value": 46 }, { "Name": "Slash", "Value": 47 }, { "Name": "Zero", "Value": 48 }, { "Name": "One", "Value": 49 }, { "Name": "Two", "Value": 50 }, { "Name": "Three", "Value": 51 }, { "Name": "Four", "Value": 52 }, { "Name": "Five", "Value": 53 }, { "Name": "Six", "Value": 54 }, { "Name": "Seven", "Value": 55 }, { "Name": "Eight", "Value": 56 }, { "Name": "Nine", "Value": 57 }, { "Name": "Colon", "Value": 58 }, { "Name": "Semicolon", "Value": 59 }, { "Name": "LessThan", "Value": 60 }, { "Name": "Equals", "Value": 61 }, { "Name": "GreaterThan", "Value": 62 }, { "Name": "Question", "Value": 63 }, { "Name": "At", "Value": 64 }, { "Name": "LeftBracket", "Value": 91 }, { "Name": "BackSlash", "Value": 92 }, { "Name": "RightBracket", "Value": 93 }, { "Name": "Caret", "Value": 94 }, { "Name": "Underscore", "Value": 95 }, { "Name": "Backquote", "Value": 96 }, { "Name": "A", "Value": 97 }, { "Name": "B", "Value": 98 }, { "Name": "C", "Value": 99 }, { "Name": "D", "Value": 100 }, { "Name": "E", "Value": 101 }, { "Name": "F", "Value": 102 }, { "Name": "G", "Value": 103 }, { "Name": "H", "Value": 104 }, { "Name": "I", "Value": 105 }, { "Name": "J", "Value": 106 }, { "Name": "K", "Value": 107 }, { "Name": "L", "Value": 108 }, { "Name": "M", "Value": 109 }, { "Name": "N", "Value": 110 }, { "Name": "O", "Value": 111 }, { "Name": "P", "Value": 112 }, { "Name": "Q", "Value": 113 }, { "Name": "R", "Value": 114 }, { "Name": "S", "Value": 115 }, { "Name": "T", "Value": 116 }, { "Name": "U", "Value": 117 }, { "Name": "V", "Value": 118 }, { "Name": "W", "Value": 119 }, { "Name": "X", "Value": 120 }, { "Name": "Y", "Value": 121 }, { "Name": "Z", "Value": 122 }, { "Name": "LeftCurly", "Value": 123 }, { "Name": "Pipe", "Value": 124 }, { "Name": "RightCurly", "Value": 125 }, { "Name": "Tilde", "Value": 126 }, { "Name": "Delete", "Value": 127 }, { "Name": "KeypadZero", "Value": 256 }, { "Name": "KeypadOne", "Value": 257 }, { "Name": "KeypadTwo", "Value": 258 }, { "Name": "KeypadThree", "Value": 259 }, { "Name": "KeypadFour", "Value": 260 }, { "Name": "KeypadFive", "Value": 261 }, { "Name": "KeypadSix", "Value": 262 }, { "Name": "KeypadSeven", "Value": 263 }, { "Name": "KeypadEight", "Value": 264 }, { "Name": "KeypadNine", "Value": 265 }, { "Name": "KeypadPeriod", "Value": 266 }, { "Name": "KeypadDivide", "Value": 267 }, { "Name": "KeypadMultiply", "Value": 268 }, { "Name": "KeypadMinus", "Value": 269 }, { "Name": "KeypadPlus", "Value": 270 }, { "Name": "KeypadEnter", "Value": 271 }, { "Name": "KeypadEquals", "Value": 272 }, { "Name": "Up", "Value": 273 }, { "Name": "Down", "Value": 274 }, { "Name": "Right", "Value": 275 }, { "Name": "Left", "Value": 276 }, { "Name": "Insert", "Value": 277 }, { "Name": "Home", "Value": 278 }, { "Name": "End", "Value": 279 }, { "Name": "PageUp", "Value": 280 }, { "Name": "PageDown", "Value": 281 }, { "Name": "LeftShift", "Value": 304 }, { "Name": "RightShift", "Value": 303 }, { "Name": "LeftMeta", "Value": 310 }, { "Name": "RightMeta", "Value": 309 }, { "Name": "LeftAlt", "Value": 308 }, { "Name": "RightAlt", "Value": 307 }, { "Name": "LeftControl", "Value": 306 }, { "Name": "RightControl", "Value": 305 }, { "Name": "CapsLock", "Value": 301 }, { "Name": "NumLock", "Value": 300 }, { "Name": "ScrollLock", "Value": 302 }, { "Name": "LeftSuper", "Value": 311 }, { "Name": "RightSuper", "Value": 312 }, { "Name": "Mode", "Value": 313 }, { "Name": "Compose", "Value": 314 }, { "Name": "Help", "Value": 315 }, { "Name": "Print", "Value": 316 }, { "Name": "SysReq", "Value": 317 }, { "Name": "Break", "Value": 318 }, { "Name": "Menu", "Value": 319 }, { "Name": "Power", "Value": 320 }, { "Name": "Euro", "Value": 321 }, { "Name": "Undo", "Value": 322 }, { "Name": "F1", "Value": 282 }, { "Name": "F2", "Value": 283 }, { "Name": "F3", "Value": 284 }, { "Name": "F4", "Value": 285 }, { "Name": "F5", "Value": 286 }, { "Name": "F6", "Value": 287 }, { "Name": "F7", "Value": 288 }, { "Name": "F8", "Value": 289 }, { "Name": "F9", "Value": 290 }, { "Name": "F10", "Value": 291 }, { "Name": "F11", "Value": 292 }, { "Name": "F12", "Value": 293 }, { "Name": "F13", "Value": 294 }, { "Name": "F14", "Value": 295 }, { "Name": "F15", "Value": 296 }, { "Name": "World0", "Value": 160 }, { "Name": "World1", "Value": 161 }, { "Name": "World2", "Value": 162 }, { "Name": "World3", "Value": 163 }, { "Name": "World4", "Value": 164 }, { "Name": "World5", "Value": 165 }, { "Name": "World6", "Value": 166 }, { "Name": "World7", "Value": 167 }, { "Name": "World8", "Value": 168 }, { "Name": "World9", "Value": 169 }, { "Name": "World10", "Value": 170 }, { "Name": "World11", "Value": 171 }, { "Name": "World12", "Value": 172 }, { "Name": "World13", "Value": 173 }, { "Name": "World14", "Value": 174 }, { "Name": "World15", "Value": 175 }, { "Name": "World16", "Value": 176 }, { "Name": "World17", "Value": 177 }, { "Name": "World18", "Value": 178 }, { "Name": "World19", "Value": 179 }, { "Name": "World20", "Value": 180 }, { "Name": "World21", "Value": 181 }, { "Name": "World22", "Value": 182 }, { "Name": "World23", "Value": 183 }, { "Name": "World24", "Value": 184 }, { "Name": "World25", "Value": 185 }, { "Name": "World26", "Value": 186 }, { "Name": "World27", "Value": 187 }, { "Name": "World28", "Value": 188 }, { "Name": "World29", "Value": 189 }, { "Name": "World30", "Value": 190 }, { "Name": "World31", "Value": 191 }, { "Name": "World32", "Value": 192 }, { "Name": "World33", "Value": 193 }, { "Name": "World34", "Value": 194 }, { "Name": "World35", "Value": 195 }, { "Name": "World36", "Value": 196 }, { "Name": "World37", "Value": 197 }, { "Name": "World38", "Value": 198 }, { "Name": "World39", "Value": 199 }, { "Name": "World40", "Value": 200 }, { "Name": "World41", "Value": 201 }, { "Name": "World42", "Value": 202 }, { "Name": "World43", "Value": 203 }, { "Name": "World44", "Value": 204 }, { "Name": "World45", "Value": 205 }, { "Name": "World46", "Value": 206 }, { "Name": "World47", "Value": 207 }, { "Name": "World48", "Value": 208 }, { "Name": "World49", "Value": 209 }, { "Name": "World50", "Value": 210 }, { "Name": "World51", "Value": 211 }, { "Name": "World52", "Value": 212 }, { "Name": "World53", "Value": 213 }, { "Name": "World54", "Value": 214 }, { "Name": "World55", "Value": 215 }, { "Name": "World56", "Value": 216 }, { "Name": "World57", "Value": 217 }, { "Name": "World58", "Value": 218 }, { "Name": "World59", "Value": 219 }, { "Name": "World60", "Value": 220 }, { "Name": "World61", "Value": 221 }, { "Name": "World62", "Value": 222 }, { "Name": "World63", "Value": 223 }, { "Name": "World64", "Value": 224 }, { "Name": "World65", "Value": 225 }, { "Name": "World66", "Value": 226 }, { "Name": "World67", "Value": 227 }, { "Name": "World68", "Value": 228 }, { "Name": "World69", "Value": 229 }, { "Name": "World70", "Value": 230 }, { "Name": "World71", "Value": 231 }, { "Name": "World72", "Value": 232 }, { "Name": "World73", "Value": 233 }, { "Name": "World74", "Value": 234 }, { "Name": "World75", "Value": 235 }, { "Name": "World76", "Value": 236 }, { "Name": "World77", "Value": 237 }, { "Name": "World78", "Value": 238 }, { "Name": "World79", "Value": 239 }, { "Name": "World80", "Value": 240 }, { "Name": "World81", "Value": 241 }, { "Name": "World82", "Value": 242 }, { "Name": "World83", "Value": 243 }, { "Name": "World84", "Value": 244 }, { "Name": "World85", "Value": 245 }, { "Name": "World86", "Value": 246 }, { "Name": "World87", "Value": 247 }, { "Name": "World88", "Value": 248 }, { "Name": "World89", "Value": 249 }, { "Name": "World90", "Value": 250 }, { "Name": "World91", "Value": 251 }, { "Name": "World92", "Value": 252 }, { "Name": "World93", "Value": 253 }, { "Name": "World94", "Value": 254 }, { "Name": "World95", "Value": 255 }, { "Name": "ButtonX", "Value": 1000 }, { "Name": "ButtonY", "Value": 1001 }, { "Name": "ButtonA", "Value": 1002 }, { "Name": "ButtonB", "Value": 1003 }, { "Name": "ButtonR1", "Value": 1004 }, { "Name": "ButtonL1", "Value": 1005 }, { "Name": "ButtonR2", "Value": 1006 }, { "Name": "ButtonL2", "Value": 1007 }, { "Name": "ButtonR3", "Value": 1008 }, { "Name": "ButtonL3", "Value": 1009 }, { "Name": "ButtonStart", "Value": 1010 }, { "Name": "ButtonSelect", "Value": 1011 }, { "Name": "DPadLeft", "Value": 1012 }, { "Name": "DPadRight", "Value": 1013 }, { "Name": "DPadUp", "Value": 1014 }, { "Name": "DPadDown", "Value": 1015 }, { "Name": "Thumbstick1", "Value": 1016 }, { "Name": "Thumbstick2", "Value": 1017 } ], "Name": "KeyCode" }, { "Items": [ { "Name": "Constant", "Value": 0 }, { "Name": "Linear", "Value": 1 }, { "Name": "Cubic", "Value": 2 } ], "Name": "KeyInterpolationMode" }, { "Items": [ { "Name": "Include", "Value": 0 }, { "Name": "Exclude", "Value": 1 } ], "Name": "KeywordFilterType" }, { "Items": [ { "Name": "Default", "Value": 0 } ], "Name": "Language" }, { "Items": [ { "Name": "Left", "Value": 0 }, { "Name": "Center", "Value": 1 }, { "Name": "Right", "Value": 2 } ], "Name": "LeftRight" }, { "Items": [ { "Name": "Head", "Value": 0 }, { "Name": "Torso", "Value": 1 }, { "Name": "LeftArm", "Value": 2 }, { "Name": "RightArm", "Value": 3 }, { "Name": "LeftLeg", "Value": 4 }, { "Name": "RightLeg", "Value": 5 }, { "Name": "Unknown", "Value": 6 } ], "Name": "Limb" }, { "Items": [ { "Name": "Round", "Value": 0 }, { "Name": "Bevel", "Value": 1 }, { "Name": "Miter", "Value": 2 } ], "Name": "LineJoinMode" }, { "Items": [ { "Name": "Horizontal", "Value": 0 }, { "Name": "Vertical", "Value": 1 } ], "Name": "ListDisplayMode" }, { "Items": [ { "Name": "Camera", "Value": 0 }, { "Name": "CFrame", "Value": 1 }, { "Name": "ObjectPosition", "Value": 2 }, { "Name": "ObjectCFrame", "Value": 3 } ], "Name": "ListenerType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "LoadCharacterLayeredClothing" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "LoadDynamicHeads" }, { "Items": [ { "Name": "PlainText", "Value": 0 }, { "Name": "Markdown", "Value": 1 } ], "Name": "MarkupKind" }, { "Items": [ { "Name": "Plastic", "Value": 256 }, { "Name": "Wood", "Value": 512 }, { "Name": "Slate", "Value": 800 }, { "Name": "Concrete", "Value": 816 }, { "LegacyNames": [ "Corroded Metal" ], "Name": "CorrodedMetal", "Value": 1040 }, { "Name": "DiamondPlate", "Value": 1056 }, { "LegacyNames": [ "Aluminum" ], "Name": "Foil", "Value": 1072 }, { "Name": "Grass", "Value": 1280 }, { "Name": "Ice", "Value": 1536 }, { "Name": "Marble", "Value": 784 }, { "Name": "Granite", "Value": 832 }, { "Name": "Brick", "Value": 848 }, { "Name": "Pebble", "Value": 864 }, { "Name": "Sand", "Value": 1296 }, { "Name": "Fabric", "Value": 1312 }, { "Name": "SmoothPlastic", "Value": 272 }, { "Name": "Metal", "Value": 1088 }, { "Name": "WoodPlanks", "Value": 528 }, { "Name": "Cobblestone", "Value": 880 }, { "Name": "Air", "Tags": [ "NotBrowsable" ], "Value": 1792 }, { "Name": "Water", "Tags": [ "NotBrowsable" ], "Value": 2048 }, { "Name": "Rock", "Value": 896 }, { "Name": "Glacier", "Value": 1552 }, { "Name": "Snow", "Value": 1328 }, { "Name": "Sandstone", "Value": 912 }, { "Name": "Mud", "Value": 1344 }, { "Name": "Basalt", "Value": 788 }, { "Name": "Ground", "Value": 1360 }, { "Name": "CrackedLava", "Value": 804 }, { "Name": "Neon", "Value": 288 }, { "Name": "Glass", "Value": 1568 }, { "Name": "Asphalt", "Value": 1376 }, { "Name": "LeafyGrass", "Value": 1284 }, { "Name": "Salt", "Value": 1392 }, { "Name": "Limestone", "Value": 820 }, { "Name": "Pavement", "Value": 836 }, { "Name": "ForceField", "Value": 1584 } ], "Name": "Material" }, { "Items": [ { "Name": "Regular", "Value": 0 }, { "Name": "Organic", "Value": 1 } ], "Name": "MaterialPattern" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "BuildersClub", "Value": 1 }, { "Name": "TurboBuildersClub", "Value": 2 }, { "Name": "OutrageousBuildersClub", "Value": 3 }, { "Name": "Premium", "Value": 4 } ], "Name": "MembershipType" }, { "Items": [ { "Name": "DistanceBased", "Value": 0 }, { "Name": "Level00", "Value": 1 }, { "Name": "Level01", "Value": 2 }, { "Name": "Level02", "Value": 3 }, { "Name": "Level03", "Value": 4 }, { "Name": "Level04", "Value": 5 } ], "Name": "MeshPartDetailLevel" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "MeshPartHeadsAndAccessories" }, { "Items": [ { "Name": "Stud", "Value": 0 }, { "Name": "Meter", "Value": 1 }, { "Name": "CM", "Value": 2 }, { "Name": "MM", "Value": 3 }, { "Name": "Foot", "Value": 4 }, { "Name": "Inch", "Value": 5 } ], "Name": "MeshScaleUnit" }, { "Items": [ { "Name": "Head", "Value": 0 }, { "Name": "Torso", "Value": 1 }, { "Name": "Wedge", "Value": 2 }, { "Name": "Prism", "Tags": [ "Deprecated" ], "Value": 7 }, { "Name": "Pyramid", "Tags": [ "Deprecated" ], "Value": 8 }, { "Name": "ParallelRamp", "Tags": [ "Deprecated" ], "Value": 9 }, { "Name": "RightAngleRamp", "Tags": [ "Deprecated" ], "Value": 10 }, { "Name": "CornerWedge", "Tags": [ "Deprecated" ], "Value": 11 }, { "Name": "Brick", "Value": 6 }, { "Name": "Sphere", "Value": 3 }, { "Name": "Cylinder", "Value": 4 }, { "Name": "FileMesh", "Value": 5 } ], "Name": "MeshType" }, { "Items": [ { "Name": "MessageOutput", "Value": 0 }, { "Name": "MessageInfo", "Value": 1 }, { "Name": "MessageWarning", "Value": 2 }, { "Name": "MessageError", "Value": 3 } ], "Name": "MessageType" }, { "Items": [ { "Name": "Automatic", "Value": 0 }, { "Name": "StreamingMesh", "Value": 1 }, { "Name": "Disabled", "Value": 2 } ], "Name": "ModelLevelOfDetail" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Legacy", "Value": 1 }, { "Name": "Improved", "Value": 2 } ], "Name": "ModelStreamingBehavior" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Atomic", "Value": 1 }, { "Name": "Persistent", "Value": 2 }, { "Name": "PersistentPerPlayer", "Value": 3 }, { "Name": "Nonatomic", "Value": 4 } ], "Name": "ModelStreamingMode" }, { "Items": [ { "Name": "Alt", "Value": 2 }, { "Name": "Ctrl", "Value": 1 }, { "Name": "Meta", "Value": 3 }, { "Name": "Shift", "Value": 0 } ], "Name": "ModifierKey" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "LockCenter", "Value": 1 }, { "Name": "LockCurrentPosition", "Value": 2 } ], "Name": "MouseBehavior" }, { "Items": [ { "Name": "Stopped", "Value": 0 }, { "Name": "Coasting", "Value": 1 }, { "Name": "Pushing", "Value": 2 }, { "Name": "Stopping", "Value": 3 }, { "Name": "AirFree", "Value": 4 } ], "Name": "MoveState" }, { "Items": [ { "Name": "Unmuted", "Value": 0 }, { "Name": "Muted", "Value": 1 } ], "Name": "MuteState" }, { "Items": [ { "Name": "OccludeAll", "Value": 2 }, { "Name": "EnemyOcclusion", "Value": 1 }, { "Name": "NoOcclusion", "Value": 0 } ], "Name": "NameOcclusion" }, { "Items": [ { "Name": "Automatic", "Value": 0 }, { "Name": "Manual", "Value": 1 }, { "Name": "OnContact", "Value": 2 } ], "Name": "NetworkOwnership" }, { "Items": [ { "Name": "Top", "Value": 1 }, { "Name": "Bottom", "Value": 4 }, { "Name": "Back", "Value": 2 }, { "Name": "Front", "Value": 5 }, { "Name": "Right", "Value": 0 }, { "Name": "Left", "Value": 3 } ], "Name": "NormalId" }, { "Items": [ { "Name": "OneAttachment", "Value": 0 }, { "Name": "TwoAttachment", "Value": 1 } ], "Name": "OrientationAlignmentMode" }, { "Items": [ { "Name": "All", "Value": 1 }, { "Name": "Created", "Value": 2 }, { "Name": "Purchased", "Value": 3 } ], "Name": "OutfitSource" }, { "Items": [ { "Name": "All", "Value": 1 }, { "Name": "Avatar", "Value": 2 }, { "Name": "DynamicHead", "Value": 3 } ], "Name": "OutfitType" }, { "Items": [ { "Name": "Horizontal", "Value": 0 }, { "Name": "Vertical", "Value": 1 } ], "Name": "OutputLayoutMode" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "ForceShow", "Value": 1 }, { "Name": "ForceHide", "Value": 2 } ], "Name": "OverrideMouseIconBehavior" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "NoAccess", "Value": 1 }, { "Name": "Revoked", "Value": 2 }, { "Name": "UseView", "Value": 3 }, { "Name": "Edit", "Value": 4 }, { "Name": "Own", "Value": 5 } ], "Name": "PackagePermission" }, { "Items": [ { "Name": "Ball", "Value": 0 }, { "Name": "Block", "Value": 1 }, { "Name": "Cylinder", "Value": 2 }, { "Name": "Wedge", "Value": 3 }, { "Name": "CornerWedge", "Value": 4 } ], "Name": "PartType" }, { "Items": [ { "Name": "Box", "Value": 0 }, { "Name": "Sphere", "Value": 1 }, { "Name": "Cylinder", "Value": 2 }, { "Name": "Disc", "Value": 3 } ], "Name": "ParticleEmitterShape" }, { "Items": [ { "Name": "Outward", "Value": 0 }, { "Name": "Inward", "Value": 1 }, { "Name": "InAndOut", "Value": 2 } ], "Name": "ParticleEmitterShapeInOut" }, { "Items": [ { "Name": "Volume", "Value": 0 }, { "Name": "Surface", "Value": 1 } ], "Name": "ParticleEmitterShapeStyle" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "Grid2x2", "Value": 1 }, { "Name": "Grid4x4", "Value": 2 }, { "Name": "Grid8x8", "Value": 3 } ], "Name": "ParticleFlipbookLayout" }, { "Items": [ { "Name": "Loop", "Value": 0 }, { "Name": "OneShot", "Value": 1 }, { "Name": "PingPong", "Value": 2 }, { "Name": "Random", "Value": 3 } ], "Name": "ParticleFlipbookMode" }, { "Items": [ { "Name": "NotCompatible", "Value": 0 }, { "Name": "Compatible", "Value": 1 }, { "Name": "Unknown", "Value": 2 } ], "Name": "ParticleFlipbookTextureCompatible" }, { "Items": [ { "Name": "FacingCamera", "Value": 0 }, { "Name": "FacingCameraWorldUp", "Value": 1 }, { "Name": "VelocityParallel", "Value": 2 }, { "Name": "VelocityPerpendicular", "Value": 3 } ], "Name": "ParticleOrientation" }, { "Items": [ { "Name": "Success", "Value": 0 }, { "Name": "ClosestNoPath", "Tags": [ "Deprecated" ], "Value": 1 }, { "Name": "ClosestOutOfRange", "Tags": [ "Deprecated" ], "Value": 2 }, { "Name": "FailStartNotEmpty", "Tags": [ "Deprecated" ], "Value": 3 }, { "Name": "FailFinishNotEmpty", "Tags": [ "Deprecated" ], "Value": 4 }, { "Name": "NoPath", "Value": 5 } ], "Name": "PathStatus" }, { "Items": [ { "Name": "Walk", "Value": 0 }, { "Name": "Jump", "Value": 1 }, { "Name": "Custom", "Value": 2 } ], "Name": "PathWaypointAction" }, { "Items": [ { "Name": "Game", "Value": 0 }, { "Name": "RobloxGame", "Value": 1 }, { "Name": "RobloxScript", "Value": 2 }, { "Name": "Studio", "Value": 3 }, { "Name": "Roblox", "Value": 4 } ], "Name": "PermissionLevelShown" }, { "Items": [ { "Name": "Fixed240Hz", "Value": 0 }, { "Name": "Fixed120Hz", "Value": 1 }, { "Name": "Fixed60Hz", "Value": 2 } ], "Name": "PhysicsSimulationRate" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Fixed", "Value": 1 }, { "Name": "Adaptive", "Value": 2 } ], "Name": "PhysicsSteppingMethod" }, { "Items": [ { "Name": "Windows", "Value": 0 }, { "Name": "OSX", "Value": 1 }, { "Name": "IOS", "Value": 2 }, { "Name": "Android", "Value": 3 }, { "Name": "XBoxOne", "Value": 4 }, { "Name": "PS4", "Value": 5 }, { "Name": "PS3", "Value": 6 }, { "Name": "XBox360", "Value": 7 }, { "Name": "WiiU", "Value": 8 }, { "Name": "NX", "Value": 9 }, { "Name": "Ouya", "Value": 10 }, { "Name": "AndroidTV", "Value": 11 }, { "Name": "Chromecast", "Value": 12 }, { "Name": "Linux", "Value": 13 }, { "Name": "SteamOS", "Value": 14 }, { "Name": "WebOS", "Value": 15 }, { "Name": "DOS", "Value": 16 }, { "Name": "BeOS", "Value": 17 }, { "Name": "UWP", "Value": 18 }, { "Name": "None", "Value": 20 } ], "Name": "Platform" }, { "Items": [ { "Name": "Begin", "Value": 0 }, { "Name": "Delayed", "Value": 1 }, { "Name": "Playing", "Value": 2 }, { "Name": "Paused", "Value": 3 }, { "Name": "Completed", "Value": 4 }, { "Name": "Cancelled", "Value": 5 } ], "Name": "PlaybackState" }, { "Items": [ { "Name": "CharacterForward", "Value": 0 }, { "Name": "CharacterBackward", "Value": 1 }, { "Name": "CharacterLeft", "Value": 2 }, { "Name": "CharacterRight", "Value": 3 }, { "Name": "CharacterJump", "Value": 4 } ], "Name": "PlayerActions" }, { "Items": [ { "Name": "All", "Value": 0 }, { "Name": "Team", "Value": 1 }, { "Name": "Whisper", "Value": 2 } ], "Name": "PlayerChatType" }, { "Items": [ { "Name": "Out", "Value": 1 }, { "Name": "InOut", "Value": 2 }, { "Name": "In", "Value": 0 } ], "Name": "PoseEasingDirection" }, { "Items": [ { "Name": "Linear", "Value": 0 }, { "Name": "Constant", "Value": 1 }, { "Name": "Elastic", "Value": 2 }, { "Name": "Cubic", "Value": 3 }, { "Name": "Bounce", "Value": 4 } ], "Name": "PoseEasingStyle" }, { "Items": [ { "Name": "OneAttachment", "Value": 0 }, { "Name": "TwoAttachment", "Value": 1 } ], "Name": "PositionAlignmentMode" }, { "Items": [ { "Name": "Owner", "Value": 255 }, { "Name": "Admin", "Value": 240 }, { "Name": "Member", "Value": 128 }, { "Name": "Visitor", "Value": 10 }, { "Name": "Banned", "Value": 0 } ], "Name": "PrivilegeType", "Tags": [ "Deprecated" ] }, { "Items": [ { "Name": "AvatarShop", "Value": 0 }, { "Name": "AllowedGames", "Value": 1 }, { "Name": "AllGames", "Value": 2 } ], "Name": "ProductLocationRestriction" }, { "Items": [ { "Name": "NotProcessedYet", "Value": 0 }, { "Name": "PurchaseGranted", "Value": 1 } ], "Name": "ProductPurchaseDecision" }, { "Items": [ { "Name": "Success", "Value": 1 }, { "Name": "PermissionDenied", "Value": 2 }, { "Name": "Timeout", "Value": 3 }, { "Name": "UploadFailed", "Value": 4 }, { "Name": "NoUserInput", "Value": 5 }, { "Name": "UnknownFailure", "Value": 6 } ], "Name": "PromptCreateAssetResult" }, { "Items": [ { "Name": "Success", "Value": 1 }, { "Name": "PermissionDenied", "Value": 2 }, { "Name": "Timeout", "Value": 3 }, { "Name": "UploadFailed", "Value": 4 }, { "Name": "NoUserInput", "Value": 5 }, { "Name": "UnknownFailure", "Value": 6 } ], "Name": "PromptPublishAssetResult" }, { "Items": [ { "Name": "Ok", "Value": 0 }, { "Name": "Warning", "Value": 1 }, { "Name": "Error", "Value": 2 } ], "Name": "PropertyStatus" }, { "Items": [ { "Name": "OnePerButton", "Value": 0 }, { "Name": "OneGlobally", "Value": 1 }, { "Name": "AlwaysShow", "Value": 2 } ], "Name": "ProximityPromptExclusivity" }, { "Items": [ { "Name": "Keyboard", "Value": 0 }, { "Name": "Gamepad", "Value": 1 }, { "Name": "Touch", "Value": 2 } ], "Name": "ProximityPromptInputType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Custom", "Value": 1 } ], "Name": "ProximityPromptStyle" }, { "Items": [ { "Name": "Automatic", "Value": 0 }, { "LegacyNames": [ "Level 1" ], "Name": "Level01", "Value": 1 }, { "LegacyNames": [ "Level 2" ], "Name": "Level02", "Value": 2 }, { "LegacyNames": [ "Level 3" ], "Name": "Level03", "Value": 3 }, { "LegacyNames": [ "Level 4" ], "Name": "Level04", "Value": 4 }, { "LegacyNames": [ "Level 5" ], "Name": "Level05", "Value": 5 }, { "LegacyNames": [ "Level 6" ], "Name": "Level06", "Value": 6 }, { "LegacyNames": [ "Level 7" ], "Name": "Level07", "Value": 7 }, { "LegacyNames": [ "Level 8" ], "Name": "Level08", "Value": 8 }, { "LegacyNames": [ "Level 9" ], "Name": "Level09", "Value": 9 }, { "LegacyNames": [ "Level 10" ], "Name": "Level10", "Value": 10 }, { "LegacyNames": [ "Level 11" ], "Name": "Level11", "Value": 11 }, { "LegacyNames": [ "Level 12" ], "Name": "Level12", "Value": 12 }, { "LegacyNames": [ "Level 13" ], "Name": "Level13", "Value": 13 }, { "LegacyNames": [ "Level 14" ], "Name": "Level14", "Value": 14 }, { "LegacyNames": [ "Level 15" ], "Name": "Level15", "Value": 15 }, { "LegacyNames": [ "Level 16" ], "Name": "Level16", "Value": 16 }, { "LegacyNames": [ "Level 17" ], "Name": "Level17", "Value": 17 }, { "LegacyNames": [ "Level 18" ], "Name": "Level18", "Value": 18 }, { "LegacyNames": [ "Level 19" ], "Name": "Level19", "Value": 19 }, { "LegacyNames": [ "Level 20" ], "Name": "Level20", "Value": 20 }, { "LegacyNames": [ "Level 21" ], "Name": "Level21", "Value": 21 } ], "Name": "QualityLevel" }, { "Items": [ { "Name": "OuterBox", "Value": 0 }, { "Name": "InnerBox", "Value": 1 } ], "Name": "R15CollisionType" }, { "Items": [ { "LegacyNames": [ "Blacklist" ], "Name": "Exclude", "Value": 0 }, { "LegacyNames": [ "Whitelist" ], "Name": "Include", "Value": 1 } ], "Name": "RaycastFilterType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "RejectCharacterDeletions" }, { "Items": [ { "Name": "Automatic", "Value": 0 }, { "Name": "Precise", "Value": 1 }, { "Name": "Performance", "Value": 2 } ], "Name": "RenderFidelity" }, { "Items": [ { "Name": "First", "Value": 0 }, { "Name": "Input", "Value": 100 }, { "Name": "Camera", "Value": 200 }, { "Name": "Character", "Value": 300 }, { "Name": "Last", "Value": 2000 } ], "Name": "RenderPriority" }, { "Items": [ { "Name": "psnr", "Value": 0 }, { "Name": "diff", "Value": 1 } ], "Name": "RenderingTestComparisonMethod" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "ReplicateInstanceDestroySetting" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Pixelated", "Value": 1 } ], "Name": "ResamplerMode" }, { "Items": [ { "Name": "Standard", "Value": 0 }, { "Name": "Selection", "Value": 524288 }, { "Name": "Hover", "Value": 262144 }, { "Name": "Active", "Value": 131072 } ], "Name": "ReservedHighlightId" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "RotationsReset", "Value": 1 }, { "Name": "Custom", "Value": 2 } ], "Name": "RestPose" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Done", "Value": 1 }, { "Name": "Go", "Value": 2 }, { "Name": "Next", "Value": 3 }, { "Name": "Search", "Value": 4 }, { "Name": "Send", "Value": 5 } ], "Name": "ReturnKeyType" }, { "Items": [ { "Name": "NoReverb", "Value": 0 }, { "Name": "GenericReverb", "Value": 1 }, { "Name": "PaddedCell", "Value": 2 }, { "Name": "Room", "Value": 3 }, { "Name": "Bathroom", "Value": 4 }, { "Name": "LivingRoom", "Value": 5 }, { "Name": "StoneRoom", "Value": 6 }, { "Name": "Auditorium", "Value": 7 }, { "Name": "ConcertHall", "Value": 8 }, { "Name": "Cave", "Value": 9 }, { "Name": "Arena", "Value": 10 }, { "Name": "Hangar", "Value": 11 }, { "Name": "CarpettedHallway", "Value": 12 }, { "Name": "Hallway", "Value": 13 }, { "Name": "StoneCorridor", "Value": 14 }, { "Name": "Alley", "Value": 15 }, { "Name": "Forest", "Value": 16 }, { "Name": "City", "Value": 17 }, { "Name": "Mountains", "Value": 18 }, { "Name": "Quarry", "Value": 19 }, { "Name": "Plain", "Value": 20 }, { "Name": "ParkingLot", "Value": 21 }, { "Name": "SewerPipe", "Value": 22 }, { "Name": "UnderWater", "Value": 23 } ], "Name": "ReverbType" }, { "Items": [ { "Name": "Select", "Value": 0 }, { "Name": "Scale", "Value": 1 }, { "Name": "Rotate", "Value": 2 }, { "Name": "Move", "Value": 3 }, { "Name": "Transform", "Value": 4 }, { "Name": "ColorPicker", "Value": 5 }, { "Name": "MaterialPicker", "Value": 6 }, { "Name": "Group", "Value": 7 }, { "Name": "Ungroup", "Value": 8 }, { "Name": "None", "Value": 9 } ], "Name": "RibbonTool" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Rthro", "Value": 1 }, { "Name": "RthroNarrow", "Value": 2 } ], "Name": "RigScale" }, { "Items": [ { "Name": "R15", "Value": 0 }, { "Name": "Custom", "Value": 1 }, { "Name": "None", "Value": 2 } ], "Name": "RigType" }, { "Items": [ { "Name": "Inverse", "Value": 0 }, { "Name": "Linear", "Value": 1 }, { "Name": "InverseTapered", "Value": 3 }, { "Name": "LinearSquare", "Value": 2 } ], "Name": "RollOffMode" }, { "Items": [ { "Name": "XYZ", "Value": 0 }, { "Name": "XZY", "Value": 1 }, { "Name": "YZX", "Value": 2 }, { "Name": "YXZ", "Value": 3 }, { "Name": "ZXY", "Value": 4 }, { "Name": "ZYX", "Value": 5 } ], "Name": "RotationOrder" }, { "Items": [ { "Name": "MovementRelative", "Value": 0 }, { "Name": "CameraRelative", "Value": 1 } ], "Name": "RotationType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "RtlTextSupport" }, { "Items": [ { "Name": "Legacy", "Value": 0 }, { "Name": "Server", "Value": 1 }, { "Name": "Client", "Value": 2 }, { "Name": "Plugin", "Value": 3 } ], "Name": "RunContext" }, { "Items": [ { "Name": "Aggregate", "Value": 0 }, { "Name": "Snapshot", "Value": 1 }, { "Name": "Hybrid", "Value": 2 } ], "Name": "RuntimeUndoBehavior" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "FullscreenExtension", "Value": 1 } ], "Name": "SafeAreaCompatibility" }, { "Items": [ { "Name": "All", "Value": 1 }, { "Name": "Collectibles", "Value": 2 }, { "Name": "Premium", "Value": 3 } ], "Name": "SalesTypeFilter" }, { "Items": [ { "Name": "BadThumbnailType", "Value": 1 }, { "Name": "BadYRotDeg", "Value": 2 }, { "Name": "BadFieldOfViewDeg", "Value": 3 }, { "Name": "BadDistanceScale", "Value": 4 }, { "Name": "Other", "Value": 5 } ], "Name": "SaveAvatarThumbnailCustomizationFailure" }, { "Items": [ { "Name": "SaveAll", "Value": 2 }, { "Name": "SaveWorld", "Value": 0 }, { "Name": "SaveGame", "Value": 1 } ], "Name": "SaveFilter", "Tags": [ "Deprecated" ] }, { "Items": [ { "Name": "Automatic", "Value": 0 }, { "Name": "QualityLevel1", "Value": 1 }, { "Name": "QualityLevel2", "Value": 2 }, { "Name": "QualityLevel3", "Value": 3 }, { "Name": "QualityLevel4", "Value": 4 }, { "Name": "QualityLevel5", "Value": 5 }, { "Name": "QualityLevel6", "Value": 6 }, { "Name": "QualityLevel7", "Value": 7 }, { "Name": "QualityLevel8", "Value": 8 }, { "Name": "QualityLevel9", "Value": 9 }, { "Name": "QualityLevel10", "Value": 10 } ], "Name": "SavedQualitySetting" }, { "Items": [ { "Name": "Stretch", "Value": 0 }, { "Name": "Slice", "Value": 1 }, { "Name": "Tile", "Value": 2 }, { "Name": "Fit", "Value": 3 }, { "Name": "Crop", "Value": 4 } ], "Name": "ScaleType" }, { "Items": [ { "Name": "ConsentAccepted", "Value": 0 }, { "Name": "InvalidScopes", "Value": 1 }, { "Name": "Timeout", "Value": 2 }, { "Name": "NoUserInput", "Value": 3 }, { "Name": "BackendError", "Value": 4 }, { "Name": "UnexpectedError", "Value": 5 }, { "Name": "InvalidArgument", "Value": 6 }, { "Name": "ConsentDenied", "Value": 7 } ], "Name": "ScopeCheckResult" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "DeviceSafeInsets", "Value": 1 }, { "Name": "CoreUISafeInsets", "Value": 2 } ], "Name": "ScreenInsets" }, { "Items": [ { "Name": "LandscapeLeft", "Value": 0 }, { "Name": "LandscapeRight", "Value": 1 }, { "Name": "LandscapeSensor", "Value": 2 }, { "Name": "Portrait", "Value": 3 }, { "Name": "Sensor", "Value": 4 } ], "Name": "ScreenOrientation" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "ScrollBar", "Value": 1 }, { "Name": "Always", "Value": 2 } ], "Name": "ScrollBarInset" }, { "Items": [ { "Name": "X", "Value": 1 }, { "Name": "Y", "Value": 2 }, { "Name": "XY", "Value": 4 } ], "Name": "ScrollingDirection" }, { "Items": [ { "Name": "Escape", "Value": 0 }, { "Name": "Stop", "Value": 1 } ], "Name": "SelectionBehavior" }, { "Items": [ { "Name": "Outlines", "Value": 0 }, { "Name": "BoundingBoxes", "Value": 1 }, { "Name": "Both", "Value": 2 } ], "Name": "SelectionRenderMode" }, { "Items": [ { "Name": "LastPosition", "Value": 0 }, { "Name": "TopLeft", "Value": 1 }, { "Name": "TopRight", "Value": 2 }, { "Name": "BottomLeft", "Value": 3 }, { "Name": "BottomRight", "Value": 4 } ], "Name": "SelfViewPosition" }, { "Items": [ { "Name": "Floor", "Value": 0 }, { "Name": "Ladder", "Value": 1 } ], "Name": "SensorMode" }, { "Items": [ { "Name": "OnRead", "Value": 0 }, { "Name": "Manual", "Value": 1 } ], "Name": "SensorUpdateType" }, { "Items": [ { "Name": "Enabled", "Value": 0 }, { "Name": "Muted", "Value": 1 }, { "Name": "OnlineGame", "Value": 2 } ], "Name": "ServerAudioBehavior" }, { "Items": [ { "Name": "Always", "Value": 0 }, { "Name": "Off", "Value": 1 }, { "Name": "WithChildren", "Value": 2 } ], "Name": "ServiceVisibility" }, { "Items": [ { "Name": "Error", "Value": 1 }, { "Name": "Warning", "Value": 2 }, { "Name": "Information", "Value": 3 }, { "Name": "Hint", "Value": 4 } ], "Name": "Severity" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Immediate", "Value": 1 }, { "Name": "Deferred", "Value": 2 }, { "Name": "AncestryDeferred", "Value": 3 } ], "Name": "SignalBehavior" }, { "Items": [ { "Name": "RelativeXY", "Value": 0 }, { "Name": "RelativeXX", "Value": 1 }, { "Name": "RelativeYY", "Value": 2 } ], "Name": "SizeConstraint" }, { "Items": [ { "Name": "Disabled", "Value": 0 }, { "Name": "PerIsland", "Value": 1 }, { "Name": "PerEdge", "Value": 2 } ], "Name": "SolverConvergenceVisualizationMode" }, { "Items": [ { "Name": "Ascending", "Value": 0 }, { "Name": "Descending", "Value": 1 } ], "Name": "SortDirection" }, { "Items": [ { "Name": "LayoutOrder", "Value": 2 }, { "Name": "Name", "Value": 0 }, { "Name": "Custom", "Tags": [ "Deprecated" ], "Value": 1 } ], "Name": "SortOrder" }, { "Items": [ { "Name": "Insert", "Value": 0 }, { "Name": "Home", "Value": 1 }, { "Name": "End", "Value": 2 }, { "Name": "PageUp", "Value": 3 }, { "Name": "PageDown", "Value": 4 }, { "Name": "ChatHotkey", "Value": 5 } ], "Name": "SpecialKey" }, { "Items": [ { "Name": "TopLeft", "Value": 0 }, { "Name": "TopRight", "Value": 1 }, { "Name": "BottomLeft", "Value": 2 }, { "Name": "BottomRight", "Value": 3 } ], "Name": "StartCorner" }, { "Items": [ { "Name": "Poison", "Tags": [ "Deprecated" ], "Value": 0 }, { "Name": "Confusion", "Tags": [ "Deprecated" ], "Value": 1 } ], "Name": "Status", "Tags": [ "Deprecated" ] }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "LowMemory", "Value": 1 }, { "Name": "Opportunistic", "Value": 2 } ], "Name": "StreamOutBehavior" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "MinimumRadiusPause", "Value": 2 }, { "Name": "PauseOutsideLoadedArea", "Value": 3 } ], "Name": "StreamingIntegrityMode" }, { "Items": [ { "Name": "Default", "Tags": [ "Deprecated" ], "Value": 0 }, { "Name": "Disabled", "Tags": [ "Deprecated" ], "Value": 1 }, { "Name": "ClientPhysicsPause", "Tags": [ "Deprecated" ], "Value": 2 } ], "Name": "StreamingPauseMode" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "CloseStudio", "Value": 1 }, { "Name": "CloseDoc", "Value": 2 } ], "Name": "StudioCloseMode" }, { "Items": [ { "Name": "Edit", "Value": 0 }, { "Name": "PlayClient", "Value": 1 }, { "Name": "PlayServer", "Value": 2 }, { "Name": "Standalone", "Value": 3 }, { "Name": "None", "Value": 4 } ], "Name": "StudioDataModelType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Operator", "Value": 1 }, { "Name": "Number", "Value": 2 }, { "Name": "String", "Value": 3 }, { "Name": "Comment", "Value": 4 }, { "Name": "Keyword", "Value": 5 }, { "Name": "Builtin", "Value": 6 }, { "Name": "Method", "Value": 7 }, { "Name": "Property", "Value": 8 }, { "Name": "Nil", "Value": 9 }, { "Name": "Bool", "Value": 10 }, { "Name": "Function", "Value": 11 }, { "Name": "Local", "Value": 12 }, { "Name": "Self", "Value": 13 }, { "Name": "LuauKeyword", "Value": 14 }, { "Name": "FunctionName", "Value": 15 }, { "Name": "TODO", "Value": 16 }, { "Name": "Background", "Value": 17 }, { "Name": "SelectionText", "Value": 18 }, { "Name": "SelectionBackground", "Value": 19 }, { "Name": "FindSelectionBackground", "Value": 20 }, { "Name": "MatchingWordBackground", "Value": 21 }, { "Name": "Warning", "Value": 22 }, { "Name": "Error", "Value": 23 }, { "Name": "Info", "Value": 24 }, { "Name": "Hint", "Value": 25 }, { "Name": "Whitespace", "Value": 26 }, { "Name": "ActiveLine", "Value": 27 }, { "Name": "DebuggerCurrentLine", "Value": 28 }, { "Name": "DebuggerErrorLine", "Value": 29 }, { "Name": "Ruler", "Value": 30 }, { "Name": "Bracket", "Value": 31 }, { "Name": "MenuPrimaryText", "Value": 32 }, { "Name": "MenuSecondaryText", "Value": 33 }, { "Name": "MenuSelectedText", "Value": 34 }, { "Name": "MenuBackground", "Value": 35 }, { "Name": "MenuSelectedBackground", "Value": 36 }, { "Name": "MenuScrollbarBackground", "Value": 37 }, { "Name": "MenuScrollbarHandle", "Value": 38 }, { "Name": "MenuBorder", "Value": 39 }, { "Name": "DocViewCodeBackground", "Value": 40 }, { "Name": "AICOOverlayText", "Value": 41 }, { "Name": "AICOOverlayButtonBackground", "Value": 42 }, { "Name": "AICOOverlayButtonBackgroundHover", "Value": 43 }, { "Name": "AICOOverlayButtonBackgroundPressed", "Value": 44 }, { "Name": "IndentationRuler", "Value": 45 } ], "Name": "StudioScriptEditorColorCategories" }, { "Items": [ { "Name": "RobloxDefault", "Value": 0 }, { "Name": "Extra1", "Value": 1 }, { "Name": "Extra2", "Value": 2 }, { "Name": "Custom", "Value": 3 } ], "Name": "StudioScriptEditorColorPresets" }, { "Items": [ { "Name": "MainBackground", "Value": 0 }, { "Name": "Titlebar", "Value": 1 }, { "Name": "Dropdown", "Value": 2 }, { "Name": "Tooltip", "Value": 3 }, { "Name": "Notification", "Value": 4 }, { "Name": "ScrollBar", "Value": 5 }, { "Name": "ScrollBarBackground", "Value": 6 }, { "Name": "TabBar", "Value": 7 }, { "Name": "Tab", "Value": 8 }, { "Name": "FilterButtonDefault", "Value": 9 }, { "Name": "FilterButtonHover", "Value": 10 }, { "Name": "FilterButtonChecked", "Value": 11 }, { "Name": "FilterButtonAccent", "Value": 12 }, { "Name": "FilterButtonBorder", "Value": 13 }, { "Name": "FilterButtonBorderAlt", "Value": 14 }, { "Name": "RibbonTab", "Value": 15 }, { "Name": "RibbonTabTopBar", "Value": 16 }, { "Name": "Button", "Value": 17 }, { "Name": "MainButton", "Value": 18 }, { "Name": "RibbonButton", "Value": 19 }, { "Name": "ViewPortBackground", "Value": 20 }, { "Name": "InputFieldBackground", "Value": 21 }, { "Name": "Item", "Value": 22 }, { "Name": "TableItem", "Value": 23 }, { "Name": "CategoryItem", "Value": 24 }, { "Name": "GameSettingsTableItem", "Value": 25 }, { "Name": "GameSettingsTooltip", "Value": 26 }, { "Name": "EmulatorBar", "Value": 27 }, { "Name": "EmulatorDropDown", "Value": 28 }, { "Name": "ColorPickerFrame", "Value": 29 }, { "Name": "CurrentMarker", "Value": 30 }, { "Name": "Border", "Value": 31 }, { "Name": "DropShadow", "Value": 32 }, { "Name": "Shadow", "Value": 33 }, { "Name": "Light", "Value": 34 }, { "Name": "Dark", "Value": 35 }, { "Name": "Mid", "Value": 36 }, { "Name": "MainText", "Value": 37 }, { "Name": "SubText", "Value": 38 }, { "Name": "TitlebarText", "Value": 39 }, { "Name": "BrightText", "Value": 40 }, { "Name": "DimmedText", "Value": 41 }, { "Name": "LinkText", "Value": 42 }, { "Name": "WarningText", "Value": 43 }, { "Name": "ErrorText", "Value": 44 }, { "Name": "InfoText", "Value": 45 }, { "Name": "SensitiveText", "Value": 46 }, { "Name": "ScriptSideWidget", "Value": 47 }, { "Name": "ScriptBackground", "Value": 48 }, { "Name": "ScriptText", "Value": 49 }, { "Name": "ScriptSelectionText", "Value": 50 }, { "Name": "ScriptSelectionBackground", "Value": 51 }, { "Name": "ScriptFindSelectionBackground", "Value": 52 }, { "Name": "ScriptMatchingWordSelectionBackground", "Value": 53 }, { "Name": "ScriptOperator", "Value": 54 }, { "Name": "ScriptNumber", "Value": 55 }, { "Name": "ScriptString", "Value": 56 }, { "Name": "ScriptComment", "Value": 57 }, { "Name": "ScriptKeyword", "Value": 58 }, { "Name": "ScriptBuiltInFunction", "Value": 59 }, { "Name": "ScriptWarning", "Value": 60 }, { "Name": "ScriptError", "Value": 61 }, { "Name": "ScriptInformation", "Value": 62 }, { "Name": "ScriptHint", "Value": 63 }, { "Name": "ScriptWhitespace", "Value": 64 }, { "Name": "ScriptRuler", "Value": 65 }, { "Name": "DocViewCodeBackground", "Value": 66 }, { "Name": "DebuggerCurrentLine", "Value": 67 }, { "Name": "DebuggerErrorLine", "Value": 68 }, { "Name": "ScriptEditorCurrentLine", "Value": 107 }, { "Name": "DiffFilePathText", "Value": 69 }, { "Name": "DiffTextHunkInfo", "Value": 70 }, { "Name": "DiffTextNoChange", "Value": 71 }, { "Name": "DiffTextAddition", "Value": 72 }, { "Name": "DiffTextDeletion", "Value": 73 }, { "Name": "DiffTextSeparatorBackground", "Value": 74 }, { "Name": "DiffTextNoChangeBackground", "Value": 75 }, { "Name": "DiffTextAdditionBackground", "Value": 76 }, { "Name": "DiffTextDeletionBackground", "Value": 77 }, { "Name": "DiffLineNum", "Value": 78 }, { "Name": "DiffLineNumSeparatorBackground", "Value": 79 }, { "Name": "DiffLineNumNoChangeBackground", "Value": 80 }, { "Name": "DiffLineNumAdditionBackground", "Value": 81 }, { "Name": "DiffLineNumDeletionBackground", "Value": 82 }, { "Name": "DiffFilePathBackground", "Value": 83 }, { "Name": "DiffFilePathBorder", "Value": 84 }, { "Name": "ChatIncomingBgColor", "Value": 85 }, { "Name": "ChatIncomingTextColor", "Value": 86 }, { "Name": "ChatOutgoingBgColor", "Value": 87 }, { "Name": "ChatOutgoingTextColor", "Value": 88 }, { "Name": "ChatModeratedMessageColor", "Value": 89 }, { "Name": "Separator", "Value": 90 }, { "Name": "ButtonBorder", "Value": 91 }, { "Name": "ButtonText", "Value": 92 }, { "Name": "InputFieldBorder", "Value": 93 }, { "Name": "CheckedFieldBackground", "Value": 94 }, { "Name": "CheckedFieldBorder", "Value": 95 }, { "Name": "CheckedFieldIndicator", "Value": 96 }, { "Name": "HeaderSection", "Value": 97 }, { "Name": "Midlight", "Value": 98 }, { "Name": "StatusBar", "Value": 99 }, { "Name": "DialogButton", "Value": 100 }, { "Name": "DialogButtonText", "Value": 101 }, { "Name": "DialogButtonBorder", "Value": 102 }, { "Name": "DialogMainButton", "Value": 103 }, { "Name": "DialogMainButtonText", "Value": 104 }, { "Name": "InfoBarWarningBackground", "Value": 105 }, { "Name": "InfoBarWarningText", "Value": 106 }, { "Name": "ScriptMethod", "Value": 108 }, { "Name": "ScriptProperty", "Value": 109 }, { "Name": "ScriptNil", "Value": 110 }, { "Name": "ScriptBool", "Value": 111 }, { "Name": "ScriptFunction", "Value": 112 }, { "Name": "ScriptLocal", "Value": 113 }, { "Name": "ScriptSelf", "Value": 114 }, { "Name": "ScriptLuauKeyword", "Value": 115 }, { "Name": "ScriptFunctionName", "Value": 116 }, { "Name": "ScriptTodo", "Value": 117 }, { "Name": "ScriptBracket", "Value": 118 }, { "Name": "AICOOverlayText", "Value": 128 }, { "Name": "AICOOverlayButtonBackground", "Value": 129 }, { "Name": "AICOOverlayButtonBackgroundHover", "Value": 130 }, { "Name": "AICOOverlayButtonBackgroundPressed", "Value": 131 }, { "Name": "AttributeCog", "Value": 119 } ], "Name": "StudioStyleGuideColor" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Selected", "Value": 1 }, { "Name": "Pressed", "Value": 2 }, { "Name": "Disabled", "Value": 3 }, { "Name": "Hover", "Value": 4 } ], "Name": "StudioStyleGuideModifier" }, { "Items": [ { "LegacyNames": [ "Alternating Supports" ], "Name": "AlternatingSupports", "Value": 0 }, { "LegacyNames": [ "Bridge Style Supports" ], "Name": "BridgeStyleSupports", "Value": 1 }, { "LegacyNames": [ "No Supports" ], "Name": "NoSupports", "Value": 2 } ], "Name": "Style" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "Hinge", "Value": 1 }, { "Name": "SteppingMotor", "Value": 2 }, { "Name": "Motor", "Value": 3 } ], "Name": "SurfaceConstraint" }, { "Items": [ { "Name": "Flat", "Value": 0 }, { "Name": "CurvedHorizontally", "Value": 1 } ], "Name": "SurfaceGuiShape" }, { "Items": [ { "Name": "FixedSize", "Value": 0 }, { "Name": "PixelsPerStud", "Value": 1 } ], "Name": "SurfaceGuiSizingMode" }, { "Items": [ { "LegacyNames": [ "Spawn", "Unjoinable" ], "Name": "Smooth", "Value": 0 }, { "LegacyNames": [ "Bumps" ], "Name": "Glue", "Value": 1 }, { "Name": "Weld", "Value": 2 }, { "Name": "Studs", "Value": 3 }, { "Name": "Inlet", "Value": 4 }, { "Name": "Universal", "Value": 5 }, { "Name": "Hinge", "Value": 6 }, { "Name": "Motor", "Value": 7 }, { "Name": "SteppingMotor", "Value": 8 }, { "Name": "SmoothNoOutlines", "Value": 10 } ], "Name": "SurfaceType" }, { "Items": [ { "Name": "Right", "Value": 0 }, { "Name": "Left", "Value": 1 }, { "Name": "Up", "Value": 2 }, { "Name": "Down", "Value": 3 }, { "Name": "None", "Value": 4 } ], "Name": "SwipeDirection" }, { "Items": [ { "Name": "RowMajor", "Value": 0 }, { "Name": "ColumnMajor", "Value": 1 } ], "Name": "TableMajorAxis" }, { "Items": [ { "Name": "Compatibility", "Value": 2 }, { "Name": "Voxel", "Value": 1 }, { "Name": "ShadowMap", "Value": 3 }, { "Name": "Legacy", "Tags": [ "Deprecated" ], "Value": 0 }, { "Name": "Future", "Value": 4 } ], "Name": "Technology" }, { "Items": [ { "Name": "TeleportToSpawnByName", "Value": 0 }, { "Name": "TeleportToPlaceInstance", "Value": 1 }, { "Name": "TeleportToPrivateServer", "Value": 2 }, { "Name": "TeleportPartyAsync", "Value": 3 }, { "Name": "TeleportUnknown", "Value": 4 } ], "Name": "TeleportMethod" }, { "Items": [ { "Name": "Success", "Value": 0 }, { "Name": "Failure", "Value": 1 }, { "Name": "GameNotFound", "Value": 2 }, { "Name": "GameEnded", "Value": 3 }, { "Name": "GameFull", "Value": 4 }, { "Name": "Unauthorized", "Value": 5 }, { "Name": "Flooded", "Value": 6 }, { "Name": "IsTeleporting", "Value": 7 } ], "Name": "TeleportResult" }, { "Items": [ { "Name": "RequestedFromServer", "Value": 0 }, { "Name": "Started", "Value": 1 }, { "Name": "WaitingForServer", "Value": 2 }, { "Name": "Failed", "Value": 3 }, { "Name": "InProgress", "Value": 4 } ], "Name": "TeleportState" }, { "Items": [ { "Name": "ToPlace", "Value": 0 }, { "Name": "ToInstance", "Value": 1 }, { "Name": "ToReservedServer", "Value": 2 } ], "Name": "TeleportType" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "Legacy", "Value": 1 }, { "Name": "Template", "Value": 2 }, { "Name": "Generate", "Value": 3 }, { "Name": "Import", "Value": 4 }, { "Name": "Convert", "Value": 5 }, { "Name": "EditAddTool", "Value": 6 }, { "Name": "EditSeaLevelTool", "Value": 7 }, { "Name": "EditReplaceTool", "Value": 8 }, { "Name": "RegionFillTool", "Value": 9 }, { "Name": "RegionPasteTool", "Value": 10 }, { "Name": "Other", "Value": 11 } ], "Name": "TerrainAcquisitionMethod" }, { "Items": [ { "Name": "Top", "Value": 0 }, { "Name": "Side", "Value": 1 }, { "Name": "Bottom", "Value": 2 } ], "Name": "TerrainFace" }, { "Items": [ { "Name": "Unknown", "Value": 1 }, { "Name": "Success", "Value": 2 }, { "Name": "Sending", "Value": 3 }, { "Name": "TextFilterFailed", "Value": 4 }, { "Name": "Floodchecked", "Value": 5 }, { "Name": "InvalidPrivacySettings", "Value": 6 }, { "Name": "InvalidTextChannelPermissions", "Value": 7 }, { "Name": "MessageTooLong", "Value": 8 } ], "Name": "TextChatMessageStatus" }, { "Items": [ { "Name": "Auto", "Value": 0 }, { "Name": "LeftToRight", "Value": 1 }, { "Name": "RightToLeft", "Value": 2 } ], "Name": "TextDirection" }, { "Items": [ { "Name": "PublicChat", "Value": 1 }, { "Name": "PrivateChat", "Value": 2 } ], "Name": "TextFilterContext" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "NoSuggestions", "Value": 1 }, { "Name": "Number", "Value": 2 }, { "Name": "Email", "Value": 3 }, { "Name": "Phone", "Value": 4 }, { "Name": "Password", "Value": 5 }, { "Name": "PasswordShown", "Value": 6 }, { "Name": "Username", "Value": 7 }, { "Name": "OneTimePassword", "Value": 8 } ], "Name": "TextInputType" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "AtEnd", "Value": 1 } ], "Name": "TextTruncate" }, { "Items": [ { "Name": "Left", "Value": 0 }, { "Name": "Center", "Value": 2 }, { "Name": "Right", "Value": 1 } ], "Name": "TextXAlignment" }, { "Items": [ { "Name": "Top", "Value": 0 }, { "Name": "Center", "Value": 1 }, { "Name": "Bottom", "Value": 2 } ], "Name": "TextYAlignment" }, { "Items": [ { "Name": "Stretch", "Value": 0 }, { "Name": "Wrap", "Value": 1 }, { "Name": "Static", "Value": 2 } ], "Name": "TextureMode" }, { "Items": [ { "Name": "NonHumanoid", "Value": 0 }, { "Name": "NonHumanoidOrphaned", "Value": 1 }, { "Name": "Humanoid", "Value": 2 }, { "Name": "HumanoidOrphaned", "Value": 3 } ], "Name": "TextureQueryType" }, { "Items": [ { "LegacyNames": [ "PartialThread" ], "Name": "Auto", "Value": 0 }, { "Name": "PerCore1", "Value": 101 }, { "Name": "PerCore2", "Value": 102 }, { "Name": "PerCore3", "Value": 103 }, { "Name": "PerCore4", "Value": 104 }, { "Name": "Threads1", "Value": 1 }, { "Name": "Threads2", "Value": 2 }, { "Name": "Threads3", "Value": 3 }, { "Name": "Threads4", "Value": 4 }, { "Name": "Threads8", "Value": 8 }, { "Name": "Threads16", "Value": 16 } ], "Name": "ThreadPoolConfig" }, { "Items": [ { "Name": "Extreme", "Value": 2 }, { "Name": "ElevatedOnServer", "Value": 1 }, { "Name": "Default", "Value": 0 } ], "Name": "ThrottlingPriority" }, { "Items": [ { "Name": "Size48x48", "Value": 0 }, { "Name": "Size180x180", "Value": 1 }, { "Name": "Size420x420", "Value": 2 }, { "Name": "Size60x60", "Value": 3 }, { "Name": "Size100x100", "Value": 4 }, { "Name": "Size150x150", "Value": 5 }, { "Name": "Size352x352", "Value": 6 } ], "Name": "ThumbnailSize" }, { "Items": [ { "Name": "HeadShot", "Value": 0 }, { "Name": "AvatarBust", "Value": 1 }, { "Name": "AvatarThumbnail", "Value": 2 } ], "Name": "ThumbnailType" }, { "Items": [ { "Name": "Fast", "Value": 0 }, { "Name": "Benchmark", "Value": 1 }, { "Name": "Precise", "Value": 2 } ], "Name": "TickCountSampleMethod" }, { "Items": [ { "Name": "Top", "Value": 0 }, { "Name": "Center", "Value": 1 }, { "Name": "Bottom", "Value": 2 } ], "Name": "TopBottom" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Follow", "Value": 2 }, { "Name": "Classic", "Value": 1 }, { "Name": "Orbital", "Value": 3 } ], "Name": "TouchCameraMovementMode" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Thumbstick", "Value": 1 }, { "Name": "DPad", "Value": 2 }, { "Name": "Thumbpad", "Value": 3 }, { "Name": "ClickToMove", "Value": 4 }, { "Name": "DynamicThumbstick", "Value": 5 } ], "Name": "TouchMovementMode" }, { "Items": [ { "Name": "Ok", "Value": 0 }, { "Name": "NoService", "Value": 1 }, { "Name": "InitFailed", "Value": 2 }, { "Name": "NoVideo", "Value": 3 }, { "Name": "VideoError", "Value": 4 }, { "Name": "VideoNoPermission", "Value": 5 }, { "Name": "VideoUnsupported", "Value": 6 }, { "Name": "NoAudio", "Value": 7 }, { "Name": "AudioError", "Value": 8 }, { "Name": "AudioNoPermission", "Value": 9 }, { "Name": "UnsupportedDevice", "Value": 10 } ], "Name": "TrackerError" }, { "Items": [ { "Name": "Auto", "Value": 3 }, { "Name": "ForceDisabled", "Value": 0 }, { "Name": "ExtrapolateFacsAndPose", "Value": 1 }, { "Name": "ExtrapolateFacsOnly", "Value": 2 } ], "Name": "TrackerExtrapolationFlagMode" }, { "Items": [ { "Name": "Auto", "Value": 2 }, { "Name": "ForceFalse", "Value": 0 }, { "Name": "ForceTrue", "Value": 1 } ], "Name": "TrackerLodFlagMode" }, { "Items": [ { "Name": "Auto", "Value": 2 }, { "Name": "Force0", "Value": 0 }, { "Name": "Force1", "Value": 1 } ], "Name": "TrackerLodValueMode" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "Audio", "Value": 1 }, { "Name": "Video", "Value": 2 }, { "Name": "AudioVideo", "Value": 3 } ], "Name": "TrackerMode" }, { "Items": [ { "Name": "LODCameraRecommendDisable", "Value": 0 } ], "Name": "TrackerPromptEvent" }, { "Items": [ { "Name": "Unknown", "Value": 0 }, { "Name": "True", "Value": 1 }, { "Name": "False", "Value": 2 } ], "Name": "TriStateBoolean" }, { "Items": [ { "Name": "Canceled", "Value": 0 }, { "Name": "Completed", "Value": 1 } ], "Name": "TweenStatus" }, { "Items": [ { "Name": "Light", "Tags": [ "Deprecated" ], "Value": 0 }, { "Name": "Dark", "Tags": [ "Deprecated" ], "Value": 1 } ], "Name": "UITheme" }, { "Items": [ { "Name": "UiMessageError", "Value": 0 }, { "Name": "UiMessageInfo", "Value": 1 } ], "Name": "UiMessageType" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Preview", "Value": 1 } ], "Name": "UsageContext" }, { "Items": [ { "Name": "Head", "Value": 0 }, { "Name": "LeftHand", "Value": 1 }, { "Name": "RightHand", "Value": 2 }, { "Name": "Floor", "Value": 3 } ], "Name": "UserCFrame" }, { "Items": [ { "Name": "Begin", "Value": 0 }, { "Name": "Change", "Value": 1 }, { "Name": "End", "Value": 2 }, { "Name": "Cancel", "Value": 3 }, { "Name": "None", "Value": 4 } ], "Name": "UserInputState" }, { "Items": [ { "Name": "MouseButton1", "Value": 0 }, { "Name": "MouseButton2", "Value": 1 }, { "Name": "MouseButton3", "Value": 2 }, { "Name": "MouseWheel", "Value": 3 }, { "Name": "MouseMovement", "Value": 4 }, { "Name": "Touch", "Value": 7 }, { "Name": "Keyboard", "Value": 8 }, { "Name": "Focus", "Value": 9 }, { "Name": "Accelerometer", "Value": 10 }, { "Name": "Gyro", "Value": 11 }, { "Name": "Gamepad1", "Value": 12 }, { "Name": "Gamepad2", "Value": 13 }, { "Name": "Gamepad3", "Value": 14 }, { "Name": "Gamepad4", "Value": 15 }, { "Name": "Gamepad5", "Value": 16 }, { "Name": "Gamepad6", "Value": 17 }, { "Name": "Gamepad7", "Value": 18 }, { "Name": "Gamepad8", "Value": 19 }, { "Name": "TextInput", "Value": 20 }, { "Name": "InputMethod", "Value": 21 }, { "Name": "None", "Value": 22 } ], "Name": "UserInputType" }, { "Items": [ { "Name": "NoOne", "Value": 0 }, { "Name": "OnlyFriends", "Value": 1 }, { "Name": "Anyone", "Value": 2 } ], "Name": "VRSafetyBubbleMode" }, { "Items": [ { "Name": "World", "Value": 0 }, { "Name": "Off", "Value": 1 } ], "Name": "VRScaling" }, { "Items": [ { "Name": "Idle", "Value": 1 }, { "Name": "Visible", "Value": 2 }, { "Name": "Focused", "Value": 3 }, { "Name": "Stopping", "Value": 4 }, { "Name": "Undefined", "Value": 0 } ], "Name": "VRSessionState" }, { "Items": [ { "Name": "Left", "Value": 0 }, { "Name": "Right", "Value": 1 } ], "Name": "VRTouchpad" }, { "Items": [ { "Name": "Touch", "Value": 0 }, { "Name": "VirtualThumbstick", "Value": 1 }, { "Name": "ABXY", "Value": 2 } ], "Name": "VRTouchpadMode" }, { "Items": [ { "Name": "Line", "Value": 0 }, { "Name": "Plane", "Value": 1 }, { "Name": "Vector", "Value": 2 } ], "Name": "VelocityConstraintMode" }, { "Items": [ { "Name": "Center", "Value": 0 }, { "Name": "Top", "Value": 1 }, { "Name": "Bottom", "Value": 2 } ], "Name": "VerticalAlignment" }, { "Items": [ { "Name": "Left", "Value": 1 }, { "Name": "Right", "Value": 0 } ], "Name": "VerticalScrollBarPosition" }, { "Items": [ { "Name": "Large", "Value": 0 }, { "Name": "Small", "Value": 1 }, { "Name": "LeftTrigger", "Value": 2 }, { "Name": "RightTrigger", "Value": 3 }, { "Name": "LeftHand", "Value": 4 }, { "Name": "RightHand", "Value": 5 } ], "Name": "VibrationMotor" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "GeometryComplexity", "Value": 1 }, { "Name": "Transparent", "Value": 2 }, { "Name": "Decal", "Value": 3 } ], "Name": "ViewMode" }, { "Items": [ { "Name": "Default", "Value": 0 }, { "Name": "Disabled", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "VirtualCursorMode" }, { "Items": [ { "Name": "Recording", "Value": 1 }, { "Name": "Playing", "Value": 2 }, { "Name": "None", "Value": 0 } ], "Name": "VirtualInputMode" }, { "Items": [ { "Name": "Idle", "Value": 0 }, { "Name": "Joining", "Value": 1 }, { "Name": "JoiningRetry", "Value": 2 }, { "Name": "Joined", "Value": 3 }, { "Name": "Leaving", "Value": 4 }, { "Name": "Ended", "Value": 5 }, { "Name": "Failed", "Value": 6 } ], "Name": "VoiceChatState" }, { "Items": [ { "Name": "Disabled", "Value": 0 }, { "Name": "Automatic", "Value": 1 }, { "Name": "Enabled", "Value": 2 } ], "Name": "VolumetricAudio" }, { "Items": [ { "Name": "NegX", "Value": 0 }, { "Name": "X", "Value": 1 }, { "Name": "NegY", "Value": 2 }, { "Name": "Y", "Value": 3 }, { "Name": "NegZ", "Value": 4 }, { "Name": "Z", "Value": 5 } ], "Name": "WaterDirection" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "Small", "Value": 1 }, { "Name": "Medium", "Value": 2 }, { "Name": "Strong", "Value": 3 }, { "Name": "Max", "Value": 4 } ], "Name": "WaterForce" }, { "Items": [ { "Name": "All", "Value": 0 }, { "Name": "None", "Value": 1 }, { "Name": "Touching", "Value": 2 } ], "Name": "WeldConstraintPreserve" }, { "Items": [ { "Name": "Disabled", "Value": 0 }, { "Name": "EnabledPreserve", "Value": 1 }, { "Name": "EnabledOverride", "Value": 2 } ], "Name": "WrapLayerAutoSkin" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "BoundCage", "Value": 1 }, { "Name": "LayerCage", "Value": 2 }, { "Name": "BoundCageAndLinks", "Value": 3 }, { "Name": "Reference", "Value": 4 }, { "Name": "Rbf", "Value": 5 }, { "Name": "OuterCage", "Value": 6 }, { "Name": "ReferenceMeshAfterMorph", "Value": 7 }, { "Name": "HSROuterDetail", "Value": 8 }, { "Name": "HSROuter", "Value": 9 }, { "Name": "HSRInner", "Value": 10 }, { "Name": "HSRInnerReverse", "Value": 11 }, { "Name": "LayerCageFittedToBase", "Value": 12 }, { "Name": "LayerCageFittedToPrev", "Value": 13 } ], "Name": "WrapLayerDebugMode" }, { "Items": [ { "Name": "None", "Value": 0 }, { "Name": "TargetCageOriginal", "Value": 1 }, { "Name": "TargetCageCompressed", "Value": 2 }, { "Name": "TargetCageInterface", "Value": 3 }, { "Name": "TargetLayerCageOriginal", "Value": 4 }, { "Name": "TargetLayerCageCompressed", "Value": 5 }, { "Name": "TargetLayerInterface", "Value": 6 }, { "Name": "Rbf", "Value": 7 }, { "Name": "OuterCageDetail", "Value": 8 } ], "Name": "WrapTargetDebugMode" }, { "Items": [ { "Name": "Global", "Value": 0 }, { "Name": "Sibling", "Value": 1 } ], "Name": "ZIndexBehavior" }, { "Items": [ { "Name": "Small", "Value": 0 }, { "Name": "Medium", "Value": 1 }, { "Name": "Large", "Value": 2 } ], "Name": "AudioWindowSize" }, { "Items": [ { "Name": "Peak", "Value": 0 }, { "Name": "LowShelf", "Value": 1 }, { "Name": "HighShelf", "Value": 2 }, { "Name": "Lowpass12dB", "Value": 3 }, { "Name": "Lowpass24dB", "Value": 4 }, { "Name": "Lowpass48dB", "Value": 5 }, { "Name": "Highpass12dB", "Value": 6 }, { "Name": "Highpass24dB", "Value": 7 }, { "Name": "Highpass48dB", "Value": 8 }, { "Name": "Bandpass", "Value": 9 }, { "Name": "Notch", "Value": 10 }, { "Name": "Lowpass6dB", "Value": 11 } ], "Name": "AudioFilterType" }, { "Items": [ { "Name": "Mono", "Value": 0 }, { "Name": "Stereo", "Value": 1 }, { "Name": "Quad", "Value": 2 }, { "Name": "Surround_5", "Value": 3 }, { "Name": "Surround_5_1", "Value": 4 }, { "Name": "Surround_7_1", "Value": 5 }, { "Name": "Surround_7_1_4", "Value": 6 } ], "Name": "AudioChannelLayout" } ], "Version": 1 } ]==] \ No newline at end of file diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Explorer.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Explorer.lua index 4609944ea1..76c81db07c 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Explorer.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Explorer.lua @@ -2144,11 +2144,21 @@ local function main() end end table.sort(classes, function(a, b) + local rmdA = RMD.Classes[a[1].Name] + local rmdB = RMD.Classes[b[1].Name] + local orderA = (rmdA and rmdA.DisplayOrder) or 100 + local orderB = (rmdB and rmdB.DisplayOrder) or 100 + + -- First sort by DisplayOrder (for Workspace, Players, Lighting, etc) + if orderA ~= orderB then + return orderA < orderB + end + -- Then by category if a[2] ~= b[2] then return a[2] < b[2] - else - return a[1].Name < b[1].Name end + -- Finally by name + return a[1].Name < b[1].Name end) local function onClick(className) diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Properties.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Properties.lua index 1e6e2b89a5..0b27f92759 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Properties.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Properties.lua @@ -343,6 +343,9 @@ local function main() return Lib.ColorToBytes(val) elseif typeName == "NumberRange" then return val.Min .. ", " .. val.Max + elseif typeData.Category == "Enum" then + -- For enums, extract just the name (e.g., "Enum.Material.Brick" -> "Brick") + return val.Name end return tostring(val) diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/RemoteSpy.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/RemoteSpy.lua new file mode 100644 index 0000000000..f9c8deb51d --- /dev/null +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/RemoteSpy.lua @@ -0,0 +1,1079 @@ +local RemoteSpy = {} + +-- Common Locals +local Main, Lib, Settings +local createSimple +local Dex_RemoteFunction + +local function initDeps(data) + Main = data.Main + Lib = data.Lib + Settings = data.Settings + + createSimple = data.createSimple + + Dex_RemoteFunction = game:GetService("ReplicatedStorage"):WaitForChild("NewDex_Event") +end + +local function initAfterMain() + -- Nothing needed here for now +end + +local function main() + local RemoteSpy = {} + + local window + local LogList + local DetailPanel + local RemoteLogs = {} + local MaxLogs = 500 + local IsPaused = false + local IsMonitoring = false + local MonitoringClient = false + local LogEventConnection + local ClientHooks = {} -- Store client-side hooks for cleanup + local SelectedLogIndex = nil + local BlockList = {} -- List of blocked remote names/patterns + local AutoScroll = true -- Auto-scroll to top when new logs arrive + local blockListWindow -- Block list editor window + local blockListRefreshCallback = nil -- Callback to refresh block list UI + + -- Get RemoteEvent for receiving logs from server + local RemoteSpy_LogEvent + + -- Check if a remote name is blocked + local function isBlocked(remoteName) + for _, pattern in ipairs(BlockList) do + if remoteName:match(pattern) or remoteName == pattern then + return true + end + end + return false + end + + -- Add to block list + local function addToBlockList(remoteName) + for _, pattern in ipairs(BlockList) do + if pattern == remoteName then + return false -- Already blocked + end + end + table.insert(BlockList, remoteName) + + -- Refresh block list UI if it's open + if blockListRefreshCallback then + blockListRefreshCallback() + end + + return true + end + + -- Remove from block list + local function removeFromBlockList(remoteName) + for i, pattern in ipairs(BlockList) do + if pattern == remoteName then + table.remove(BlockList, i) + + -- Refresh block list UI if it's open + if blockListRefreshCallback then + blockListRefreshCallback() + end + + return true + end + end + return false + end + + -- Utility: Serialize a value to a readable string + local function serializeValue(value, indent, visited) + indent = indent or 0 + visited = visited or {} + local indentStr = string.rep(" ", indent) + + if type(value) == "table" then + if visited[value] then + return "" + end + visited[value] = true + + local result = "{\n" + local hasContent = false + for k, v in pairs(value) do + hasContent = true + result = result + .. indentStr + .. " [" + .. serializeValue(k, indent + 1, visited) + .. "] = " + .. serializeValue(v, indent + 1, visited) + .. ",\n" + end + if hasContent then + result = result .. indentStr .. "}" + else + result = "{}" + end + return result + elseif type(value) == "string" then + return '"' .. value .. '"' + elseif typeof(value) == "Instance" then + return value:GetFullName() .. " (" .. value.ClassName .. ")" + elseif type(value) == "userdata" then + return tostring(value) + else + return tostring(value) + end + end + + -- Format arguments for display + local function formatArgsPreview(args) + if #args == 0 then + return "none" + end + local preview = {} + for i, arg in ipairs(args) do + if i > 3 then + table.insert(preview, "...") + break + end + local argStr = tostring(arg) + if #argStr > 30 then + argStr = argStr:sub(1, 27) .. "..." + end + table.insert(preview, argStr) + end + return table.concat(preview, ", ") + end + + -- Update detail panel with selected log + local function updateDetailPanel(logData) + if not DetailPanel then + return + end + + -- Clear existing detail content + for _, child in ipairs(DetailPanel:GetChildren()) do + if child.Name ~= "TitleLabel" and not child:IsA("UIListLayout") and not child:IsA("UIPadding") then + child:Destroy() + end + end + + if not logData then + DetailPanel.TitleLabel.Text = "No packet selected" + return + end + + DetailPanel.TitleLabel.Text = "Packet Details" + + local yOffset = 25 + + -- Remote Type + local typeLabel = createSimple("TextLabel", { + Parent = DetailPanel, + BackgroundTransparency = 1, + Position = UDim2.new(0, 5, 0, yOffset), + Size = UDim2.new(1, -10, 0, 15), + Font = Enum.Font.SourceSansBold, + Text = "Type: " .. logData.remoteType, + TextColor3 = Settings.Theme.Text, + TextSize = 12, + TextXAlignment = Enum.TextXAlignment.Left, + }) + yOffset = yOffset + 20 + + -- Remote Name + local nameLabel = createSimple("TextLabel", { + Parent = DetailPanel, + BackgroundTransparency = 1, + Position = UDim2.new(0, 5, 0, yOffset), + Size = UDim2.new(1, -10, 0, 15), + Font = Enum.Font.SourceSans, + Text = "Remote: " .. logData.remoteName, + TextColor3 = Settings.Theme.Text, + TextSize = 11, + TextXAlignment = Enum.TextXAlignment.Left, + TextTruncate = Enum.TextTruncate.AtEnd, + }) + yOffset = yOffset + 20 + + -- Caller + local callerLabel = createSimple("TextLabel", { + Parent = DetailPanel, + BackgroundTransparency = 1, + Position = UDim2.new(0, 5, 0, yOffset), + Size = UDim2.new(1, -10, 0, 15), + Font = Enum.Font.SourceSans, + Text = "Caller: " .. tostring(logData.caller), + TextColor3 = Settings.Theme.Text, + TextSize = 11, + TextXAlignment = Enum.TextXAlignment.Left, + }) + yOffset = yOffset + 20 + + -- Timestamp + local timeLabel = createSimple("TextLabel", { + Parent = DetailPanel, + BackgroundTransparency = 1, + Position = UDim2.new(0, 5, 0, yOffset), + Size = UDim2.new(1, -10, 0, 15), + Font = Enum.Font.Code, + Text = "Time: " .. os.date("%H:%M:%S", logData.timestamp), + TextColor3 = Color3.fromRGB(150, 150, 150), + TextSize = 10, + TextXAlignment = Enum.TextXAlignment.Left, + }) + yOffset = yOffset + 25 + + -- Arguments Section + local argsHeader = createSimple("TextLabel", { + Parent = DetailPanel, + BackgroundTransparency = 1, + Position = UDim2.new(0, 5, 0, yOffset), + Size = UDim2.new(1, -10, 0, 15), + Font = Enum.Font.SourceSansBold, + Text = "Arguments (" .. #logData.rawArgs .. "):", + TextColor3 = Settings.Theme.Text, + TextSize = 12, + TextXAlignment = Enum.TextXAlignment.Left, + }) + yOffset = yOffset + 20 + + -- Display each argument + if #logData.rawArgs == 0 then + local noArgsLabel = createSimple("TextLabel", { + Parent = DetailPanel, + BackgroundTransparency = 1, + Position = UDim2.new(0, 15, 0, yOffset), + Size = UDim2.new(1, -20, 0, 15), + Font = Enum.Font.Code, + Text = "(none)", + TextColor3 = Color3.fromRGB(150, 150, 150), + TextSize = 10, + TextXAlignment = Enum.TextXAlignment.Left, + }) + yOffset = yOffset + 20 + else + for i, arg in ipairs(logData.rawArgs) do + -- Argument index + local argIndexLabel = createSimple("TextLabel", { + Parent = DetailPanel, + BackgroundTransparency = 1, + Position = UDim2.new(0, 10, 0, yOffset), + Size = UDim2.new(1, -15, 0, 15), + Font = Enum.Font.SourceSansBold, + Text = "[" .. i .. "] " .. typeof(arg), + TextColor3 = Color3.fromRGB(100, 200, 255), + TextSize = 11, + TextXAlignment = Enum.TextXAlignment.Left, + }) + yOffset = yOffset + 18 + + -- Argument value (in scrollable text box for long values) + local serialized = serializeValue(arg) + local argValueBox = createSimple("TextBox", { + Parent = DetailPanel, + BackgroundColor3 = Settings.Theme.Main1, + BorderSizePixel = 1, + BorderColor3 = Settings.Theme.Outline1, + Position = UDim2.new(0, 20, 0, yOffset), + Size = UDim2.new(1, -25, 0, math.min(100, math.max(30, #serialized / 2))), + Font = Enum.Font.Code, + Text = serialized, + TextColor3 = Color3.fromRGB(220, 220, 220), + TextSize = 10, + TextXAlignment = Enum.TextXAlignment.Left, + TextYAlignment = Enum.TextYAlignment.Top, + TextWrapped = true, + TextEditable = false, + ClearTextOnFocus = false, + MultiLine = true, + }) + yOffset = yOffset + argValueBox.Size.Y.Offset + 10 + end + end + + DetailPanel.CanvasSize = UDim2.new(0, 0, 0, yOffset + 20) + end + + -- Add log entry to UI (forward declaration) + local addLogEntry + + -- Create UI + local function createUI() + -- Create Window + window = Lib.Window.new() + window:SetTitle("Remote Spy") + window:Resize(800, 450) + RemoteSpy.Window = window + + -- Main Content Frame + local RemoteSpyFrame = createSimple("Frame", { + Name = "RemoteSpyContent", + Parent = window.GuiElems.Content, + BackgroundColor3 = Settings.Theme.Main1, + BorderSizePixel = 0, + Size = UDim2.new(1, 0, 1, 0), + Position = UDim2.new(0, 0, 0, 0), + }) + + -- Control Bar + local ControlBar = createSimple("Frame", { + Name = "ControlBar", + Parent = RemoteSpyFrame, + BackgroundColor3 = Settings.Theme.Main2, + BorderSizePixel = 0, + Position = UDim2.new(0, 0, 0, 0), + Size = UDim2.new(1, 0, 0, 30), + }) + + -- Pause/Resume Button + local PauseButton = createSimple("TextButton", { + Name = "PauseButton", + Parent = ControlBar, + BackgroundColor3 = Settings.Theme.Button, + BorderSizePixel = 0, + Position = UDim2.new(0, 5, 0, 5), + Size = UDim2.new(0, 60, 0, 20), + Font = Enum.Font.SourceSans, + Text = "Pause", + TextColor3 = Settings.Theme.Text, + TextSize = 12, + }) + + -- Clear Button + local ClearButton = createSimple("TextButton", { + Name = "ClearButton", + Parent = ControlBar, + BackgroundColor3 = Settings.Theme.Button, + BorderSizePixel = 0, + Position = UDim2.new(0, 70, 0, 5), + Size = UDim2.new(0, 60, 0, 20), + Font = Enum.Font.SourceSans, + Text = "Clear", + TextColor3 = Settings.Theme.Text, + TextSize = 12, + }) + + -- Server Monitor Button + local ServerMonitorButton = createSimple("TextButton", { + Name = "ServerMonitorButton", + Parent = ControlBar, + BackgroundColor3 = Color3.fromRGB(120, 40, 40), + BorderSizePixel = 0, + Position = UDim2.new(0, 135, 0, 5), + Size = UDim2.new(0, 110, 0, 20), + Font = Enum.Font.SourceSansBold, + Text = "Server: OFF", + TextColor3 = Settings.Theme.Text, + TextSize = 11, + }) + + -- Client Monitor Button + local ClientMonitorButton = createSimple("TextButton", { + Name = "ClientMonitorButton", + Parent = ControlBar, + BackgroundColor3 = Color3.fromRGB(120, 40, 40), + BorderSizePixel = 0, + Position = UDim2.new(0, 250, 0, 5), + Size = UDim2.new(0, 110, 0, 20), + Font = Enum.Font.SourceSansBold, + Text = "Client: OFF", + TextColor3 = Settings.Theme.Text, + TextSize = 11, + }) + + -- Auto-Scroll Toggle Button + local AutoScrollButton = createSimple("TextButton", { + Name = "AutoScrollButton", + Parent = ControlBar, + BackgroundColor3 = Color3.fromRGB(40, 120, 40), + BorderSizePixel = 0, + Position = UDim2.new(0, 365, 0, 5), + Size = UDim2.new(0, 90, 0, 20), + Font = Enum.Font.SourceSans, + Text = "Auto-Scroll", + TextColor3 = Settings.Theme.Text, + TextSize = 11, + }) + + -- Block List Editor Button + local BlockListButton = createSimple("TextButton", { + Name = "BlockListButton", + Parent = ControlBar, + BackgroundColor3 = Settings.Theme.Button, + BorderSizePixel = 0, + Position = UDim2.new(0, 460, 0, 5), + Size = UDim2.new(0, 80, 0, 20), + Font = Enum.Font.SourceSans, + Text = "Block List", + TextColor3 = Settings.Theme.Text, + TextSize = 11, + }) + + -- Status Label + local StatusLabel = createSimple("TextLabel", { + Name = "StatusLabel", + Parent = ControlBar, + BackgroundTransparency = 1, + Position = UDim2.new(0, 545, 0, 0), + Size = UDim2.new(1, -550, 1, 0), + Font = Enum.Font.Code, + Text = "Not monitoring", + TextColor3 = Color3.fromRGB(150, 150, 150), + TextSize = 10, + TextXAlignment = Enum.TextXAlignment.Left, + }) + + -- Left Panel (Log List) + local LeftPanel = createSimple("Frame", { + Name = "LeftPanel", + Parent = RemoteSpyFrame, + BackgroundColor3 = Settings.Theme.Main1, + BorderSizePixel = 0, + Position = UDim2.new(0, 5, 0, 35), + Size = UDim2.new(0.5, -10, 1, -40), + }) + + -- Log List (ScrollingFrame) + LogList = createSimple("ScrollingFrame", { + Name = "LogList", + Parent = LeftPanel, + BackgroundColor3 = Settings.Theme.Main1, + BorderSizePixel = 0, + Size = UDim2.new(1, 0, 1, 0), + ScrollBarThickness = 6, + ScrollBarImageColor3 = Settings.Theme.Outline2, + CanvasSize = UDim2.new(0, 0, 0, 0), + }) + + createSimple("UIListLayout", { + Parent = LogList, + SortOrder = Enum.SortOrder.LayoutOrder, + Padding = UDim.new(0, 2), + }) + + -- Right Panel (Detail View) + local RightPanel = createSimple("Frame", { + Name = "RightPanel", + Parent = RemoteSpyFrame, + BackgroundColor3 = Settings.Theme.Main2, + BorderSizePixel = 1, + BorderColor3 = Settings.Theme.Outline1, + Position = UDim2.new(0.5, 5, 0, 35), + Size = UDim2.new(0.5, -10, 1, -40), + }) + + -- Detail Panel (ScrollingFrame) + DetailPanel = createSimple("ScrollingFrame", { + Name = "DetailPanel", + Parent = RightPanel, + BackgroundColor3 = Settings.Theme.Main2, + BorderSizePixel = 0, + Size = UDim2.new(1, 0, 1, 0), + ScrollBarThickness = 6, + ScrollBarImageColor3 = Settings.Theme.Outline2, + CanvasSize = UDim2.new(0, 0, 0, 0), + }) + + -- Detail Panel Title + createSimple("TextLabel", { + Name = "TitleLabel", + Parent = DetailPanel, + BackgroundTransparency = 1, + Position = UDim2.new(0, 5, 0, 5), + Size = UDim2.new(1, -10, 0, 15), + Font = Enum.Font.SourceSansBold, + Text = "No packet selected", + TextColor3 = Color3.fromRGB(150, 150, 150), + TextSize = 13, + TextXAlignment = Enum.TextXAlignment.Left, + }) + + -- Client-side monitoring setup + local function setupClientMonitoring() + if MonitoringClient then + return + end + MonitoringClient = true + + -- Hook all existing RemoteEvents and RemoteFunctions + for _, descendant in ipairs(game:GetDescendants()) do + if descendant:IsA("RemoteEvent") then + local remoteName = descendant:GetFullName() + local connection = descendant.OnClientEvent:Connect(function(...) + if IsPaused then + return + end + + local args = { ... } + local formattedArgs = {} + for _, arg in ipairs(args) do + table.insert(formattedArgs, tostring(arg)) + end + + local logData = { + remoteType = "FireClient", + remoteName = remoteName, + caller = "Server", + args = formattedArgs, + rawArgs = args, + timestamp = os.time(), + } + + table.insert(RemoteLogs, 1, logData) + if not IsPaused then + addLogEntry(logData, 1) + end + end) + table.insert(ClientHooks, connection) + end + end + + -- Monitor future RemoteEvents + local connection = game.DescendantAdded:Connect(function(descendant) + if MonitoringClient and descendant:IsA("RemoteEvent") then + task.wait(0.1) + local remoteName = descendant:GetFullName() + local conn = descendant.OnClientEvent:Connect(function(...) + if IsPaused then + return + end + + local args = { ... } + local formattedArgs = {} + for _, arg in ipairs(args) do + table.insert(formattedArgs, tostring(arg)) + end + + local logData = { + remoteType = "FireClient", + remoteName = remoteName, + caller = "Server", + args = formattedArgs, + rawArgs = args, + timestamp = os.time(), + } + + table.insert(RemoteLogs, 1, logData) + if not IsPaused then + addLogEntry(logData, 1) + end + end) + table.insert(ClientHooks, conn) + end + end) + table.insert(ClientHooks, connection) + end + + local function stopClientMonitoring() + MonitoringClient = false + for _, connection in ipairs(ClientHooks) do + connection:Disconnect() + end + ClientHooks = {} + end + + local function updateStatus() + local status = {} + if IsMonitoring then + table.insert(status, "Server") + end + if MonitoringClient then + table.insert(status, "Client") + end + if #status > 0 then + StatusLabel.Text = "Monitoring: " .. table.concat(status, " + ") + StatusLabel.TextColor3 = Color3.fromRGB(100, 255, 100) + else + StatusLabel.Text = "Not monitoring" + StatusLabel.TextColor3 = Color3.fromRGB(150, 150, 150) + end + end + + -- Button Handlers + PauseButton.MouseButton1Click:Connect(function() + IsPaused = not IsPaused + PauseButton.Text = IsPaused and "Resume" or "Pause" + PauseButton.BackgroundColor3 = IsPaused and Color3.fromRGB(120, 40, 40) or Settings.Theme.Button + end) + + ClearButton.MouseButton1Click:Connect(function() + for _, child in ipairs(LogList:GetChildren()) do + if child:IsA("TextButton") then + child:Destroy() + end + end + RemoteLogs = {} + SelectedLogIndex = nil + updateDetailPanel(nil) + LogList.CanvasSize = UDim2.new(0, 0, 0, 0) + end) + + ServerMonitorButton.MouseButton1Click:Connect(function() + if not IsMonitoring then + -- Start server monitoring + local success = Dex_RemoteFunction:InvokeServer("StartRemoteSpy") + if success then + IsMonitoring = true + ServerMonitorButton.Text = "Server: ON" + ServerMonitorButton.BackgroundColor3 = Color3.fromRGB(40, 120, 40) + updateStatus() + else + warn("Failed to start server remote monitoring") + end + else + -- Stop server monitoring + local success = Dex_RemoteFunction:InvokeServer("StopRemoteSpy") + if success then + IsMonitoring = false + ServerMonitorButton.Text = "Server: OFF" + ServerMonitorButton.BackgroundColor3 = Color3.fromRGB(120, 40, 40) + updateStatus() + end + end + end) + + ClientMonitorButton.MouseButton1Click:Connect(function() + if not MonitoringClient then + setupClientMonitoring() + ClientMonitorButton.Text = "Client: ON" + ClientMonitorButton.BackgroundColor3 = Color3.fromRGB(40, 120, 40) + updateStatus() + else + stopClientMonitoring() + ClientMonitorButton.Text = "Client: OFF" + ClientMonitorButton.BackgroundColor3 = Color3.fromRGB(120, 40, 40) + updateStatus() + end + end) + + AutoScrollButton.MouseButton1Click:Connect(function() + AutoScroll = not AutoScroll + AutoScrollButton.BackgroundColor3 = AutoScroll and Color3.fromRGB(40, 120, 40) + or Color3.fromRGB(120, 40, 40) + end) + + -- Create Block List Editor Window + local function createBlockListEditor() + if blockListWindow then + blockListWindow:Show() + blockListWindow.Gui.DisplayOrder = 100 -- Always on top + return + end + + blockListWindow = Lib.Window.new() + blockListWindow:SetTitle("Block List Editor") + blockListWindow:Resize(500, 300) + blockListWindow.Gui.DisplayOrder = 100 -- Always on top + + local editorFrame = createSimple("Frame", { + Name = "BlockListEditorContent", + Parent = blockListWindow.GuiElems.Content, + BackgroundColor3 = Settings.Theme.Main1, + BorderSizePixel = 0, + Size = UDim2.new(1, 0, 1, 0), + }) + + -- Info Note + createSimple("TextLabel", { + Parent = editorFrame, + BackgroundTransparency = 1, + Position = UDim2.new(0, 5, 0, 5), + Size = UDim2.new(1, -10, 0, 15), + Font = Enum.Font.Code, + Text = "Note: Blocking only hides remotes from view, it does not prevent them from firing.", + TextColor3 = Color3.fromRGB(200, 200, 100), + TextSize = 10, + TextXAlignment = Enum.TextXAlignment.Left, + TextWrapped = true, + }) + + -- Add Remote Input Section + local inputLabel = createSimple("TextLabel", { + Parent = editorFrame, + BackgroundTransparency = 1, + Position = UDim2.new(0, 5, 0, 22), + Size = UDim2.new(1, -10, 0, 15), + Font = Enum.Font.SourceSansBold, + Text = "Add Remote to Block List:", + TextColor3 = Settings.Theme.Text, + TextSize = 12, + TextXAlignment = Enum.TextXAlignment.Left, + }) + + local inputBox = createSimple("TextBox", { + Name = "InputBox", + Parent = editorFrame, + BackgroundColor3 = Settings.Theme.TextBox, + BorderSizePixel = 1, + BorderColor3 = Settings.Theme.Outline3, + Position = UDim2.new(0, 5, 0, 42), + Size = UDim2.new(1, -90, 0, 25), + Font = Enum.Font.Code, + PlaceholderText = "Enter remote name or pattern...", + Text = "", + TextColor3 = Settings.Theme.Text, + TextSize = 11, + TextXAlignment = Enum.TextXAlignment.Left, + ClearTextOnFocus = false, + }) + + local addButton = createSimple("TextButton", { + Parent = editorFrame, + BackgroundColor3 = Settings.Theme.Button, + BorderSizePixel = 0, + Position = UDim2.new(1, -80, 0, 42), + Size = UDim2.new(0, 75, 0, 25), + Font = Enum.Font.SourceSansBold, + Text = "Add", + TextColor3 = Settings.Theme.Text, + TextSize = 12, + }) + + -- Block List Display + local listLabel = createSimple("TextLabel", { + Parent = editorFrame, + BackgroundTransparency = 1, + Position = UDim2.new(0, 5, 0, 77), + Size = UDim2.new(1, -10, 0, 15), + Font = Enum.Font.SourceSansBold, + Text = "Blocked Remotes:", + TextColor3 = Settings.Theme.Text, + TextSize = 12, + TextXAlignment = Enum.TextXAlignment.Left, + }) + + local blockListScroll = createSimple("ScrollingFrame", { + Name = "BlockListScroll", + Parent = editorFrame, + BackgroundColor3 = Settings.Theme.Main2, + BorderSizePixel = 1, + BorderColor3 = Settings.Theme.Outline1, + Position = UDim2.new(0, 5, 0, 97), + Size = UDim2.new(1, -10, 1, -102), + ScrollBarThickness = 6, + ScrollBarImageColor3 = Settings.Theme.Outline2, + CanvasSize = UDim2.new(0, 0, 0, 0), + }) + + createSimple("UIListLayout", { + Parent = blockListScroll, + SortOrder = Enum.SortOrder.LayoutOrder, + Padding = UDim.new(0, 2), + }) + + -- Function to refresh block list display + local function refreshBlockList() + for _, child in ipairs(blockListScroll:GetChildren()) do + if child:IsA("Frame") then + child:Destroy() + end + end + + for i, pattern in ipairs(BlockList) do + local entryFrame = createSimple("Frame", { + Name = "BlockEntry", + Parent = blockListScroll, + BackgroundColor3 = Settings.Theme.Main1, + BorderSizePixel = 1, + BorderColor3 = Settings.Theme.Outline1, + Size = UDim2.new(1, -10, 0, 25), + LayoutOrder = i, + }) + + createSimple("TextLabel", { + Parent = entryFrame, + BackgroundTransparency = 1, + Position = UDim2.new(0, 5, 0, 0), + Size = UDim2.new(1, -35, 1, 0), + Font = Enum.Font.Code, + Text = pattern, + TextColor3 = Settings.Theme.Text, + TextSize = 11, + TextXAlignment = Enum.TextXAlignment.Left, + TextTruncate = Enum.TextTruncate.AtEnd, + }) + + local removeBtn = createSimple("TextButton", { + Parent = entryFrame, + BackgroundColor3 = Color3.fromRGB(150, 50, 50), + BorderSizePixel = 0, + Position = UDim2.new(1, -28, 0, 3), + Size = UDim2.new(0, 25, 0, 19), + Font = Enum.Font.SourceSansBold, + Text = "X", + TextColor3 = Settings.Theme.Text, + TextSize = 12, + }) + + removeBtn.MouseButton1Click:Connect(function() + removeFromBlockList(pattern) + -- refreshBlockList is called automatically via callback + end) + end + + blockListScroll.CanvasSize = UDim2.new(0, 0, 0, #BlockList * 27) + end + + -- Set the refresh callback so block buttons can update this UI + blockListRefreshCallback = refreshBlockList + + -- Add button handler + addButton.MouseButton1Click:Connect(function() + local pattern = inputBox.Text + if pattern and pattern ~= "" then + if addToBlockList(pattern) then + inputBox.Text = "" + refreshBlockList() + end + end + end) + + -- Enter key handler + inputBox.FocusLost:Connect(function(enterPressed) + if enterPressed then + local pattern = inputBox.Text + if pattern and pattern ~= "" then + if addToBlockList(pattern) then + inputBox.Text = "" + refreshBlockList() + end + end + end + end) + + refreshBlockList() + blockListWindow:Show() + end + + BlockListButton.MouseButton1Click:Connect(function() + createBlockListEditor() + end) + end + + -- Add log entry to UI (implementation) + addLogEntry = function(logData, index) + if IsPaused then + return + end + + -- Check if this remote is blocked + if isBlocked(logData.remoteName) then + return + end + + local logIndex = index or #RemoteLogs + + -- Create log entry frame + local LogEntry = createSimple("TextButton", { + Name = "LogEntry", + Parent = LogList, + BackgroundColor3 = Settings.Theme.Main2, + BorderSizePixel = 0, + Size = UDim2.new(1, -10, 0, 60), + LayoutOrder = index and -index or logIndex, + Text = "", + AutoButtonColor = false, + }) + + createSimple("UIStroke", { + Parent = LogEntry, + Color = Settings.Theme.Outline1, + Thickness = 1, + }) + + -- Timestamp + createSimple("TextLabel", { + Name = "Timestamp", + Parent = LogEntry, + BackgroundTransparency = 1, + Position = UDim2.new(0, 5, 0, 2), + Size = UDim2.new(0, 60, 0, 15), + Font = Enum.Font.Code, + Text = os.date("%H:%M:%S", logData.timestamp), + TextColor3 = Color3.fromRGB(150, 150, 150), + TextSize = 10, + TextXAlignment = Enum.TextXAlignment.Left, + }) + + -- Remote Type + local typeColor = logData.remoteType:match("FireServer") and Color3.fromRGB(100, 200, 255) + or logData.remoteType:match("InvokeServer") and Color3.fromRGB(255, 200, 100) + or logData.remoteType:match("FireClient") and Color3.fromRGB(100, 255, 200) + or logData.remoteType:match("InvokeClient") and Color3.fromRGB(255, 150, 255) + or Color3.fromRGB(255, 150, 100) + + createSimple("TextLabel", { + Name = "Type", + Parent = LogEntry, + BackgroundTransparency = 1, + Position = UDim2.new(0, 70, 0, 2), + Size = UDim2.new(0, 100, 0, 15), + Font = Enum.Font.SourceSansBold, + Text = logData.remoteType, + TextColor3 = typeColor, + TextSize = 10, + TextXAlignment = Enum.TextXAlignment.Left, + }) + + -- Remote Name + createSimple("TextLabel", { + Name = "RemoteName", + Parent = LogEntry, + BackgroundTransparency = 1, + Position = UDim2.new(0, 5, 0, 18), + Size = UDim2.new(1, -10, 0, 15), + Font = Enum.Font.SourceSansBold, + Text = logData.remoteName, + TextColor3 = Settings.Theme.Text, + TextSize = 11, + TextXAlignment = Enum.TextXAlignment.Left, + TextTruncate = Enum.TextTruncate.AtEnd, + }) + + -- Caller + local callerText = "From: " .. tostring(logData.caller) + createSimple("TextLabel", { + Name = "Caller", + Parent = LogEntry, + BackgroundTransparency = 1, + Position = UDim2.new(0, 5, 0, 33), + Size = UDim2.new(1, -10, 0, 12), + Font = Enum.Font.Code, + Text = callerText, + TextColor3 = Color3.fromRGB(200, 200, 200), + TextSize = 9, + TextXAlignment = Enum.TextXAlignment.Left, + TextTruncate = Enum.TextTruncate.AtEnd, + }) + + -- Arguments Preview + local argsText = "Args: " .. formatArgsPreview(logData.rawArgs or logData.args) + createSimple("TextLabel", { + Name = "Args", + Parent = LogEntry, + BackgroundTransparency = 1, + Position = UDim2.new(0, 5, 0, 45), + Size = UDim2.new(1, -45, 0, 12), + Font = Enum.Font.Code, + Text = argsText, + TextColor3 = Color3.fromRGB(180, 180, 180), + TextSize = 9, + TextXAlignment = Enum.TextXAlignment.Left, + TextTruncate = Enum.TextTruncate.AtEnd, + }) + + -- Block Button + local blockButton = createSimple("TextButton", { + Name = "BlockButton", + Parent = LogEntry, + BackgroundColor3 = Color3.fromRGB(150, 50, 50), + BorderSizePixel = 0, + Position = UDim2.new(1, -38, 0, 43), + Size = UDim2.new(0, 35, 0, 15), + Font = Enum.Font.SourceSansBold, + Text = "Block", + TextColor3 = Settings.Theme.Text, + TextSize = 9, + AutoButtonColor = false, + }) + + blockButton.MouseButton1Click:Connect(function() + local blockedRemoteName = logData.remoteName + addToBlockList(blockedRemoteName) + + -- Remove all entries with this remote name from the display + for _, child in ipairs(LogList:GetChildren()) do + if child:IsA("TextButton") and child.Name == "LogEntry" then + local remoteNameLabel = child:FindFirstChild("RemoteName") + if remoteNameLabel and remoteNameLabel.Text == blockedRemoteName then + child:Destroy() + end + end + end + + -- Remove all entries with this remote name from the log array + for i = #RemoteLogs, 1, -1 do + if RemoteLogs[i].remoteName == blockedRemoteName then + table.remove(RemoteLogs, i) + end + end + + -- Update canvas size + LogList.CanvasSize = UDim2.new(0, 0, 0, #RemoteLogs * 62) + end) + + -- Click handler to show details + LogEntry.MouseButton1Click:Connect(function() + -- Deselect previous + if SelectedLogIndex then + local prevEntry = LogList:FindFirstChild("LogEntry") + if prevEntry then + for _, child in ipairs(LogList:GetChildren()) do + if child:IsA("TextButton") and child.LayoutOrder == (index and -index or SelectedLogIndex) then + child.BackgroundColor3 = Settings.Theme.Main2 + end + end + end + end + + -- Select this one + SelectedLogIndex = logIndex + LogEntry.BackgroundColor3 = Settings.Theme.ListSelection + updateDetailPanel(logData) + end) + + -- Limit logs + if #RemoteLogs > MaxLogs then + local oldest = LogList:FindFirstChild("LogEntry") + if oldest then + oldest:Destroy() + end + table.remove(RemoteLogs, #RemoteLogs) + end + + -- Update canvas size + LogList.CanvasSize = UDim2.new(0, 0, 0, #RemoteLogs * 62) + + -- Auto-scroll to bottom for new entries if enabled + if AutoScroll then + LogList.CanvasPosition = Vector2.new(0, 9e9) + end + end + + -- Setup listener for server-side remote spy logs + local function setupLogListener() + RemoteSpy_LogEvent = game:GetService("ReplicatedStorage"):WaitForChild("RemoteSpy_LogEvent", 10) + if RemoteSpy_LogEvent then + LogEventConnection = RemoteSpy_LogEvent.OnClientEvent:Connect(function(logData) + if logData and not IsPaused then + -- Add rawArgs field (server sends it as args) + logData.rawArgs = logData.args or {} + -- Convert args to strings for preview + local formattedArgs = {} + for _, arg in ipairs(logData.rawArgs) do + table.insert(formattedArgs, tostring(arg)) + end + logData.args = formattedArgs + + table.insert(RemoteLogs, 1, logData) + addLogEntry(logData, 1) + end + end) + end + end + + -- Initialize + local function init() + createUI() + setupLogListener() + end + + -- Public API + RemoteSpy.Init = init + + return RemoteSpy +end + +return { InitDeps = initDeps, InitAfterMain = initAfterMain, Main = main } diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/RMD.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/RMD.lua deleted file mode 100644 index 4d218636a1..0000000000 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/RMD.lua +++ /dev/null @@ -1 +0,0 @@ -return [==[ Actor Scripting A logical grouping of datamodel nodes which can enable scripts to run in parallel. 10 113 BindableFunction Scripting 40 66 Invoke OnInvoke BindableEvent Scripting 50 67 Fire Event TouchTransmitter false 30 37 ForceField Avatar 30 37 Model PluginManager PluginManagerInterface TeleportService CustomizedTeleportUI true Plugin 30 86 PluginMouse Glue true BasePart CollectionService ItemAdded true ItemRemoved true GetCollection true GetTagged AddTag RemoveTag GetTags HasTag GetInstanceAddedSignal GetInstanceRemovedSignal JointsService true RunService BadgeService LogService AssetService RevertAsset SetPlacePermissions GetPlacePermissions GetAssetVersions GetCreatorAssetID HttpService HttpEnabled true GetAsync Server PostAsync Server AnalyticsService ApiKey true InsertService AllowClientInsertModels true AllowInsertFreeModels false true -1 GetCollection Insert ApproveAssetId true ApproveAssetVersionId true GetBaseSets GetUserSets GetBaseCategories true GetUserCategories true LoadAsset LoadAssetVersion Hat Avatar 30 45 true Accessory Avatar 30 32 Model LocalBackpack LocalBackpackItem MotorFeature true Attachment Constraints 30 81 PVInstance Rotation WorldRotation true Orientation WorldOrientation Axis SecondaryAxis WorldAxis SecondaryWorldAxis WorldCFrame 1000 WrapTarget Effects 32 127 BasePart BasePart Model WrapLayer Effects 32 126 BasePart BasePart Model Bone Animations 30 114 PVInstance PVInstance Bone Constraint Physics 30 86 BasePart Enabled Color Visible Active BallSocketConstraint Constraints 30 86 BasePart LimitsEnabled UpperAngle Restitution TwistLimitsEnabled TwistUpperAngle TwistLowerAngle Radius RopeConstraint Constraints 30 89 BasePart Length Restitution CurrentDistance Thickness RodConstraint Constraints 30 90 BasePart Length CurrentDistance Thickness LimitAngle0 LimitAngle1 LimitsEnabled SpringConstraint Constraints 30 91 BasePart LimitsEnabled Stiffness Damping FreeLength MaxForce MaxLength MinLength Radius Thickness Coils CurrentLength TorsionSpringConstraint Constraints 30 125 BasePart LimitsEnabled Stiffness Damping MaxTorque MaxAngle Restitution Radius Coils CurrentAngle WeldConstraint Constraints 30 94 PVInstance Active NoCollisionConstraint Constraints 30 105 PVInstance Enabled RigidConstraint Constraints 30 135 PVInstance DestructionEnabled 0 SimSolverEnableDestruction Broken 1 SimSolverEnableDestruction DestructionForce 2 SimSolverEnableDestruction DestructionTorque 3 SimSolverEnableDestruction HingeConstraint Constraints 30 87 BasePart ActuatorType LimitsEnabled UpperAngle LowerAngle AngularRestitution AngularVelocity MotorMaxTorque MotorMaxAcceleration AngularSpeed ServoMaxTorque TargetAngle CurrentAngle Radius UniversalConstraint Constraints 30 123 BasePart LimitsEnabled MaxAngle Restitution CurrentAngle Radius SlidingBallConstraint Constraints 30 88 BasePart ActuatorType LimitsEnabled LowerLimit UpperLimit Restitution Velocity MotorMaxForce MotorMaxAcceleration Speed ServoMaxForce TargetPosition CurrentPosition Size PrismaticConstraint Constraints 30 88 BasePart CylindricalConstraint Constraints 30 95 BasePart InclinationAngle AngularActuatorType AngularLimitsEnabled UpperAngle LowerAngle AngularRestitution AngularVelocity MotorMaxTorque MotorMaxAngularAcceleration AngularSpeed ServoMaxTorque TargetAngle CurrentAngle WorldRotationAxis RotationAxisVisible AlignOrientation Constraints 30 100 BasePart AlignPosition Constraints 30 99 BasePart ForceLimitMode Selects the mode for force limit. Options Uniform or Per-component SimAlignPositionVectorForceLimit AnimationConstraint Constraints 30 BasePart SimAnimationConstraint VectorForce Constraints 30 102 Model LineForce Constraints 30 101 BasePart Torque Constraints 30 103 BasePart AngularVelocity Constraints 30 103 BasePart PlaneConstraint Constraints 30 134 BasePart PluginCapabilities 30 Plugin Plane Constraints 30 134 BasePart LinearVelocity Constraints 30 132 BasePart Mode Selects the mode of the velocity constraint. Options Line, Plane, Vector LineDirection Direction of the line used to contraint the velocity to a line. LineVelocity The value of the constraint velocity along a line. PlanePrimaryTangent The primary axis in the plane. PlaneSecondaryTangent The secondary axis in the plane. PlaneVelocity Velocity coefficients in the constraint plane. Velocity Constraint velocity for the Vector mode. MaxForce Maximum force magnitude that is applied to satisfy the constraint. RelativeTo Selects whether the velocity orientation is relative to attachment0, attachment1 or the world. Mouse Hit Icon Origin Origin Target TargetFilter TargetSurface UnitRay ViewSizeX ViewSizeY X Y Button1Down Button1Up Button2Down Button2Up Idle KeyDown KeyUp Move WheelBackward WheelForward ProfilingItem ChangeHistoryService RotateP BasePart RotateV BasePart ScriptContext Selection VelocityMotor BasePart Weld 200 34 BasePart TaskScheduler false SetThreadShare true StatsItem Snap 200 34 BasePart FileMesh BasePart DynamicMesh BasePart ClickDetector 3D Interfaces 30 41 BasePart MaxActivationDistance MouseClick MouseHoverEnter MouseHoverLeave DragDetector 3D Interfaces 30 41 BasePart DragDetectors1 ReferenceInstance ProximityPrompt 3D Interfaces 30 124 BasePart MaxActivationDistance ActionText ObjectText KeyboardKeyCode GamepadKeyCode Enabled HoldDuration Exclusivity Style UIOffset RequiresLineOfSight InputHoldBegin InputHoldEnd Triggered TriggeEnded PromptShown PromptHidden PromptButtonHoldBegan PromptButtonHoldEnded ProximityPromptService false Enabled MaxPromptsVisible Triggered TriggeEnded PromptShown PromptHidden PromptButtonHoldBegan PromptButtonHoldEnded Clothing 20 Smoke Effects 30 59 BasePart TimeScale 0 1 Trail Effects 30 93 Model LightEmission 0 1 LightInfluence 0 1 Brightness 0 10 2000 ZOffset -1 1 Lifetime 0 20 TextureLength 0 5 40 MinLength 0 1 AdGui Ads 200 145 GuiBase2d AdPortal Ads 200 146 Part Beam Effects 30 96 BasePart LightEmission 0 1 LightInfluence 0 1 TextureSpeed -1 1 TextureLength 0 5 40 CurveSize0 -10 10 CurveSize1 -10 10 ZOffset -1 1 Brightness 0 10 2000 SurfaceAppearance 3D Interfaces 40 10 AlphaMode ColorMap MetalnessMap NormalMap RoughnessMap TexturePack ParticleEmitter Effects 30 80 BasePart LightEmission 0 1 LightInfluence 0 1 Size 0 10 Transparency 0 1 Brightness 0 10 2000 Drag 0 5 TimeScale 0 1 VelocityInheritance 0 1 Rate 0 100 100 Squash -3 3 ShapePartial 0 1 Rotation -180 180 72 RotSpeed -360 360 72 Speed 0 100 100 Lifetime 0 5 FlipbookFramerate 0 30 100 Sparkles Effects 30 42 BasePart TimeScale 0 1 Explosion Effects 30 36 BasePart BlastPressure BlastRadius Position ExplosionType TimeScale 0 1 Fire Effects 30 61 BasePart Color Heat SecondaryColor Size TimeScale 0 1 Seat Interaction 30 35 Platform 30 35 SkateboardPlatform true 30 35 VehicleSeat Interaction 30 35 Model Tool Interaction 30 17 StarterPack Flag true 30 38 CanBeDropped TeamColor FlagStand true 30 39 BackpackItem 20 Decal 3D Interfaces 40 7 BasePart Face Shiny Specular Transparency 0 1 JointInstance 200 34 Active Message 110 33 true StarterGui Hint true 110 33 IntValue Values 30 4 RayValue Values 30 4 IntConstrainedValue true Values 30 4 MaxValue MinValue DoubleConstrainedValue true Values 30 4 MaxValue MinValue BoolValue Values 30 4 CustomEvent 30 true 4 CustomEventReceiver 30 true 4 FloorWire true 30 4 CycleOffset From StudsBetweenTextures Texture TextureSize To Velocity WireRadius NumberValue Values 30 4 StringValue Values 30 4 Vector3Value Values 30 4 CFrameValue Values 30 4 Color3Value Values 30 4 BrickColorValue Values 30 4 ValueBase Values 30 4 ObjectValue Values 30 4 SpecialMesh Meshes 30 8 BasePart BlockMesh Meshes 30 8 BasePart CylinderMesh Meshes 30 8 BasePart true BevelMesh Meshes false true DataModelMesh false Texture 3D Interfaces 40 10 BasePart Sound Sounds 10 11 play true PlayOnRemove Volume 0 10 1000 Square PlaybackSpeed 0 20 1000 Square ChannelCount EnableAudioChannelCountProperty PlaybackRegionsEnabled SoundLoopPointApi3 Speaker Sounds 10 11 ChannelCount EnableAudioChannelCountProperty Volume 0 10 1000 Square VoiceSource Sounds 10 11 EchoSoundEffect Sounds 20 84 Sound Delay 0.1 5 100 Feedback 0 1 100 DryLevel -80 10 100 WetLevel -80 100 100 FlangeSoundEffect Sounds 20 84 Sound Mix 0 1 100 Depth 0.01 1 100 Rate 0 20 100 DistortionSoundEffect Sounds 20 84 Sound Level 0 1 100 PitchShiftSoundEffect Sounds 20 84 Sound Octave 0.5 2 100 ChannelSelectorSoundEffect Sounds 20 84 Sound EnableAudioChannelSelector ChorusSoundEffect Sounds 20 84 Sound Mix 0 1 100 Rate 0 20 100 Depth 0 1 100 TremoloSoundEffect Sounds 20 84 Sound Frequency 0.1 20 100 Depth 0 1 100 Duty 0 1 100 ReverbSoundEffect Sounds 20 84 Sound DecayTime 0.1 20 100 Diffusion 0 1 100 Density 0 1 100 DryLevel -80 20 100 WetLevel -80 20 100 EqualizerSoundEffect Sounds 20 84 Sound LowGain -80 10 100 MidGain -80 10 100 HighGain -80 10 100 AudioEqualizer Sounds 20 84 LowGain -80 10 100 MidGain -80 10 100 HighGain -80 10 100 AudioAnalyzer Sounds 20 84 RmsLevel 0 10000 100 PeakLevel 0 10000 100 AudioChorus Sounds 20 84 Depth 0 1 100 Mix 0 1 100 Rate 0 20 100 AudioCompressor Sounds 20 84 Attack 0 0.5 100 MakeupGain 0 -30 100 Ratio 1 50 100 Release 5 0.01 100 Threshold -60 0 100 AudioDeviceInput Sounds 20 11 Volume 0 3 100 AudioDeviceOutput Sounds 20 11 AudioDistortion Sounds 20 84 Level 0 1 100 AudioFilter Sounds 20 84 Frequency 20 22000 100 Gain -30 30 100 Q 0.1 10 100 AudioFlanger Sounds 20 84 Depth 0.01 1 100 Mix 0 1 100 Rate 0 20 100 AudioLimiter Sounds 20 84 MaxLevel 0 -12 100 Release 0.001 1 100 AudioPitchShifter Sounds 20 84 Pitch 0.5 2 100 AudioPlayer Sounds 20 11 PlaybackSpeed 0 20 100 Volume 0 10 100 Wire Sounds 20 17 AudioChannelMixer Sounds 20 84 AudioChannelSplitter Sounds 20 84 AudioGate Sounds 20 84 Attack 0.001 5 100 Release 0.001 5 100 AudioTextToSpeech Sounds 20 84 Pitch -12 12 100 Speed 0.5 2 100 PlaybackSpeed 0 20 100 Volume 0 3 100 AudioTremolo Sounds 20 84 Depth 0 1 100 Duty 0 1 100 Frequency 0 20 100 Shape 0 1 100 Skew -1 1 100 Square 0 1 100 AudioReverb Sounds 20 84 DecayRatio 0.1 1 100 DecayTime 0.1 20 100 Density 0.1 1 100 Diffusion 0.1 1 100 DryLevel -80 20 100 EarlyDelayTime 0 0.1 100 HighCutFrequency 20 20000 100 HighCutFrequency 20 20000 100 LateDelayTime 0 0.1 100 LowShelfFrequency 20 20000 100 LowShelfGain -36 12 100 ReferenceFrequency 20 20000 100 WetLevel -80 20 100 AudioListener Sounds 20 11 AudioEcho Sounds 20 84 DelayTime 0.001 5 100 DryLevel -80 10 100 Feedback 0 1 100 RampTime 0 60000 100 WetLevel -80 10 100 AudioEmitter Sounds 20 11 AudioFader Sounds 20 84 Volume 0 3 100 CompressorSoundEffect Sounds 20 84 Sound Threshold -80 0 100 Attack 0.001 1 100 Release 0.001 5 100 Ratio 1 50 100 GainMakeup 0 30 100 SoundGroup Sounds 20 85 SoundService Volume 0 10 1000 Square StockSound false -1 SoundService 500 31 AmbientReverb RespectFilteringEnabled !DisableSoundServiceRespectFilteringEnabled DopplerScale DistanceFactor RolloffScale VolumetricAudio AudioToggleVolumetricPanning Backpack 30 20 false StarterPack 30 20 StarterPlayer 30 79 DeathStyle AvatarJointUpgrade AvatarJointUpgrade AvatarJointUpgrade HumanoidStateMachineMode EnableStateMachineModes2 StarterGear 30 20 false CoreGui 30 46 CorePackages 30 20 RobloxPluginGuiService 30 46 PluginGuiService 30 46 PluginDebugService 30 46 Studio Show Plugin GUI Service in Explorer Main Volume 0 1 250 UIGridStyleLayout GUI false GuiBase2d SetCustomSortFunction true ApplyLayout SortOrder FillDirection HorizontalAlignment VerticalAlignment UIListLayout 30 26 GUI GuiBase2d Padding UIGridLayout 30 26 GUI GuiBase2d CellSize CellPadding FillDirectionMaxCells AbsoluteSize StartCorner UIPageLayout 30 26 GUI GuiBase2d CurrentPage Circular Padding Animated EasingStyle EasingDirection TweenTime Next Previous JumpTo JumpToIndex PageEnter PageLeave Stopped UITableLayout 30 26 GUI GuiBase2d Padding FillEmptySpaceRows FillEmptySpaceColumns MajorAxis UISizeConstraint 30 26 GUI GuiBase2d MinSize MaxSize UITextSizeConstraint 30 26 GUI GuiBase2d MinTextSize MaxTextSize UIAspectRatioConstraint 30 26 GUI AspectRatio AspectType DominantAxis UIScale 30 26 GUI GuiBase2d Scale UIPadding 30 26 GUI GuiBase2d PaddingLeft PaddingRight PaddingTop PaddingBottom UIGradient 30 26 GUI GuiBase2d Color Transparency Rotation Offset UICorner 30 26 GUI GuiBase2d CornerRadius UIStroke 30 26 GUI GuiBase2d Color Transparency 0 1 Thickness 0 25 250 Enabled LineJoinMode ApplyStrokeMode TweenBase false PlaybackState Play Pause Cancel Completed Tween Instance TweenInfo TweenService Create GetValue StarterGui 30 46 SetCoreGuiEnabled GetCoreGuiEnabled GuiService GetGuiInset ContextActionService BindAction SetTitle SetDescription SetImage SetPosition UnbindAction UnbindAllActions GetBoundActionInfo GetAllBoundActionInfo GetButton PointsService true PointsAwarded AwardPoints GetPointBalance GetGamePointBalance GetAwardablePoints Chat 510 33 2 ChatService 510 33 TextChatService Text Chat 511 143 ChatWindowConfiguration Text Chat 10 141 BackgroundTransparency 0 1 100 TextSize 1 100 99 TextStrokeTransparency 0 1 100 HeightScale 0.5 2 1000 WidthScale 0.5 2 1000 ChatInputBarConfiguration Text Chat 11 142 BackgroundTransparency 0 1 100 TextSize 1 100 99 TextStrokeTransparency 0 1 100 BubbleChatConfiguration Text Chat 12 BackgroundTransparency 0 1 100 TextSize 1 100 99 BubblesSpacing 0 20 200 VerticalStudsOffset 0 10 200 TextChannel Text Chat 13 140 TextChatService TextSource Text Chat 10 139 TextChannel TextChatCommand Text Chat 14 138 TextChatService VoiceChatInternal false false VoiceChatService 520 136 1 EnableDefaultVoice VoiceServiceEnableDefaultVoice LocalizationTable 30 97 Localization LocalizationService 530 92 2 PreferredLanguage GetLocaleId MarketplaceService 46 PromptPurchase GetProductInfo PlayerOwnsAsset ProcessReceipt PromptPurchaseFinished UserInputService TouchEnabled KeyboardEnabled MouseEnabled AccelerometerEnabled GyroscopeEnabled TouchTap TouchPinch TouchSwipe TouchLongPress TouchRotate TouchPan TouchStarted TouchMoved TouchEnded InputBegan InputChanged InputEnded TextBoxFocused TextBoxFocusReleased DeviceAccelerationChanged DeviceGravityChanged DeviceRotationChanged GetDeviceAcceleration GetDeviceGravity GetDeviceRotation Atmosphere Environment 5 28 Lighting Density 0 1 1000 Offset 0 1 1000 Height 0 3 1000 Color Decay Haze 0 10 1000 Glare 0 10 1000 Clouds Environment 5 28 Workspace Enabled Color Cover 0 1 1000 Density 0 1 1000 MaterialVariant 3D Interfaces 41 130 BaseMaterial 0 ColorMap 1 MetalnessMap 2 NormalMap 3 RoughnessMap 4 StudsPerTile 0.1 20 200 TerrainDetail 3D Interfaces 42 144 Face 0 ColorMap 1 MetalnessMap 2 NormalMap 3 RoughnessMap 4 StudsPerTile 0.1 20 200 MaterialService 30 131 Sky Environment 5 28 Lighting ColorCorrectionEffect Post Processing Effects 20 83 Brightness -1 1 Contrast -1 1 Saturation -1 1 BloomEffect Post Processing Effects 20 83 Intensity 0 1 Threshold 0.8 4 1000 Size 0 56 56 BlurEffect Post Processing Effects 20 83 Size 0 56 56 Highlight Effects 20 133 FillTransparency 0 1 OutlineTransparency 0 1 DepthOfFieldEffect Post Processing Effects 20 83 FocusDistance 0 200.0 10000 InFocusRadius 0 50.0 10000 NearIntensity 0 1 10000 FarIntensity 0 1 10000 SunRaysEffect Post Processing Effects 20 83 Intensity 0 1 1000 Spread 0 1 1000 Motor 20 false BasePart ControllerPartSensor SimHumanoidPhysics Avatar 20 BasePart BuoyancySensor SimHumanoidPhysics Avatar 20 BasePart ControllerManager SimHumanoidPhysics Avatar 20 Humanoid GroundController SimHumanoidPhysics Avatar 20 ControllerManager AirController SimHumanoidPhysics Avatar 20 ControllerManager ClimbController SimHumanoidPhysics Avatar 20 ControllerManager SwimController SimHumanoidPhysics Avatar 20 ControllerManager Humanoid Avatar 30 9 Model MoveTo Jump Sit TakeDamage UnequipTools EquipTool ReplaceBodyPartR15 GetBodyPartR15 GetMoveVelocity Returns the movement velocity based on the player input. EnableGetMoveVelocity2 NameOcclusion Health MaxHealth TargetPoint Torso true LeftLeg true RightLeg true CollisionType EvaluateStateMachine EnableEvaluateStateMachine2 BodyColors Avatar 20 Model Shirt Avatar 20 43 Model Pants Avatar 20 44 Model ShirtGraphic Avatar 20 40 Model Skin true 20 DebugSettings false 20 FaceInstance false GameSettings false 20 GlobalSettings false 20 Item false 20 NetworkPeer false NetworkSettings false 20 PVInstance false CoordinateFrame true Origin Orientation 400 Origin Position 300 Pivot Offset Position 300 Pivot Offset Orientation 400 PackageLink 1 98 false Status true RenderSettings false 20 RootInstance false ServiceProvider false service true GetService Instance:isService:0 FindService Instance:isService:0 ProfilingItem false NetworkMarker false Hopper true 20 Instance false Archivable 990 ClassName Parent GetDebugId false Clone clone true isA true IsA Instance:Any:0 FindFirstChild FindFirstChildOfClass Instance:isScriptCreatable:0 FindFirstChildWhichIsA Instance:Any:0 FindFirstAncestor FindFirstAncestorOfClass Instance:isScriptCreatable:0 FindFirstAncestorWhichIsA Instance:Any:0 GetFullName children true getChildren true GetChildren GetDescendants Remove true remove true ClearAllChildren Destroy findFirstChild true AncestryChanged DescendantAdded DescendantRemoving Changed BodyGyro Legacy Body Movers 140 14 BasePart MaxTorque maxTorque true D P CFrame cframe true BodyPosition Legacy Body Movers 140 14 BasePart MaxForce maxForce true D P Position position true RocketPropulsion Legacy Body Movers 140 14 BasePart BodyVelocity Legacy Body Movers 140 14 BasePart MaxForce maxForce true P Velocity velocity true BodyAngularVelocity Legacy Body Movers 140 14 BasePart MaxTorque maxTorque true P AngularVelocity angularVelocity true BodyForce Legacy Body Movers 140 14 BasePart Force force true BodyThrust Legacy Body Movers 140 14 BasePart Force force true Location location true Hole true 20 Feature 20 Teams 140 23 Teams GetPlayers Team Interaction 10 24 Teams SpawnLocation Interaction 30 25 NetworkClient false 30 16 NetworkServer false 30 15 LuaSourceContainer false CurrentEditor true Script Scripting 30 6 LinkedScript LocalScript Scripting 40 18 RenderingTest true Scripting 40 5 NetworkReplicator 30 29 Model 100 2 PVInstance BreakJoints GetModelCFrame GetModelSize MakeJoints MoveTo ResetOrientationToIdentity SetIdentityOrientation TranslateBy GetPrimaryPartCFrame SetPrimaryPartCFrame makeJoints true move true PrimaryPart 200 A Part that serves as a physical reference for the Model's Pivot. If set, the Pivot will follow the PrimaryPart during simulation, otherwise the Pivot will be a fixed world space location. LevelOfDetail World Pivot Position 300 World Pivot Orientation 400 Status true 100 2 move true DataModel OnClose true PrivateServerId true PrivateServerOwnerId true VIPServerId true VIPServerOwnerId true Workspace workspace true ShowMouse true IsLoaded Loaded SetPlaceID true SetCreatorID true DataStoreService GetDataStore GetGlobalDataStore GetOrderedDataStore GlobalDataStore -1 OnUpdate GetAsync IncrementAsync SetAsync UpdateAsync OrderedDataStore -1 GetSortedAsync HopperBin true 240 22 Camera 5 5 Model CameraSubject CameraType CoordinateFrame true CFrame FieldOfViewMode FieldOfView DiagonalFieldOfView MaxAxisFieldOfView Focus ViewportSize NearPlaneZ GetRoll WorldToScreenPoint ScreenPointToRay ViewportPointToRay WorldToViewportPoint SetRoll Players 20 21 CharacterAutoLoads true players true ReplicatedStorage 30 70 RobloxReplicatedStorage false ReplicatedFirst 30 70 RemoveRobloxLoadingScreen ServerStorage 30 69 ServerScriptService 30 71 StudioService Lighting 30 13 GetMinutesAfterMidnight GetMoonDirection GetMoonPhase GetSunDirection SetMinutesAfterMidnight Ambient Brightness 0 10 1000 EnvironmentDiffuseScale 0 1 1000 EnvironmentSpecularScale 0 1 1000 ExposureCompensation -3 3 600 ShadowSoftness 0 1 100 ColorShift_Bottom ColorShift_Top GeographicLatitude 0 360 360 GlobalShadows OutdoorAmbient Outlines ShadowColor TimeOfDay ClockTime 0 24 240 FogColor FogEnd FogStart LightingChanged TestService 1000 68 2 DebuggerManager ScriptDebugger DebuggerBreakpoint DebuggerWatch Debris 30 addItem true AddItem MaxItems true Accoutrement 20 32 false Player false 10 12 CharacterAppearance false Model CameraMode DataReady true DataComplexity true LoadCharacter true LoadData true SaveData true SaveBoolean true SaveInstance true SaveString true LoadBoolean true LoadNumber true LoadString true LoadInstance true SaveNumber true playerFromCharacter true SetUnder13 true WaitForDataReady true true Idled Workspace 5 19 FindPartsInRegion3 FindPartsInRegion3WithIgnoreList FindPartOnRay true FindPartOnRayWithIgnoreList true PGSPhysicsSolverEnabled FallenPartsDestroyHeight BasePart 3 false Color CFrame CanCollide 1000 CanQuery 1001 CanTouch 1002 Anchored 900 Massless RootPriority Elasticity 0 1 Friction 0 2 Locked CastShadow Material Reflectance 0 1 ResizeIncrement ResizeableFaces Transparency 0 1 Velocity Size 50 Position 100 Orientation 200 Rotation CenterOfMass AssemblyMass AssemblyCenterOfMass AssemblyLinearVelocity 1000 AssemblyAngularVelocity 1010 AssemblyRootPart makeJoints true MakeJoints BreakJoints GetMass Resize getMass true OutfitChanged true LocalSimulationTouched true StoppedTouching TouchEnded Part Parts 110 1 Workspace TrussPart Parts 120 1 Model WedgePart Parts 120 1 Model PrismPart false true 120 1 PyramidPart false true 120 1 ParallelRampPart false true 120 1 RightAngleRampPart false true 120 1 CornerWedgePart Parts 120 1 Workspace PlayerGui 130 46 SelectionImageObject PlayerScripts 130 78 StandalonePluginScripts 130 78 true StarterPlayerScripts 130 78 false StarterCharacterScripts 130 78 false GuiMain true 140 47 LayerCollector false Enabled ZIndexBehavior ScreenGui GUI 140 47 BasePlayerGui SafeAreaCompatibility GuiObjectSafeAreaBackgroundExtension ClipToDeviceSafeArea GuiObjectSafeAreaBackgroundExtension ScreenInsets ScreenGuiShowScreenInsetsInStudio FunctionalTest true 10 BillboardGui GUI 140 64 GuiBase2d Adornee AbsolutePosition AbsoluteSize Active AlwaysOnTop Enabled ExtentsOffset PlayerToHideFrom StudsOffset SizeOffset Size LightInfluence 0 1 SurfaceGui GUI 140 64 GuiBase2d Adornee Active Enabled LightInfluence 0 1 2000 Brightness 0 10 2000 GuiBase2d false AbsolutePosition AbsoluteSize SelectionGroup GamepadUISelectionGroup SelectionBehaviorUp GamepadUISelectionGroup SelectionBehaviorDown GamepadUISelectionGroup SelectionBehaviorLeft GamepadUISelectionGroup SelectionBehaviorRight GamepadUISelectionGroup InputObject UserInputType UserInputState Position KeyCode GuiObject false TweenPosition TweenSize TweenSizeAndPosition SelectionOrder GamepadUISelectionOrder Active BackgroundColor3 BackgroundTransparency 0 1 BorderColor3 BorderSizePixel ClipsDescendants Draggable true Size Position SizeConstraint ZIndex BackgroundColor true BorderColor true SelectionImageObject DragBegin true DragStopped true MouseEnter MouseLeave MouseMoved TouchTap TouchPinch TouchSwipe TouchLongPress TouchRotate TouchPan InputBegan InputChanged InputEnded Frame GUI 150 48 GuiBase2d Style ScrollingFrame GUI 150 48 GuiBase2d ScrollingEnabled CanvasSize CanvasPosition AbsoluteWindowSize AbsoluteCanvasSize ScrollBarThickness TopImage MidImage BottomImage ImageLabel GUI 180 49 GuiBase2d Image ImageTransparency 0 1 100 ScaleType SliceCenter TileSize VideoFrame GUI 18 120 GuiBase2d GuiBase2d Volume 0 100 1000 Square CanvasGroup RenderCanvasGroupToTexture GUI 200 48 GuiBase2d GuiBase2d GroupTransparency 0 1 100 TextLabel GUI 190 50 GuiBase2d TextColor true LineHeight 0 3 300 TextSize 1 100 99 TextTransparency 0 1 100 TextStrokeTransparency 0 1 100 ContentText TextButton GUI 170 51 GuiBase2d TextColor true LineHeight 0 3 300 TextSize 1 100 99 TextTransparency 0 1 100 TextStrokeTransparency 0 1 100 ContentText TextBox GUI 170 51 GuiBase2d TextColor true LineHeight 0 3 300 TextSize 1 100 99 TextTransparency 0 1 100 TextStrokeTransparency 0 1 100 ContentText GuiButton GUI false 160 52 AutoButtonColor Modal Style MouseButton1Click MouseButton1Down MouseButton1Up MouseButton2Click MouseButton2Down MouseButton2Up ViewportFrame GUI 30 52 GuiBase2d CurrentCamera ImageTransparency 0 1 ImageColor3 Ambient LightColor LightDirection ImageButton GUI 160 52 GuiBase2d Image ImageTransparency 0 1 100 ScaleType SliceCenter TileSize Handles Adornments 190 53 ArcHandles Adornments 200 56 SelectionBox Adornments 210 54 SelectionSphere Adornments 210 54 SurfaceSelection Adornments 210 55 PathfindingModifier Adornments 210 128 Label PathfindingLink Adornments 210 137 Attachment0 Attachment1 Label IsBidirectional Configuration 220 58 HumanoidDescription 22 104 Folder 10 77 WorldModel true World 22 19 Motor6D Animations 200 106 BoxHandleAdornment Adornments 205 111 ConeHandleAdornment Adornments 205 110 CylinderHandleAdornment Adornments 205 109 SphereHandleAdornment Adornments 205 112 WireframeHandleAdornment Adornments 205 113 LineHandleAdornment Adornments 205 107 ImageHandleAdornment Adornments 205 108 SelectionPartLasso true 220 57 SelectionPointLasso true 220 57 PartPairLasso 220 57 PoseBase 220 60 Pose 220 60 false NumberPose 220 60 false KeyframeMarker 220 60 false Keyframe 220 60 false Animation Animations 220 60 AnimationTrack 220 60 AnimationController Animations 220 60 Animator Animations 220 60 EvaluationThrottled Returns true if animation evaluation for the Animator is throttled. 1001 AnimatorIsThrottledPropertyEnabled IKControl Animations 220 53 Type Specifies how the solver satisfies this control. 1001 EndEffector The part that you are interested in moving to reach the Target. 1002 Target The object that the EndEffector reaches for or points at. 1003 ChainRoot The last part that you are interested in moving your character. 1004 Offset An additional offset applied on top of the Target in its local space. 1005 Enabled Toggles the control on and off. 1010 dWeightSpecifies how much this IK control should affect the final pose. 101101 Priority Specifies the order in which controls are solved. 1012 SmoothTime Specifies the time in seconds to smooth the control by. 1013 GetChainLength Returns the total length of the chain, which is the sum of the lengths of its segments. GetChainCount Returns the number of segments in the chain, which is one less than the number of nodes. GetNodeWorldCFrame Returns the CFrame of the node with the given index in world space. GetNodeLocalCFrame Returns the CFrame of the node with the given index in local space. GetRawFinalTarget Returns the CFrame of the raw final target in world space. GetSmoothedFinalTarget Returns the CFrame of the smoothed final target in world space. FaceControls Animations true true 105 129 MeshPart ChinRaiserUpperLip 0 1 ChinRaiser 0 1 FlatPucker 0 1 Funneler 0 1 LowerLipSuck 0 1 LipPresser 0 1 LipsTogether 0 1 MouthLeft 0 1 MouthRight 0 1 Pucker 0 1 UpperLipSuck 0 1 LeftCheekPuff 0 1 LeftDimpler 0 1 LeftLipCornerDown 0 1 LeftLowerLipDepressor 0 1 LeftLipCornerPuller 0 1 LeftLipStretcher 0 1 LeftUpperLipRaiser 0 1 RightCheekPuff 0 1 RightDimpler 0 1 RightLipCornerDown 0 1 RightLowerLipDepressor 0 1 RightLipCornerPuller 0 1 RightLipStretcher 0 1 RightUpperLipRaiser 0 1 JawDrop 0 1 JawLeft 0 1 JawRight 0 1 Corrugator 0 1 LeftBrowLowerer 0 1 LeftOuterBrowRaiser 0 1 LeftNoseWrinkler 0 1 LeftInnerBrowRaiser 0 1 RightBrowLowerer 0 1 RightOuterBrowRaiser 0 1 RightInnerBrowRaiser 0 1 RightNoseWrinkler 0 1 EyesLookDown 0 1 EyesLookLeft 0 1 EyesLookUp 0 1 EyesLookRight 0 1 LeftCheekRaiser 0 1 LeftEyeUpperLidRaiser 0 1 LeftEyeClosed 0 1 RightCheekRaiser 0 1 RightEyeUpperLidRaiser 0 1 RightEyeClosed 0 1 TongueDown 0 1 TongueOut 0 1 TongueUp 0 1 CharacterMesh Meshes 220 60 Model Dialog 3D Interfaces 220 62 ConversationDistance GoodbyeChoiceActive GoodbyeDialog InUse InitialPrompt Purpose Tone BehaviorType GetCurrentPlayers DialogChoice 3D Interfaces 220 63 UnionOperation true false 105 73 UsePartColor NegateOperation true false 104 72 UsePartColor MeshPart Parts true true 105 73 Model Terrain true false 5 65 WaterTransparency 0 1 WaterWaveSize 0 1 WaterWaveSpeed 0 100 WaterReflectance 0 1 Decoration GetCell GetWaterCell SetWaterCell Light Lights 30 13 PVInstance Brightness 0 40 2000 PointLight Lights 30 13 PVInstance Range 0 60 SpotLight Lights 30 13 PVInstance Range 0 60 Angle 0 180 SurfaceLight Lights 30 13 PVInstance Range 0 60 Angle 0 180 RemoteFunction Scripting 40 74 InvokeClient Server InvokeServer Client OnClientInvoke Client OnServerInvoke Server RemoteEvent Scripting 50 75 FireAllClients Server FireClient Server FireServer Client OnClientEvent Client OnServerEvent Server TerrainRegion true 20 65 false ModuleScript Scripting 50 76 ContextActionResult Sink Pass PartType Ball Block Cylinder Wedge CornerWedge Material Air false Water false Rock true Glacier true Snow true Sandstone true Mud true Basalt true Ground true CrackedLava true Asphalt true LeafyGrass true Salt true Limestone true Pavement true Status true Poison true Confusion true SaveFilter true PrivilegeType true Genre true GearGenreSetting true GearType true SortOrder Name LayoutOrder Custom true ZIndexBehavior Global Sibling ScaleType Stretch Slice Tile Fit Crop ]==] \ No newline at end of file diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua index fa9a7be561..b1ac34835b 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua @@ -14,7 +14,7 @@ ]] -- Main vars -local Main, Explorer, Properties, ScriptViewer, Console, ModelViewer, DefaultSettings, Notebook, Serializer, Lib +local Main, Explorer, Properties, ScriptViewer, Console, ModelViewer, RemoteSpy, DefaultSettings, Notebook, Serializer, Lib local API, RMD local SettingsEditor local AboutMenu @@ -152,7 +152,7 @@ end Main = (function() local Main = {} - Main.ModuleList = { "Explorer", "Properties", "Console", "ModelViewer" } --Main.ModuleList = {"Explorer","Properties","ScriptViewer"} + Main.ModuleList = { "Explorer", "Properties", "Console", "ModelViewer", "RemoteSpy" } --Main.ModuleList = {"Explorer","Properties","ScriptViewer"} Main.Elevated = false Main.MissingEnv = {} Main.Version = "Beta 1.0.6 Adonis" @@ -237,10 +237,12 @@ Main = (function() Console = Apps.Console ModelViewer = Apps.ModelViewer Notebook = Apps.Notebook + RemoteSpy = Apps.RemoteSpy local appTable = { Explorer = Explorer, Properties = Properties, Console = Console, + RemoteSpy = RemoteSpy, ModelViewer = ModelViewer, ScriptViewer = ScriptViewer, Notebook = Notebook, @@ -332,8 +334,7 @@ Main = (function() Main.FetchAPI = function() local api, rawAPI local didwedoit = Dex_RemoteFunction:InvokeServer("fetchapi") - - if didwedoit and type(didwedoit) == "table" then + if didwedoit and type(didwedoit) == "string" then rawAPI = didwedoit else if script:FindFirstChild("API") then @@ -503,116 +504,144 @@ Main = (function() end Main.FetchRMD = function() - local rawXML + local rmdData local didwedoit = Dex_RemoteFunction:InvokeServer("fetchrmd") - if didwedoit then - rawXML = didwedoit - else - if script:FindFirstChild("RMD") then - rawXML = require(script.RMD) - else - error("No RMD exists") - end - end + if not didwedoit or didwedoit == false then + -- Fallback to empty structure if server doesn't have RMD yet + return { Classes = {}, Enums = {}, PropertyOrders = {} } + elseif type(didwedoit) == "string" then + -- Server provided JSON or XML string + Main.RawRMD = didwedoit + + -- Try to parse as JSON first (ReflectionService RMD) + local success, jsonData = pcall(service.HttpService.JSONDecode, service.HttpService, didwedoit) + if success and jsonData and type(jsonData) == "table" then + -- JSON RMD from ReflectionService - build proper structure + local classes, propertyOrders = {}, {} + + if jsonData.Classes then + for className, classData in pairs(jsonData.Classes) do + classes[className] = classData + + -- Build PropertyOrders from Properties array + if classData.Properties then + local orders = {} + for _, prop in ipairs(classData.Properties) do + orders[prop.Name] = prop.PropertyOrder or 0 + end + propertyOrders[className] = orders + end + end + end - Main.RawRMD = rawXML - local parsed = Lib.ParseXML(rawXML) - local classList = parsed.children[1].children[1].children - local enumList = parsed.children[1].children[2].children - local propertyOrders = {} + return { Classes = classes, Enums = {}, PropertyOrders = propertyOrders } + end - local classes, enums = {}, {} - for _, class in pairs(classList) do - local className = "" - for _, child in pairs(class.children) do - if child.tag == "Properties" then - local data = { Properties = {}, Functions = {} } - local props = child.children - for _, prop in pairs(props) do - local name = prop.attrs.name - name = name:sub(1, 1):upper() .. name:sub(2) - data[name] = prop.children[1].text - end - className = data.Name - classes[className] = data - elseif child.attrs.class == "ReflectionMetadataProperties" then - local members = child.children - for _, member in pairs(members) do - if member.attrs.class == "ReflectionMetadataMember" then - local data = {} - if member.children[1].tag == "Properties" then - local props = member.children[1].children - for _, prop in pairs(props) do - if prop.attrs then - local name = prop.attrs.name - name = name:sub(1, 1):upper() .. name:sub(2) - data[name] = prop.children[1].text + -- Fall back to XML parsing for legacy format + local parsed = Lib.ParseXML(didwedoit) + local classList = parsed.children[1].children[1].children + local enumList = parsed.children[1].children[2].children + local propertyOrders = {} + + local classes, enums = {}, {} + for _, class in pairs(classList) do + local className = "" + for _, child in pairs(class.children) do + if child.tag == "Properties" then + local data = { Properties = {}, Functions = {} } + local props = child.children + for _, prop in pairs(props) do + local name = prop.attrs.name + name = name:sub(1, 1):upper() .. name:sub(2) + data[name] = prop.children[1].text + end + className = data.Name + classes[className] = data + elseif child.attrs.class == "ReflectionMetadataProperties" then + local members = child.children + for _, member in pairs(members) do + if member.attrs.class == "ReflectionMetadataMember" then + local data = {} + if member.children[1].tag == "Properties" then + local props = member.children[1].children + for _, prop in pairs(props) do + if prop.attrs then + local name = prop.attrs.name + name = name:sub(1, 1):upper() .. name:sub(2) + data[name] = prop.children[1].text + end end - end - if data.PropertyOrder then - local orders = propertyOrders[className] - if not orders then - orders = {} - propertyOrders[className] = orders + if data.PropertyOrder then + local orders = propertyOrders[className] + if not orders then + orders = {} + propertyOrders[className] = orders + end + orders[data.Name] = tonumber(data.PropertyOrder) end - orders[data.Name] = tonumber(data.PropertyOrder) + classes[className].Properties[data.Name] = data end - classes[className].Properties[data.Name] = data end end - end - elseif child.attrs.class == "ReflectionMetadataFunctions" then - local members = child.children - for _, member in pairs(members) do - if member.attrs.class == "ReflectionMetadataMember" then - local data = {} - if member.children[1].tag == "Properties" then - local props = member.children[1].children - for _, prop in pairs(props) do - if prop.attrs then - local name = prop.attrs.name - name = name:sub(1, 1):upper() .. name:sub(2) - data[name] = prop.children[1].text + elseif child.attrs.class == "ReflectionMetadataFunctions" then + local members = child.children + for _, member in pairs(members) do + if member.attrs.class == "ReflectionMetadataMember" then + local data = {} + if member.children[1].tag == "Properties" then + local props = member.children[1].children + for _, prop in pairs(props) do + if prop.attrs then + local name = prop.attrs.name + name = name:sub(1, 1):upper() .. name:sub(2) + data[name] = prop.children[1].text + end end + classes[className].Functions[data.Name] = data end - classes[className].Functions[data.Name] = data end end end end end - end - for _, enum in pairs(enumList) do - local enumName = "" - for _, child in pairs(enum.children) do - if child.tag == "Properties" then - local data = { Items = {} } - local props = child.children - for _, prop in pairs(props) do - local name = prop.attrs.name - name = name:sub(1, 1):upper() .. name:sub(2) - data[name] = prop.children[1].text - end - enumName = data.Name - enums[enumName] = data - elseif child.attrs.class == "ReflectionMetadataEnumItem" then - local data = {} - if child.children[1].tag == "Properties" then - local props = child.children[1].children + for _, enum in pairs(enumList) do + local enumName = "" + for _, child in pairs(enum.children) do + if child.tag == "Properties" then + local data = { Items = {} } + local props = child.children for _, prop in pairs(props) do local name = prop.attrs.name name = name:sub(1, 1):upper() .. name:sub(2) data[name] = prop.children[1].text end - enums[enumName].Items[data.Name] = data + enumName = data.Name + enums[enumName] = data + elseif child.attrs.class == "ReflectionMetadataEnumItem" then + local data = {} + if child.children[1].tag == "Properties" then + local props = child.children[1].children + for _, prop in pairs(props) do + local name = prop.attrs.name + name = name:sub(1, 1):upper() .. name:sub(2) + data[name] = prop.children[1].text + end + enums[enumName].Items[data.Name] = data + end end end end - end - return { Classes = classes, Enums = enums, PropertyOrders = propertyOrders } + return { Classes = classes, Enums = enums, PropertyOrders = propertyOrders } + else + if script:FindFirstChild("RMD") then + return require(script.RMD) + else + return { Classes = {}, Enums = {}, PropertyOrders = {} } + end + end end Main.ShowGui = function(gui) @@ -1474,7 +1503,9 @@ Main = (function() if Lib.StoredWindows then for _, windowData in pairs(Lib.StoredWindows) do if windowData.Close then - pcall(function() windowData:Close() end) + pcall(function() + windowData:Close() + end) end if windowData.Gui then windowData.Gui:Destroy() @@ -1495,6 +1526,9 @@ Main = (function() if ModelViewer and ModelViewer.Window and ModelViewer.Window.Gui then ModelViewer.Window.Gui:Destroy() end + if RemoteSpy and RemoteSpy.Window and RemoteSpy.Window.Gui then + RemoteSpy.Window.Gui:Destroy() + end -- Destroy main GUIs if Lib.SidesGui then @@ -1522,8 +1556,6 @@ Main = (function() scriptToDestroy:Destroy() end end) - - print("Dex has been unloaded") end) -- Settings Button @@ -1559,6 +1591,13 @@ Main = (function() Main.CreateApp({ Name = "Model Viewer", IconMap = Main.LargeIcons, Icon = 6, Window = ModelViewer.Window }) + Main.CreateApp({ + Name = "Remote Spy", + IconMap = Main.MiscIcons, + Icon = "CallRemote", + Window = RemoteSpy.Window, + }) + --Main.CreateApp({Name = "Script Viewer", IconMap = Main.LargeIcons, Icon = "Script_Viewer", Window = ScriptViewer.Window}) Lib.ShowGui(gui) @@ -1655,6 +1694,7 @@ Main = (function() Lib.FastWait() intro.SetProgress("Fetching RMD", 0.5) RMD = Main.FetchRMD() + Lib.FastWait() -- Load other modules @@ -1672,6 +1712,7 @@ Main = (function() Properties.Init() Console.Init() ModelViewer.Init() + RemoteSpy.Init() --ScriptViewer.Init() SettingsEditor.Init() -- init this last diff --git a/MainModule/Server/Plugins/ServerNewDex/init.lua b/MainModule/Server/Plugins/ServerNewDex/init.lua index f7ee48fe77..f2302211f8 100644 --- a/MainModule/Server/Plugins/ServerNewDex/init.lua +++ b/MainModule/Server/Plugins/ServerNewDex/init.lua @@ -13,14 +13,13 @@ return function(Vargs) local Admin = Server.Admin local Core = Server.Core - local HttpService = Service.HttpService - local Success, APIDump, Reflection = nil + local ReflectionService = Service.ReflectionService + local APIDump = nil + local RMDData = nil -- Reflection Metadata from ReflectionService local ServerNewDex = {} - -- API/Reflection URLs - local ROBLOX_CLIENT_TRACKER_BASE = "https://raw.githubusercontent.com/MaximumADHD/Roblox-Client-Tracker/roblox" - local API_DUMP_URL = "https://github.com/MaximumADHD/Roblox-Client-Tracker/raw/roblox/API-Dump.json" - local REFLECTION_METADATA_URL = ROBLOX_CLIENT_TRACKER_BASE .. "/ReflectionMetadata.xml" + -- Load data maps (icons, property priorities, class sorting) + local DataMaps = require(script:WaitForChild("Data")) local newDex_main = script:WaitForChild("Dex_Client", 120) local Event = ServerNewDex.Event @@ -36,39 +35,259 @@ return function(Vargs) end end - task.delay(0.25, function() -- Load Dex instance data asynchronously - if Server.HTTP.HttpEnabled then - while true do - Success, APIDump = pcall(function() - return HttpService:GetAsync(API_DUMP_URL) - end) - if Success and APIDump then - break + -- Generate API and RMD data from ReflectionService asynchronously + task.delay(0.25, function() + local reflectionSuccess, apiResult, rmdResult = pcall(function() + local classesData = ReflectionService:GetClasses() + + -- Build API structure from ReflectionService + local apiData = { + Classes = {}, + Enums = {}, + } + + -- Build minimal RMD structure - ONLY ReflectionService-unavailable data + local rmdData = { + Classes = {}, + } + + -- Property importance order (loaded from Data.lua) + local propertyPriority = DataMaps.propertyPriority + + -- Class icon mapping from original RMD (loaded from Data.lua) + local classIconMap = DataMaps.classIconMap + + -- Class sort/display order (loaded from Data.lua) + local classExplorerOrder = DataMaps.classExplorerOrder + + -- Get property importance score + local function getPropertyScore(propName) + return propertyPriority[propName] or 100 + string.len(propName) + end + + -- Categorize class based on tags (expects dictionary) + local function getClassCategory(tagsDict) + if tagsDict.Service then + return "Service" + end + if tagsDict.Creatable then + return "Instance" + end + if tagsDict.Deprecated then + return "Deprecated" + end + return "Other" + end + + -- Get icon index for a class (expects dictionary) + local function getClassIcon(className, tagsDict) + if classIconMap[className] then + return classIconMap[className] + end + if tagsDict.Service then + return 10 + end + if tagsDict.Creatable then + if + className:match("Gui$") + or className:match("Label$") + or className:match("Button$") + or className:match("Frame$") + then + return 40 + elseif className:match("Script$") then + return 30 + end + end + return 0 + end + + -- Build class lookup by name for superclass resolution + local classLookup = {} + for _, classInfo in ipairs(classesData) do + classLookup[classInfo.Name] = classInfo + end + + -- First pass: collect all class properties + local allClassProps = {} + for _, classInfo in ipairs(classesData) do + local propsData = ReflectionService:GetPropertiesOfClass(classInfo.Name) + local propSet = {} + for _, prop in ipairs(propsData) do + propSet[prop.Name] = prop + end + allClassProps[classInfo.Name] = propSet + end + + -- Helper: get all inherited property names by walking superclass chain + local function getInheritedProps(className) + local inherited = {} + local classInfo = classLookup[className] + if classInfo and classInfo.Superclass then + local superName = classInfo.Superclass + -- Get direct superclass properties + if allClassProps[superName] then + for propName, _ in pairs(allClassProps[superName]) do + inherited[propName] = true + end + end end - task.wait(1) + return inherited end - Logs:AddLog("Script", "Successfully loaded instance API dump to Dex") - while true do - Success, Reflection = pcall(function() - return HttpService:GetAsync(REFLECTION_METADATA_URL) + + -- Process classes + for _, classInfo in ipairs(classesData) do + local className = classInfo.Name + + -- Tags can be nil, handle that + local tagsDict = {} + local tags = {} + if classInfo.Tags then + for _, tag in ipairs(classInfo.Tags) do + local tagStr = tostring(tag) + tagsDict[tagStr] = true + table.insert(tags, tagStr) + end + end + + -- Build API class entry with ReflectionService data + local classEntry = { + Name = className, + Superclass = classInfo.Superclass, + Tags = tags, + Members = {}, + } + + -- Get properties for this class + local thisClassProps = allClassProps[className] or {} + + -- Get inherited properties to exclude + local inheritedProps = getInheritedProps(className) + + -- Collect only properties that are NOT inherited (directly defined on this class) + local sortedProps = {} + for propName, prop in pairs(thisClassProps) do + -- Skip inherited props + if not inheritedProps[propName] then + -- Skip lowercase/deprecated variants (className, archivable, etc.) + -- Only include if the property name starts with uppercase + local firstChar = string.sub(propName, 1, 1) + if firstChar == string.upper(firstChar) then + table.insert(sortedProps, prop) + end + end + end + + -- Sort by importance + table.sort(sortedProps, function(a, b) + local scoreA = getPropertyScore(a.Name) + local scoreB = getPropertyScore(b.Name) + return scoreA < scoreB end) - if Success and Reflection then - break + + -- Build API members from ReflectionService + local propertyOrder = 0 + for _, prop in ipairs(sortedProps) do + -- Tags can be nil + local propTags = {} + if prop.Tags then + for _, tag in ipairs(prop.Tags) do + table.insert(propTags, tostring(tag)) + end + end + + local memberEntry = { + Name = prop.Name, + MemberType = "Property", + Category = (prop.Display and prop.Display.Category) or "Data", + Security = { + Read = (prop.Permits and tostring(prop.Permits.Read)) or "None", + Write = (prop.Permits and tostring(prop.Permits.Write)) or "None", + }, + Serialization = { + CanSave = prop.Serialized or false, + CanLoad = prop.Serialized or false, + }, + Tags = propTags, + } + + if prop.Type then + local valueTypeName = prop.Type.ScriptType or prop.Type.EngineType + if valueTypeName then + -- Determine category based on type name + local category = "Primitive" + + -- Detect enum types: check if ScriptType is "EnumItem" and EnumType exists + if + (prop.Type.ScriptType == "EnumItem" or prop.Type.EngineType == "Enum") + and prop.Type.EnumType + then + -- Use the EnumType as the value type name (e.g., "Material", "PartType") + valueTypeName = prop.Type.EnumType + category = "Enum" + -- Detect class types + elseif valueTypeName == "Instance" or valueTypeName:match("^Class%.") then + category = "Class" + -- Map "boolean" to "bool" for client compatibility + elseif valueTypeName == "boolean" then + valueTypeName = "bool" + end + + memberEntry.ValueType = { + Name = valueTypeName, + Category = category, + } + end + end + + table.insert(classEntry.Members, memberEntry) + propertyOrder = propertyOrder + 1 + end + apiData.Classes[className] = classEntry + + -- Build MINIMAL RMD entry - ONLY data that ReflectionService cannot provide + local rmdClassEntry = { + Name = className, + ClassCategory = getClassCategory(tagsDict), + ExplorerImageIndex = getClassIcon(className, tagsDict), + ExplorerOrder = classExplorerOrder[className] or 9999, + } + + -- Only include PropertyOrder if we have it (important for property display order) + if propertyOrder > 0 then + rmdClassEntry.PropertyOrders = {} + local order = 0 + for _, prop in ipairs(sortedProps) do + rmdClassEntry.PropertyOrders[prop.Name] = order + order = order + 1 + end end - task.wait(1) + + rmdData.Classes[className] = rmdClassEntry end - Logs:AddLog("Script", "Successfully loaded reflection metadata to Dex") + + -- JSON encode for transmission to client + local apiJson = game:GetService("HttpService"):JSONEncode(apiData) + local rmdJson = game:GetService("HttpService"):JSONEncode(rmdData) + + return apiJson, rmdJson + end) + + if reflectionSuccess then + APIDump = apiResult + RMDData = rmdResult + Logs:AddLog("Script", "Successfully generated API and RMD data from ReflectionService") else - Logs:AddLog("Script", "Access to HttpService is not enabled! Dex API dump could not be fetched!") - Logs:AddLog("Errors", "Access to HttpService is not enabled! Dex API dump could not be fetched!") - --logError("Access to HttpService is not enabled! Dex api dump could not be fetched!") + Logs:AddLog("Errors", "Failed to generate API and RMD data from ReflectionService: " .. tostring(apiResult)) end end) ServerNewDex.newDex_main = newDex_main ServerNewDex.Event = nil ServerNewDex.LogEvent = nil -- RemoteEvent for pushing logs to clients + ServerNewDex.RemoteSpy_LogEvent = nil -- RemoteEvent for RemoteSpy logs ServerNewDex.Authorized = {} --// Users who have been given Dex and are authorized to use the remote event + ServerNewDex.RemoteSpyMonitoring = {} -- Players actively monitoring remotes -- Server-side log capturing local LogService = Service.LogService @@ -210,7 +429,11 @@ return function(Vargs) return APIDump or false end, fetchrmd = function(Player: Player) - return Reflection or false + -- Generate RMD data from ReflectionService for client use + if RMDData then + return RMDData + end + return false end, addtag = function(Player: Player, args) local obj = args[1] @@ -274,6 +497,24 @@ return function(Vargs) -- Send complete server log history to client return ServerLogHistory end, + + startremotespy = function(_Player: Player, _args, realPlr: Player) + -- Start monitoring remotes for this player + if not ServerNewDex.RemoteSpyMonitoring[realPlr] then + ServerNewDex.RemoteSpyMonitoring[realPlr] = true + return true + end + return false + end, + + stopremotespy = function(_Player: Player, _args, realPlr: Player) + -- Stop monitoring remotes for this player + if ServerNewDex.RemoteSpyMonitoring[realPlr] then + ServerNewDex.RemoteSpyMonitoring[realPlr] = nil + return true + end + return false + end, } function ServerNewDex.MakeEvent() @@ -308,8 +549,150 @@ return function(Vargs) Parent = game:GetService("ReplicatedStorage"), }, true, true) end + + -- Create RemoteSpy_LogEvent for pushing remote spy logs to clients + if not ServerNewDex.RemoteSpy_LogEvent then + ServerNewDex.RemoteSpy_LogEvent = Service.New("RemoteEvent", { + Name = "RemoteSpy_LogEvent", + Parent = game:GetService("ReplicatedStorage"), + }, true, true) + end + end + + -- Remote monitoring system (Lazy Loading) + local MonitoredRemotes = {} + local MonitoringActive = false + local DescendantAddedConnection = nil + + local function setupRemoteMonitoring(remote) + if MonitoredRemotes[remote] then + return -- Already monitoring + end + + local remoteName = remote:GetFullName() + local remoteType = remote.ClassName + + if remoteType == "RemoteEvent" then + -- Hook OnServerEvent + local originalEvent = remote.OnServerEvent + MonitoredRemotes[remote] = originalEvent:Connect(function(player, ...) + -- Broadcast to all monitoring clients + for monitoringPlayer, _ in pairs(ServerNewDex.RemoteSpyMonitoring) do + if monitoringPlayer and monitoringPlayer.Parent and ServerNewDex.RemoteSpy_LogEvent then + local args = { ... } + + local logData = { + remoteType = "FireServer", + remoteName = remoteName, + caller = player.Name, + args = args, -- Send raw args to client for detailed inspection + timestamp = os.time(), + } + + ServerNewDex.RemoteSpy_LogEvent:FireClient(monitoringPlayer, logData) + end + end + end) + elseif remoteType == "RemoteFunction" then + -- RemoteFunctions can't be hooked because OnServerInvoke is write-only + -- and we can't override the metatable on Roblox instances + -- For now, just mark as seen but don't actually hook + MonitoredRemotes[remote] = true + end + end + + -- Start monitoring all existing and new remotes + local function startMonitoring() + if MonitoringActive then + return -- Already monitoring + end + MonitoringActive = true + + -- Monitor existing remotes (only RemoteEvents will actually be hooked) + for _, descendant in ipairs(game:GetDescendants()) do + if descendant:IsA("RemoteEvent") then + setupRemoteMonitoring(descendant) + end + end + + -- Monitor new remotes going forward + if not DescendantAddedConnection then + DescendantAddedConnection = game.DescendantAdded:Connect(function(descendant) + if descendant:IsA("RemoteEvent") then + task.wait(0.1) -- Small delay to let it initialize + setupRemoteMonitoring(descendant) + end + end) + end + end + + -- Stop monitoring remotes when no one is using RemoteSpy + local function stopMonitoring() + if not MonitoringActive then + return + end + MonitoringActive = false + + -- Disconnect existing connections + for remote, connection in pairs(MonitoredRemotes) do + if typeof(connection) == "RBXScriptConnection" then + connection:Disconnect() + end + end + MonitoredRemotes = {} + + -- Disconnect the DescendantAdded connection + if DescendantAddedConnection then + DescendantAddedConnection:Disconnect() + DescendantAddedConnection = nil + end + end + + -- Monitor when players start/stop monitoring + local OriginalStartRemoteSpy = Actions.startremotespy + local OriginalStopRemoteSpy = Actions.stopremotespy + + Actions.startremotespy = function(...) + local result = OriginalStartRemoteSpy(...) + -- Start monitoring only when first player enables it + local activeMonitors = 0 + for _, _ in pairs(ServerNewDex.RemoteSpyMonitoring) do + activeMonitors = activeMonitors + 1 + end + if activeMonitors > 0 then + startMonitoring() + end + return result + end + + Actions.stopremotespy = function(...) + local result = OriginalStopRemoteSpy(...) + -- Stop monitoring if no one is actively monitoring + local activeMonitors = 0 + for _, _ in pairs(ServerNewDex.RemoteSpyMonitoring) do + activeMonitors = activeMonitors + 1 + end + if activeMonitors == 0 then + stopMonitoring() + end + return result end + -- Clean up monitoring when a player leaves + game:GetService("Players").PlayerRemoving:Connect(function(player) + if ServerNewDex.RemoteSpyMonitoring[player] then + ServerNewDex.RemoteSpyMonitoring[player] = nil + -- Check if anyone else is monitoring + local activeMonitors = 0 + for _, _ in pairs(ServerNewDex.RemoteSpyMonitoring) do + activeMonitors = activeMonitors + 1 + end + if activeMonitors == 0 then + stopMonitoring() + end + end + end) + function ServerNewDex.MakeLocalDexForPlayer(ply, dexGui, destination) if ply then if dexGui and destination then From 930fa3bf684c491350d09aec99a77e05382b491e Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Sat, 13 Dec 2025 14:33:46 -0500 Subject: [PATCH 28/36] Remove Friction and Elasticity fields from data table Fix linting errors --- MainModule/Server/Plugins/ServerNewDex/Data.lua | 2 -- 1 file changed, 2 deletions(-) diff --git a/MainModule/Server/Plugins/ServerNewDex/Data.lua b/MainModule/Server/Plugins/ServerNewDex/Data.lua index f494ad714b..a191ed49c1 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Data.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Data.lua @@ -23,8 +23,6 @@ return { Size = 26, Scale = 27, CanCollide = 30, - Friction = 31, - Elasticity = 32, Density = 33, Velocity = 34, RotVelocity = 35, From 4800c5404c2827a0bd40e2ea266cd91200eac51c Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Sat, 13 Dec 2025 17:38:39 -0500 Subject: [PATCH 29/36] Refactor API/RMD generation and update classIconMap Moved helper functions for API and RMD data generation outside the main closure to reduce memory usage and avoid redundant closures. Updated the classIconMap in Data.lua to match RMD.xml and reflect current class mappings. Improved lazy-loading logic for API and RMD data, and replaced log calls with print/warn for server output. --- .../Server/Plugins/ServerNewDex/Data.lua | 663 ++++++------------ .../Server/Plugins/ServerNewDex/init.lua | 124 ++-- 2 files changed, 279 insertions(+), 508 deletions(-) diff --git a/MainModule/Server/Plugins/ServerNewDex/Data.lua b/MainModule/Server/Plugins/ServerNewDex/Data.lua index a191ed49c1..c89f727d8b 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Data.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Data.lua @@ -43,7 +43,7 @@ return { TimePosition = 62, }, - -- Class icon mapping from original RMD (all 277 classes) + -- Class icon mapping from RMD.xml (all 277 classes) classIconMap = { Accessory = 32, Accoutrement = 32, @@ -80,464 +80,235 @@ return { AudioPitchShifter = 84, AudioPlayer = 11, AudioReverb = 84, - AudioUnEcho = 84, - Backpack = 2, - BaseWrap = 126, - BasePart = 1, - BaseScript = 30, - BillboardGui = 5, - BindableEvent = 37, - BindableFunction = 37, - BodyAngularVelocity = 34, - BodyGyro = 34, - BodyPosition = 34, - BodyThrust = 34, - BodyVelocity = 34, - BoolValue = 38, - BrickColorValue = 39, - BrushLocomotor = 34, - Bulkheads = 126, - Button = 145, - ButtonLocomotor = 34, - CFrameValue = 38, - Camera = 3, - CapsuleHandles = 56, - ChannelBot = 143, - Cherno = 1, + AudioTextToSpeech = 84, + AudioTremolo = 84, + Backpack = 20, + BallSocketConstraint = 86, + Beam = 96, + BillboardGui = 64, + BindableEvent = 67, + BindableFunction = 66, + BlockMesh = 8, + BloomEffect = 83, + BlurEffect = 83, + BodyAngularVelocity = 14, + BodyForce = 14, + BodyGyro = 14, + BodyPosition = 14, + BodyThrust = 14, + BodyVelocity = 14, + Bone = 114, + BoolValue = 4, + BoxHandleAdornment = 111, + BrickColorValue = 4, + CFrameValue = 4, + Camera = 5, + CanvasGroup = 48, + ChannelSelectorSoundEffect = 84, + CharacterMesh = 60, + Chat = 33, + ChatInputBarConfiguration = 142, + ChatService = 33, + ChatWindowConfiguration = 141, ChorusSoundEffect = 84, - Chat = 11, - ChatInputBar = 145, - ChatWindowConfiguration = 145, - Class = 101, - ClickDetector = 37, - Clothing = 32, - Color3Value = 38, - ColorSequence = 39, - ColorSequenceKeypoint = 39, - CommandBar = 11, - Configuration = 37, - ConnectGui = 145, - ContextActionService = 136, - Controller = 30, + ClickDetector = 41, + Clouds = 28, + Color3Value = 4, + ColorCorrectionEffect = 83, + CompressorSoundEffect = 84, + ConeHandleAdornment = 110, + Configuration = 58, + Constraint = 86, + CoreGui = 46, + CorePackages = 20, CornerWedgePart = 1, - CustomEventReceiver = 11, - CustomSyncAction = 11, - CylinderHandles = 56, - CylindricalConstraint = 94, - Debris = 136, - DebuggerBreakpoint = 11, - DebuggerManager = 11, - DebuggerWatch = 11, - Decal = 6, - DepthOfFieldEffect = 11, - Dialog = 37, + CustomEvent = 4, + CustomEventReceiver = 4, + CylinderHandleAdornment = 109, + CylinderMesh = 8, + CylindricalConstraint = 95, + Debris = 30, + Decal = 7, + DepthOfFieldEffect = 83, + Dialog = 62, + DialogChoice = 63, DistortionSoundEffect = 84, - DragDetector = 37, - Dragger = 34, + DoubleConstrainedValue = 4, + DragDetector = 41, EchoSoundEffect = 84, - Enum = 101, EqualizerSoundEffect = 84, - EulerRotationCurve = 39, - EulerRotationCurveKey = 39, - Event = 101, - Explosion = 37, - ExposureAdjustment = 11, - FailureInducer = 11, - Feature = 128, - FileSystemWatcher = 11, - Fire = 37, - FlagStand = 145, + Explosion = 36, + FaceControls = 129, + Fire = 61, + Flag = 38, + FlagStand = 39, FlangeSoundEffect = 84, - FlexibleConstraint = 94, - FloatCurve = 39, - FloatCurveKey = 39, - FloorWire = 17, - Folder = 2, - ForceField = 34, - FormFactorPart = 1, - Frame = 52, - FreeMovementController = 34, - FreecamController = 34, - FriendCardiGui = 145, - FriendNotificationGui = 145, - FriendsCoreGui = 145, - FunctionsDialogModules = 11, - Gadget = 113, - GapDragDetector = 37, - GasProperties = 101, - GateSoundEffect = 84, - GeneralSettings = 11, - Geometry = 101, - GlueConstraint = 94, - Glue = 34, - GoalSensor = 145, - GraphicsSettings = 11, - GroundController = 34, - GuiBase = 52, - GuiBase2d = 52, - GuiBase3d = 52, + FloorWire = 4, + Folder = 77, + ForceField = 37, + Frame = 48, GuiButton = 52, - GuiLabel = 52, - GuiMain = 11, - GuiObject = 52, - GuiTextLabel = 52, - GuiTextField = 52, - Gyro = 34, - HandleAdornment = 56, - Handles = 56, - HapticService = 136, - Hat = 32, - HeadLocomotor = 34, - HeadsUpDisplay = 145, - HealthDecreaser = 145, - HingeConstraint = 94, - HitPoints = 145, - Hole = 1, - HoleSurface = 1, - HomeLowerGui = 145, - HomeScreenMotor = 11, - HtmlTextLabel = 52, - Humanoid = 7, - HumanoidController = 34, - HumanoidDescription = 7, - HumanoidRootPart = 1, - IKControl = 34, + GuiMain = 47, + Handles = 53, + Hat = 45, + Highlight = 133, + HingeConstraint = 87, + Hint = 33, + HopperBin = 22, + Humanoid = 9, + HumanoidDescription = 104, + IKControl = 53, ImageButton = 52, - ImageLabel = 52, - ImageSize = 101, - ImportedEnumType = 101, - InflateConstraint = 94, - InputObject = 101, - InputService = 136, - InsertService = 136, - Instance = 113, - IntConstrainedValue = 38, - IntValue = 38, - IntegrationBase = 101, - Interactable = 145, - InteractionController = 34, - InteractionPrompter = 145, - InterfaceAdornment = 56, - Inventory = 145, - InvokableGui = 145, - IslandConfigurator = 145, + ImageHandleAdornment = 108, + ImageLabel = 49, + IntConstrainedValue = 4, + IntValue = 4, JointInstance = 34, - JointLocomotor = 34, - Keyframe = 39, - KeyframeMarker = 39, - KeyframeSequence = 39, - Knee = 145, - L70Obsolete = 11, - LevelSequence = 39, - LevelSequenceKeypoint = 39, - Library = 128, - Lighting = 28, - LimiterSoundEffect = 84, - LineForce = 34, - LineHandleAdornment = 56, - LoadingGui = 145, - LocalizationEntry = 11, - LocalizationService = 136, - LocalScript = 30, - Locale = 11, - LockConstraint = 94, - Lod = 126, - LodData = 126, - LodGroup = 126, - LodRoot = 126, - LodTemplate = 126, - LogService = 136, - LoginGui = 145, - Lunge = 145, - LuaSourceContainer = 30, - Mannequin = 7, - ManualSurfaceGui = 52, - MarketplaceService = 136, - MemStorage = 11, - MemStorageConnection = 11, - MeshId = 101, - MeshPart = 1, - Message = 37, - MessageBusConnection = 11, - Metatable = 11, - Method = 101, - MethodError = 11, - MicroProfiler = 11, - MobileButton = 145, - MobileButtonsFrame = 145, - MobileInputFrame = 145, - ModuleScript = 30, - Motor = 34, - Motor6D = 34, - MotorFeature = 101, - Mount = 145, - MoveDetector = 37, - MovementController = 34, - MovieClip = 39, - NameDisplayGui = 145, - NetworkClient = 11, - NetworkMarker = 34, - NetworkReplicator = 11, - NetworkServer = 11, - NormalId = 101, - NotificationGui = 145, - NumberRange = 39, - NumberSequence = 39, - NumberSequenceKeypoint = 39, - NumberValue = 38, - ObjectValue = 38, - OcclusionGeometry = 113, - OffsetCurve = 39, - OrderedDictionary = 11, - Orientation = 101, - OutputAnalyzer = 11, - OutputContainer = 11, - OverlapParams = 101, - OverscrollShadow = 145, - OverscrollShadowFrame = 145, - PaddleLock = 94, - PaginatedList = 145, - PanLocomotor = 34, - PanValue = 101, - ParallelConstraint = 94, + Keyframe = 60, + KeyframeMarker = 60, + Light = 13, + Lighting = 13, + LineForce = 101, + LineHandleAdornment = 107, + LinearVelocity = 132, + LocalScript = 18, + LocalizationService = 92, + LocalizationTable = 97, + MarketplaceService = 46, + MaterialService = 131, + MaterialVariant = 130, + MeshPart = 73, + Message = 33, + Model = 2, + ModuleScript = 76, + Motor6D = 106, + NegateOperation = 72, + NetworkClient = 16, + NetworkReplicator = 29, + NetworkServer = 15, + NoCollisionConstraint = 105, + NumberPose = 60, + NumberValue = 4, + ObjectValue = 4, + PackageLink = 98, + Pants = 44, + ParallelRampPart = 1, Part = 1, - PartAdornment = 56, - PartAsset = 101, - ParticleEmitter = 37, - PartOperation = 1, - PartOperationAsset = 101, - PerfStatsItem = 145, - PerformanceStatsGui = 145, - PhysicalProperties = 101, - Physics = 11, - Picker = 145, + PartPairLasso = 57, + ParticleEmitter = 80, + PathfindingLink = 137, + PathfindingModifier = 128, PitchShiftSoundEffect = 84, - PixelSize = 101, - PlaceId = 11, - PointLight = 8, - PointLocomotor = 34, - Pole = 145, - PollingTimer = 11, - PopupMenu = 52, - Position = 101, - PrimaryPart = 101, - PrismaticConstraint = 94, - ProximityPrompt = 37, - ProximityPrompterGui = 145, - PullConstraint = 94, - PushButton = 145, - PushNotificationReceiver = 136, - RBXGamepadButton = 101, - RBXScriptConnection = 101, - RBXScriptSignal = 101, - RadialConstraint = 94, - Radio = 11, - RainGear = 32, - RangeFilter = 11, - Rank = 145, - RaycastParams = 101, - RaycastResult = 101, - RaycastResultOrigin = 101, - RayValue = 38, - Rays = 11, - ReactorCore = 145, - Reactive = 145, - ReactiveButton = 145, - ReadyGui = 145, - Rectangle = 1, - RectangleHandles = 56, - ReflectionMetadata = 11, - ReflectionService = 136, - Regions = 128, - RemoteEvent = 37, - RemoteFunction = 37, - RemoteSpy = 11, - ReplicatedFirst = 2, - ReplicatedScriptService = 30, - ReplicatedStorage = 2, - ResourceFork = 11, - ResponsiveGui = 145, - RestrictedChild = 101, - ResultItem = 145, + Plane = 134, + PlaneConstraint = 134, + Platform = 35, + Player = 12, + PlayerGui = 46, + PlayerScripts = 78, + Players = 21, + Plugin = 86, + PluginDebugService = 46, + PluginGuiService = 46, + PointLight = 13, + Pose = 60, + PoseBase = 60, + PrismPart = 1, + PrismaticConstraint = 88, + ProximityPrompt = 124, + PyramidPart = 1, + RayValue = 4, + RemoteEvent = 75, + RemoteFunction = 74, + RenderingTest = 5, + ReplicatedFirst = 70, + ReplicatedStorage = 70, ReverbSoundEffect = 84, - RevoluteConstraint = 94, - Ribbon = 126, - RichTextLabel = 52, - RigidConstraint = 94, - RootLocomotor = 34, - RopeDragDetector = 37, - RotatedRegion3 = 101, - RotatedRegionTest = 101, - RotInertiaConstraint = 94, - RotVelocityConstraint = 94, - RotationCurve = 39, - RotationCurveKey = 39, - Rotator = 34, - RouteWaypoint = 145, - RulesFrame = 145, - RunService = 136, - RuntimeNodeModuleScript = 30, - S1ButtonActivator = 145, - S2ButtonActivator = 145, - SKD = 128, - Seat = 1, - SeaWeedPlant = 145, - SectionLabel = 145, - SectionLabelFrame = 145, - Selection = 136, - SeqTweenItem = 39, - SequenceMotor = 34, - ServerScript = 30, - ServerScriptService = 30, - ServerStorage = 2, - ServiceBase = 101, - ServiceProvider = 101, - SetString = 11, - Settings = 11, - Shape = 101, - ShapeInParabola = 1, - SharedString = 11, - Shirt = 32, - ShirtGraphic = 32, - Signal = 101, - SignalRemoteEvent = 37, - Size = 101, - SizeConstraint = 94, - Skin = 145, - Smoke = 37, - SnapshotPublishService = 136, - Snap = 145, - SnappingConstraint = 94, - SnowballThrower = 145, - SnowCrusherTurret = 145, - SoundEffect = 84, - SoundGroup = 11, + RightAngleRampPart = 1, + RigidConstraint = 135, + RobloxPluginGuiService = 46, + RocketPropulsion = 14, + RodConstraint = 90, + RopeConstraint = 89, + ScreenGui = 47, + Script = 6, + ScrollingFrame = 48, + Seat = 35, + SelectionBox = 54, + SelectionPartLasso = 57, + SelectionPointLasso = 57, + SelectionSphere = 54, + ServerScriptService = 71, + ServerStorage = 69, + Shirt = 43, + ShirtGraphic = 40, + SkateboardPlatform = 35, + Sky = 28, + SlidingBallConstraint = 88, + Smoke = 59, + Snap = 34, Sound = 11, - Spark = 37, - SpawnLocation = 1, - SpecialMesh = 9, - SpectatorGui = 145, - SpellingErrorHighlightObject = 11, - SphereHandles = 56, - SplineConstraint = 94, - Spoke = 34, - SpringConstraint = 94, - StandardPages = 145, - StarterCharacterScripts = 30, - StarterGui = 52, - StarterPlayer = 7, - StarterPlayerCharacterScripts = 30, - StarterPlayerCharacterAppearance = 32, - StarterPlayerScripts = 30, - StaticGroup = 113, - StatsGui = 145, - Steering = 34, - StencilMesh = 9, - StepFunction = 34, - StepMotor = 34, - StepSnappingConstraint = 94, - StretchConstraint = 94, - StringValue = 38, - Structure = 128, - StudioAssetService = 136, - StudioData = 11, - StudioTheme = 11, - Style = 145, - StyleLayout = 52, - Subject = 101, - SubmitLockedPrompt = 145, - SubscriptionsPage = 145, - SurfaceAdornment = 56, - SurfaceGui = 52, - SurfaceSelection = 145, - SwappableFrame = 52, - SwayController = 34, - SwimLocomotor = 34, - SwimmingAnimationController = 34, - Symbol = 11, - SymbolScope = 11, - SyncController = 34, - SymbolType = 11, - SystemHardware = 11, - TABLE = 145, - TaskScheduler = 11, - TeleportService = 136, - Template = 126, - TemporalFramebuffer = 11, - Terrain = 28, - TerrainDetail = 11, - Test = 11, - TestService = 136, - TextBox = 52, - TextButton = 52, - TextLabel = 52, - TextSize = 101, - TextService = 136, - Texture = 1, - TextureId = 101, - ThumbnailGenerator = 11, - ThumbnailPreviewFrame = 145, - ThumbStick = 101, - TimeLabel = 145, - Timeout = 11, - TitleBar = 145, - ToggleButton = 145, - Tool = 2, - ToolTipGui = 145, - TopBar = 145, - TopBarContainer = 145, - TopBarFrame = 145, - TouchButton = 145, - TouchGui = 145, - TouchInputFrame = 145, - Tower = 145, - TrackPlane = 145, - TransformController = 34, - Translator = 136, - TransparencyController = 34, - TrussLocomotor = 34, - TubeConstraint = 94, - TubeConnection = 101, - Tunnel = 145, - TweenBase = 39, - TweenInfo = 101, - TweenService = 136, - TwistConstraint = 94, - TwoPointDragDetector = 37, - Type = 101, - TypeBase = 101, - TypeDef = 11, - UIAspectRatioConstraint = 52, - UICanvasSize = 52, - UICorner = 52, - UIGradient = 52, - UIGridLayout = 52, - UIListLayout = 52, - UIPadding = 52, - UIPageLayout = 52, - UIScale = 52, - UISizeConstraint = 52, - UIStroke = 52, - UITableLayout = 52, - UITextSizeConstraint = 52, - UnitBase = 101, - UnlockedGui = 145, - UnmanagedInstance = 113, - UserGameSettings = 11, - UserInputService = 136, - UserSettings = 11, - Utility = 128, - VRGear = 32, - VehicleController = 34, - VehicleFeature = 101, - Vector2 = 101, - Vector3 = 101, - Vector3int16 = 101, - Vector3Value = 38, - Vector4 = 101, - VectorForce = 34, - Version = 11, - VersionControlLockedGui = 145, + SoundGroup = 85, + SoundService = 31, + Sparkles = 42, + SpawnLocation = 25, + Speaker = 11, + SpecialMesh = 8, + SphereHandleAdornment = 112, + SpotLight = 13, + SpringConstraint = 91, + StandalonePluginScripts = 78, + StarterCharacterScripts = 78, + StarterGear = 20, + StarterGui = 46, + StarterPack = 20, + StarterPlayer = 79, + StarterPlayerScripts = 78, + Status = 2, + StringValue = 4, + SunRaysEffect = 83, + SurfaceAppearance = 10, + SurfaceGui = 64, + SurfaceLight = 13, + SurfaceSelection = 55, + Team = 24, + Teams = 23, + Terrain = 65, + TerrainDetail = 144, + TerrainRegion = 65, + TestService = 68, + TextBox = 51, + TextButton = 51, + TextChannel = 140, + TextChatCommand = 138, + TextChatService = 143, + TextLabel = 50, + TextSource = 139, + Texture = 10, + Tool = 17, + Torque = 103, + TorsionSpringConstraint = 125, + TouchTransmitter = 37, + Trail = 93, + TremoloSoundEffect = 84, + TrussPart = 1, + UIAspectRatioConstraint = 26, + UICorner = 26, + UIGradient = 26, + UIGridLayout = 26, + UIListLayout = 26, + UIPadding = 26, + UIPageLayout = 26, + UIScale = 26, + UISizeConstraint = 26, + UIStroke = 26, + UITableLayout = 26, + UITextSizeConstraint = 26, + UnionOperation = 73, + UniversalConstraint = 123, + ValueBase = 4, + Vector3Value = 4, + VectorForce = 102, + VehicleSeat = 35, VideoFrame = 120, ViewportFrame = 52, VoiceChatService = 136, diff --git a/MainModule/Server/Plugins/ServerNewDex/init.lua b/MainModule/Server/Plugins/ServerNewDex/init.lua index f2302211f8..914f570bd2 100644 --- a/MainModule/Server/Plugins/ServerNewDex/init.lua +++ b/MainModule/Server/Plugins/ServerNewDex/init.lua @@ -35,10 +35,54 @@ return function(Vargs) end end - -- Generate API and RMD data from ReflectionService asynchronously - task.delay(0.25, function() + -- Helper functions for API/RMD generation (moved outside to minimize closure memory) + local function getPropertyScore(propName, propertyPriority) + return propertyPriority[propName] or 100 + string.len(propName) + end + + local function getClassCategory(tagsDict) + if tagsDict.Service then + return "Service" + end + if tagsDict.Creatable then + return "Instance" + end + if tagsDict.Deprecated then + return "Deprecated" + end + return "Other" + end + + local function getClassIcon(className, tagsDict, classIconMap) + if classIconMap[className] then + return classIconMap[className] + end + if tagsDict.Service then + return 10 + end + if tagsDict.Creatable then + if + className:match("Gui$") + or className:match("Label$") + or className:match("Button$") + or className:match("Frame$") + then + return 40 + elseif className:match("Script$") then + return 30 + end + end + return 0 + end + + -- Main function to generate API and RMD data from ReflectionService + -- This is called lazily when Dex is first opened to save memory + local function generateAPIAndRMD() local reflectionSuccess, apiResult, rmdResult = pcall(function() local classesData = ReflectionService:GetClasses() + local propertyPriority = DataMaps.propertyPriority + local classIconMap = DataMaps.classIconMap + local classExplorerOrder = DataMaps.classExplorerOrder -- Build API structure from ReflectionService local apiData = { @@ -51,56 +95,6 @@ return function(Vargs) Classes = {}, } - -- Property importance order (loaded from Data.lua) - local propertyPriority = DataMaps.propertyPriority - - -- Class icon mapping from original RMD (loaded from Data.lua) - local classIconMap = DataMaps.classIconMap - - -- Class sort/display order (loaded from Data.lua) - local classExplorerOrder = DataMaps.classExplorerOrder - - -- Get property importance score - local function getPropertyScore(propName) - return propertyPriority[propName] or 100 + string.len(propName) - end - - -- Categorize class based on tags (expects dictionary) - local function getClassCategory(tagsDict) - if tagsDict.Service then - return "Service" - end - if tagsDict.Creatable then - return "Instance" - end - if tagsDict.Deprecated then - return "Deprecated" - end - return "Other" - end - - -- Get icon index for a class (expects dictionary) - local function getClassIcon(className, tagsDict) - if classIconMap[className] then - return classIconMap[className] - end - if tagsDict.Service then - return 10 - end - if tagsDict.Creatable then - if - className:match("Gui$") - or className:match("Label$") - or className:match("Button$") - or className:match("Frame$") - then - return 40 - elseif className:match("Script$") then - return 30 - end - end - return 0 - end -- Build class lookup by name for superclass resolution local classLookup = {} @@ -180,8 +174,8 @@ return function(Vargs) -- Sort by importance table.sort(sortedProps, function(a, b) - local scoreA = getPropertyScore(a.Name) - local scoreB = getPropertyScore(b.Name) + local scoreA = getPropertyScore(a.Name, propertyPriority) + local scoreB = getPropertyScore(b.Name, propertyPriority) return scoreA < scoreB end) @@ -249,7 +243,7 @@ return function(Vargs) local rmdClassEntry = { Name = className, ClassCategory = getClassCategory(tagsDict), - ExplorerImageIndex = getClassIcon(className, tagsDict), + ExplorerImageIndex = getClassIcon(className, tagsDict, classIconMap), ExplorerOrder = classExplorerOrder[className] or 9999, } @@ -276,11 +270,13 @@ return function(Vargs) if reflectionSuccess then APIDump = apiResult RMDData = rmdResult - Logs:AddLog("Script", "Successfully generated API and RMD data from ReflectionService") + print("[SERVER] Successfully generated API and RMD data from ReflectionService") else - Logs:AddLog("Errors", "Failed to generate API and RMD data from ReflectionService: " .. tostring(apiResult)) + warn("[SERVER ERROR] Failed to generate API and RMD data from ReflectionService: " .. tostring(apiResult)) end - end) + + return APIDump, RMDData + end ServerNewDex.newDex_main = newDex_main ServerNewDex.Event = nil @@ -426,14 +422,18 @@ return function(Vargs) end end, fetchapi = function(Player: Player) + -- Lazy-load API on first request + if not APIDump then + generateAPIAndRMD() + end return APIDump or false end, fetchrmd = function(Player: Player) - -- Generate RMD data from ReflectionService for client use - if RMDData then - return RMDData + -- Lazy-load RMD on first request + if not RMDData then + generateAPIAndRMD() end - return false + return RMDData or false end, addtag = function(Player: Player, args) local obj = args[1] From b8b5118cb9b45a053bf4d277efde0e8609312b25 Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Sat, 13 Dec 2025 17:58:24 -0500 Subject: [PATCH 30/36] Ensure critical classes like Player are included in API Adds logic to include critical classes such as 'Player' in the API data even if they are not returned by ReflectionService:GetClasses(). This ensures that essential classes are always present for downstream consumers, with properties fetched directly from ReflectionService where possible. Also removes some debug print statements for cleaner output. --- .../Server/Plugins/ServerNewDex/init.lua | 85 ++++++++++++++++++- 1 file changed, 81 insertions(+), 4 deletions(-) diff --git a/MainModule/Server/Plugins/ServerNewDex/init.lua b/MainModule/Server/Plugins/ServerNewDex/init.lua index 914f570bd2..197f482ab1 100644 --- a/MainModule/Server/Plugins/ServerNewDex/init.lua +++ b/MainModule/Server/Plugins/ServerNewDex/init.lua @@ -95,7 +95,6 @@ return function(Vargs) Classes = {}, } - -- Build class lookup by name for superclass resolution local classLookup = {} for _, classInfo in ipairs(classesData) do @@ -260,6 +259,87 @@ return function(Vargs) rmdData.Classes[className] = rmdClassEntry end + -- Ensure critical classes are in API even if ReflectionService doesn't provide them + -- This handles special classes like Player that may not be returned by GetClasses() + local criticalClasses = { "Player" } + for _, criticalClassName in ipairs(criticalClasses) do + if not apiData.Classes[criticalClassName] and classIconMap[criticalClassName] then + -- Try to get properties from ReflectionService + local criticalProps = {} + local propsSuccess, propsData = pcall(function() + return ReflectionService:GetPropertiesOfClass(criticalClassName) + end) + + if propsSuccess and propsData then + -- Build members from ReflectionService properties + for _, prop in ipairs(propsData) do + if prop.Type then + local valueTypeName = prop.Type.ScriptType or prop.Type.EngineType + if valueTypeName then + local category = "Primitive" + + -- Detect enum types + if + (prop.Type.ScriptType == "EnumItem" or prop.Type.EngineType == "Enum") + and prop.Type.EnumType + then + valueTypeName = prop.Type.EnumType + category = "Enum" + elseif valueTypeName == "Instance" or valueTypeName:match("^Class%.") then + category = "Class" + elseif valueTypeName == "boolean" then + valueTypeName = "bool" + end + + local propTags = {} + if prop.Tags then + for _, tag in ipairs(prop.Tags) do + table.insert(propTags, tostring(tag)) + end + end + + table.insert(criticalProps, { + Name = prop.Name, + MemberType = "Property", + Category = (prop.Display and prop.Display.Category) or "Data", + Security = { + Read = (prop.Permits and tostring(prop.Permits.Read)) or "None", + Write = (prop.Permits and tostring(prop.Permits.Write)) or "None", + }, + Serialization = { + CanSave = prop.Serialized or false, + CanLoad = prop.Serialized or false, + }, + Tags = propTags, + ValueType = { + Name = valueTypeName, + Category = category, + }, + }) + end + end + end + end + + -- Add entry for critical class + apiData.Classes[criticalClassName] = { + Name = criticalClassName, + Superclass = nil, + Tags = {}, + Members = criticalProps, + } + -- Add minimal RMD entry + if not rmdData.Classes[criticalClassName] then + rmdData.Classes[criticalClassName] = { + Name = criticalClassName, + ClassCategory = "Instance", + ExplorerImageIndex = classIconMap[criticalClassName], + ExplorerOrder = classExplorerOrder[criticalClassName] or 9999, + } + end + end + end + -- JSON encode for transmission to client local apiJson = game:GetService("HttpService"):JSONEncode(apiData) local rmdJson = game:GetService("HttpService"):JSONEncode(rmdData) @@ -270,9 +350,6 @@ return function(Vargs) if reflectionSuccess then APIDump = apiResult RMDData = rmdResult - print("[SERVER] Successfully generated API and RMD data from ReflectionService") - else - warn("[SERVER ERROR] Failed to generate API and RMD data from ReflectionService: " .. tostring(apiResult)) end return APIDump, RMDData From 4225700b75fc9e16866235531580e48b58d874ef Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Sat, 13 Dec 2025 18:05:07 -0500 Subject: [PATCH 31/36] Mark abstract classes as NotCreatable in API data Added a list of abstract classes and ensured they are tagged as NotCreatable when building API class entries. Also updated the critical class entry to include the NotCreatable tag, preventing instantiation of these classes. --- .../Server/Plugins/ServerNewDex/init.lua | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/MainModule/Server/Plugins/ServerNewDex/init.lua b/MainModule/Server/Plugins/ServerNewDex/init.lua index 197f482ab1..90f8e1da22 100644 --- a/MainModule/Server/Plugins/ServerNewDex/init.lua +++ b/MainModule/Server/Plugins/ServerNewDex/init.lua @@ -128,6 +128,15 @@ return function(Vargs) return inherited end + -- Define abstract classes that shouldn't be creatable + local abstractClasses = { + BasePart = true, + BaseValue = true, + BaseScript = true, + PVInstance = true, + BaseWrap = true, + } + -- Process classes for _, classInfo in ipairs(classesData) do local className = classInfo.Name @@ -143,6 +152,12 @@ return function(Vargs) end end + -- Mark abstract classes as non-creatable + if abstractClasses[className] and not tagsDict.NotCreatable then + table.insert(tags, "NotCreatable") + tagsDict.NotCreatable = true + end + -- Build API class entry with ReflectionService data local classEntry = { Name = className, @@ -321,11 +336,11 @@ return function(Vargs) end end - -- Add entry for critical class + -- Add entry for critical class with NotCreatable tag apiData.Classes[criticalClassName] = { Name = criticalClassName, Superclass = nil, - Tags = {}, + Tags = { "NotCreatable" }, Members = criticalProps, } -- Add minimal RMD entry From 81130efb7cce8d48496af82d323033f6410f0309 Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Sun, 14 Dec 2025 09:31:45 -0500 Subject: [PATCH 32/36] Move API/RMD generation to client-side Refactored Dex to generate API and RMD data on the client using ReflectionService, reducing server bandwidth and memory usage. Removed server-side API/RMD generation logic and related data maps from the server. Updated client to locally generate and fallback to bundled API/RMD if needed. Also moved Data.lua to the client Modules directory. --- .../main_NewDex/Modules}/Data.lua | 0 .../Dex_Client/main_NewDex/init.client.lua | 290 +++++++++++++- .../Server/Plugins/ServerNewDex/init.lua | 355 +----------------- 3 files changed, 283 insertions(+), 362 deletions(-) rename MainModule/Server/Plugins/ServerNewDex/{ => Dex_Client/main_NewDex/Modules}/Data.lua (100%) diff --git a/MainModule/Server/Plugins/ServerNewDex/Data.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Data.lua similarity index 100% rename from MainModule/Server/Plugins/ServerNewDex/Data.lua rename to MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Data.lua diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua index b1ac34835b..74980b54ff 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua @@ -331,16 +331,285 @@ Main = (function() -- end -- end + -- Load data maps for client-side API/RMD generation + local DataMaps = require(script:WaitForChild("Modules"):WaitForChild("Data")) + + -- Helper functions for client-side API/RMD generation + local function getPropertyScore(propName, propertyPriority) + return propertyPriority[propName] or 100 + string.len(propName) + end + + local function getClassCategory(tagsDict) + if tagsDict.Service then return "Service" end + if tagsDict.Creatable then return "Instance" end + if tagsDict.Deprecated then return "Deprecated" end + return "Other" + end + + local function getClassIcon(className, tagsDict, classIconMap) + if classIconMap[className] then return classIconMap[className] end + if tagsDict.Service then return 10 end + if tagsDict.Creatable then + if className:match("Gui$") or className:match("Label$") or className:match("Button$") or className:match("Frame$") then + return 40 + elseif className:match("Script$") then + return 30 + end + end + return 0 + end + + -- Client-side API and RMD generation from ReflectionService + local function generateAPIAndRMD() + local reflectionSuccess, apiResult, rmdResult = pcall(function() + local ReflectionService = service.ReflectionService + local classesData = ReflectionService:GetClasses() + local propertyPriority = DataMaps.propertyPriority + local classIconMap = DataMaps.classIconMap + local classExplorerOrder = DataMaps.classExplorerOrder + + local apiData = { Classes = {}, Enums = {} } + local rmdData = { Classes = {} } + + local classLookup = {} + for _, classInfo in ipairs(classesData) do + classLookup[classInfo.Name] = classInfo + end + + local allClassProps = {} + for _, classInfo in ipairs(classesData) do + local propsData = ReflectionService:GetPropertiesOfClass(classInfo.Name) + local propSet = {} + for _, prop in ipairs(propsData) do + propSet[prop.Name] = prop + end + allClassProps[classInfo.Name] = propSet + end + + local function getInheritedProps(className) + local inherited = {} + local classInfo = classLookup[className] + if classInfo and classInfo.Superclass then + local superName = classInfo.Superclass + if allClassProps[superName] then + for propName, _ in pairs(allClassProps[superName]) do + inherited[propName] = true + end + end + end + return inherited + end + + local abstractClasses = { BasePart = true, BaseValue = true, BaseScript = true, PVInstance = true, BaseWrap = true } + + for _, classInfo in ipairs(classesData) do + local className = classInfo.Name + local tagsDict = {} + local tags = {} + if classInfo.Tags then + for _, tag in ipairs(classInfo.Tags) do + local tagStr = tostring(tag) + tagsDict[tagStr] = true + table.insert(tags, tagStr) + end + end + + if abstractClasses[className] and not tagsDict.NotCreatable then + table.insert(tags, "NotCreatable") + tagsDict.NotCreatable = true + end + + local classEntry = { + Name = className, + Superclass = classInfo.Superclass, + Tags = tags, + Members = {}, + } + + local thisClassProps = allClassProps[className] or {} + local inheritedProps = getInheritedProps(className) + + local sortedProps = {} + for propName, prop in pairs(thisClassProps) do + if not inheritedProps[propName] then + local firstChar = string.sub(propName, 1, 1) + if firstChar == string.upper(firstChar) then + table.insert(sortedProps, prop) + end + end + end + + table.sort(sortedProps, function(a, b) + local scoreA = getPropertyScore(a.Name, propertyPriority) + local scoreB = getPropertyScore(b.Name, propertyPriority) + return scoreA < scoreB + end) + + local propertyOrder = 0 + for _, prop in ipairs(sortedProps) do + local propTags = {} + if prop.Tags then + for _, tag in ipairs(prop.Tags) do + table.insert(propTags, tostring(tag)) + end + end + + local memberEntry = { + Name = prop.Name, + MemberType = "Property", + Category = (prop.Display and prop.Display.Category) or "Data", + Security = { + Read = (prop.Permits and tostring(prop.Permits.Read)) or "None", + Write = (prop.Permits and tostring(prop.Permits.Write)) or "None", + }, + Serialization = { + CanSave = prop.Serialized or false, + CanLoad = prop.Serialized or false, + }, + Tags = propTags, + } + + if prop.Type then + local valueTypeName = prop.Type.ScriptType or prop.Type.EngineType + if valueTypeName then + local category = "Primitive" + + if (prop.Type.ScriptType == "EnumItem" or prop.Type.EngineType == "Enum") and prop.Type.EnumType then + valueTypeName = prop.Type.EnumType + category = "Enum" + elseif valueTypeName == "Instance" or valueTypeName:match("^Class%.") then + category = "Class" + elseif valueTypeName == "boolean" then + valueTypeName = "bool" + end + + memberEntry.ValueType = { + Name = valueTypeName, + Category = category, + } + end + end + + table.insert(classEntry.Members, memberEntry) + propertyOrder = propertyOrder + 1 + end + apiData.Classes[className] = classEntry + + local rmdClassEntry = { + Name = className, + ClassCategory = getClassCategory(tagsDict), + ExplorerImageIndex = getClassIcon(className, tagsDict, classIconMap), + ExplorerOrder = classExplorerOrder[className] or 9999, + } + + if propertyOrder > 0 then + rmdClassEntry.PropertyOrders = {} + local order = 0 + for _, prop in ipairs(sortedProps) do + rmdClassEntry.PropertyOrders[prop.Name] = order + order = order + 1 + end + end + + rmdData.Classes[className] = rmdClassEntry + end + + local criticalClasses = { "Player" } + for _, criticalClassName in ipairs(criticalClasses) do + if not apiData.Classes[criticalClassName] and classIconMap[criticalClassName] then + local criticalProps = {} + local propsSuccess, propsData = pcall(function() + return ReflectionService:GetPropertiesOfClass(criticalClassName) + end) + + if propsSuccess and propsData then + for _, prop in ipairs(propsData) do + if prop.Type then + local valueTypeName = prop.Type.ScriptType or prop.Type.EngineType + if valueTypeName then + local category = "Primitive" + + if (prop.Type.ScriptType == "EnumItem" or prop.Type.EngineType == "Enum") and prop.Type.EnumType then + valueTypeName = prop.Type.EnumType + category = "Enum" + elseif valueTypeName == "Instance" or valueTypeName:match("^Class%.") then + category = "Class" + elseif valueTypeName == "boolean" then + valueTypeName = "bool" + end + + local propTags = {} + if prop.Tags then + for _, tag in ipairs(prop.Tags) do + table.insert(propTags, tostring(tag)) + end + end + + table.insert(criticalProps, { + Name = prop.Name, + MemberType = "Property", + Category = (prop.Display and prop.Display.Category) or "Data", + Security = { + Read = (prop.Permits and tostring(prop.Permits.Read)) or "None", + Write = (prop.Permits and tostring(prop.Permits.Write)) or "None", + }, + Serialization = { + CanSave = prop.Serialized or false, + CanLoad = prop.Serialized or false, + }, + Tags = propTags, + ValueType = { + Name = valueTypeName, + Category = category, + }, + }) + end + end + end + end + + apiData.Classes[criticalClassName] = { + Name = criticalClassName, + Superclass = nil, + Tags = { "NotCreatable" }, + Members = criticalProps, + } + if not rmdData.Classes[criticalClassName] then + rmdData.Classes[criticalClassName] = { + Name = criticalClassName, + ClassCategory = "Instance", + ExplorerImageIndex = classIconMap[criticalClassName], + ExplorerOrder = classExplorerOrder[criticalClassName] or 9999, + } + end + end + end + + local apiJson = service.HttpService:JSONEncode(apiData) + local rmdJson = service.HttpService:JSONEncode(rmdData) + + return apiJson, rmdJson + end) + + if reflectionSuccess then + return apiResult, rmdResult + end + return nil, nil + end + Main.FetchAPI = function() local api, rawAPI - local didwedoit = Dex_RemoteFunction:InvokeServer("fetchapi") - if didwedoit and type(didwedoit) == "string" then - rawAPI = didwedoit + + -- Generate API locally from ReflectionService + local apiJson, _ = generateAPIAndRMD() + if apiJson then + rawAPI = apiJson else + -- Fallback to bundled API if generation fails if script:FindFirstChild("API") then rawAPI = require(script.API) else - error("No API exists") + error("Failed to generate API and no bundled API exists") end end @@ -505,12 +774,17 @@ Main = (function() Main.FetchRMD = function() local rmdData - local didwedoit = Dex_RemoteFunction:InvokeServer("fetchrmd") + local didwedoit - if not didwedoit or didwedoit == false then - -- Fallback to empty structure if server doesn't have RMD yet + -- Generate RMD locally from ReflectionService + local _, rmdJson = generateAPIAndRMD() + if not rmdJson then + -- Fallback to empty structure if generation fails return { Classes = {}, Enums = {}, PropertyOrders = {} } - elseif type(didwedoit) == "string" then + end + didwedoit = rmdJson + + if type(didwedoit) == "string" then -- Server provided JSON or XML string Main.RawRMD = didwedoit diff --git a/MainModule/Server/Plugins/ServerNewDex/init.lua b/MainModule/Server/Plugins/ServerNewDex/init.lua index 90f8e1da22..a5e4040a23 100644 --- a/MainModule/Server/Plugins/ServerNewDex/init.lua +++ b/MainModule/Server/Plugins/ServerNewDex/init.lua @@ -13,14 +13,8 @@ return function(Vargs) local Admin = Server.Admin local Core = Server.Core - local ReflectionService = Service.ReflectionService - local APIDump = nil - local RMDData = nil -- Reflection Metadata from ReflectionService local ServerNewDex = {} - -- Load data maps (icons, property priorities, class sorting) - local DataMaps = require(script:WaitForChild("Data")) - local newDex_main = script:WaitForChild("Dex_Client", 120) local Event = ServerNewDex.Event @@ -35,340 +29,7 @@ return function(Vargs) end end - -- Helper functions for API/RMD generation (moved outside to minimize closure memory) - local function getPropertyScore(propName, propertyPriority) - return propertyPriority[propName] or 100 + string.len(propName) - end - - local function getClassCategory(tagsDict) - if tagsDict.Service then - return "Service" - end - if tagsDict.Creatable then - return "Instance" - end - if tagsDict.Deprecated then - return "Deprecated" - end - return "Other" - end - - local function getClassIcon(className, tagsDict, classIconMap) - if classIconMap[className] then - return classIconMap[className] - end - if tagsDict.Service then - return 10 - end - if tagsDict.Creatable then - if - className:match("Gui$") - or className:match("Label$") - or className:match("Button$") - or className:match("Frame$") - then - return 40 - elseif className:match("Script$") then - return 30 - end - end - return 0 - end - - -- Main function to generate API and RMD data from ReflectionService - -- This is called lazily when Dex is first opened to save memory - local function generateAPIAndRMD() - local reflectionSuccess, apiResult, rmdResult = pcall(function() - local classesData = ReflectionService:GetClasses() - local propertyPriority = DataMaps.propertyPriority - local classIconMap = DataMaps.classIconMap - local classExplorerOrder = DataMaps.classExplorerOrder - - -- Build API structure from ReflectionService - local apiData = { - Classes = {}, - Enums = {}, - } - - -- Build minimal RMD structure - ONLY ReflectionService-unavailable data - local rmdData = { - Classes = {}, - } - - -- Build class lookup by name for superclass resolution - local classLookup = {} - for _, classInfo in ipairs(classesData) do - classLookup[classInfo.Name] = classInfo - end - - -- First pass: collect all class properties - local allClassProps = {} - for _, classInfo in ipairs(classesData) do - local propsData = ReflectionService:GetPropertiesOfClass(classInfo.Name) - local propSet = {} - for _, prop in ipairs(propsData) do - propSet[prop.Name] = prop - end - allClassProps[classInfo.Name] = propSet - end - - -- Helper: get all inherited property names by walking superclass chain - local function getInheritedProps(className) - local inherited = {} - local classInfo = classLookup[className] - if classInfo and classInfo.Superclass then - local superName = classInfo.Superclass - -- Get direct superclass properties - if allClassProps[superName] then - for propName, _ in pairs(allClassProps[superName]) do - inherited[propName] = true - end - end - end - return inherited - end - - -- Define abstract classes that shouldn't be creatable - local abstractClasses = { - BasePart = true, - BaseValue = true, - BaseScript = true, - PVInstance = true, - BaseWrap = true, - } - - -- Process classes - for _, classInfo in ipairs(classesData) do - local className = classInfo.Name - - -- Tags can be nil, handle that - local tagsDict = {} - local tags = {} - if classInfo.Tags then - for _, tag in ipairs(classInfo.Tags) do - local tagStr = tostring(tag) - tagsDict[tagStr] = true - table.insert(tags, tagStr) - end - end - - -- Mark abstract classes as non-creatable - if abstractClasses[className] and not tagsDict.NotCreatable then - table.insert(tags, "NotCreatable") - tagsDict.NotCreatable = true - end - - -- Build API class entry with ReflectionService data - local classEntry = { - Name = className, - Superclass = classInfo.Superclass, - Tags = tags, - Members = {}, - } - - -- Get properties for this class - local thisClassProps = allClassProps[className] or {} - - -- Get inherited properties to exclude - local inheritedProps = getInheritedProps(className) - - -- Collect only properties that are NOT inherited (directly defined on this class) - local sortedProps = {} - for propName, prop in pairs(thisClassProps) do - -- Skip inherited props - if not inheritedProps[propName] then - -- Skip lowercase/deprecated variants (className, archivable, etc.) - -- Only include if the property name starts with uppercase - local firstChar = string.sub(propName, 1, 1) - if firstChar == string.upper(firstChar) then - table.insert(sortedProps, prop) - end - end - end - - -- Sort by importance - table.sort(sortedProps, function(a, b) - local scoreA = getPropertyScore(a.Name, propertyPriority) - local scoreB = getPropertyScore(b.Name, propertyPriority) - return scoreA < scoreB - end) - - -- Build API members from ReflectionService - local propertyOrder = 0 - for _, prop in ipairs(sortedProps) do - -- Tags can be nil - local propTags = {} - if prop.Tags then - for _, tag in ipairs(prop.Tags) do - table.insert(propTags, tostring(tag)) - end - end - - local memberEntry = { - Name = prop.Name, - MemberType = "Property", - Category = (prop.Display and prop.Display.Category) or "Data", - Security = { - Read = (prop.Permits and tostring(prop.Permits.Read)) or "None", - Write = (prop.Permits and tostring(prop.Permits.Write)) or "None", - }, - Serialization = { - CanSave = prop.Serialized or false, - CanLoad = prop.Serialized or false, - }, - Tags = propTags, - } - - if prop.Type then - local valueTypeName = prop.Type.ScriptType or prop.Type.EngineType - if valueTypeName then - -- Determine category based on type name - local category = "Primitive" - - -- Detect enum types: check if ScriptType is "EnumItem" and EnumType exists - if - (prop.Type.ScriptType == "EnumItem" or prop.Type.EngineType == "Enum") - and prop.Type.EnumType - then - -- Use the EnumType as the value type name (e.g., "Material", "PartType") - valueTypeName = prop.Type.EnumType - category = "Enum" - -- Detect class types - elseif valueTypeName == "Instance" or valueTypeName:match("^Class%.") then - category = "Class" - -- Map "boolean" to "bool" for client compatibility - elseif valueTypeName == "boolean" then - valueTypeName = "bool" - end - - memberEntry.ValueType = { - Name = valueTypeName, - Category = category, - } - end - end - - table.insert(classEntry.Members, memberEntry) - propertyOrder = propertyOrder + 1 - end - apiData.Classes[className] = classEntry - - -- Build MINIMAL RMD entry - ONLY data that ReflectionService cannot provide - local rmdClassEntry = { - Name = className, - ClassCategory = getClassCategory(tagsDict), - ExplorerImageIndex = getClassIcon(className, tagsDict, classIconMap), - ExplorerOrder = classExplorerOrder[className] or 9999, - } - - -- Only include PropertyOrder if we have it (important for property display order) - if propertyOrder > 0 then - rmdClassEntry.PropertyOrders = {} - local order = 0 - for _, prop in ipairs(sortedProps) do - rmdClassEntry.PropertyOrders[prop.Name] = order - order = order + 1 - end - end - - rmdData.Classes[className] = rmdClassEntry - end - - -- Ensure critical classes are in API even if ReflectionService doesn't provide them - -- This handles special classes like Player that may not be returned by GetClasses() - local criticalClasses = { "Player" } - for _, criticalClassName in ipairs(criticalClasses) do - if not apiData.Classes[criticalClassName] and classIconMap[criticalClassName] then - -- Try to get properties from ReflectionService - local criticalProps = {} - local propsSuccess, propsData = pcall(function() - return ReflectionService:GetPropertiesOfClass(criticalClassName) - end) - - if propsSuccess and propsData then - -- Build members from ReflectionService properties - for _, prop in ipairs(propsData) do - if prop.Type then - local valueTypeName = prop.Type.ScriptType or prop.Type.EngineType - if valueTypeName then - local category = "Primitive" - - -- Detect enum types - if - (prop.Type.ScriptType == "EnumItem" or prop.Type.EngineType == "Enum") - and prop.Type.EnumType - then - valueTypeName = prop.Type.EnumType - category = "Enum" - elseif valueTypeName == "Instance" or valueTypeName:match("^Class%.") then - category = "Class" - elseif valueTypeName == "boolean" then - valueTypeName = "bool" - end - - local propTags = {} - if prop.Tags then - for _, tag in ipairs(prop.Tags) do - table.insert(propTags, tostring(tag)) - end - end - - table.insert(criticalProps, { - Name = prop.Name, - MemberType = "Property", - Category = (prop.Display and prop.Display.Category) or "Data", - Security = { - Read = (prop.Permits and tostring(prop.Permits.Read)) or "None", - Write = (prop.Permits and tostring(prop.Permits.Write)) or "None", - }, - Serialization = { - CanSave = prop.Serialized or false, - CanLoad = prop.Serialized or false, - }, - Tags = propTags, - ValueType = { - Name = valueTypeName, - Category = category, - }, - }) - end - end - end - end - - -- Add entry for critical class with NotCreatable tag - apiData.Classes[criticalClassName] = { - Name = criticalClassName, - Superclass = nil, - Tags = { "NotCreatable" }, - Members = criticalProps, - } - -- Add minimal RMD entry - if not rmdData.Classes[criticalClassName] then - rmdData.Classes[criticalClassName] = { - Name = criticalClassName, - ClassCategory = "Instance", - ExplorerImageIndex = classIconMap[criticalClassName], - ExplorerOrder = classExplorerOrder[criticalClassName] or 9999, - } - end - end - end - - -- JSON encode for transmission to client - local apiJson = game:GetService("HttpService"):JSONEncode(apiData) - local rmdJson = game:GetService("HttpService"):JSONEncode(rmdData) - - return apiJson, rmdJson - end) - - if reflectionSuccess then - APIDump = apiResult - RMDData = rmdResult - end - - return APIDump, RMDData - end + -- API/RMD generation is now handled client-side for bandwidth optimization ServerNewDex.newDex_main = newDex_main ServerNewDex.Event = nil @@ -513,20 +174,6 @@ return function(Vargs) args[1]:Fire(table.unpack(args[2])) end end, - fetchapi = function(Player: Player) - -- Lazy-load API on first request - if not APIDump then - generateAPIAndRMD() - end - return APIDump or false - end, - fetchrmd = function(Player: Player) - -- Lazy-load RMD on first request - if not RMDData then - generateAPIAndRMD() - end - return RMDData or false - end, addtag = function(Player: Player, args) local obj = args[1] local tag = args[2] From 1a0633c3ac4f04bf2eb3cac7fb9b2814118222c4 Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Sun, 14 Dec 2025 16:42:16 -0500 Subject: [PATCH 33/36] Updated icons to the new studio ones Introduces a new InstanceIcons module and supporting JSON data to provide coordinate-based icon mapping for Roblox class icons. Updates Explorer and Lib modules to use the new icon system, allowing for more accurate and extensible icon display. Also updates init.client.lua to integrate InstanceIcons and use the new icon mapping in class icon retrieval. --- .../main_NewDex/Modules/Explorer.lua | 20 +++++++++++++------ .../Modules/InstanceIcons/JSON.lua | 3 +++ .../Modules/InstanceIcons/init.lua | 10 ++++++++++ .../Dex_Client/main_NewDex/Modules/Lib.lua | 9 ++++++++- .../Dex_Client/main_NewDex/init.client.lua | 12 +++++++++++ 5 files changed, 47 insertions(+), 7 deletions(-) create mode 100644 MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/InstanceIcons/JSON.lua create mode 100644 MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/InstanceIcons/init.lua diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Explorer.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Explorer.lua index 76c81db07c..7eb565a77f 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Explorer.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Explorer.lua @@ -908,7 +908,8 @@ local function main() ) else local rmdEntry = RMD.Classes[obj.ClassName] - Explorer.ClassIcons:Display(entry.Indent.Icon, rmdEntry and rmdEntry.ExplorerImageIndex or 0) + local iconCoords = Explorer.InstanceIcons(obj.ClassName, entry.Indent.Icon) + Explorer.ClassIcons:Display(entry.Indent.Icon, iconCoords or { 0, 0 }) end if selection.Map[node] then @@ -1893,7 +1894,7 @@ local function main() context:Register("VIEW_MODEL", { Name = "View Model", IconMap = Explorer.ClassIcons, - Icon = 5, + Icon = Explorer.InstanceIcons("Model"), OnClick = function() local sList = selection.List local isa = game.IsA @@ -1910,7 +1911,7 @@ local function main() context:Register("VIEW_OBJECT", { Name = "View Object (Right click to reset)", IconMap = Explorer.ClassIcons, - Icon = 5, + Icon = Explorer.InstanceIcons("Model"), OnClick = function() local sList = selection.List local isa = game.IsA @@ -2178,14 +2179,19 @@ local function main() for i = 1, #classes do local class = classes[i][1] local rmdEntry = RMD.Classes[class.Name] - local iconInd = rmdEntry and tonumber(rmdEntry.ExplorerImageIndex) or 0 + local iconCoords = Explorer.InstanceIcons(class.Name) local category = classes[i][2] if lastCategory ~= category then context:AddDivider(category) lastCategory = category end - context:Add({ Name = class.Name, IconMap = Explorer.ClassIcons, Icon = iconInd, OnClick = onClick }) + context:Add({ + Name = class.Name, + IconMap = Explorer.ClassIcons, + Icon = iconCoords or { 0, 0 }, + OnClick = onClick, + }) end Explorer.InsertObjectContext = context @@ -2990,7 +2996,9 @@ local function main() end Explorer.Init = function() - Explorer.ClassIcons = Lib.IconMap.newLinear("rbxasset://textures/ClassImages.png", 16, 16) + local InstanceIcons = require(script.Parent:WaitForChild("InstanceIcons")) + Explorer.InstanceIcons = InstanceIcons + Explorer.ClassIcons = Lib.IconMap.newLinear("rbxassetid://117023139832275", 16, 16) Explorer.MiscIcons = Main.MiscIcons clipboard = {} diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/InstanceIcons/JSON.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/InstanceIcons/JSON.lua new file mode 100644 index 0000000000..1a02eb98c0 --- /dev/null +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/InstanceIcons/JSON.lua @@ -0,0 +1,3 @@ +return game:GetService("HttpService"):JSONDecode( + [==[{"Accessory":{"frame":{"x":1,"y":1}},"Actor":{"frame":{"x":19,"y":1}},"AdGui":{"frame":{"x":37,"y":1}},"AdPortal":{"frame":{"x":55,"y":1}},"AirController":{"frame":{"x":73,"y":1}},"AlignOrientation":{"frame":{"x":91,"y":1}},"AlignPosition":{"frame":{"x":109,"y":1}},"AngularVelocity":{"frame":{"x":127,"y":1}},"Animation":{"frame":{"x":145,"y":1}},"AnimationConstraint":{"frame":{"x":163,"y":1}},"AnimationController":{"frame":{"x":181,"y":1}},"AnimationFromVideoCreatorService":{"frame":{"x":199,"y":1}},"Animator":{"frame":{"x":217,"y":1}},"ArcHandles":{"frame":{"x":235,"y":1}},"Atmosphere":{"frame":{"x":253,"y":1}},"Attachment":{"frame":{"x":271,"y":1}},"AudioAnalyzer":{"frame":{"x":289,"y":1}},"AudioChannelMixer":{"frame":{"x":1,"y":19}},"AudioChannelSplitter":{"frame":{"x":19,"y":19}},"AudioChorus":{"frame":{"x":37,"y":19}},"AudioCompressor":{"frame":{"x":55,"y":19}},"AudioDeviceInput":{"frame":{"x":73,"y":19}},"AudioDeviceOutput":{"frame":{"x":91,"y":19}},"AudioDistortion":{"frame":{"x":109,"y":19}},"AudioEcho":{"frame":{"x":127,"y":19}},"AudioEmitter":{"frame":{"x":145,"y":19}},"AudioEqualizer":{"frame":{"x":163,"y":19}},"AudioFader":{"frame":{"x":181,"y":19}},"AudioFilter":{"frame":{"x":199,"y":19}},"AudioFlanger":{"frame":{"x":217,"y":19}},"AudioGate":{"frame":{"x":235,"y":19}},"AudioLimiter":{"frame":{"x":253,"y":19}},"AudioListener":{"frame":{"x":271,"y":19}},"AudioPitchShifter":{"frame":{"x":289,"y":19}},"AudioPlayer":{"frame":{"x":1,"y":37}},"AudioRecorder":{"frame":{"x":19,"y":37}},"AudioReverb":{"frame":{"x":37,"y":37}},"AudioSpeechToText":{"frame":{"x":55,"y":37}},"AudioTextToSpeech":{"frame":{"x":73,"y":37}},"AudioTremolo":{"frame":{"x":91,"y":37}},"AuroraScript":{"frame":{"x":109,"y":37}},"AvatarEditorService":{"frame":{"x":127,"y":37}},"AvatarSettings":{"frame":{"x":145,"y":37}},"Backpack":{"frame":{"x":163,"y":37}},"BallSocketConstraint":{"frame":{"x":181,"y":37}},"BasePlate":{"frame":{"x":199,"y":37}},"Beam":{"frame":{"x":217,"y":37}},"BillboardGui":{"frame":{"x":235,"y":37}},"BindableEvent":{"frame":{"x":253,"y":37}},"BindableFunction":{"frame":{"x":271,"y":37}},"BlockMesh":{"frame":{"x":289,"y":37}},"BloomEffect":{"frame":{"x":1,"y":55}},"BlurEffect":{"frame":{"x":19,"y":55}},"BodyAngularVelocity":{"frame":{"x":37,"y":55}},"BodyColors":{"frame":{"x":55,"y":55}},"BodyForce":{"frame":{"x":73,"y":55}},"BodyGyro":{"frame":{"x":91,"y":55}},"BodyPosition":{"frame":{"x":109,"y":55}},"BodyThrust":{"frame":{"x":127,"y":55}},"BodyVelocity":{"frame":{"x":145,"y":55}},"Bone":{"frame":{"x":163,"y":55}},"BoolValue":{"frame":{"x":181,"y":55}},"BoxHandleAdornment":{"frame":{"x":199,"y":55}},"Breakpoint":{"frame":{"x":217,"y":55}},"BrickColorValue":{"frame":{"x":235,"y":55}},"BubbleChatConfiguration":{"frame":{"x":253,"y":55}},"Buggaroo":{"frame":{"x":271,"y":55}},"CFrameValue":{"frame":{"x":289,"y":55}},"Camera":{"frame":{"x":1,"y":73}},"CanvasGroup":{"frame":{"x":19,"y":73}},"ChannelTabsConfiguration":{"frame":{"x":37,"y":73}},"CharacterControllerManager":{"frame":{"x":55,"y":73}},"CharacterMesh":{"frame":{"x":73,"y":73}},"Chat":{"frame":{"x":91,"y":73}},"ChatInputBarConfiguration":{"frame":{"x":109,"y":73}},"ChatWindowConfiguration":{"frame":{"x":127,"y":73}},"ChorusSoundEffect":{"frame":{"x":145,"y":73}},"Class":{"frame":{"x":163,"y":73}},"Cleanup":{"frame":{"x":181,"y":73}},"ClickDetector":{"frame":{"x":199,"y":73}},"ClientReplicator":{"frame":{"x":217,"y":73}},"ClimbController":{"frame":{"x":235,"y":73}},"Clouds":{"frame":{"x":253,"y":73}},"Color":{"frame":{"x":271,"y":73}},"ColorCorrectionEffect":{"frame":{"x":289,"y":73}},"CompressorSoundEffect":{"frame":{"x":1,"y":91}},"ConeHandleAdornment":{"frame":{"x":19,"y":91}},"Configuration":{"frame":{"x":37,"y":91}},"Constant":{"frame":{"x":55,"y":91}},"Constructor":{"frame":{"x":73,"y":91}},"Controller":{"frame":{"x":91,"y":91}},"CoreGui":{"frame":{"x":109,"y":91}},"CornerWedgePart":{"frame":{"x":127,"y":91}},"CylinderHandleAdornment":{"frame":{"x":145,"y":91}},"CylindricalConstraint":{"frame":{"x":163,"y":91}},"Decal":{"frame":{"x":181,"y":91}},"DepthOfFieldEffect":{"frame":{"x":199,"y":91}},"Dialog":{"frame":{"x":217,"y":91}},"DialogChoice":{"frame":{"x":235,"y":91}},"DistortionSoundEffect":{"frame":{"x":253,"y":91}},"DragDetector":{"frame":{"x":271,"y":91}},"EchoSoundEffect":{"frame":{"x":289,"y":91}},"EditableImage":{"frame":{"x":1,"y":109}},"EditableMesh":{"frame":{"x":19,"y":109}},"Enum":{"frame":{"x":37,"y":109}},"EnumMember":{"frame":{"x":55,"y":109}},"EqualizerSoundEffect":{"frame":{"x":73,"y":109}},"Event":{"frame":{"x":91,"y":109}},"Explosion":{"frame":{"x":109,"y":109}},"FaceControls":{"frame":{"x":127,"y":109}},"Field":{"frame":{"x":145,"y":109}},"File":{"frame":{"x":163,"y":109}},"Fire":{"frame":{"x":181,"y":109}},"FlangeSoundEffect":{"frame":{"x":199,"y":109}},"Folder":{"frame":{"x":217,"y":109}},"ForceField":{"frame":{"x":235,"y":109}},"Frame":{"frame":{"x":253,"y":109}},"Function":{"frame":{"x":271,"y":109}},"GameSettings":{"frame":{"x":289,"y":109}},"GroundController":{"frame":{"x":1,"y":127}},"Handles":{"frame":{"x":19,"y":127}},"HapticEffect":{"frame":{"x":37,"y":127}},"HapticService":{"frame":{"x":55,"y":127}},"HeightmapImporterService":{"frame":{"x":73,"y":127}},"Highlight":{"frame":{"x":91,"y":127}},"HingeConstraint":{"frame":{"x":109,"y":127}},"Humanoid":{"frame":{"x":127,"y":127}},"HumanoidDescription":{"frame":{"x":145,"y":127}},"IKControl":{"frame":{"x":163,"y":127}},"ImageButton":{"frame":{"x":181,"y":127}},"ImageHandleAdornment":{"frame":{"x":199,"y":127}},"ImageLabel":{"frame":{"x":217,"y":127}},"InputAction":{"frame":{"x":235,"y":127}},"InputBinding":{"frame":{"x":253,"y":127}},"InputContext":{"frame":{"x":271,"y":127}},"Interface":{"frame":{"x":289,"y":127}},"IntersectOperation":{"frame":{"x":1,"y":145}},"Keyword":{"frame":{"x":19,"y":145}},"Lighting":{"frame":{"x":37,"y":145}},"LineForce":{"frame":{"x":55,"y":145}},"LineHandleAdornment":{"frame":{"x":73,"y":145}},"LinearVelocity":{"frame":{"x":91,"y":145}},"LocalFile":{"frame":{"x":109,"y":145}},"LocalScript":{"frame":{"x":127,"y":145}},"LocalizationService":{"frame":{"x":145,"y":145}},"LocalizationTable":{"frame":{"x":163,"y":145}},"MaterialService":{"frame":{"x":181,"y":145}},"MaterialVariant":{"frame":{"x":199,"y":145}},"MemoryStoreService":{"frame":{"x":217,"y":145}},"MeshPart":{"frame":{"x":235,"y":145}},"Meshparts":{"frame":{"x":253,"y":145}},"MessagingService":{"frame":{"x":271,"y":145}},"Method":{"frame":{"x":289,"y":145}},"Model":{"frame":{"x":1,"y":163}},"Modelgroups":{"frame":{"x":19,"y":163}},"Module":{"frame":{"x":37,"y":163}},"ModuleScript":{"frame":{"x":55,"y":163}},"Motor6D":{"frame":{"x":73,"y":163}},"NegateOperation":{"frame":{"x":91,"y":163}},"NetworkClient":{"frame":{"x":109,"y":163}},"NoCollisionConstraint":{"frame":{"x":127,"y":163}},"Operator":{"frame":{"x":145,"y":163}},"PackageLink":{"frame":{"x":163,"y":163}},"Pants":{"frame":{"x":181,"y":163}},"Part":{"frame":{"x":199,"y":163}},"ParticleEmitter":{"frame":{"x":217,"y":163}},"Path2D":{"frame":{"x":235,"y":163}},"PathfindingLink":{"frame":{"x":253,"y":163}},"PathfindingModifier":{"frame":{"x":271,"y":163}},"PathfindingService":{"frame":{"x":289,"y":163}},"PitchShiftSoundEffect":{"frame":{"x":1,"y":181}},"Place":{"frame":{"x":19,"y":181}},"Plane":{"frame":{"x":37,"y":181}},"PlaneConstraint":{"frame":{"x":55,"y":181}},"Player":{"frame":{"x":73,"y":181}},"Players":{"frame":{"x":91,"y":181}},"PluginGuiService":{"frame":{"x":109,"y":181}},"PointLight":{"frame":{"x":127,"y":181}},"PrismaticConstraint":{"frame":{"x":145,"y":181}},"Property":{"frame":{"x":163,"y":181}},"ProximityPrompt":{"frame":{"x":181,"y":181}},"PublishService":{"frame":{"x":199,"y":181}},"Reference":{"frame":{"x":217,"y":181}},"RemoteEvent":{"frame":{"x":235,"y":181}},"RemoteFunction":{"frame":{"x":253,"y":181}},"RenderingTest":{"frame":{"x":271,"y":181}},"ReplicatedFirst":{"frame":{"x":289,"y":181}},"ReplicatedScriptService":{"frame":{"x":1,"y":199}},"ReplicatedStorage":{"frame":{"x":19,"y":199}},"ReverbSoundEffect":{"frame":{"x":37,"y":199}},"RigidConstraint":{"frame":{"x":55,"y":199}},"RobloxPluginGuiService":{"frame":{"x":73,"y":199}},"RocketPropulsion":{"frame":{"x":91,"y":199}},"RodConstraint":{"frame":{"x":109,"y":199}},"RopeConstraint":{"frame":{"x":127,"y":199}},"Rotate":{"frame":{"x":145,"y":199}},"ScreenGui":{"frame":{"x":163,"y":199}},"Script":{"frame":{"x":181,"y":199}},"ScrollingFrame":{"frame":{"x":199,"y":199}},"Seat":{"frame":{"x":217,"y":199}},"Selected_Workspace":{"frame":{"x":235,"y":199}},"SelectionBox":{"frame":{"x":253,"y":199}},"SelectionSphere":{"frame":{"x":271,"y":199}},"ServerScriptService":{"frame":{"x":289,"y":199}},"ServerStorage":{"frame":{"x":1,"y":217}},"Service":{"frame":{"x":19,"y":217}},"Shirt":{"frame":{"x":37,"y":217}},"ShirtGraphic":{"frame":{"x":55,"y":217}},"SkinnedMeshPart":{"frame":{"x":73,"y":217}},"Sky":{"frame":{"x":91,"y":217}},"Smoke":{"frame":{"x":109,"y":217}},"Snap":{"frame":{"x":127,"y":217}},"Snippet":{"frame":{"x":145,"y":217}},"SocialService":{"frame":{"x":163,"y":217}},"Sound":{"frame":{"x":181,"y":217}},"SoundEffect":{"frame":{"x":199,"y":217}},"SoundGroup":{"frame":{"x":217,"y":217}},"SoundService":{"frame":{"x":235,"y":217}},"Sparkles":{"frame":{"x":253,"y":217}},"SpawnLocation":{"frame":{"x":271,"y":217}},"SpecialMesh":{"frame":{"x":289,"y":217}},"SphereHandleAdornment":{"frame":{"x":1,"y":235}},"SpotLight":{"frame":{"x":19,"y":235}},"SpringConstraint":{"frame":{"x":37,"y":235}},"StandalonePluginScripts":{"frame":{"x":55,"y":235}},"StarterCharacterScripts":{"frame":{"x":73,"y":235}},"StarterGui":{"frame":{"x":91,"y":235}},"StarterPack":{"frame":{"x":109,"y":235}},"StarterPlayer":{"frame":{"x":127,"y":235}},"StarterPlayerScripts":{"frame":{"x":145,"y":235}},"Struct":{"frame":{"x":163,"y":235}},"StyleDerive":{"frame":{"x":181,"y":235}},"StyleLink":{"frame":{"x":199,"y":235}},"StyleRule":{"frame":{"x":217,"y":235}},"StyleSheet":{"frame":{"x":235,"y":235}},"SunRaysEffect":{"frame":{"x":253,"y":235}},"SurfaceAppearance":{"frame":{"x":271,"y":235}},"SurfaceGui":{"frame":{"x":289,"y":235}},"SurfaceLight":{"frame":{"x":1,"y":253}},"SurfaceSelection":{"frame":{"x":19,"y":253}},"SwimController":{"frame":{"x":37,"y":253}},"TaskScheduler":{"frame":{"x":55,"y":253}},"Team":{"frame":{"x":73,"y":253}},"Teams":{"frame":{"x":91,"y":253}},"Terrain":{"frame":{"x":109,"y":253}},"TerrainDetail":{"frame":{"x":127,"y":253}},"TestService":{"frame":{"x":145,"y":253}},"TextBox":{"frame":{"x":163,"y":253}},"TextBoxService":{"frame":{"x":181,"y":253}},"TextButton":{"frame":{"x":199,"y":253}},"TextChannel":{"frame":{"x":217,"y":253}},"TextChatCommand":{"frame":{"x":235,"y":253}},"TextChatService":{"frame":{"x":253,"y":253}},"TextLabel":{"frame":{"x":271,"y":253}},"TextString":{"frame":{"x":289,"y":253}},"Texture":{"frame":{"x":1,"y":271}},"Tool":{"frame":{"x":19,"y":271}},"Torque":{"frame":{"x":37,"y":271}},"TorsionSpringConstraint":{"frame":{"x":55,"y":271}},"Trail":{"frame":{"x":73,"y":271}},"TremoloSoundEffect":{"frame":{"x":91,"y":271}},"TrussPart":{"frame":{"x":109,"y":271}},"TypeParameter":{"frame":{"x":127,"y":271}},"UGCValidationService":{"frame":{"x":145,"y":271}},"UIAspectRatioConstraint":{"frame":{"x":163,"y":271}},"UICorner":{"frame":{"x":181,"y":271}},"UIDragDetector":{"frame":{"x":199,"y":271}},"UIFlexItem":{"frame":{"x":217,"y":271}},"UIGradient":{"frame":{"x":235,"y":271}},"UIGridLayout":{"frame":{"x":253,"y":271}},"UIListLayout":{"frame":{"x":271,"y":271}},"UIPadding":{"frame":{"x":289,"y":271}},"UIPageLayout":{"frame":{"x":1,"y":289}},"UIScale":{"frame":{"x":19,"y":289}},"UISizeConstraint":{"frame":{"x":37,"y":289}},"UIStroke":{"frame":{"x":55,"y":289}},"UITableLayout":{"frame":{"x":73,"y":289}},"UITextSizeConstraint":{"frame":{"x":91,"y":289}},"UnionOperation":{"frame":{"x":109,"y":289}},"Unit":{"frame":{"x":127,"y":289}},"UniversalConstraint":{"frame":{"x":145,"y":289}},"UnreliableRemoteEvent":{"frame":{"x":163,"y":289}},"UpdateAvailable":{"frame":{"x":181,"y":289}},"UserService":{"frame":{"x":199,"y":289}},"VRService":{"frame":{"x":217,"y":289}},"Value":{"frame":{"x":235,"y":289}},"Variable":{"frame":{"x":253,"y":289}},"VectorForce":{"frame":{"x":271,"y":289}},"VehicleSeat":{"frame":{"x":289,"y":289}},"VideoDisplay":{"frame":{"x":307,"y":1}},"VideoFrame":{"frame":{"x":307,"y":19}},"VideoPlayer":{"frame":{"x":307,"y":37}},"ViewportFrame":{"frame":{"x":307,"y":55}},"VirtualUser":{"frame":{"x":307,"y":73}},"VoiceChannel":{"frame":{"x":307,"y":91}},"VoiceChatService":{"frame":{"x":307,"y":109}},"Voicechat":{"frame":{"x":307,"y":127}},"WedgePart":{"frame":{"x":307,"y":145}},"Weld":{"frame":{"x":307,"y":163}},"WeldConstraint":{"frame":{"x":307,"y":181}},"Wire":{"frame":{"x":307,"y":199}},"WireframeHandleAdornment":{"frame":{"x":307,"y":217}},"Workspace":{"frame":{"x":307,"y":235}},"WorldModel":{"frame":{"x":307,"y":253}},"WrapDeformer":{"frame":{"x":307,"y":271}},"WrapLayer":{"frame":{"x":307,"y":289}},"WrapTarget":{"frame":{"x":1,"y":307}}}]==] +) diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/InstanceIcons/init.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/InstanceIcons/init.lua new file mode 100644 index 0000000000..5062246ecc --- /dev/null +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/InstanceIcons/init.lua @@ -0,0 +1,10 @@ +local HttpService = game:GetService("HttpService") +local JSON = require(script.JSON) +return function(className, iconImage) + local info = JSON[className] or JSON["Configuration"] + local x, y = info.frame.x, info.frame.y + return { x, y } + --iconImage.Image = "http://www.roblox.com/asset/?id=15288945291" + --iconImage.ImageRectSize = Vector2.new(16,16) + --iconImage.ImageRectOffset = Vector2.new(x,y) +end diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Lib.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Lib.lua index 40e5c5e609..c0c7d8cce5 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Lib.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Lib.lua @@ -713,7 +713,12 @@ local function main() funcs.Display = function(self, obj, index) obj.Image = self.MapId - if not self.NumX then + + -- Handle coordinate-based display (from InstanceIcons) + if type(index) == "table" and #index >= 2 then + -- index is {x, y} coordinates + obj.ImageRectOffset = Vector2.new(index[1], index[2]) + elseif not self.NumX then obj.ImageRectOffset = Vector2.new(self.IconSizeX * index, 0) else obj.ImageRectOffset = @@ -3208,6 +3213,8 @@ local function main() item.IconMap:Display(newEntry.Icon, iconIndex) elseif type(iconIndex) == "string" then item.IconMap:DisplayByKey(newEntry.Icon, iconIndex) + elseif type(iconIndex) == "table" then + item.IconMap:Display(newEntry.Icon, iconIndex) end elseif type(iconIndex) == "string" then newEntry.Icon.Image = iconIndex diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua index 74980b54ff..b5fa133299 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/init.client.lua @@ -333,6 +333,7 @@ Main = (function() -- Load data maps for client-side API/RMD generation local DataMaps = require(script:WaitForChild("Modules"):WaitForChild("Data")) + local InstanceIcons = require(script:WaitForChild("Modules"):WaitForChild("InstanceIcons")) -- Helper functions for client-side API/RMD generation local function getPropertyScore(propName, propertyPriority) @@ -347,6 +348,16 @@ Main = (function() end local function getClassIcon(className, tagsDict, classIconMap) + -- Use InstanceIcons module to get actual icon index from JSON data + local iconCoords = InstanceIcons(className, nil) + if iconCoords and #iconCoords >= 2 then + -- Convert coordinates to index (assuming 16x16 grid, 256 wide) + local x, y = iconCoords[1], iconCoords[2] + local index = (y // 16) * 16 + (x // 16) + return index + end + + -- Fall back to the hardcoded map if InstanceIcons doesn't have it if classIconMap[className] then return classIconMap[className] end if tagsDict.Service then return 10 end if tagsDict.Creatable then @@ -1961,6 +1972,7 @@ Main = (function() Properties = 1, Script_Viewer = 2, }) + Main.ExplorerIcons = Lib.IconMap.newLinear("rbxassetid://117023139832275", 16, 16) -- Fetch external deps intro.SetProgress("Fetching API", 0.35) From 83486b661df69fde47d756752ea14de4eccf4841 Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Sun, 14 Dec 2025 16:44:10 -0500 Subject: [PATCH 34/36] oops --- .../ServerNewDex/Dex_Client/main_NewDex/Modules/Lib.lua | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Lib.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Lib.lua index c0c7d8cce5..21cf806c4e 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Lib.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/Lib.lua @@ -3209,12 +3209,10 @@ local function main() else local iconIndex = item.Disabled and item.DisabledIcon or item.Icon if item.IconMap then - if type(iconIndex) == "number" then + if type(iconIndex) == "number" or type(iconIndex) == "table" then item.IconMap:Display(newEntry.Icon, iconIndex) elseif type(iconIndex) == "string" then item.IconMap:DisplayByKey(newEntry.Icon, iconIndex) - elseif type(iconIndex) == "table" then - item.IconMap:Display(newEntry.Icon, iconIndex) end elseif type(iconIndex) == "string" then newEntry.Icon.Image = iconIndex From bf715aa7645f2ac782f9ca6f30b4eb17419e8b4e Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Sun, 14 Dec 2025 16:48:07 -0500 Subject: [PATCH 35/36] Minified JSON even more Replaces the verbose object-based JSON icon mapping with a more compact array format in JSON.lua. Updates init.lua to build a lookup table from the new array structure, reducing memory usage and improving lookup efficiency. --- .../main_NewDex/Modules/InstanceIcons/JSON.lua | 4 +--- .../main_NewDex/Modules/InstanceIcons/init.lua | 17 ++++++++++------- 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/InstanceIcons/JSON.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/InstanceIcons/JSON.lua index 1a02eb98c0..f8fe66ee09 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/InstanceIcons/JSON.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/InstanceIcons/JSON.lua @@ -1,3 +1 @@ -return game:GetService("HttpService"):JSONDecode( - [==[{"Accessory":{"frame":{"x":1,"y":1}},"Actor":{"frame":{"x":19,"y":1}},"AdGui":{"frame":{"x":37,"y":1}},"AdPortal":{"frame":{"x":55,"y":1}},"AirController":{"frame":{"x":73,"y":1}},"AlignOrientation":{"frame":{"x":91,"y":1}},"AlignPosition":{"frame":{"x":109,"y":1}},"AngularVelocity":{"frame":{"x":127,"y":1}},"Animation":{"frame":{"x":145,"y":1}},"AnimationConstraint":{"frame":{"x":163,"y":1}},"AnimationController":{"frame":{"x":181,"y":1}},"AnimationFromVideoCreatorService":{"frame":{"x":199,"y":1}},"Animator":{"frame":{"x":217,"y":1}},"ArcHandles":{"frame":{"x":235,"y":1}},"Atmosphere":{"frame":{"x":253,"y":1}},"Attachment":{"frame":{"x":271,"y":1}},"AudioAnalyzer":{"frame":{"x":289,"y":1}},"AudioChannelMixer":{"frame":{"x":1,"y":19}},"AudioChannelSplitter":{"frame":{"x":19,"y":19}},"AudioChorus":{"frame":{"x":37,"y":19}},"AudioCompressor":{"frame":{"x":55,"y":19}},"AudioDeviceInput":{"frame":{"x":73,"y":19}},"AudioDeviceOutput":{"frame":{"x":91,"y":19}},"AudioDistortion":{"frame":{"x":109,"y":19}},"AudioEcho":{"frame":{"x":127,"y":19}},"AudioEmitter":{"frame":{"x":145,"y":19}},"AudioEqualizer":{"frame":{"x":163,"y":19}},"AudioFader":{"frame":{"x":181,"y":19}},"AudioFilter":{"frame":{"x":199,"y":19}},"AudioFlanger":{"frame":{"x":217,"y":19}},"AudioGate":{"frame":{"x":235,"y":19}},"AudioLimiter":{"frame":{"x":253,"y":19}},"AudioListener":{"frame":{"x":271,"y":19}},"AudioPitchShifter":{"frame":{"x":289,"y":19}},"AudioPlayer":{"frame":{"x":1,"y":37}},"AudioRecorder":{"frame":{"x":19,"y":37}},"AudioReverb":{"frame":{"x":37,"y":37}},"AudioSpeechToText":{"frame":{"x":55,"y":37}},"AudioTextToSpeech":{"frame":{"x":73,"y":37}},"AudioTremolo":{"frame":{"x":91,"y":37}},"AuroraScript":{"frame":{"x":109,"y":37}},"AvatarEditorService":{"frame":{"x":127,"y":37}},"AvatarSettings":{"frame":{"x":145,"y":37}},"Backpack":{"frame":{"x":163,"y":37}},"BallSocketConstraint":{"frame":{"x":181,"y":37}},"BasePlate":{"frame":{"x":199,"y":37}},"Beam":{"frame":{"x":217,"y":37}},"BillboardGui":{"frame":{"x":235,"y":37}},"BindableEvent":{"frame":{"x":253,"y":37}},"BindableFunction":{"frame":{"x":271,"y":37}},"BlockMesh":{"frame":{"x":289,"y":37}},"BloomEffect":{"frame":{"x":1,"y":55}},"BlurEffect":{"frame":{"x":19,"y":55}},"BodyAngularVelocity":{"frame":{"x":37,"y":55}},"BodyColors":{"frame":{"x":55,"y":55}},"BodyForce":{"frame":{"x":73,"y":55}},"BodyGyro":{"frame":{"x":91,"y":55}},"BodyPosition":{"frame":{"x":109,"y":55}},"BodyThrust":{"frame":{"x":127,"y":55}},"BodyVelocity":{"frame":{"x":145,"y":55}},"Bone":{"frame":{"x":163,"y":55}},"BoolValue":{"frame":{"x":181,"y":55}},"BoxHandleAdornment":{"frame":{"x":199,"y":55}},"Breakpoint":{"frame":{"x":217,"y":55}},"BrickColorValue":{"frame":{"x":235,"y":55}},"BubbleChatConfiguration":{"frame":{"x":253,"y":55}},"Buggaroo":{"frame":{"x":271,"y":55}},"CFrameValue":{"frame":{"x":289,"y":55}},"Camera":{"frame":{"x":1,"y":73}},"CanvasGroup":{"frame":{"x":19,"y":73}},"ChannelTabsConfiguration":{"frame":{"x":37,"y":73}},"CharacterControllerManager":{"frame":{"x":55,"y":73}},"CharacterMesh":{"frame":{"x":73,"y":73}},"Chat":{"frame":{"x":91,"y":73}},"ChatInputBarConfiguration":{"frame":{"x":109,"y":73}},"ChatWindowConfiguration":{"frame":{"x":127,"y":73}},"ChorusSoundEffect":{"frame":{"x":145,"y":73}},"Class":{"frame":{"x":163,"y":73}},"Cleanup":{"frame":{"x":181,"y":73}},"ClickDetector":{"frame":{"x":199,"y":73}},"ClientReplicator":{"frame":{"x":217,"y":73}},"ClimbController":{"frame":{"x":235,"y":73}},"Clouds":{"frame":{"x":253,"y":73}},"Color":{"frame":{"x":271,"y":73}},"ColorCorrectionEffect":{"frame":{"x":289,"y":73}},"CompressorSoundEffect":{"frame":{"x":1,"y":91}},"ConeHandleAdornment":{"frame":{"x":19,"y":91}},"Configuration":{"frame":{"x":37,"y":91}},"Constant":{"frame":{"x":55,"y":91}},"Constructor":{"frame":{"x":73,"y":91}},"Controller":{"frame":{"x":91,"y":91}},"CoreGui":{"frame":{"x":109,"y":91}},"CornerWedgePart":{"frame":{"x":127,"y":91}},"CylinderHandleAdornment":{"frame":{"x":145,"y":91}},"CylindricalConstraint":{"frame":{"x":163,"y":91}},"Decal":{"frame":{"x":181,"y":91}},"DepthOfFieldEffect":{"frame":{"x":199,"y":91}},"Dialog":{"frame":{"x":217,"y":91}},"DialogChoice":{"frame":{"x":235,"y":91}},"DistortionSoundEffect":{"frame":{"x":253,"y":91}},"DragDetector":{"frame":{"x":271,"y":91}},"EchoSoundEffect":{"frame":{"x":289,"y":91}},"EditableImage":{"frame":{"x":1,"y":109}},"EditableMesh":{"frame":{"x":19,"y":109}},"Enum":{"frame":{"x":37,"y":109}},"EnumMember":{"frame":{"x":55,"y":109}},"EqualizerSoundEffect":{"frame":{"x":73,"y":109}},"Event":{"frame":{"x":91,"y":109}},"Explosion":{"frame":{"x":109,"y":109}},"FaceControls":{"frame":{"x":127,"y":109}},"Field":{"frame":{"x":145,"y":109}},"File":{"frame":{"x":163,"y":109}},"Fire":{"frame":{"x":181,"y":109}},"FlangeSoundEffect":{"frame":{"x":199,"y":109}},"Folder":{"frame":{"x":217,"y":109}},"ForceField":{"frame":{"x":235,"y":109}},"Frame":{"frame":{"x":253,"y":109}},"Function":{"frame":{"x":271,"y":109}},"GameSettings":{"frame":{"x":289,"y":109}},"GroundController":{"frame":{"x":1,"y":127}},"Handles":{"frame":{"x":19,"y":127}},"HapticEffect":{"frame":{"x":37,"y":127}},"HapticService":{"frame":{"x":55,"y":127}},"HeightmapImporterService":{"frame":{"x":73,"y":127}},"Highlight":{"frame":{"x":91,"y":127}},"HingeConstraint":{"frame":{"x":109,"y":127}},"Humanoid":{"frame":{"x":127,"y":127}},"HumanoidDescription":{"frame":{"x":145,"y":127}},"IKControl":{"frame":{"x":163,"y":127}},"ImageButton":{"frame":{"x":181,"y":127}},"ImageHandleAdornment":{"frame":{"x":199,"y":127}},"ImageLabel":{"frame":{"x":217,"y":127}},"InputAction":{"frame":{"x":235,"y":127}},"InputBinding":{"frame":{"x":253,"y":127}},"InputContext":{"frame":{"x":271,"y":127}},"Interface":{"frame":{"x":289,"y":127}},"IntersectOperation":{"frame":{"x":1,"y":145}},"Keyword":{"frame":{"x":19,"y":145}},"Lighting":{"frame":{"x":37,"y":145}},"LineForce":{"frame":{"x":55,"y":145}},"LineHandleAdornment":{"frame":{"x":73,"y":145}},"LinearVelocity":{"frame":{"x":91,"y":145}},"LocalFile":{"frame":{"x":109,"y":145}},"LocalScript":{"frame":{"x":127,"y":145}},"LocalizationService":{"frame":{"x":145,"y":145}},"LocalizationTable":{"frame":{"x":163,"y":145}},"MaterialService":{"frame":{"x":181,"y":145}},"MaterialVariant":{"frame":{"x":199,"y":145}},"MemoryStoreService":{"frame":{"x":217,"y":145}},"MeshPart":{"frame":{"x":235,"y":145}},"Meshparts":{"frame":{"x":253,"y":145}},"MessagingService":{"frame":{"x":271,"y":145}},"Method":{"frame":{"x":289,"y":145}},"Model":{"frame":{"x":1,"y":163}},"Modelgroups":{"frame":{"x":19,"y":163}},"Module":{"frame":{"x":37,"y":163}},"ModuleScript":{"frame":{"x":55,"y":163}},"Motor6D":{"frame":{"x":73,"y":163}},"NegateOperation":{"frame":{"x":91,"y":163}},"NetworkClient":{"frame":{"x":109,"y":163}},"NoCollisionConstraint":{"frame":{"x":127,"y":163}},"Operator":{"frame":{"x":145,"y":163}},"PackageLink":{"frame":{"x":163,"y":163}},"Pants":{"frame":{"x":181,"y":163}},"Part":{"frame":{"x":199,"y":163}},"ParticleEmitter":{"frame":{"x":217,"y":163}},"Path2D":{"frame":{"x":235,"y":163}},"PathfindingLink":{"frame":{"x":253,"y":163}},"PathfindingModifier":{"frame":{"x":271,"y":163}},"PathfindingService":{"frame":{"x":289,"y":163}},"PitchShiftSoundEffect":{"frame":{"x":1,"y":181}},"Place":{"frame":{"x":19,"y":181}},"Plane":{"frame":{"x":37,"y":181}},"PlaneConstraint":{"frame":{"x":55,"y":181}},"Player":{"frame":{"x":73,"y":181}},"Players":{"frame":{"x":91,"y":181}},"PluginGuiService":{"frame":{"x":109,"y":181}},"PointLight":{"frame":{"x":127,"y":181}},"PrismaticConstraint":{"frame":{"x":145,"y":181}},"Property":{"frame":{"x":163,"y":181}},"ProximityPrompt":{"frame":{"x":181,"y":181}},"PublishService":{"frame":{"x":199,"y":181}},"Reference":{"frame":{"x":217,"y":181}},"RemoteEvent":{"frame":{"x":235,"y":181}},"RemoteFunction":{"frame":{"x":253,"y":181}},"RenderingTest":{"frame":{"x":271,"y":181}},"ReplicatedFirst":{"frame":{"x":289,"y":181}},"ReplicatedScriptService":{"frame":{"x":1,"y":199}},"ReplicatedStorage":{"frame":{"x":19,"y":199}},"ReverbSoundEffect":{"frame":{"x":37,"y":199}},"RigidConstraint":{"frame":{"x":55,"y":199}},"RobloxPluginGuiService":{"frame":{"x":73,"y":199}},"RocketPropulsion":{"frame":{"x":91,"y":199}},"RodConstraint":{"frame":{"x":109,"y":199}},"RopeConstraint":{"frame":{"x":127,"y":199}},"Rotate":{"frame":{"x":145,"y":199}},"ScreenGui":{"frame":{"x":163,"y":199}},"Script":{"frame":{"x":181,"y":199}},"ScrollingFrame":{"frame":{"x":199,"y":199}},"Seat":{"frame":{"x":217,"y":199}},"Selected_Workspace":{"frame":{"x":235,"y":199}},"SelectionBox":{"frame":{"x":253,"y":199}},"SelectionSphere":{"frame":{"x":271,"y":199}},"ServerScriptService":{"frame":{"x":289,"y":199}},"ServerStorage":{"frame":{"x":1,"y":217}},"Service":{"frame":{"x":19,"y":217}},"Shirt":{"frame":{"x":37,"y":217}},"ShirtGraphic":{"frame":{"x":55,"y":217}},"SkinnedMeshPart":{"frame":{"x":73,"y":217}},"Sky":{"frame":{"x":91,"y":217}},"Smoke":{"frame":{"x":109,"y":217}},"Snap":{"frame":{"x":127,"y":217}},"Snippet":{"frame":{"x":145,"y":217}},"SocialService":{"frame":{"x":163,"y":217}},"Sound":{"frame":{"x":181,"y":217}},"SoundEffect":{"frame":{"x":199,"y":217}},"SoundGroup":{"frame":{"x":217,"y":217}},"SoundService":{"frame":{"x":235,"y":217}},"Sparkles":{"frame":{"x":253,"y":217}},"SpawnLocation":{"frame":{"x":271,"y":217}},"SpecialMesh":{"frame":{"x":289,"y":217}},"SphereHandleAdornment":{"frame":{"x":1,"y":235}},"SpotLight":{"frame":{"x":19,"y":235}},"SpringConstraint":{"frame":{"x":37,"y":235}},"StandalonePluginScripts":{"frame":{"x":55,"y":235}},"StarterCharacterScripts":{"frame":{"x":73,"y":235}},"StarterGui":{"frame":{"x":91,"y":235}},"StarterPack":{"frame":{"x":109,"y":235}},"StarterPlayer":{"frame":{"x":127,"y":235}},"StarterPlayerScripts":{"frame":{"x":145,"y":235}},"Struct":{"frame":{"x":163,"y":235}},"StyleDerive":{"frame":{"x":181,"y":235}},"StyleLink":{"frame":{"x":199,"y":235}},"StyleRule":{"frame":{"x":217,"y":235}},"StyleSheet":{"frame":{"x":235,"y":235}},"SunRaysEffect":{"frame":{"x":253,"y":235}},"SurfaceAppearance":{"frame":{"x":271,"y":235}},"SurfaceGui":{"frame":{"x":289,"y":235}},"SurfaceLight":{"frame":{"x":1,"y":253}},"SurfaceSelection":{"frame":{"x":19,"y":253}},"SwimController":{"frame":{"x":37,"y":253}},"TaskScheduler":{"frame":{"x":55,"y":253}},"Team":{"frame":{"x":73,"y":253}},"Teams":{"frame":{"x":91,"y":253}},"Terrain":{"frame":{"x":109,"y":253}},"TerrainDetail":{"frame":{"x":127,"y":253}},"TestService":{"frame":{"x":145,"y":253}},"TextBox":{"frame":{"x":163,"y":253}},"TextBoxService":{"frame":{"x":181,"y":253}},"TextButton":{"frame":{"x":199,"y":253}},"TextChannel":{"frame":{"x":217,"y":253}},"TextChatCommand":{"frame":{"x":235,"y":253}},"TextChatService":{"frame":{"x":253,"y":253}},"TextLabel":{"frame":{"x":271,"y":253}},"TextString":{"frame":{"x":289,"y":253}},"Texture":{"frame":{"x":1,"y":271}},"Tool":{"frame":{"x":19,"y":271}},"Torque":{"frame":{"x":37,"y":271}},"TorsionSpringConstraint":{"frame":{"x":55,"y":271}},"Trail":{"frame":{"x":73,"y":271}},"TremoloSoundEffect":{"frame":{"x":91,"y":271}},"TrussPart":{"frame":{"x":109,"y":271}},"TypeParameter":{"frame":{"x":127,"y":271}},"UGCValidationService":{"frame":{"x":145,"y":271}},"UIAspectRatioConstraint":{"frame":{"x":163,"y":271}},"UICorner":{"frame":{"x":181,"y":271}},"UIDragDetector":{"frame":{"x":199,"y":271}},"UIFlexItem":{"frame":{"x":217,"y":271}},"UIGradient":{"frame":{"x":235,"y":271}},"UIGridLayout":{"frame":{"x":253,"y":271}},"UIListLayout":{"frame":{"x":271,"y":271}},"UIPadding":{"frame":{"x":289,"y":271}},"UIPageLayout":{"frame":{"x":1,"y":289}},"UIScale":{"frame":{"x":19,"y":289}},"UISizeConstraint":{"frame":{"x":37,"y":289}},"UIStroke":{"frame":{"x":55,"y":289}},"UITableLayout":{"frame":{"x":73,"y":289}},"UITextSizeConstraint":{"frame":{"x":91,"y":289}},"UnionOperation":{"frame":{"x":109,"y":289}},"Unit":{"frame":{"x":127,"y":289}},"UniversalConstraint":{"frame":{"x":145,"y":289}},"UnreliableRemoteEvent":{"frame":{"x":163,"y":289}},"UpdateAvailable":{"frame":{"x":181,"y":289}},"UserService":{"frame":{"x":199,"y":289}},"VRService":{"frame":{"x":217,"y":289}},"Value":{"frame":{"x":235,"y":289}},"Variable":{"frame":{"x":253,"y":289}},"VectorForce":{"frame":{"x":271,"y":289}},"VehicleSeat":{"frame":{"x":289,"y":289}},"VideoDisplay":{"frame":{"x":307,"y":1}},"VideoFrame":{"frame":{"x":307,"y":19}},"VideoPlayer":{"frame":{"x":307,"y":37}},"ViewportFrame":{"frame":{"x":307,"y":55}},"VirtualUser":{"frame":{"x":307,"y":73}},"VoiceChannel":{"frame":{"x":307,"y":91}},"VoiceChatService":{"frame":{"x":307,"y":109}},"Voicechat":{"frame":{"x":307,"y":127}},"WedgePart":{"frame":{"x":307,"y":145}},"Weld":{"frame":{"x":307,"y":163}},"WeldConstraint":{"frame":{"x":307,"y":181}},"Wire":{"frame":{"x":307,"y":199}},"WireframeHandleAdornment":{"frame":{"x":307,"y":217}},"Workspace":{"frame":{"x":307,"y":235}},"WorldModel":{"frame":{"x":307,"y":253}},"WrapDeformer":{"frame":{"x":307,"y":271}},"WrapLayer":{"frame":{"x":307,"y":289}},"WrapTarget":{"frame":{"x":1,"y":307}}}]==] -) +return game:GetService("HttpService"):JSONDecode([==[[["Accessory",1,1],["Actor",19,1],["AdGui",37,1],["AdPortal",55,1],["AirController",73,1],["AlignOrientation",91,1],["AlignPosition",109,1],["AngularVelocity",127,1],["Animation",145,1],["AnimationConstraint",163,1],["AnimationController",181,1],["AnimationFromVideoCreatorService",199,1],["Animator",217,1],["ArcHandles",235,1],["Atmosphere",253,1],["Attachment",271,1],["AudioAnalyzer",289,1],["AudioChannelMixer",1,19],["AudioChannelSplitter",19,19],["AudioChorus",37,19],["AudioCompressor",55,19],["AudioDeviceInput",73,19],["AudioDeviceOutput",91,19],["AudioDistortion",109,19],["AudioEcho",127,19],["AudioEmitter",145,19],["AudioEqualizer",163,19],["AudioFader",181,19],["AudioFilter",199,19],["AudioFlanger",217,19],["AudioGate",235,19],["AudioLimiter",253,19],["AudioListener",271,19],["AudioPitchShifter",289,19],["AudioPlayer",1,37],["AudioRecorder",19,37],["AudioReverb",37,37],["AudioSpeechToText",55,37],["AudioTextToSpeech",73,37],["AudioTremolo",91,37],["AuroraScript",109,37],["AvatarEditorService",127,37],["AvatarSettings",145,37],["Backpack",163,37],["BallSocketConstraint",181,37],["BasePlate",199,37],["Beam",217,37],["BillboardGui",235,37],["BindableEvent",253,37],["BindableFunction",271,37],["BlockMesh",289,37],["BloomEffect",1,55],["BlurEffect",19,55],["BodyAngularVelocity",37,55],["BodyColors",55,55],["BodyForce",73,55],["BodyGyro",91,55],["BodyPosition",109,55],["BodyThrust",127,55],["BodyVelocity",145,55],["Bone",163,55],["BoolValue",181,55],["BoxHandleAdornment",199,55],["Breakpoint",217,55],["BrickColorValue",235,55],["BubbleChatConfiguration",253,55],["Buggaroo",271,55],["CFrameValue",289,55],["Camera",1,73],["CanvasGroup",19,73],["ChannelTabsConfiguration",37,73],["CharacterControllerManager",55,73],["CharacterMesh",73,73],["Chat",91,73],["ChatInputBarConfiguration",109,73],["ChatWindowConfiguration",127,73],["ChorusSoundEffect",145,73],["Class",163,73],["Cleanup",181,73],["ClickDetector",199,73],["ClientReplicator",217,73],["ClimbController",235,73],["Clouds",253,73],["Color",271,73],["ColorCorrectionEffect",289,73],["CompressorSoundEffect",1,91],["ConeHandleAdornment",19,91],["Configuration",37,91],["Constant",55,91],["Constructor",73,91],["Controller",91,91],["CoreGui",109,91],["CornerWedgePart",127,91],["CylinderHandleAdornment",145,91],["CylindricalConstraint",163,91],["Decal",181,91],["DepthOfFieldEffect",199,91],["Dialog",217,91],["DialogChoice",235,91],["DistortionSoundEffect",253,91],["DragDetector",271,91],["EchoSoundEffect",289,91],["EditableImage",1,109],["EditableMesh",19,109],["Enum",37,109],["EnumMember",55,109],["EqualizerSoundEffect",73,109],["Event",91,109],["Explosion",109,109],["FaceControls",127,109],["Field",145,109],["File",163,109],["Fire",181,109],["FlangeSoundEffect",199,109],["Folder",217,109],["ForceField",235,109],["Frame",253,109],["Function",271,109],["GameSettings",289,109],["GroundController",1,127],["Handles",19,127],["HapticEffect",37,127],["HapticService",55,127],["HeightmapImporterService",73,127],["Highlight",91,127],["HingeConstraint",109,127],["Humanoid",127,127],["HumanoidDescription",145,127],["IKControl",163,127],["ImageButton",181,127],["ImageHandleAdornment",199,127],["ImageLabel",217,127],["InputAction",235,127],["InputBinding",253,127],["InputContext",271,127],["Interface",289,127],["IntersectOperation",1,145],["Keyword",19,145],["Lighting",37,145],["LineForce",55,145],["LineHandleAdornment",73,145],["LinearVelocity",91,145],["LocalFile",109,145],["LocalScript",127,145],["LocalizationService",145,145],["LocalizationTable",163,145],["MaterialService",181,145],["MaterialVariant",199,145],["MemoryStoreService",217,145],["MeshPart",235,145],["Meshparts",253,145],["MessagingService",271,145],["Method",289,145],["Model",1,163],["Modelgroups",19,163],["Module",37,163],["ModuleScript",55,163],["Motor6D",73,163],["NegateOperation",91,163],["NetworkClient",109,163],["NoCollisionConstraint",127,163],["Operator",145,163],["PackageLink",163,163],["Pants",181,163],["Part",199,163],["ParticleEmitter",217,163],["Path2D",235,163],["PathfindingLink",253,163],["PathfindingModifier",271,163],["PathfindingService",289,163],["PitchShiftSoundEffect",1,181],["Place",19,181],["Plane",37,181],["PlaneConstraint",55,181],["Player",73,181],["Players",91,181],["PluginGuiService",109,181],["PointLight",127,181],["PrismaticConstraint",145,181],["Property",163,181],["ProximityPrompt",181,181],["PublishService",199,181],["Reference",217,181],["RemoteEvent",235,181],["RemoteFunction",253,181],["RenderingTest",271,181],["ReplicatedFirst",289,181],["ReplicatedScriptService",1,199],["ReplicatedStorage",19,199],["ReverbSoundEffect",37,199],["RigidConstraint",55,199],["RobloxPluginGuiService",73,199],["RocketPropulsion",91,199],["RodConstraint",109,199],["RopeConstraint",127,199],["Rotate",145,199],["ScreenGui",163,199],["Script",181,199],["ScrollingFrame",199,199],["Seat",217,199],["Selected_Workspace",235,199],["SelectionBox",253,199],["SelectionSphere",271,199],["ServerScriptService",289,199],["ServerStorage",1,217],["Service",19,217],["Shirt",37,217],["ShirtGraphic",55,217],["SkinnedMeshPart",73,217],["Sky",91,217],["Smoke",109,217],["Snap",127,217],["Snippet",145,217],["SocialService",163,217],["Sound",181,217],["SoundEffect",199,217],["SoundGroup",217,217],["SoundService",235,217],["Sparkles",253,217],["SpawnLocation",271,217],["SpecialMesh",289,217],["SphereHandleAdornment",1,235],["SpotLight",19,235],["SpringConstraint",37,235],["StandalonePluginScripts",55,235],["StarterCharacterScripts",73,235],["StarterGui",91,235],["StarterPack",109,235],["StarterPlayer",127,235],["StarterPlayerScripts",145,235],["Struct",163,235],["StyleDerive",181,235],["StyleLink",199,235],["StyleRule",217,235],["StyleSheet",235,235],["SunRaysEffect",253,235],["SurfaceAppearance",271,235],["SurfaceGui",289,235],["SurfaceLight",1,253],["SurfaceSelection",19,253],["SwimController",37,253],["TaskScheduler",55,253],["Team",73,253],["Teams",91,253],["Terrain",109,253],["TerrainDetail",127,253],["TestService",145,253],["TextBox",163,253],["TextBoxService",181,253],["TextButton",199,253],["TextChannel",217,253],["TextChatCommand",235,253],["TextChatService",253,253],["TextLabel",271,253],["TextString",289,253],["Texture",1,271],["Tool",19,271],["Torque",37,271],["TorsionSpringConstraint",55,271],["Trail",73,271],["TremoloSoundEffect",91,271],["TrussPart",109,271],["TypeParameter",127,271],["UGCValidationService",145,271],["UIAspectRatioConstraint",163,271],["UICorner",181,271],["UIDragDetector",199,271],["UIFlexItem",217,271],["UIGradient",235,271],["UIGridLayout",253,271],["UIListLayout",271,271],["UIPadding",289,271],["UIPageLayout",1,289],["UIScale",19,289],["UISizeConstraint",37,289],["UIStroke",55,289],["UITableLayout",73,289],["UITextSizeConstraint",91,289],["UnionOperation",109,289],["Unit",127,289],["UniversalConstraint",145,289],["UnreliableRemoteEvent",163,289],["UpdateAvailable",181,289],["UserService",199,289],["VRService",217,289],["Value",235,289],["Variable",253,289],["VectorForce",271,289],["VehicleSeat",289,289],["VideoDisplay",307,1],["VideoFrame",307,19],["VideoPlayer",307,37],["ViewportFrame",307,55],["VirtualUser",307,73],["VoiceChannel",307,91],["VoiceChatService",307,109],["Voicechat",307,127],["WedgePart",307,145],["Weld",307,163],["WeldConstraint",307,181],["Wire",307,199],["WireframeHandleAdornment",307,217],["Workspace",307,235],["WorldModel",307,253],["WrapDeformer",307,271],["WrapLayer",307,289],["WrapTarget",1,307]]]==]) diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/InstanceIcons/init.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/InstanceIcons/init.lua index 5062246ecc..5fa324886b 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/InstanceIcons/init.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/InstanceIcons/init.lua @@ -1,10 +1,13 @@ local HttpService = game:GetService("HttpService") -local JSON = require(script.JSON) +local JSONArray = require(script.JSON) + +-- Build lookup table from array format [className, x, y] +local ClassLookup = {} +for _, entry in ipairs(JSONArray) do + ClassLookup[entry[1]] = { entry[2], entry[3] } +end + return function(className, iconImage) - local info = JSON[className] or JSON["Configuration"] - local x, y = info.frame.x, info.frame.y - return { x, y } - --iconImage.Image = "http://www.roblox.com/asset/?id=15288945291" - --iconImage.ImageRectSize = Vector2.new(16,16) - --iconImage.ImageRectOffset = Vector2.new(x,y) + local coords = ClassLookup[className] or ClassLookup["Configuration"] or { 1, 1 } + return coords end From 774977fd96e2d6336ce4c2c00b05539629780af8 Mon Sep 17 00:00:00 2001 From: Your Name <61132894+DrewBokman@users.noreply.github.com> Date: Sun, 14 Dec 2025 17:10:02 -0500 Subject: [PATCH 36/36] Refactor InstanceIcons to use table-based class lookup Replaces the JSON array and dynamic lookup construction with a static Lua table for class icon coordinates. This simplifies the code and improves lookup performance by removing the need to iterate and build a lookup table at runtime. --- .../main_NewDex/Modules/InstanceIcons/JSON.lua | 2 +- .../main_NewDex/Modules/InstanceIcons/init.lua | 11 ++--------- 2 files changed, 3 insertions(+), 10 deletions(-) diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/InstanceIcons/JSON.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/InstanceIcons/JSON.lua index f8fe66ee09..8eb805526a 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/InstanceIcons/JSON.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/InstanceIcons/JSON.lua @@ -1 +1 @@ -return game:GetService("HttpService"):JSONDecode([==[[["Accessory",1,1],["Actor",19,1],["AdGui",37,1],["AdPortal",55,1],["AirController",73,1],["AlignOrientation",91,1],["AlignPosition",109,1],["AngularVelocity",127,1],["Animation",145,1],["AnimationConstraint",163,1],["AnimationController",181,1],["AnimationFromVideoCreatorService",199,1],["Animator",217,1],["ArcHandles",235,1],["Atmosphere",253,1],["Attachment",271,1],["AudioAnalyzer",289,1],["AudioChannelMixer",1,19],["AudioChannelSplitter",19,19],["AudioChorus",37,19],["AudioCompressor",55,19],["AudioDeviceInput",73,19],["AudioDeviceOutput",91,19],["AudioDistortion",109,19],["AudioEcho",127,19],["AudioEmitter",145,19],["AudioEqualizer",163,19],["AudioFader",181,19],["AudioFilter",199,19],["AudioFlanger",217,19],["AudioGate",235,19],["AudioLimiter",253,19],["AudioListener",271,19],["AudioPitchShifter",289,19],["AudioPlayer",1,37],["AudioRecorder",19,37],["AudioReverb",37,37],["AudioSpeechToText",55,37],["AudioTextToSpeech",73,37],["AudioTremolo",91,37],["AuroraScript",109,37],["AvatarEditorService",127,37],["AvatarSettings",145,37],["Backpack",163,37],["BallSocketConstraint",181,37],["BasePlate",199,37],["Beam",217,37],["BillboardGui",235,37],["BindableEvent",253,37],["BindableFunction",271,37],["BlockMesh",289,37],["BloomEffect",1,55],["BlurEffect",19,55],["BodyAngularVelocity",37,55],["BodyColors",55,55],["BodyForce",73,55],["BodyGyro",91,55],["BodyPosition",109,55],["BodyThrust",127,55],["BodyVelocity",145,55],["Bone",163,55],["BoolValue",181,55],["BoxHandleAdornment",199,55],["Breakpoint",217,55],["BrickColorValue",235,55],["BubbleChatConfiguration",253,55],["Buggaroo",271,55],["CFrameValue",289,55],["Camera",1,73],["CanvasGroup",19,73],["ChannelTabsConfiguration",37,73],["CharacterControllerManager",55,73],["CharacterMesh",73,73],["Chat",91,73],["ChatInputBarConfiguration",109,73],["ChatWindowConfiguration",127,73],["ChorusSoundEffect",145,73],["Class",163,73],["Cleanup",181,73],["ClickDetector",199,73],["ClientReplicator",217,73],["ClimbController",235,73],["Clouds",253,73],["Color",271,73],["ColorCorrectionEffect",289,73],["CompressorSoundEffect",1,91],["ConeHandleAdornment",19,91],["Configuration",37,91],["Constant",55,91],["Constructor",73,91],["Controller",91,91],["CoreGui",109,91],["CornerWedgePart",127,91],["CylinderHandleAdornment",145,91],["CylindricalConstraint",163,91],["Decal",181,91],["DepthOfFieldEffect",199,91],["Dialog",217,91],["DialogChoice",235,91],["DistortionSoundEffect",253,91],["DragDetector",271,91],["EchoSoundEffect",289,91],["EditableImage",1,109],["EditableMesh",19,109],["Enum",37,109],["EnumMember",55,109],["EqualizerSoundEffect",73,109],["Event",91,109],["Explosion",109,109],["FaceControls",127,109],["Field",145,109],["File",163,109],["Fire",181,109],["FlangeSoundEffect",199,109],["Folder",217,109],["ForceField",235,109],["Frame",253,109],["Function",271,109],["GameSettings",289,109],["GroundController",1,127],["Handles",19,127],["HapticEffect",37,127],["HapticService",55,127],["HeightmapImporterService",73,127],["Highlight",91,127],["HingeConstraint",109,127],["Humanoid",127,127],["HumanoidDescription",145,127],["IKControl",163,127],["ImageButton",181,127],["ImageHandleAdornment",199,127],["ImageLabel",217,127],["InputAction",235,127],["InputBinding",253,127],["InputContext",271,127],["Interface",289,127],["IntersectOperation",1,145],["Keyword",19,145],["Lighting",37,145],["LineForce",55,145],["LineHandleAdornment",73,145],["LinearVelocity",91,145],["LocalFile",109,145],["LocalScript",127,145],["LocalizationService",145,145],["LocalizationTable",163,145],["MaterialService",181,145],["MaterialVariant",199,145],["MemoryStoreService",217,145],["MeshPart",235,145],["Meshparts",253,145],["MessagingService",271,145],["Method",289,145],["Model",1,163],["Modelgroups",19,163],["Module",37,163],["ModuleScript",55,163],["Motor6D",73,163],["NegateOperation",91,163],["NetworkClient",109,163],["NoCollisionConstraint",127,163],["Operator",145,163],["PackageLink",163,163],["Pants",181,163],["Part",199,163],["ParticleEmitter",217,163],["Path2D",235,163],["PathfindingLink",253,163],["PathfindingModifier",271,163],["PathfindingService",289,163],["PitchShiftSoundEffect",1,181],["Place",19,181],["Plane",37,181],["PlaneConstraint",55,181],["Player",73,181],["Players",91,181],["PluginGuiService",109,181],["PointLight",127,181],["PrismaticConstraint",145,181],["Property",163,181],["ProximityPrompt",181,181],["PublishService",199,181],["Reference",217,181],["RemoteEvent",235,181],["RemoteFunction",253,181],["RenderingTest",271,181],["ReplicatedFirst",289,181],["ReplicatedScriptService",1,199],["ReplicatedStorage",19,199],["ReverbSoundEffect",37,199],["RigidConstraint",55,199],["RobloxPluginGuiService",73,199],["RocketPropulsion",91,199],["RodConstraint",109,199],["RopeConstraint",127,199],["Rotate",145,199],["ScreenGui",163,199],["Script",181,199],["ScrollingFrame",199,199],["Seat",217,199],["Selected_Workspace",235,199],["SelectionBox",253,199],["SelectionSphere",271,199],["ServerScriptService",289,199],["ServerStorage",1,217],["Service",19,217],["Shirt",37,217],["ShirtGraphic",55,217],["SkinnedMeshPart",73,217],["Sky",91,217],["Smoke",109,217],["Snap",127,217],["Snippet",145,217],["SocialService",163,217],["Sound",181,217],["SoundEffect",199,217],["SoundGroup",217,217],["SoundService",235,217],["Sparkles",253,217],["SpawnLocation",271,217],["SpecialMesh",289,217],["SphereHandleAdornment",1,235],["SpotLight",19,235],["SpringConstraint",37,235],["StandalonePluginScripts",55,235],["StarterCharacterScripts",73,235],["StarterGui",91,235],["StarterPack",109,235],["StarterPlayer",127,235],["StarterPlayerScripts",145,235],["Struct",163,235],["StyleDerive",181,235],["StyleLink",199,235],["StyleRule",217,235],["StyleSheet",235,235],["SunRaysEffect",253,235],["SurfaceAppearance",271,235],["SurfaceGui",289,235],["SurfaceLight",1,253],["SurfaceSelection",19,253],["SwimController",37,253],["TaskScheduler",55,253],["Team",73,253],["Teams",91,253],["Terrain",109,253],["TerrainDetail",127,253],["TestService",145,253],["TextBox",163,253],["TextBoxService",181,253],["TextButton",199,253],["TextChannel",217,253],["TextChatCommand",235,253],["TextChatService",253,253],["TextLabel",271,253],["TextString",289,253],["Texture",1,271],["Tool",19,271],["Torque",37,271],["TorsionSpringConstraint",55,271],["Trail",73,271],["TremoloSoundEffect",91,271],["TrussPart",109,271],["TypeParameter",127,271],["UGCValidationService",145,271],["UIAspectRatioConstraint",163,271],["UICorner",181,271],["UIDragDetector",199,271],["UIFlexItem",217,271],["UIGradient",235,271],["UIGridLayout",253,271],["UIListLayout",271,271],["UIPadding",289,271],["UIPageLayout",1,289],["UIScale",19,289],["UISizeConstraint",37,289],["UIStroke",55,289],["UITableLayout",73,289],["UITextSizeConstraint",91,289],["UnionOperation",109,289],["Unit",127,289],["UniversalConstraint",145,289],["UnreliableRemoteEvent",163,289],["UpdateAvailable",181,289],["UserService",199,289],["VRService",217,289],["Value",235,289],["Variable",253,289],["VectorForce",271,289],["VehicleSeat",289,289],["VideoDisplay",307,1],["VideoFrame",307,19],["VideoPlayer",307,37],["ViewportFrame",307,55],["VirtualUser",307,73],["VoiceChannel",307,91],["VoiceChatService",307,109],["Voicechat",307,127],["WedgePart",307,145],["Weld",307,163],["WeldConstraint",307,181],["Wire",307,199],["WireframeHandleAdornment",307,217],["Workspace",307,235],["WorldModel",307,253],["WrapDeformer",307,271],["WrapLayer",307,289],["WrapTarget",1,307]]]==]) +return {Accessory={1,1},Actor={19,1},AdGui={37,1},AdPortal={55,1},AirController={73,1},AlignOrientation={91,1},AlignPosition={109,1},AngularVelocity={127,1},Animation={145,1},AnimationConstraint={163,1},AnimationController={181,1},AnimationFromVideoCreatorService={199,1},Animator={217,1},ArcHandles={235,1},Atmosphere={253,1},Attachment={271,1},AudioAnalyzer={289,1},AudioChannelMixer={1,19},AudioChannelSplitter={19,19},AudioChorus={37,19},AudioCompressor={55,19},AudioDeviceInput={73,19},AudioDeviceOutput={91,19},AudioDistortion={109,19},AudioEcho={127,19},AudioEmitter={145,19},AudioEqualizer={163,19},AudioFader={181,19},AudioFilter={199,19},AudioFlanger={217,19},AudioGate={235,19},AudioLimiter={253,19},AudioListener={271,19},AudioPitchShifter={289,19},AudioPlayer={1,37},AudioRecorder={19,37},AudioReverb={37,37},AudioSpeechToText={55,37},AudioTextToSpeech={73,37},AudioTremolo={91,37},AuroraScript={109,37},AvatarEditorService={127,37},AvatarSettings={145,37},Backpack={163,37},BallSocketConstraint={181,37},BasePlate={199,37},Beam={217,37},BillboardGui={235,37},BindableEvent={253,37},BindableFunction={271,37},BlockMesh={289,37},BloomEffect={1,55},BlurEffect={19,55},BodyAngularVelocity={37,55},BodyColors={55,55},BodyForce={73,55},BodyGyro={91,55},BodyPosition={109,55},BodyThrust={127,55},BodyVelocity={145,55},Bone={163,55},BoolValue={181,55},BoxHandleAdornment={199,55},Breakpoint={217,55},BrickColorValue={235,55},BubbleChatConfiguration={253,55},Buggaroo={271,55},CFrameValue={289,55},Camera={1,73},CanvasGroup={19,73},ChannelTabsConfiguration={37,73},CharacterControllerManager={55,73},CharacterMesh={73,73},Chat={91,73},ChatInputBarConfiguration={109,73},ChatWindowConfiguration={127,73},ChorusSoundEffect={145,73},Class={163,73},Cleanup={181,73},ClickDetector={199,73},ClientReplicator={217,73},ClimbController={235,73},Clouds={253,73},Color={271,73},ColorCorrectionEffect={289,73},CompressorSoundEffect={1,91},ConeHandleAdornment={19,91},Configuration={37,91},Constant={55,91},Constructor={73,91},Controller={91,91},CoreGui={109,91},CornerWedgePart={127,91},CylinderHandleAdornment={145,91},CylindricalConstraint={163,91},Decal={181,91},DepthOfFieldEffect={199,91},Dialog={217,91},DialogChoice={235,91},DistortionSoundEffect={253,91},DragDetector={271,91},EchoSoundEffect={289,91},EditableImage={1,109},EditableMesh={19,109},Enum={37,109},EnumMember={55,109},EqualizerSoundEffect={73,109},Event={91,109},Explosion={109,109},FaceControls={127,109},Field={145,109},File={163,109},Fire={181,109},FlangeSoundEffect={199,109},Folder={217,109},ForceField={235,109},Frame={253,109},Function={271,109},GameSettings={289,109},GroundController={1,127},Handles={19,127},HapticEffect={37,127},HapticService={55,127},HeightmapImporterService={73,127},Highlight={91,127},HingeConstraint={109,127},Humanoid={127,127},HumanoidDescription={145,127},IKControl={163,127},ImageButton={181,127},ImageHandleAdornment={199,127},ImageLabel={217,127},InputAction={235,127},InputBinding={253,127},InputContext={271,127},Interface={289,127},IntersectOperation={1,145},Keyword={19,145},Lighting={37,145},LineForce={55,145},LineHandleAdornment={73,145},LinearVelocity={91,145},LocalFile={109,145},LocalScript={127,145},LocalizationService={145,145},LocalizationTable={163,145},MaterialService={181,145},MaterialVariant={199,145},MemoryStoreService={217,145},MeshPart={235,145},Meshparts={253,145},MessagingService={271,145},Method={289,145},Model={1,163},Modelgroups={19,163},Module={37,163},ModuleScript={55,163},Motor6D={73,163},NegateOperation={91,163},NetworkClient={109,163},NoCollisionConstraint={127,163},Operator={145,163},PackageLink={163,163},Pants={181,163},Part={199,163},ParticleEmitter={217,163},Path2D={235,163},PathfindingLink={253,163},PathfindingModifier={271,163},PathfindingService={289,163},PitchShiftSoundEffect={1,181},Place={19,181},Plane={37,181},PlaneConstraint={55,181},Player={73,181},Players={91,181},PluginGuiService={109,181},PointLight={127,181},PrismaticConstraint={145,181},Property={163,181},ProximityPrompt={181,181},PublishService={199,181},Reference={217,181},RemoteEvent={235,181},RemoteFunction={253,181},RenderingTest={271,181},ReplicatedFirst={289,181},ReplicatedScriptService={1,199},ReplicatedStorage={19,199},ReverbSoundEffect={37,199},RigidConstraint={55,199},RobloxPluginGuiService={73,199},RocketPropulsion={91,199},RodConstraint={109,199},RopeConstraint={127,199},Rotate={145,199},ScreenGui={163,199},Script={181,199},ScrollingFrame={199,199},Seat={217,199},Selected_Workspace={235,199},SelectionBox={253,199},SelectionSphere={271,199},ServerScriptService={289,199},ServerStorage={1,217},Service={19,217},Shirt={37,217},ShirtGraphic={55,217},SkinnedMeshPart={73,217},Sky={91,217},Smoke={109,217},Snap={127,217},Snippet={145,217},SocialService={163,217},Sound={181,217},SoundEffect={199,217},SoundGroup={217,217},SoundService={235,217},Sparkles={253,217},SpawnLocation={271,217},SpecialMesh={289,217},SphereHandleAdornment={1,235},SpotLight={19,235},SpringConstraint={37,235},StandalonePluginScripts={55,235},StarterCharacterScripts={73,235},StarterGui={91,235},StarterPack={109,235},StarterPlayer={127,235},StarterPlayerScripts={145,235},Struct={163,235},StyleDerive={181,235},StyleLink={199,235},StyleRule={217,235},StyleSheet={235,235},SunRaysEffect={253,235},SurfaceAppearance={271,235},SurfaceGui={289,235},SurfaceLight={1,253},SurfaceSelection={19,253},SwimController={37,253},TaskScheduler={55,253},Team={73,253},Teams={91,253},Terrain={109,253},TerrainDetail={127,253},TestService={145,253},TextBox={163,253},TextBoxService={181,253},TextButton={199,253},TextChannel={217,253},TextChatCommand={235,253},TextChatService={253,253},TextLabel={271,253},TextString={289,253},Texture={1,271},Tool={19,271},Torque={37,271},TorsionSpringConstraint={55,271},Trail={73,271},TremoloSoundEffect={91,271},TrussPart={109,271},TypeParameter={127,271},UGCValidationService={145,271},UIAspectRatioConstraint={163,271},UICorner={181,271},UIDragDetector={199,271},UIFlexItem={217,271},UIGradient={235,271},UIGridLayout={253,271},UIListLayout={271,271},UIPadding={289,271},UIPageLayout={1,289},UIScale={19,289},UISizeConstraint={37,289},UIStroke={55,289},UITableLayout={73,289},UITextSizeConstraint={91,289},UnionOperation={109,289},Unit={127,289},UniversalConstraint={145,289},UnreliableRemoteEvent={163,289},UpdateAvailable={181,289},UserService={199,289},VRService={217,289},Value={235,289},Variable={253,289},VectorForce={271,289},VehicleSeat={289,289},VideoDisplay={307,1},VideoFrame={307,19},VideoPlayer={307,37},ViewportFrame={307,55},VirtualUser={307,73},VoiceChannel={307,91},VoiceChatService={307,109},Voicechat={307,127},WedgePart={307,145},Weld={307,163},WeldConstraint={307,181},Wire={307,199},WireframeHandleAdornment={307,217},Workspace={307,235},WorldModel={307,253},WrapDeformer={307,271},WrapLayer={307,289},WrapTarget={1,307}} diff --git a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/InstanceIcons/init.lua b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/InstanceIcons/init.lua index 5fa324886b..1985403ca5 100644 --- a/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/InstanceIcons/init.lua +++ b/MainModule/Server/Plugins/ServerNewDex/Dex_Client/main_NewDex/Modules/InstanceIcons/init.lua @@ -1,13 +1,6 @@ -local HttpService = game:GetService("HttpService") -local JSONArray = require(script.JSON) - --- Build lookup table from array format [className, x, y] -local ClassLookup = {} -for _, entry in ipairs(JSONArray) do - ClassLookup[entry[1]] = { entry[2], entry[3] } -end +local ClassData = require(script.JSON) return function(className, iconImage) - local coords = ClassLookup[className] or ClassLookup["Configuration"] or { 1, 1 } + local coords = ClassData[className] or ClassData.Configuration or { 1, 1 } return coords end