Ejemplo n.º 1
0
    public void ObtainWeapon(Commandments.Element element, bool obtain = true)
    {
        WeaponSettings aux = settings[element];

        aux.obtained      = obtain;
        settings[element] = aux;
    }
Ejemplo n.º 2
0
    public void ApplyCode(Cheats cheat)
    {
        //return;
        //Debug.Log("ApplyCode: " + cheat);
        switch (cheat)
        {
        case Cheats.AllWeapons:
            for (Commandments.Element element = Commandments.Element.EARTH; element < Commandments.Element.NEUTRAL; element++)
            {
                UIManager.GetInstance().weapon.ObtainWeapon(element);
            }
            break;

        case Cheats.LeaveDeathWeapon:
            for (Commandments.Element element = Commandments.Element.EARTH; element < Commandments.Element.NEUTRAL; element++)
            {
                UIManager.GetInstance().weapon.ObtainWeapon(element, false);
            }
            UIManager.GetInstance().weapon.ObtainWeapon(Commandments.Element.DEATH);
            UIManager.GetInstance().weapon.SetSelectedWeapon(Commandments.Element.DEATH.toWeapon());
            break;

        case Cheats.LeaveWaterWeapon:
            for (Commandments.Element element = Commandments.Element.EARTH; element < Commandments.Element.NEUTRAL; element++)
            {
                UIManager.GetInstance().weapon.ObtainWeapon(element, false);
            }
            UIManager.GetInstance().weapon.ObtainWeapon(Commandments.Element.WATER);
            UIManager.GetInstance().weapon.SetSelectedWeapon(Commandments.Element.WATER.toWeapon());
            break;
        }
    }
 public void removeImmunity(Commandments.Element elementValue)
 {
     numImmunities[elementValue.toInt()]--;
     if (numImmunities[elementValue.toInt()] < 0)
     {
         numImmunities[elementValue.toInt()] = 0;
     }
 }
Ejemplo n.º 4
0
        internal static float damageFromTo(Commandments.Element attackElement, Commandments.Element myElement)
        {
            if (attackElement == Commandments.Element.NEUTRAL || myElement == Commandments.Element.NEUTRAL)
            {
                return(1);
            }

            return(Commandments.damageTable[attackElement.toInt(), myElement.toInt()]);
        }
Ejemplo n.º 5
0
 public void setParameter(Commandments.Element newElement, float damage, float repelForce, float critChance, int direction, GameObject owner)
 {
     this.myElement  = newElement;
     this.damage     = damage;
     this.repelForce = repelForce;
     this.critChance = critChance;
     maxSpeed.x     *= direction;
     this.owner      = owner;
 }
Ejemplo n.º 6
0
    public List <SaveJson.WeaponsInfo> SaveJson()
    {
        List <SaveJson.WeaponsInfo> saves = new List <SaveJson.WeaponsInfo>();

        for (Commandments.Element element = Commandments.Element.EARTH; element < Commandments.Element.NEUTRAL; element++)
        {
            SaveJson.WeaponsInfo weapon = new SaveJson.WeaponsInfo();
            weapon.id       = (Commandments.Weapon)element.toWeapon();
            weapon.obtained = settings[element].obtained;
            saves.Add(weapon);
        }
        return(saves);
    }
Ejemplo n.º 7
0
 public void ApplyJson(SaveJson.WeaponsInfo[] save)
 {
     if (save == null)
     {
         for (Commandments.Element element = Commandments.Element.EARTH; element < Commandments.Element.NEUTRAL; element++)
         {
             ObtainWeapon(element, element == Commandments.Element.DEATH);
         }
     }
     else
     {
         foreach (SaveJson.WeaponsInfo weapon in save)
         {
             ObtainWeapon(weapon.id.toElement(), weapon.obtained);
         }
     }
 }
Ejemplo n.º 8
0
    void Start()
    {
        bool startWeapon = false;

        for (Commandments.Element element = Commandments.Element.EARTH; element < Commandments.Element.NEUTRAL; element++)
        {
            WeaponSettings aux = settings[element];
            aux.id            = element;
            settings[element] = aux;
            if ((!startWeapon) && (aux.obtained))
            {
                startWeapon    = true;
                selectedWeapon = element.toWeapon();
            }
        }

        manager = UIManager.GetInstance();

        smallMenu.Init(settings.Count, selectedWeapon);
        showSmallMenu = false;
    }
 public float getDamageModifier(Commandments.Element elemento)
 {
     return(damageModifier[elemento.toInt()]);
 }
    public virtual float ReceiveDamage(Vector2 direction, float force, float damage, bool critical = false, Commandments.Element enemyElement = Commandments.Element.NEUTRAL, Character source = null)
    {
        rigidBody.velocity = new Vector2(0, rigidBody.velocity.y);

        rigidBody.AddForce(direction * force);

        if (takingDamageParameter != null)
        {
            animator.SetTrigger(takingDamageParameter.name);
        }

        //damage *= Utilities.damageFromTo(element, myElement);

        //hp -= damage;
        ChangeHP(-damage);

        return(damage);
    }
 public void newImmunity(Commandments.Element newElement)
 {
     numImmunities[newElement.toInt()]++;
 }
Ejemplo n.º 12
0
    public override float ReceiveDamage(Vector2 direction, float force, float damage, bool critical = false, Commandments.Element attackerElement = Commandments.Element.NEUTRAL, Character source = null)
    {
        if (currentState == "dying")
        {
            return(0);
        }

        float receivedDamage = 0;
        bool  ret            = CoolDownManager.Apply(Identifiers.Invulnerability.ToString(), gameObject, invulnerabilityTime, () =>
        {
            damage *= damageModifier[attackerElement.toInt()];

            receivedDamage = base.ReceiveDamage(direction, force, damage, critical, attackerElement, source);

            if (hp <= 0)
            {
                if (takingDamageParameter != null)
                {
                    animator.ResetTrigger(takingDamageParameter.name);
                }
                if (critical)
                {
                    float criticalValue = 100 * Random.value;



                    if (criticalValue > (100 - scriptDropChance * Commandments.Modifiers.IncreaseScriptDropRate.GetValue()))
                    {
                        GameManager.GetInstance().SpawnYokaiEssence(transform.position, yokaiRank, player);
                    }
                }
                Dying();
            }

            return(true);
        });

        ////print("Received Damage = " + receivedDamage);
        return(receivedDamage);
    }