コード例 #1
0
ファイル: GuiFiller.java プロジェクト: Ghostlyr/BuildCraft
  @Override
  protected void actionPerformed(GuiButton button) {
    super.actionPerformed(button);

    if (button.id == 0) {
      filler.currentPattern =
          (FillerPattern) FillerManager.registry.getPreviousPattern(filler.currentPattern);
    } else if (button.id == 1) {
      filler.currentPattern =
          (FillerPattern) FillerManager.registry.getNextPattern(filler.currentPattern);
    } else if (button.id == 2) {
      filler.setExcavate(!filler.isExcavate());

      buttonList.set(2, getExcavateButton());

      BuildCraftCore.instance.sendToServer(
          new PacketCommand(
              filler,
              "setFlags",
              new CommandWriter() {
                public void write(ByteBuf data) {
                  data.writeBoolean(filler.isExcavate());
                }
              }));
    }

    filler.rpcSetPatternFromString(filler.currentPattern.getUniqueTag());
  }
コード例 #2
0
ファイル: GuiFiller.java プロジェクト: Ghostlyr/BuildCraft
 private GuiBetterButton getExcavateButton() {
   return new GuiBetterButton(2, guiLeft + 150, guiTop + 30, 16, getExcavateTexture(), "")
       .setToolTip(
           new ToolTip(
               500,
               new ToolTipLine(
                   StatCollector.translateToLocal(
                       "tip.filler.excavate." + (filler.isExcavate() ? "on" : "off")))));
 }
コード例 #3
0
ファイル: ActionFiller.java プロジェクト: Jamefrus/BuildCraft
 @Override
 public void actionActivate(
     TileEntity target,
     ForgeDirection side,
     IStatementContainer source,
     IStatementParameter[] parameters) {
   if (target instanceof TileFiller) {
     ((TileFiller) target).setPattern(pattern);
     ((TileFiller) target).patternParameters = parameters;
   }
 }
コード例 #4
0
ファイル: GuiFiller.java プロジェクト: Ghostlyr/BuildCraft
  @Override
  protected void mouseClicked(int x, int y, int k) {
    super.mouseClicked(x, y, k);

    AdvancedSlot slot = getSlotAtLocation(x, y);

    if (slot != null) {
      int i = ((FillerParameterSlot) slot).slot;
      if (i < filler.patternParameters.length) {
        if (filler.patternParameters[i] != null) {
          filler.patternParameters[i].onClick(
              filler,
              filler.currentPattern,
              mc.thePlayer.inventory.getItemStack(),
              new StatementMouseClick(k, isShiftKeyDown()));
        } else {
          filler.patternParameters[i] = filler.currentPattern.createParameter(i);
        }
        filler.rpcSetParameter(i, filler.patternParameters[i]);
      }
    }
  }
コード例 #5
0
ファイル: GuiFiller.java プロジェクト: Ghostlyr/BuildCraft
 private IButtonTextureSet getExcavateTexture() {
   return filler.isExcavate() ? EXCAVATE_ON : EXCAVATE_OFF;
 }