[1.7.x]Bibliothèques utilisables comme bibliothèques
-
Un tutoriel sera fait pour expliquer.
Envoyé de mon AN7DG3-LZ en utilisant Tapatalk
-
Super. Merci d’avance

Cordialement.
Skillb0w -
Je vais être honnete avec toi, tu as trouvé le code qui gère ça, c’est vraiment pas mal pour un débutant

Écrit avec Tapatalk depuis mon mobile. Pardonnez les possibles fautes, j’aime juste pas écrire avec mon mobile.
-
Merci, après je n’ai fait que des blocs et des items donc je reste débutant ^^
Mais ça fait toujours plaisir
Cordialement.
Skillb0w -
tu sais si tu faut un bloc qui quand tu clique dessus fait spawn un enderDragon, 4 wither boss des particule de flame et d’explotion et fait un playsound d’une musique épique, certe ne c’est qu’un bloc mais c’est vachement complet
-
Oui c’est vrai, et ça à l’air plutôt fun

Tu me donne une idée pour quand j’aurais un peu plus d’experience
Cordialement.
Skillb0w -
^^ bha écoute de rien
-
Tu extends le bloc bibliothèque au lieu d’étendre le bloc “Block”
-
Ça aurai fonctionné si la condition était instanceof BlockBookShelf, mais la avec == Blocks.bookshelf) ça fonctionnera pas même si tu extends.
-
Je n’avais pas regardé la condition.
Effectivement, ça ne peut pas fonctionné alors
-
Je sais, j’ai dis dans mon premier message que j’avais regardé le code de la table d’enchantement, et qu’il y avait ceci (entre autre) :
if (p_149734_1_.getBlock(l, j1, i1) == Blocks.bookshelf)Et donc que mon bloc ne pouvait pas être vérifié.
Cordialement.
Skillb0w -
Je ne pense pas qu’il faut utiliser l’ASM, si ça ce trouve y’a un event.
-
Non, si il y avait un event, il y aurait la fonction MinecraftForge.EVENT_BUS.post dans le code de mc, or ce n’est pas le cas.
Et ajouter une fonction du genre isBookShelf(world, x, y, z) dans la classe Block.java aurait été mieux qu’un event, donc je doutes que ça existe. -
La fonction qui montre permet juste à faire apparaître les particules, si on bidouille un peu ptet que les particules peuvent se faire dans la classe de la bibliothèque qu’il a créé. (Mais ça risque d’être compliqué (ou pas))
Si on recherche bien je n’ai trouvé qu’une seule fonction appelant le bloc bookshelf :/** * Determines the amount of enchanting power this block can provide to an enchanting table. * @param world The World * @param x X position * @param y Y position * @param z Z position * @return The amount of enchanting power this block produces. */ public float getEnchantPowerBonus(World world, int x, int y, int z) { return this == Blocks.bookshelf ? 1 : 0; }Je pense que si on override la méthode dans la classe de son bloc comme ça :
/** * Determines the amount of enchanting power this block can provide to an enchanting table. * @param world The World * @param x X position * @param y Y position * @param z Z position * @return The amount of enchanting power this block produces. */ @Override public float getEnchantPowerBonus(World world, int x, int y, int z) { return this == Blocks.bookshelf || this == MaClass.monBookshelf ? 1 : 0; }Je ne suis pas sûr mais avant de faire de l’ASM il faut chercher s’il y a une solution.
-
Ah oui en effet, forge ajoute déjà la fonction pour

Suffit juste mettre :@Override public float getEnchantPowerBonus(World world, int x, int y, int z) { return 1; }Dans la classe de la bibliothèque custom et c’est bon.
-
Salut. Désolé pour ma réponse tardive, je rentre de vacances et j’ai pas mal de choses à faire.
Pour la fonction que tu m’as donné Robin4002, elle fonctionne très bien. Merci beaucoup.Cordialement.
Skillb0W -
Met la balise Résolu

