Fix Camera2D crashes

This commit is contained in:
kobewi 2023-02-01 23:32:13 +01:00
parent 0a9e6e478e
commit 724d6581d6
2 changed files with 6 additions and 6 deletions

View file

@ -250,7 +250,7 @@ void Camera2D::_notification(int p_what) {
add_to_group(group_name);
add_to_group(canvas_group_name);
if (enabled && !viewport->get_camera_2d()) {
if (!Engine::get_singleton()->is_editor_hint() && enabled && !viewport->get_camera_2d()) {
make_current();
}
@ -260,11 +260,11 @@ void Camera2D::_notification(int p_what) {
} break;
case NOTIFICATION_EXIT_TREE: {
remove_from_group(group_name);
remove_from_group(canvas_group_name);
if (is_current()) {
clear_current();
}
remove_from_group(group_name);
remove_from_group(canvas_group_name);
viewport = nullptr;
} break;

View file

@ -1061,10 +1061,10 @@ void Viewport::assign_next_enabled_camera_2d(const StringName &p_camera_group) {
get_tree()->get_nodes_in_group(p_camera_group, &camera_list);
Camera2D *new_camera = nullptr;
for (const Node *E : camera_list) {
const Camera2D *cam = Object::cast_to<Camera2D>(E);
for (Node *E : camera_list) {
Camera2D *cam = Object::cast_to<Camera2D>(E);
if (cam->is_enabled()) {
new_camera = const_cast<Camera2D *>(cam);
new_camera = cam;
break;
}
}