Tabnine Logo
IToolPart
Code IndexAdd Tabnine to your IDE (free)

How to use
IToolPart
in
slimeknights.tconstruct.library.tools

Best Java code snippets using slimeknights.tconstruct.library.tools.IToolPart (Showing top 20 results out of 315)

origin: SlimeKnights/TinkersConstruct

 @SideOnly(Side.CLIENT)
 default ItemStack getOutlineRenderStack() {
  return getItemstackWithMaterial(CustomTextureCreator.guiMaterial);
 }
}
origin: SlimeKnights/TinkersConstruct

/**
 * Used for the sharpening kit. Allows to register a toolpart that is not part of a tool.
 */
public static void registerToolPart(IToolPart part) {
 toolParts.add(part);
 if(part instanceof Item) {
  if(part.canBeCrafted()) {
   addPatternForItem((Item) part);
  }
  if(part.canBeCasted()) {
   addCastForItem((Item) part);
  }
 }
}
origin: SlimeKnights/TinkersConstruct

/**
 * Workaround for dual-materials like crossbow-bolts.
 * E.g. Obsidian is not an "acceptable" material because those are only shaft materials
 * but we still need to generate the texture for it.
 */
default boolean canUseMaterialForRendering(Material mat) {
 return canUseMaterial(mat);
}
origin: SlimeKnights/TinkersConstruct

if(!toolPart.canBeCasted()) {
 continue;
if(!toolPart.canUseMaterial(material)) {
 continue;
 ItemStack stack = toolPart.getItemstackWithMaterial(material);
 ItemStack cast = new ItemStack(TinkerSmeltery.cast);
 Cast.setTagForPart(cast, stack.getItem());
  TinkerRegistry.registerMelting(stack, fluid, toolPart.getCost());
  TinkerRegistry.registerTableCasting(stack, cast, fluid, toolPart.getCost());
   FluidStack fs = new FluidStack(fluid, toolPart.getCost());
   TinkerRegistry.registerTableCasting(new CastingRecipe(stack, rm, fs, true, false));
origin: SlimeKnights/TinkersConstruct

if(toolPart.canBeCasted()) {
 if(toolPart instanceof MaterialItem) {
  ItemStack stack = toolPart.getItemstackWithMaterial(TinkerMaterials.stone);
  TinkerRegistry.registerMelting(stack, TinkerFluids.searedStone, (toolPart.getCost() * Material.VALUE_SearedMaterial) / Material.VALUE_Ingot);
origin: SlimeKnights/TinkersConstruct

.filter(part -> part.hasUseForStat(stats.getIdentifier()))
.map(part -> part.getItemstackWithMaterial(material))
.collect(Collectors.toList()));
origin: SlimeKnights/TinkersConstruct

  continue;
 Optional<RecipeMatch.Match> newMatch = material.matches(materialItems, part.getCost());
 if(!newMatch.isPresent()) {
  continue;
 return null;
if(output.getItem() instanceof IToolPart && !((IToolPart) output.getItem()).canUseMaterial(foundMaterial)) {
 return null;
int leftover = (match.get().amount - part.getCost()) / Material.VALUE_Shard;
if(leftover > 0) {
 secondary = TinkerRegistry.getShard(foundMaterial);
origin: SquidDev-CC/plethora

  @Nonnull
  @Override
  public Map<Object, Object> getMeta(@Nonnull ItemStack stack) {
    Item item = stack.getItem();
    if (!(item instanceof IToolPart)) return Collections.emptyMap();

    IToolPart toolPart = (IToolPart) item;

    Map<Object, Object> out = Maps.newHashMap();
    out.put("cost", toolPart.getCost());
    return out;
  }
}
origin: SlimeKnights/TinkersConstruct

public boolean isValid(ItemStack stack) {
 if(stack.getItem() instanceof IToolPart) {
  IToolPart toolPart = (IToolPart) stack.getItem();
  return isValid(toolPart, toolPart.getMaterial(stack));
 }
 return false;
}
origin: SlimeKnights/TinkersConstruct

 @SideOnly(Side.CLIENT)
 public void updateIcon() {
  icon = null;
  if(restriction != null) {
   Iterator<IToolPart> iterator = restriction.getPossibleParts().iterator();
   while(iterator.hasNext() && icon == null) {
    icon = iterator.next().getOutlineRenderStack();
   }
  }
 }
}
origin: SlimeKnights/TinkersConstruct

usable = false;
for(IToolPart toolPart : parts) {
 usable |= toolPart.canUseMaterialForRendering(material);
origin: SlimeKnights/TinkersConstruct

private void addStatsDisplay(int x, int y, int w, ArrayList<BookElement> list, LinkedHashSet<ITrait> allTraits, String stattype) {
 IMaterialStats stats = material.getStats(stattype);
 if(stats == null) {
  return;
 }
 List<ITrait> traits = material.getAllTraitsForStats(stats.getIdentifier());
 allTraits.addAll(traits);
 // create a list of all valid toolparts with the stats
 List<ItemStack> parts = Lists.newLinkedList();
 for(IToolPart part : TinkerRegistry.getToolParts()) {
  if(part.hasUseForStat(stats.getIdentifier())) {
   parts.add(part.getItemstackWithMaterial(material));
  }
 }
 // said parts next to the name
 if(parts.size() > 0) {
  ElementItem display = new ElementTinkerItem(x, y + 1, 0.5f, parts);
  list.add(display);
 }
 // and the name itself
 ElementText name = new ElementText(x + 10, y, w - 10, 10, stats.getLocalizedName());
 name.text[0].underlined = true;
 list.add(name);
 y += 12;
 List<TextData> lineData = Lists.newArrayList();
 // add lines of tool information
 lineData.addAll(getStatLines(stats));
 lineData.addAll(getTraitLines(traits, material));
 list.add(new ElementText(x, y, w, GuiBook.PAGE_HEIGHT, lineData));
}
origin: SlimeKnights/TinkersConstruct

if(part instanceof IToolPart && matchAmount < ((IToolPart) part).getCost()) {
 amount = TextFormatting.DARK_RED + amount + TextFormatting.RESET;
origin: SlimeKnights/TinkersConstruct

for(int j = 0; j < pms.size(); j++) {
 PartMaterialType pmt = pms.get(j);
 String partMat = ((IToolPart) part.getItem()).getMaterial(part).getIdentifier();
 String currentMat = materialList.getStringTagAt(j);
String mat = ((IToolPart) toolParts.get(i).getItem()).getMaterial(toolParts.get(i)).getIdentifier();
materialList.set(j, new NBTTagString(mat));
if(removeItems) {
origin: SlimeKnights/TinkersConstruct

 private List<ItemStack> getItems(IToolPart part) {
  List<Material> possibleMaterials = TinkerRegistry.getAllMaterials().stream()
                           .filter(part::canUseMaterial)
                           .collect(Collectors.toList());
  Material material = possibleMaterials.get(new Random().nextInt(possibleMaterials.size()));

  return ImmutableList.<ItemStack>builder()
    .add(part.getItemstackWithMaterial(material))
    .addAll(ModExtraTrait.EMBOSSMENT_ITEMS)
    .build();
 }
}
origin: SlimeKnights/TinkersConstruct

Item part = getPartFromTag(stack);
if(part != null && part instanceof IToolPart) {
 float cost = ((IToolPart) part).getCost() / (float) Material.VALUE_Ingot;
 tooltip.add(Util.translateFormatted("tooltip.pattern.cost", Util.df.format(cost)));
origin: SlimeKnights/TinkersConstruct

protected boolean isValidSubitem(Item toolpart) {
 if(toolpart instanceof IToolPart) {
  for(Material material : TinkerRegistry.getAllMaterials()) {
   if(isValidSubitemMaterial(material) && ((IToolPart) toolpart).canUseMaterial(material)) {
    return true;
   }
  }
  return false;
 }
 return true;
}
origin: SlimeKnights/TinkersConstruct

ItemStack partStack = part.getItemstackWithMaterial(material);
if(partStack != null) {
origin: SlimeKnights/TinkersConstruct

ItemStack[] stacks = items.stream().map(part -> part.getItemstackWithMaterial(material)).toArray(ItemStack[]::new);
origin: SquidDev-CC/plethora

ItemStack partStack = part.getItemstackWithMaterial(material);
if (partStack != null) {
  parts.put(++partIdx, context.makePartialChild(pmt).makePartialChild(partStack).getMeta());
slimeknights.tconstruct.library.toolsIToolPart

Javadoc

Any Class that's used as a tool part needs to implement this.

Most used methods

  • getCost
    Returns the cost to craft the tool. Values match the ingot values 72 = 1 shard 144 = 1 ingot etc. Ch
  • getItemstackWithMaterial
  • canBeCasted
    Return true if the toolpart should be registered for casting, using a cast
  • canBeCrafted
    Return true if the toolpart should be registered for crafting in the stencil table, with a pattern
  • canUseMaterial
    Retruns true if the material can be used for this toolpart
  • canUseMaterialForRendering
    Workaround for dual-materials like crossbow-bolts. E.g. Obsidian is not an "acceptable" material bec
  • getMaterial
  • getOutlineRenderStack
  • hasUseForStat

Popular in Java

  • Making http post requests using okhttp
  • startActivity (Activity)
  • setRequestProperty (URLConnection)
  • getSharedPreferences (Context)
  • PrintWriter (java.io)
    Wraps either an existing OutputStream or an existing Writerand provides convenience methods for prin
  • BigInteger (java.math)
    An immutable arbitrary-precision signed integer.FAST CRYPTOGRAPHY This implementation is efficient f
  • Time (java.sql)
    Java representation of an SQL TIME value. Provides utilities to format and parse the time's represen
  • BitSet (java.util)
    The BitSet class implements abit array [http://en.wikipedia.org/wiki/Bit_array]. Each element is eit
  • HttpServletRequest (javax.servlet.http)
    Extends the javax.servlet.ServletRequest interface to provide request information for HTTP servlets.
  • DataSource (javax.sql)
    An interface for the creation of Connection objects which represent a connection to a database. This
  • Top plugins for WebStorm
Tabnine Logo
  • Products

    Search for Java codeSearch for JavaScript code
  • IDE Plugins

    IntelliJ IDEAWebStormVisual StudioAndroid StudioEclipseVisual Studio CodePyCharmSublime TextPhpStormVimGoLandRubyMineEmacsJupyter NotebookJupyter LabRiderDataGripAppCode
  • Company

    About UsContact UsCareers
  • Resources

    FAQBlogTabnine AcademyTerms of usePrivacy policyJava Code IndexJavascript Code Index
Get Tabnine for your IDE now