diff --git a/scene/2d/parallax_layer.cpp b/scene/2d/parallax_layer.cpp index 58bd7ac460a..a676ec43e8a 100644 --- a/scene/2d/parallax_layer.cpp +++ b/scene/2d/parallax_layer.cpp @@ -32,11 +32,11 @@ void ParallaxLayer::set_motion_scale(const Size2 &p_scale) { + motion_scale = p_scale; + if (!get_parent()) return; - motion_scale = p_scale; - ParallaxBackground *pb = get_parent()->cast_to(); if (is_inside_tree() && pb) { Vector2 ofs = pb->get_final_offset(); @@ -52,11 +52,11 @@ Size2 ParallaxLayer::get_motion_scale() const { void ParallaxLayer::set_motion_offset(const Size2 &p_offset) { + motion_offset = p_offset; + if (!get_parent()) return; - motion_offset = p_offset; - ParallaxBackground *pb = get_parent()->cast_to(); if (is_inside_tree() && pb) { Vector2 ofs = pb->get_final_offset();