public override bool Load() { Enemies targetData = target as Enemies; var client = new DatabaseClient("", ""); string error = string.Empty; var db = client.GetDatabase(targetData.SheetName, ref error); var table = db.GetTable <EnemiesData>(targetData.WorksheetName) ?? db.CreateTable <EnemiesData>(targetData.WorksheetName); List <EnemiesData> myDataList = new List <EnemiesData>(); var all = table.FindAll(); foreach (var elem in all) { EnemiesData data = new EnemiesData(); data = Cloner.DeepCopy <EnemiesData>(elem.Element); myDataList.Add(data); } targetData.dataArray = myDataList.ToArray(); EditorUtility.SetDirty(targetData); AssetDatabase.SaveAssets(); return(true); }
public static EnemiesData LoadEnemies() { //* De donde obtengo la información/datos que quiero recuperar *// string path = Application.persistentDataPath + "/enemies.data"; // Si el archivo enemies.data existe en la ruta Application.persistentDataPath if (File.Exists(path)) { // Abro el archivo enemies.data en modo lectura FileStream fileStream = new FileStream(path, FileMode.Open); // Creo una variable de tipo BinaryFormatter para desrializar el contenido del archivo enemies.data, es decir, // convertir una cadena de bytes en tipos y datos que manejar dentro de mis clases y scripts c# BinaryFormatter binaryFormatter = new BinaryFormatter(); // Obtengo los datos del archivo enemies.data en el formato apropiado para poder recuperar los datos guardados. EnemiesData data = binaryFormatter.Deserialize(fileStream) as EnemiesData; // Cerramos el archivo enemies.data fileStream.Close(); // Devuelvo los datos recuperados para su correspondiente gestión. return(data); } // Si el archivo enemies.data NO existe en la ruta Application.persistentDataPath else { // Al no existir el archivo no podemos recuperar datos, devolvemos nulo. return(null); } }
public static void SaveEnemies(EnemiesData _EnemiesData) { BinaryFormatter binaryFormatter = new BinaryFormatter(); FileStream saveFile = File.Create(Application.persistentDataPath + "/EnemySave.dat"); binaryFormatter.Serialize(saveFile, _EnemiesData); saveFile.Close(); }
private void Awake() { _animator = GetComponent <Animator>(); _rigidbodies = GetComponentsInChildren <Rigidbody>(); SetRagdollState(false); SetMainPhysics(true); _enemiesData = Data.Instance.EnemiesData; _health = _enemiesData.GetHealth(); //_uiscore = GameObject.FindWithTag("Score").GetComponent<SetScore>(); }
// Use this for initialization void Start() { prevSceneName = GameObject.Find("GameManager").GetComponent <GameManager>().prevSceneName; string[,] monster_list = EnemiesData.GetMonsterList(prevSceneName); if (monster_num == -1) { monster_num = selectRandomMonster(monster_list); } string[] monster = EnemiesData.getMonster(prevSceneName, monster_num); setEnemyStatus(monster, prevSceneName); GameObject.Find("BattleField").transform.Find("LogModal").gameObject.GetComponent <LogController>().printText(new string[] { monster_name + "に" + encountStr[Random.Range(0, encountStr.Length - 1)] }).then(BattleManager.ToggleCommands); // 名前をlogにセット }
public static List <EnemyData> LoadEnemies() { List <EnemyData> enemiesData = null; if (File.Exists(Application.persistentDataPath + "/EnemySave.dat")) { BinaryFormatter bf = new BinaryFormatter(); FileStream file = File.Open(Application.persistentDataPath + "/EnemySave.dat", FileMode.Open); EnemiesData data = (EnemiesData)bf.Deserialize(file); enemiesData = data.Enemies; file.Close(); } return(enemiesData); }
private void InternalSaveEnemies() { List <EnemyData> enemyData = new List <EnemyData>(); for (int i = 0; i < m_Enemies.Count; i++) { enemyData.Add(m_Enemies[i].GetEnemySave()); } EnemiesData enemiesData = new EnemiesData { Enemies = enemyData }; SaveManager.SaveEnemies(enemiesData); }
public static void SaveEnemies(GameObject[] enemies) { string path = Application.persistentDataPath + "/enemies.data"; FileStream stream = new FileStream(path, FileMode.Create); EnemiesData data = new EnemiesData(enemies); BinaryFormatter binaryFormatter = new BinaryFormatter(); // Ejecuta la serialiazción (conversión a una cadena de bytes) y los guarda en el archivo player.data binaryFormatter.Serialize(stream, data); // Cierra el archivo player.data stream.Close(); }
string CallEnemy(out int id) { string name = ""; id = -1; int chance = Random.Range(1, 100); EnemiesData data = GetComponent <EnemiesData>(); for (int i = data.enemies.Length - 1; i >= 0; i--) { if (chance <= data.enemies[i].spawnChance) { name = data.enemies[i].name; id = i; break; } } return(name); }
private void Awake() { _projectile = _projectilePrefab.GetComponent <CannonProjectile>(); _enemies = FindObjectOfType <EnemiesData>(); _delayShot = new WaitForSeconds(_shootInterval); }
void Awake() { enemiesData = this.gameObject.GetComponent<EnemiesData>(); }
private void Awake() { _enemies = FindObjectOfType<EnemiesData>(); _delayShot = new WaitForSeconds(_shootInterval); }
void OnSceneLoaded(Scene scene, LoadSceneMode loadSceneMode) { // Si pulsamos load game la variable load game estara a true if (loadGame) { loadGame = false; // Cargar datos guardados PlayerData playerData = SaveSystem.LoadPlayer(); if (playerData != null) { // Obtenemos la referencia del player GameObject player = GameObject.FindGameObjectWithTag("Player"); // Cogemos el valor de vida guardado y lo escribimos en las variables relacionadas con la vida player.GetComponent <PlayerHealth>().currentHealth = playerData.health; player.GetComponent <PlayerHealth>().startingHealth = playerData.health; GameObject.FindGameObjectWithTag("SliderHealth").GetComponent <Slider>().value = playerData.health; // Coger el valor de la posicion y la rotacion y se lo ponemos al Player player.gameObject.transform.position = new Vector3(playerData.position[0], playerData.position[1], playerData.position[2]); player.gameObject.transform.rotation = Quaternion.Euler(playerData.rotation[0], playerData.rotation[1], playerData.rotation[2]); // Cargar valor de puntuacion ScoreManager.score = playerData.score; GameObject.FindGameObjectWithTag("Score").GetComponent <Text>().text = playerData.score.ToString(); // Cargar los valores de la camara GameObject camera = GameObject.FindGameObjectWithTag("MainCamera"); camera.gameObject.transform.position = new Vector3(playerData.positionCamera[0], playerData.positionCamera[1], playerData.positionCamera[2]); camera.gameObject.transform.rotation.Set(playerData.rotationCamera[0], playerData.rotationCamera[1], playerData.rotationCamera[2], playerData.rotationCamera[3]); } else { Debug.Log("SaveLoadManager;;OnSceneLoaded::playerData NULL"); } // Cargar EnemiesData enemiesData = SaveSystem.LoadEnemies(); if (enemiesData != null) { int numeroEnemigos = enemiesData.tipoEnemigo.Length; for (int i = 0; i < numeroEnemigos; i++) { // Obtener una referencia a GameObject que quier instanciar, se encuentra en enemy manager GameObject[] enemiesFromEnemyManager = GameObject.FindObjectOfType <EnemyManager>().enemies; for (int j = 0; j < enemiesFromEnemyManager.Length; j++) { if (enemiesData.tipoEnemigo[i].Contains(enemiesFromEnemyManager[j].name)) { Instantiate( enemiesFromEnemyManager[j], new Vector3(enemiesData.position[i][0], enemiesData.position[i][1], enemiesData.position[i][2]), Quaternion.Euler(enemiesData.rotation[i][0], enemiesData.rotation[i][1], enemiesData.rotation[i][2]) ); } } } } else { Debug.Log("SaveLoadManager::OnSceneLoaded::enemiesData Null", this.gameObject); } } }
// Use this for initialization void Start() { if (GameObject.Find("GameManager").GetComponent <GameManager>().bosses != null && GameObject.Find("GameManager").GetComponent <GameManager>().bosses.Contains(EnemiesData.getMonster(SceneManager.GetActiveScene().name, monster_num)[1])) { Destroyer(); } else { switch (EnemyController.monster_name) //戦闘終了後に呼び出したい処理を書く。逃げれない敵を指定すれば倒した後の処理となる。Endingへの遷移、倒した後の敵の命乞い等役立ててください。 { case "ぬし": LogController.logController.printTextByFileName("west/boss2.txt").then(Destroyer); GameObject.Find("GameManager").GetComponent <GameManager>().bosses.Add("ぬし"); break; case "上級でんだいせい": LogController.logController.printTextByFileName("d22/boss2.txt").then(Destroyer); GameObject.Find("GameManager").GetComponent <GameManager>().bosses.Add("上級でんだいせい"); break; case "がっかたんとう": LogController.logController.printTextByFileName("d1/boss2.txt").then(Destroyer); GameObject.Find("GameManager").GetComponent <GameManager>().bosses.Add("がっかたんとう"); break; case "GOD": LogController.logController.printTextByFileName("d1/GOD2.txt").then(Destroyer); GameObject.Find("GameManager").GetComponent <GameManager>().bosses.Add("GOD"); break; case "マスクドADACHI": LogController.logController.printTextByFileName("d1/Last2.txt").then(Callback1); GameObject.Find("GameManager").GetComponent <GameManager>().bosses.Add("GOD"); break; } } }