Résolu Faire un temps d'attendre apres l'utilisation d'un objet
-
bonjour a tous
je cherche le moyen de faire en sorte que si le joeur utilise un item il doivent attendre un moment avant de pouvoir réutiliser l’itm
et faire en sorte également que si le joueurarrete le temps d’attente cela recommence
pour l’action j’ai regarder au niveau de l’arc il y l’event canceledmerci pour vos réponses
-
Une condition qui valide un timer je pense
-
timer ? j’ai jamais fait de timer tu sait comment faire?
-
Je ne vois pas ce qu’il y a de compliqué dans l’arc …
public int getMaxItemUseDuration(ItemStack stack) { return 72000; }
Temps maximum d’utilisation
public ItemStack onItemRightClick(ItemStack stack, World world, EntityPlayer player) { player.setItemInUse(stack, this.getMaxItemUseDuration(stack)); return stack; }
Fait que le joueur utilise l’item lors du clic droit
public void onPlayerStoppedUsing(ItemStack stack, World world, EntityPlayer player, int time) { // lorsque le joueur lâche le clic droit, time correspond au temps durant lequel il a chargé l'item }
-
@‘robin4002’:
Je ne vois pas ce qu’il y a de compliqué dans l’arc …
public int getMaxItemUseDuration(ItemStack stack) { return 72000; }
Temps maximum d’utilisation
public ItemStack onItemRightClick(ItemStack stack, World world, EntityPlayer player) { player.setItemInUse(stack, this.getMaxItemUseDuration(stack)); return stack; }
Fait que le joueur utilise l’item lors du clic droit
public void onPlayerStoppedUsing(ItemStack stack, World world, EntityPlayer player, int time) { // lorsque le joueur lâche le clic droit, time correspond au temps durant lequel il a chargé l'item }
je sais que rien n’est compliquer dans l’arc je ne sais juste pas faire de timer
-
public class ItemTestCoolDown extends Item { protected int cooldown = 0; protected int twentyMin = 24000; //20 minutes d'attente avant chaques utilisations 24000 = ticks minecraft public ItemTestCoolDown() { super(); this.setCreativeTab(BOTICore.blocks); } @Override public void onUpdate(ItemStack stack, World world, Entity entity, int par4, boolean par5) { cooldown = cooldown + 1; if(cooldown == twentyMin) { ((EntityPlayer) entity).addChatMessage((new ChatComponentText(EnumChatFormatting.GREEN + "You can use it now !"))); } } @Override public ItemStack onItemRightClick(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer) { if(!par2World.isRemote) { //CODE ICI cooldown = 0; } return par1ItemStack; }
Cadeau !
-
@‘ZeAmateis’:
public class ItemTestCoolDown extends Item { protected int cooldown = 0; protected int twentyMin = 24000; //20 minutes d'attente avant chaques utilisations 24000 = ticks minecraft public ItemTestCoolDown() { super(); this.setCreativeTab(BOTICore.blocks); } @Override public void onUpdate(ItemStack stack, World world, Entity entity, int par4, boolean par5) { cooldown = cooldown + 1; if(cooldown == twentyMin) { ((EntityPlayer) entity).addChatMessage((new ChatComponentText(EnumChatFormatting.GREEN + "You can use it now !"))); } } @Override public ItemStack onItemRightClick(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer) { if(!par2World.isRemote) { //CODE ICI cooldown = 0; } return par1ItemStack; }
Cadeau !
Merci beaucoup ! Sa va me faire avancer je change le sujet en résolu