public RepairState(RepairOrder repairOrder, int challengeOrderNumber) { DisplayName = repairOrder.Jank.Name; Screw = repairOrder.Jank.Screw; TotalRepairPower = new RepairPower(0); IsChallenge = repairOrder.OrderNumber == challengeOrderNumber; }
public void Repair(RepairPower power) { currentOrderState.Value.AddRepairPower(power); UpdateRepairOrderState(); if (currentOrderState.Value.IsRepaired) { if (currentRepairOrder.Value.IsFinalOrder) { allRepairedSubject.OnNext(Unit.Default); } if (currentOrderState.Value.IsChallenge) { nextChallengeOrderNumber++; } _rewardSubject.OnNext(GetRewart(currentRepairOrder.Value)); var nextRequest = isLooping ? OrderRequestType.Current : OrderRequestType.Next; ChangeRepairOrder(nextRequest); } }
public void AddRepairPower(RepairPower power) { TotalRepairPower = power + TotalRepairPower; }