MFF

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

    Chaise

    Planifier Épinglé Verrouillé Déplacé Résolu 1.8.x
    1.8
    19 Messages 8 Publieurs 4.1k Vues 1 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.
    • R Hors-ligne
      Realague
      dernière édition par

      J’ai fait comme dans le github avec le EntityBlockSittable et le block sittable mais quand je clic droit sur le block rien ne se passe.

      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

        Sans ton code on ne risque pas de pouvoir t’aider.

        1 réponse Dernière réponse Répondre Citer 0
        • FolganskyF Hors-ligne
          Folgansky Correcteurs
          dernière édition par

          Tu n’as pas oublié cette partie?

          [size=small/**]
          
           * To use, add this in your block: (change heightOfThePlayer with a float)
          %(#969896)[ *```
          ]
           * public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float hitX, float hitY, float hitZ)
           * {
           * return FFMTBlockSittable.sitPlayer(world, x, y, z, player, heightOfThePlayer);
           * }
          %(#969896)[ * 
          ```]
           **/
          
          1 réponse Dernière réponse Répondre Citer 0
          • R Hors-ligne
            Realague
            dernière édition par

            package com.mod_rpg.Block;
            
            import java.util.List;
            
            import com.mod_rpg.CoreMod.Main;
            import com.mod_rpg.Entity.EntityBlockSittable;
            
            import net.minecraft.block.Block;
            import net.minecraft.block.material.Material;
            import net.minecraft.entity.player.EntityPlayer;
            import net.minecraft.util.AxisAlignedBB;
            import net.minecraft.world.World;
            
            public class BlockSittable extends Block
            {
                public BlockSittable(Material material, String name)
                {
                    super(material);
                    this.setUnlocalizedName(name);
                    this.setCreativeTab(Main.TabsDeco);
                }
                public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float hitX, float hitY, float hitZ)
                {
                    return sitPlayer(world, x, y, z, player, 1.0F);
                }
            
                public static boolean sitPlayer(World world, int x, int y, int z, EntityPlayer player, float entityY)
                {
                    return sitPlayer(world, x, y, z, player, 0.5F, entityY, 0.5F);
                }
            
                public static boolean sitPlayer(World world, int x, int y, int z, EntityPlayer player, float entityX, float entityY, float entityZ)
                {
                    if(!world.isRemote)
                    {
                        List <entityblocksittable>listEMB = world.getEntitiesWithinAABB(EntityBlockSittable.class, AxisAlignedBB.fromBounds(x, y, z, x + 1.0D, y + 1.0D, z + 1.0D).expand(1.0D, 1.0D, 1.0D));
                        for(EntityBlockSittable entitytocheck : listEMB)
                        {
                            if((entitytocheck.blockPosX == x) && (entitytocheck.blockPosY == y) && (entitytocheck.blockPosZ == z))
                            {
                                entitytocheck.interact(player);
                                return true;
                            }
                        }
            
                        EntityBlockSittable entity = new EntityBlockSittable(world, player, x, y, z, x + entityX, y + entityY, z + entityZ);
                        world.spawnEntityInWorld(entity);
                        entity.interact(player);
                    }
                    return true;
                }
            }
            
            
            package com.mod_rpg.Entity;
            
            import net.minecraft.entity.Entity;
            import net.minecraft.entity.player.EntityPlayer;
            import net.minecraft.nbt.NBTTagCompound;
            import net.minecraft.world.World;
            
            public class EntityBlockSittable extends Entity
            {
                public int blockPosX;
                public int blockPosY;
                public int blockPosZ;
            
                public EntityBlockSittable(World world)
                {
                    super(world);
                    this.noClip = true;
                    this.preventEntitySpawning = true;
                    this.setSize(0.0F, 0.0F);
                }
            
                public EntityBlockSittable(World world, EntityPlayer entityplayer, int x, int y, int z, float entityX, float entityY, float entityZ)
                {
                    this(world);
                    this.blockPosX = x;
                    this.blockPosY = y;
                    this.blockPosZ = z;
                    this.setPosition(entityX, entityY, entityZ);
                }
            
                public boolean interact(EntityPlayer entityplayer)
                {
                    if(this.riddenByEntity != null)
                    {
                        return true;
                    }
            
                    if(!this.worldObj.isRemote)
                    {
                        entityplayer.mountEntity(this);
                    }
                    return true;
                }
            
                @Override
                public void onEntityUpdate()
                {
                    if(this.riddenByEntity == null || this.riddenByEntity.isDead)
                    {
                        this.setDead();
                    }
                    super.onEntityUpdate();
                }
            
                @Override
                public void readEntityFromNBT(NBTTagCompound compound)
                {
                    this.blockPosX = compound.getInteger("blockPosX");
                    this.blockPosY = compound.getInteger("blockPosY");
                    this.blockPosZ = compound.getInteger("blockPosZ");
                }
            
                @Override
                public void writeEntityToNBT(NBTTagCompound compound)
                {
                    compound.setInteger("blockPosX", this.blockPosX);
                    compound.setInteger("blockPosY", this.blockPosY);
                    compound.setInteger("blockPosZ", this.blockPosZ);
                }
            
                @Override
                protected void entityInit()
                {
            
                }
            }
            
            ```</entityblocksittable>
            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

              Je suis presque sûr que tu n’as pas enregistré l’entité.

              1 réponse Dernière réponse Répondre Citer 0
              • FolganskyF Hors-ligne
                Folgansky Correcteurs
                dernière édition par

                Au passage vous sauriez où trouver l’équivalent en 1.7 svp?

                Quand j’essaie d’adapter [font=Ubuntu, sans-serif le github de FFMTLibs précieusement renseigné de la part de SCAREX, la “seule” erreur vient de:]

                %(#000000)[[font=monospace]AxisAlignedBB]%(#666600)[[font=monospace].]%(#000000)[[font=monospace]fromBounds]%(#666600)[[font=monospace](]%(#000000)[[font=monospace]x]%(#666600)[[font=monospace],]%(#000000)[[font=monospace] y]%(#666600)[[font=monospace],]%(#000000)[[font=monospace] z]%(#666600)[[font=monospace],]%(#000000)[[font=monospace] x ]%(#666600)[[font=monospace]+] %(#646464)[[font=monospace]1.0D]%(#666600)[[font=monospace],]%(#000000)[[font=monospace] y ]%(#666600)[[font=monospace]+] %(#646464)[[font=monospace]1.0D]%(#666600)[[font=monospace],]%(#000000)[[font=monospace] z ]%(#666600)[[font=monospace]+] %(#646464)[[font=monospace]1.0D]%(#666600)[[font=monospace]).]%(#000000)[[font=monospace]expand]%(#666600)[[font=monospace](]%(#646464)[[font=monospace]1.0D]%(#666600)[[font=monospace],] %(#646464)[[font=monospace]1.0D]%(#666600)[[font=monospace],] %(#646464)[[font=monospace]1.0D]%(#666600)[[font=monospace]));]
                
                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

                  https://github.com/FFMT/FFMT-libs/tree/17
                  D’ailleurs je viens de capter qu’il y a un problème dans le code, le expand n’a rien à faire là.

                  1 réponse Dernière réponse Répondre Citer 1
                  • FolganskyF Hors-ligne
                    Folgansky Correcteurs
                    dernière édition par

                    ça marche du tonnerre.
                    Merci Robin.

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

                        EntityRegistry.registerModEntity(EntityBlockSittable.class, "entityblocksittable", 100, this, 0, 10, true);
                      
                      1 réponse Dernière réponse Répondre Citer 0
                      • EmotionFoxE Hors-ligne
                        EmotionFox
                        dernière édition par

                        Le problème dans ce code c’est le :

                        public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float hitX, float hitY, float hitZ)
                        {
                        return sitPlayer(world, x, y, z, player, 1.0F);
                        }
                        

                        Qui en 1.8 est supposé être comme ça :

                        @Override
                        public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumFacing side, float hitX, float hitY, float hitZ)
                        {
                        return sitPlayer(world, pos.getX(), pos.getY(), pos.getZ(), player, 1.0F);
                        }
                        

                        Toujours penser à vérifier les fonctions “officiels” avec le petit @Override ça évite ce genre d’erreur.

                        Ps: Moi j’aurais voulue savoir comment descendre l’entité qui remonte à chaque fois au bout d’une seconde environ 😕

                        1 réponse Dernière réponse Répondre Citer 0
                        • FolganskyF Hors-ligne
                          Folgansky Correcteurs
                          dernière édition par

                          @‘EmotionFox’:

                          Le problème dans ce code c’est le :

                          public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float hitX, float hitY, float hitZ)
                          {
                             return sitPlayer(world, x, y, z, player, 1.0F);
                          }
                          

                          Qui en 1.8 est supposé être comme ça :

                          @Override
                          public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumFacing side, float hitX, float hitY, float hitZ)
                          {
                             return sitPlayer(world, pos.getX(), pos.getY(), pos.getZ(), player, 1.0F);
                          }
                          

                          Toujours penser à vérifier les fonctions “officiels” avec le petit @Override ça évite ce genre d’erreur.

                          Ps: Moi j’aurais voulue savoir comment descendre l’entité qui remonte à chaque fois au bout d’une seconde environ 😕

                          Moi j’ai abaissé la position du joueur (edit: en 1.7, je reprécise)

                          public static boolean sitPlayer(World world, int x, int y, int z, EntityPlayer player, float entityY)
                          {
                          return sitPlayer(world, x, y, z, player, 0.5F, entityY - 0.5F, 0.5F);
                          }
                          

                          Par contre j’ai un bloc avec des bordures réduites de moitié (sinon le joueur est considéré dans le bloc et remonte)

                          M’enfin la position de l’entité doit bien pouvoir être réglée. A voir si l’entité a le même soucis de position réactualisée pour ne pas être dans le bloc.
                          A toi de faire mumuse avec ces variables. (Je suis pas de grande utilité mais chui qu’un bidouilleur de codes pour le moment).

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

                            je crois qu’il y a un truc avec le noclip ou alors je me trompe.

                            Mes dernière chaises date de la bêta 1.2.5 donc bon…

                            Si je t'ai filé un coup de main n'oublie pas le + / -
                            Par contre évite les demandes d'aides en MP, tu sera sympa'

                            La JavaDoc c'est comme le PQ, ça sert à ce démerder tous seul. -Victor Hugo- 2017

                            Une superbe API pour animer vos super modèles CraftStudio dans Minecraft !

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

                              Arf justement TouToune j’ai baissé cette valeur et beaucoup d’autre (en réalité j’ai déjà transformé toutes les valeurs en float et je l’ai est toutes abaissé en ce qui concerne les valeurs d’Y) mais le problème que l’entité ce réajuste persiste :C Et en ce qui concerne le noClip je vois pas trop ce que je pourrais changer

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

                                dans le constructeur de l’entité pour sit, this.noClip = true;

                                Si je t'ai filé un coup de main n'oublie pas le + / -
                                Par contre évite les demandes d'aides en MP, tu sera sympa'

                                La JavaDoc c'est comme le PQ, ça sert à ce démerder tous seul. -Victor Hugo- 2017

                                Une superbe API pour animer vos super modèles CraftStudio dans Minecraft !

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

                                  J’aimerais que la hitbox du bloc que j’ai modifier soit toujours placer en fonction de la position du joueur quand il place le bloc pour que la hitbox suive le model custom.

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

                                    passe par les axis ou direction.

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

                                    MINECRAFT FORGE FRANCE © 2024

                                    Powered by NodeBB