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) |
| { |
| |
| } |
| |
| 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; |
| } |
| |
| |
| 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(); |
| } |
| |
| |
| public void addCooldown(long amount) |
| { |
| this.cooldown += amount; |
| this.sync(); |
| } |
| |
| public void setCooldown(long newCooldown) |
| { |
| this.cooldown = newCooldown; |
| this.sync(); |
| } |
| |
| |
| |
| 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,>