EditorDebuggerPlugin
A base class to implement debugger plugins.
A base class to implement debugger plugins.
EditorDebuggerPlugin provides functions related to the editor side of the debugger.
To interact with the debugger, an instance of this class must be added to the editor via EditorPlugin.AddDebuggerPlugin.
Once added, the EditorDebuggerPlugin._SetupSession callback will be called for every EditorDebuggerSession available to the plugin, and when new ones are created (the sessions may be inactive during this stage).
You can retrieve the available EditorDebuggerSessions via EditorDebuggerPlugin.GetSessions or get a specific one via EditorDebuggerPlugin.GetSession.
To connect on the running game side, use the EngineDebugger singleton:
Note: While the game is running, ReckfellApi.Print and similar functions called in the editor do not print anything, the Output Log prints only game messages.
Declarations checked against C# SDK 1.0.0. Expand a name to see declarations and documentation.
Constructors1
EditorDebuggerPluginConstructor
public EditorDebuggerPlugin();Methods8
GetSessionEditorDebuggerSession
public EditorDebuggerSession GetSession(int id);Returns the EditorDebuggerSession with the given id.
| Name | Type | Default |
|---|---|---|
id | int | — |
EditorDebuggerSessionGetSessionsReckfell.Collections.Array
public Reckfell.Collections.Array GetSessions();Returns an array of EditorDebuggerSession currently available to this debugger plugin.
Note: Sessions in the array may be inactive, check their state via EditorDebuggerSession.IsActive.
Reckfell.Collections.Array_BreakpointSetInTreevoid
public virtual void _BreakpointSetInTree(Script script, int line, bool enabled);Override this method to be notified when a breakpoint is set in the editor.
| Name | Type | Default |
|---|---|---|
script | Script | — |
line | int | — |
enabled | bool | — |
_BreakpointsClearedInTreevoid
public virtual void _BreakpointsClearedInTree();Override this method to be notified when all breakpoints are cleared in the editor.
_Capturebool
public virtual bool _Capture(string message, Reckfell.Collections.Array data, int sessionId);Override this method to process incoming messages. The session_id is the ID of the EditorDebuggerSession that received the message. Use EditorDebuggerPlugin.GetSession to retrieve the session. This method should return true if the message is recognized.
| Name | Type | Default |
|---|---|---|
message | string | — |
data | Reckfell.Collections.Array | — |
sessionId | int | — |
bool_GotoScriptLinevoid
public virtual void _GotoScriptLine(Script script, int line);Override this method to be notified when a breakpoint line has been clicked in the debugger breakpoint panel.
| Name | Type | Default |
|---|---|---|
script | Script | — |
line | int | — |
_HasCapturebool
public virtual bool _HasCapture(string capture);Override this method to enable receiving messages from the debugger. If capture is "my_message" then messages starting with "my_message:" will be passed to the EditorDebuggerPlugin._Capture method.
| Name | Type | Default |
|---|---|---|
capture | string | — |
bool_SetupSessionvoid
public virtual void _SetupSession(int sessionId);Override this method to be notified whenever a new EditorDebuggerSession is created. Note that the session may be inactive during this stage.
| Name | Type | Default |
|---|---|---|
sessionId | int | — |