Plugin
*Ta zawartość została przetłumaczona przy użyciu narzędzi AI (w wersji beta) i może zawierać błędy. Aby wyświetlić tę stronę w języku angielskim, kliknij tutaj.
Plugin jest głównym obiektem odpowiedzialnym za tworzenie podstawowych widgetów Studio, paseków narzędzi, przycisków pluginów i więcej.Jest to niestandardowy dodatek do Studio, który dodaje nowe zachowania i funkcje, które zwykle nie są włączone.Obiekt Plugin można uzyskać za pośrednictwem globalnego odniesienia plugin w Script, który jest wykonywany jako dodatek plug-in.
Przykłady kodu
The plugin global reference is not passed to ModuleScripts within the plugin. In order to use it in a ModuleScript, you must explicitly pass it as seen in the example below.
assert(plugin, "This script must be run as a plugin!")
-- Code beyond this point will execute only if the script is run as a plugin
-- Load the module and pass the plugin reference
local pluginModule = require(script.Parent.PluginModule)
pluginModule:Initialize(plugin)
-- Verify if the plugin reference was initialized
pluginModule:CheckForPluginGlobal()
local pluginModule = {}
local plugin -- Local plugin reference
-- Initialize the plugin reference if not already set
function pluginModule:Initialize(pluginReference: Plugin)
if plugin ~= pluginReference then
plugin = pluginReference
else
error("Plugin is already initialized")
end
end
-- Check if the plugin reference is set and print out appropriate info
function pluginModule:CheckForPluginGlobal()
if plugin ~= nil then
print("Plugin reference is set!")
else
warn("Plugin reference is missing!")
end
end
return pluginModule
Podsumowanie
Właściwości
Zwraca, czy użytkownik włączył Collisions w Studio w zakładce Model.
Zwraca rozmiar przesuwania siatki, który użytkownik ustawił w Studio.
Metody
Ustawia stan wtyczki wezwania na aktywny.
- CreatePluginAction(actionId : string,text : string,statusTip : string,iconName : string,allowBinding : boolean):PluginAction
Tworzy PluginAction, który jest obiektem reprezentującym ogólną wykonalną akcję w Roblox Studio, bez bezpośrednio powiązanych Toolbar lub Enum.Button.
Tworzy nowe menu pluginów.
Tworzy nową PluginToolbar z podaną nazwą.
Dezaktywuje dodatek plug-in.
Zwraca Enum.JointCreationMode użytkownik ustawił w Studio w zakładce Model.
Zwraca Mouse, które można używać, gdy wtyczka jest aktywna.
Zwraca obecnie wybrane Enum.RibbonTool .
Zwraca wcześniej zapisany wartość z podanym kluczem, lub nil jeśli podany klucz nie istnieje.
Wyświetla prawdę, jeśli ten plugin jest obecnie aktywny, po aktywacji za pomocą funkcji Plugin:Activate().
Wyświetla prawdę, jeśli ten plugin jest obecnie aktywny z ekskluzywną myszką po aktywacji za pomocą funkcji Plugin:Activate().
Odrzuca podane części i zwraca wynikowe operacje zaprzeczania.
Używany do otwierania danego przykładu skryptu w oknie edytora, w Roblox Studio, na danej linii.Jeśli nie zostanie podana linia jako argument, domyślnie zostanie ustawiona na 1.
Otwiera okno pomocy kontekstowej na stronę wiki, do której łączy się url.
Otwiera okno przesyłania dla obecnego wyboru użytkownika.
Aktywuje określone narzędzie Roblox Studio.
Rozdziela podane operacje związane z unią i zwraca uzyskane części.
Przechowuje określoną wartość na późniejsze wykorzystanie pod danym kluczem. Wartość będzie istnieć nawet po zamknięciu Studio.
Rozpoczyna akcję przeciągania, dając słownik parametrów.
Połącza podane części i zwraca wynikową operację związku.
- CreateDockWidgetPluginGui(pluginGuiId : string,dockWidgetPluginGuiInfo : DockWidgetPluginGuiInfo):DockWidgetPluginGui
Tworzy DockWidgetPluginGui , podając DockWidgetPluginGuiInfo .
Wymaga od użytkownika otwarcia pliku animacji .fbx, który może zostać załadowany na rigModel, a następnie dokonuje wstawienia animacji jako KeyframeSequence w Workspace.
Wymaga od użytkownika otwarcia pliku .fbx, przesyła poszczególne komponenty modelu jako siatki i generuje postać do użycia w animacja, która jest wczytywana w Workspace.
Otwiera okno w Roblox Studio, które wymaga od użytkownika wyboru zasobu na podstawie określonego assetType.Zwraca, jaki ID aktywa został wybrany, lub -1, jeśli okno zostało zamknięte.
Wymaga od użytkownika zapisanie obecnego wyboru za pomocą określonej nazwy pliku. Powraca prawdą, jeśli użytkownik zapisał plik.
Zdarzenia
Wystrzeliwany, gdy wtyczka jest wyłączona.
Ogień natychmiast przed tym, jak Plugin przestanie działać.
Właściwości
DisableUIDragDetectorDrags
GridSize
Zwraca rozmiar przesuwania siatki, który użytkownik ustawił w Studio w zakładkach Model lub Awatar pod paskiem narzędzi.Zauważ, że ta właściwość może mieć niewielkie błędy zaokrąglenia; na przykład może to być 0.0099999997764826 dla ustawienia użytkownika 1 lub 0.4000000059604645 dla ustawienia użytkownika 0.4.
IsDebuggable
Metody
Activate
Funkcja ta ustawia stan wzywanego pluginu na aktywny. Aktywacja pluginu umożliwia kontrolę myszy za pomocą metody Plugin:GetMouse().
W dowolnym momencie istnieje 0 lub 1 aktywowanych pluginów.Aktywacja wtyczki dezaktywuje wszystkie inne wtyczki (otrzymają wydarzenie Plugin.Deactivation).
Zobacz także:
- Plugin:IsActivatedWithExclusiveMouse() , zwraca prawdę, jeśli ten plugin jest obecnie aktywny z ekskluzywną myszką, po aktywacji za pomocą tej funkcji
- Plugin.Unloading , zapala się natychmiast przed rozładowaniem lub ponownym załadowaniem wtyczki za pomocą dezaktywacji, dezaktywacji lub aktualizacji
Parametry
Boolean określający, czy aktywować plugin za pomocą ekskluzywnej myszy. Jeśli jest prawda, PluginMouse można odzyskać za pomocą Plugin:GetMouse() .
Zwroty
CreatePluginAction
Funkcja ta tworzy PluginAction, który jest obiektem reprezentującym ogólną wykonalną akcję w Roblox Studio, bezpośrednio nie powiązaną z Toolbar lub Enum.Button.W Roblox Studio mogą one otrzymać skrót klawiszowy pod File → Advanced → Customize Shortcuts…, a także mogą być dodane do paska narzędzi Szybkiego dostępu.
Gdy akcja jest uruchamiana, sygnalizowane jest wydarzenie PluginAction.Triggered.
Aby akcje pluginów działały zgodnie z oczekiwaniami, muszą być tworzone za pomocą tej funkcji.
Zobacz także:
- PluginMenu , menu kontekstowe, które można wyświetlić w Studio, które wyświetla listę akcji pluginów i wspiera podmenu
- Plugin:CreatePluginMenu() , tworzy menu pluginów
Parametry
Musi być unikalną struną, która identyfikuje tę akcję pluginów od innych.
Wyświetlana nazwa akcji.
Wyświetlana opis akcji.
Nazwa ikony używanej do wyświetlania dodatek plug-in.
Czy PluginAction zostanie ukryte z widoku skrótów Studio. Przydatne do działań kontekstowych. Domyślnie ustawione na prawdę.
Zwroty
Przykłady kodu
This code sample visualizes how to create a PluginAction. These must be created using the Plugin:CreatePluginAction() method in order to work.
In order to work as expected, the code block must but pasted into the Command Bar, but only once. Consecutive attempts at executing the code in the Command Bar will result in an error because a plugin cannot create more than one PluginMenu with the same ID.
When the created action is bound and Triggered, it outputs Hello world!.
local pluginAction = plugin:CreatePluginAction(
"HelloWorldAction",
"Hello World",
"Prints a 'Hello world!'",
"rbxasset://textures/sparkle.png",
true
)
pluginAction.Name = "Test Action"
local function actionTriggered()
print("Hello world!")
end
pluginAction.Triggered:Connect(actionTriggered)
CreatePluginMenu
Funkcja ta tworzy nowe PluginMenu, które jest menu kontekstowym, które można wyświetlić w Studio i wyświetla listę PluginActions oraz wspiera podmenu.
Aby menu pluginów działało tak, jak oczekiwano, muszą one zostać utworzone za pomocą tej funkcji.
Zobacz także:
- PluginAction , obiekt reprezentujący ogólną wykonalną akcję w Roblox Studio, bezpośrednio nie powiązany z Toolbar lub Enum.Button.
- Plugin:CreatePluginAction() , tworzy akcję pluginu
- PluginMenu.Title , tekst wyświetlany przy użyciu jako podmenu
- PluginMenu.Icon , ikona, która będzie wyświetlana, gdy używana jako podmenu
- PluginMenu:AddAction() , dodaje podane działanie do menu
- PluginMenu:AddNewAction() , tworzy tymczasowe działanie, które jest ukryte przed oknem dostosowywania skrótów Studio
- PluginMenu:AddMenu() , dodaje podane menu jako separator
- PluginMenu:AddSeparator() , dodaje separator między elementami w menu
- PluginMenu:Clear() , oczyszcza menu
- PluginMenu:ShowAsync() , pokazuje menu przy kursorowaniu myszy.Poddaje się, dopóki nie zostanie wybrany przedmiot lub zamknięte menu.Wybrana akcja uruchamia swoje uruchomione wydarzenie
Parametry
Unikalny identyfikator dla menu.
Tekst, który będzie wyświetlony, gdy używany jest jako podmenu.
Ikona, która będzie wyświetlana, gdy używana jako podmenu.
Zwroty
Przykłady kodu
This code sample visualizes how PluginMenus and PluginActions behave when created for a Plugin. Outside of this example, you should not parent the plugin or its functional components to the experience's workspace.
In order to work as expected, the code block must but pasted into the Command Bar, but only once. Consecutive attempts at executing the code in the Command Bar will result in an error because a plugin cannot create more than one PluginMenu with the same ID.
After executing the code, changing the created BoolValue in the experience's workspace opens the plugin's menus. Selecting an action from the menus the function connected to the trigger signal.
-- This code can be pasted into the command bar, but only once
local pluginMenu = plugin:CreatePluginMenu(math.random(), "Test Menu")
pluginMenu.Name = "Test Menu"
pluginMenu:AddNewAction("ActionA", "A", "rbxasset://textures/loading/robloxTiltRed.png")
pluginMenu:AddNewAction("ActionB", "B", "rbxasset://textures/loading/robloxTilt.png")
local subMenu = plugin:CreatePluginMenu(math.random(), "C", "rbxasset://textures/explosion.png")
subMenu.Name = "Sub Menu"
subMenu:AddNewAction("ActionD", "D", "rbxasset://textures/whiteCircle.png")
subMenu:AddNewAction("ActionE", "E", "rbxasset://textures/icon_ROBUX.png")
pluginMenu:AddMenu(subMenu)
pluginMenu:AddSeparator()
pluginMenu:AddNewAction("ActionF", "F", "rbxasset://textures/sparkle.png")
local toggle = Instance.new("BoolValue")
toggle.Name = "TogglePluginMenu"
toggle.Parent = workspace
local function onToggled()
if toggle.Value then
toggle.Value = false
local selectedAction = pluginMenu:ShowAsync()
if selectedAction then
print("Selected Action:", selectedAction.Text, "with ActionId:", selectedAction.ActionId)
else
print("User did not select an action!")
end
end
end
toggle.Changed:Connect(onToggled)
CreateToolbar
Funkcja tworzenia paska narzędzi tworzy nowy PluginToolbar z podaną nazwą. Pasek narzędzi może następnie być używany do tworzenia przycisków pluginów.
Parametry
Widoczny tekst na pasku narzędzi, etykietujący grupę przycisków znajdującą się w środku.
Zwroty
Przykłady kodu
This code creates a toolbar with the name "ExampleToolbar".
plugin:CreateToolbar("ExampleToolbar")
Deactivate
Dezaktywuje dodatek plug-in. Spowoduje to odłączenie powiązanego PluginMouse, jeśli został aktywowany
Zobacz także:
- Plugin:Activate() , ustawia stan wtyczki wezwania na aktywny
- Plugin.Deactivation , wypala się, gdy wtyczka jest wyłączona
- Plugin.Unloading , zapala się natychmiast przed rozładowaniem lub ponownym załadowaniem wtyczki za pomocą dezaktywacji, dezaktywacji lub aktualizacji
Zwroty
GetMouse
Zdobądź mysz zwraca PluginMouse, które można używać, gdy wtyczka jest aktywna poprzez Plugin:Activate() .
Zwroty
Przykłady kodu
This code would print Button 1 pressed from PluginMouse each time the mouse's left button was clicked.
local mouse = plugin:GetMouse()
local function button1Down()
print("Button 1 pressed from PluginMouse")
end
mouse.Button1Down:Connect(button1Down)
GetSelectedRibbonTool
GetSelectedRibbonTool zwraca obecnie wybrane Enum.RibbonTool .Zwraca Enum, które odpowiada konkretnemu narzędziu.Wynikiem tego będzie to, czy narzędzie zostało wybrane ręcznie lub programowo za pomocą Plugin:SelectRibbonTool() .
Zwroty
Przykłady kodu
This code must be run from a plugin. This code selects the move tool, checks which tool is selected, then prints out to the console which tool is selected. SelectRibbonTool will not return the value until the next frame.
plugin:SelectRibbonTool(Enum.RibbonTool.Move, UDim2.new())
task.wait() -- wait for next frame
local selectedRibbonTool = plugin:GetSelectedRibbonTool()
print("The selected RibbonTool is", selectedRibbonTool)
GetSetting
Zwraca wcześniej zapisany wartość z podanym kluczem, lub nil jeśli podany klucz nie istnieje.
Ponieważ wiele instancji tego samego pluginu może działać jednocześnie (na przykład, jeśli wiele okien Studio jest otwartych), nie powinieneś polegać na tym, że ta wartość pozostaje taka sama z czasem.Inne instancje pluginów mogą aktualizować ustawienie w dowolnym momencie.
Wezwanie to może cicho zawieść i zwrócić nil, jeśli wiele instancji tego samego pluginu aktywnie odczytuje i zapisuje dane.Jeśli twój plugin oczekuje pisania do ustawień często, powinieneś sprawdzić dwukrotnie zwróconą wartość z tego wezwania po krótkim czasie, aby odróżnić ustawienie tymczasowo niedostępne od ustawienia niewystępującego.
Parametry
Zwroty
Przykłady kodu
The below example would print the value saved to the key FirstTime. If the key doesn't exist, it would print nil.
local RAN_BEFORE_KEY = "RanBefore"
local didRunBefore = plugin:GetSetting(RAN_BEFORE_KEY)
if didRunBefore then
print("Welcome back!")
else
plugin:SetSetting(RAN_BEFORE_KEY, true)
print("Welcome! Thanks for installing this plugin!")
end
IsActivated
Funkcja ta zwraca prawdę, jeśli ten plugin jest obecnie aktywny, po aktywacji za pomocą funkcji Plugin:Activate().
Zwroty
Boolean wskazujący, czy wtyczka jest obecnie aktywna.
IsActivatedWithExclusiveMouse
Funkcja ta zwraca prawdę, jeśli ten plugin jest obecnie aktywny z ekskluzywną myszką, po aktywacji za pomocą funkcji Plugin:Activate().Jeśli to zwraca prawdę, PluginMouse można odzyskać za pomocą Plugin:GetMouse() .
Zobacz także:
- Plugin.Deactivation , wypala się, gdy wtyczka jest wyłączona
- Plugin.Unloading , zapala się natychmiast przed rozładowaniem lub ponownym załadowaniem wtyczki za pomocą dezaktywacji, dezaktywacji lub aktualizacji
Zwroty
Czy ten plugin jest obecnie aktywny z ekskluzywną myszką.
Negate
Odrzuca podane części i zwraca wynikowe operacje zaprzeczania.
Parametry
Zwroty
OpenScript
Używany do otwierania danego przykładu skryptu w oknie edytora, w Roblox Studio, na danej linii.Jeśli nie zostanie podana linia jako argument, domyślnie zostanie ustawiona na 1.
Parametry
Zwroty
Przykłady kodu
The following would open a newly created Script in Workspace, assuming the variable "Plugin" was already declared.
local newScript = Instance.new("Script")
newScript.Parent = workspace
plugin:OpenScript(newScript)
OpenWikiPage
Otwiera okno pomocy kontekstowej na stronę wiki, do której łączy się url.
Parametry
Zwroty
Przykłady kodu
The following, when executed in a plugin, will open the BasePart API page in the context help.
plugin:OpenWikiPage("API:Class/BasePart")
SaveSelectedToRoblox
Otwiera okno przesyłania dla obecnego wyboru użytkownika.
Zwroty
SelectRibbonTool
Aktywuje określone narzędzie Roblox Studio. Jeśli narzędzie otwiera okno, parametr pozycji określa, gdzie powinno być wyświetlone na ekranie.
Uwaga:
- Musi zostać wybrany obiekt, aby to działało poprawnie.
- Zmiana pól skali właściwości position nie wpłynie na okienka dialogowe.
Parametry
Zwroty
Separate
Rozdziela podane operacje związane z unią i zwraca uzyskane części.
Parametry
Zwroty
SetSetting
Przechowuje określoną wartość na późniejsze użycie pod danym kluczem.Wartość będzie istnieć nawet po zamknięciu Roblox Studio.Te ustawienia są zapisywane w formacie JSON jako mapa z kluczami ciągów.Matryce są automatycznie konwertowane na mapy, konwertując najpierw klucze liczbowe na struny.
Zauważ, że format JSON narzuca dodatkowe ograniczenia, w tym następujące znaki, które mogą zniszczyć plik ustawień:
- Wsteczki ( \ ) w kluczach lub wartościach, w szczególności uciekłe cytaty ( \" ).
- Nowe linie ( \n ) w kluczach.
- Cytaty ( " ) w kluczach.
- Okresy ( . ) w kluczach.
Wezwanie to może cicho zawieść, jeśli wiele instancji tego samego pluginu aktywnie odczytuje i zapisuje dane.Jeśli twój plugin oczekuje pisania do ustawień często, możesz sprawdzić, czy dane zostały poprawnie napisane, wywołując Plugin:GetSetting() .
Parametry
Zwroty
Przykłady kodu
This code sample demonstrates use of the Plugin:GetSetting() and Plugin:SetSetting() functions. They detect if a plugin is running for the first time by setting a key. If the key is true, it prints a "welcome back" message; otherwise it prints a "first run" message and sets the key to true.
local RAN_BEFORE_KEY = "RunBefore"
local hasRunBefore = plugin:GetSetting(RAN_BEFORE_KEY)
if hasRunBefore then
print("Welcome back!")
else
print("Thanks for installing this plugin!")
plugin:SetSetting(RAN_BEFORE_KEY, true)
end
StartDrag
Rozpoczęcie przeciągania inicjuje akcję przeciągania za pomocą słownika parametrów. Parametry są następujące:
<th>Typ</th><th>Domyślny</th><th>Opis</th></tr></thead><tbody><tr><td><b>Nadawca</b></td><td>ciąg</td><td><code>""</code></td><td>Określa źródło akcji przeciągania do celu upuszczenia</td></tr><tr><td><b>Typ mime</b></td><td>strunę</td><td><code>""</code></td><td>Typ <a href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types">MIME</a> rodzaju <b>danych</b>.</td></tr><tr><td><b>Dane</b></td><td>struny</td><td><code>""</code> ></td><td>Informacje o akcji przeciągania, na przykład o tym, co jest przeciągane. Powinny być używane przez cel upuszczenia.</td></tr><tr><td><b>Ikona myszy</b></td><td><code>Typ danych.Content</code> ></td><td><code>""</code> ></td><td>Ikona, którą należy używać dla kurora myszy podczas przeciągania. Jeśli jest pusta, używa domyślnego kurora.</td></tr><tr><td><b>Przeciągnij ikonę</b></td><td><code>Typ danych.Content</code> ></td><td><code>""</code> ></td><td>Obraz do renderowania pod kursorem myszy podczas przeciągania. Powinien reprezentować przedmiot, który jest przeciągany.</td></tr><tr><td><b>Punkt gorący</b></td><td><code>Typ danych.Vector2</code></td><td><code>Typ danych.Vector2.new(0, 0)</code></td><td>Odległość piksela od lewej góry, gdzie kurser powinien "przytrzymać" <b>ikonę przeciągania</b>.</td></tr></tbody>
Nazwa |
---|
Zobacz także:
Parametry
Zwroty
Przykłady kodu
This code sample creates two plugin widget windows: a drag source and a drop target. In the source window, the script creates a TextBox and TextButton to allow the user to begin a plugin drag action. The drop target window will display the MimeType of whatever is dragged into it using a TextLabel. If the MimeType is text/plain, it will display the plain text data instead.
To run this code sample as a plugin, paste it into a Script. Then, right-click the script in the Explorer window and choose "Save as Local Plugin".
assert(plugin, "This script must be run as a Studio plugin")
local widgetInfo = DockWidgetPluginGuiInfo.new(Enum.InitialDockState.Float, true, true, 300, 200)
local dragSourceWidget = plugin:CreateDockWidgetPluginGui("Drag Source", widgetInfo)
dragSourceWidget.Title = "Drag Source"
local textBox = Instance.new("TextBox")
textBox.Parent = dragSourceWidget
textBox.Size = UDim2.new(1, 0, 0, 32)
textBox.Text = "Hello, plugin drags"
local dragButton = Instance.new("TextButton")
dragButton.Size = UDim2.new(1, 0, 1, -32)
dragButton.Position = UDim2.new(0, 0, 0, 32)
dragButton.Text = "Edit the text above, then start drag here"
dragButton.Parent = dragSourceWidget
function onMouseButton1Down()
local dragData = {
Sender = "SomeDragSource",
MimeType = "text/plain",
Data = textBox.Text,
MouseIcon = "",
DragIcon = "",
HotSpot = Vector2.new(0, 0),
}
plugin:StartDrag(dragData)
end
dragButton.MouseButton1Down:Connect(onMouseButton1Down)
-- This widget will receive drops
local dragTargetWidget = plugin:CreateDockWidgetPluginGui("Drop Target", widgetInfo)
dragTargetWidget.Title = "Drop Target"
-- This TextLabel will display what was dropped
local textLabel = Instance.new("TextLabel")
textLabel.Size = UDim2.new(1, 0, 1, 0)
textLabel.Text = "Drop here..."
textLabel.Parent = dragTargetWidget
local function onDragDrop(dragData)
if dragData.MimeType == "text/plain" then
textLabel.Text = dragData.Data
else
textLabel.Text = dragData.MimeType
end
end
dragTargetWidget.PluginDragDropped:Connect(onDragDrop)
dragTargetWidget.PluginDragEntered:Connect(function(_dragData)
print("PluginDragEntered")
end)
dragTargetWidget.PluginDragLeft:Connect(function(_dragData)
print("PluginDragLeft")
end)
dragTargetWidget.PluginDragMoved:Connect(function(_dragData)
print("PluginDragMoved")
end)
Union
Połącza podane części i zwraca wynikową operację związku.
Parametry
Zwroty
CreateDockWidgetPluginGui
CreateDockWidgetPluginGui tworzy nowy DockWidgetPluginGui z podanego DockWidgetPluginGuiInfo.Pierwszy parametr, pluginGuiId, powinien być unikalną i spójną ciąg.Służy do zapisywania stanu docka widgetu i innych wewnętrznych szczegółów.
Parametry
Unikalny i spójny identyfikator używany do przechowywania stanu dokowania widgetu i innych wewnętrznych szczegółów.
Opisuje DockWidgetPluginGui tworzenie (pierwotny stan, rozmiar itp.).
Zwroty
Przykłady kodu
This code, when ran inside a Plugin, creates a DockWidgetPluginGui with a simple TextButton.
-- Create new 'DockWidgetPluginGuiInfo' object
local widgetInfo = DockWidgetPluginGuiInfo.new(
Enum.InitialDockState.Float, -- Widget will be initialized in floating panel
true, -- Widget will be initially enabled
false, -- Don't override the previous enabled state
200, -- Default width of the floating window
300, -- Default height of the floating window
150, -- Minimum width of the floating window (optional)
150 -- Minimum height of the floating window (optional)
)
-- Create new widget GUI
local testWidget = plugin:CreateDockWidgetPluginGui("TestWidget", widgetInfo)
local testButton = Instance.new("TextButton")
testButton.BorderSizePixel = 0
testButton.TextSize = 20
testButton.TextColor3 = Color3.new(1, 0.2, 0.4)
testButton.AnchorPoint = Vector2.new(0.5, 0.5)
testButton.Size = UDim2.new(1, 0, 1, 0)
testButton.Position = UDim2.new(0.5, 0, 0.5, 0)
testButton.SizeConstraint = Enum.SizeConstraint.RelativeYY
testButton.Text = "Click Me"
testButton.Parent = testWidget
ImportFbxAnimation
Funkcja ta wymaga od użytkownika otwarcia pliku animacji .fbx, który można załadować na rigModel, a następnie dokonuje wstawienia animacji jako KeyframeSequence w Workspace.
Parametry
Zwroty
ImportFbxRig
Wymaga od użytkownika otwarcia pliku .fbx, przesyła poszczególne komponenty modelu jako siatki i generuje postać do użycia w animacja, która jest wczytywana w Workspace.
Parametry
Zwroty
PromptForExistingAssetId
Otwiera okno w Roblox Studio, które wymaga od użytkownika wyboru zasobu na podstawie określonego assetType.Zwraca, jaki ID aktywa został wybrany, lub -1, jeśli okno zostało zamknięte.
Parametry
Zwroty
Zdarzenia
Deactivation
Wystrzeliwany, gdy Plugin jest wyłączony.Występuje to, gdy kod pluginów wezwie Plugin:Deactivate() lub dlatego, że jakiś inny plugin nazwał Plugin:Activate(), który zmusza wszystkie inne pluginy do utraty aktywnego stanu.
Zobacz także:
- Plugin.Unloading , zapala się natychmiast przed rozładowaniem lub ponownym załadowaniem wtyczki za pomocą dezaktywacji, dezaktywacji lub aktualizacji
Unloading
To wydarzenie uruchamia się natychmiast przed tym, jak Plugin przestanie działać.Wtyczki są rozładowane, gdy są wyłączone, usuwane, mają zostać zaktualizowane lub gdy miejsce się zamyka.
Umożliwia pluginowi sprzątanie po sobie, zanim jego skrypty przestaną działać, np.aby usunąć niepotrzebne instancje z DataModel.Jeśli wtyczka nie zostanie prawidłowo wyczyszczona, pozostaną stare kopie.Kiedy to się zdarza, użytkownicy mogą zostać zmuszeni do zamknięcia i ponownego otwarcia miejsca, które jest złym doświadczeniem użytkownika.
Instancje związane z wtyczkami, takie jak PluginToolbarButtons , DockWidgetPluginGuis i PluginGuis są automatycznie czyszczone, gdy wtyczka jest rozładowywana, więc nie ma potrzeby ich usuwania.