MFF

    Minecraft Forge France
    • Récent
    • Mots-clés
    • Populaire
    • Utilisateurs
    • Groupes
    • Forge Events
      • Automatique
      • Foncé
      • Clair
    • S'inscrire
    • Se connecter

    Armures ou items qui permettent de fly en survit

    Planifier Épinglé Verrouillé Déplacé Résolu 1.12.x
    1.12.2
    39 Messages 5 Publieurs 2.3k Vues 5 Watching
    Charger plus de messages
    • Du plus ancien au plus récent
    • Du plus récent au plus ancien
    • Les plus votés
    Répondre
    • Répondre à l'aide d'un nouveau sujet
    Se connecter pour répondre
    Ce sujet a été supprimé. Seuls les utilisateurs avec les droits d'administration peuvent le voir.
    • Arca30A Hors-ligne
      Arca30
      dernière édition par

      C’est bon je l’ai enregistré avec event.player et j’arrive a voler en survie ! Petit problème je vole sans armure…
      Je continue à chercher mais si jamais t’as la solution je suis preneur :grinning_face_with_sweat:

      1 réponse Dernière réponse Répondre Citer 0
      • Arca30A Hors-ligne
        Arca30
        dernière édition par

        Bon j’y arrive pas, je comprend pas…

        1 réponse Dernière réponse Répondre Citer 0
        • robin4002R Hors-ligne
          robin4002 Moddeurs confirmés Rédacteurs Administrateurs
          dernière édition par

          Si tu arrêtes de voler sans armure, est-ce que tu arrives à nouveau à voler ensuite ?

          1 réponse Dernière réponse Répondre Citer 0
          • Arca30A Hors-ligne
            Arca30
            dernière édition par Arca30

            oui j’arrive a voler après m’être posé sans armure et le problème est encore pire, des que je lance le jeu je peut voler direct sans mettre aucun bout d’armure…

            Je te remet mon code au cas ou

            package fr.arca.arcadia;
            
            import fr.arca.arcadia.init.ItemsMod;
            
            public class EventHandler 
            {   
            	 
            	@SubscribeEvent
            	   public void onPlayerTick(PlayerTickEvent event) 
            	    {
            	            EntityPlayer player = event.player;
            	    		ItemStack helmet = player.inventory.armorItemInSlot( 3 );
            	    		ItemStack chestplate = player.inventory.armorItemInSlot( 2 );
            	    		ItemStack leggings = player.inventory.armorItemInSlot( 1 );
            	    		ItemStack boots = player.inventory.armorItemInSlot( 0 );
            	 
            	    		if(boots != null && leggings != null && chestplate != null && helmet != null)
            	    		{
            	    			player.capabilities.allowFlying = true;
            	    		}
            	 
            	    		else
            	    		{
            	    			player.capabilities.allowFlying = false;
            	    		}
            	    }
            	
            }
            
            
            1 réponse Dernière réponse Répondre Citer 0
            • TwiguinouT Hors-ligne
              Twiguinou
              dernière édition par

              Si tu arrives à voler c’est que Minecraft n’utilise pas l’attribut null quand un slot est vide mais il utilise ItemStack.EMPTY donc vérifie plutôt si l’ItemStack est différent de ItemStack.EMPTY.

              1 réponse Dernière réponse Répondre Citer 2
              • Arca30A Hors-ligne
                Arca30
                dernière édition par

                Merci beaucoup ça fonctionne parfaitement, mais pour toute les armures…

                J’arrive pas à limiter le fly à une seule armure. J’ai quelques idées mais je n’arrive pas à les mettre en place.
                Comment je pourrais faire pour que seulement quand un item en particulier est équipé la condition soit vérifié ?

                1 réponse Dernière réponse Répondre Citer 0
                • P Hors-ligne
                  PlagueZ
                  dernière édition par PlagueZ

                  A lieu de vérifier si le casque est pas vide tu vérifie si le casque est le casque que tu veut si ca bug vérifie d’abord si c’est pas EMPTY avant de vérifier que ce qui y’a dedans est ce que tu veut en gros tu garde la meme condition sauf que au lieu de EMPTY tu met l’item tu veut

                  	ItemStack checkedHelmet= new ItemStack(TaClasse.TonCasque );
                  ItemStack checkedboot= new ItemStack(TaClasse.Tonboot );
                  ItemStack checkedchest= new ItemStack(TaClasse.TonChest );
                  ItemStack checkedleggin= new ItemStack(TaClasse.TonLeggin );
                  
                      		if(boots == checkedboot  && leggings == checkedleggin && chestplate == checkedchest && helmet == checkedHelmet)
                      		
                      			    		{
                      		
                      			    			player.capabilities.allowFlying = true;
                      		
                      			    		}
                      		
                      			 
                      		
                      			    		else
                      		
                      			    		{
                      		
                      			    			player.capabilities.allowFlying = false;
                      		
                      			    		}
                  
                  //si ca marche pas tu fait ca 
                  	    		if(boots != ItemStack.EMPTY  && leggings != ItemStack.EMPTY  && chestplate != ItemStack.EMPTY  && helmet != ItemStack.EMPTY  )
                  
                  	    		{
                  	    		if(boots == checkedboot  && leggings == checkedleggin && chestplate == checkedchest && helmet == checkedHelmet)
                  	    		
                  	    			    		{
                  	    		
                  	    			    			player.capabilities.allowFlying = true;
                  	    		
                  	    			    		}
                  	    		
                  	    			 }
                  	    		
                  	    			    		else
                  	    		
                  	    			    		{
                  	    		
                  	    			    			player.capabilities.allowFlying = false;
                  	    		
                  	    			    		}
                  
                  

                  “Imagination is more important than knowledge. For knowledge is limited to all we now know and understand, while imagination embraces the entire wo…

                  1 réponse Dernière réponse Répondre Citer 0
                  • Arca30A Hors-ligne
                    Arca30
                    dernière édition par

                    Désolé ça ne fonctionne pas, je n’arrive plus du tout à fly.
                    J’ai essayé ça:

                    @SubscribeEvent
                    	   public void onPlayerTick(PlayerTickEvent event) 
                    	    {
                    	            EntityPlayer player = event.player;
                    	    		ItemStack helmet = player.inventory.armorItemInSlot( 3 );
                    	    		ItemStack chestplate = player.inventory.armorItemInSlot( 2 );
                    	    		ItemStack leggings = player.inventory.armorItemInSlot( 1 );
                    	    		ItemStack boots = player.inventory.armorItemInSlot( 0 );
                    	    		
                    	    		ItemStack checkedHelmet = new ItemStack(ItemsMod.findium_helmet);
                    	    		ItemStack checkedChestplate = new ItemStack(ItemsMod.findium_chestplate);
                    	    		ItemStack checkedLeggings = new ItemStack(ItemsMod.findium_leggings);
                    	    		ItemStack checkedBoots = new ItemStack(ItemsMod.findium_boots);
                    	    		
                    	    		
                    	    		if(boots != ItemStack.EMPTY && leggings != ItemStack.EMPTY && chestplate != ItemStack.EMPTY && helmet != ItemStack.EMPTY)
                    	    		{
                    	    			
                    	    			if(helmet == checkedHelmet && chestplate == checkedChestplate && leggings == checkedLeggings && boots == checkedBoots)
                    	    				{
                    	    				
                    	    					player.capabilities.allowFlying = true;
                    	    				
                    	    				}
                    	    			
                    	    		}
                    	 
                    	    		else
                    	    		{
                    	    			player.capabilities.allowFlying = false;
                    	    			player.capabilities.isFlying = false;
                    	    		}
                    	    }
                    

                    et ça:

                    @SubscribeEvent
                    	   public void onPlayerTick(PlayerTickEvent event) 
                    	    {
                    	            EntityPlayer player = event.player;
                    	    		ItemStack helmet = player.inventory.armorItemInSlot( 3 );
                    	    		ItemStack chestplate = player.inventory.armorItemInSlot( 2 );
                    	    		ItemStack leggings = player.inventory.armorItemInSlot( 1 );
                    	    		ItemStack boots = player.inventory.armorItemInSlot( 0 );
                    	    		
                    	    		ItemStack checkedHelmet = new ItemStack(ItemsMod.findium_helmet);
                    	    		ItemStack checkedChestplate = new ItemStack(ItemsMod.findium_chestplate);
                    	    		ItemStack checkedLeggings = new ItemStack(ItemsMod.findium_leggings);
                    	    		ItemStack checkedBoots = new ItemStack(ItemsMod.findium_boots);
                    	    		
                    	    		
                    	    	
                    	    		if(helmet == checkedHelmet && chestplate == checkedChestplate && leggings == checkedLeggings && boots == checkedBoots)
                    	    			{
                    	    				
                    	    				player.capabilities.allowFlying = true;
                    	    				
                    	    			}
                    	    			
                    	    		
                    	 
                    	    		else
                    	    		{
                    	    			player.capabilities.allowFlying = false;
                    	    			player.capabilities.isFlying = false;
                    	    		}
                    	    }
                    
                    1 réponse Dernière réponse Répondre Citer 0
                    • Arca30A Hors-ligne
                      Arca30
                      dernière édition par

                      Par contre un truc intéressant c’est que quand je vérifie juste si “chest == checkedchest” je ne plus fly même en créatif.

                      1 réponse Dernière réponse Répondre Citer 0
                      • P Hors-ligne
                        PlagueZ
                        dernière édition par

                        player.inventory.armorItemInSlot( 3 );

                        peut être que les slot sont pas bon je suis en train de vérifier xD et pour le creatif faudrait ajouter un condition pour verifier si le joueur est en creatif ou non

                        “Imagination is more important than knowledge. For knowledge is limited to all we now know and understand, while imagination embraces the entire wo…

                        1 réponse Dernière réponse Répondre Citer 0
                        • robin4002R Hors-ligne
                          robin4002 Moddeurs confirmés Rédacteurs Administrateurs
                          dernière édition par

                          Non mais tu essayes de comparer une nouvelle instance d’un itemstack avec un autre en utilisant l’opérateur ==, ça sera forcement faux.
                          Faudrait plutôt comparer helmet.getItem() == ItemsMod.findium_helmet

                          1 réponse Dernière réponse Répondre Citer 1
                          • P Hors-ligne
                            PlagueZ
                            dernière édition par PlagueZ

                            	@SubscribeEvent
                            
                            		   public void onPlayerTick(PlayerTickEvent event) 
                            
                            		    {
                            
                            		            EntityPlayer player = event.player;
                            
                            		    		ItemStack helmet = player.inventory.armorItemInSlot(3);
                            		    		ItemStack chestplate = player.inventory.armorItemInSlot( 2 );
                            
                            		    		ItemStack leggings = player.inventory.armorItemInSlot( 1 );
                            
                            		    		ItemStack boots = player.inventory.armorItemInSlot( 0 );
                            
                            		    		if(helmet.isItemEqual(new ItemStack(Items.DIAMOND_HELMET)) &&  
                            		    				chestplate.isItemEqual(new ItemStack(Items.DIAMOND_CHESTPLATE)) && 
                            		    				leggings.isItemEqual(new ItemStack(Items.DIAMOND_LEGGINGS)) && 
                            		    				boots.isItemEqual(new ItemStack(Items.DIAMOND_BOOTS)))
                            
                            		    			{
                            		    				player.capabilities.allowFlying = true;
                            		    			}else{
                            		    			player.capabilities.allowFlying = false;
                            		    		}
                            
                            		    }
                            

                            ca ca fonctionne autant pour moi j’ai ecrit ce qui a au dessus vite et j’aurait pas du ya une fonction pour faire ca x)

                            “Imagination is more important than knowledge. For knowledge is limited to all we now know and understand, while imagination embraces the entire wo…

                            1 réponse Dernière réponse Répondre Citer 1
                            • Arca30A Hors-ligne
                              Arca30
                              dernière édition par

                              Ça y est tout fonctionne parfaitement merci a tous ! Plus que le fly en créatif a fixer et c’est bon.
                              Je vous met le code final :

                              	@SubscribeEvent
                              	public void onPlayerTick(PlayerTickEvent event) 
                              	    {
                              	            EntityPlayer player = event.player;
                              	    		ItemStack helmet = player.inventory.armorItemInSlot(3);
                              	    		ItemStack chestplate = player.inventory.armorItemInSlot( 2 );
                              	    		ItemStack leggings = player.inventory.armorItemInSlot( 1 );
                              	    		ItemStack boots = player.inventory.armorItemInSlot( 0 );
                              
                              	    		if(helmet.isItemEqual(new ItemStack(ItemsMod.findium_helmet)) && chestplate.isItemEqual(new ItemStack(ItemsMod.findium_chestplate)) && leggings.isItemEqual(new ItemStack(ItemsMod.findium_leggings)) && boots.isItemEqual(new ItemStack(ItemsMod.findium_boots)))
                              
                              	    			{
                              	    				player.capabilities.allowFlying = true;
                              	    			}
                              	    		
                              	    		else
                              	    		
                              	    			{
                              	    				player.capabilities.allowFlying = false;
                              	    				player.capabilities.isFlying = false;
                              	    			}
                              
                              	    }
                              
                              1 réponse Dernière réponse Répondre Citer 0
                              • P Hors-ligne
                                PlagueZ
                                dernière édition par

                                petit indice avec ca tu devrait trouver par toit meme

                                if(player.capabilities.isCreativeMode) 
                                

                                soit tu fait en sort que ca ca fasse toujours voler soit tu fait en sorte que ta condition s’applique pas quand tu est creatif

                                “Imagination is more important than knowledge. For knowledge is limited to all we now know and understand, while imagination embraces the entire wo…

                                1 réponse Dernière réponse Répondre Citer 0
                                • Arca30A Hors-ligne
                                  Arca30
                                  dernière édition par

                                  Merci de ton indice mais c’est bon j’ai trouvé, par contre j’ai fait autrement je sais pas si c’est grave :grinning_face_with_sweat:

                                  @SubscribeEvent
                                  	public void onPlayerTick(PlayerTickEvent event) 
                                  	    {
                                  	            EntityPlayer player = event.player;
                                  	    		ItemStack helmet = player.inventory.armorItemInSlot(3);
                                  	    		ItemStack chestplate = player.inventory.armorItemInSlot( 2 );
                                  	    		ItemStack leggings = player.inventory.armorItemInSlot( 1 );
                                  	    		ItemStack boots = player.inventory.armorItemInSlot( 0 );
                                  
                                  	    		if(!player.isCreative())
                                  	    		{
                                  	    			
                                  	    		if(helmet.isItemEqual(new ItemStack(ItemsMod.findium_helmet)) && chestplate.isItemEqual(new ItemStack(ItemsMod.findium_chestplate)) && leggings.isItemEqual(new ItemStack(ItemsMod.findium_leggings)) && boots.isItemEqual(new ItemStack(ItemsMod.findium_boots)))
                                  
                                  	    				{
                                  	    					player.capabilities.allowFlying = true;
                                  	    				}
                                  	    			
                                  
                                  	    		else
                                  	    		
                                  	    			{
                                  	    				player.capabilities.allowFlying = false;
                                  	    				player.capabilities.isFlying = false;
                                  	    			}
                                  	    		}
                                  	    }
                                  
                                  1 réponse Dernière réponse Répondre Citer 0
                                  • P Hors-ligne
                                    PlagueZ
                                    dernière édition par

                                    je pense pas ca change quelque choses x)

                                    “Imagination is more important than knowledge. For knowledge is limited to all we now know and understand, while imagination embraces the entire wo…

                                    1 réponse Dernière réponse Répondre Citer 0
                                    • Arca30A Hors-ligne
                                      Arca30
                                      dernière édition par

                                      Ah par contre j’avais oublié le mode spectateur donc ne pas oublié de mettre ça dans le code de la meme facon que le isCreative

                                      if(!player.isSpectator())
                                      
                                      1 réponse Dernière réponse Répondre Citer 0
                                      • Arca30A Hors-ligne
                                        Arca30
                                        dernière édition par

                                        Heu après quelque test je vient de me rendre compte que quand l’armure prend des dégâts on ne peut plus fly…
                                        J’en ai marre mdr

                                        1 réponse Dernière réponse Répondre Citer 0
                                        • P Hors-ligne
                                          PlagueZ
                                          dernière édition par PlagueZ

                                          et si tu utilise ce que Robin avait suggérer avec le getItem a mon avis en utilisant l’itemstack des que l’armure prend des dégâts elle doit avoir une metadata ou un autre truc qui fait c’est plus exactement l’armure en questionmême si je trouve ca bizarre

                                          Bienvenu dans le monde du développement et salue notre dieu Murphy xD

                                          je viens d’essayer avec getItem() pas de probleme meme sinon ya isItemEqualIgnoreDurability qui sert a faire la meme chose

                                          “Imagination is more important than knowledge. For knowledge is limited to all we now know and understand, while imagination embraces the entire wo…

                                          P 1 réponse Dernière réponse Répondre Citer 0
                                          • P Hors-ligne
                                            PlagueZ @PlagueZ
                                            dernière édition par

                                            @PlagueZ a dit dans Armures ou items qui permettent de fly en survit :

                                            et si tu utilise ce que Robin avait suggérer avec le getItem a mon avis en utilisant l’itemstack des que l’armure prend des dégâts elle doit avoir une metadata ou un autre truc qui fait c’est plus exactement l’armure en questionmême si je trouve ca bizarre

                                            Bienvenu dans le monde du développement et salue notre dieu Murphy xD

                                            je viens d’essayer avec getItem() pas de probleme mème sinon ya isItemEqualIgnoreDurability qui sert a faire la même chose

                                            Et je viens de remarquer aussi que avec cette armure equipée le joueur a plus de dégâts de chute même si il vole pas du coup si c’était pas prévut va falloir trouver un pirouette pour ca x)

                                            “Imagination is more important than knowledge. For knowledge is limited to all we now know and understand, while imagination embraces the entire wo…

                                            1 réponse Dernière réponse Répondre Citer 0
                                            • 1
                                            • 2
                                            • 2 / 2
                                            • Premier message
                                              Dernier message
                                            Design by Woryk
                                            ContactMentions Légales

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB