Classe motore
ChangeHistoryService
*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.
Sommario
Metodi
FinishRecording(identifier: string,operation: Enum.FinishRecordingOperation,finalOptions: Dictionary?):() |
IsRecordingInProgress(identifier: string?):boolean |
Redo():() |
ResetWaypoints():() |
SetEnabled(state: boolean):() |
SetWaypoint(name: string):() |
TryBeginRecording(name: string,displayName: string?):string? |
Undo():() |
Eventi
OnRecordingFinished(name: string,displayName: string?,identifier: string?,operation: Enum.FinishRecordingOperation,finalOptions: Dictionary?):RBXScriptSignal |
OnRecordingStarted(name: string,displayName: string?):RBXScriptSignal |
OnRedo(waypoint: string):RBXScriptSignal |
OnUndo(waypoint: string):RBXScriptSignal |
Riferimento API
Metodi
FinishRecording
ChangeHistoryService:FinishRecording(
):()
Parametri
Restituzioni
()
Campioni di codice
ChangeHistoryService:ProvaInizioRegistrazione
local ChangeHistoryService = game:GetService("ChangeHistoryService")
local Selection = game:GetService("Selection")
local toolbar = plugin:CreateToolbar("Plugin di Esempio")
local button = toolbar:CreateButton("Neonalo", "", "")
button.Click:Connect(function()
local parts = {}
for _, part in pairs(Selection:Get()) do
if part:IsA("BasePart") then
parts[#parts + 1] = part
end
end
if #parts < 1 then
-- Niente da fare.
return
end
local recording = ChangeHistoryService:TryBeginRecording("Imposta selezione su neon")
if not recording then
-- Gestisci errore qui. Questo indica che il tuo plugin ha iniziato una registrazione precedente
-- e non l'ha mai completata. Puoi avere solo una registrazione
-- attiva per plugin alla volta.
return
end
for _, part in pairs(parts) do
part.Material = Enum.Material.Neon
end
ChangeHistoryService:FinishRecording(recording, Enum.FinishRecordingOperation.Commit)
end)IsRecordingInProgress
Redo
ChangeHistoryService:Redo():()
Restituzioni
()
ResetWaypoints
ChangeHistoryService:ResetWaypoints():()
Restituzioni
()
SetWaypoint
Parametri
Restituzioni
()
Campioni di codice
ChangeHistoryService:SetWaypoint
local ChangeHistoryService = game:GetService("ChangeHistoryService")
local Selection = game:GetService("Selection")
local toolbar = plugin:CreateToolbar("Esempio di Plugin")
local button = toolbar:CreateButton("Neonalo", "", "")
button.Click:Connect(function()
local parts = {}
for _, part in pairs(Selection:Get()) do
if part:IsA("BasePart") then
parts[#parts + 1] = part
end
end
if #parts > 0 then
-- Chiamare SetWaypoint prima del lavoro non causerà problemi, tuttavia
-- è ridondante, è necessaria solo la chiamata DOPO il lavoro.
--ChangeHistoryService:SetWaypoint("Impostazione della selezione a neon")
for _, part in pairs(parts) do
part.Material = Enum.Material.Neon
end
-- Chiamare SetWaypoint DOPO aver completato il lavoro
ChangeHistoryService:SetWaypoint("Imposta selezione a neon")
else
-- Niente da fare. Non è necessario chiamare SetWaypoint nel caso in cui
-- l'azione non abbia portato a cambiamenti nell'esperienza.
end
end)TryBeginRecording
Restituzioni
Campioni di codice
ChangeHistoryService:ProvaInizioRegistrazione
local ChangeHistoryService = game:GetService("ChangeHistoryService")
local Selection = game:GetService("Selection")
local toolbar = plugin:CreateToolbar("Plugin di Esempio")
local button = toolbar:CreateButton("Neonalo", "", "")
button.Click:Connect(function()
local parts = {}
for _, part in pairs(Selection:Get()) do
if part:IsA("BasePart") then
parts[#parts + 1] = part
end
end
if #parts < 1 then
-- Niente da fare.
return
end
local recording = ChangeHistoryService:TryBeginRecording("Imposta selezione su neon")
if not recording then
-- Gestisci errore qui. Questo indica che il tuo plugin ha iniziato una registrazione precedente
-- e non l'ha mai completata. Puoi avere solo una registrazione
-- attiva per plugin alla volta.
return
end
for _, part in pairs(parts) do
part.Material = Enum.Material.Neon
end
ChangeHistoryService:FinishRecording(recording, Enum.FinishRecordingOperation.Commit)
end)Undo
ChangeHistoryService:Undo():()
Restituzioni
()
Eventi
OnRecordingFinished
ChangeHistoryService.OnRecordingFinished(
name:string, displayName:string?, identifier:string?, operation:Enum.FinishRecordingOperation, finalOptions:Dictionary?
Parametri
OnRecordingStarted