Use NULL instead of COND checks when appropriate

Restricted to scene
This commit is contained in:
Ninni Pipping 2023-06-06 14:59:54 +02:00
parent 9723077f4f
commit dcd2b883eb
43 changed files with 123 additions and 126 deletions

View File

@ -135,7 +135,7 @@ int Area2D::get_priority() const {
void Area2D::_body_enter_tree(ObjectID p_id) { void Area2D::_body_enter_tree(ObjectID p_id) {
Object *obj = ObjectDB::get_instance(p_id); Object *obj = ObjectDB::get_instance(p_id);
Node *node = Object::cast_to<Node>(obj); Node *node = Object::cast_to<Node>(obj);
ERR_FAIL_COND(!node); ERR_FAIL_NULL(node);
HashMap<ObjectID, BodyState>::Iterator E = body_map.find(p_id); HashMap<ObjectID, BodyState>::Iterator E = body_map.find(p_id);
ERR_FAIL_COND(!E); ERR_FAIL_COND(!E);
@ -151,7 +151,7 @@ void Area2D::_body_enter_tree(ObjectID p_id) {
void Area2D::_body_exit_tree(ObjectID p_id) { void Area2D::_body_exit_tree(ObjectID p_id) {
Object *obj = ObjectDB::get_instance(p_id); Object *obj = ObjectDB::get_instance(p_id);
Node *node = Object::cast_to<Node>(obj); Node *node = Object::cast_to<Node>(obj);
ERR_FAIL_COND(!node); ERR_FAIL_NULL(node);
HashMap<ObjectID, BodyState>::Iterator E = body_map.find(p_id); HashMap<ObjectID, BodyState>::Iterator E = body_map.find(p_id);
ERR_FAIL_COND(!E); ERR_FAIL_COND(!E);
ERR_FAIL_COND(!E->value.in_tree); ERR_FAIL_COND(!E->value.in_tree);
@ -231,7 +231,7 @@ void Area2D::_body_inout(int p_status, const RID &p_body, ObjectID p_instance, i
void Area2D::_area_enter_tree(ObjectID p_id) { void Area2D::_area_enter_tree(ObjectID p_id) {
Object *obj = ObjectDB::get_instance(p_id); Object *obj = ObjectDB::get_instance(p_id);
Node *node = Object::cast_to<Node>(obj); Node *node = Object::cast_to<Node>(obj);
ERR_FAIL_COND(!node); ERR_FAIL_NULL(node);
HashMap<ObjectID, AreaState>::Iterator E = area_map.find(p_id); HashMap<ObjectID, AreaState>::Iterator E = area_map.find(p_id);
ERR_FAIL_COND(!E); ERR_FAIL_COND(!E);
@ -247,7 +247,7 @@ void Area2D::_area_enter_tree(ObjectID p_id) {
void Area2D::_area_exit_tree(ObjectID p_id) { void Area2D::_area_exit_tree(ObjectID p_id) {
Object *obj = ObjectDB::get_instance(p_id); Object *obj = ObjectDB::get_instance(p_id);
Node *node = Object::cast_to<Node>(obj); Node *node = Object::cast_to<Node>(obj);
ERR_FAIL_COND(!node); ERR_FAIL_NULL(node);
HashMap<ObjectID, AreaState>::Iterator E = area_map.find(p_id); HashMap<ObjectID, AreaState>::Iterator E = area_map.find(p_id);
ERR_FAIL_COND(!E); ERR_FAIL_COND(!E);
ERR_FAIL_COND(!E->value.in_tree); ERR_FAIL_COND(!E->value.in_tree);

View File

@ -1163,7 +1163,7 @@ void CPUParticles2D::_notification(int p_what) {
void CPUParticles2D::convert_from_particles(Node *p_particles) { void CPUParticles2D::convert_from_particles(Node *p_particles) {
GPUParticles2D *gpu_particles = Object::cast_to<GPUParticles2D>(p_particles); GPUParticles2D *gpu_particles = Object::cast_to<GPUParticles2D>(p_particles);
ERR_FAIL_COND_MSG(!gpu_particles, "Only GPUParticles2D nodes can be converted to CPUParticles2D."); ERR_FAIL_NULL_MSG(gpu_particles, "Only GPUParticles2D nodes can be converted to CPUParticles2D.");
set_emitting(gpu_particles->is_emitting()); set_emitting(gpu_particles->is_emitting());
set_amount(gpu_particles->get_amount()); set_amount(gpu_particles->get_amount());

View File

@ -403,7 +403,7 @@ Transform2D Node2D::get_relative_transform_to_parent(const Node *p_parent) const
Node2D *parent_2d = Object::cast_to<Node2D>(get_parent()); Node2D *parent_2d = Object::cast_to<Node2D>(get_parent());
ERR_FAIL_COND_V(!parent_2d, Transform2D()); ERR_FAIL_NULL_V(parent_2d, Transform2D());
if (p_parent == parent_2d) { if (p_parent == parent_2d) {
return get_transform(); return get_transform();
} else { } else {

View File

@ -162,14 +162,14 @@ TypedArray<PhysicsBody2D> PhysicsBody2D::get_collision_exceptions() {
void PhysicsBody2D::add_collision_exception_with(Node *p_node) { void PhysicsBody2D::add_collision_exception_with(Node *p_node) {
ERR_FAIL_NULL(p_node); ERR_FAIL_NULL(p_node);
PhysicsBody2D *physics_body = Object::cast_to<PhysicsBody2D>(p_node); PhysicsBody2D *physics_body = Object::cast_to<PhysicsBody2D>(p_node);
ERR_FAIL_COND_MSG(!physics_body, "Collision exception only works between two nodes that inherit from PhysicsBody2D."); ERR_FAIL_NULL_MSG(physics_body, "Collision exception only works between two nodes that inherit from PhysicsBody2D.");
PhysicsServer2D::get_singleton()->body_add_collision_exception(get_rid(), physics_body->get_rid()); PhysicsServer2D::get_singleton()->body_add_collision_exception(get_rid(), physics_body->get_rid());
} }
void PhysicsBody2D::remove_collision_exception_with(Node *p_node) { void PhysicsBody2D::remove_collision_exception_with(Node *p_node) {
ERR_FAIL_NULL(p_node); ERR_FAIL_NULL(p_node);
PhysicsBody2D *physics_body = Object::cast_to<PhysicsBody2D>(p_node); PhysicsBody2D *physics_body = Object::cast_to<PhysicsBody2D>(p_node);
ERR_FAIL_COND_MSG(!physics_body, "Collision exception only works between two nodes that inherit from PhysicsBody2D."); ERR_FAIL_NULL_MSG(physics_body, "Collision exception only works between two nodes that inherit from PhysicsBody2D.");
PhysicsServer2D::get_singleton()->body_remove_collision_exception(get_rid(), physics_body->get_rid()); PhysicsServer2D::get_singleton()->body_remove_collision_exception(get_rid(), physics_body->get_rid());
} }
@ -323,9 +323,8 @@ AnimatableBody2D::AnimatableBody2D() :
void RigidBody2D::_body_enter_tree(ObjectID p_id) { void RigidBody2D::_body_enter_tree(ObjectID p_id) {
Object *obj = ObjectDB::get_instance(p_id); Object *obj = ObjectDB::get_instance(p_id);
Node *node = Object::cast_to<Node>(obj); Node *node = Object::cast_to<Node>(obj);
ERR_FAIL_COND(!node); ERR_FAIL_NULL(node);
ERR_FAIL_NULL(contact_monitor);
ERR_FAIL_COND(!contact_monitor);
HashMap<ObjectID, BodyState>::Iterator E = contact_monitor->body_map.find(p_id); HashMap<ObjectID, BodyState>::Iterator E = contact_monitor->body_map.find(p_id);
ERR_FAIL_COND(!E); ERR_FAIL_COND(!E);
ERR_FAIL_COND(E->value.in_scene); ERR_FAIL_COND(E->value.in_scene);
@ -345,8 +344,8 @@ void RigidBody2D::_body_enter_tree(ObjectID p_id) {
void RigidBody2D::_body_exit_tree(ObjectID p_id) { void RigidBody2D::_body_exit_tree(ObjectID p_id) {
Object *obj = ObjectDB::get_instance(p_id); Object *obj = ObjectDB::get_instance(p_id);
Node *node = Object::cast_to<Node>(obj); Node *node = Object::cast_to<Node>(obj);
ERR_FAIL_COND(!node); ERR_FAIL_NULL(node);
ERR_FAIL_COND(!contact_monitor); ERR_FAIL_NULL(contact_monitor);
HashMap<ObjectID, BodyState>::Iterator E = contact_monitor->body_map.find(p_id); HashMap<ObjectID, BodyState>::Iterator E = contact_monitor->body_map.find(p_id);
ERR_FAIL_COND(!E); ERR_FAIL_COND(!E);
ERR_FAIL_COND(!E->value.in_scene); ERR_FAIL_COND(!E->value.in_scene);
@ -370,7 +369,7 @@ void RigidBody2D::_body_inout(int p_status, const RID &p_body, ObjectID p_instan
Object *obj = ObjectDB::get_instance(objid); Object *obj = ObjectDB::get_instance(objid);
Node *node = Object::cast_to<Node>(obj); Node *node = Object::cast_to<Node>(obj);
ERR_FAIL_COND(!contact_monitor); ERR_FAIL_NULL(contact_monitor);
HashMap<ObjectID, BodyState>::Iterator E = contact_monitor->body_map.find(objid); HashMap<ObjectID, BodyState>::Iterator E = contact_monitor->body_map.find(objid);
ERR_FAIL_COND(!body_in && !E); ERR_FAIL_COND(!body_in && !E);
@ -849,7 +848,7 @@ RigidBody2D::CCDMode RigidBody2D::get_continuous_collision_detection_mode() cons
} }
TypedArray<Node2D> RigidBody2D::get_colliding_bodies() const { TypedArray<Node2D> RigidBody2D::get_colliding_bodies() const {
ERR_FAIL_COND_V(!contact_monitor, TypedArray<Node2D>()); ERR_FAIL_NULL_V(contact_monitor, TypedArray<Node2D>());
TypedArray<Node2D> ret; TypedArray<Node2D> ret;
ret.resize(contact_monitor->body_map.size()); ret.resize(contact_monitor->body_map.size());

View File

@ -183,7 +183,7 @@ void RayCast2D::_update_raycast_state() {
ERR_FAIL_COND(w2d.is_null()); ERR_FAIL_COND(w2d.is_null());
PhysicsDirectSpaceState2D *dss = PhysicsServer2D::get_singleton()->space_get_direct_state(w2d->get_space()); PhysicsDirectSpaceState2D *dss = PhysicsServer2D::get_singleton()->space_get_direct_state(w2d->get_space());
ERR_FAIL_COND(!dss); ERR_FAIL_NULL(dss);
Transform2D gt = get_global_transform(); Transform2D gt = get_global_transform();

View File

@ -293,7 +293,7 @@ void ShapeCast2D::_update_shapecast_state() {
ERR_FAIL_COND(w2d.is_null()); ERR_FAIL_COND(w2d.is_null());
PhysicsDirectSpaceState2D *dss = PhysicsServer2D::get_singleton()->space_get_direct_state(w2d->get_space()); PhysicsDirectSpaceState2D *dss = PhysicsServer2D::get_singleton()->space_get_direct_state(w2d->get_space());
ERR_FAIL_COND(!dss); ERR_FAIL_NULL(dss);
Transform2D gt = get_global_transform(); Transform2D gt = get_global_transform();

View File

@ -406,7 +406,7 @@ void Bone2D::apply_rest() {
} }
int Bone2D::get_index_in_skeleton() const { int Bone2D::get_index_in_skeleton() const {
ERR_FAIL_COND_V(!skeleton, -1); ERR_FAIL_NULL_V(skeleton, -1);
skeleton->_update_bone_setup(); skeleton->_update_bone_setup();
return skeleton_index; return skeleton_index;
} }

View File

@ -190,7 +190,7 @@ void Area3D::_initialize_wind() {
void Area3D::_body_enter_tree(ObjectID p_id) { void Area3D::_body_enter_tree(ObjectID p_id) {
Object *obj = ObjectDB::get_instance(p_id); Object *obj = ObjectDB::get_instance(p_id);
Node *node = Object::cast_to<Node>(obj); Node *node = Object::cast_to<Node>(obj);
ERR_FAIL_COND(!node); ERR_FAIL_NULL(node);
HashMap<ObjectID, BodyState>::Iterator E = body_map.find(p_id); HashMap<ObjectID, BodyState>::Iterator E = body_map.find(p_id);
ERR_FAIL_COND(!E); ERR_FAIL_COND(!E);
@ -206,7 +206,7 @@ void Area3D::_body_enter_tree(ObjectID p_id) {
void Area3D::_body_exit_tree(ObjectID p_id) { void Area3D::_body_exit_tree(ObjectID p_id) {
Object *obj = ObjectDB::get_instance(p_id); Object *obj = ObjectDB::get_instance(p_id);
Node *node = Object::cast_to<Node>(obj); Node *node = Object::cast_to<Node>(obj);
ERR_FAIL_COND(!node); ERR_FAIL_NULL(node);
HashMap<ObjectID, BodyState>::Iterator E = body_map.find(p_id); HashMap<ObjectID, BodyState>::Iterator E = body_map.find(p_id);
ERR_FAIL_COND(!E); ERR_FAIL_COND(!E);
ERR_FAIL_COND(!E->value.in_tree); ERR_FAIL_COND(!E->value.in_tree);
@ -379,7 +379,7 @@ void Area3D::set_monitoring(bool p_enable) {
void Area3D::_area_enter_tree(ObjectID p_id) { void Area3D::_area_enter_tree(ObjectID p_id) {
Object *obj = ObjectDB::get_instance(p_id); Object *obj = ObjectDB::get_instance(p_id);
Node *node = Object::cast_to<Node>(obj); Node *node = Object::cast_to<Node>(obj);
ERR_FAIL_COND(!node); ERR_FAIL_NULL(node);
HashMap<ObjectID, AreaState>::Iterator E = area_map.find(p_id); HashMap<ObjectID, AreaState>::Iterator E = area_map.find(p_id);
ERR_FAIL_COND(!E); ERR_FAIL_COND(!E);
@ -395,7 +395,7 @@ void Area3D::_area_enter_tree(ObjectID p_id) {
void Area3D::_area_exit_tree(ObjectID p_id) { void Area3D::_area_exit_tree(ObjectID p_id) {
Object *obj = ObjectDB::get_instance(p_id); Object *obj = ObjectDB::get_instance(p_id);
Node *node = Object::cast_to<Node>(obj); Node *node = Object::cast_to<Node>(obj);
ERR_FAIL_COND(!node); ERR_FAIL_NULL(node);
HashMap<ObjectID, AreaState>::Iterator E = area_map.find(p_id); HashMap<ObjectID, AreaState>::Iterator E = area_map.find(p_id);
ERR_FAIL_COND(!E); ERR_FAIL_COND(!E);
ERR_FAIL_COND(!E->value.in_tree); ERR_FAIL_COND(!E->value.in_tree);

View File

@ -112,11 +112,11 @@ void BoneAttachment3D::_update_external_skeleton_cache() {
external_skeleton_node_cache = ObjectID(); external_skeleton_node_cache = ObjectID();
if (has_node(external_skeleton_node)) { if (has_node(external_skeleton_node)) {
Node *node = get_node(external_skeleton_node); Node *node = get_node(external_skeleton_node);
ERR_FAIL_COND_MSG(!node, "Cannot update external skeleton cache: Node cannot be found!"); ERR_FAIL_NULL_MSG(node, "Cannot update external skeleton cache: Node cannot be found!");
// Make sure it's a skeleton3D // Make sure it's a skeleton3D
Skeleton3D *sk = Object::cast_to<Skeleton3D>(node); Skeleton3D *sk = Object::cast_to<Skeleton3D>(node);
ERR_FAIL_COND_MSG(!sk, "Cannot update external skeleton cache: Skeleton3D Nodepath does not point to a Skeleton3D node!"); ERR_FAIL_NULL_MSG(sk, "Cannot update external skeleton cache: Skeleton3D Nodepath does not point to a Skeleton3D node!");
external_skeleton_node_cache = node->get_instance_id(); external_skeleton_node_cache = node->get_instance_id();
} else { } else {
@ -126,11 +126,11 @@ void BoneAttachment3D::_update_external_skeleton_cache() {
parent_attachment->_update_external_skeleton_cache(); parent_attachment->_update_external_skeleton_cache();
if (parent_attachment->has_node(parent_attachment->external_skeleton_node)) { if (parent_attachment->has_node(parent_attachment->external_skeleton_node)) {
Node *node = parent_attachment->get_node(parent_attachment->external_skeleton_node); Node *node = parent_attachment->get_node(parent_attachment->external_skeleton_node);
ERR_FAIL_COND_MSG(!node, "Cannot update external skeleton cache: Parent's Skeleton3D node cannot be found!"); ERR_FAIL_NULL_MSG(node, "Cannot update external skeleton cache: Parent's Skeleton3D node cannot be found!");
// Make sure it's a skeleton3D // Make sure it's a skeleton3D
Skeleton3D *sk = Object::cast_to<Skeleton3D>(node); Skeleton3D *sk = Object::cast_to<Skeleton3D>(node);
ERR_FAIL_COND_MSG(!sk, "Cannot update external skeleton cache: Parent Skeleton3D Nodepath does not point to a Skeleton3D node!"); ERR_FAIL_NULL_MSG(sk, "Cannot update external skeleton cache: Parent Skeleton3D Nodepath does not point to a Skeleton3D node!");
external_skeleton_node_cache = node->get_instance_id(); external_skeleton_node_cache = node->get_instance_id();
external_skeleton_node = get_path_to(node); external_skeleton_node = get_path_to(node);
@ -190,7 +190,7 @@ void BoneAttachment3D::_transform_changed() {
if (override_pose) { if (override_pose) {
Skeleton3D *sk = _get_skeleton3d(); Skeleton3D *sk = _get_skeleton3d();
ERR_FAIL_COND_MSG(!sk, "Cannot override pose: Skeleton not found!"); ERR_FAIL_NULL_MSG(sk, "Cannot override pose: Skeleton not found!");
ERR_FAIL_INDEX_MSG(bone_idx, sk->get_bone_count(), "Cannot override pose: Bone index is out of range!"); ERR_FAIL_INDEX_MSG(bone_idx, sk->get_bone_count(), "Cannot override pose: Bone index is out of range!");
Transform3D our_trans = get_transform(); Transform3D our_trans = get_transform();

View File

@ -106,7 +106,7 @@ void Camera3D::_notification(int p_what) {
// and Spatial will handle it first, including clearing its reference to the Viewport, // and Spatial will handle it first, including clearing its reference to the Viewport,
// therefore making it impossible to subclasses to access it // therefore making it impossible to subclasses to access it
viewport = get_viewport(); viewport = get_viewport();
ERR_FAIL_COND(!viewport); ERR_FAIL_NULL(viewport);
bool first_camera = viewport->_camera_3d_add(this); bool first_camera = viewport->_camera_3d_add(this);
if (current || first_camera) { if (current || first_camera) {
@ -454,7 +454,7 @@ Ref<CameraAttributes> Camera3D::get_attributes() const {
void Camera3D::_attributes_changed() { void Camera3D::_attributes_changed() {
CameraAttributesPhysical *physical_attributes = Object::cast_to<CameraAttributesPhysical>(attributes.ptr()); CameraAttributesPhysical *physical_attributes = Object::cast_to<CameraAttributesPhysical>(attributes.ptr());
ERR_FAIL_COND(!physical_attributes); ERR_FAIL_NULL(physical_attributes);
fov = physical_attributes->get_fov(); fov = physical_attributes->get_fov();
near = physical_attributes->get_near(); near = physical_attributes->get_near();

View File

@ -1327,7 +1327,7 @@ void CPUParticles3D::_notification(int p_what) {
void CPUParticles3D::convert_from_particles(Node *p_particles) { void CPUParticles3D::convert_from_particles(Node *p_particles) {
GPUParticles3D *gpu_particles = Object::cast_to<GPUParticles3D>(p_particles); GPUParticles3D *gpu_particles = Object::cast_to<GPUParticles3D>(p_particles);
ERR_FAIL_COND_MSG(!gpu_particles, "Only GPUParticles3D nodes can be converted to CPUParticles3D."); ERR_FAIL_NULL_MSG(gpu_particles, "Only GPUParticles3D nodes can be converted to CPUParticles3D.");
set_emitting(gpu_particles->is_emitting()); set_emitting(gpu_particles->is_emitting());
set_amount(gpu_particles->get_amount()); set_amount(gpu_particles->get_amount());

View File

@ -204,12 +204,12 @@ void Label3D::_notification(int p_what) {
_im_update(); _im_update();
} }
Viewport *viewport = get_viewport(); Viewport *viewport = get_viewport();
ERR_FAIL_COND(!viewport); ERR_FAIL_NULL(viewport);
viewport->connect("size_changed", callable_mp(this, &Label3D::_font_changed)); viewport->connect("size_changed", callable_mp(this, &Label3D::_font_changed));
} break; } break;
case NOTIFICATION_EXIT_TREE: { case NOTIFICATION_EXIT_TREE: {
Viewport *viewport = get_viewport(); Viewport *viewport = get_viewport();
ERR_FAIL_COND(!viewport); ERR_FAIL_NULL(viewport);
viewport->disconnect("size_changed", callable_mp(this, &Label3D::_font_changed)); viewport->disconnect("size_changed", callable_mp(this, &Label3D::_font_changed));
} break; } break;
case NOTIFICATION_TRANSLATION_CHANGED: { case NOTIFICATION_TRANSLATION_CHANGED: {

View File

@ -243,7 +243,7 @@ Node *MeshInstance3D::create_trimesh_collision_node() {
void MeshInstance3D::create_trimesh_collision() { void MeshInstance3D::create_trimesh_collision() {
StaticBody3D *static_body = Object::cast_to<StaticBody3D>(create_trimesh_collision_node()); StaticBody3D *static_body = Object::cast_to<StaticBody3D>(create_trimesh_collision_node());
ERR_FAIL_COND(!static_body); ERR_FAIL_NULL(static_body);
static_body->set_name(String(get_name()) + "_col"); static_body->set_name(String(get_name()) + "_col");
add_child(static_body, true); add_child(static_body, true);
@ -273,7 +273,7 @@ Node *MeshInstance3D::create_convex_collision_node(bool p_clean, bool p_simplify
void MeshInstance3D::create_convex_collision(bool p_clean, bool p_simplify) { void MeshInstance3D::create_convex_collision(bool p_clean, bool p_simplify) {
StaticBody3D *static_body = Object::cast_to<StaticBody3D>(create_convex_collision_node(p_clean, p_simplify)); StaticBody3D *static_body = Object::cast_to<StaticBody3D>(create_convex_collision_node(p_clean, p_simplify));
ERR_FAIL_COND(!static_body); ERR_FAIL_NULL(static_body);
static_body->set_name(String(get_name()) + "_col"); static_body->set_name(String(get_name()) + "_col");
add_child(static_body, true); add_child(static_body, true);
@ -312,7 +312,7 @@ Node *MeshInstance3D::create_multiple_convex_collisions_node(const Ref<MeshConve
void MeshInstance3D::create_multiple_convex_collisions(const Ref<MeshConvexDecompositionSettings> &p_settings) { void MeshInstance3D::create_multiple_convex_collisions(const Ref<MeshConvexDecompositionSettings> &p_settings) {
StaticBody3D *static_body = Object::cast_to<StaticBody3D>(create_multiple_convex_collisions_node(p_settings)); StaticBody3D *static_body = Object::cast_to<StaticBody3D>(create_multiple_convex_collisions_node(p_settings));
ERR_FAIL_COND(!static_body); ERR_FAIL_NULL(static_body);
static_body->set_name(String(get_name()) + "_col"); static_body->set_name(String(get_name()) + "_col");
add_child(static_body, true); add_child(static_body, true);

View File

@ -135,7 +135,7 @@ void Node3D::_notification(int p_what) {
switch (p_what) { switch (p_what) {
case NOTIFICATION_ENTER_TREE: { case NOTIFICATION_ENTER_TREE: {
ERR_FAIL_COND(!get_tree()); ERR_FAIL_NULL(get_tree());
Node *p = get_parent(); Node *p = get_parent();
if (p) { if (p) {
@ -186,7 +186,7 @@ void Node3D::_notification(int p_what) {
parent = parent->get_parent(); parent = parent->get_parent();
} }
ERR_FAIL_COND(!data.viewport); ERR_FAIL_NULL(data.viewport);
if (get_script_instance()) { if (get_script_instance()) {
get_script_instance()->call(SceneStringNames::get_singleton()->_enter_world); get_script_instance()->call(SceneStringNames::get_singleton()->_enter_world);
@ -379,7 +379,7 @@ Transform3D Node3D::get_relative_transform(const Node *p_parent) const {
return Transform3D(); return Transform3D();
} }
ERR_FAIL_COND_V(!data.parent, Transform3D()); ERR_FAIL_NULL_V(data.parent, Transform3D());
if (p_parent == data.parent) { if (p_parent == data.parent) {
return get_transform(); return get_transform();
@ -743,7 +743,7 @@ bool Node3D::is_set_as_top_level() const {
Ref<World3D> Node3D::get_world_3d() const { Ref<World3D> Node3D::get_world_3d() const {
ERR_READ_THREAD_GUARD_V(Ref<World3D>()); // World3D can only be set from main thread, so it's safe to obtain on threads. ERR_READ_THREAD_GUARD_V(Ref<World3D>()); // World3D can only be set from main thread, so it's safe to obtain on threads.
ERR_FAIL_COND_V(!is_inside_world(), Ref<World3D>()); ERR_FAIL_COND_V(!is_inside_world(), Ref<World3D>());
ERR_FAIL_COND_V(!data.viewport, Ref<World3D>()); ERR_FAIL_NULL_V(data.viewport, Ref<World3D>());
return data.viewport->find_world_3d(); return data.viewport->find_world_3d();
} }
@ -977,10 +977,10 @@ void Node3D::_update_visibility_parent(bool p_update_root) {
return; return;
} }
Node *parent = get_node_or_null(visibility_parent_path); Node *parent = get_node_or_null(visibility_parent_path);
ERR_FAIL_COND_MSG(!parent, "Can't find visibility parent node at path: " + visibility_parent_path); ERR_FAIL_NULL_MSG(parent, "Can't find visibility parent node at path: " + visibility_parent_path);
ERR_FAIL_COND_MSG(parent == this, "The visibility parent can't be the same node."); ERR_FAIL_COND_MSG(parent == this, "The visibility parent can't be the same node.");
GeometryInstance3D *gi = Object::cast_to<GeometryInstance3D>(parent); GeometryInstance3D *gi = Object::cast_to<GeometryInstance3D>(parent);
ERR_FAIL_COND_MSG(!gi, "The visibility parent node must be a GeometryInstance3D, at path: " + visibility_parent_path); ERR_FAIL_NULL_MSG(gi, "The visibility parent node must be a GeometryInstance3D, at path: " + visibility_parent_path);
new_parent = gi ? gi->get_instance() : RID(); new_parent = gi ? gi->get_instance() : RID();
} else if (data.parent) { } else if (data.parent) {
new_parent = data.parent->data.visibility_parent; new_parent = data.parent->data.visibility_parent;

View File

@ -605,7 +605,7 @@ void OccluderInstance3D::_bake_node(Node *p_node, PackedVector3Array &r_vertices
} }
void OccluderInstance3D::bake_single_node(const Node3D *p_node, float p_simplification_distance, PackedVector3Array &r_vertices, PackedInt32Array &r_indices) { void OccluderInstance3D::bake_single_node(const Node3D *p_node, float p_simplification_distance, PackedVector3Array &r_vertices, PackedInt32Array &r_indices) {
ERR_FAIL_COND(!p_node); ERR_FAIL_NULL(p_node);
Transform3D xform = p_node->is_inside_tree() ? p_node->get_global_transform() : p_node->get_transform(); Transform3D xform = p_node->is_inside_tree() ? p_node->get_global_transform() : p_node->get_transform();

View File

@ -80,14 +80,14 @@ TypedArray<PhysicsBody3D> PhysicsBody3D::get_collision_exceptions() {
void PhysicsBody3D::add_collision_exception_with(Node *p_node) { void PhysicsBody3D::add_collision_exception_with(Node *p_node) {
ERR_FAIL_NULL(p_node); ERR_FAIL_NULL(p_node);
CollisionObject3D *collision_object = Object::cast_to<CollisionObject3D>(p_node); CollisionObject3D *collision_object = Object::cast_to<CollisionObject3D>(p_node);
ERR_FAIL_COND_MSG(!collision_object, "Collision exception only works between two nodes that inherit from CollisionObject3D (such as Area3D or PhysicsBody3D)."); ERR_FAIL_NULL_MSG(collision_object, "Collision exception only works between two nodes that inherit from CollisionObject3D (such as Area3D or PhysicsBody3D).");
PhysicsServer3D::get_singleton()->body_add_collision_exception(get_rid(), collision_object->get_rid()); PhysicsServer3D::get_singleton()->body_add_collision_exception(get_rid(), collision_object->get_rid());
} }
void PhysicsBody3D::remove_collision_exception_with(Node *p_node) { void PhysicsBody3D::remove_collision_exception_with(Node *p_node) {
ERR_FAIL_NULL(p_node); ERR_FAIL_NULL(p_node);
CollisionObject3D *collision_object = Object::cast_to<CollisionObject3D>(p_node); CollisionObject3D *collision_object = Object::cast_to<CollisionObject3D>(p_node);
ERR_FAIL_COND_MSG(!collision_object, "Collision exception only works between two nodes that inherit from CollisionObject3D (such as Area3D or PhysicsBody3D)."); ERR_FAIL_NULL_MSG(collision_object, "Collision exception only works between two nodes that inherit from CollisionObject3D (such as Area3D or PhysicsBody3D).");
PhysicsServer3D::get_singleton()->body_remove_collision_exception(get_rid(), collision_object->get_rid()); PhysicsServer3D::get_singleton()->body_remove_collision_exception(get_rid(), collision_object->get_rid());
} }
@ -379,9 +379,8 @@ AnimatableBody3D::AnimatableBody3D() :
void RigidBody3D::_body_enter_tree(ObjectID p_id) { void RigidBody3D::_body_enter_tree(ObjectID p_id) {
Object *obj = ObjectDB::get_instance(p_id); Object *obj = ObjectDB::get_instance(p_id);
Node *node = Object::cast_to<Node>(obj); Node *node = Object::cast_to<Node>(obj);
ERR_FAIL_COND(!node); ERR_FAIL_NULL(node);
ERR_FAIL_NULL(contact_monitor);
ERR_FAIL_COND(!contact_monitor);
HashMap<ObjectID, BodyState>::Iterator E = contact_monitor->body_map.find(p_id); HashMap<ObjectID, BodyState>::Iterator E = contact_monitor->body_map.find(p_id);
ERR_FAIL_COND(!E); ERR_FAIL_COND(!E);
ERR_FAIL_COND(E->value.in_tree); ERR_FAIL_COND(E->value.in_tree);
@ -402,8 +401,8 @@ void RigidBody3D::_body_enter_tree(ObjectID p_id) {
void RigidBody3D::_body_exit_tree(ObjectID p_id) { void RigidBody3D::_body_exit_tree(ObjectID p_id) {
Object *obj = ObjectDB::get_instance(p_id); Object *obj = ObjectDB::get_instance(p_id);
Node *node = Object::cast_to<Node>(obj); Node *node = Object::cast_to<Node>(obj);
ERR_FAIL_COND(!node); ERR_FAIL_NULL(node);
ERR_FAIL_COND(!contact_monitor); ERR_FAIL_NULL(contact_monitor);
HashMap<ObjectID, BodyState>::Iterator E = contact_monitor->body_map.find(p_id); HashMap<ObjectID, BodyState>::Iterator E = contact_monitor->body_map.find(p_id);
ERR_FAIL_COND(!E); ERR_FAIL_COND(!E);
ERR_FAIL_COND(!E->value.in_tree); ERR_FAIL_COND(!E->value.in_tree);
@ -427,7 +426,7 @@ void RigidBody3D::_body_inout(int p_status, const RID &p_body, ObjectID p_instan
Object *obj = ObjectDB::get_instance(objid); Object *obj = ObjectDB::get_instance(objid);
Node *node = Object::cast_to<Node>(obj); Node *node = Object::cast_to<Node>(obj);
ERR_FAIL_COND(!contact_monitor); ERR_FAIL_NULL(contact_monitor);
HashMap<ObjectID, BodyState>::Iterator E = contact_monitor->body_map.find(objid); HashMap<ObjectID, BodyState>::Iterator E = contact_monitor->body_map.find(objid);
ERR_FAIL_COND(!body_in && !E); ERR_FAIL_COND(!body_in && !E);
@ -962,7 +961,7 @@ bool RigidBody3D::is_contact_monitor_enabled() const {
} }
TypedArray<Node3D> RigidBody3D::get_colliding_bodies() const { TypedArray<Node3D> RigidBody3D::get_colliding_bodies() const {
ERR_FAIL_COND_V(!contact_monitor, TypedArray<Node3D>()); ERR_FAIL_NULL_V(contact_monitor, TypedArray<Node3D>());
TypedArray<Node3D> ret; TypedArray<Node3D> ret;
ret.resize(contact_monitor->body_map.size()); ret.resize(contact_monitor->body_map.size());

View File

@ -206,7 +206,7 @@ void RayCast3D::_update_raycast_state() {
ERR_FAIL_COND(w3d.is_null()); ERR_FAIL_COND(w3d.is_null());
PhysicsDirectSpaceState3D *dss = PhysicsServer3D::get_singleton()->space_get_direct_state(w3d->get_space()); PhysicsDirectSpaceState3D *dss = PhysicsServer3D::get_singleton()->space_get_direct_state(w3d->get_space());
ERR_FAIL_COND(!dss); ERR_FAIL_NULL(dss);
Transform3D gt = get_global_transform(); Transform3D gt = get_global_transform();

View File

@ -385,7 +385,7 @@ void ShapeCast3D::_update_shapecast_state() {
ERR_FAIL_COND(w3d.is_null()); ERR_FAIL_COND(w3d.is_null());
PhysicsDirectSpaceState3D *dss = PhysicsServer3D::get_singleton()->space_get_direct_state(w3d->get_space()); PhysicsDirectSpaceState3D *dss = PhysicsServer3D::get_singleton()->space_get_direct_state(w3d->get_space());
ERR_FAIL_COND(!dss); ERR_FAIL_NULL(dss);
Transform3D gt = get_global_transform(); Transform3D gt = get_global_transform();

View File

@ -680,7 +680,7 @@ void Skeleton3D::bind_physical_bone_to_bone(int p_bone, PhysicalBone3D *p_physic
const int bone_size = bones.size(); const int bone_size = bones.size();
ERR_FAIL_INDEX(p_bone, bone_size); ERR_FAIL_INDEX(p_bone, bone_size);
ERR_FAIL_COND(bones[p_bone].physical_bone); ERR_FAIL_COND(bones[p_bone].physical_bone);
ERR_FAIL_COND(!p_physical_bone); ERR_FAIL_NULL(p_physical_bone);
bones.write[p_bone].physical_bone = p_physical_bone; bones.write[p_bone].physical_bone = p_physical_bone;
_rebuild_physical_bones_cache(); _rebuild_physical_bones_cache();

View File

@ -593,14 +593,14 @@ TypedArray<PhysicsBody3D> SoftBody3D::get_collision_exceptions() {
void SoftBody3D::add_collision_exception_with(Node *p_node) { void SoftBody3D::add_collision_exception_with(Node *p_node) {
ERR_FAIL_NULL(p_node); ERR_FAIL_NULL(p_node);
CollisionObject3D *collision_object = Object::cast_to<CollisionObject3D>(p_node); CollisionObject3D *collision_object = Object::cast_to<CollisionObject3D>(p_node);
ERR_FAIL_COND_MSG(!collision_object, "Collision exception only works between two nodes that inherit from CollisionObject3D (such as Area3D or PhysicsBody3D)."); ERR_FAIL_NULL_MSG(collision_object, "Collision exception only works between two nodes that inherit from CollisionObject3D (such as Area3D or PhysicsBody3D).");
PhysicsServer3D::get_singleton()->soft_body_add_collision_exception(physics_rid, collision_object->get_rid()); PhysicsServer3D::get_singleton()->soft_body_add_collision_exception(physics_rid, collision_object->get_rid());
} }
void SoftBody3D::remove_collision_exception_with(Node *p_node) { void SoftBody3D::remove_collision_exception_with(Node *p_node) {
ERR_FAIL_NULL(p_node); ERR_FAIL_NULL(p_node);
CollisionObject3D *collision_object = Object::cast_to<CollisionObject3D>(p_node); CollisionObject3D *collision_object = Object::cast_to<CollisionObject3D>(p_node);
ERR_FAIL_COND_MSG(!collision_object, "Collision exception only works between two nodes that inherit from CollisionObject3D (such as Area3D or PhysicsBody3D)."); ERR_FAIL_NULL_MSG(collision_object, "Collision exception only works between two nodes that inherit from CollisionObject3D (such as Area3D or PhysicsBody3D).");
PhysicsServer3D::get_singleton()->soft_body_remove_collision_exception(physics_rid, collision_object->get_rid()); PhysicsServer3D::get_singleton()->soft_body_remove_collision_exception(physics_rid, collision_object->get_rid());
} }

View File

@ -66,7 +66,7 @@ void AnimationNodeAnimation::_validate_property(PropertyInfo &p_property) const
double AnimationNodeAnimation::_process(double p_time, bool p_seek, bool p_is_external_seeking, bool p_test_only) { double AnimationNodeAnimation::_process(double p_time, bool p_seek, bool p_is_external_seeking, bool p_test_only) {
AnimationPlayer *ap = state->player; AnimationPlayer *ap = state->player;
ERR_FAIL_COND_V(!ap, 0); ERR_FAIL_NULL_V(ap, 0);
double cur_time = get_parameter(time); double cur_time = get_parameter(time);

View File

@ -273,7 +273,7 @@ void AnimationPlayer::_ensure_node_caches(AnimationData *p_anim, Node *p_root_ov
Node *parent = p_root_override ? p_root_override : get_node(root); Node *parent = p_root_override ? p_root_override : get_node(root);
ERR_FAIL_COND(!parent); ERR_FAIL_NULL(parent);
Animation *a = p_anim->animation.operator->(); Animation *a = p_anim->animation.operator->();
@ -2169,7 +2169,7 @@ Ref<AnimatedValuesBackup> AnimationPlayer::apply_reset(bool p_user_initiated) {
ERR_FAIL_COND_V(reset_anim.is_null(), Ref<AnimatedValuesBackup>()); ERR_FAIL_COND_V(reset_anim.is_null(), Ref<AnimatedValuesBackup>());
Node *root_node = get_node_or_null(root); Node *root_node = get_node_or_null(root);
ERR_FAIL_COND_V(!root_node, Ref<AnimatedValuesBackup>()); ERR_FAIL_NULL_V(root_node, Ref<AnimatedValuesBackup>());
AnimationPlayer *aux_player = memnew(AnimationPlayer); AnimationPlayer *aux_player = memnew(AnimationPlayer);
EditorNode::get_singleton()->add_child(aux_player); EditorNode::get_singleton()->add_child(aux_player);

View File

@ -64,7 +64,7 @@ void AnimationNode::set_parameter(const StringName &p_name, const Variant &p_val
if (is_testing) { if (is_testing) {
return; return;
} }
ERR_FAIL_COND(!state); ERR_FAIL_NULL(state);
ERR_FAIL_COND(!state->tree->property_parent_map.has(base_path)); ERR_FAIL_COND(!state->tree->property_parent_map.has(base_path));
ERR_FAIL_COND(!state->tree->property_parent_map[base_path].has(p_name)); ERR_FAIL_COND(!state->tree->property_parent_map[base_path].has(p_name));
StringName path = state->tree->property_parent_map[base_path][p_name]; StringName path = state->tree->property_parent_map[base_path][p_name];
@ -73,7 +73,7 @@ void AnimationNode::set_parameter(const StringName &p_name, const Variant &p_val
} }
Variant AnimationNode::get_parameter(const StringName &p_name) const { Variant AnimationNode::get_parameter(const StringName &p_name) const {
ERR_FAIL_COND_V(!state, Variant()); ERR_FAIL_NULL_V(state, Variant());
ERR_FAIL_COND_V(!state->tree->property_parent_map.has(base_path), Variant()); ERR_FAIL_COND_V(!state->tree->property_parent_map.has(base_path), Variant());
ERR_FAIL_COND_V(!state->tree->property_parent_map[base_path].has(p_name), Variant()); ERR_FAIL_COND_V(!state->tree->property_parent_map[base_path].has(p_name), Variant());
@ -96,7 +96,7 @@ void AnimationNode::get_child_nodes(List<ChildNode> *r_child_nodes) {
} }
void AnimationNode::blend_animation(const StringName &p_animation, double p_time, double p_delta, bool p_seeked, bool p_is_external_seeking, real_t p_blend, Animation::LoopedFlag p_looped_flag) { void AnimationNode::blend_animation(const StringName &p_animation, double p_time, double p_delta, bool p_seeked, bool p_is_external_seeking, real_t p_blend, Animation::LoopedFlag p_looped_flag) {
ERR_FAIL_COND(!state); ERR_FAIL_NULL(state);
ERR_FAIL_COND(!state->player->has_animation(p_animation)); ERR_FAIL_COND(!state->player->has_animation(p_animation));
Ref<Animation> animation = state->player->get_animation(p_animation); Ref<Animation> animation = state->player->get_animation(p_animation);
@ -144,12 +144,12 @@ double AnimationNode::_pre_process(const StringName &p_base_path, AnimationNode
} }
AnimationTree *AnimationNode::get_animation_tree() const { AnimationTree *AnimationNode::get_animation_tree() const {
ERR_FAIL_COND_V(!state, nullptr); ERR_FAIL_NULL_V(state, nullptr);
return state->tree; return state->tree;
} }
void AnimationNode::make_invalid(const String &p_reason) { void AnimationNode::make_invalid(const String &p_reason) {
ERR_FAIL_COND(!state); ERR_FAIL_NULL(state);
state->valid = false; state->valid = false;
if (!state->invalid_reasons.is_empty()) { if (!state->invalid_reasons.is_empty()) {
state->invalid_reasons += "\n"; state->invalid_reasons += "\n";
@ -159,10 +159,10 @@ void AnimationNode::make_invalid(const String &p_reason) {
double AnimationNode::blend_input(int p_input, double p_time, bool p_seek, bool p_is_external_seeking, real_t p_blend, FilterAction p_filter, bool p_sync, bool p_test_only) { double AnimationNode::blend_input(int p_input, double p_time, bool p_seek, bool p_is_external_seeking, real_t p_blend, FilterAction p_filter, bool p_sync, bool p_test_only) {
ERR_FAIL_INDEX_V(p_input, inputs.size(), 0); ERR_FAIL_INDEX_V(p_input, inputs.size(), 0);
ERR_FAIL_COND_V(!state, 0); ERR_FAIL_NULL_V(state, 0);
AnimationNodeBlendTree *blend_tree = Object::cast_to<AnimationNodeBlendTree>(parent); AnimationNodeBlendTree *blend_tree = Object::cast_to<AnimationNodeBlendTree>(parent);
ERR_FAIL_COND_V(!blend_tree, 0); ERR_FAIL_NULL_V(blend_tree, 0);
StringName node_name = connections[p_input]; StringName node_name = connections[p_input];
@ -193,7 +193,7 @@ double AnimationNode::blend_node(const StringName &p_sub_path, Ref<AnimationNode
double AnimationNode::_blend_node(const StringName &p_subpath, const Vector<StringName> &p_connections, AnimationNode *p_new_parent, Ref<AnimationNode> p_node, double p_time, bool p_seek, bool p_is_external_seeking, real_t p_blend, FilterAction p_filter, bool p_sync, real_t *r_max, bool p_test_only) { double AnimationNode::_blend_node(const StringName &p_subpath, const Vector<StringName> &p_connections, AnimationNode *p_new_parent, Ref<AnimationNode> p_node, double p_time, bool p_seek, bool p_is_external_seeking, real_t p_blend, FilterAction p_filter, bool p_sync, real_t *r_max, bool p_test_only) {
ERR_FAIL_COND_V(!p_node.is_valid(), 0); ERR_FAIL_COND_V(!p_node.is_valid(), 0);
ERR_FAIL_COND_V(!state, 0); ERR_FAIL_NULL_V(state, 0);
int blend_count = blends.size(); int blend_count = blends.size();
@ -293,7 +293,7 @@ double AnimationNode::_blend_node(const StringName &p_subpath, const Vector<Stri
new_parent = p_new_parent; new_parent = p_new_parent;
new_path = String(base_path) + String(p_subpath) + "/"; new_path = String(base_path) + String(p_subpath) + "/";
} else { } else {
ERR_FAIL_COND_V(!parent, 0); ERR_FAIL_NULL_V(parent, 0);
new_parent = parent; new_parent = parent;
new_path = String(parent->base_path) + String(p_subpath) + "/"; new_path = String(parent->base_path) + String(p_subpath) + "/";
} }

View File

@ -221,7 +221,7 @@ Error SceneDebugger::parse_message(void *p_user, const String &p_msg, const Arra
void SceneDebugger::_save_node(ObjectID id, const String &p_path) { void SceneDebugger::_save_node(ObjectID id, const String &p_path) {
Node *node = Object::cast_to<Node>(ObjectDB::get_instance(id)); Node *node = Object::cast_to<Node>(ObjectDB::get_instance(id));
ERR_FAIL_COND(!node); ERR_FAIL_NULL(node);
#ifdef TOOLS_ENABLED #ifdef TOOLS_ENABLED
HashMap<const Node *, Node *> duplimap; HashMap<const Node *, Node *> duplimap;

View File

@ -97,7 +97,7 @@ void Container::_sort_children() {
} }
void Container::fit_child_in_rect(Control *p_child, const Rect2 &p_rect) { void Container::fit_child_in_rect(Control *p_child, const Rect2 &p_rect) {
ERR_FAIL_COND(!p_child); ERR_FAIL_NULL(p_child);
ERR_FAIL_COND(p_child->get_parent() != this); ERR_FAIL_COND(p_child->get_parent() != this);
bool rtl = is_layout_rtl(); bool rtl = is_layout_rtl();

View File

@ -3180,7 +3180,7 @@ void Control::_notification(int p_notification) {
} else { } else {
// Is a regular root control or top_level. // Is a regular root control or top_level.
Viewport *viewport = get_viewport(); Viewport *viewport = get_viewport();
ERR_FAIL_COND(!viewport); ERR_FAIL_NULL(viewport);
data.RI = viewport->_gui_add_root_control(this); data.RI = viewport->_gui_add_root_control(this);
get_parent()->connect(SNAME("child_order_changed"), callable_mp(get_viewport(), &Viewport::gui_set_root_order_dirty), CONNECT_REFERENCE_COUNTED); get_parent()->connect(SNAME("child_order_changed"), callable_mp(get_viewport(), &Viewport::gui_set_root_order_dirty), CONNECT_REFERENCE_COUNTED);
@ -3193,7 +3193,7 @@ void Control::_notification(int p_notification) {
} else { } else {
// Connect viewport. // Connect viewport.
Viewport *viewport = get_viewport(); Viewport *viewport = get_viewport();
ERR_FAIL_COND(!viewport); ERR_FAIL_NULL(viewport);
viewport->connect("size_changed", callable_mp(this, &Control::_size_changed)); viewport->connect("size_changed", callable_mp(this, &Control::_size_changed));
} }
} break; } break;
@ -3205,7 +3205,7 @@ void Control::_notification(int p_notification) {
} else { } else {
// Disconnect viewport. // Disconnect viewport.
Viewport *viewport = get_viewport(); Viewport *viewport = get_viewport();
ERR_FAIL_COND(!viewport); ERR_FAIL_NULL(viewport);
viewport->disconnect("size_changed", callable_mp(this, &Control::_size_changed)); viewport->disconnect("size_changed", callable_mp(this, &Control::_size_changed));
} }

View File

@ -372,7 +372,7 @@ void GraphEdit::_update_scroll() {
void GraphEdit::_graph_node_raised(Node *p_gn) { void GraphEdit::_graph_node_raised(Node *p_gn) {
GraphNode *gn = Object::cast_to<GraphNode>(p_gn); GraphNode *gn = Object::cast_to<GraphNode>(p_gn);
ERR_FAIL_COND(!gn); ERR_FAIL_NULL(gn);
if (gn->is_comment()) { if (gn->is_comment()) {
move_child(gn, 0); move_child(gn, 0);
} else { } else {
@ -382,21 +382,21 @@ void GraphEdit::_graph_node_raised(Node *p_gn) {
void GraphEdit::_graph_node_selected(Node *p_gn) { void GraphEdit::_graph_node_selected(Node *p_gn) {
GraphNode *gn = Object::cast_to<GraphNode>(p_gn); GraphNode *gn = Object::cast_to<GraphNode>(p_gn);
ERR_FAIL_COND(!gn); ERR_FAIL_NULL(gn);
emit_signal(SNAME("node_selected"), gn); emit_signal(SNAME("node_selected"), gn);
} }
void GraphEdit::_graph_node_deselected(Node *p_gn) { void GraphEdit::_graph_node_deselected(Node *p_gn) {
GraphNode *gn = Object::cast_to<GraphNode>(p_gn); GraphNode *gn = Object::cast_to<GraphNode>(p_gn);
ERR_FAIL_COND(!gn); ERR_FAIL_NULL(gn);
emit_signal(SNAME("node_deselected"), gn); emit_signal(SNAME("node_deselected"), gn);
} }
void GraphEdit::_graph_node_moved(Node *p_gn) { void GraphEdit::_graph_node_moved(Node *p_gn) {
GraphNode *gn = Object::cast_to<GraphNode>(p_gn); GraphNode *gn = Object::cast_to<GraphNode>(p_gn);
ERR_FAIL_COND(!gn); ERR_FAIL_NULL(gn);
top_layer->queue_redraw(); top_layer->queue_redraw();
minimap->queue_redraw(); minimap->queue_redraw();
queue_redraw(); queue_redraw();
@ -405,7 +405,7 @@ void GraphEdit::_graph_node_moved(Node *p_gn) {
void GraphEdit::_graph_node_slot_updated(int p_index, Node *p_gn) { void GraphEdit::_graph_node_slot_updated(int p_index, Node *p_gn) {
GraphNode *gn = Object::cast_to<GraphNode>(p_gn); GraphNode *gn = Object::cast_to<GraphNode>(p_gn);
ERR_FAIL_COND(!gn); ERR_FAIL_NULL(gn);
top_layer->queue_redraw(); top_layer->queue_redraw();
minimap->queue_redraw(); minimap->queue_redraw();
queue_redraw(); queue_redraw();
@ -990,9 +990,9 @@ void GraphEdit::_top_layer_draw() {
if (connecting) { if (connecting) {
Node *fromn = get_node(NodePath(connecting_from)); Node *fromn = get_node(NodePath(connecting_from));
ERR_FAIL_COND(!fromn); ERR_FAIL_NULL(fromn);
GraphNode *from = Object::cast_to<GraphNode>(fromn); GraphNode *from = Object::cast_to<GraphNode>(fromn);
ERR_FAIL_COND(!from); ERR_FAIL_NULL(from);
Vector2 pos; Vector2 pos;
if (connecting_out) { if (connecting_out) {
pos = from->get_connection_output_position(connecting_index); pos = from->get_connection_output_position(connecting_index);

View File

@ -236,7 +236,7 @@ double Range::get_as_ratio() const {
void Range::_share(Node *p_range) { void Range::_share(Node *p_range) {
Range *r = Object::cast_to<Range>(p_range); Range *r = Object::cast_to<Range>(p_range);
ERR_FAIL_COND(!r); ERR_FAIL_NULL(r);
share(r); share(r);
} }

View File

@ -3599,7 +3599,7 @@ void RichTextLabel::pop() {
_stop_thread(); _stop_thread();
MutexLock data_lock(data_mutex); MutexLock data_lock(data_mutex);
ERR_FAIL_COND(!current->parent); ERR_FAIL_NULL(current->parent);
if (current->type == ITEM_FRAME) { if (current->type == ITEM_FRAME) {
current_frame = static_cast<ItemFrame *>(current)->parent_frame; current_frame = static_cast<ItemFrame *>(current)->parent_frame;

View File

@ -731,7 +731,7 @@ bool TabContainer::is_all_tabs_in_front() const {
void TabContainer::set_tab_title(int p_tab, const String &p_title) { void TabContainer::set_tab_title(int p_tab, const String &p_title) {
Control *child = get_tab_control(p_tab); Control *child = get_tab_control(p_tab);
ERR_FAIL_COND(!child); ERR_FAIL_NULL(child);
if (tab_bar->get_tab_title(p_tab) == p_title) { if (tab_bar->get_tab_title(p_tab) == p_title) {
return; return;
@ -789,7 +789,7 @@ bool TabContainer::is_tab_disabled(int p_tab) const {
void TabContainer::set_tab_hidden(int p_tab, bool p_hidden) { void TabContainer::set_tab_hidden(int p_tab, bool p_hidden) {
Control *child = get_tab_control(p_tab); Control *child = get_tab_control(p_tab);
ERR_FAIL_COND(!child); ERR_FAIL_NULL(child);
if (tab_bar->is_tab_hidden(p_tab) == p_hidden) { if (tab_bar->is_tab_hidden(p_tab) == p_hidden) {
return; return;

View File

@ -992,7 +992,7 @@ void TreeItem::validate_cache() const {
void TreeItem::move_before(TreeItem *p_item) { void TreeItem::move_before(TreeItem *p_item) {
ERR_FAIL_NULL(p_item); ERR_FAIL_NULL(p_item);
ERR_FAIL_COND(is_root); ERR_FAIL_COND(is_root);
ERR_FAIL_COND(!p_item->parent); ERR_FAIL_NULL(p_item->parent);
if (p_item == this) { if (p_item == this) {
return; return;
@ -1037,7 +1037,7 @@ void TreeItem::move_before(TreeItem *p_item) {
void TreeItem::move_after(TreeItem *p_item) { void TreeItem::move_after(TreeItem *p_item) {
ERR_FAIL_NULL(p_item); ERR_FAIL_NULL(p_item);
ERR_FAIL_COND(is_root); ERR_FAIL_COND(is_root);
ERR_FAIL_COND(!p_item->parent); ERR_FAIL_NULL(p_item->parent);
if (p_item == this) { if (p_item == this) {
return; return;
@ -1400,7 +1400,7 @@ bool TreeItem::is_folding_disabled() const {
Size2 TreeItem::get_minimum_size(int p_column) { Size2 TreeItem::get_minimum_size(int p_column) {
ERR_FAIL_INDEX_V(p_column, cells.size(), Size2()); ERR_FAIL_INDEX_V(p_column, cells.size(), Size2());
Tree *parent_tree = get_tree(); Tree *parent_tree = get_tree();
ERR_FAIL_COND_V(!parent_tree, Size2()); ERR_FAIL_NULL_V(parent_tree, Size2());
const TreeItem::Cell &cell = cells[p_column]; const TreeItem::Cell &cell = cells[p_column];
@ -3916,7 +3916,7 @@ void Tree::gui_input(const Ref<InputEvent> &p_event) {
bool Tree::edit_selected(bool p_force_edit) { bool Tree::edit_selected(bool p_force_edit) {
TreeItem *s = get_selected(); TreeItem *s = get_selected();
ERR_FAIL_COND_V_MSG(!s, false, "No item selected."); ERR_FAIL_NULL_V_MSG(s, false, "No item selected.");
ensure_cursor_is_visible(); ensure_cursor_is_visible();
int col = get_selected_column(); int col = get_selected_column();
ERR_FAIL_INDEX_V_MSG(col, columns.size(), false, "No item column selected."); ERR_FAIL_INDEX_V_MSG(col, columns.size(), false, "No item column selected.");
@ -4338,7 +4338,7 @@ TreeItem *Tree::create_item(TreeItem *p_parent, int p_index) {
if (!root) { if (!root) {
// No root exists, make the given item the new root. // No root exists, make the given item the new root.
ti = memnew(TreeItem(this)); ti = memnew(TreeItem(this));
ERR_FAIL_COND_V(!ti, nullptr); ERR_FAIL_NULL_V(ti, nullptr);
ti->cells.resize(columns.size()); ti->cells.resize(columns.size());
ti->is_root = true; ti->is_root = true;
root = ti; root = ti;
@ -4572,7 +4572,7 @@ TreeItem *Tree::get_selected() const {
void Tree::set_selected(TreeItem *p_item, int p_column) { void Tree::set_selected(TreeItem *p_item, int p_column) {
ERR_FAIL_INDEX(p_column, columns.size()); ERR_FAIL_INDEX(p_column, columns.size());
ERR_FAIL_COND(!p_item); ERR_FAIL_NULL(p_item);
select_single_item(p_item, get_root(), p_column); select_single_item(p_item, get_root(), p_column);
} }

View File

@ -103,7 +103,7 @@ void VideoStreamPlayer::_mix_audio() {
if (cc == 1) { if (cc == 1) {
AudioFrame *target = AudioServer::get_singleton()->thread_get_channel_mix_buffer(bus_index, 0); AudioFrame *target = AudioServer::get_singleton()->thread_get_channel_mix_buffer(bus_index, 0);
ERR_FAIL_COND(!target); ERR_FAIL_NULL(target);
for (int j = 0; j < buffer_size; j++) { for (int j = 0; j < buffer_size; j++) {
target[j] += buffer[j] * vol; target[j] += buffer[j] * vol;
@ -114,7 +114,7 @@ void VideoStreamPlayer::_mix_audio() {
for (int k = 0; k < cc; k++) { for (int k = 0; k < cc; k++) {
targets[k] = AudioServer::get_singleton()->thread_get_channel_mix_buffer(bus_index, k); targets[k] = AudioServer::get_singleton()->thread_get_channel_mix_buffer(bus_index, k);
ERR_FAIL_COND(!targets[k]); ERR_FAIL_NULL(targets[k]);
} }
for (int j = 0; j < buffer_size; j++) { for (int j = 0; j < buffer_size; j++) {

View File

@ -381,7 +381,7 @@ void CanvasItem::update_draw_order() {
if (canvas_group != StringName()) { if (canvas_group != StringName()) {
get_tree()->call_group_flags(SceneTree::GROUP_CALL_UNIQUE | SceneTree::GROUP_CALL_DEFERRED, canvas_group, "_top_level_raise_self"); get_tree()->call_group_flags(SceneTree::GROUP_CALL_UNIQUE | SceneTree::GROUP_CALL_DEFERRED, canvas_group, "_top_level_raise_self");
} else { } else {
ERR_FAIL_COND_MSG(!get_parent_item(), "Moved child is in incorrect state (no canvas group, no canvas item parent)."); ERR_FAIL_NULL_MSG(get_parent_item(), "Moved child is in incorrect state (no canvas group, no canvas item parent).");
RenderingServer::get_singleton()->canvas_item_set_draw_index(canvas_item, get_index()); RenderingServer::get_singleton()->canvas_item_set_draw_index(canvas_item, get_index());
} }
} }
@ -1033,13 +1033,13 @@ Ref<InputEvent> CanvasItem::make_input_local(const Ref<InputEvent> &p_event) con
Vector2 CanvasItem::get_global_mouse_position() const { Vector2 CanvasItem::get_global_mouse_position() const {
ERR_READ_THREAD_GUARD_V(Vector2()); ERR_READ_THREAD_GUARD_V(Vector2());
ERR_FAIL_COND_V(!get_viewport(), Vector2()); ERR_FAIL_NULL_V(get_viewport(), Vector2());
return get_canvas_transform().affine_inverse().xform(get_viewport()->get_mouse_position()); return get_canvas_transform().affine_inverse().xform(get_viewport()->get_mouse_position());
} }
Vector2 CanvasItem::get_local_mouse_position() const { Vector2 CanvasItem::get_local_mouse_position() const {
ERR_READ_THREAD_GUARD_V(Vector2()); ERR_READ_THREAD_GUARD_V(Vector2());
ERR_FAIL_COND_V(!get_viewport(), Vector2()); ERR_FAIL_NULL_V(get_viewport(), Vector2());
return get_global_transform().affine_inverse().xform(get_global_mouse_position()); return get_global_transform().affine_inverse().xform(get_global_mouse_position());
} }

View File

@ -66,8 +66,8 @@ void Node::_notification(int p_notification) {
} break; } break;
case NOTIFICATION_ENTER_TREE: { case NOTIFICATION_ENTER_TREE: {
ERR_FAIL_COND(!get_viewport()); ERR_FAIL_NULL(get_viewport());
ERR_FAIL_COND(!get_tree()); ERR_FAIL_NULL(get_tree());
// Update process mode. // Update process mode.
if (data.process_mode == PROCESS_MODE_INHERIT) { if (data.process_mode == PROCESS_MODE_INHERIT) {
@ -121,8 +121,8 @@ void Node::_notification(int p_notification) {
} break; } break;
case NOTIFICATION_EXIT_TREE: { case NOTIFICATION_EXIT_TREE: {
ERR_FAIL_COND(!get_viewport()); ERR_FAIL_NULL(get_viewport());
ERR_FAIL_COND(!get_tree()); ERR_FAIL_NULL(get_tree());
get_tree()->nodes_in_tree_count--; get_tree()->nodes_in_tree_count--;
orphan_node_count++; orphan_node_count++;
@ -1989,7 +1989,7 @@ NodePath Node::get_path_to(const Node *p_node, bool p_use_unique_path) const {
common_parent = common_parent->data.parent; common_parent = common_parent->data.parent;
} }
ERR_FAIL_COND_V(!common_parent, NodePath()); //nodes not in the same tree ERR_FAIL_NULL_V(common_parent, NodePath()); //nodes not in the same tree
visited.clear(); visited.clear();
@ -2252,7 +2252,7 @@ void Node::_propagate_replace_owner(Node *p_owner, Node *p_by_owner) {
Ref<Tween> Node::create_tween() { Ref<Tween> Node::create_tween() {
ERR_THREAD_GUARD_V(Ref<Tween>()); ERR_THREAD_GUARD_V(Ref<Tween>());
ERR_FAIL_COND_V_MSG(!data.tree, nullptr, "Can't create Tween when not inside scene tree."); ERR_FAIL_NULL_V_MSG(data.tree, nullptr, "Can't create Tween when not inside scene tree.");
Ref<Tween> tween = get_tree()->create_tween(); Ref<Tween> tween = get_tree()->create_tween();
tween->bind_node(this); tween->bind_node(this);
return tween; return tween;
@ -2437,19 +2437,19 @@ Node *Node::_duplicate(int p_flags, HashMap<const Node *, Node *> *r_duplimap) c
} }
#endif #endif
node = res->instantiate(edit_state); node = res->instantiate(edit_state);
ERR_FAIL_COND_V(!node, nullptr); ERR_FAIL_NULL_V(node, nullptr);
node->set_scene_instance_load_placeholder(get_scene_instance_load_placeholder()); node->set_scene_instance_load_placeholder(get_scene_instance_load_placeholder());
instantiated = true; instantiated = true;
} else { } else {
Object *obj = ClassDB::instantiate(get_class()); Object *obj = ClassDB::instantiate(get_class());
ERR_FAIL_COND_V(!obj, nullptr); ERR_FAIL_NULL_V(obj, nullptr);
node = Object::cast_to<Node>(obj); node = Object::cast_to<Node>(obj);
if (!node) { if (!node) {
memdelete(obj); memdelete(obj);
} }
ERR_FAIL_COND_V(!node, nullptr); ERR_FAIL_NULL_V(node, nullptr);
} }
if (!get_scene_file_path().is_empty()) { //an instance if (!get_scene_file_path().is_empty()) { //an instance

View File

@ -443,7 +443,7 @@ void SceneTree::set_group(const StringName &p_group, const String &p_name, const
} }
void SceneTree::initialize() { void SceneTree::initialize() {
ERR_FAIL_COND(!root); ERR_FAIL_NULL(root);
initialized = true; initialized = true;
root->_set_tree(this); root->_set_tree(this);
MainLoop::initialize(); MainLoop::initialize();
@ -1095,7 +1095,7 @@ bool SceneTree::ProcessGroupSort::operator()(const ProcessGroup *p_left, const P
void SceneTree::_remove_process_group(Node *p_node) { void SceneTree::_remove_process_group(Node *p_node) {
_THREAD_SAFE_METHOD_ _THREAD_SAFE_METHOD_
ProcessGroup *pg = (ProcessGroup *)p_node->data.process_group; ProcessGroup *pg = (ProcessGroup *)p_node->data.process_group;
ERR_FAIL_COND(!pg); ERR_FAIL_NULL(pg);
ERR_FAIL_COND(pg->removed); ERR_FAIL_COND(pg->removed);
pg->removed = true; pg->removed = true;
pg->owner = nullptr; pg->owner = nullptr;
@ -1105,7 +1105,7 @@ void SceneTree::_remove_process_group(Node *p_node) {
void SceneTree::_add_process_group(Node *p_node) { void SceneTree::_add_process_group(Node *p_node) {
_THREAD_SAFE_METHOD_ _THREAD_SAFE_METHOD_
ERR_FAIL_COND(!p_node); ERR_FAIL_NULL(p_node);
ProcessGroup *pg = memnew(ProcessGroup); ProcessGroup *pg = memnew(ProcessGroup);
@ -1419,7 +1419,7 @@ Error SceneTree::change_scene_to_packed(const Ref<PackedScene> &p_scene) {
ERR_FAIL_COND_V_MSG(p_scene.is_null(), ERR_INVALID_PARAMETER, "Can't change to a null scene. Use unload_current_scene() if you wish to unload it."); ERR_FAIL_COND_V_MSG(p_scene.is_null(), ERR_INVALID_PARAMETER, "Can't change to a null scene. Use unload_current_scene() if you wish to unload it.");
Node *new_scene = p_scene->instantiate(); Node *new_scene = p_scene->instantiate();
ERR_FAIL_COND_V(!new_scene, ERR_CANT_CREATE); ERR_FAIL_NULL_V(new_scene, ERR_CANT_CREATE);
call_deferred(SNAME("_change_scene"), new_scene); call_deferred(SNAME("_change_scene"), new_scene);
return OK; return OK;
@ -1427,7 +1427,7 @@ Error SceneTree::change_scene_to_packed(const Ref<PackedScene> &p_scene) {
Error SceneTree::reload_current_scene() { Error SceneTree::reload_current_scene() {
ERR_FAIL_COND_V_MSG(!Thread::is_main_thread(), ERR_INVALID_PARAMETER, "Reloading scene can only be done from the main thread."); ERR_FAIL_COND_V_MSG(!Thread::is_main_thread(), ERR_INVALID_PARAMETER, "Reloading scene can only be done from the main thread.");
ERR_FAIL_COND_V(!current_scene, ERR_UNCONFIGURED); ERR_FAIL_NULL_V(current_scene, ERR_UNCONFIGURED);
String fname = current_scene->get_scene_file_path(); String fname = current_scene->get_scene_file_path();
return change_scene_to_file(fname); return change_scene_to_file(fname);
} }

View File

@ -2317,7 +2317,6 @@ void Viewport::_gui_force_drag(Control *p_base, const Variant &p_data, Control *
void Viewport::_gui_set_drag_preview(Control *p_base, Control *p_control) { void Viewport::_gui_set_drag_preview(Control *p_base, Control *p_control) {
ERR_FAIL_NULL(p_control); ERR_FAIL_NULL(p_control);
ERR_FAIL_COND(!Object::cast_to<Control>((Object *)p_control));
ERR_FAIL_COND(p_control->is_inside_tree()); ERR_FAIL_COND(p_control->is_inside_tree());
ERR_FAIL_COND(p_control->get_parent() != nullptr); ERR_FAIL_COND(p_control->get_parent() != nullptr);

View File

@ -1774,7 +1774,7 @@ Rect2i Window::get_usable_parent_rect() const {
} else { } else {
const Window *w = is_visible() ? this : get_parent_visible_window(); const Window *w = is_visible() ? this : get_parent_visible_window();
//find a parent that can contain us //find a parent that can contain us
ERR_FAIL_COND_V(!w, Rect2()); ERR_FAIL_NULL_V(w, Rect2());
parent_rect = DisplayServer::get_singleton()->screen_get_usable_rect(DisplayServer::get_singleton()->window_get_current_screen(w->get_window_id())); parent_rect = DisplayServer::get_singleton()->screen_get_usable_rect(DisplayServer::get_singleton()->window_get_current_screen(w->get_window_id()));
} }
@ -2335,9 +2335,9 @@ Rect2i Window::get_parent_rect() const {
if (is_embedded()) { if (is_embedded()) {
//viewport //viewport
Node *n = get_parent(); Node *n = get_parent();
ERR_FAIL_COND_V(!n, Rect2i()); ERR_FAIL_NULL_V(n, Rect2i());
Viewport *p = n->get_viewport(); Viewport *p = n->get_viewport();
ERR_FAIL_COND_V(!p, Rect2i()); ERR_FAIL_NULL_V(p, Rect2i());
return p->get_visible_rect(); return p->get_visible_rect();
} else { } else {

View File

@ -939,7 +939,7 @@ Vector<Face3> ImporterMesh::get_faces() const {
} }
Vector<Ref<Shape3D>> ImporterMesh::convex_decompose(const Ref<MeshConvexDecompositionSettings> &p_settings) const { Vector<Ref<Shape3D>> ImporterMesh::convex_decompose(const Ref<MeshConvexDecompositionSettings> &p_settings) const {
ERR_FAIL_COND_V(!Mesh::convex_decomposition_function, Vector<Ref<Shape3D>>()); ERR_FAIL_NULL_V(Mesh::convex_decomposition_function, Vector<Ref<Shape3D>>());
const Vector<Face3> faces = get_faces(); const Vector<Face3> faces = get_faces();
int face_count = faces.size(); int face_count = faces.size();
@ -1102,7 +1102,7 @@ struct EditorSceneFormatImporterMeshLightmapSurface {
static const uint32_t custom_shift[RS::ARRAY_CUSTOM_COUNT] = { Mesh::ARRAY_FORMAT_CUSTOM0_SHIFT, Mesh::ARRAY_FORMAT_CUSTOM1_SHIFT, Mesh::ARRAY_FORMAT_CUSTOM2_SHIFT, Mesh::ARRAY_FORMAT_CUSTOM3_SHIFT }; static const uint32_t custom_shift[RS::ARRAY_CUSTOM_COUNT] = { Mesh::ARRAY_FORMAT_CUSTOM0_SHIFT, Mesh::ARRAY_FORMAT_CUSTOM1_SHIFT, Mesh::ARRAY_FORMAT_CUSTOM2_SHIFT, Mesh::ARRAY_FORMAT_CUSTOM3_SHIFT };
Error ImporterMesh::lightmap_unwrap_cached(const Transform3D &p_base_transform, float p_texel_size, const Vector<uint8_t> &p_src_cache, Vector<uint8_t> &r_dst_cache) { Error ImporterMesh::lightmap_unwrap_cached(const Transform3D &p_base_transform, float p_texel_size, const Vector<uint8_t> &p_src_cache, Vector<uint8_t> &r_dst_cache) {
ERR_FAIL_COND_V(!array_mesh_lightmap_unwrap_callback, ERR_UNCONFIGURED); ERR_FAIL_NULL_V(array_mesh_lightmap_unwrap_callback, ERR_UNCONFIGURED);
ERR_FAIL_COND_V_MSG(blend_shapes.size() != 0, ERR_UNAVAILABLE, "Can't unwrap mesh with blend shapes."); ERR_FAIL_COND_V_MSG(blend_shapes.size() != 0, ERR_UNAVAILABLE, "Can't unwrap mesh with blend shapes.");
LocalVector<float> vertices; LocalVector<float> vertices;

View File

@ -895,7 +895,7 @@ void Mesh::clear_cache() const {
} }
Vector<Ref<Shape3D>> Mesh::convex_decompose(const Ref<MeshConvexDecompositionSettings> &p_settings) const { Vector<Ref<Shape3D>> Mesh::convex_decompose(const Ref<MeshConvexDecompositionSettings> &p_settings) const {
ERR_FAIL_COND_V(!convex_decomposition_function, Vector<Ref<Shape3D>>()); ERR_FAIL_NULL_V(convex_decomposition_function, Vector<Ref<Shape3D>>());
Ref<TriangleMesh> tm = generate_triangle_mesh(); Ref<TriangleMesh> tm = generate_triangle_mesh();
ERR_FAIL_COND_V(!tm.is_valid(), Vector<Ref<Shape3D>>()); ERR_FAIL_COND_V(!tm.is_valid(), Vector<Ref<Shape3D>>());
@ -2014,7 +2014,7 @@ Error ArrayMesh::lightmap_unwrap(const Transform3D &p_base_transform, float p_te
} }
Error ArrayMesh::lightmap_unwrap_cached(const Transform3D &p_base_transform, float p_texel_size, const Vector<uint8_t> &p_src_cache, Vector<uint8_t> &r_dst_cache, bool p_generate_cache) { Error ArrayMesh::lightmap_unwrap_cached(const Transform3D &p_base_transform, float p_texel_size, const Vector<uint8_t> &p_src_cache, Vector<uint8_t> &r_dst_cache, bool p_generate_cache) {
ERR_FAIL_COND_V(!array_mesh_lightmap_unwrap_callback, ERR_UNCONFIGURED); ERR_FAIL_NULL_V(array_mesh_lightmap_unwrap_callback, ERR_UNCONFIGURED);
ERR_FAIL_COND_V_MSG(blend_shapes.size() != 0, ERR_UNAVAILABLE, "Can't unwrap mesh with blend shapes."); ERR_FAIL_COND_V_MSG(blend_shapes.size() != 0, ERR_UNAVAILABLE, "Can't unwrap mesh with blend shapes.");
ERR_FAIL_COND_V_MSG(p_texel_size <= 0.0f, ERR_PARAMETER_RANGE_ERROR, "Texel size must be greater than 0."); ERR_FAIL_COND_V_MSG(p_texel_size <= 0.0f, ERR_PARAMETER_RANGE_ERROR, "Texel size must be greater than 0.");

View File

@ -142,7 +142,7 @@ Node *SceneState::instantiate(GenEditState p_edit_state) const {
Ref<PackedScene> sdata = props[base_scene_idx]; Ref<PackedScene> sdata = props[base_scene_idx];
ERR_FAIL_COND_V(!sdata.is_valid(), nullptr); ERR_FAIL_COND_V(!sdata.is_valid(), nullptr);
node = sdata->instantiate(p_edit_state == GEN_EDIT_STATE_DISABLED ? PackedScene::GEN_EDIT_STATE_DISABLED : PackedScene::GEN_EDIT_STATE_INSTANCE); //only main gets main edit state node = sdata->instantiate(p_edit_state == GEN_EDIT_STATE_DISABLED ? PackedScene::GEN_EDIT_STATE_DISABLED : PackedScene::GEN_EDIT_STATE_INSTANCE); //only main gets main edit state
ERR_FAIL_COND_V(!node, nullptr); ERR_FAIL_NULL_V(node, nullptr);
if (p_edit_state != GEN_EDIT_STATE_DISABLED) { if (p_edit_state != GEN_EDIT_STATE_DISABLED) {
node->set_scene_inherited_state(sdata->get_state()); node->set_scene_inherited_state(sdata->get_state());
} }
@ -155,7 +155,7 @@ Node *SceneState::instantiate(GenEditState p_edit_state) const {
Ref<PackedScene> sdata = ResourceLoader::load(scene_path, "PackedScene"); Ref<PackedScene> sdata = ResourceLoader::load(scene_path, "PackedScene");
ERR_FAIL_COND_V(!sdata.is_valid(), nullptr); ERR_FAIL_COND_V(!sdata.is_valid(), nullptr);
node = sdata->instantiate(p_edit_state == GEN_EDIT_STATE_DISABLED ? PackedScene::GEN_EDIT_STATE_DISABLED : PackedScene::GEN_EDIT_STATE_INSTANCE); node = sdata->instantiate(p_edit_state == GEN_EDIT_STATE_DISABLED ? PackedScene::GEN_EDIT_STATE_DISABLED : PackedScene::GEN_EDIT_STATE_INSTANCE);
ERR_FAIL_COND_V(!node, nullptr); ERR_FAIL_NULL_V(node, nullptr);
} else { } else {
InstancePlaceholder *ip = memnew(InstancePlaceholder); InstancePlaceholder *ip = memnew(InstancePlaceholder);
ip->set_instance_path(scene_path); ip->set_instance_path(scene_path);
@ -166,7 +166,7 @@ Node *SceneState::instantiate(GenEditState p_edit_state) const {
Ref<PackedScene> sdata = props[n.instance & FLAG_MASK]; Ref<PackedScene> sdata = props[n.instance & FLAG_MASK];
ERR_FAIL_COND_V(!sdata.is_valid(), nullptr); ERR_FAIL_COND_V(!sdata.is_valid(), nullptr);
node = sdata->instantiate(p_edit_state == GEN_EDIT_STATE_DISABLED ? PackedScene::GEN_EDIT_STATE_DISABLED : PackedScene::GEN_EDIT_STATE_INSTANCE); node = sdata->instantiate(p_edit_state == GEN_EDIT_STATE_DISABLED ? PackedScene::GEN_EDIT_STATE_DISABLED : PackedScene::GEN_EDIT_STATE_INSTANCE);
ERR_FAIL_COND_V(!node, nullptr); ERR_FAIL_NULL_V(node, nullptr);
} }
} else if (n.type == TYPE_INSTANTIATED) { } else if (n.type == TYPE_INSTANTIATED) {

View File

@ -185,7 +185,7 @@ void SkeletonModification2DPhysicalBones::set_physical_bone_chain_length(int p_l
} }
void SkeletonModification2DPhysicalBones::fetch_physical_bones() { void SkeletonModification2DPhysicalBones::fetch_physical_bones() {
ERR_FAIL_COND_MSG(!stack, "No modification stack found! Cannot fetch physical bones!"); ERR_FAIL_NULL_MSG(stack, "No modification stack found! Cannot fetch physical bones!");
ERR_FAIL_COND_MSG(!stack->skeleton, "No skeleton found! Cannot fetch physical bones!"); ERR_FAIL_COND_MSG(!stack->skeleton, "No skeleton found! Cannot fetch physical bones!");
physical_bone_chain.clear(); physical_bone_chain.clear();

View File

@ -386,7 +386,7 @@ void PortableCompressedTexture2D::_set_data(const Vector<uint8_t> &p_data) {
} break; } break;
case COMPRESSION_MODE_BASIS_UNIVERSAL: { case COMPRESSION_MODE_BASIS_UNIVERSAL: {
ERR_FAIL_COND(!Image::basis_universal_unpacker_ptr); ERR_FAIL_NULL(Image::basis_universal_unpacker_ptr);
image = Image::basis_universal_unpacker_ptr(data, data_size); image = Image::basis_universal_unpacker_ptr(data, data_size);
} break; } break;
@ -812,21 +812,21 @@ void CompressedTexture2D::set_path(const String &p_path, bool p_take_over) {
void CompressedTexture2D::_requested_3d(void *p_ud) { void CompressedTexture2D::_requested_3d(void *p_ud) {
CompressedTexture2D *ct = (CompressedTexture2D *)p_ud; CompressedTexture2D *ct = (CompressedTexture2D *)p_ud;
Ref<CompressedTexture2D> ctex(ct); Ref<CompressedTexture2D> ctex(ct);
ERR_FAIL_COND(!request_3d_callback); ERR_FAIL_NULL(request_3d_callback);
request_3d_callback(ctex); request_3d_callback(ctex);
} }
void CompressedTexture2D::_requested_roughness(void *p_ud, const String &p_normal_path, RS::TextureDetectRoughnessChannel p_roughness_channel) { void CompressedTexture2D::_requested_roughness(void *p_ud, const String &p_normal_path, RS::TextureDetectRoughnessChannel p_roughness_channel) {
CompressedTexture2D *ct = (CompressedTexture2D *)p_ud; CompressedTexture2D *ct = (CompressedTexture2D *)p_ud;
Ref<CompressedTexture2D> ctex(ct); Ref<CompressedTexture2D> ctex(ct);
ERR_FAIL_COND(!request_roughness_callback); ERR_FAIL_NULL(request_roughness_callback);
request_roughness_callback(ctex, p_normal_path, p_roughness_channel); request_roughness_callback(ctex, p_normal_path, p_roughness_channel);
} }
void CompressedTexture2D::_requested_normal(void *p_ud) { void CompressedTexture2D::_requested_normal(void *p_ud) {
CompressedTexture2D *ct = (CompressedTexture2D *)p_ud; CompressedTexture2D *ct = (CompressedTexture2D *)p_ud;
Ref<CompressedTexture2D> ctex(ct); Ref<CompressedTexture2D> ctex(ct);
ERR_FAIL_COND(!request_normal_callback); ERR_FAIL_NULL(request_normal_callback);
request_normal_callback(ctex); request_normal_callback(ctex);
} }

View File

@ -1610,7 +1610,7 @@ Vector<Point2> TileSet::get_terrain_peering_bit_polygon(int p_terrain_set, TileS
#define TERRAIN_ALPHA 0.6 #define TERRAIN_ALPHA 0.6
void TileSet::draw_terrains(CanvasItem *p_canvas_item, Transform2D p_transform, const TileData *p_tile_data) { void TileSet::draw_terrains(CanvasItem *p_canvas_item, Transform2D p_transform, const TileData *p_tile_data) {
ERR_FAIL_COND(!p_tile_data); ERR_FAIL_NULL(p_tile_data);
if (terrain_bits_meshes_dirty) { if (terrain_bits_meshes_dirty) {
// Recompute the meshes. // Recompute the meshes.