public void SelectedSpacecraft(int index) { if (spacecraftDatas[index] == currentSelection || spacecraftDatas[index].Locked) { return; } else { GameObject player = GameObject.FindGameObjectWithTag("Player"); if (player.transform.childCount > 0) { Destroy(player.transform.GetChild(0).gameObject); } GameObject spacecraft = Instantiate(spacecraftDatas[index].Spacecraft, transform.position, Quaternion.identity, player.transform); spacecraft.transform.localScale = new Vector3(1.5f, 1.5f, 1.5f); player.transform.position = new Vector3(0, 1, 5); spacecraft.transform.position = player.transform.position; spacecraft.GetComponent <PlayerMovement>().enabled = false; spacecraft.transform.GetChild(0).GetComponent <RollSpaceship>().enabled = false; currentSelection = spacecraftDatas[index]; } }
/// <summary> /// Load this object /// </summary> public void Load() { string path = Application.persistentDataPath + "/SC_Data/" + name; if (File.Exists(path)) { BinaryFormatter formatter = new BinaryFormatter(); FileStream stream = new FileStream(path, FileMode.Open); SpacecraftData data = formatter.Deserialize(stream) as SpacecraftData; stream.Close(); this.name = data.name; this.description = data.description; this.health = data.health; this.minSpeed = data.minSpeed; this.maxSpeed = data.maxSpeed; this.yaw = data.yaw; this.roll = data.roll; this.locked = data.locked; this.cost = data.cost; } }
// Start is called before the first frame update void Start() { PV = GetComponent <PhotonView>(); rollChild = transform.GetChild(0).GetComponent <RollSpaceship>(); data = GameObject.Find("SelectionManager").GetComponent <SpawnController>().Data; MAX_SPEED = data.MaximumSpeed; MIN_SPEED = data.MinimumSpeed; speed = MIN_SPEED; yaw = data.Yaw; acceleration = data.Acceleration; }
// Update is called once per frame void Update() { selectionTime -= Time.deltaTime; if (selectionTime <= 0.0f) { if (currentSelection == null) { //Selection time ran out, assign craft. int index = Random.Range(0, spacecraftDatas.Count); currentSelection = spacecraftDatas[index]; } GameObject.Find("RoomController").GetComponent <PhotonRoom>().StartGame(); enabled = false; } }