class_name State
extends Node


func _ready() -> void:
	set_physics_process(false)
	set_process_input(false)


func _notification(what: int) -> void:
	if what == GameConstants.NOTIFICATION_ENTER_STATE:
		_enter_state()
		set_physics_process(true)
		set_process_input(true)
		
	elif what == GameConstants.NOTIFICATION_EXIT_STATE:
		_exit_state()
		set_physics_process(false)
		set_process_input(false)


func _enter_state() -> void:
	pass


func _exit_state() -> void:
	pass
