/** * Loads the save data from the disk */ public static void loadData() { savePath = Application.persistentDataPath + "/save.dat"; if (File.Exists(savePath)) { BinaryFormatter bf = new BinaryFormatter(); FileStream file = new FileStream(savePath, FileMode.Open); saveWorld = (SaveWorld)bf.Deserialize(file); file.Close(); for (int i = 0; i < 10; i++) { for (int j = 0; j < 10; j++) { Debug.Log(saveWorld.rotations[i, j]); if (saveWorld.IDs[i, j] != -1) { GameManager.world[i, j] = Instantiate(PrefabManager.IDToGameObject(saveWorld.IDs[i, j]), new Vector3(saveWorld.positions[i, j, 0], saveWorld.positions[i, j, 1], 0f), Quaternion.Euler(0f, 0f, saveWorld.rotations[i, j])) as GameObject; } } } } }
private void Update() { if (Input.GetKeyDown(KeyCode.Escape)) { GetComponent <EditMode>().StopEdit(); GetComponent <EditMode>().StopDelete(); } if (EditMode.isEditing) { return; } if (Input.GetKeyDown(KeyCode.F)) { GetComponent <EditMode>().StartEdit(); } if (Input.GetKeyDown(KeyCode.D)) { GetComponent <EditMode>().StartDelete(); } if (Input.GetKeyDown(KeyCode.C)) { GetComponent <EditMode>().StartPlacing(PrefabManager.IDToGameObject(3)); } if (Input.GetKeyDown(KeyCode.S)) { GetComponent <EditMode>().StartPlacing(salePrefab); } }
IEnumerator Produce() { bool enoughItems; while (true) { yield return(new WaitForSeconds(1)); if (!EditMode.isEditing) { enoughItems = true; // Control of items are sufficient to produce foreach (int item in inputItems.Keys) { //if bank doesn't have item or not enough if (!itemBank.ContainsKey(item) || itemBank[item] < inputItems[item]) { enoughItems = false; } } if (enoughItems) { //Remove used Items foreach (int item in inputItems.Keys) { itemBank[item] -= inputItems[item]; } Instantiate(PrefabManager.IDToGameObject(outputItem), transform.position + 2 * Vector3.down + Vector3.back, Quaternion.identity); } } } }
IEnumerator Spawn() { while (true) { if (!EditMode.isEditing && spawnItem != -1) { Instantiate(PrefabManager.IDToGameObject(spawnItem), transform.position + 2 * Vector3.down + Vector3.back, Quaternion.identity); } yield return(new WaitForSeconds(spawnTime)); } }
public void buyItem(int ID) { GetComponent <EditMode>().StartPlacing(PrefabManager.IDToGameObject(ID)); }