コード例 #1
0
ファイル: Cooking.java プロジェクト: Ventuz/vscape
  public static void handleCookingTick(final Player player, final int amount) {
    final int task = player.getTask();
    player.getMovementHandler().reset();
    player.getActionSender().removeInterfaces();
    player.setSkilling(
        new CycleEvent() {
          int cookAmount = amount;

          @Override
          public void execute(CycleEventContainer container) {
            if (!player.checkNewSkillTask()
                || !player.checkTask(task)
                || !player.getInventory().getItemContainer().contains(player.getTempInteger())
                || cookAmount == 0) {
              player.setTempInteger(0);
              container.stop();
              return;
            }

            if (player.getStatedInterface().equals("cookFire")) {
              if (!SkillHandler.checkObject(
                  player.getOldObject(),
                  player.getCooking().firePosition.getX(),
                  player.getCooking().firePosition.getY(),
                  player.getCooking().firePosition.getZ())) {
                container.stop();
                return;
              }
            }
            handleCooking(player);
            cookAmount--;
            container.setTick(4);
          }

          @Override
          public void stop() {
            player.resetAnimation();
          }
        });
    CycleEventHandler.getInstance().addEvent(player, player.getSkilling(), 1);
  }