diff --git a/src/PersonObjects/Sleeve/Work/SleeveCrimeWork.ts b/src/PersonObjects/Sleeve/Work/SleeveCrimeWork.ts index 08db4b33d..4fbc9e7bf 100644 --- a/src/PersonObjects/Sleeve/Work/SleeveCrimeWork.ts +++ b/src/PersonObjects/Sleeve/Work/SleeveCrimeWork.ts @@ -38,15 +38,17 @@ export class SleeveCrimeWork extends SleeveWorkClass { this.cyclesWorked += cycles; if (this.cyclesWorked < this.cyclesNeeded()) return; - const crime = this.getCrime(); - const gains = this.getExp(sleeve); - const success = Math.random() < crime.successRate(sleeve); - if (success) { - Player.karma -= crime.karma * sleeve.syncBonus(); - Player.numPeopleKilled += crime.kills; - } else gains.money = 0; - applySleeveGains(sleeve, gains, success ? 1 : 0.25); - this.cyclesWorked -= this.cyclesNeeded(); + while (this.cyclesWorked > this.cyclesNeeded()) { + const crime = this.getCrime(); + const gains = this.getExp(sleeve); + const success = Math.random() < crime.successRate(sleeve); + if (success) { + Player.karma -= crime.karma * sleeve.syncBonus(); + Player.numPeopleKilled += crime.kills; + } else gains.money = 0; + applySleeveGains(sleeve, gains, success ? 1 : 0.25); + this.cyclesWorked -= this.cyclesNeeded(); + } } APICopy() {