-
assigned issue to
[Sifrah] Removing an implant while having cybernetic rejection syndrome causes a null reference exception.
With Sifrah, mutants can hack becoming nooks to gain cybernetic implants, which have a chance of causing cybernetic rejection syndrome. The only way to stop rejection syndrome is by removing enough implants to reduce its Level
to zero; however, this currently doesn't work.
When removing implants after rejection syndrome begins, CyberneticRejectionSyndrome.Reduce(implant.Cost)
is called. However, this method throws an exception due to an order of operations issue: once it's reduced enough to lower the level of the effect to or below zero, base.Object.RemoveEffect(this);
is called. Right after, however, if (base.Object.IsPlayer())
is called; this throws an exception, since RemoveEffect()
unsets this.Object
. Object.IsPlayer()
then throws a NullReferenceException
. This appears to interrupt the process of removing the implant, leading to the uninstallation being incomplete and causing bugs.
Comments (3)
-
-
- changed status to open
-
- changed status to resolved
Fixed in next update.
- Log in to comment