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.
    • DailyCraftD Hors-ligne
      DailyCraft
      dernière édition par DailyCraft

      alors l’id n’existe pas

      J’ai jamais fait de dimensions mais tu peut pas faire Dimensions.MA_DIMENSION.getID() ou un truc comme ça

      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

        @DailyCraft J’ai fais ce que tu as dit : player.changeDimension(DimensionInit.SAO.getId()); et j’ai encore un crash /:
        Merci de l’aides que tu m’apportes!
        crash report :

        [22:35:53] [Server thread/INFO] [FML]: Loading dimension 25 (New World) (net.minecraft.server.integrated.IntegratedServer@4debfc4f)
        [22:35:57] [Server thread/ERROR] [minecraft/MinecraftServer]: Encountered an unexpected exception
        net.minecraft.util.ReportedException: Ticking player
        	at net.minecraft.network.NetworkSystem.networkTick(NetworkSystem.java:212) ~[NetworkSystem.class:?]
        	at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:865) ~[MinecraftServer.class:?]
        	at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:743) ~[MinecraftServer.class:?]
        	at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:192) ~[IntegratedServer.class:?]
        	at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:592) [MinecraftServer.class:?]
        	at java.lang.Thread.run(Unknown Source) [?:1.8.0_241]
        Caused by: java.lang.NullPointerException
        	at net.minecraft.world.Teleporter.placeInExistingPortal(Teleporter.java:136) ~[Teleporter.class:?]
        	at net.minecraft.world.Teleporter.placeInPortal(Teleporter.java:39) ~[Teleporter.class:?]
        	at net.minecraft.world.Teleporter.placeEntity(Teleporter.java:443) ~[Teleporter.class:?]
        	at net.minecraft.server.management.PlayerList.transferEntityToWorld(PlayerList.java:762) ~[PlayerList.class:?]
        	at net.minecraft.server.management.PlayerList.transferPlayerToDimension(PlayerList.java:662) ~[PlayerList.class:?]
        	at net.minecraft.entity.player.EntityPlayerMP.changeDimension(EntityPlayerMP.java:745) ~[EntityPlayerMP.class:?]
        	at net.minecraft.entity.Entity.changeDimension(Entity.java:2911) ~[Entity.class:?]
        	at blueziks.sao.objects.tools.NerveGearSAO.onArmorTick(NerveGearSAO.java:46) ~[NerveGearSAO.class:?]
        	at net.minecraft.entity.player.InventoryPlayer.decrementAnimations(InventoryPlayer.java:413) ~[InventoryPlayer.class:?]
        	at net.minecraft.entity.player.EntityPlayer.onLivingUpdate(EntityPlayer.java:575) ~[EntityPlayer.class:?]
        	at net.minecraft.entity.EntityLivingBase.onUpdate(EntityLivingBase.java:2405) ~[EntityLivingBase.class:?]
        	at net.minecraft.entity.player.EntityPlayer.onUpdate(EntityPlayer.java:272) ~[EntityPlayer.class:?]
        	at net.minecraft.entity.player.EntityPlayerMP.onUpdateEntity(EntityPlayerMP.java:423) ~[EntityPlayerMP.class:?]
        	at net.minecraft.network.NetHandlerPlayServer.update(NetHandlerPlayServer.java:185) ~[NetHandlerPlayServer.class:?]
        	at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher$1.update(NetworkDispatcher.java:212) ~[NetworkDispatcher$1.class:?]
        	at net.minecraft.network.NetworkManager.processReceivedPackets(NetworkManager.java:307) ~[NetworkManager.class:?]
        	at net.minecraft.network.NetworkSystem.networkTick(NetworkSystem.java:197) ~[NetworkSystem.class:?]
        	... 5 more
        [22:35:57] [Server thread/ERROR] [minecraft/MinecraftServer]: This crash report has been saved to: C:\Users\Mathys\Desktop\Logiciels\Mod Minecraft\SwordArtOffline\run\.\crash-reports\crash-2020-04-28_22.35.57-server.txt
        [22:35:57] [Server thread/INFO] [minecraft/MinecraftServer]: Stopping server
        [22:35:57] [Server thread/INFO] [minecraft/MinecraftServer]: Saving players
        [22:35:57] [Client thread/INFO] [STDOUT]: [net.minecraft.init.Bootstrap:printToSYSOUT:629]: ---- Minecraft Crash Report ----
        // You're mean.
        
        Time: 4/28/20 10:35 PM
        Description: Ticking player
        
        java.lang.NullPointerException: Ticking player
        	at net.minecraft.world.Teleporter.placeInExistingPortal(Teleporter.java:136)
        	at net.minecraft.world.Teleporter.placeInPortal(Teleporter.java:39)
        	at net.minecraft.world.Teleporter.placeEntity(Teleporter.java:443)
        	at net.minecraft.server.management.PlayerList.transferEntityToWorld(PlayerList.java:762)
        	at net.minecraft.server.management.PlayerList.transferPlayerToDimension(PlayerList.java:662)
        	at net.minecraft.entity.player.EntityPlayerMP.changeDimension(EntityPlayerMP.java:745)
        	at net.minecraft.entity.Entity.changeDimension(Entity.java:2911)
        	at blueziks.sao.objects.tools.NerveGearSAO.onArmorTick(NerveGearSAO.java:46)
        	at net.minecraft.entity.player.InventoryPlayer.decrementAnimations(InventoryPlayer.java:413)
        	at net.minecraft.entity.player.EntityPlayer.onLivingUpdate(EntityPlayer.java:575)
        	at net.minecraft.entity.EntityLivingBase.onUpdate(EntityLivingBase.java:2405)
        	at net.minecraft.entity.player.EntityPlayer.onUpdate(EntityPlayer.java:272)
        	at net.minecraft.entity.player.EntityPlayerMP.onUpdateEntity(EntityPlayerMP.java:423)
        	at net.minecraft.network.NetHandlerPlayServer.update(NetHandlerPlayServer.java:185)
        	at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher$1.update(NetworkDispatcher.java:212)
        	at net.minecraft.network.NetworkManager.processReceivedPackets(NetworkManager.java:307)
        	at net.minecraft.network.NetworkSystem.networkTick(NetworkSystem.java:197)
        	at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:865)
        	at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:743)
        	at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:192)
        	at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:592)
        	at java.lang.Thread.run(Unknown Source)
        
        
        A detailed walkthrough of the error, its code path and all known details is as follows:
        ---------------------------------------------------------------------------------------
        
        -- Head --
        Thread: Client thread
        Stacktrace:
        	at net.minecraft.world.Teleporter.placeInExistingPortal(Teleporter.java:136)
        	at net.minecraft.world.Teleporter.placeInPortal(Teleporter.java:39)
        	at net.minecraft.world.Teleporter.placeEntity(Teleporter.java:443)
        	at net.minecraft.server.management.PlayerList.transferEntityToWorld(PlayerList.java:762)
        	at net.minecraft.server.management.PlayerList.transferPlayerToDimension(PlayerList.java:662)
        	at net.minecraft.entity.player.EntityPlayerMP.changeDimension(EntityPlayerMP.java:745)
        	at net.minecraft.entity.Entity.changeDimension(Entity.java:2911)
        	at blueziks.sao.objects.tools.NerveGearSAO.onArmorTick(NerveGearSAO.java:46)
        	at net.minecraft.entity.player.InventoryPlayer.decrementAnimations(InventoryPlayer.java:413)
        	at net.minecraft.entity.player.EntityPlayer.onLivingUpdate(EntityPlayer.java:575)
        	at net.minecraft.entity.EntityLivingBase.onUpdate(EntityLivingBase.java:2405)
        	at net.minecraft.entity.player.EntityPlayer.onUpdate(EntityPlayer.java:272)
        
        -- Player being ticked --
        Details:
        	Entity Type: null (net.minecraft.entity.player.EntityPlayerMP)
        	Entity ID: 2423
        	Entity Name: Player813
        	Entity's Exact location: 254.00, 72.00, 250.00
        	Entity's Block location: World: (254,72,250), Chunk: (at 14,4,10 in 15,15; contains blocks 240,0,240 to 255,255,255), Region: (0,0; contains chunks 0,0 to 31,31, blocks 0,0,0 to 511,255,511)
        	Entity's Momentum: 0.00, -0.08, 0.00
        	Entity's Passengers: []
        	Entity's Vehicle: ~~ERROR~~ NullPointerException: null
        Stacktrace:
        	at net.minecraft.entity.player.EntityPlayerMP.onUpdateEntity(EntityPlayerMP.java:423)
        	at net.minecraft.network.NetHandlerPlayServer.update(NetHandlerPlayServer.java:185)
        	at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher$1.update(NetworkDispatcher.java:212)
        	at net.minecraft.network.NetworkManager.processReceivedPackets(NetworkManager.java:307)
        
        -- Ticking connection --
        Details:
        	Connection: net.minecraft.network.NetworkManager@6b4901b
        Stacktrace:
        	at net.minecraft.network.NetworkSystem.networkTick(NetworkSystem.java:197)
        	at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:865)
        	at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:743)
        	at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:192)
        	at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:592)
        	at java.lang.Thread.run(Unknown Source)
        
        -- System Details --
        Details:
        	Minecraft Version: 1.12.2
        	Operating System: Windows 10 (amd64) version 10.0
        	Java Version: 1.8.0_241, Oracle Corporation
        	Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
        	Memory: 568573256 bytes (542 MB) / 1037959168 bytes (989 MB) up to 1037959168 bytes (989 MB)
        	JVM Flags: 3 total; -Xincgc -Xmx1024M -Xms1024M
        	IntCache: cache: 0, tcache: 0, allocated: 1, tallocated: 12
        	FML: MCP 9.42 Powered by Forge 14.23.5.2847 5 mods loaded, 5 mods active
        	States: 'U' = Unloaded 'L' = Loaded 'C' = Constructed 'H' = Pre-initialized 'I' = Initialized 'J' = Post-initialized 'A' = Available 'D' = Disabled 'E' = Errored
        
        	| State  | ID        | Version      | Source                           | Signature |
        	|:------ |:--------- |:------------ |:-------------------------------- |:--------- |
        	| LCHIJA | minecraft | 1.12.2       | minecraft.jar                    | None      |
        	| LCHIJA | mcp       | 9.42         | minecraft.jar                    | None      |
        	| LCHIJA | FML       | 8.0.99.99    | forgeSrc-1.12.2-14.23.5.2847.jar | None      |
        	| LCHIJA | forge     | 14.23.5.2847 | forgeSrc-1.12.2-14.23.5.2847.jar | None      |
        	| LCHIJA | sao       | Alpha        | bin                              | None      |
        
        	Loaded coremods (and transformers): 
        	GL info: ~~ERROR~~ RuntimeException: No OpenGL context found in the current thread.
        	Profiler Position: N/A (disabled)
        	Player Count: 1 / 8; [EntityPlayerMP['Player813'/2423, l='New World', x=254.00, y=72.00, z=250.00]]
        	Type: Integrated Server (map_client.txt)
        	Is Modded: Definitely; Client brand changed to 'fml,forge'
        [22:35:57] [Client thread/INFO] [STDOUT]: [net.minecraft.init.Bootstrap:printToSYSOUT:629]: #@!@# Game crashed! Crash report saved to: #@!@# .\crash-reports\crash-2020-04-28_22.35.57-server.txt
        [22:35:57] [Client thread/INFO] [FML]: Waiting for the server to terminate/save.
        [22:35:57] [Server thread/INFO] [minecraft/MinecraftServer]: Saving worlds
        [22:35:57] [Server thread/INFO] [minecraft/MinecraftServer]: Saving chunks for level 'New World'/overworld
        [22:35:58] [Server thread/INFO] [minecraft/MinecraftServer]: Saving chunks for level 'New World'/SAO
        [22:35:59] [Server thread/INFO] [FML]: Unloading dimension 0
        [22:35:59] [Server thread/INFO] [FML]: Unloading dimension 25
        [22:35:59] [Server thread/INFO] [FML]: Applying holder lookups
        [22:35:59] [Server thread/INFO] [FML]: Holder lookups applied
        [22:35:59] [Server thread/INFO] [FML]: The state engine was in incorrect state SERVER_STOPPING and forced into state SERVER_STOPPED. Errors may have been discarded.
        [22:35:59] [Client thread/INFO] [FML]: Server terminated.
        [22:35:59] [Client Shutdown Thread/INFO] [minecraft/MinecraftServer]: Stopping server
        AL lib: (EE) alc_cleanup: 1 device not closed
        Java HotSpot(TM) 64-Bit Server VM warning: Using incremental CMS is deprecated and will likely be removed in a future release
        
        1 réponse Dernière réponse Répondre Citer 0
        • DailyCraftD Hors-ligne
          DailyCraft
          dernière édition par

          net.minecraft.world.Teleporter.placeInExistingPortal(Teleporter.java:136) ok en fait la je crois que il cherche un portail dans la dimension mais il en trouve pas donc je pense que tu te trompe juste de méthode à utiliser

          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
          • En0ri4nE Hors-ligne
            En0ri4n
            dernière édition par

            faut pas utiliser ça parce que c’est assez spécifique à minecraft, fais juste player.dimension = 25

            Le java c'est comme une boîte de chocolat, on sait jamais sur quoi on va tomber !

            BlueZikSB 1 réponse Dernière réponse Répondre Citer 1
            • 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