//well this was a failure. I am very glad we have a public reference to charge //at least the spin calculation wasn't a similarly colossal failure // god f****n dammit now i need this to work so I can calculate the overcharge private float pseudoCalculateCharge(Run.FixedTimeStamp now, LaserTurbineController self) { float num = now - _pseudoSnapshotTime; float num2 = self.minSpin * num; float num3 = _pseudoInitialSpin - self.minSpin; float t = Mathf.Min(Trajectory.CalculateFlightDuration(num3, -self.spinDecayRate) * 0.5f, num); float num4 = Trajectory.CalculatePositionYAtTime(0f, num3, t, -self.spinDecayRate); return(Mathf.Min(_pseudoInitialCharge + num2 + num4, 1f)); }