ItemStack



  • Bonjour/bonsoir

    Je voudrait savoir comment faire pour récupérer un argument d'une commande en Itemstack ?

    Merci d'avance 🙂



  • Si tu passes par le nom de l'item, il faudra faire un "Item.getItemFromName(argumentDeLaCommande);" ou si tu passes par l'id "Item.getItemById(Integer.valueOf(argumentDeLid));". Ensuite tu créées un nouvel ItemStack avec l'item, la taille et la metadata passés en arguments et convertis en chiffres avec "Integer.valueOf(argument);".

    PS: J'ai donné les noms des fonctions de mémoire mais normalement c'est ça.



  • j'ai fait sa

    World world = sender.getEntityWorld();
    
    ItemStack itemstack = new ItemStack(Item.getItemById(Integer.valueOf(arg[4])), Integer.valueOf(1));
    
           if (!world.isRemote) {
            world.spawnEntityInWorld(new EntityVehicle(world, arg[1] + 0.5D, arg[2] + 2.5D, arg[3] + 0.5D, sender, this.type, getData(itemstack, world)));
            }
    

    mais sa mais ça

    The method getData(ItemStack, World) is undefined for the type spawn
    
      public DriveableData getData(ItemStack itemstack, World world)
      {
        return new DriveableData(getTagCompound(itemstack, world));
      }
    

    (oui je modifie flan's mod)



  • La fonction est bien dans la même classe que l'endroit où tu l'appele ?

    PS : Tu peux remplacer "Integer.valueOf(1)" par "1".