当前位置: 首页>>代码示例>>Java>>正文


Java EntityDamageByBlockEvent.isCancelled方法代码示例

本文整理汇总了Java中org.bukkit.event.entity.EntityDamageByBlockEvent.isCancelled方法的典型用法代码示例。如果您正苦于以下问题:Java EntityDamageByBlockEvent.isCancelled方法的具体用法?Java EntityDamageByBlockEvent.isCancelled怎么用?Java EntityDamageByBlockEvent.isCancelled使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.bukkit.event.entity.EntityDamageByBlockEvent的用法示例。


在下文中一共展示了EntityDamageByBlockEvent.isCancelled方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: a

import org.bukkit.event.entity.EntityDamageByBlockEvent; //导入方法依赖的package包/类
public void a(World world, int i, int j, int k, Entity entity) {
    // CraftBukkit start - EntityDamageByBlock event
    if (entity instanceof EntityLiving) {
        org.bukkit.block.Block damager = world.getWorld().getBlockAt(i, j, k);
        org.bukkit.entity.Entity damagee = (entity == null) ? null : entity.getBukkitEntity();

        EntityDamageByBlockEvent event = new EntityDamageByBlockEvent(damager, damagee, org.bukkit.event.entity.EntityDamageEvent.DamageCause.CONTACT, 1D);
        world.getServer().getPluginManager().callEvent(event);

        if (!event.isCancelled()) {
            damagee.setLastDamageCause(event);
            entity.damageEntity(DamageSource.CACTUS, (float) event.getDamage());
        }
        return;
    }
    // CraftBukkit end

    entity.damageEntity(DamageSource.CACTUS, 1.0F);
}
 
开发者ID:AlmuraDev,项目名称:Almura-Server,代码行数:20,代码来源:BlockCactus.java

示例2: a

import org.bukkit.event.entity.EntityDamageByBlockEvent; //导入方法依赖的package包/类
public void a(World world, int i, int j, int k, Entity entity) {
    // CraftBukkit start - EntityDamageByBlock event
    if (entity instanceof EntityLiving) {
        org.bukkit.block.Block damager = world.getWorld().getBlockAt(i, j, k);
        org.bukkit.entity.Entity damagee = (entity == null) ? null : entity.getBukkitEntity();

        EntityDamageByBlockEvent event = new EntityDamageByBlockEvent(damager, damagee, org.bukkit.event.entity.EntityDamageEvent.DamageCause.CONTACT, 1);
        world.getServer().getPluginManager().callEvent(event);

        if (!event.isCancelled()) {
            damagee.setLastDamageCause(event);
            entity.damageEntity(DamageSource.CACTUS, event.getDamage());
        }
        return;
    }
    // CraftBukkit end

    entity.damageEntity(DamageSource.CACTUS, 1);
}
 
开发者ID:didoupimpon,项目名称:Craft-city,代码行数:20,代码来源:BlockCactus.java

示例3: A

import org.bukkit.event.entity.EntityDamageByBlockEvent; //导入方法依赖的package包/类
protected void A() {
    if (!this.fireProof) {
        // CraftBukkit start - Fallen in lava TODO: this event spams!
        if (this instanceof EntityLiving) {
            Server server = this.world.getServer();

            // TODO: shouldn't be sending null for the block.
            org.bukkit.block.Block damager = null; // ((WorldServer) this.l).getWorld().getBlockAt(i, j, k);
            org.bukkit.entity.Entity damagee = this.getBukkitEntity();

            EntityDamageByBlockEvent event = new EntityDamageByBlockEvent(damager, damagee, EntityDamageEvent.DamageCause.LAVA, 4D);
            server.getPluginManager().callEvent(event);

            if (!event.isCancelled()) {
                damagee.setLastDamageCause(event);
                this.damageEntity(DamageSource.LAVA, (float) event.getDamage());
            }

            if (this.fireTicks <= 0) {
                // not on fire yet
                EntityCombustEvent combustEvent = new org.bukkit.event.entity.EntityCombustByBlockEvent(damager, damagee, 15);
                server.getPluginManager().callEvent(combustEvent);

                if (!combustEvent.isCancelled()) {
                    this.setOnFire(combustEvent.getDuration());
                }
            } else {
                // This will be called every single tick the entity is in lava, so don't throw an event
                this.setOnFire(15);
            }
            return;
        }
        // CraftBukkit end - we also don't throw an event unless the object in lava is living, to save on some event calls

        this.damageEntity(DamageSource.LAVA, 4);
        this.setOnFire(15);
    }
}
 
开发者ID:AlmuraDev,项目名称:Almura-Server,代码行数:39,代码来源:Entity.java

示例4: z

import org.bukkit.event.entity.EntityDamageByBlockEvent; //导入方法依赖的package包/类
protected void z() {
    if (!this.fireProof) {
        // CraftBukkit start - Fallen in lava TODO: this event spams!
        if (this instanceof EntityLiving) {
            Server server = this.world.getServer();

            // TODO: shouldn't be sending null for the block.
            org.bukkit.block.Block damager = null; // ((WorldServer) this.l).getWorld().getBlockAt(i, j, k);
            org.bukkit.entity.Entity damagee = this.getBukkitEntity();

            EntityDamageByBlockEvent event = new EntityDamageByBlockEvent(damager, damagee, EntityDamageEvent.DamageCause.LAVA, 4);
            server.getPluginManager().callEvent(event);

            if (!event.isCancelled()) {
                damagee.setLastDamageCause(event);
                this.damageEntity(DamageSource.LAVA, event.getDamage());
            }

            if (this.fireTicks <= 0) {
                // not on fire yet
                EntityCombustEvent combustEvent = new org.bukkit.event.entity.EntityCombustByBlockEvent(damager, damagee, 15);
                server.getPluginManager().callEvent(combustEvent);

                if (!combustEvent.isCancelled()) {
                    this.setOnFire(combustEvent.getDuration());
                }
            } else {
                // This will be called every single tick the entity is in lava, so don't throw an event
                this.setOnFire(15);
            }
            return;
        }
        // CraftBukkit end - we also don't throw an event unless the object in lava is living, to save on some event calls

        this.damageEntity(DamageSource.LAVA, 4);
        this.setOnFire(15);
    }
}
 
开发者ID:didoupimpon,项目名称:Craft-city,代码行数:39,代码来源:Entity.java


注:本文中的org.bukkit.event.entity.EntityDamageByBlockEvent.isCancelled方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。