public override WeaponInfo ToInfo( WeaponModifier.ModifierNames mod )
    {
        float moddedDamage = damage * WeaponModifier.GetModifierValue( mod, WeaponModifier.Stats.DAMAGE );
        float moddedFireRate = fireTime / WeaponModifier.GetModifierValue( mod, WeaponModifier.Stats.FIRE_RATE );
        float moddedAccuracy = maxSpreadAngle / WeaponModifier.GetModifierValue( mod, WeaponModifier.Stats.ACCURACY );

        WeaponInfo info = new WeaponInfo( weaponType, mod );

        if( weaponType != WeaponType.SCATTER_SHOT )
        {
            info.AddAttribute( "Damage", RoundStatToDecimalPlaces( moddedDamage, 1 ).ToString() );
        }
        else
        {
            int bonusProjectiles = (int)WeaponModifier.GetModifierValue( mod, WeaponModifier.Stats.BONUS_PROJECTILES );
            int count = projectilesPerShot + bonusProjectiles;
            info.AddAttribute( "Damage", RoundStatToDecimalPlaces( damage, 1 ) + " (x" + count + ")" );
        }

        info.AddAttribute( "Fire Rate", RoundStatToDecimalPlaces( 1 / moddedFireRate, 1 ) + "/s" );
        info.AddAttribute( "Projectile Speed", RoundStatToDecimalPlaces( projectileSpeed, 1 ).ToString() );
        info.AddAttribute( "Accuracy", RoundStatToDecimalPlaces( ( 1 - ( moddedAccuracy * 2 / 180 ) ) * 100, 1 ) + "%" );

        return info;
    }
示例#2
0
    public override WeaponInfo ToInfo(WeaponModifier.ModifierNames mod)
    {
        float moddedDamage   = damage * WeaponModifier.GetModifierValue(mod, WeaponModifier.Stats.DAMAGE);
        float moddedFireRate = fireTime / WeaponModifier.GetModifierValue(mod, WeaponModifier.Stats.FIRE_RATE);
        float moddedAccuracy = maxSpreadAngle / WeaponModifier.GetModifierValue(mod, WeaponModifier.Stats.ACCURACY);

        WeaponInfo info = new WeaponInfo(weaponType, mod);

        if (weaponType != WeaponType.SCATTER_SHOT)
        {
            info.AddAttribute("Damage", RoundStatToDecimalPlaces(moddedDamage, 1).ToString());
        }
        else
        {
            int bonusProjectiles = (int)WeaponModifier.GetModifierValue(mod, WeaponModifier.Stats.BONUS_PROJECTILES);
            int count            = projectilesPerShot + bonusProjectiles;
            info.AddAttribute("Damage", RoundStatToDecimalPlaces(damage, 1) + " (x" + count + ")");
        }

        info.AddAttribute("Fire Rate", RoundStatToDecimalPlaces(1 / moddedFireRate, 1) + "/s");
        info.AddAttribute("Projectile Speed", RoundStatToDecimalPlaces(projectileSpeed, 1).ToString());
        info.AddAttribute("Accuracy", RoundStatToDecimalPlaces((1 - (moddedAccuracy * 2 / 180)) * 100, 1) + "%");

        return(info);
    }
示例#3
0
 public override WeaponInfo ToInfo()
 {
     WeaponInfo info = new WeaponInfo( weaponType, modifier );
     info.AddAttribute( "Damage", RoundStatToDecimalPlaces( damage, 1 ) + "/s" );
     info.AddAttribute( "Range", RoundStatToDecimalPlaces( beamRange, 1 ).ToString() );
     return info;
 }
示例#4
0
 public override WeaponInfo ToInfo()
 {
     WeaponInfo info = new WeaponInfo( weaponType, modifier );
     info.AddAttribute( "Damage", RoundStatToDecimalPlaces( damage, 1 ).ToString() );
     info.AddAttribute( "Fire Rate", RoundStatToDecimalPlaces( 1 / fireTime, 1 ) + "/s" );
     info.AddAttribute( "Projectile Speed", RoundStatToDecimalPlaces( projectileSpeed, 1 ).ToString() );
     return info;
 }
示例#5
0
    public override WeaponInfo ToInfo()
    {
        WeaponInfo info = new WeaponInfo(weaponType, modifier);

        info.AddAttribute("Damage", RoundStatToDecimalPlaces(damage, 1) + "/s");
        info.AddAttribute("Range", RoundStatToDecimalPlaces(beamRange, 1).ToString());
        return(info);
    }
示例#6
0
    public override WeaponInfo ToInfo()
    {
        WeaponInfo info = new WeaponInfo(weaponType, modifier);

        info.AddAttribute("Damage", RoundStatToDecimalPlaces(damage, 1).ToString());
        info.AddAttribute("Fire Rate", RoundStatToDecimalPlaces(1 / fireTime, 1) + "/s");
        info.AddAttribute("Projectile Speed", RoundStatToDecimalPlaces(projectileSpeed, 1).ToString());
        return(info);
    }
示例#7
0
    public override WeaponInfo ToInfo(WeaponModifier.ModifierNames mod)
    {
        float      moddedDamage = damage * WeaponModifier.GetModifierValue(mod, WeaponModifier.Stats.DAMAGE);
        float      moddedRange  = beamRange * WeaponModifier.GetModifierValue(mod, WeaponModifier.Stats.BEAM_RANGE);
        WeaponInfo info         = new WeaponInfo(weaponType, mod);

        info.AddAttribute("Damage", RoundStatToDecimalPlaces(moddedDamage, 1) + "/s");
        info.AddAttribute("Range", RoundStatToDecimalPlaces(moddedRange, 1).ToString());
        return(info);
    }
示例#8
0
    public override WeaponInfo ToInfo( WeaponModifier.ModifierNames mod )
    {
        float moddedDamage = damage * WeaponModifier.GetModifierValue( mod, WeaponModifier.Stats.DAMAGE );
        float moddedSpeed = projectileSpeed * WeaponModifier.GetModifierValue( mod, WeaponModifier.Stats.MINE_SPEED );
        float moddedFireRate = fireTime / WeaponModifier.GetModifierValue( mod, WeaponModifier.Stats.FIRE_RATE );

        WeaponInfo info = new WeaponInfo( weaponType, mod );
        info.AddAttribute( "Damage", RoundStatToDecimalPlaces( moddedDamage, 1 ).ToString() );
        info.AddAttribute( "Fire Rate", RoundStatToDecimalPlaces(  1 / moddedFireRate, 1 ) + "/s" );
        info.AddAttribute( "Projectile Speed", RoundStatToDecimalPlaces( moddedSpeed, 1 ).ToString() );
        return info;
    }
示例#9
0
    public override WeaponInfo ToInfo(WeaponModifier.ModifierNames mod)
    {
        float moddedDamage   = damage * WeaponModifier.GetModifierValue(mod, WeaponModifier.Stats.DAMAGE);
        float moddedSpeed    = projectileSpeed * WeaponModifier.GetModifierValue(mod, WeaponModifier.Stats.MINE_SPEED);
        float moddedFireRate = fireTime / WeaponModifier.GetModifierValue(mod, WeaponModifier.Stats.FIRE_RATE);

        WeaponInfo info = new WeaponInfo(weaponType, mod);

        info.AddAttribute("Damage", RoundStatToDecimalPlaces(moddedDamage, 1).ToString());
        info.AddAttribute("Fire Rate", RoundStatToDecimalPlaces(1 / moddedFireRate, 1) + "/s");
        info.AddAttribute("Projectile Speed", RoundStatToDecimalPlaces(moddedSpeed, 1).ToString());
        return(info);
    }
示例#10
0
    public override WeaponInfo ToInfo( WeaponModifier.ModifierNames mod )
    {
        if (weaponType == WeaponType.MISSILE_LAUNCHER)
        {
            SetCost(100);
        }
        float moddedDamage = damage * WeaponModifier.GetModifierValue( mod, WeaponModifier.Stats.DAMAGE );
        float moddedFireRate = fireTime / WeaponModifier.GetModifierValue( mod, WeaponModifier.Stats.FIRE_RATE );
        float moddedAccuracy = maxSpreadAngle / WeaponModifier.GetModifierValue( mod, WeaponModifier.Stats.ACCURACY );
        float moddedCost = cost * WeaponModifier.GetModifierValue(mod, WeaponModifier.Stats.COST_MOD);
        SetCost((int)moddedCost);

        WeaponInfo info = new WeaponInfo( weaponType, mod );

        if( weaponType != WeaponType.SCATTER_SHOT )
        {
            info.AddAttribute( "Damage", RoundStatToDecimalPlaces( moddedDamage, 1 ).ToString() );
        }

        else
        {
            float bonusProjectiles = WeaponModifier.GetModifierValue( mod, WeaponModifier.Stats.BONUS_PROJECTILES );
            int count = Mathf.CeilToInt( projectilesPerShot * bonusProjectiles );
            info.AddAttribute( "Damage", RoundStatToDecimalPlaces( damage, 1 ) + " (x" + count + ")" );
        }

        info.AddAttribute( "Fire Rate", RoundStatToDecimalPlaces( 1 / moddedFireRate, 1 ) + "/s" );
        info.AddAttribute( "Projectile Speed", RoundStatToDecimalPlaces( projectileSpeed, 1 ).ToString() );
        info.AddAttribute( "Accuracy", RoundStatToDecimalPlaces( ( 1 - ( moddedAccuracy * 2 / 180 ) ) * 100, 1 ) + "%" );
        info.AddAttribute("Cost", RoundStatToDecimalPlaces(moddedCost, 1).ToString());

        return info;
    }
    public override WeaponInfo ToInfo()
    {
        WeaponInfo info = new WeaponInfo( weaponType, modifier );

        string dmgString = RoundStatToDecimalPlaces( damage, 3 ).ToString();

        if( weaponType == WeaponType.SCATTER_SHOT )
        {
            dmgString += " (x" + projectilesPerShot + ")";
        }

        info.AddAttribute( "Damage", dmgString );
        info.AddAttribute( "Fire Rate", RoundStatToDecimalPlaces( 1 / fireTime, 2 ) + "/s" );
        info.AddAttribute( "Projectile Speed", RoundStatToDecimalPlaces( projectileSpeed, 1 ).ToString() );
        info.AddAttribute( "Accuracy", RoundStatToDecimalPlaces( ( 1 - ( maxSpreadAngle * 2 / 180 ) ) * 100, 1 ) + "%" );

        return info;
    }
示例#12
0
    public override WeaponInfo ToInfo()
    {
        WeaponInfo info = new WeaponInfo(weaponType, modifier);

        string dmgString = RoundStatToDecimalPlaces(damage, 3).ToString();

        if (weaponType == WeaponType.SCATTER_SHOT)
        {
            dmgString += " (x" + projectilesPerShot + ")";
        }

        info.AddAttribute("Damage", dmgString);
        info.AddAttribute("Fire Rate", RoundStatToDecimalPlaces(1 / fireTime, 2) + "/s");
        info.AddAttribute("Projectile Speed", RoundStatToDecimalPlaces(projectileSpeed, 1).ToString());
        info.AddAttribute("Accuracy", RoundStatToDecimalPlaces((1 - (maxSpreadAngle * 2 / 180)) * 100, 1) + "%");

        return(info);
    }
示例#13
0
 public override WeaponInfo ToInfo( WeaponModifier.ModifierNames mod )
 {
     float moddedDamage = damage * WeaponModifier.GetModifierValue( mod, WeaponModifier.Stats.DAMAGE );
     float moddedRange = beamRange * WeaponModifier.GetModifierValue( mod, WeaponModifier.Stats.BEAM_RANGE );
     WeaponInfo info = new WeaponInfo( weaponType, mod );
     info.AddAttribute( "Damage", RoundStatToDecimalPlaces( moddedDamage, 1 ) + "/s" );
     info.AddAttribute( "Range", RoundStatToDecimalPlaces( moddedRange, 1 ).ToString() );
     info.AddAttribute("Cost", RoundStatToDecimalPlaces(cost, 1).ToString());
     return info;
 }