Effet de lenteur sous l'eau
-
c’est juste event.newSpeed
-
Merci

Mais aussi quel est le nom de la variable a modifier pour la vitesse de deplacement du joueur ? -
tu peux diviser les motion du joueur sur chaque axe
-
Ou alors modifier la variable PlayerCapabilites#walkSpeed
-
nice merci

EDIT : Ok mais c’est pas avec cet event la : LivingUpdateEvent pour le walkSpeed
-
Ok mais c’est pas avec cet event la : LivingUpdateEvent
-
Bah si
if(player.isWater) ou (inWater)
player.playerCapabilities.walkSpeed = 0.2 //de base c’est 0.1 je croisSi le field est private ou protected, alors sers toi de la classe ObfuscationReflectionHelper

-
@SubscribeEvent
public void onLiving(LivingEvent.LivingUpdateEvent event)
{
if (event.entity.isInWater())
{
event.entity.
}
}C’est pas un EntityPlayer, c’est juste une Entity donc je peut pas acceder aux capabilities.walkspeed
-
Eh bien tu crées une nouvelle variable EntiytPlayer en castant event.entity après avoir check via instanceof
-
ok merci
EDIT :
EntityPlayer player(event.entity);Ca me le souligne en rouge

-
comment on cast ? :3
C’est pas le truc que je fait souvant lel -
EntityPlayer player(event.entity);
Ca me le souligne en rouge

-
Euh apprends le java : EntityPlayer player = (EntityPlayer) event.entity;
-
@VDD
+1@SpyMan, il me semblait que tu savais cast depuis tout le temps que t’es inscrit sur MFF _ ??
-
Merci Sympa, mais c’est pas le truc que j’ai a faire LE PLUS SOUVANT merci

Et je connais bien le java merci de vous en inquiéterMarche poo

[font=Source Code Pro*@SubscribeEvent *]public void onLiving(LivingEvent.LivingUpdateEvent *event*) { if (*event*.entity.isInWater()) { if (*event*.entity instanceof EntityPlayer) { EntityPlayer player = (EntityPlayer) *event*.entity%(#aaa9a7)[; ] player.capabilities.setPlayerWalkSpeed(0.1F)%(#aaa9a7)[; ] } } } -
Essaye avec autre chose que 0.1F pour voir.
-
@‘SpyMan’:
Merci Sympa, mais c’est pas le truc que j’ai a faire LE PLUS SOUVANT merci

Et je connais bien le java merci de vous en inquiéterMarche poo

[font=Source Code Pro*@SubscribeEvent *]public void onLiving(LivingEvent.LivingUpdateEvent *event*) { if (*event*.entity.isInWater()) { if (*event*.entity instanceof EntityPlayer) { EntityPlayer player = (EntityPlayer) *event*.entity%(#aaa9a7)[; ] player.capabilities.setPlayerWalkSpeed(0.1F)%(#aaa9a7)[; ] } } }Tu as enregistrer ta classe event au moins ?
-
dans cette class jai d’autre events qui fonctionne donc oui elle est bien enregistrer coté forge et fml
J’ai test avec d’autres valeurs mais ca marche pas non plus

-
Mets un System.out.println pour voir si c’est bien appelé.
-
@‘AymericRed’:
Mets un System.out.println pour voir si c’est bien appelé.
J’ai essayer de mon côté l’event marche bien mais en fait le truc c’est que sa modifie ton walkspeed quand tu sors de l’eau ^^
Essaye un walkspeed de 3.0F marche dans l’eau puis sort sur la terre tu vas voir que sa l’applique une fois hors de l’eau et quand tu re rentre dans l’eau tu es encore slow