void FindEnemies() { EnemyLibraryCard[] bunch = new EnemyLibraryCard[EnemyLibrary.Lib.Count]; EnemyLibrary.Lib.Values.CopyTo (bunch, 0); enemyPortraitTextures = new Texture2D[bunch.Length]; enemyAttackTextures = new Texture2D[bunch.Length]; allEnemies = new List<EnemyLibraryCard> (); for(int i = 0; i < bunch.Length; i++) { allEnemies.Add(bunch[i]); enemyPortraitTextures[i] = Resources.Load<Texture2D> (bunch[i].SpritePath); enemyAttackTextures[i] = (Texture2D)Resources.Load("sprites/targeting icons/range " + bunch[i].AttackTargetType.ToString() + " " + bunch[i].AttackMinRange.ToString() + "-" + bunch[i].AttackMaxRange.ToString()); } }
void FindEnemies() { EnemyLibraryCard[] bunch = new EnemyLibraryCard[EnemyLibrary.Lib.Count]; EnemyLibrary.Lib.Values.CopyTo(bunch, 0); enemyPortraitTextures = new Texture2D[bunch.Length]; enemyAttackTextures = new Texture2D[bunch.Length]; allEnemies = new List <EnemyLibraryCard> (); for (int i = 0; i < bunch.Length; i++) { allEnemies.Add(bunch[i]); enemyPortraitTextures[i] = Resources.Load <Texture2D> (bunch[i].SpritePath); enemyAttackTextures[i] = (Texture2D)Resources.Load("sprites/targeting icons/range " + bunch[i].AttackTargetType.ToString() + " " + bunch[i].AttackMinRange.ToString() + "-" + bunch[i].AttackMaxRange.ToString()); } }
// base method. only really used to load an enemy into a specific place in the tutorial // and also to load dudes in a saved state (that's why it returns tempEScript) public Enemy LoadEnemy(string EnemyName, int xPosition, int yPosition, int health = 0) { string EnemyToLoad = "prefabs/dummy enemy"; GameObject tempGO = (GameObject)Instantiate((GameObject)Resources.Load(EnemyToLoad)); tempGO.GetComponent <GridUnit>().xPosition = xPosition; tempGO.GetComponent <GridUnit>().yPosition = yPosition; tempGO.transform.position = new Vector3(xPosition, yPosition, 0); S.GameControlInst.EnemyObjs.Add(tempGO); EnemyLibraryCard EnemyLC = Lib[EnemyName]; if (EnemyLC.IsSubclass) { string enemyScriptName = EnemyName; enemyScriptName = enemyScriptName.Replace(" ", ""); enemyScriptName = enemyScriptName.First().ToString().ToUpper() + enemyScriptName.Substring(1) + "Enemy"; tempGO.AddComponent(System.Type.GetType(enemyScriptName)); } else { tempGO.AddComponent <Enemy>(); } Enemy tempEScript = tempGO.GetComponent <Enemy>(); tempEScript.Initialize(EnemyLC); if (health != 0) { tempEScript.CurrentHealth = health; } return(tempEScript); }