Jump to content

TheGrovesyProject101

Forge Modder
  • Posts

    43
  • Joined

  • Last visited

Everything posted by TheGrovesyProject101

  1. Hey guys im currently working on a mod called arcticraft and with the new 1.7 update im finally finishing updating it but when i try and generate the biomes in my dimension they will generate with the correct block pattern but the block filler and top block are just the default filler block for the dimension wich is what i call frost stone however when i change that to normal stone it works completely fine. It seems to be the genBiomeTerrain method in the BiomeGenBase class causing this but i cant overwrite the meathod in my BiomeGenBase Class. Any help would be greatly appreciated. Src code related to all world & biome generation: https://github.com/BenDonnelly/Arcticraft/tree/master/Arcticraft/src/main/java/com/arcticraft/world
  2. what the textures for your armor while its on the player renders as iron?
  3. yeah just so the player has to reload the gun but the reason i kept the bow code is so the player could aim down the sights
  4. im trying to get my custom gun to reload but everything ive tried doesn't work the closest ive come is to get it to work once but then it doesn't do it again here is the base code for my item: package militarycraft.item; import militarycraft.entites.EntityMusketRound; import militarycraft.main.MainRegistry; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.enchantment.Enchantment; import net.minecraft.enchantment.EnchantmentHelper; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.EnumAction; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.util.Icon; import net.minecraft.world.World; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.event.entity.player.ArrowLooseEvent; import net.minecraftforge.event.entity.player.ArrowNockEvent; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; public class Musket extends Item { @SideOnly(Side.CLIENT) private Icon[] iconArray; public Musket(int par1) { super(par1); this.maxStackSize = 1; this.setMaxDamage(384); this.setCreativeTab(CreativeTabs.tabCombat); } @SideOnly(Side.CLIENT) /** * Returns True is the item is renderer in full 3D when hold. */ public boolean isFull3D() { return true; } /** * called when the player releases the use item button. Args: itemstack, * world, entityplayer, itemInUseCount */ public void onPlayerStoppedUsing(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer, int par4) { int j = this.getMaxItemUseDuration(par1ItemStack) - par4; ArrowLooseEvent event = new ArrowLooseEvent(par3EntityPlayer, par1ItemStack, j); MinecraftForge.EVENT_BUS.post(event); if (event.isCanceled()) { return; } j = event.charge; boolean flag = par3EntityPlayer.capabilities.isCreativeMode || EnchantmentHelper.getEnchantmentLevel(Enchantment.infinity.effectId, par1ItemStack) > 0; if (flag || par3EntityPlayer.inventory.hasItem(MainRegistry.MusketRound.itemID)) { float f = (float) j / 20.0F; f = (f * f + f * 2.0F) / 3.0F; if ((double) f < 0.1D) { return; } if (f > 1.0F) { f = 1.0F; } EntityMusketRound EntityMusketRound = new EntityMusketRound(par2World, par3EntityPlayer, f * 2.0F); if (f == 1.0F) { EntityMusketRound.setIsCritical(true); } int k = EnchantmentHelper.getEnchantmentLevel(Enchantment.power.effectId, par1ItemStack); if (k > 0) { EntityMusketRound.setDamage(EntityMusketRound.getDamage() + (double) k * 0.5D + 0.5D); } int l = EnchantmentHelper.getEnchantmentLevel(Enchantment.punch.effectId, par1ItemStack); if (l > 0) { EntityMusketRound.setKnockbackStrength(l); } if (EnchantmentHelper.getEnchantmentLevel(Enchantment.flame.effectId, par1ItemStack) > 0) { EntityMusketRound.setFire(100); } par1ItemStack.damageItem(1, par3EntityPlayer); par2World.playSoundAtEntity(par3EntityPlayer, "random.bow", 1.0F, 1.0F / (itemRand.nextFloat() * 0.4F + 1.2F) + f * 0.5F); if (flag) { EntityMusketRound.canBePickedUp = 2; } else { par3EntityPlayer.inventory.consumeInventoryItem(MainRegistry.MusketRound.itemID); } if (!par2World.isRemote) { par2World.spawnEntityInWorld(EntityMusketRound); } } } public ItemStack onEaten(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer) { return par1ItemStack; } /** * How long it takes to use or consume an item */ public int getMaxItemUseDuration(ItemStack par1ItemStack) { return 72000; } /** * returns the action that specifies what animation to play when the items * is being used */ public EnumAction getItemUseAction(ItemStack par1ItemStack) { return EnumAction.bow; } public static void reload() { } public static boolean canShoot = false; public static int reloading = 0; public static boolean isLoaded = false; public boolean hasShot = false; public static int ticks; /** * Called whenever this item is equipped and the right mouse button is * pressed. Args: itemStack, world, entityPlayer */ /** * Called whenever this item is equipped and the right mouse button is * pressed. Args: itemStack, world, entityPlayer */ /** * Called whenever this item is equipped and the right mouse button is pressed. Args: itemStack, world, entityPlayer */ public ItemStack onItemRightClick(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer) { ArrowNockEvent event = new ArrowNockEvent(par3EntityPlayer, par1ItemStack); MinecraftForge.EVENT_BUS.post(event); if (event.isCanceled()) { return event.result; } if (par3EntityPlayer.capabilities.isCreativeMode || par3EntityPlayer.inventory.hasItem(MainRegistry.MusketRound.itemID)) { par3EntityPlayer.setItemInUse(par1ItemStack, this.getMaxItemUseDuration(par1ItemStack)); } return par1ItemStack; } /** * Return the enchantability factor of the item, most of the time is based * on material. */ public int getItemEnchantability() { return 1; } }
  5. can i see the whole main class if possible please
  6. try: this.texture = "/textures/EnderAngel.png";
  7. try my tutorial it still works for 1.5 all u have to do is follow the video dont download the src code because that doesnt work part 1 blocks: part 2 genration:
  8. does anyone know of a 1.5.1 schematic to java converter
  9. when i go in my portal block it teleports me back and forth between the dimension and a ocean none stop the code thats causing it is this public void onEntityCollidedWithBlock(World par1World, int par2, int par3, int par4, Entity par5Entity) { if (par5Entity.ridingEntity == null && par5Entity.riddenByEntity == null) { if (par5Entity instanceof EntityPlayerMP) { EntityPlayerMP thePlayer = (EntityPlayerMP) par5Entity; if (par5Entity.dimension != mod_MainClass.DimensionID) { thePlayer.mcServer.getConfigurationManager().transferPlayerToDimension(thePlayer, mod_MainClass.DimensionID, new ArcticTeleporter(thePlayer.mcServer.worldServerForDimension(mod_MainClass.DimensionID))); } else { thePlayer.mcServer.getConfigurationManager().transferPlayerToDimension(thePlayer, 0, new ArcticTeleporter(thePlayer.mcServer.worldServerForDimension(0))); } } } } but the problem i everything after else i get rid of it it stops it and i can get to the dimension but not back please help
  10. the way i did it is i copied the fire block class and put it in my custom fire class replaced obsidian and portal with the blocks i wannted as my portal frame and portal block then in my main class public static BlockPortal portalBlock; and then casted the block line where the id is and texture as portal block portalBlock = (BlockPortal) new portalBlock(250, 0).setBlockName("Potal Block");
  11. here go to my channel i do modding tutorials and i cover a custom bow and arrow link: http://www.youtube.com/user/TheGrovesyProject101
  12. There is my series i teach basic and advanced modding and cover it in deatail and explain link: http://www.youtube.com/user/TheGrovesyProject101
  13. sunday if you lucky but its most likly to be next week
  14. oh right i will figure it out on sunday because thats when i can acctually open eclipce and experiment i will also make tutorial n it explaining in detail
  15. sorry i not in a place where i can double check this but off the top of my head do this: in your ashtons class file dont use public static ItemSeed MagicBeans; use this public static Item MagicBeans; and dont cast it to itemseeds and use this as your magic beans file: package ashtonsmod.common; import net.minecraft.block.Block; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.world.World; public class MagicBeans extends ItemSeeds { public MagicBeans(int par1, int blockID, int blockID2) { super(par1); this.maxStackSize = 64; this.setCreativeTab(CreativeTabs.tabMisc); } @Override public String getTextureFile(){ return CommonProxy.items_png; }}
  16. oh right then replace your server tick handler with this package modding.tutorial; import java.util.EnumSet; import net.minecraft.client.multiplayer.PlayerControllerMP; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraft.potion.Potion; import net.minecraft.potion.PotionEffect; import cpw.mods.fml.common.ITickHandler; import cpw.mods.fml.common.TickType; public class ServerTickHandler implements ITickHandler { private void onPlayerTick(EntityPlayer player) { if (player.getCurrentItemOrArmor(4) != null && player.getCurrentArmor(3) != null && player.getCurrentItemOrArmor(2) != null && player.getCurrentItemOrArmor(1) != null) { ItemStack helmet = player.getCurrentItemOrArmor(4); ItemStack plate = player.getCurrentItemOrArmor(3); ItemStack legs = player.getCurrentItemOrArmor(2); ItemStack boots = player.getCurrentItemOrArmor(1); if (helmet.getItem() == mod_MainClass.TutHelmet && plate.getItem() == mod_MainClass.TutPlate && legs.getItem() == mod_MainClass.TutLegs && boots.getItem() == mod_MainClass.TutBoots) { player.addPotionEffect((new PotionEffect(Potion.confusion.getId(), 200, 0))); } } } @Override public void tickStart(EnumSet<TickType> type, Object... tickData) { if (type.equals(EnumSet.of(TickType.PLAYER))) { onPlayerTick((EntityPlayer) tickData[0]); } } @Override public void tickEnd(EnumSet<TickType> type, Object... tickData) { // TODO Auto-generated method stub } @Override public EnumSet<TickType> ticks() { return EnumSet.of(TickType.PLAYER, TickType.SERVER); } @Override public String getLabel() { // TODO Auto-generated method stub return null; } }
  17. what so that you have to have a full set of the armor?
  18. put this in your block file: public boolean isOpaqueCube() { return false; } and then use a transparent texture in your texture file like the one glass has
  19. down load this src code and Replace and edit your sever tick handler with it src code: http://thegrovesyproject101.weebly.com/armor-potion-effects.html
  20. i am also having this issue
  21. have tried but dont know how to get ores to generate in my dimension and biomes not to generate in the overworld
  22. how do i get things such as my ores and biome to only spawn in my dimension please help
  23. i have a custom biome for my dimension but i dont know how to get it so it doesnt spawn in the over world here is the biomes code : package minecrafttale; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.block.Block; import net.minecraft.entity.monster.EntityGhast; import net.minecraft.world.biome.BiomeEndDecorator; import net.minecraft.world.biome.BiomeGenBase; import net.minecraft.world.biome.SpawnListEntry; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.event.terraingen.BiomeEvent; public class valhallaBiome extends BiomeGenBase{ public valhallaBiome(int id){ super(id); this.minHeight = 60; this.maxHeight = 232; this.waterColorMultiplier = 0xED0202; this.spawnableMonsterList.add(new SpawnListEntry(EntityViking1.class, 2,1,1)); this.spawnableWaterCreatureList.clear(); this.field_82914_M.clear(); this.spawnableCreatureList.clear(); this.spawnableMonsterList.clear(); this.topBlock = (byte)mod_MainClass.valhallaTop.blockID; this.fillerBlock = (byte)mod_MainClass.valhallaFill.blockID; } }
×
×
  • Create New...

Important Information

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