Exemplo n.º 1
0
 @Override
 public Boolean runOperation(SignShopArguments ssArgs) {
   ItemStack[] isTotalItems = getRecords(ssArgs.getContainables().get());
   Seller seller = Storage.get().getSeller(ssArgs.getSign().get().getLocation());
   String sLastrecord = seller.getVolatile("lastrecord");
   Boolean doNext = false;
   Integer counter = 0;
   ItemStack firstItem = isTotalItems[0];
   for (ItemStack item : isTotalItems) {
     counter++;
     if (sLastrecord == null || doNext == true) {
       playEffect(ssArgs, item.getType());
       sLastrecord = item.getType().toString();
       if (sLastrecord == null) doNext = true;
       break;
     }
     if (item.getType().toString().equals(sLastrecord)) doNext = true;
     if (doNext == true && counter == isTotalItems.length) {
       playEffect(ssArgs, firstItem.getType());
       sLastrecord = firstItem.getType().toString();
       break;
     }
   }
   if (doNext == false) {
     playEffect(ssArgs, firstItem.getType());
     sLastrecord = firstItem.getType().toString();
   }
   seller.setVolatile("lastrecord", sLastrecord);
   return true;
 }
Exemplo n.º 2
0
 private void playEffect(SignShopArguments ssArgs, Material type) {
   ssArgs
       .getSign()
       .get()
       .getWorld()
       .playEffect(ssArgs.getSign().get().getLocation(), Effect.RECORD_PLAY, type);
 }
Exemplo n.º 3
0
  @Override
  public Boolean checkRequirements(SignShopArguments ssArgs, Boolean activeCheck) {
    ItemStack[] isTotalItems = getRecords(ssArgs.getContainables().get());

    if (isTotalItems.length == 0) {
      ssArgs
          .getPlayer()
          .get()
          .sendMessage(SignShopConfig.getError("chest_empty", ssArgs.getMessageParts()));
      return false;
    }

    return true;
  }
Exemplo n.º 4
0
  @Override
  public Boolean setupOperation(SignShopArguments ssArgs) {
    if (ssArgs.getContainables().isEmpty()) {
      ssArgs
          .getPlayer()
          .get()
          .sendMessage(SignShopConfig.getError("chest_missing", ssArgs.getMessageParts()));
      return false;
    }
    ItemStack[] isTotalItems = getRecords(ssArgs.getContainables().get());

    if (isTotalItems.length == 0) {
      ssArgs
          .getPlayer()
          .get()
          .sendMessage(SignShopConfig.getError("chest_empty", ssArgs.getMessageParts()));
      return false;
    }
    ssArgs.getItems().set(isTotalItems);
    ssArgs.setMessagePart("!items", itemUtil.itemStackToString(ssArgs.getItems().get()));
    return true;
  }