Dessolé pour le retard weekend de décembre chargé avec le père noël bon voici mes classe scarex :
mon ExtendedEntityPropCaracteristique :
package joueur;
import interfaces.gui.metiers.Guilevelmetier;
import cpw.mods.fml.common.network.simpleimpl.IMessage;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import mods.TutoMod;
import mods.common.Commonproxy;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.ChatComponentTranslation;
import net.minecraft.world.World;
import net.minecraftforge.common.IExtendedEntityProperties;
public class ExtendedEntityPropCaracteristique implements IExtendedEntityProperties
{
public final static String EXT_PROP_NAME = "Caracteristiquejoueur";
private final EntityPlayer player;
public long cooldown;
public long kamas;
public long classe;
public long levelbucheron;
public long xpalchimiste, xpbucheron , xpchasseur , xpmineur , xppaysan , xppecheur , xpbijoutier , xpboulanger , xpbricoleur , xpforgeurdedagues , xpforgeurdepees ,
xpforgeurdehaches , xpforgeurdemarteaux , xpforgeurdepelles , xppoissonnier , xpcordonnier , xpforgeurdeboucliers , xpsculpteurdarcs , xpsculpteurdebaguettes ,
xpsculpteurdebatons , xptailleur , xpcordomage , xpcostumage , xpjoaillomage , xpforgemagededagues , xpforgemagedepees , xpforgemagedhaches , xpforgemagedemarteaux ,
xpforgemagedepelles , xpsculptemagedarcs , xpsculptemagedebaguettes , xpsculptemagedebaton;
public ExtendedEntityPropCaracteristique(EntityPlayer player)
{
this.player = player;
this.cooldown = 0;
this.kamas = 0;
this.classe =0;
this.levelbucheron = 0;
this.xpalchimiste = 0;
this.xpbucheron = 0;
this.xpchasseur = 0;
this.xpmineur = 0;
this.xppaysan = 0;
this.xppecheur = 0;
this.xpbijoutier = 0;
this.xpboulanger = 0;
this.xpbricoleur = 0;
this.xpforgeurdedagues = 0;
this.xpforgeurdepees = 0;
this.xpforgeurdehaches = 0;
this.xpforgeurdemarteaux = 0;
this.xpforgeurdepelles = 0;
this.xppoissonnier = 0;
this.xpcordonnier = 0;
this.xpforgeurdeboucliers = 0;
this.xpsculpteurdarcs = 0;
this.xpsculpteurdebaguettes = 0;
this.xpsculpteurdebatons = 0;
this.xptailleur = 0;
this.xpcordomage = 0;
this.xpcostumage = 0;
this.xpjoaillomage = 0;
this.xpforgemagededagues = 0;
this.xpforgemagedepees = 0;
this.xpforgemagedhaches = 0;
this.xpforgemagedemarteaux = 0;
this.xpforgemagedepelles = 0;
this.xpsculptemagedarcs = 0;
this.xpsculptemagedebaguettes = 0;
this.xpsculptemagedebaton = 0;
}
public static final void register(EntityPlayer player)
{
player.registerExtendedProperties(ExtendedEntityPropCaracteristique.EXT_PROP_NAME,
new ExtendedEntityPropCaracteristique(player));
}
public static final ExtendedEntityPropCaracteristique get(EntityPlayer player)
{
return (ExtendedEntityPropCaracteristique) player.getExtendedProperties(EXT_PROP_NAME);
}
@Override
public void saveNBTData(NBTTagCompound compound)
{
NBTTagCompound properties = new NBTTagCompound();
properties.setLong("Cooldown", this.cooldown);
properties.setLong("Kamas", this.kamas);
properties.setLong("Classe", this.classe);
properties.setLong("Xpalchimiste", this.xpalchimiste);
properties.setLong("Xpbucheron", this.xpbucheron);
properties.setLong("Xpchasseur", this.xpchasseur);
properties.setLong("Xpmineur", this.xpmineur);
properties.setLong("Xppaysan", this.xppaysan);
properties.setLong("Xppecheur", this.xppecheur);
properties.setLong("Xpbijoutier", this.xpbijoutier);
properties.setLong("Xpboulanger", this.xpboulanger);
properties.setLong("Xpbricoleur", this.xpbricoleur);
properties.setLong("Xpforgeurdedagues", this.xpforgeurdedagues);
properties.setLong("Xpforgeurdepees", this.xpforgeurdepees);
properties.setLong("Xpforgeurdehaches", this.xpforgeurdehaches);
properties.setLong("Xpforgeurdemarteaux", this.xpforgeurdemarteaux);
properties.setLong("Xpforgeurdepelles", this.xpforgeurdepelles);
properties.setLong("Xppoissonnier", this.xppoissonnier);
properties.setLong("Xpcordonnier", this.xpcordonnier);
properties.setLong("Xpforgeurdeboucliers", this.xpforgeurdeboucliers);
properties.setLong("Xpsculpteurdarcs", this.xpsculpteurdarcs);
properties.setLong("Xpsculpteurdebaguettes", this.xpsculpteurdebaguettes);
properties.setLong("Xpsculpteurdebatons", this.xpsculpteurdebatons);
properties.setLong("Xptailleur", this.xptailleur);
properties.setLong("Xpcordomage", this.xpcordomage);
properties.setLong("Xpcostumage", this.xpcostumage);
properties.setLong("Xpjoaillomage", this.xpjoaillomage);
properties.setLong("Xpforgemagededagues", this.xpforgemagededagues);
properties.setLong("Xpforgemagedepees", this.xpforgemagedepees);
properties.setLong("Xpforgemagedhaches", this.xpforgemagedhaches);
properties.setLong("Xpforgemagedemarteaux", this.xpforgemagedemarteaux);
properties.setLong("Xpforgemagedepelles", this.xpforgemagedepelles);
properties.setLong("Xpsculptemagedarcs", this.xpsculptemagedarcs);
properties.setLong("Xpsculptemagedebaguettes", this.xpsculptemagedebaguettes);
properties.setLong("Xpsculptemagedebaton", this.xpsculptemagedebaton);
properties.setLong("Levelbucheron", this.levelbucheron);
compound.setTag(EXT_PROP_NAME, properties);
}
@Override
public void loadNBTData(NBTTagCompound compound)
{
NBTTagCompound properties = (NBTTagCompound) compound.getTag(EXT_PROP_NAME);
this.cooldown = properties.getLong("Cooldown");
this.kamas = properties.getLong("Kamas");
this.classe = properties.getLong("Classe");
this.xpalchimiste = properties.getLong("Xpalchimiste");
this.xpbucheron = properties.getLong("Xpbucheron");
this.xpmineur = properties.getLong("Xpmineur");
this.xppaysan = properties.getLong("Xppaysan");
this.xppecheur = properties.getLong("Xppecheur");
this.xpbijoutier = properties.getLong("Xpbijoutier");
this.xpboulanger = properties.getLong("Xpboulanger");
this.xpbricoleur = properties.getLong("Xpbricoleur");
this.xpforgeurdedagues = properties.getLong("Xpforgeurdedagues");
this.xpforgeurdepees = properties.getLong("Xpforgeurdepees");
this.xpforgeurdehaches = properties.getLong("Xpforgeurdehaches");
this.xpforgemagedemarteaux = properties.getLong("Xpforgemagedemarteaux");
this.xpforgeurdepelles = properties.getLong("Xpforgeurdepelles");
this.xppoissonnier = properties.getLong("Xppoissonnier");
this.xpcordonnier = properties.getLong("Xpcordonnier");
this.xpforgeurdeboucliers = properties.getLong("Xpforgeurdeboucliers");
this.xpsculpteurdarcs = properties.getLong("Xpsculpteurdarcs");
this.xpsculpteurdebaguettes = properties.getLong("Xpsculpteurdebaguettes");
this.xpsculpteurdebatons = properties.getLong("Xpsculpteurdebatons");
this.xptailleur = properties.getLong("Xptailleur");
this.xpcordomage = properties.getLong("Xpcordomage");
this.xpcostumage = properties.getLong("Xpcostumage");
this.xpjoaillomage = properties.getLong("Xpjoaillomage");
this.xpforgemagededagues = properties.getLong("Xpforgemagededagues");
this.xpforgemagedepees = properties.getLong("Xpforgemagedepees");
this.xpforgemagedhaches = properties.getLong("Xpforgemagedhaches");
this.xpforgemagedemarteaux = properties.getLong("Xpforgemagedemarteaux");
this.xpforgemagedepelles = properties.getLong("Xpforgemagedepelles");
this.xpsculptemagedarcs = properties.getLong("Xpsculptemagedarcs");
this.xpsculptemagedebaguettes = properties.getLong("Xpsculptemagedebaguettes");
this.xpsculptemagedebaton = properties.getLong("Xpsculptemagedebaton");
this.levelbucheron = properties.getLong("Levelbucheron");
}
@Override
public void init(Entity entity, World world)
{
// TODO Auto-generated method stub
}
public final void sync()
{
Packetcaracteristique packetcaracteristique = new Packetcaracteristique(this.cooldown , this.kamas, this.classe, this.xpalchimiste, this.xpbucheron, this.xpchasseur, this.xpmineur, this.xppaysan,
this.xppecheur, this.xpbijoutier, this.xpboulanger, this.xpbricoleur, this.xpforgeurdedagues, this.xpforgeurdepees, this.xpforgeurdehaches, this.xpforgemagedemarteaux,
this.xpforgeurdepelles, this.xppoissonnier, this.xpcordonnier, this.xpforgeurdeboucliers, this.xpsculpteurdarcs, this.xpsculpteurdebaguettes, this.xpsculpteurdebatons,
this.xptailleur, this.xpcordomage, this.xpcostumage, this.xpjoaillomage, this.xpforgemagededagues, this.xpforgemagedepees, this.xpforgemagedhaches, this.xpforgemagedemarteaux,
this.xpforgemagedepelles, this.xpsculptemagedarcs, this.xpsculptemagedebaguettes, this.xpsculptemagedebaton, this.levelbucheron);
TutoMod.network.sendToServer(packetcaracteristique);
if (!player.worldObj.isRemote)
{
EntityPlayerMP player1 = (EntityPlayerMP) player;
TutoMod.network.sendTo(packetcaracteristique, player1);
}
}
private static String getSaveKey(EntityPlayer player)
{
return player.getDisplayName() + ":" + EXT_PROP_NAME;
}
public static void saveProxyData(EntityPlayer player)
{
ExtendedEntityPropCaracteristique playerData = ExtendedEntityPropCaracteristique.get(player);
NBTTagCompound savedData = new NBTTagCompound();
playerData.saveNBTData(savedData);
Commonproxy.storeEntityData(getSaveKey(player), savedData);
}
public static void loadProxyData(EntityPlayer player)
{
ExtendedEntityPropCaracteristique playerData = ExtendedEntityPropCaracteristique.get(player);
NBTTagCompound savedData = Commonproxy.getEntityData(getSaveKey(player));
if (savedData != null)
{
playerData.loadNBTData(savedData);
}
playerData.sync();
}
public void update(long cooldown, long classe, long kamas, long xpalchimiste, long xpbucheron, long xpchasseur, long xpmineur, long xppaysan, long xppecheur, long xpbijoutier,
long xpboulanger, long xpbricoleur, long xpforgeurdedagues, long xpforgeurdepees, long xpforgeurdehaches, long xpforgeurdemarteaux, long xpforgeurdepelles,
long xppoissonnier, long xpcordonnier, long xpforgeurdeboucliers, long xpsculpteurdarcs, long xpsculpteurdebaguettes, long xpsculpteurdebatons, long xptailleur,
long xpcordomage, long xpcostumage, long xpjoaillomage, long xpforgemagededagues, long xpforgemagedepees, long xpforgemagedhaches, long xpforgemagedemarteaux, long xpforgemagedepelles,
long xpsculptemagedarcs, long xpsculptemagedebaguettes, long xpsculptemagedebaton, long levelbucheron)
{
this.cooldown = cooldown;
this.kamas = kamas;
this.classe = classe;
this.xpalchimiste= xpalchimiste;
this.xpbucheron= xpbucheron;
this.xpchasseur= xpchasseur;
this.xpmineur= xpmineur;
this.xppaysan= xppaysan;
this.xppecheur= xppecheur;
this.xpbijoutier= xpbijoutier;
this.xpboulanger= xpboulanger;
this.xpbricoleur= xpbricoleur;
this.xpforgeurdedagues= xpforgeurdedagues;
this.xpforgeurdepees= xpforgeurdepees;
this.xpforgeurdehaches= xpforgeurdehaches;
this.xpforgeurdemarteaux= xpforgeurdemarteaux;
this.xpforgeurdepelles= xpforgeurdepelles;
this.xppoissonnier= xppoissonnier;
this.xpcordonnier= xpcordonnier;
this.xpforgeurdeboucliers= xpforgeurdeboucliers;
this.xpsculpteurdarcs= xpsculpteurdarcs;
this.xpsculpteurdebaguettes= xpsculpteurdebaguettes;
this.xpsculpteurdebatons= xpsculpteurdebatons;
this.xptailleur= xptailleur;
this.xpcordomage= xpcordomage;
this.xpcostumage= xpcostumage;
this.xpjoaillomage= xpjoaillomage;
this.xpforgemagededagues= xpforgemagededagues;
this.xpforgemagedepees= xpforgemagedepees;
this.xpforgemagedhaches= xpforgemagedhaches;
this.xpforgemagedemarteaux= xpforgemagedemarteaux;
this.xpforgemagedepelles= xpforgemagedepelles;
this.xpsculptemagedarcs= xpsculptemagedarcs;
this.xpsculptemagedebaguettes= xpsculptemagedebaguettes;
this.xpsculptemagedebaton = xpsculptemagedebaton;
this.levelbucheron = levelbucheron;
}
//Kamas
public boolean pay(long amount)
{
boolean sufficient = amount <= this.kamas;
if (sufficient)
{
this.kamas -= amount;
this.sync();
} else
{
return false;
}
return sufficient;
}
public void addKamas(long amount)
{
this.kamas += amount;
this.sync();
}
public long getKamas()
{
return this.kamas;
}
public void setKamas(long newKamas)
{
this.kamas = newKamas;
this.sync();
}
//Cooldown
public void addCooldown(long amount)
{
this.cooldown += amount;
this.sync();
}
public void setCooldown(long newCooldown)
{
this.cooldown = newCooldown;
this.sync();
}
//Metier
//Bucheron
public void addxpbucheron(long amount)
{
this.xpbucheron += amount;
this.sync();
}
public void setxpbucheron(long newXpbucheron)
{
this.xpbucheron = newXpbucheron;
this.sync();
}
public void addlevelbucheron(long amount)
{
this.levelbucheron += amount;
this.sync();
}
@SideOnly(Side.CLIENT)
public void openscreen()
{
Minecraft.getMinecraft().displayGuiScreen(new Guilevelmetier());
}
}
mon Packetcaracteristique:
package joueur;
import java.io.IOException;
import net.minecraft.client.Minecraft;
import net.minecraft.client.entity.EntityPlayerSP;
import net.minecraft.client.network.NetHandlerPlayClient;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.network.NetHandlerPlayServer;
import interfaces.packets.Zaap;
import io.netty.buffer.ByteBuf;
import io.netty.channel.ChannelHandlerContext;
import cpw.mods.fml.common.network.ByteBufUtils;
import cpw.mods.fml.common.network.simpleimpl.IMessage;
import cpw.mods.fml.common.network.simpleimpl.IMessageHandler;
import cpw.mods.fml.common.network.simpleimpl.MessageContext;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
public class Packetcaracteristique implements IMessage
{
public long cooldown;
public long kamas;
public long classe;
public long levelbucheron;
public long xpalchimiste, xpbucheron , xpchasseur , xpmineur , xppaysan , xppecheur , xpbijoutier , xpboulanger , xpbricoleur , xpforgeurdedagues , xpforgeurdepees ,
xpforgeurdehaches , xpforgeurdemarteaux , xpforgeurdepelles , xppoissonnier , xpcordonnier , xpforgeurdeboucliers , xpsculpteurdarcs , xpsculpteurdebaguettes ,
xpsculpteurdebatons , xptailleur , xpcordomage , xpcostumage , xpjoaillomage , xpforgemagededagues , xpforgemagedepees , xpforgemagedhaches , xpforgemagedemarteaux ,
xpforgemagedepelles , xpsculptemagedarcs , xpsculptemagedebaguettes , xpsculptemagedebaton;
public Packetcaracteristique()
{
}
public Packetcaracteristique(long cooldown, long kamas, long classe, long xpalchimiste, long xpbucheron, long xpchasseur, long xpmineur, long xppaysan, long xppecheur, long xpbijoutier,
long xpboulanger, long xpbricoleur, long xpforgeurdedagues, long xpforgeurdepees, long xpforgeurdehaches, long xpforgeurdemarteaux, long xpforgeurdepelles,
long xppoissonnier, long xpcordonnier, long xpforgeurdeboucliers, long xpsculpteurdarcs, long xpsculpteurdebaguettes, long xpsculpteurdebatons, long xptailleur,
long xpcordomage, long xpcostumage, long xpjoaillomage, long xpforgemagededagues, long xpforgemagedepees, long xpforgemagedhaches, long xpforgemagedemarteaux, long xpforgemagedepelles,
long xpsculptemagedarcs, long xpsculptemagedebaguettes, long xpsculptemagedebaton, long levelbucheron)
{
this.cooldown = cooldown;
this.kamas = kamas;
this.classe = classe;
this.xpalchimiste= xpalchimiste;
this.xpbucheron= xpbucheron;
this.xpchasseur= xpchasseur;
this.xpmineur= xpmineur;
this.xppaysan= xppaysan;
this.xppecheur= xppecheur;
this.xpbijoutier= xpbijoutier;
this.xpboulanger= xpboulanger;
this.xpbricoleur= xpbricoleur;
this.xpforgeurdedagues= xpforgeurdedagues;
this.xpforgeurdepees= xpforgeurdepees;
this.xpforgeurdehaches= xpforgeurdehaches;
this.xpforgeurdemarteaux= xpforgeurdemarteaux;
this.xpforgeurdepelles= xpforgeurdepelles;
this.xppoissonnier= xppoissonnier;
this.xpcordonnier= xpcordonnier;
this.xpforgeurdeboucliers= xpforgeurdeboucliers;
this.xpsculpteurdarcs= xpsculpteurdarcs;
this.xpsculpteurdebaguettes= xpsculpteurdebaguettes;
this.xpsculpteurdebatons= xpsculpteurdebatons;
this.xptailleur= xptailleur;
this.xpcordomage= xpcordomage;
this.xpcostumage= xpcostumage;
this.xpjoaillomage= xpjoaillomage;
this.xpforgemagededagues= xpforgemagededagues;
this.xpforgemagedepees= xpforgemagedepees;
this.xpforgemagedhaches= xpforgemagedhaches;
this.xpforgemagedemarteaux= xpforgemagedemarteaux;
this.xpforgemagedepelles= xpforgemagedepelles;
this.xpsculptemagedarcs= xpsculptemagedarcs;
this.xpsculptemagedebaguettes= xpsculptemagedebaguettes;
this.xpsculptemagedebaton = xpsculptemagedebaton;
this.levelbucheron = levelbucheron;
}
@Override
public void fromBytes(ByteBuf buf)
{
cooldown = buf.readLong();
kamas = buf.readLong();
classe = buf.readLong();
xpalchimiste = buf.readLong();
xpbucheron = buf.readLong();
xpchasseur = buf.readLong();
xpmineur = buf.readLong();
xppaysan = buf.readLong();
xppecheur = buf.readLong();
xpbijoutier = buf.readLong();
xpboulanger = buf.readLong();
xpbricoleur = buf.readLong();
xpforgeurdedagues = buf.readLong();
xpforgeurdepees = buf.readLong();
xpforgeurdehaches = buf.readLong();
xpforgeurdemarteaux = buf.readLong();
xpforgeurdepelles = buf.readLong();
xppoissonnier = buf.readLong();
xpcordonnier = buf.readLong();
xpforgeurdeboucliers = buf.readLong();
xpsculpteurdarcs = buf.readLong();
xpsculpteurdebaguettes = buf.readLong();
xpsculpteurdebatons = buf.readLong();
xptailleur = buf.readLong();
xpcordomage = buf.readLong();
xpcostumage = buf.readLong();
xpjoaillomage = buf.readLong();
xpforgemagededagues = buf.readLong();
xpforgemagedepees = buf.readLong();
xpforgemagedhaches = buf.readLong();
xpforgemagedemarteaux = buf.readLong();
xpforgemagedepelles = buf.readLong();
xpsculptemagedarcs = buf.readLong();
xpsculptemagedebaguettes = buf.readLong();
xpsculptemagedebaton = buf.readLong();
levelbucheron = buf.readLong();
}
@Override
public void toBytes(ByteBuf buf)
{
buf.writeLong(cooldown);
buf.writeLong(kamas);
buf.writeLong(classe);
buf.writeLong(xpalchimiste);
buf.writeLong(xpbucheron);
buf.writeLong(xpchasseur);
buf.writeLong(xpmineur);
buf.writeLong(xppaysan);
buf.writeLong(xppecheur);
buf.writeLong(xpbijoutier);
buf.writeLong(xpboulanger);
buf.writeLong(xpbricoleur);
buf.writeLong(xpforgeurdedagues);
buf.writeLong(xpforgeurdepees);
buf.writeLong(xpforgeurdehaches);
buf.writeLong(xpforgeurdemarteaux);
buf.writeLong(xpforgeurdepelles);
buf.writeLong(xppoissonnier);
buf.writeLong(xpcordonnier);
buf.writeLong(xpforgeurdeboucliers);
buf.writeLong(xpsculpteurdarcs);
buf.writeLong(xpsculpteurdebaguettes);
buf.writeLong(xpsculpteurdebatons);
buf.writeLong(xptailleur);
buf.writeLong(xpcordomage);
buf.writeLong(xpcostumage);
buf.writeLong(xpjoaillomage);
buf.writeLong(xpforgemagededagues);
buf.writeLong(xpforgemagedepees);
buf.writeLong(xpforgemagedhaches);
buf.writeLong(xpforgemagedemarteaux);
buf.writeLong(xpforgemagedepelles);
buf.writeLong(xpsculptemagedarcs);
buf.writeLong(xpsculptemagedebaguettes);
buf.writeLong(xpsculptemagedebaton);
buf.writeLong(levelbucheron);
}
public static class Handler implements IMessageHandler <packetcaracteristique, imessage="">{
@Override
public IMessage onMessage(Packetcaracteristique message, MessageContext ctx)
{
if(ctx.netHandler instanceof NetHandlerPlayServer)
{
ExtendedEntityPropCaracteristique prop = ExtendedEntityPropCaracteristique.get(((NetHandlerPlayServer)ctx.netHandler).playerEntity);
prop.update(message.cooldown, message.kamas,message.classe ,message.xpalchimiste ,message.xpbucheron ,message.xpchasseur ,message.xpmineur ,message.xppaysan,
message.xppecheur ,message.xpbijoutier ,message.xpboulanger ,message.xpbricoleur ,message.xpforgeurdedagues ,message.xpforgeurdepees ,message.xpforgeurdehaches,
message.xpforgeurdemarteaux, message.xpforgeurdepelles, message.xppoissonnier, message.xpcordonnier, message.xpforgeurdeboucliers, message.xpsculpteurdarcs,
message.xpsculpteurdebaguettes, message.xpsculpteurdebatons,message.xptailleur, message.xpcordomage, message.xpcostumage, message.xpjoaillomage,
message.xpforgemagededagues, message.xpforgemagedepees, message.xpforgemagedhaches, message.xpforgemagedemarteaux, message.xpforgemagedepelles,
message.xpsculptemagedarcs, message.xpsculptemagedebaguettes, message.xpsculptemagedebaton, message.levelbucheron);
}
else if(ctx.netHandler instanceof NetHandlerPlayClient)
{
ExtendedEntityPropCaracteristique prop = ExtendedEntityPropCaracteristique.get(getClientPlayer());
prop.update(message.cooldown, message.kamas ,message.classe ,message.xpalchimiste ,message.xpbucheron ,message.xpchasseur ,message.xpmineur ,message.xppaysan,
message.xppecheur ,message.xpbijoutier ,message.xpboulanger ,message.xpbricoleur ,message.xpforgeurdedagues ,message.xpforgeurdepees ,message.xpforgeurdehaches,
message.xpforgeurdemarteaux, message.xpforgeurdepelles, message.xppoissonnier, message.xpcordonnier, message.xpforgeurdeboucliers, message.xpsculpteurdarcs,
message.xpsculpteurdebaguettes, message.xpsculpteurdebatons,message.xptailleur, message.xpcordomage, message.xpcostumage, message.xpjoaillomage,
message.xpforgemagededagues, message.xpforgemagedepees, message.xpforgemagedhaches, message.xpforgemagedemarteaux, message.xpforgemagedepelles,
message.xpsculptemagedarcs, message.xpsculptemagedebaguettes, message.xpsculptemagedebaton, message.levelbucheron);
}
return null;
}
}
@SideOnly(Side.CLIENT)
public static EntityPlayer getClientPlayer()
{
return Minecraft.getMinecraft().thePlayer;
}
}
et mon item qui compte :
package equipement.epees;
import joueur.ExtendedEntityPropCaracteristique;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item.ToolMaterial;
import net.minecraft.item.ItemStack;
import net.minecraft.item.ItemSword;
import net.minecraft.util.ChatComponentTranslation;
import net.minecraft.world.World;
public class Goultard extends ItemSword
{
public Goultard(ToolMaterial material)
{
super(material);
}
@Override
public ItemStack onItemRightClick(ItemStack itemstack, World world, EntityPlayer player)
{
if (!world.isRemote)
{
ExtendedEntityPropCaracteristique metier = ExtendedEntityPropCaracteristique.get(player);
metier.addKamas(10);
ChatComponentTranslation comp = new ChatComponentTranslation("tu as " + metier.kamas +" kamas");
player.addChatComponentMessage(comp);
}
return itemstack;
}
}
Voila donc ça fonctionne mais avec des erreurs console … le crash du dessus et le bon
Merci à toi pour ton aide</packetcaracteristique,>