<?xml version="1.0" encoding="UTF-8" ?>
<class name="VisibleOnScreenEnabler2D" inherits="VisibleOnScreenNotifier2D" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
	<brief_description>
		A rectangular region of 2D space that, when visible on screen, enables a target node.
	</brief_description>
	<description>
		[VisibleOnScreenEnabler2D] contains a rectangular region of 2D space and a target node. The target node will be automatically enabled (via its [member Node.process_mode] property) when any part of this region becomes visible on the screen, and automatically disabled otherwise. This can for example be used to activate enemies only when the player approaches them.
		See [VisibleOnScreenNotifier2D] if you only want to be notified when the region is visible on screen.
		[b]Note:[/b] [VisibleOnScreenEnabler2D] uses the render culling code to determine whether it's visible on screen, so it won't function unless [member CanvasItem.visible] is set to [code]true[/code].
	</description>
	<tutorials>
	</tutorials>
	<members>
		<member name="enable_mode" type="int" setter="set_enable_mode" getter="get_enable_mode" enum="VisibleOnScreenEnabler2D.EnableMode" default="0">
			Determines how the target node is enabled. Corresponds to [enum Node.ProcessMode]. When the node is disabled, it always uses [constant Node.PROCESS_MODE_DISABLED].
		</member>
		<member name="enable_node_path" type="NodePath" setter="set_enable_node_path" getter="get_enable_node_path" default="NodePath(&quot;..&quot;)">
			The path to the target node, relative to the [VisibleOnScreenEnabler2D]. The target node is cached; it's only assigned when setting this property (if the [VisibleOnScreenEnabler2D] is inside the scene tree) and every time the [VisibleOnScreenEnabler2D] enters the scene tree. If the path is empty, no node will be affected. If the path is invalid, an error is also generated.
		</member>
	</members>
	<constants>
		<constant name="ENABLE_MODE_INHERIT" value="0" enum="EnableMode">
			Corresponds to [constant Node.PROCESS_MODE_INHERIT].
		</constant>
		<constant name="ENABLE_MODE_ALWAYS" value="1" enum="EnableMode">
			Corresponds to [constant Node.PROCESS_MODE_ALWAYS].
		</constant>
		<constant name="ENABLE_MODE_WHEN_PAUSED" value="2" enum="EnableMode">
			Corresponds to [constant Node.PROCESS_MODE_WHEN_PAUSED].
		</constant>
	</constants>
</class>
