MFF

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

    Quand un item d'armure est équipé, il téléporte vers une dimension

    Planifier Épinglé Verrouillé Déplacé Résolu 1.12.x
    1.12.2
    23 Messages 4 Publieurs 1.5k Vues 4 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.
    • BlueZikSB Hors-ligne
      BlueZikS @DailyCraft
      dernière édition par

      @DailyCraft Merci! Je devrais créer un bloc portail ou alors essayer une autre méthode même si j’en vois pas personnellement malgré beaucoup de recherches

      1 réponse Dernière réponse Répondre Citer 0
      • BlueZikSB Hors-ligne
        BlueZikS @En0ri4n
        dernière édition par

        @Eno_gamer10 a dit dans Quand un item d'armure est équipé, il téléporte vers une dimension :

        player.dimension = 25

        Merci de l’aide, je viens de faire le test et quand j’équipe l’armure il ne se passe rien 😕 néanmoins dans la console il se passe tout de même quelque chose :
        [22:43:19] [Server thread/INFO] [FML]: Loading dimension 25 (New World) (net.minecraft.server.integrated.IntegratedServer@7ab11cdb)

        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

          Effectivement après quelque recherche player.changeDimension s’attend à la présence d’un portail.

          https://www.minecraftforge.net/forum/topic/60500-112-how-to-change-dimensions-without-creating-a-portal/?tab=comments#comment-282199

          Il faut utiliser la fonction transferPlayerToDimension de la classe PlayerList.

          BlueZikSB 2 réponses Dernière réponse Répondre Citer 2
          • BlueZikSB Hors-ligne
            BlueZikS @robin4002
            dernière édition par BlueZikS

            @robin4002 Merci de ta réponse, si j’ai bien compris je dois créer un bloc téléporteur puis utiliser cette fonction?
            EDIT : Ah non enfaite j’ai peut être pas besoin du bloc téléporteur

            1 réponse Dernière réponse Répondre Citer 1
            • BlueZikSB Hors-ligne
              BlueZikS @robin4002
              dernière édition par

              @robin4002 Malgré de nombreux essais je reste toujours bloqué je ne sais pas quoi faire /:
              Je suis parvenu a ça : (0 90 0 sont les cordonnées ou le personnage est tp mais j’aimerais qu’ils sois tp au spawn point)
              j’aimerais également que l’item se casse des que le joueur est tp car je crois qu’il est tp à l’infini

              	@Override
              	public void onArmorTick(World worldIn, EntityPlayer playerIn, ItemStack itemStack) 
              	{	
              		if(playerIn.inventory.armorItemInSlot(3).getItem() == ItemInit.NERVE_GEAR_SAO)
              		{
              			if (!worldIn.isRemote) 
              			{
              				((EntityLivingBase)playerIn).addPotionEffect(new PotionEffect(MobEffects.HEALTH_BOOST, 100, 2));
              				Teleport.teleportToDimension((EntityPlayer)playerIn, 25, 0, 90, 0);
              				playerIn.setPositionAndUpdate(x, y, z);
              				
              			}
              		}
              	}
              
              1 réponse Dernière réponse Répondre Citer 0
              • DailyCraftD Hors-ligne
                DailyCraft
                dernière édition par DailyCraft

                Non, il est pas tp à l’infini car tu vérifie si avant de le tp, il n’est pas déjà dans la dimension

                PS : que tu as enlever, donc j’ai rien dit

                Mes créations :

                Mod en cours de développement : Personal Robot (1.15.2)

                Datapacks : DailyCraft's Craft (beta)

                Je suis un membre apprécié et joueur, j'ai déjà obtenu 2 point(s) de réputation.

                BlueZikSB 1 réponse Dernière réponse Répondre Citer 1
                • BlueZikSB Hors-ligne
                  BlueZikS @DailyCraft
                  dernière édition par BlueZikS

                  @DailyCraft Ouais exact, je viens de le remettre d’ailleurs, j’en suis à ça :

                  	@Override
                  	public void onArmorTick(World worldIn, EntityPlayer playerIn, ItemStack itemStack) 
                  	{	
                  		if(playerIn.inventory.armorItemInSlot(3).getItem() == ItemInit.NERVE_GEAR_SAO)
                  		{
                  			if (!worldIn.isRemote) 
                  			{
                  				if(playerIn.dimension != 25) 
                  				{	
                  					((EntityLivingBase)playerIn).addPotionEffect(new PotionEffect(MobEffects.HEALTH_BOOST, 100, 2));
                  					Teleport.teleportToDimension((EntityPlayer)playerIn, 25, 0, 90, 0);
                  					playerIn.setPositionAndUpdate(x, y, z);
                  				}
                  			}
                  		}
                  	}
                  }
                  

                  Je suis bel et bien téléporté dans la dimension sans problème! Il me reste juste 2 problèmes mineurs : j’aimerais que l’on soit tp au spawn point de la dimension et non en 0 ; 0 et j’aimerais si cela est possible que quand j’arrives dans la dimension, le casque soit détruit donc je poursuis mes recherches, Merci beaucoup de l’aide que vous m’apportez!

                  1 réponse Dernière réponse Répondre Citer 0
                  • BlueZikSB Hors-ligne
                    BlueZikS
                    dernière édition par robin4002

                    Update : Je viens de faire ça :

                    	@Override
                    	public void onArmorTick(World worldIn, EntityPlayer playerIn, ItemStack itemStack) 
                    	{	
                    		if(playerIn.inventory.armorItemInSlot(3).getItem() == ItemInit.NERVE_GEAR_SAO)
                    		{
                    			float x = worldIn.getSpawnPoint().getX();
                    			float y = worldIn.getSpawnPoint().getY();
                    			float z = worldIn.getSpawnPoint().getZ();
                    			if (!worldIn.isRemote) 
                    			{
                    				if(playerIn.dimension != 25) 
                    				{	
                    					((EntityLivingBase)playerIn).addPotionEffect(new PotionEffect(MobEffects.HEALTH_BOOST, 100, 2));
                    					Teleport.teleportToDimension((EntityPlayer)playerIn, 25, x, y, z);
                    					playerIn.setPositionAndUpdate(x, y, z);
                    				}
                    			}
                    		}
                    	}
                    }
                    

                    J’ai essayé avec l’overworld pour voir, le spawn point de ma map était : -95 70 221 mais en équipant le casque j’arrive assez proche mais pas aux coordonnées identiques : -100 64 224 que faire svpl?

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

                      C’est pas playerIn.getBedSpawnLocation() ?

                      PS : oui mais avec bukkit 😕

                      Mes créations :

                      Mod en cours de développement : Personal Robot (1.15.2)

                      Datapacks : DailyCraft's Craft (beta)

                      Je suis un membre apprécié et joueur, j'ai déjà obtenu 2 point(s) de réputation.

                      BlueZikSB 1 réponse Dernière réponse Répondre Citer 1
                      • BlueZikSB Hors-ligne
                        BlueZikS @DailyCraft
                        dernière édition par

                        Ce message a été supprimé !
                        1 réponse Dernière réponse Répondre Citer 0
                        • BlueZikSB Hors-ligne
                          BlueZikS
                          dernière édition par

                          @BlueZikSè a dit dans Quand un item d'armure est équipé, il téléporte vers une dimension :

                          @DailyCraft j’ai fais .getSpawnPoint() c’est incorrect? j’ai juste le problème que je suis décalé de quelques bloc, c’est peu embêtant car le problème était que je suffoquais en arrivant mais j’ai ajouté +10 bloc au Y et ça semble fonctionner, me reste juste 1 seul problème
                          @DailyCraft j’ai fais .getSpawnPoint() c’est incorrect? j’ai juste le problème que je suis décalé de quelques bloc, c’est peu embêtant car le problème était que je suffoquais en arrivant mais j’ai ajouté +10 bloc au Y et ça semble fonctionner, me reste juste 1 seul problème qui est de détruire le casque lorsque l’on est tp dans la dimension

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

                            C’est bon j’ai enfin trouvé! 😄 Merci à tous pour vôtre aide!

                            Voici les deux fonctions qui m’ont aidés a résoudre le problème : la première qui retire l’item présent au slot 39 (le casque) et la deuxième qui me téléporte dans la dimension que j’ai mis (25 en l’occurence)
                            ((EntityPlayer) playerIn).inventory.setInventorySlotContents(39, ItemStack.EMPTY);
                            Teleport.teleportToDimension((EntityPlayer)playerIn, 25, x, y, z);

                            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