Follow along with the video below to see how to install our site as a web app on your home screen.
Примечание: This feature may not be available in some browsers.
@ForgeSubscribe
public void onHit(LivingHurtEvent e)
{
if(e.entity instanceof EntityPlayer)return; //Игрока не указали
if(e.source.isProjectile())
{
Entity en = e.source.getSourceOfDamage();
if (e.entity instanceof EntityLiving&&en instanceof IProjectile||Headshots.EntityBullet.isInstance(en)) //А вот мобов да, указали
{
if(e.entity.posY+e.entity.getEyeHeight()-0.4F<en.posY && en.posY<e.entity.posY+e.entity.getEyeHeight()+0.4F&&!isBadEntity(e.entity))
{
System.out.println("DEBUG "+e.entity.toString());
e.ammount=e.ammount*5;
((EntityLiving) e.entityLiving).setCustomNameTag("HEADSHOT!");
((EntityLiving) e.entityLiving).setAlwaysRenderNameTag(true);
}
}
}
if(e.entity instanceof EntityPlayer) {
if(e.entity.posY+e.entity.getEyeHeight()-0.4F<en.posY && en.posY<e.entity.posY+e.entity.getEyeHeight()+0.4F&&!isBadEntity(e.entity)) {
e.ammount=e.ammount*5;
((EntityPlayer) e.entity).setCustomNameTag("HEADSHOT!"); //Тут типо "Ник игрока" + "Headshot!", ну это сделать можно...
((EntityPlayer) e.entity).setAlwaysRenderNameTag(true);
}
}
@SubscribeEvent
public void hurt(LivingHurtEvent e){
Entity attacker = e.source.getSourceOfDamage();
EntityLivingBase living = e.entityLiving;
if(attacker instanceof IProjectile){
if(living.posY + living.getEyeHeight() < attacker.posY){
e.ammount *= 2;
System.out.println("Head shot! " + living.getCommandSenderName());
}
}
}
Двойной урон от попадания.HanteR12372 написал(а):А за что отвечает e.ammount *= 2; ?