Search in sources :

Example 1 with NamedBindInstruction

use of com.skelril.skree.content.zone.group.catacombs.instruction.bossmove.NamedBindInstruction in project Skree by Skelril.

the class SnipeeBossManager method handleBinds.

private void handleBinds() {
    List<Instruction<BindCondition, Boss<Living, ZoneBossDetail<FreakyFourInstance>>>> bindProcessor = getBindProcessor();
    bindProcessor.add(new NamedBindInstruction<>("Snipee"));
    bindProcessor.add(new HealthBindInstruction<>(config.snipeeHP));
    bindProcessor.add((condition, boss) -> {
        Living entity = boss.getTargetEntity().get();
        if (entity instanceof ArmorEquipable) {
            ((ArmorEquipable) entity).setItemInHand(HandTypes.MAIN_HAND, newItemStack(ItemTypes.BOW));
        }
        return Optional.empty();
    });
}
Also used : ArmorEquipable(org.spongepowered.api.entity.ArmorEquipable) Living(org.spongepowered.api.entity.living.Living) NamedBindInstruction(com.skelril.skree.content.zone.group.catacombs.instruction.bossmove.NamedBindInstruction) Instruction(com.skelril.openboss.Instruction) HealthBindInstruction(com.skelril.skree.content.zone.group.freakyfour.boss.bossmove.HealthBindInstruction) HealableInstruction(com.skelril.skree.content.zone.group.freakyfour.boss.bossmove.HealableInstruction) BackTeleportInstruction(com.skelril.skree.content.zone.group.freakyfour.boss.bossmove.BackTeleportInstruction) ZoneBossDetail(com.skelril.skree.content.zone.ZoneBossDetail)

Example 2 with NamedBindInstruction

use of com.skelril.skree.content.zone.group.catacombs.instruction.bossmove.NamedBindInstruction in project Skree by Skelril.

the class CatacombsManager method setUpBoss.

private void setUpBoss() {
    Sponge.getEventManager().registerListeners(SkreePlugin.inst(), new BossListener<>(bossManager, Zombie.class));
    List<Instruction<BindCondition, Boss<Zombie, CatacombsBossDetail>>> bindProcessor = bossManager.getBindProcessor();
    bindProcessor.add(new NamedBindInstruction<>("Necromancer"));
    bindProcessor.add(new CatacombsHealthInstruction(250));
    List<Instruction<UnbindCondition, Boss<Zombie, CatacombsBossDetail>>> unbindProcessor = bossManager.getUnbindProcessor();
    unbindProcessor.add(new CheckedSpawnWave());
    unbindProcessor.add(new WaveDropInstruction(2));
    List<Instruction<DamageCondition, Boss<Zombie, CatacombsBossDetail>>> damageProcessor = bossManager.getDamageProcessor();
    damageProcessor.add(new WaveDamageModifier());
}
Also used : WaveDamageModifier(com.skelril.skree.content.zone.group.catacombs.instruction.WaveDamageModifier) CheckedSpawnWave(com.skelril.skree.content.zone.group.catacombs.instruction.CheckedSpawnWave) Zombie(org.spongepowered.api.entity.living.monster.Zombie) WaveDropInstruction(com.skelril.skree.content.zone.group.catacombs.instruction.WaveDropInstruction) NamedBindInstruction(com.skelril.skree.content.zone.group.catacombs.instruction.bossmove.NamedBindInstruction) Instruction(com.skelril.openboss.Instruction) WaveDropInstruction(com.skelril.skree.content.zone.group.catacombs.instruction.WaveDropInstruction) CatacombsHealthInstruction(com.skelril.skree.content.zone.group.catacombs.instruction.CatacombsHealthInstruction) CatacombsHealthInstruction(com.skelril.skree.content.zone.group.catacombs.instruction.CatacombsHealthInstruction)

Aggregations

Instruction (com.skelril.openboss.Instruction)2 NamedBindInstruction (com.skelril.skree.content.zone.group.catacombs.instruction.bossmove.NamedBindInstruction)2 ZoneBossDetail (com.skelril.skree.content.zone.ZoneBossDetail)1 CatacombsHealthInstruction (com.skelril.skree.content.zone.group.catacombs.instruction.CatacombsHealthInstruction)1 CheckedSpawnWave (com.skelril.skree.content.zone.group.catacombs.instruction.CheckedSpawnWave)1 WaveDamageModifier (com.skelril.skree.content.zone.group.catacombs.instruction.WaveDamageModifier)1 WaveDropInstruction (com.skelril.skree.content.zone.group.catacombs.instruction.WaveDropInstruction)1 BackTeleportInstruction (com.skelril.skree.content.zone.group.freakyfour.boss.bossmove.BackTeleportInstruction)1 HealableInstruction (com.skelril.skree.content.zone.group.freakyfour.boss.bossmove.HealableInstruction)1 HealthBindInstruction (com.skelril.skree.content.zone.group.freakyfour.boss.bossmove.HealthBindInstruction)1 ArmorEquipable (org.spongepowered.api.entity.ArmorEquipable)1 Living (org.spongepowered.api.entity.living.Living)1 Zombie (org.spongepowered.api.entity.living.monster.Zombie)1