public override int GetHashCode() { int hash = 1; if (display_ != null) { hash ^= Display.GetHashCode(); } if (extraCase_ == ExtraOneofCase.Unspecified) { hash ^= Unspecified.GetHashCode(); } if (extraCase_ == ExtraOneofCase.MoveToTile) { hash ^= MoveToTile.GetHashCode(); } if (extraCase_ == ExtraOneofCase.MoneyExchange) { hash ^= MoneyExchange.GetHashCode(); } if (extraCase_ == ExtraOneofCase.MoveSteps) { hash ^= MoveSteps.GetHashCode(); } if (extraCase_ == ExtraOneofCase.Collectible) { hash ^= Collectible.GetHashCode(); } hash ^= (int)extraCase_; if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return(hash); }
public void MergeFrom(Chance other) { if (other == null) { return; } if (other.display_ != null) { if (display_ == null) { Display = new global::Monopoly.Protobuf.ChanceDisplay(); } Display.MergeFrom(other.Display); } switch (other.ExtraCase) { case ExtraOneofCase.Unspecified: Unspecified = other.Unspecified; break; case ExtraOneofCase.MoveToTile: if (MoveToTile == null) { MoveToTile = new global::Monopoly.Protobuf.MoveToTileExtra(); } MoveToTile.MergeFrom(other.MoveToTile); break; case ExtraOneofCase.MoneyExchange: if (MoneyExchange == null) { MoneyExchange = new global::Monopoly.Protobuf.MoneyExchangeExtra(); } MoneyExchange.MergeFrom(other.MoneyExchange); break; case ExtraOneofCase.MoveSteps: if (MoveSteps == null) { MoveSteps = new global::Monopoly.Protobuf.MoveStepsExtra(); } MoveSteps.MergeFrom(other.MoveSteps); break; case ExtraOneofCase.Collectible: if (Collectible == null) { Collectible = new global::Monopoly.Protobuf.CollectibleExtra(); } Collectible.MergeFrom(other.Collectible); break; } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); }
public override int GetHashCode() { int hash = 1; if (display_ != null) { hash ^= Display.GetHashCode(); } if (Timing != global::Monopoly.Protobuf.TileEffect.Types.Timing.Unspecified) { hash ^= Timing.GetHashCode(); } if (extraCase_ == ExtraOneofCase.Unspecified) { hash ^= Unspecified.GetHashCode(); } if (extraCase_ == ExtraOneofCase.MoveToTile) { hash ^= MoveToTile.GetHashCode(); } if (extraCase_ == ExtraOneofCase.MoneyExchange) { hash ^= MoneyExchange.GetHashCode(); } if (extraCase_ == ExtraOneofCase.MoveSteps) { hash ^= MoveSteps.GetHashCode(); } if (extraCase_ == ExtraOneofCase.Collectible) { hash ^= Collectible.GetHashCode(); } if (extraCase_ == ExtraOneofCase.Detained) { hash ^= Detained.GetHashCode(); } hash ^= (int)extraCase_; if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return(hash); }
private void MakePay(float pay) { deposito = deposito + pay; restan = deuda - deposito; tbPaymentDepo.Text = deposito.ToString("0.00"); tbPaymentRest.Text = restan.ToString("0.00"); if (restan <= 0.0f) { restan = restan * -1.0f; deuda = 0.0f; tbPaymentRest.Text = "00.00"; MoneyExchange moneyExchange = Util.DispenseChange((decimal)restan); string change = "CHANGE:\n"; for (int i = 0; i < moneyExchange.pairs.Count; i++) { change += moneyExchange.pairs[i].denomination + " x " + moneyExchange.pairs[i].amount + "\n"; } MessageBox.Show(change); SendPay(); } }
public static MoneyExchange DispenseChange(decimal cant) { MoneyExchange moneyExchange = new MoneyExchange(); if (cant >= 500) { decimal denom = 500; int amount = (int)(cant / denom); moneyExchange.Add(denom, amount); cant = cant - amount * denom; } if (cant >= 200) { decimal denom = 200; int amount = (int)(cant / denom); moneyExchange.Add(denom, amount); cant = cant - amount * denom; } if (cant >= 100) { decimal denom = 100; int amount = (int)(cant / denom); moneyExchange.Add(denom, amount); cant = cant - amount * denom; } if (cant >= 50) { decimal denom = 50; int amount = (int)(cant / denom); moneyExchange.Add(denom, amount); cant = cant - amount * denom; } if (cant >= 20) { decimal denom = 20; int amount = (int)(cant / denom); moneyExchange.Add(denom, amount); cant = cant - amount * denom; } if (cant >= 10) { decimal denom = 10; int amount = (int)(cant / denom); moneyExchange.Add(denom, amount); cant = cant - amount * denom; } if (cant >= 5) { decimal denom = 5; int amount = (int)(cant / denom); moneyExchange.Add(denom, amount); cant = cant - amount * denom; } if (cant >= 2) { decimal denom = 2; int amount = (int)(cant / denom); moneyExchange.Add(denom, amount); cant = cant - amount * denom; } if (cant >= 1) { decimal denom = 1; int amount = (int)(cant / denom); moneyExchange.Add(denom, amount); cant = cant - amount * denom; } if (cant >= (decimal)0.50) { decimal denom = 0.50M; int amount = (int)(cant / denom); moneyExchange.Add(denom, amount); cant = cant - amount * denom; } return(moneyExchange); }