// Use this for initialization void Start() { // Init control playerTurn = true; playerNum = GameMaster.Instance.Turn; die = new Die (); die.Reseed (Environment.TickCount); damage = 0; // Init IDamageable objects // Create the enemy GameMaster.Instance.CreateEnemy(HostileType.Bandit, "Bandit"); // Get the enemyID from the list of enemy IDs; since this a 1v1 fight there should only be a single ID enemyID = GameMaster.Instance.EnemyIdentifiers[0]; // Get the enemy entity enemyEntity = (Bandit)EntityManager.Instance.GetEntity(enemyID); // Set the stats of the enemy enemyEntity.AttackPower = die.Roll(1, 9) + 5; enemyEntity.DefencePower = die.Roll(1, 9) + 5; // Set sprite of enemy if(enemyEntity.AttackPower > enemyEntity.DefencePower) { GameObject.Find ("Battler2Sprite").GetComponent<Image> ().sprite = Resources.Load<Sprite> ("Bandit1"); } //end if else { GameObject.Find ("Battler2Sprite").GetComponent<Image> ().sprite = Resources.Load<Sprite> ("Bandit2"); } // Set the enemy enemy = (IDamageable) enemyEntity; // Get the player's merchant GameMaster.Instance.LoadPlayers (); playerMerchant = (Merchant)GameMaster.Instance.GetPlayerScript(playerNum).Entity; playerAttack = playerMerchant.AttackPower; playerDefense = playerMerchant.DefencePower; GameObject.Find ("Battler1Sprite").GetComponent<Image> ().sprite = playerMerchant.GetSprite (2); // Set the player player = (IDamageable)playerMerchant; // Set background if(GameMaster.Instance.BattleMap == BattleMap.area01) { GameObject.Find("Background").GetComponent<Image>().sprite = Resources.Load<Sprite> ("BattleBackgrounds/Battle_Desert"); } //end if else if(GameMaster.Instance.BattleMap == BattleMap.area02) { GameObject.Find("Background").GetComponent<Image>().sprite = Resources.Load<Sprite> ("BattleBackgrounds/Battle_Euro"); } //end else if else if(GameMaster.Instance.BattleMap == BattleMap.area03) { GameObject.Find("Background").GetComponent<Image>().sprite = Resources.Load<Sprite> ("BattleBackgrounds/Battle_Metro"); } //end if else { GameObject.Find("Background").GetComponent<Image>().sprite = Resources.Load<Sprite> ("BattleBackgrounds/Battle_Snow"); } //end else // Init and set HUD objects GameObject.Find("Canvas").transform.Find("PlayerInventory").gameObject.SetActive(false); GameObject.Find("Canvas").transform.Find("AllyInventory").gameObject.SetActive(false); GameObject.Find("Canvas").transform.Find("Tooltip").gameObject.SetActive(false); playerName = GameObject.Find ("Battler1Name").GetComponent<Text> (); playerName.text = GameMaster.Instance.GetPlayerName (playerNum); enemyName = GameObject.Find ("Battler2Name").GetComponent<Text> (); GameObject.Find ("Battler1Attack").GetComponent<Text> ().text = playerMerchant.AttackPower.ToString (); GameObject.Find ("Battler2Attack").GetComponent<Text> ().text = enemyEntity.AttackPower.ToString (); GameObject.Find ("Battler1Defense").GetComponent<Text> ().text = playerMerchant.DefencePower.ToString (); GameObject.Find ("Battler2Defense").GetComponent<Text> ().text = enemyEntity.DefencePower.ToString (); playerHealth = GameObject.Find ("Battler1Health").GetComponent<Text> (); playerHealth.text = player.Health.ToString (); enemyHealth = GameObject.Find ("Battler2Health").GetComponent<Text> (); enemyHealth.text = enemy.Health.ToString (); playerBar = GameObject.Find ("Battler1HealthLeft").GetComponent<RectTransform> (); enemyBar = GameObject.Find ("Battler2HealthLeft").GetComponent<RectTransform> (); fightBoxText = GameObject.Find ("FightText").GetComponent<Text> (); // Init fight box and flavor fightBoxText.text = "The battlers square off!"; linesOfText = 1; verbs = new List<string>(); verbs.Add ("attacked"); verbs.Add ("retaliated against"); verbs.Add ("hammered"); verbs.Add ("struck"); verbs.Add ("lashed at"); // Check if the player is an AI if (playerMerchant.GameObj.GetComponent<Player>().IsAI) { // Disable the fight buttons GameObject.Find("AttackButtons/HeadButton").GetComponent<Button>().interactable = false; GameObject.Find("AttackButtons/TorsoButton").GetComponent<Button>().interactable = false; GameObject.Find("AttackButtons/FeintButton").GetComponent<Button>().interactable = false; } }
public bool CreateEntity(out int entID, EntityType type, GameObject gameObject, int playerNum = 0) { // The result of creation bool result = false; // Create the proper type of entity based upon the given type switch (type) { case EntityType.Merchant: { // Create the entity Merchant merchant = new Merchant(nextId, gameObject, GameMaster.Instance.GetPlayerColor(playerNum), GameMaster.Instance.GetPlayerName(playerNum)); // Now try to add the entity to the manager if (!EntityManager.Instance.AddEntity(merchant)) { // The entity couldn't be added to the manager so return failure result = false; } // Return success result = true; break; } // end case Merchant case EntityType.Porter: { // Create the entity Porter porter = new Porter(nextId, gameObject); // Now try to add the entity to the manager if (!EntityManager.Instance.AddEntity(porter)) { // The entity coulnd't be added to the manager so return failure result = false; } // Return success result = true; break; } // end case Porter case EntityType.Mercenary: { // Create the entity Mercenary mercenary = new Mercenary(nextId, gameObject); // Now try to add the entity to the manager if (!EntityManager.Instance.AddEntity(mercenary)) { // The entity coulnd't be added to the manager so return failure result = false; } // Return success result = true; break; } // end Mercenary case EntityType.Bandit: { // Create the entity Bandit bandit = new Bandit(nextId, gameObject); // Now try to add the entity to the manager if (!EntityManager.Instance.AddEntity(bandit)) { // The entity coulnd't be added to the manager so return failure result = false; } // Return success result = true; break; } // end case Bandit case EntityType.Mimic: { // Create the entity Mimic mimic = new Mimic(nextId, gameObject); // Now try to add the entity to the manager if (!EntityManager.Instance.AddEntity(mimic)) { // The entity coulnd't be added to the manager so return failure result = false; } // Return success result = true; break; } // end Mimic } // end switch type // Set the out ID variable entID = nextId; // Increment to the next ID nextId++; // Return the result return result; }