private void archieveEnter() { DataOfPlayer dataOfPlayer = DataOfPlayer.getInstance(0, 0, Vector3.zero, 0, null, false); if (dataOfPlayer != null && dataOfPlayer.isArchieve) { //设置人物位置 GameObject player = GameObject.FindGameObjectWithTag("Player"); player.GetComponent <PlayerState>().Hp = dataOfPlayer.playerData.Hp; player.GetComponent <PlayerState>().Mp = dataOfPlayer.playerData.Mp; player.transform.position = dataOfPlayer.playerData.playerPosition; setCollecter(dataOfPlayer.playerData.collectors);//设置硬币已经得到数 //重新设置硬币 GameObject[] gameObjects = GameObject.FindGameObjectsWithTag("Coin"); foreach (GameObject i in gameObjects) { Destroy(i); } foreach (Vector3 i in dataOfPlayer.coins) { Instantiate(coins, i, Quaternion.identity); } dataOfPlayer.setArchieve(false); } }
public int LoadArch() { string name; Vector3 v3 = Vector3.zero; List <Vector3> coins = new List <Vector3>(); int scene = 0, collecters = 0; float hp = 0, mp = 0; //将data中的object存入 foreach (Item i in data.items) { if (i.tag == "Player") { name = i.name; v3 = new Vector3((float)i.x, (float)i.y, (float)i.z); hp = (float)i.Hp; mp = (float)i.Mp; collecters = i.collectors; } if (i.tag == "Scene") { scene = i.scene; } if (i.tag == "Coin") { coins.Add(new Vector3((float)i.x, (float)i.y, (float)i.z)); } DataOfPlayer.getInstance(hp, mp, v3, collecters, coins, true); } return(scene); }