hassansyyid

Untitled

Aug 2nd, 2015
258
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.65 KB | None | 0 0
  1. package io.github.hsyyid.itemauction.cmdexecutors;
  2.  
  3. import io.github.hsyyid.itemauction.Main;
  4. import io.github.hsyyid.itemauction.events.BidEvent;
  5. import io.github.hsyyid.itemauction.utils.Auction;
  6.  
  7. import org.spongepowered.api.Game;
  8. import org.spongepowered.api.Server;
  9. import org.spongepowered.api.entity.player.Player;
  10. import org.spongepowered.api.text.Texts;
  11. import org.spongepowered.api.text.format.TextColors;
  12. import org.spongepowered.api.util.command.CommandException;
  13. import org.spongepowered.api.util.command.CommandResult;
  14. import org.spongepowered.api.util.command.CommandSource;
  15. import org.spongepowered.api.util.command.args.CommandContext;
  16. import org.spongepowered.api.util.command.source.CommandBlockSource;
  17. import org.spongepowered.api.util.command.source.ConsoleSource;
  18. import org.spongepowered.api.util.command.spec.CommandExecutor;
  19.  
  20. public class AcceptBidExecutor  implements CommandExecutor
  21. {
  22.     public CommandResult execute(CommandSource src, CommandContext ctx) throws CommandException
  23.     {
  24.         Server server = Main.game.getServer();
  25.         Player bidder = ctx.<Player>getOne("player").get();
  26.        
  27.         if(src instanceof Player)
  28.         {
  29.             Player player = (Player) src;
  30.  
  31.             Auction endedAuction = null;
  32.            
  33.             for(Auction auction : Main.auctions)
  34.             {
  35.                 if(auction.getSender() == player && auction.getBids().contains(bidder))
  36.                 {
  37.                     endedAuction = auction;
  38.                     break;
  39.                 }
  40.             }
  41.            
  42.             if(endedAuction != null && player.getItemInHand().isPresent() && player.getItemInHand() == endedAuction.getItemStack())
  43.             {
  44.                 player.setItemInHand(null);
  45.                 Main.auctions.remove(endedAuction);
  46.                 for(Player p : server.getOnlinePlayers())
  47.                 {
  48.                     p.sendMessage(Texts.of(TextColors.GREEN,"[ItemAuction] ", TextColors.WHITE, player.getName() + " auction for " + endedAuction.getQuantity() + endedAuction.getItemStack().getItem().getName() + " has ended. "));
  49.                 }
  50.                 bidder.sendMessage(Texts.of(TextColors.GREEN,"[ItemAuction] ", TextColors.WHITE, "Your bid was accepted by " + player.getName() + "."));
  51.                 //TODO: Send money to bidder.
  52.                 src.sendMessage(Texts.of(TextColors.GREEN,"Success! ", TextColors.WHITE, "Bid accepted."));
  53.             }
  54.             else
  55.             {
  56.                 src.sendMessage(Texts.of(TextColors.DARK_RED,"Error! ", TextColors.RED, "Bid not found!"));
  57.             }
  58.         }
  59.         else if(src instanceof ConsoleSource)
  60.         {
  61.             src.sendMessage(Texts.of(TextColors.DARK_RED,"Error! ", TextColors.RED, "Must be an in-game player to use /acceptbid!"));
  62.         }
  63.         else if(src instanceof CommandBlockSource)
  64.         {
  65.             src.sendMessage(Texts.of(TextColors.DARK_RED,"Error! ", TextColors.RED, "Must be an in-game player to use /acceptbid!"));
  66.         }
  67.         return CommandResult.success();
  68.     }
  69. }
Advertisement
Add Comment
Please, Sign In to add comment