Page 1 of 1

random key or gameobject name for destructable saver / position saver

Posted: Sun Jul 11, 2021 4:36 pm
by alsoknownas-stefan
Hi there,

I got the following problem. I instantiate an item from an inventory which has the destructable saver and position saver on itWhen I leave the cube (which already is present in scene 1, so it is not being instantiated and it has named keys, see screenshot) in scene 1 and move from scene 1 to scene 2 to using a portal, and return to scene 1, the cube is where I left it. When I go to scene 2 and instantiate the cube (a prefab with the same components, but with no named keys) from my inventory and leave the cube there, go to scene 1 and back to scene 2, I now have the problem that the cube is gone. I think this is because the prefab does not have named keys assigned to it, causing conflicts with other instantiated cubes. Is there a way to assign random keys after instantiation? Maybe I only need to randomize the name of the cube, since a blanc key takes the gameobject name. But how do you do that after instantiation? I tried using Start(){gameObject.name = "Item" + Random.Range(1, 9999999999999999).ToString() + Random.value.ToString(); } in a script attached on the prefab, but this does not work, probably because Start() is invoked again when re-entering the scene and the name/keys get randomized again... So that would mean that I would have to find a way that the name is only set once... Am I thinking in the right direction? Any thoughts?

Kind regards,

Stefan

Re: random key or gameobject name for destructable saver / position saver

Posted: Sun Jul 11, 2021 5:37 pm
by Tony Li
Hi,

Since you're instantiating at runtime, it's probably easier to use the Spawned Object Manager.

Re: random key or gameobject name for destructable saver / position saver

Posted: Mon Jul 12, 2021 4:58 am
by alsoknownas-stefan
Hi Tony,

I removed the position saver and destructable saver from the prefab cube and added the spawned object component to the prefab cube and I added a spawned objects manager in both scenes. When I now take a cube from my inventory and drop it on the floor (i.e. the cube is instantiated) in scene 1 and move to scene 2 using a portal, there is a cube in scene 2 on the exact spot that it was in in scene 1. Enabling/disabling the position and destructable savers in various configurations does not seem to have an effect. I updated Dialogue System for Unity just in case, but this does not solve the problem.

Any idea?

Re: random key or gameobject name for destructable saver / position saver

Posted: Mon Jul 12, 2021 5:17 am
by alsoknownas-stefan
Never mind, I solved it. :D Turns out I had to give the Spawned objects manager in scene 1 a different key than the key of the Spawned objects manager in scene 2 (a different name of the gameobject that has the spawned objects manager might work as well?). This step is maybe missing from the documentation? Any way, this works for me. Thanks once more.

Re: random key or gameobject name for destructable saver / position saver

Posted: Mon Jul 12, 2021 8:54 am
by Tony Li
Hi,

Thanks for pointing that out. I'll add that note to the documentation.