I have been googling to no luck so decided it's time to ask another question on the forum.
Essentially, I have a Kinematic2D (Player) set up with a Camera2D attached as a child. I have instanced the player into a scene (currently named Test Scene). In that scene I have a few other node instances like a StaticBody2D (ground) and a ParallaxBackground (Sky). I am trying to figure a way to spawn another ground instance when my players camera2D reaches the bounds of the previous ground on the x axis. I am creating, or trying to, a small endless runner. Parallaxing works now but I want to get the ground to repeat as well.

However, it is a staticbody2d and not a ParallaxBackground. If I create the ground node as a ParallaxBackground with the ParallaxLayer and a StaticBody2D on that ParallaxLayer the player will fall straight through it, so I had to go the route I am trying to go.
As this is a endless runner my GroundMovement.gd looks like this:
extends StaticBody2D
export var groundSpeed = 20
func _physics_process(delta):
self.constant_linear_velocity.x += groundSpeed
if constant_linear_velocity.x > groundSpeed:
constant_linear_velocity.x = groundSpeed
Which works well for getting my player to move across it like a conveyer belt. I just need it to spawn again as my Camera2D reaches the bounds of it. Ground sprite is 240px and my camera is 240px. I would also like to delete the previous Ground.tscn instance as it leaves the bounds of the camera.
Any tips or tricks is appreciated.