Hello ,
You can create a Empty gameobject called "spawn manger"
SpawnManger:
Variables :
Vector3 Position = 0,0,0
Gameobject Last Object = null
Int ID =0
States :
State1 : its start state make create the prefab and store it last Object >>add to ID +1
Finishes
State2 : Compare Vector3 to a value reach [every frame] when reach set value loop
ThePrefab
Variables :
Int MyId = 0
Int currentId
Vector3 myPosition = 0,0,0
Gameobject spawnmanger = nll
States :
State1 : find gameobject "spawn Manger">> get fsm >int>ID>store it in > MyId
Finishs
State2 : [(Your Animation)] >> get owner position >>set fsm vector3 [spawnmanger] position >> getfsm>int>Id>store it in currentid[every frame >> compare int myId and currentId if less or greater[everyframe]>gotonextstate
State3 : Done
I hope this helps