- 1,185
- 3
Код:
package com.svk.kitpvp.Event;
import com.svk.kitpvp.CommonProxy;
import com.svk.kitpvp.Skills.TemporarilyInvulnerable;
import com.svk.kitpvp.item.Shields;
import net.minecraft.entity.Entity;
import net.minecraft.entity.item.EntityTNTPrimed;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.potion.PotionEffect;
import net.minecraft.util.DamageSource;
import net.minecraft.util.EntityDamageSource;
import net.minecraft.world.World;
import net.minecraftforge.event.entity.living.LivingDeathEvent;
import net.minecraftforge.event.entity.living.LivingHurtEvent;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
public class Shield
{
@SubscribeEvent
public void onShields(LivingHurtEvent e)
{
Entity to = e.entityLiving;
World world = e.entityLiving.worldObj;
if(!world.isRemote)
{
if (to instanceof EntityPlayer && e.source instanceof EntityDamageSource)
{
EntityPlayer player = (EntityPlayer)to;
EntityDamageSource dmgSource = (EntityDamageSource)e.source;
ItemStack current_to = player.getCurrentEquippedItem();
if (current_to != null)
{
if (current_to.getItem() instanceof Shields && player.getItemInUseDuration() > 0 && dmgSource instanceof EntityDamageSource)
{
if(current_to.getItem() == CommonProxy.ParadiseShield)
{
player.heal(1);
}
if(current_to.getItem() == CommonProxy.ThornsShield)
{
e.source.getEntity().attackEntityFrom(dmgSource, 1);
}
e.ammount = 0;
current_to.damageItem(((Shields)current_to.getItem()).getDamage(), player);
e.setCanceled(true);
}
}
}
}
}
}
Либо первый, либо 2 аргумент...
Я так полагаю что это? "ItemStack current_to = player.getCurrentEquippedItem();" Есть серверная альтернатива?