Ejemplo n.º 1
0
    void OnHeroDeath()
    {
        //Re-shuffle encore
        GenerationalTransition transition = (GenerationalTransition)transitions[player.generation];

        if (transition == GenerationalTransition.ENCORE)
        {
            //mess with the array list.
        }
        OnNextGeneration();
    }
Ejemplo n.º 2
0
    void OnNextGeneration()
    {
        //Only call this directly if the hero has NOT died.
        //Randomize player + "level up"

        //get transition
        GenerationalTransition transition = (GenerationalTransition)transitions[player.generation];

        player.generation++;

        //Always improve relics
        UpgradeRelics();

        #region undo penalties
        //Undo stat penalties
        if (penalized)
        {
            PenalizeStats(-1.0f);
        }
        #endregion

        if (transition == GenerationalTransition.CHILD)
        {
            //CHILD:
            //LOOK:
            ChildAppearance();            //randomize appearance within a smaller range (keep colors, change styles)
            RandomizeGender();            //randomize gender
            RandomizeClass();             //randomize class
        }
        if (transition == GenerationalTransition.STUDENT)
        {
            //STUDENT:
            RandomizeAppearance();             //randomize appearance
            RandomizeGender();                 //randomize gender
            //keep class
        }
        if (transition == GenerationalTransition.ENCORE)
        {
            //ENCORE:
            AgeAppearance();             //age appearance
            //keep gender
            //keep class

            //stat penalties //store something to undo them
            PenalizeStats(1.0f);
            penalized = true;
            //attack bonuses?
            UpgradeSkills();
        }
    }