- 29
- 1
Пытаюсь сделать счётчик убийств.Ошибок никаких нету.Но убийства не считает.Стоит значение 0 и всё.
Много кода.
Много кода.
Java:
package com.revolution.suicide.entities.player;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.world.World;
import net.minecraftforge.common.IExtendedEntityProperties;
public class ExtendedPlayer
implements IExtendedEntityProperties
{
public static final String EXT_PROP_NAME = "ExtendedPlayer";
private EntityPlayer player;
public int playersKilled = 0;
public int zombiesKilled = 0;
public void init(Entity entity, World world) {}
public ExtendedPlayer(EntityPlayer player)
{
this.player = player;
}
public static final void register(EntityPlayer player)
{
player.registerExtendedProperties("ExtendedPlayer", new ExtendedPlayer(player));
}
public static final ExtendedPlayer get(EntityPlayer player)
{
return (ExtendedPlayer)player.getExtendedProperties("ExtendedPlayer");
}
public void copy(ExtendedPlayer props)
{
this.playersKilled = props.playersKilled;
this.zombiesKilled = props.zombiesKilled;
}
public final void saveNBTData(NBTTagCompound compound)
{
NBTTagCompound properties = new NBTTagCompound();
properties.setInteger("playersKilled", this.playersKilled);
properties.setInteger("zombiesKilled", this.zombiesKilled);
compound.setTag("ExtendedPlayer", properties);
}
public final void loadNBTData(NBTTagCompound compound)
{
NBTTagCompound properties = (NBTTagCompound)compound.getTag("ExtendedPlayer");
this.playersKilled = properties.getInteger("playersKilled");
this.zombiesKilled = properties.getInteger("zombiesKilled");
}
}
Java:
drawString(this.mc.fontRenderer, "zombi: " + ExtendedPlayer.get(player).zombiesKilled, this.mc.displayWidth / 2 - 123, 75, 16777215);
drawString(this.mc.fontRenderer, "Player: " + ExtendedPlayer.get(player).playersKilled, this.mc.displayWidth / 2 - 123, 55, 16777215);
Java:
@SubscribeEvent
public void kill(LivingDeathEvent event)
{
if ((event.source.getEntity() instanceof EntityPlayer))
{
EntityPlayer player = (EntityPlayer)event.source.getEntity();
if ((event.entity instanceof EntityPlayer))
{
ExtendedPlayer.get(player).playersKilled += 1;
PacketDispatcher.sendTo(new SyncPlayerPropsMessage(player), (EntityPlayerMP)player);
}
else if ((event.entity instanceof EntityZombie))
{
ExtendedPlayer.get(player).zombiesKilled += 1;
PacketDispatcher.sendTo(new SyncPlayerPropsMessage(player), (EntityPlayerMP)player);
}
}
}
Последнее редактирование: