Example #1
0
    public CombatController SpawnCombatAvatar(Vector3 location, Quaternion rotation, bool asPC)
    {
        dead = false;
        if (currentHealth <= 0)
        {
            currentHealth = 1;
        }
        GameObject combatPrefab = (GameObject)Resources.Load("Prefabs/Combat/" + avatarFileName, typeof(GameObject));

        avatar    = GameObject.Instantiate(combatPrefab, location, rotation) as GameObject;
        healthBar = avatar.transform.Find("Canvas").transform.Find("HealthBar").GetComponent <IndicatorBar>();
        healthBar.SetSliderMax(MaxHealth());
        healthBar.SetSlider(currentHealth);
        manaBar = avatar.transform.Find("Canvas").transform.Find("ManaBar").GetComponent <IndicatorBar>();
        manaBar.SetSliderMax(MaxMana());
        manaBar.SetSlider(currentMana);
        avatar.AddComponent <ActionMove>();
        avatar.AddComponent <ActionBasicAttack>();
        if (asPC)
        {
            combatController = avatar.AddComponent <PlayerController>();
        }
        else
        {
            combatController = avatar.AddComponent <EnemyController>();
        }
        combatController.SetCharacterSheet(this);
        GameObject.FindObjectOfType <TurnManager>().combatants.Add(combatController);
        // List<Action> specialMoves = new List<Action> { };
        return(combatController);
    }
Example #2
0
 public void ReceiveDamage(int amount)
 {
     currentHealth -= amount;
     if (currentHealth <= 0)
     {
         currentHealth = 0;
         dead          = true;
         combatController.Die();
         GameObject.Destroy(avatar);
     }
     healthBar.SetSlider(currentHealth);
 }