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

      Tu fais spawn une entity et tu fais asseoir le joueur dessus. Bien évidemment l entity doit être immobilile et tu dois set ses positions a chaque tick pour qu elle ne bouge pas pareil pour sa rotatoin, enleve lui son ia et fais en sorte qu elle ne puisse pas être poussée et que quand le joueur se lève de la chaise, tu la setdead.

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

        Ou tu peux tout simplement aller voir le github de FFMTLibs où il y a une classe exprès pour çà.

        Site web contenant mes scripts : http://SCAREXgaming.github.io

        Pas de demandes de support par MP ni par skype SVP.
        Je n'accepte sur skype que l…

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