public void SetHeatlh(CharacterStats_SO characterDefinition)
    {
        healthbar.maxValue = characterDefinition.maxHealth;
        healthbar.value    = characterDefinition.currentHealth;

        healthbar.fillRect.GetComponentInChildren <Image>().color = Color.Lerp(low, high, healthbar.normalizedValue);
    }
    void Start()
    {
        if (characterDefinition_Template != null)
        {
            characterDefinition = Instantiate(characterDefinition_Template);
        }

        if (!characterDefinition.setManually)
        {
            characterDefinition.maxHealth     = 100;
            characterDefinition.currentHealth = 50;

            characterDefinition.maxMana     = 25;
            characterDefinition.currentMana = 10;

            characterDefinition.maxWealth     = 500;
            characterDefinition.currentWealth = 0;

            characterDefinition.baseDamage    = 2;
            characterDefinition.currentDamage = characterDefinition.baseDamage;

            characterDefinition.baseResistance    = 0;
            characterDefinition.currentResistance = 0;

            characterDefinition.maxEncumbrance     = 50f;
            characterDefinition.currentEncumbrance = 0f;

            characterDefinition.charExperience = 0;
            characterDefinition.charLevel      = 1;
        }
    }
 private void Awake()
 {
     if (characterDefinition_Template != null)
     {
         characterDefinition = Instantiate(characterDefinition_Template);
     }
 }
Esempio n. 4
0
 void Awake()
 {
     //make sure it's initialized before any other class tries to manipulate its values.
     if (characterDefinition_Template != null)
     {
         characterDefinition = Instantiate(characterDefinition_Template);
     }
 }
 void Start()
 {
     if (charStats != null)
     {
         foundStats = GameObject.FindGameObjectWithTag("Player");
         charStats  = foundStats.GetComponent <CharacterStats_SO>();
     }
 }
Esempio n. 6
0
    public void Add_Skill_To_Character()
    {
        CharacterStats_SO testCharacter = ScriptableObject.CreateInstance <CharacterStats_SO>();
        Skill_SO          testSkill     = ScriptableObject.CreateInstance <Skill_SO>();

        testCharacter.SkillList.Add(testSkill);
        Assert.AreEqual(testCharacter.SkillList.Count, 1);
    }
Esempio n. 7
0
 private void Start()
 {
     LoadStats();
     if (stats_Template != null)
     {
         stats = Instantiate(stats_Template);
     }
     else
     {
         Debug.Log("[Character Stats] There is no stats template attacked to " + gameObject.name);
     }
 }
Esempio n. 8
0
    public void Add_Skill_To_Character()
    {
        CharacterStats_SO testCharacter = ScriptableObject.CreateInstance <CharacterStats_SO>();

        testCharacter.baseSpecialAttack     = 10;
        testCharacter.currentSpecialAttack  = 10;
        testCharacter.baseSpecialDefense    = 15;
        testCharacter.currentSpecialDefense = 15;
        Assert.AreEqual(testCharacter.baseSpecialAttack, 10);
        Assert.AreEqual(testCharacter.currentSpecialAttack, 10);
        Assert.AreEqual(testCharacter.baseSpecialDefense, 15);
        Assert.AreEqual(testCharacter.currentSpecialDefense, 15);
    }
    private void Awake()
    {
        #region Komment CharacterDefnition_Template
        // This has to be done in the Awake Method to make sure it is saved before any changes are made to our values.
        // Cause these are the values we want to start the game with! They might be overridden if we have this take place in start!
        // We want to make sure that our charDefinition is fully initialized before manipulating its values!

        // There is a problem any changes to the our characterDefinition at runtime will persist across game sessions!
        // We dont want that cause we want out charcterstats to act as a template or definition something that is not affected at runtime!
        // Was hier passiert ist sombald das game Startet wird charDerfinition = unserer charDefintion_Template gesetzt und at runtime
        // werden nur die Werte der characterDefinition verändert jedoch nicht die der Template die als eine art Speicher dient!
        #endregion
        if (characterDefiniton_Template != null)
        {
            charDefinition = Instantiate(characterDefiniton_Template);
        }
    }
Esempio n. 10
0
    CharacterStats_SO UpdatePlayerStats(CharacterStats_SO PlayerStatsOld)
    {
        var PlayerStatsNew = new CharacterStats_SO();

        PlayerStatsNew.setManually        = true;
        PlayerStatsNew.maxHealth          = PlayerStatsOld.maxHealth;
        PlayerStatsNew.currentHealth      = PlayerStatsOld.currentHealth;
        PlayerStatsNew.maxMana            = PlayerStatsOld.maxMana;
        PlayerStatsNew.currentMana        = PlayerStatsOld.currentMana;
        PlayerStatsNew.currentDamage      = PlayerStatsOld.currentDamage;
        PlayerStatsNew.maxEncumbrance     = PlayerStatsOld.maxEncumbrance;
        PlayerStatsNew.currentEncumbrance = PlayerStatsOld.currentEncumbrance;
        PlayerStatsNew.charExperience     = PlayerStatsOld.charExperience;
        PlayerStatsNew.charLevel          = PlayerStatsOld.charLevel;
        PlayerStatsNew.charLevelUps       = PlayerStatsOld.charLevelUps;
        PlayerStatsNew.currentMagicDamage = PlayerStatsOld.currentMagicDamage;
        PlayerStatsNew.charRenevalPoints  = PlayerStatsOld.charRenevalPoints;
        return(PlayerStatsNew);
    }
Esempio n. 11
0
    void Start()
    {
        if (null != characterDefinitionTemplate)
        {
            characterDefinition = Instantiate(characterDefinitionTemplate);
        }

        if (!characterDefinition.setManually)
        {
            characterDefinition.maxHealth     = 100;
            characterDefinition.CurrentHealth = 50;

            characterDefinition.maxMana     = 25;
            characterDefinition.currentMana = 10;

            characterDefinition.maxWealth     = 500;
            characterDefinition.currentWealth = 0;

            characterDefinition.baseDamage    = 2;
            characterDefinition.currentDamage = characterDefinition.baseDamage;

            characterDefinition.baseResistance    = 0;
            characterDefinition.currentResistance = 0;

            characterDefinition.maxEncumbrance     = 50f;
            characterDefinition.currentEncumbrance = 0f;

            characterDefinition.charExperience = 0;
            //characterDefinition.charLevel = 1;
        }

        if (defaultWeapon != null)
        {
            characterDefinition.EquipWeapon(defaultWeapon, characterWeaponSlot);
        }

        characterDefinition.Init();

        InvokeRepeating("RegenHealth", 1, 1);
    }
    public void GiveCharactersInBattleHealthbars(BattleSystem battleSystem)
    {
        //prolly switch to using characters in battle
        if (GameManger.gameManger.bossBattle)
        {
            GameObject        boss                     = GameManger.gameManger.areaData.possibleEnemys[5];
            Healthbar         enemyHealthbar           = battleSystem.EnemyCloneGameObjectsInBattle[2].GetComponent <CharacterStats>().healthbar;
            CharacterStats_SO enemyCharacterDefinition = boss.GetComponent <CharacterStats>().characterDefinition;
            enemyHealthbar.SetHeatlh(enemyCharacterDefinition);
        }
        else
        {
            for (int i = 0; i < GameManger.gameManger.EncounteredEnemyNames.Count; i++)
            {
                if (GameManger.gameManger.EncounteredEnemyNames[i] != null)
                {
                    foreach (GameObject enemy in GameManger.gameManger.areaData.possibleEnemys)
                    {
                        if (GameManger.gameManger.EncounteredEnemyNames[i] == enemy.name)
                        {
                            Healthbar         enemyHealthbar           = battleSystem.EnemyCloneGameObjectsInBattle[i].GetComponent <CharacterStats>().healthbar;
                            CharacterStats_SO enemyCharacterDefinition = enemy.GetComponent <CharacterStats>().characterDefinition;
                            enemyHealthbar.SetHeatlh(enemyCharacterDefinition);
                            break;
                        }
                    }
                }
            }
        }

        for (int i = 0; i < GameManger.gameManger.party.PlayerParty.Count; i++)
        {
            if (GameManger.gameManger.party.PlayerParty[i] != null)
            {
                Healthbar         playerHealthbar           = battleSystem.PlayerCloneGameObjectsInBattle[i].GetComponent <CharacterStats>().healthbar;
                CharacterStats_SO playerCharacterDefinition = GameManger.gameManger.party.PlayerParty[i].GetComponent <CharacterStats>().characterDefinition;
                playerHealthbar.SetHeatlh(playerCharacterDefinition);
            }
        }
    }
Esempio n. 13
0
 void Start()
 {
     characterStatsDuringGame = null;
 }