Sceptre de creeper
-
Bonjours , j’ai besoin d’aide , j’aimerais créer un sceptre de creeper , c’est a dire quand on fait clique droit sa fait spawn 1 creeper et le baton a que 2 utilisation , j’ai déjà fait un code mais pour un baton de soin , je doit changer quoi pour qu’il fait spawn un creeper ? et je doit mettre quoi ? Merci ^^
package com.mod.voltonia.items; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.potion.Potion; import net.minecraft.potion.PotionEffect; import net.minecraft.world.World; public class BatonDeSoin extends Item { public BatonDeSoin() { this.maxStackSize = 1; this.setMaxDamage(2); } public ItemStack onItemRightClick(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer) { par1ItemStack.damageItem(1, par3EntityPlayer); par3EntityPlayer.addPotionEffect(new PotionEffect(Potion.heal.id, 2, 0)); return par1ItemStack; } }
-
Salut,
Ce n’est pas compliqué à faire :if(!par2World.isRemote) { EntityCreeper creeper = new EntityCreeper(); creeper.setPosition(par3EntityPlayer.posX, par3EntityPlayer.posY, par3EntityPlayer.posZ): par2World.spawnEntityInWorld(creeper); }
-
@‘robin4002’:
Salut,
Ce n’est pas compliqué à faire :if(!par2World.isRemote) { EntityCreeper creeper = new EntityCreeper(par2World.isRemote); creeper.setPosition(par3EntityPlayer.posX, par3EntityPlayer.posY, par3EntityPlayer.posZ): par2World.spawnEntityInWorld(creeper); }
je doit supprimer quoi de mon code au dessus pour mettre ton code ? ^^
-
@‘ZarTeK’:
@‘robin4002’:
Salut,
Ce n’est pas compliqué à faire :if(!par2World.isRemote) { EntityCreeper creeper = new EntityCreeper(par2World.isRemote); creeper.setPosition(par3EntityPlayer.posX, par3EntityPlayer.posY, par3EntityPlayer.posZ): par2World.spawnEntityInWorld(creeper); }
je doit supprimer quoi de mon code au dessus pour mettre ton code ? ^^
Tu fais ça:
package com.mod.voltonia.items; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.potion.Potion; import net.minecraft.potion.PotionEffect; import net.minecraft.world.World; public class BatonDeSoin extends Item { public BatonDeSoin() { this.maxStackSize = 1; this.setMaxDamage(2); } public ItemStack onItemRightClick(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer) { if(!par2World.isRemote) { EntityCreeper creeper = new EntityCreeper(par2World.isRemote); creeper.setPosition(par3EntityPlayer.posX, par3EntityPlayer.posY, par3EntityPlayer.posZ): par2World.spawnEntityInWorld(creeper); } } }
-
C’est bien beau de mettre un setMaxDamage mais si tu ne damage pas l’item il sert à rien ^^
-
@‘Plaigon’:
C’est bien beau de mettre un setMaxDamage mais si tu ne damage pas l’item il sert à rien ^^
Comment sa ?
-
Au lieu de te précipiter pour répondre, tu ferais mieux de regarder des classes vanilla dans le même genre, tel que l’ItemBow ou encore l’ItemTool.
-
J’ai une erreur dans le code ,screen : http://prntscr.com/d49xac
-
oups, retires le .isRemote.
-
perso j’avais fait ça :: histoir que le creeper ne spawn pas dans un bloc
public boolean onItemUse(ItemStack stack, EntityPlayer player, World world, int x, int y, int z, int p_77648_7_, float p_77648_8_, float p_77648_9_, float p_77648_10_) { if (world.isRemote) { return true; } else { Block block = world.getBlock(x, y, z); x += Facing.offsetsXForSide[p_77648_7_]; y += Facing.offsetsYForSide[p_77648_7_]; z += Facing.offsetsZForSide[p_77648_7_]; double d0 = 0.0D; if (p_77648_7_ == 1 && block.getRenderType() == 11) { d0 = 0.5D; } EntityCreeper e = new EntityCreeper(world); e.setLocationAndAngles((double)x + 0.5D, (double)y + d0, (double)z + 0.5D, MathHelper.wrapAngleTo180_float(world.rand.nextFloat() * 360.0F), 0.0F); world.spawnEntityInWorld(e); stack.damageItem(1, player); System.out.println(stack.getItemDamage()); } return true; }
-
je croit que c’est résolut
!!