Jump to content

[1.7.2+] A few questions


Electrobob99

Recommended Posts

Ok first question I have been wondering about... Is it possible to set a block's texture to a texture contained in another folder, and if so how? Also another question for future usage... How would I go about making a block, or a set of blocks be able to "move" a certain set of blocks aswell as entities. I'd assume I'd have to have the block set it self as an entity, but not sure on the execution. Any advice helps.

Member of Aerotech Networks, a Multi-Gaming server.

Also Currently porting the "Rise of the Automatons" minecraft mod

Link to comment
Share on other sites

For the first thing, I want to use it for getting a custom sapling texture, cause it makes more sense to me...

And for the moving blocks/entity thing, I mean to later on add a type of "Elevator" with a "pulley" based system to raise and lower the player, and possibly minecarts and tracks. Mainly since the open sourced mod I'm porting was going to add something similar, but never got it working.

Member of Aerotech Networks, a Multi-Gaming server.

Also Currently porting the "Rise of the Automatons" minecraft mod

Link to comment
Share on other sites

Ok, I was just wondering if it was possible. And like I said, the elevator like block will be something for later. Now I have a basic question. You see I have many blocks that have subBlocks, so I have a lot of itemBlock class files for them, and was wondering, is there a way to simplify subBlocks to make it more compact, and less cluttered? Possibly make them all utilize one central ItemBlock extending class? Or is that not possible? 

Member of Aerotech Networks, a Multi-Gaming server.

Also Currently porting the "Rise of the Automatons" minecraft mod

Link to comment
Share on other sites

Firstly, ItemBlock class isn't necessary for every block, if it doesn't have custom functionality or use of metadata then not using it is fine.

 

Secondly, if all the ItemBlock classes do exactly the same thing then you can put that thing in one class and use metadata for distinguishing between different blocks.

Link to comment
Share on other sites

... the elevator like block will be something for later.

For the elevator, look at how minecarts work, then do a "minecart" that can move up & down (and looks like an elevator). Since the minecart is an entity, I think your elevator will end up being one also. In fact, you'd do well to subclass the EntityMinecart class.

 

BTW, the "Railcraft" mod already does vertical rails for vertical minecart movement, so somebody has already solved this problem (i.e. it must be possible).

 

The debugger is a powerful and necessary tool in any IDE, so learn how to use it. You'll be able to tell us more and get better help here if you investigate your runtime problems in the debugger before posting.

Link to comment
Share on other sites

... the elevator like block will be something for later.

For the elevator, look at how minecarts work, then do a "minecart" that can move up & down (and looks like an elevator). Since the minecart is an entity, I think your elevator will end up being one also. In fact, you'd do well to subclass the EntityMinecart class.

 

BTW, the "Railcraft" mod already does vertical rails for vertical minecart movement, so somebody has already solved this problem (i.e. it must be possible).

Well actually by elevator I was thinking something similar to how redpower worked, except with differences. Which would include: Only connects and move only what I code to work with it. Basically the old developer of the mod I'm porting was going to add in a pulley based system, but never got it figured out.

Member of Aerotech Networks, a Multi-Gaming server.

Also Currently porting the "Rise of the Automatons" minecraft mod

Link to comment
Share on other sites

Ok, but what if some blocks give off light, and others shouldn't give off light?

 

ItemBlock doesn't have anything to do with the Block's functionality, it is just an item that represents the block. What I meant by "custom functionality" is that if, for example, you do something with your mod when player right-clicks with the ItemBlock (or the item that represents the block) in his hand.

Other than that, custom ItemBlock classes aren't needed.

Link to comment
Share on other sites

Ok, now I've hit a bit of a snag.. I'm trying to use Metadata for a grouping of items that are all used just for crafting, but for some reason it only seems to be loading the first item in the group. This is the item group code:

 

package com.AutonMatrix.item;

import java.util.List;

import com.AutonMatrix.creativeTabs.AM_CreativeTabs;
import com.AutonMatrix.lib.Strings;

import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon;
import net.minecraft.util.MathHelper;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;

public class ItemCraftSet extends Item{

private IIcon icons[];

public ItemCraftSet(){
	super();
	this.setHasSubtypes(true);
	this.setMaxDamage(0);
	this.setUnlocalizedName("am:craftset");
	this.setCreativeTab(AM_CreativeTabs.tabItem);

}

@Override
public IIcon getIconFromDamage(int par1){
	int i = MathHelper.clamp_int(par1, 0, EnumCraftSetType.values().length-1);
	return icons[i];
}

@Override
@SideOnly(Side.CLIENT)
public void registerIcons(IIconRegister iconregister){
	icons = new IIcon[EnumCraftSetType.values().length];
	for(int var4 = 0; var4 < EnumCraftSetType.values().length; var4++){
		icons[var4] = iconregister.registerIcon("am:"+EnumCraftSetType.values()[var4].name);
	}
}

@Override
public String getUnlocalizedName(ItemStack itemStack){
	return super.getUnlocalizedName(itemStack) + "."
			+ EnumCraftSetType.values()[itemStack.getItemDamage()].name;
}
}

 

and this is the code for the Enum File list it's referring to:

 

package com.AutonMatrix.item;

public enum EnumCraftSetType {
LENS("lens", "Lens"),
EYEPIECE("eyePiece", "Eye Piece"),
STONECOG("stonecog", "Stone Cog"),
LOOP("loop", "Metal Ring"),
CHAIN("chain", "Chain"),
SPROCKET("sprocket", "Sprocket"),
JOINT("joint","Joint"),
SHARP("sharp", "Sharpened Point"),
SMALLPLATE("smallPlate", "Small Plate"),
CYLINDER("cylinder", "Cylinder"),
ROD("rod", "Rod"),
PISTON("piston", "Tiny Piston"),
ACTUATOR("actuator", "Soul Actuator"),
CANVAS("canvas", "Canvas"),
WING("wing", "Wing"),
PASSIVE("passive", "Controller (Passive)"),
AGGRESSIVE("aggressive", "Controller (Aggressive)"),
JAW("jaw", "Jaw"),
SENSOR("sensor", "NVS"),
DRILL("drill", "Pickaxe Module"),
ROLLERCHAIN("rollerChain", "Roller Chain"),
SMALLHEAD("wHead", "Small Head"),
SMALLBODY("smallBody", "Small Body"),
TOTEHEAD("totehead", "Tote Head"),
MIDBODY("medBody", "Greater Body"),
SMALLLEG("smallLeg", "Small Leg"),
SENTRYHEAD("sHead", "Sentry Head"),
SALT("salt", "Salt"),
SURF("sulf", "Sulf"),
FACTOTUMHEAD("factotumhead", "Factotum Head"),
FACTOTUMCHUNK("furnaceChunk", "Factotum Chunk"),
BLUECORE("automatonCore", "Blue Core"),
REDCORE("superCore", "Red Core"),
PLANTMATTER("planty", "Plant Matter"),
PARTICULATE("bitty", "Cybernetic Particulate"),
BIONICCONGLOMERATE("ABC", "Adaptive Bionic Conglomerate");

public final String name;
public final String fullname;

EnumCraftSetType(String par1, String par2) {
	this.name = par1;
	this.fullname = par2;
}
}

 

Any help will be appreciated :)

*facepalm

Found the problem, I forgot to include an overridden getSubItems method xD

Member of Aerotech Networks, a Multi-Gaming server.

Also Currently porting the "Rise of the Automatons" minecraft mod

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.