As you already noticed, when you call add_child()
, there isn't a way to input the position at the same time.
To change the position, you modify the position variable on the instanced node.
scene_instance.position = Vector2(x, y)
The structure that this gives instancing/placing code looks something like this.
scene_instance = scene_being_instanced.instance()
# All modification you want to happen *before* the node(s) are added
scene_instance.position = Vector2(x, y)
self.add_child(scene_instance)
# All modifications you want to happen *after* the node(s) have been added
For more information, I recommend taking a look at the Node documentation.