Beispiel #1
0
    /// <summary>
    /// Recogemos los datos del jugador y los guardamos en el fichero de guardado
    /// </summary>
    /// <param name="collision"></param>
    private void OnTriggerEnter2D(Collider2D collision)
    {
        if (!collision.CompareTag("Knuckles") || isActive)
        {
            return;
        }
        //Es un checkpoint válido. Reseteo todos los Chekpoints y lo habilito

        Knuckles knux = collision.GetComponent <Knuckles>();

        isActive = true;
        _ani.SetTrigger("Activate");

        if (_bgmChange && _bgmSource)
        {
            _bgmSource.clip = _bgmChange;
            _bgmSource.Play();
        }

        AudioSource.PlayClipAtPoint(_sfxActivated, transform.position);

        FSaveData data = new FSaveData();

        data.Position   = collision.transform.position;
        data.SceneIndex = SceneManager.GetActiveScene().buildIndex;
        data.bDodge     = knux.bDodge;
        data.bUppercut  = knux.bUppercut;
        data.iMaxJumps  = knux.iMaxJump;

        string s = JsonUtility.ToJson(data);

        Save(s);
    }
Beispiel #2
0
        public CombatFactors(Character character, StatsHunter stats, CalculationOptionsHunter calcOpts, BossOptions bossOpts)
        {
            Char = character;
            if (Char != null)
            {
                if (Char.Ranged != null)
                {
                    RW = Char.Ranged.Item;
                }
                else
                {
                    RW = new Knuckles();
                }
                if (Char.HunterTalents != null)
                {
                    Talents = Char.HunterTalents;
                }
                else
                {
                    Talents = new HunterTalents();
                }
            }
            CalcOpts = (calcOpts == null ? new CalculationOptionsHunter() : calcOpts);
            BossOpts = (bossOpts == null ? new BossOptions() : bossOpts);
            StatS    = stats;
            InvalidateCache();
            // Optimizations

            //Set_c_values();
        }
Beispiel #3
0
 private void OnTriggerEnter2D(Collider2D collision)
 {
     if (collision.CompareTag("Knuckles"))
     {
         Knuckles knux = collision.GetComponent <Knuckles>();
         ani.SetTrigger("Active");
         knux.Victory();
         if (_sfxGoal)
         {
             AudioSource.PlayClipAtPoint(_sfxGoal, transform.position);
         }
     }
 }
Beispiel #4
0
 public CombatFactors(Character character, StatsHunter stats, CalculationOptionsHunter calcOpts, BossOptions bossOpts)
 {
     Char = character;
     if (Char != null)
     {
         if (Char.Ranged != null)
             RW = Char.Ranged.Item;
         else
             RW = new Knuckles();
         if (Char.HunterTalents != null)
             Talents = Char.HunterTalents;
         else
             Talents = new HunterTalents();
     }
     CalcOpts = (calcOpts == null ? new CalculationOptionsHunter() : calcOpts);
     BossOpts = (bossOpts == null ? new BossOptions() : bossOpts);
     StatS = stats;
     InvalidateCache();
     // Optimizations
     
     //Set_c_values();
 }
        private MeleeWeapon ChangeWeapon(MeleeWeapon w)
        {
            MeleeWeapon n = null;

            if (w is Knuckles)
            {
                n = new Dagger();
            }
            else if (w is Dagger)
            {
                n = new Knuckles();
            }
            else if (w is Spear)
            {
                n = new Quarterstaff();
            }
            else if (w is Quarterstaff)
            {
                n = new Spear();
            }
            else if (w is Sword)
            {
                n = new Mace();
            }
            else if (w is Mace)
            {
                n = new Sword();
            }
            else if (w is Longsword)
            {
                n = new BattleAxe();
            }
            else if (w is BattleAxe)
            {
                n = new Longsword();
            }
            else if (w is Glaive)
            {
                n = new WarHammer();
            }
            else if (w is WarHammer)
            {
                n = new Glaive();
            }

            if (n == null)
            {
                return(null);
            }

            var level = w.level;

            if (level > 0)
            {
                n.Upgrade(level);
            }
            else if (level < 0)
            {
                n.Degrade(-level);
            }

            if (w.IsEnchanted)
            {
                n.Enchant(Weapon.Enchantment.Random());
            }

            n.levelKnown  = w.levelKnown;
            n.cursedKnown = w.cursedKnown;
            n.cursed      = w.cursed;

            Journal.Remove(Journal.Feature.WELL_OF_TRANSMUTATION);

            return(n);
        }