Advertisement
Guest User

Untitled

a guest
Feb 19th, 2019
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.36 KB | None | 0 0
  1. public void auction(Property property) {
  2. // TODO auction needs to be implemented
  3. List<Player> players = game.getPlayers();
  4. List<Player> bidders = new ArrayList<Player>();
  5. Player c = game.getCurrentPlayer();
  6.  
  7. for(Player player: players) {
  8. if (player == c) {
  9. } else {
  10. bidders.add(player);
  11. }
  12. }
  13. bidders.add(c);
  14. int topbid = 0;
  15. while(bidders.size() > 1){
  16. Player bidder = bidders.remove(0);
  17.  
  18. if(!bidder.isBroke() && !bidder.isInPrison())
  19. {
  20. String choice = gui.getUserSelection(
  21. "Player " + bidder.getName() +
  22. ": Do you want to bid?",
  23. "yes",
  24. "no");
  25.  
  26. if (choice.equals("yes")) {
  27. int userbid = gui.getUserInteger("Player " + bidder.getName() + " Bid:", topbid, bidder.getBalance() );
  28. topbid = userbid;
  29. bidders.add(bidder);
  30. }
  31. }
  32. }
  33. if (bidders.size() == 1) {
  34. Player bidder = bidders.remove(0);
  35. try {
  36. paymentToBank(bidder, topbid);
  37. bidder.addOwnedProperty(property);
  38. property.setOwner(bidder);
  39. } catch (PlayerBrokeException e) {
  40. // if the payment fails due to the player being broke,
  41. // an auction (among the other players is started
  42. // then the current move is aborted by casting the
  43. // PlayerBrokeException again
  44. }
  45. return;
  46. }
  47. gui.showMessage("Now, there has been an auction of " + property.getName() + ".");
  48. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement