private static void AddSerializableEnemy(SerializableEnemy serializableObject)
        {
            if (Instance.serializableEnemies.ContainsKey(serializableObject.LoadID))
            {
                string message = string.Format(duplicateLoadIDErrorText, "AddSerializableEnemy()", serializableObject.LoadID);
                DaggerfallUnity.LogMessage(message);
                return;
            }

            Instance.serializableEnemies.Add(serializableObject.LoadID, serializableObject);
        }
        public void RestoreEnemyData(EnemyData_v1[] enemies)
        {
            if (enemies == null || enemies.Length == 0)
            {
                return;
            }

            for (int i = 0; i < enemies.Length; i++)
            {
                // Create target GameObject
                GameObject go = GameObjectHelper.InstantiatePrefab(DaggerfallUnity.Instance.Option_EnemyPrefab.gameObject, enemies[i].gameObjectName, null, Vector3.zero);
                go.transform.parent = GameObjectHelper.GetSpawnParentTransform();

                // Set LoadID
                DaggerfallEnemy enemy = go.GetComponent <DaggerfallEnemy>();
                enemy.LoadID = enemies[i].loadID;

                // Restore save data
                SerializableEnemy serializableEnemy = go.GetComponent <SerializableEnemy>();
                serializableEnemy.RestoreSaveData(enemies[i]);
            }
        }
예제 #3
0
        private static void AddSerializableEnemy(SerializableEnemy serializableObject)
        {
            if (Instance.serializableEnemies.ContainsKey(serializableObject.LoadID))
            {
                string message = string.Format(duplicateLoadIDErrorText, "AddSerializableEnemy()", serializableObject.LoadID);
                DaggerfallUnity.LogMessage(message);
                return;
            }

            Instance.serializableEnemies.Add(serializableObject.LoadID, serializableObject);
        }