Epee rightClick
-
Bah le but d’un event est être indépendant de tout autre classe.Tu peux le mettre dans la classe de ton épée, oui, cela ne provoquera aucune erreur mais ce n’est pas très organisé après …
Le but est de mettre ça à part dans une classe récapitulant plusieurs events, et qui est à enregistré avec le bon bus depuis la méthode init de ta classe principale. Là il s’agit du bus Minecraft Forge -
Tu ne le call pas, si t’as enregistré l’event c’est bon
-
oui mais si je veux que sa sois quand je fais le right click que l’event intervient,du coup, c’est le code de l’event que je dois changer pour checker si l’item est l’epee et si je rightClick?
-
Tu veux vérifier si on rightclick l’item au moment qu’un joueur prend des dégâts ?
-
ouai pour justement diminuer les degats
-
Tu peux check si tonItem.onItemRightClick != null dans l’event LivingHurtEvent, au quel cas tu diminues event.amount
-
Non ça ne fonctionnera pas ça. Il doit avoir un truc qui permet de savoir si le joueur est en train de se protéger. Faut regarder dans la classe du joueur.
-
j’ai juste trouvé ceci player.setRevengeTarget(player); mais pas sur que sa soit cela…
-
On peut regarder si l’action est du type “blockage” et regarder si l’item est en utilisation
-
bah en sois je pourrais creer une variable bool qui se met true quand onrightclick ? et puis je le check directement dans l’event?
-
Ouais mais après tu vas être gêné par les tags. Je suis en train de chercher quelque chose de facile qui pourrait marcher…
-
Tu fais tout simplement ça :
if (player.getItem() != null && player.isItemInUse() && player.getItem().getEnumerationAction() == EnumerationAction.block)
(je suis pas du tout sûr des fonctions) -
Voilà la version corrigée

if (player.getItemInUse() != null && player.getCurrentEquippedItem().getItem().getItemUseAction(player.getCurrentEquippedItem()) == EnumAction.block) -
merci
-
Ok merci,Maitenant il manque plus que le sound? je sais pas comment faire une idée?
-
event.living.worldObj.playSoundAtEntity(event.living, “nom du son”, volume, fréquence);
-
il ne trouve pas le sound…
[11:58:05] [Client thread/WARN]: Unable to play unknown soundEvent: minecraft:sound/random/anvil_land.oggevent.entityLiving.worldObj.playSoundAtEntity(event.entityLiving, "sound/random/anvil_land.ogg", 1.0F, 1.0F); -
Tu t’es sûrement trompé dans le path du son. Regarde dans d’autres classes de MC quand il est joué et copie colle.
-
Dans le fichier sounds.json de Minecraft il y a :
"random.anvil_land": { "category": "block", "sounds": [ "random/anvil_land" ] },Donc il faut mettre :
event.entityLiving.worldObj.playSoundAtEntity(event.entityLiving, “random.anvil_land”, 1.0F, 1.0F); -
oui je l’avais vue ^^ mais mojang aurais pu faire plus simple quand meme xD