extends RigidBody2D func _integrate_forces(state: PhysicsDirectBodyState2D): var contact_count = state.get_contact_count() for i in range(contact_count): #print("bb") var collider_object = state.get_contact_collider_object(i) if collider_object and collider_object.get_parent() is Player: handle_player_collision(collider_object.get_parent()) if collider_object and collider_object.get_parent() is Pool: handle_pool_collision(collider_object.get_parent()) func handle_player_collision(player: Player): if $"..".is_carrying() and player.is_carrying(): $"..".doubledrop(player) $"..".drop() player.drop() func handle_pool_collision(pool: Pool): $"..".exchange_with(pool)