Créer un kit d'outils
-
@‘Plaigon’:
Un peu + de recherche la prochaine fois quand même

https://www.minecraftforgefrance.fr/showthread.php?tid=3238Merci
hhhh Omg robin enfaîte si vous en aviez un tout prét -
Tu souhaites quoi précisément ?
-
@‘Plaigon’:
Tu souhaites quoi précisément ?
d’abord je veux que mon ring ai une durabilité minimal de 1
après qu’il réussisse a réparé mon armure
ensuite je voudrais créer un bâton de soinse code est bon ??
import net.minecraft.entity.Entity; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.world.World; public class smallring extends Item { public smallring() { this.setMaxDamage(500); this.setMaxStackSize(1); } public void onItemRightClick(ItemStack stack, World world, Entity entity, int slot, boolean selected) { if(entity instanceof EntityPlayer) { EntityPlayer player = (EntityPlayer)entity; for(int i = 0; i < 4; i++) { ItemStack armor = player.getCurrentArmor(i); if(armor != null && armor.getItemDamage() > 0 && stack.getItemDamage() < stack.getMaxDamage()) { stack.setItemDamage(stack.getItemDamage() + 1); armor.setItemDamage(armor.getItemDamage() - 1); } } } } } -
Poste dans support pour les moddeurs, car là ça va partir en HS par-rapport au tuto, je pense.
-
ok on se retrouve la-bas
-
Quelle est la class a utilisée pour réglé la vitesse de frappe d’une épée ?? en 1.7.10
Envoyé de mon 4016X en utilisant Tapatalk
-
Ceci te convient-il :
@Override public boolean onLeftClickEntity(ItemStack stack, EntityPlayer player, Entity entity) { player.swingProgressInt = 3; return false; }Après ceci ne change que l’animation mais pas le counter entre chaque attaque. C’est ce que tu souhaitais, ou plutôt le timer ?
-
c’est le timer que je veux genre pour faire une fast sword
et c’est en 1.7.10
-
Voilà la solution pour ceux qui la voudraient (on a vu ça en MP) :
@Override public boolean onEntitySwing(EntityLivingBase entityLiving, ItemStack stack) { if (!entityLiving.isSwingInProgress || entityLiving.swingProgressInt >= 3 || entityLiving.swingProgressInt < 0) { int speed = 0; //0 speed vanilla, 6 tellement rapide qu'on ne voit pas l'item bouger entityLiving.swingProgressInt = -1 + speed; entityLiving.isSwingInProgress = true; if (entityLiving.worldObj instanceof WorldServer) { ((WorldServer)entityLiving.worldObj).getEntityTracker().sendToAllTrackingEntity(entityLiving, new S0BPacketAnimation(entityLiving, 0)); } } return true; }A mettre dans la classe de l’item.
-
ahh super je court tester ca
-
je vien d’esayer enfaite sa ne chage que l’animation moi je veux un truc un peux a la 1.9 je ne veux pas que je puisse tapper avant que sa ne se recharge
-
Dans la méthode onUpdate de ton item.
if(s.hasTagCompound()) { if(s.getTagCompound().getInteger("timer") > 0) { s.getTagCompound().setInteger("timer", s.getTagCompound().getInteger("timer") - 1); } }Et dans la méthode que tu utilises pour effectuer une action (onItemRightClick, onEntitySwing, etc…)
if(!stack.hasTagCompound()) { stack.setTagCompound(new NBTTagCompound()); } if(stack.getTagCompound().getInteger("timer") == 0 || player.capabilities.isCreativeMode) { if(!player.capabilities.isCreativeMode) stack.getTagCompound().setInteger("timer", 400); } -
@Superloup, ton code ne fait que lui rajouter un timer, c’est bien, ça résout la moitié du problème. Ce sur quoi il bloque (moi également), c’est modifier le timer. Mais à mon avis c’est géré dans la classe Minecraft, et malheureusement il devra sûrement se servir de la reflexion, si il veut modifier le left click timer

-
Non les gens on avait tout faux
voila la fonction magiquepublic void onUpdate(ItemStack stack, World world, Entity entity, int p_77663_4_, boolean p_77663_5_) { if ((entity instanceof EntityPlayer)) { EntityPlayer player = (EntityPlayer)entity; if ((player.getHeldItem() != null) && ((player.getHeldItem().getItem() instanceof Broadsword))) { ((EntityPlayer)entity).addPotionEffect(new PotionEffect(Potion.digSlowdown.id, 1, 4)); } } super.onUpdate(stack, world, entity, p_77663_4_, p_77663_5_); } -
???
Je croyais que tu souhaitais augmenter la vitesse de frappe d’une épée ?! Là tu ne fais qu’ajouter l’effet de potion fatigue, qui RALENTIT AU CONTRAIRE l’animation de frappe, et la vitesse de cassage des blocks ….
Donc soit on n’avait pas compris ton problème depuis le début, soit tu t’es mal exprimé, hein ^^’ -
on peut utilisé ```java
public void onUpdate(ItemStack stack, World world, Entity entity, int p_77663_4_, boolean p_77663_5_)
{
if ((entity instanceof EntityPlayer))
{
EntityPlayer player = (EntityPlayer)entity;
if ((player.getHeldItem() != null) &&
((player.getHeldItem().getItem() instanceof Broadsword))) {
((EntityPlayer)entity).addPotionEffect(new PotionEffect(Potion.digSpeed.id, 1, 4)); //je ne rapelle pas bien mais je crois que que c’est digSpeed
}
}
super.onUpdate(stack, world, entity, p_77663_4_, p_77663_5_);
}d'aprés mes test au contraire sa marche super bien sa permet de ralentir ou d'accélérer la vitesse de frappe -
Ouais mais après tu te sers d’un effet de potion, c’est peut-être pas très “pro”, nan ? Et après si tu te balades sur le wiki de mc, il est dit qu’aucun de ces 2 effets n’influencent la vitesse de frappe. D’ailleurs, dig signifie “cresuer”, donc ça n’influence que la vitesse de casse des blocks.
-
tu sais quoi dans une heure ou deux je t’enverais une partie du mod build et l’adresse ip de mon serv test (qui est mon Pc) et on testeras enssemble
-
Hey ! J’attends toujours

-
Bonjour j’ai reprit le tuto par rapport à l’effet sur la hache pour casser l’arbre, mais j’aimerais changer un peu la condition.
En gros j’aimerais que, s’il y a un bloc dans un rayon de X qui soit un bloc de bois, alors il se casse également. pour le moment le code casse les blocs situés au-dessus (j’ai un gros arbre donc ça serait long de faire comme ça).
Et autre point, j’aimerais avoir un délai entre chaque blocs car, si la grosse structure se détruit d’un coup, ça risque de faire lagg (je ense) donc genre même si c’est 0.2sec entre chaque bloc c’est toujours ça ^^

