public int GetTimeToReload(PowerCells powerCell, int cellCount) { switch (powerCell) { case PowerCells.A: case PowerCells.B: case PowerCells.C: return(3 * cellCount); case PowerCells.D: case PowerCells.E: case PowerCells.F: return(5 * cellCount); } return(0); }
public double GetFullWeight(double emptyWeight, PowerCells powerCell, int cellCount, out string specials, bool powerPack) { double tempMod = 0; string tempPP; switch (powerCell) { case PowerCells.A: tempMod = 0.0005; break; case PowerCells.B: tempMod = 0.005; break; case PowerCells.C: tempMod = 0.5; break; case PowerCells.D: tempMod = 5; break; case PowerCells.E: tempMod = 20; break; case PowerCells.F: tempMod = 200; break; } if (powerPack) { tempPP = "p"; tempMod = 1; cellCount = 1; } else { tempPP = ""; } specials = $"{cellCount}{powerCell}{tempPP}"; return(emptyWeight * (tempMod * cellCount)); }
public int GetShots(double d, TLs tl, Beams beam, PowerCells powerCell, int cellCount, out string specials, TLs cellTL = 0) { int shots = 0; cellTL = tl; specials = ""; switch (beam) { case Beams.Laser: ShotsByTL(tl, 255, 450, 450, 450); ShotsByTL(cellTL, shots); break; case Beams.Blaster: ShotsByTL(tl, 34, 68, 68, 68); ShotsByTL(cellTL, shots); break; case Beams.NeutralParticleBeam: ShotsByTL(tl, 16, 67, 67, 67); ShotsByTL(cellTL, shots); break; case Beams.RainbowLaser: ShotsByTL(cellTL, 112); break; case Beams.XRayLaser: ShotsByTL(tl, 112, 112, 225, 225); ShotsByTL(cellTL, shots); break; case Beams.Pulsar: ShotsByTL(tl, 135, 135, 135, 270); ShotsByTL(cellTL, shots); break; case Beams.Graser: ShotsByTL(cellTL, 28); break; case Beams.LowTechLaser: if (tl == TLs.TL8) { shots = 45; } ShotsByTL(cellTL, shots); break; case Beams.Electrolaser: ShotsByTL(tl, 2304, 5760, 5670, 5670); ShotsByTL(cellTL, shots); break; case Beams.SonicStunner: ShotsByTL(cellTL, 445); break; case Beams.HighOutputPulseLaser: ShotsByTL(tl, 2083, 2083, 5670, 5670); ShotsByTL(cellTL, shots); break; case Beams.Plasma: ShotsByTL(tl, 844, 2110, 2110, 2110); ShotsByTL(cellTL, shots); break; case Beams.PlasmaFlamer: ShotsByTL(tl, 450, 1125, 1125, 1125); ShotsByTL(cellTL, shots); break; case Beams.PlasmaLance: ShotsByTL(tl, 29, 29, 72, 72); ShotsByTL(cellTL, shots); break; case Beams.SonicScreamer: case Beams.SoundDisruptors: ShotsByTL(cellTL, 1780); break; case Beams.GravitonBeam: ShotsByTL(tl, 14, 14, 14, 28); ShotsByTL(cellTL, shots); break; case Beams.ForceBeam: ShotsByTL(tl, 270, 270, 540, 540); ShotsByTL(cellTL, shots); break; case Beams.Disraptor: ShotsByTL(cellTL, 6250); break; case Beams.NeuralDisraptor: case Beams.MindDisraptor: ShotsByTL(cellTL, 111); break; } return((int)(shots * cellCount / Math.Pow(d, 3))); }