# ChangeHistoryService(ロブロックス クラス) > **Must** be used by plugins to communicate to Studio how to undo and redo the changes which they make to the experience. - URL:https://roblox.minecraft-okinawa.com/reference/classes/ChangeHistoryService/ - 公式:https://create.roblox.com/docs/reference/engine/classes/ChangeHistoryService - 受け継いでいるクラス:Instance ## メソッド - `ChangeHistoryService:FinishRecording(identifier: string, operation: FinishRecordingOperation, finalOptions: Dictionary?): ()`:Communicates to Studio that the identified recording is finished and to take the final operation to complete the recording. - `ChangeHistoryService:GetCanRedo(): Tuple`:Returns whether there is an action available to redo and, if so, the name of that action. - `ChangeHistoryService:GetCanUndo(): Tuple`:Returns whether there is an action available to undo and, if so, the name of that action. - `ChangeHistoryService:IsRecordingInProgress(identifier: string?): boolean`:Returns whether the plugin currently has a recording in progress, optionally checking for a specific recording identifier. - `ChangeHistoryService:Redo(): ()`:Re-executes the most recently undone action, advancing forward through the undo/redo history. - `ChangeHistoryService:ResetWaypoints(): ()`:Clears the undo/redo history by collapsing it into a single base waypoint. - `ChangeHistoryService:SetEnabled(state: boolean): ()`:Sets whether or not the ChangeHistoryService is enabled. - `ChangeHistoryService:SetWaypoint(name: string): ()`:Sets a new waypoint which can be used as an undo or redo point. - `ChangeHistoryService:TryBeginRecording(name: string, displayName: string?): string?`:Begins tracking changes made to the data model into a recording. - `ChangeHistoryService:Undo(): ()`:Reverts the most recent action, stepping backward through the undo/redo history. ## イベント - `ChangeHistoryService.OnRecordingFinished(name: string, displayName: string?, identifier: string?, operation: FinishRecordingOperation, finalOptions: Dictionary?)`:Fired when the user completes an action. Parameters come from Class.ChangeHistoryService:TryBeginRecording()|TryBeginRecording() and Class.ChangeHistoryService:FinishRecording()|FinishRecording(). - `ChangeHistoryService.OnRecordingStarted(name: string, displayName: string?)`:Fired when the user begins an action. Parameters come from Class.ChangeHistoryService:TryBeginRecording()|TryBeginRecording(). - `ChangeHistoryService.OnRedo(waypoint: string)`:Fires after an action is redone, reporting the name of the action that was replayed. - `ChangeHistoryService.OnUndo(waypoint: string)`:Fires after an action is undone, reporting the name of the action that was reverted. 英語の説明とメンバー一覧:Roblox Creator Documentation(CC BY 4.0)。日本語の解説はこのサイト独自のものです。 執筆:鈴木孝昌(現役プロジェクトマネージャー/プログラミング講師)/運営:沖縄マイクラ部 プログラミングスクール「クロスウェーブ」(https://minecraft-okinawa.com/)