Le Clic droit + nom sur mob
-
merci les gars je vais essayer sinon sosoh je l’ai déja fait et sa ne donne aucun résultat et il m’a obliger a creer une fonction pour DoRenderLiving
-
sosoh je l’ai déja fait et sa ne donne aucun résultat et il m’a obliger a creer une fonction pour DoRenderLiving
Scarex je n’ai pas compris.
merci gugu pour ce code
moi je veux que quand ce bloc soit poser et quand je clique droit dessus sa mouvre internet
voici la classe du bloc(je changerail le lien quand sa marchera ;)):::
package com.google.monpetitflocon.modtest.common; import java.awt.Desktop; import java.net.URL; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraft.world.World; public class BlockTutoriel extends Block { protected BlockTutoriel(Material material) { super(material.wood); this.setCreativeTab(ModTest.tutorialCreativeTabs); } public ItemStack onItemRightClick(ItemStack stack, World world, EntityPlayer player) { Desktop desktop = Desktop.isDesktopSupported() ? Desktop.getDesktop() : null; if (desktop != null && desktop.isSupported(Desktop.Action.BROWSE)) { try { desktop.browse(new URL("ton lien").toURI()); } catch (Exception e) { e.printStackTrace(); } } return stack; } }:::
merci de me donner le code public right clic pour plus de faciliter
return stack obligatoire dans le cas si dessus et ce code ne marche pas bien evidament :shy: -
@‘monpetitflocon’:
sosoh je l’ai déja fait et sa ne donne aucun résultat et il m’a obliger a creer une fonction pour DoRenderLiving
Scarex je n’ai pas compris.
merci gugu pour ce code
moi je veux que quand ce bloc soit poser et quand je clique droit dessus sa mouvre internet
voici la classe du bloc(je changerail le lien quand sa marchera ;)):::
package com.google.monpetitflocon.modtest.common; import java.awt.Desktop; import java.net.URL; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraft.world.World; public class BlockTutoriel extends Block { protected BlockTutoriel(Material material) { super(material.wood); this.setCreativeTab(ModTest.tutorialCreativeTabs); } public ItemStack onItemRightClick(ItemStack stack, World world, EntityPlayer player) { Desktop desktop = Desktop.isDesktopSupported() ? Desktop.getDesktop() : null; if (desktop != null && desktop.isSupported(Desktop.Action.BROWSE)) { try { desktop.browse(new URL("ton lien").toURI()); } catch (Exception e) { e.printStackTrace(); } } return stack; } }:::
merci de me donner le code public right clic pour plus de faciliter
return stack obligatoire dans le cas si dessus et ce code ne marche pas bien evidament :shy:Conseil que je donne tout le temps : Source -> override or implement methods ou Alt + shift + s -> override or implement methods pour override les fonctions (cette méthode empêche de se tromper sur les paramètres les noms de fonctions etc. Dans ton cas, la fonction onItemRightClick ne peut pas marcher car ton block est un block (obviously) et non un Item, tu as 2 méthodes pour çà :
-changer ton block en Item (es-tu obligé d’utiliser un block plutôt qu’un item ?)
-créer un Item associé à ton block (regarde le tutoriel de Robin car je me rappelle plus comment faire)
-mettre la méthode du click droit sur ton mob (interact(EntityPlayer player) méthode).Mais je ne comprends pas vraiment ce que tu veux faire, explique mieux : quand est-ce que tu veux ouvrir internet ? quand est-ce que tu veux avoir le nom du mob ? etc.
-
Ou utilise la fonction onBlockActivated …
Ton code actuel ne risque pas de fonctionner puisque tu utilises une fonction qui n’existe pas dans Block.java, et donc ne sera jamais appelé. -
scarex je veux ouvrir internet quand on clique sur le bloc et pour le mob c’est son nom comme un name tag quoi
-
@‘monpetitflocon’:
scarex je veux ouvrir internet quand on clique sur le bloc et pour le mob c’est son nom comme un name tag quoi
tu réécris la fonction onBlockActivated et dedans tu mets :
Desktop desktop = Desktop.isDesktopSupported() ? Desktop.getDesktop() : null; if (desktop != null && desktop.isSupported(Desktop.Action.BROWSE)) { try { desktop.browse(new URI("http://scarex.on.vg/about")); // Placement de produit spotted } catch (Exception e) { ; } } -
ne marche pas le code alair bon mais dans le jeu rien
-
Ajoute un println dans ta méthode et regarde si tu as un output dans la console.
-
@‘monpetitflocon’:
ne marche pas le code alair bon mais dans le jeu rien
Je penses que tu n’as pas la bonne fonction, as-tu fait Alt + shift + s puis override or implement methods pour avoir la fonction ? Si la réponse est non, essaie en faisant çà.
-
déja fait ne marche pas et quel est le code pour la foudre sa devrait etre plus simple
-
@‘monpetitflocon’:
déja fait ne marche pas et quel est le code pour la foudre sa devrait etre plus simple
Pour la foudre, il faut utiliser le rayTrace et utiliser le MovingObjectPosition pour faire spawner l’éclair.
-
ok merci je testerai
-
Pour afficher le nom du mob, rajoute dans la classe de ce dernier :
this.setCustomNameTag("tonNom"); -
Merci mec et tu conaitrais pas le moyen de customiser les drop (plusieurs drop et drops rare) et fixer l’id d’un oeuf genre 383:458 au lieu de 383:3 car si on met d’autres mods l’id de loeuf change et c pas pratique

Scarex je met quoi comme code car je trouve pas pour l’éclaire -
@‘monpetitflocon’:
Merci mec et tu conaitrais pas le moyen de customiser les drop (plusieurs drop et drops rare) et fixer l’id d’un oeuf genre 383:458 au lieu de 383:3 car si on met d’autres mods l’id de loeuf change et c pas pratique

Scarex je met quoi comme code car je trouve pas pour l’éclaireMovingObjectPosition m = player.rayTrace(distance, partialTick);
puis tu récupère le block et tu y fais apparaître un éclair. -
il me dit de creer une classe pour player c pas normal
-
@‘monpetitflocon’:
il me dit de creer une classe pour player c pas normal
player c’est le joueur, cette variable dépend de ton code.
-
j’ai fait sa sur une pelle et sa met une erreur sur player et dans les trucs de la parenthese
package com.google.monpetitflocon.modtest.common; import net.minecraft.item.ItemSpade; import net.minecraft.item.ItemStack; import net.minecraft.util.MovingObjectPosition; public class ItemTutoShovel extends ItemSpade { public ItemTutoShovel(ToolMaterial material) { super(material); this.setCreativeTab(ModTest.tutorialCreativeTabs); } public boolean getIsRepairable(ItemStack input, ItemStack repair) { if(repair.getItem() == ModTest.letest) { return true; } return false; } MovingObjectPosition m = player.rayTrace(distance, partialTick); } -
@‘monpetitflocon’:
j’ai fait sa sur une pelle et sa met une erreur sur player et dans les trucs de la parenthese
package com.google.monpetitflocon.modtest.common; import net.minecraft.item.ItemSpade; import net.minecraft.item.ItemStack; import net.minecraft.util.MovingObjectPosition; public class ItemTutoShovel extends ItemSpade { public ItemTutoShovel(ToolMaterial material) { super(material); this.setCreativeTab(ModTest.tutorialCreativeTabs); } public boolean getIsRepairable(ItemStack input, ItemStack repair) { if(repair.getItem() == ModTest.letest) { return true; } return false; } MovingObjectPosition m = player.rayTrace(distance, partialTick); }1-Apprendre le java
2-Le code est mieux dans une fonction, non ?
3-Vu que je suis gentil et que j’ai déjà fais ce genre de code, le voilà :Rajoute cette fonction dans ta classe
@Override public ItemStack onItemRightClick(ItemStack sword, World world, EntityPlayer player){ if (sword.getItem() == LASItems.swordElectrum) { MovingObjectPosition position = player.rayTrace(128.0F, 1.0F); if (position != null && position.typeOfHit == MovingObjectPosition.MovingObjectType.BLOCK) { int x = position.blockX; int y = position.blockY; int z = position.blockZ; EntityLightningBolt lightning = new EntityLightningBolt(world, x, y, z); world.spawnEntityInWorld(lightning); sword.damageItem(10, player); } } return super.onItemRightClick(sword, world, player); } -
merci je vais essayer et sinon pour litem right click j’ai rectifier avant ton message
mais pour le code apres jaurais jamais trouver
edit: attention je test tout