# Base container type that stores data to find the neighbors of an agent. extends Reference class_name GSAIProximity # The owning agent whose neighbors are found in the group var agent: GSAISteeringAgent # The agents who are part of this group and could be potential neighbors var agents := [] func _init(_agent: GSAISteeringAgent, _agents: Array) -> void: self.agent = _agent self.agents = _agents # Returns a number of neighbors based on a `callback` function. # # `_find_neighbors` calls `callback` for each agent in the `agents` array and # adds one to the count if its `callback` returns true. # tags: virtual func _find_neighbors(_callback: FuncRef) -> int: return 0