- 1,007
- 36
- 206
Нужно чтобы игрок/моб дропал активный предмет когда например на него наложен эффект(ванильный) или когда на нём использовали предмет(в моём случае электрошокер)
protected void onImpact(MovingObjectPosition par1MovingObjectPosition) {
if (!this.worldObj.isRemote) {
if (par1MovingObjectPosition.typeOfHit == MovingObjectType.ENTITY) {
if (par1MovingObjectPosition.entityHit instanceof EntityPlayer) {
if (((EntityPlayer)par1MovingObjectPosition.entityHit).capabilities.isCreativeMode)
return;
}
if (par1MovingObjectPosition.entityHit instanceof EntityLivingBase) {
EntityLivingBase entity = (EntityLivingBase)par1MovingObjectPosition.entityHit;
entity.attackEntityFrom(DamageSource.generic, 1F);
entity.addPotionEffect(new PotionEffect(Potion.weakness.id, 500, 2));
entity.addPotionEffect(new PotionEffect(Potion.confusion.id, 500, 2));
entity.addPotionEffect(new PotionEffect(Potion.moveSlowdown.id...
//EntityLiving entity;
ItemStack is = entity.getHeldItem();
EntityItem ei = new EntityItem(entity.worldObj, entity.posX, entity.posY, entity.posZ, is.copy());
ei.delayBeforeCanPickup = 60;
entity.worldObj.spawnEntityInWorld(ei);
entity.setCurrentItemOrArmor(0, null);
protected void onImpact(MovingObjectPosition par1MovingObjectPosition)
{
if(!this.worldObj.isRemote)
{
if(par1MovingObjectPosition.typeOfHit == MovingObjectType.ENTITY)
{
if(par1MovingObjectPosition.entityHit instanceof EntityPlayer)
{
if(((EntityPlayer)par1MovingObjectPosition.entityHit).capabilities.isCreativeMode)
return;
}
if(par1MovingObjectPosition.entityHit instanceof EntityLivingBase)
{
((EntityLivingBase) par1MovingObjectPosition.entityHit).attackEntityFrom(DamageSource.generic, 1F);
((EntityLivingBase) par1MovingObjectPosition.entityHit).addPotionEffect(new PotionEffect(Potion.weakness.id, 500, 2));
((EntityLivingBase) par1MovingObjectPosition.entityHit).addPotionEffect(new PotionEffect(Potion.confusion.id, 500, 2));
((EntityLivingBase) par1MovingObjectPosition.entityHit).addPotionEffect(new PotionEffect(Potion.moveSlowdown.id, 500, 2));
this.setDead();
}
}
}
}
}
protected void onImpact(MovingObjectPosition par1MovingObjectPosition) {
if (!this.worldObj.isRemote) {
if (par1MovingObjectPosition.typeOfHit == MovingObjectType.ENTITY) {
if (par1MovingObjectPosition.entityHit instanceof EntityPlayer) {
if (((EntityPlayer)par1MovingObjectPosition.entityHit).capabilities.isCreativeMode)
return;
}
if (par1MovingObjectPosition.entityHit instanceof EntityLivingBase) {
EntityLivingBase entity = (EntityLivingBase)par1MovingObjectPosition.entityHit;
entity.attackEntityFrom(DamageSource.generic, 1F);
entity.addPotionEffect(new PotionEffect(Potion.weakness.id, 500, 2));
entity.addPotionEffect(new PotionEffect(Potion.confusion.id, 500, 2));
entity.addPotionEffect(new PotionEffect(Potion.moveSlowdown.id, 500, 2));
//
ItemStack is = entity.getHeldItem();
EntityItem ei = new EntityItem(entity.worldObj, entity.posX, entity.posY, entity.posZ, is.copy());
ei.delayBeforeCanPickup = 60;
entity.worldObj.spawnEntityInWorld(ei);
entity.setCurrentItemOrArmor(0, null);
//
this.setDead();
}
}
}
}