Oui il est bien enregistré et il retourne la bonne valeur .
C’est uniquement le fait de devoir l’afficher qui pose problème car l’entityplayer de la fonction addinformation() c’est un entotyplayerSP et on a besoin d’un entityplayerMP ….
Sinon voici le packet :
[font=Courier Newpublic class ]PacketLevel implements IMessage
{
IDofusCraftLevels level%(#cc7832)[;
]
public PacketLevel()
{
}
public PacketLevel(IDofusCraftLevels level)
{
this.level = level%(#cc7832)[;
] }
%(#bbb529)[@Override
] public void fromBytes(ByteBuf buf)
{
if(this.getLevel() != null)
{
this.getLevel().setLevel(buf.readInt())%(#cc7832)[;
]
}
}
%(#bbb529)[@Override
] public void toBytes(ByteBuf buf)
{
if(this.getLevel() != null)
{
buf.writeInt(this.getLevel().getLevel())%(#cc7832)[;
]
}
}
public void setLevel(IDofusCraftLevels level)
{
this.level = level%(#cc7832)[;
] }
public IDofusCraftLevels getLevel()
{
return this.level%(#cc7832)[;
] }
public static class PacketLevelHandlerClient implements IMessageHandler <packetlevel, imessage="">{
%(#bbb529)[@Override
] public IMessage onMessage(PacketLevel message, MessageContext ctx)
{
IThreadListener thread = DofusCraftCore.*proxy*.getListener(ctx)%(#cc7832)[;
] final EntityPlayer player = DofusCraftCore.*proxy*.getPlayer(ctx)%(#cc7832)[;
] final IDofusCraftLevels value = message.getLevel()%(#cc7832)[;
] thread.addScheduledTask(() -> {
if(player != null) {
IDofusCraftLevels capabilities = player.getCapability(DofusCraftLevelsProvider.*LEVEL_CAP*, null)%(#cc7832)[;
] if(capabilities != null && value != null) {
capabilities.setLevel(value.getLevel())%(#cc7832)[;
] }
}
})%(#cc7832)[;
]
%(#cc7832)[ return null;
] }
}
public static class PacketLevelHandlerServer implements IMessageHandler <packetlevel, imessage="">{
%(#bbb529)[@Override
] public IMessage onMessage(PacketLevel message, MessageContext ctx)
{
IThreadListener thread = DofusCraftCore.*proxy*.getListener(ctx)%(#cc7832)[;
] final EntityPlayer player = DofusCraftCore.*proxy*.getPlayer(ctx)%(#cc7832)[;
] final IDofusCraftLevels value = message.getLevel()%(#cc7832)[;
] thread.addScheduledTask(() -> {
if(player != null) {
IDofusCraftLevels capabilities = player.getCapability(DofusCraftLevelsProvider.*LEVEL_CAP*, null)%(#cc7832)[;
] if(capabilities != null && value != null) {
capabilities.setLevel(value.getLevel())%(#cc7832)[;
] }
}
})%(#cc7832)[;
]%(#cc7832)[ return null;
] }
}
}
Cordialement ,</packetlevel%(#cc7832)[,></packetlevel%(#cc7832)[,>