在我的游戏中,有一个地图视图,包含一个50x50的网格瓷砖。当您单击瓷砖时,您会被发送到该瓷砖的视图并攻击它们等。从代码角度来看,这些“瓷砖”的唯一区别是瓷砖ID,即网格上的数字。该数字将在初始化时传递给服务器以处理其余部分。
显然,由于这是瓷砖之间唯一的区别,创建“场景1”,“场景2”...“场景2500”并调用SceneManager.LoadScene以切换到特定的瓷砖视图是错误的做法。
我可以在单击瓷砖时使用DontDestroyOnLoad()来保留瓷砖ID以便在场景切换时使用,但是1)它只接受gameobjects而不仅是int变量2)我不需要/想要将该变量保留超过在瓷砖视图的init中,因此虽然它可行,但似乎有点过度设计。
是否有更好的方法来传递参数到场景加载?
显然,由于这是瓷砖之间唯一的区别,创建“场景1”,“场景2”...“场景2500”并调用SceneManager.LoadScene以切换到特定的瓷砖视图是错误的做法。
我可以在单击瓷砖时使用DontDestroyOnLoad()来保留瓷砖ID以便在场景切换时使用,但是1)它只接受gameobjects而不仅是int变量2)我不需要/想要将该变量保留超过在瓷砖视图的init中,因此虽然它可行,但似乎有点过度设计。
是否有更好的方法来传递参数到场景加载?