Class CollisionObjectResolver
- Namespace
- GridPlacement.GDScript
- Assembly
- MoonBark.GridPlacement.GDScript.dll
Collision Object Resolver\n\nInternal utility for resolving collision objects and their test setups. Handles the logic for determining appropriate CollisionObject2D instances for layer checking and finding corresponding CollisionTestSetup2D objects.\n\nThis is an internal implementation detail of CollisionMapper and should not be used directly. Unit tests access it for testing the resolution logic.\n\n[b]Responsibilities:[/b] - Resolve CollisionObject2D for layer checking from various collision node types - Find appropriate CollisionTestSetup2D for collision objects - Validate collision object hierarchies - Provide type-safe collision object handling\n\n[b]Supported Collision Types:[/b] - CollisionObject2D (direct) - CollisionShape2D (via parent CollisionObject2D) - CollisionPolygon2D (via parent CollisionObject2D)
class CollisionObjectResolver extends RefCounted
Properties
collision_object
Result of collision object resolution
var collision_object: CollisionObject2D = null
test_setup
var test_setup = _find_test_setup_for_collision_object(collision_obj, test_setups)
is_valid
var is_valid: bool = false
error_message
var error_message: String = ""
test_setup
var test_setup = _find_test_setup_for_collision_object(collision_obj, test_setups)
polygon_children
var polygon_children = collision_obj.find_children("", "CollisionPolygon2D", true, false)
parent
var parent = collision_node.get_parent()
collision_obj
var collision_obj = parent as CollisionObject2D
test_setup
var test_setup = _find_test_setup_for_collision_object(collision_obj, test_setups)
t
var t = typeof(test_setups)
s
var s = test_setups[key]
Methods
resolve_collision_object
func resolve_collision_object(collision_node: Node2D, test_setups: Array[CollisionTestSetup2D]) -> ResolutionResult:
Parameters
collision_nodetest_setups
Returns
object_matches_layer_mask
func object_matches_layer_mask(collision_obj: CollisionObject2D, layer_mask: int) -> bool:
Parameters
collision_objlayer_mask