public override void PreAbsorbStack(Thing otherStack, int count) { float t = (float)count / (float)(this.parent.stackCount + count); CompTempRuinableAndDestroy comp = ((ThingWithComps)otherStack).GetComp <CompTempRuinableAndDestroy>(); this.ruinedPercent = Mathf.Lerp(this.ruinedPercent, comp.ruinedPercent, t); }
public override void PostSplitOff(Thing piece) { CompTempRuinableAndDestroy comp = ((ThingWithComps)piece).GetComp <CompTempRuinableAndDestroy>(); comp.ruinedPercent = this.ruinedPercent; }
public override bool AllowStackWith(Thing other) { CompTempRuinableAndDestroy comp = ((ThingWithComps)other).GetComp <CompTempRuinableAndDestroy>(); return(this.Ruined == comp.Ruined); }