Exposes the internal debugger. [EngineDebugger] handles the communication between the editor and the running game. It is active in the running game. Messages can be sent/received through it. It also manages the profilers. Returns [code]true[/code] if a capture with the given name is present otherwise [code]false[/code]. Returns [code]true[/code] if a profiler with the given name is present otherwise [code]false[/code]. Returns [code]true[/code] if the debugger is active otherwise [code]false[/code]. Returns [code]true[/code] if a profiler with the given name is present and active otherwise [code]false[/code]. Calls the [code]add[/code] callable of the profiler with given [code]name[/code] and [code]data[/code]. Calls the [code]toggle[/code] callable of the profiler with given [code]name[/code] and [code]arguments[/code]. Enables/Disables the same profiler depending on [code]enable[/code] argument. Registers a message capture with given [code]name[/code]. If [code]name[/code] is "my_message" then messages starting with "my_message:" will be called with the given callable. Callable must accept a message string and a data array as argument. If the message and data are valid then callable must return [code]true[/code] otherwise [code]false[/code]. Registers a profiler with the given [code]name[/code]. [code]toggle[/code] callable is called when the profiler is enabled/disabled. It must take an argument array as an argument. [code]add[/code] callable is called when data is added to profiler using [method EngineDebugger.profiler_add_frame_data]. It must take a data array as argument. [code]tick[/code] callable is called at every active profiler iteration. It must take frame time, idle time, physics time, and physics idle time as arguments. Sends a message with given [code]message[/code] and [code]data[/code] array. Unregisters the message capture with given [code]name[/code]. Unregisters a profiler with given [code]name[/code].