// handle the collision of the tank // public override void _on_collision(PhysicsNode _other) { base._on_collision(_other); //push apart var collision_direction = _other.get_global_position() - get_global_position(); collision_direction.Normalize(); Vector2 new_pos = collision_direction * delta; set_position(get_local_position() - new_pos); Console.WriteLine("Tank collision result: ------------"); Console.WriteLine(new_pos); Console.WriteLine(get_local_position() - new_pos); speed = -speed; return; }