Changer la hitbox du joueur
-
Sommaire
Introduction
Cette astuce vous permettra de changer la hitbox du joueur pour pouvoir modifier le gameplay du jeu à votre guise !
Pré-requis
Vous aurez besoin d’un **EventHandler **(classe qui recense vos events) si vous n’avez ce type de classe
Pensez à enregistrer l’event dans la fonction init() de votre modCode
PlayerHelper:
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.util.math.AxisAlignedBB; public class PlayerHelper { /** * Method to set the player hitbox size * * @param player * _(EntityPlayer)_ Call the player from event * @param width * _(float)_ Define the player width * @param height * _(float)_ Define the player height * @param eyeHeight * _(float)_ Define the player eyes Y position */ public static void setPlayerSize(EntityPlayer player, float width, float height, float eyeHeight) { AxisAlignedBB axisalignedbb = player.getEntityBoundingBox(); player.width = width; player.height = height; player.setEntityBoundingBox(new AxisAlignedBB(axisalignedbb.minX, axisalignedbb.minY, axisalignedbb.minZ, axisalignedbb.minX + (double) width, axisalignedbb.minY + (double) height, axisalignedbb.minZ + (double) width)); player.getEntityBoundingBox().setMaxY(axisalignedbb.maxY); player.eyeHeight = eyeHeight; } /** * Method to reset the player hitbox size to default * height = 1.8F * width = 0.6F * eyeHeight = 1.62F * * @param player * _(EntityPlayer)_ Call the player from event */ public static void resetPlayerSize(EntityPlayer player) { setPlayerSize(player, 0.6F, 1.8F, player.getDefaultEyeHeight()); } }
Event Handler:
Dans votre classe créez une méthode pour que nous puissions utiliser le paramètre **TickEvent.PlayerTickEvent **en ajoutant juste avant l’annotation SubscribeEvent
Faites une condition pour savoir si le joueur est null ou non, utilisez l’argument de la méthode que vous venez de créer et appelez player
Une fois votre condition créée, utilisez la classe **PlayerHelper **que je vous ai fourni plus haut pour appeler la méthode *setPlayerSize *
Vous pourrez dès lors renseigner les arguments (joueur, largeur_Hitbox, hauteur_Hitbox, hauteurDesYeux) les trois derniers arguments sont des float
Si vous souhaitez réinitialiser la taille de votre joueur appelez la méthode resetPlayerSize(joueur)
Bonus
En utilisant le super tutoriel de Gugu pour modifier le rendu du joueur, vous pourrez par exemple agrandir ou rétrécir la taille du modèle du joueur !
Il suffit d’utiliser OpenGL et de modifier le scale et la translation du modèle et le tour est joué !
Moi j’ai fait un minimoi parce-que le japon.
Résultat
And voilà !
Vous avez réussi à modifier la taille du joueur !
Ici j’ai repris les arguments de la taille de la pouleRédaction :
Correction :
Ce tutoriel de Minecraft Forge France est mis à disposition selon les termes de la licence Creative Commons Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes Conditions 4.0 International -
Pratique pour passer dans les trous d’1 block de hauteur.
-
Ou même des trous 1/2 block avec les dalles ^^
Edit: je vois bien cette fonctionnalité pour une élaboration de points faibles, si on tape à cette endroit ça
fera très mal mais ce n’est pas évident à trouver et encore moins à atteindre . -
Combiner avec un modèl plus petit ça passe tranquille et oui je suis chinât mais 1.8.9 possible ? Autre methode je suppose ?
-
@‘moscaphone421’:
Combiner avec un modèl plus petit ça passe tranquille et oui je suis chinât mais 1.8.9 possible ? Autre methode je suppose ?
Ça marchera en 1.8.9 normalement, faut test ^^
-
Ajout d’un bonus !
-
Il manque pas un bout de la phrase ? Et aussi le bout d’un mot !
“Il suffit d’uliser OpenGL et de modifier le scale et la translation du modèle et le tour”
(Deuxième ligne du bonus) -
C’est réglé merci
-
attend mais mais c’est super pour mon mod mais j’ai une question je sais qu’il faut modifié des truc mais lesquelles pour que ça marche en 1.7.10 ?
ahh ouiiii j’oubliait merci pour ce tuto sympas ;D -
Bah normalement c’est la même marche à suivre pour la 1.7.10
-
Youpiii
-
@Ama a dit dans Changer la hitbox du joueur :
events
Bonjours est ce que tu aurais le codes source car je voudrais apprendre a faire en sorte de ratisser mon perso. merci
-
@Fury Relis bien le topic, je crois que tu as loupé un passage…
-
Ca me donnera de popo de giantisme! (mais c’est fixe ou on peut mettre des conditions(ex quand on sneak ca change la hitbox)
-
@Daich_20 Tu peux totalement, mettre des conditions oui.
-
Je vien de voir merci Ama .
-
Bonjour, j’ai un petit probléme avec votre tuto sur la hitbox
je suis en 1.12.2
la hitbox est effectivement changer, mais le joueur court tout seul vers l’ouest
J’utilise : setPlayerSize(e.player, 1.2F, 1.2F, 1F);
En attente d’une réponse, merci d’avance.
-
Merci pour le tuto ^^