Code:
using System;
using System.Collections.Generic;
using System.Linq;
using System;
using wServer.logic.attack;
using wServer.logic.loot;
using wServer.logic.movement;
using wServer.logic.taunt;
using System.Text;
using wServer.logic.cond;
namespace wServer.logic
{
partial class BehaviorDb
{
static _ Shaitan = Behav()
.Init(0x247e, Behaves("Shaitan The Advisor",
new RunBehaviors(
HpLesser.Instance(4000, SetState.Instance("end")),
new State("idle", new QueuedBehavior(
SetConditionEffect.Instance(ConditionEffectIndex.I nvulnerable),
CooldownExact.Instance(300, SetSize.Instance(20)),
CooldownExact.Instance(300, SetSize.Instance(30)),
CooldownExact.Instance(300, SetSize.Instance(40)),
CooldownExact.Instance(300, SetSize.Instance(60)),
CooldownExact.Instance(300, SetSize.Instance(80)),
CooldownExact.Instance(300, SetSize.Instance(90)),
CooldownExact.Instance(300, SetSize.Instance(100)),
CooldownExact.Instance(300, SetSize.Instance(120)),
CooldownExact.Instance(300, SetSize.Instance(140)),
CooldownExact.Instance(300, SetSize.Instance(150)),
CooldownExact.Instance(300, SetSize.Instance(170)),
CooldownExact.Instance(300, SetSize.Instance(190)),
CooldownExact.Instance(300, SetSize.Instance(210)),
CooldownExact.Instance(300, SetSize.Instance(230)),
CooldownExact.Instance(1000, SetState.Instance("idle1"))
)),
new State("idle1",
SetConditionEffect.Instance(ConditionEffectIndex.I nvulnerable),
//TossEnemy.Instance(360 * (float)Math.PI / 180, 5, 0x247f),
//TossEnemy.Instance(180 * (float)Math.PI / 180, 5, 0x248a),
Reproduce.Instance(0x249e, 4, 2000, 4),
Reproduce.Instance(0x249f, 4, 2000, 4),
Reproduce.Instance(0x250a, 4, 4000, 4),
CooldownExact.Instance(15000, SetState.Instance("stage1"))
),
new State("stage1", new QueuedBehavior (
SetConditionEffect.Instance(ConditionEffectIndex.I nvulnerable),
CooldownExact.Instance(1, MultiAttack.Instance(15, 15 * (float)Math.PI / 180, 5, projectileIndex: 0)),
Reproduce.Instance(0x249e, 4, 1, 4),
Reproduce.Instance(0x250a, 4, 1, 4),
SetAltTexture.Instance(4),
AngleMove.Instance(10.0f, 19.25f, 5.35f),
Cooldown.Instance(4000),
StateOnce.Instance(UnsetConditionEffect.Instance(C onditionEffectIndex.Invulnerable)),
SetAltTexture.Instance(0),
CooldownExact.Instance(1000, MultiAttack.Instance(15, 15 * (float)Math.PI / 180, 5, projectileIndex: 0)),
CooldownExact.Instance(1800, MultiAttack.Instance(15, 15 * (float)Math.PI / 180, 5, projectileIndex: 0)),
Cooldown.Instance(100),
SetAltTexture.Instance(4),
SetConditionEffect.Instance(ConditionEffectIndex.I nvulnerable),
AngleMove.Instance(10.0f, 59.715f, 4.5f),
Cooldown.Instance(3000),
StateOnce.Instance(UnsetConditionEffect.Instance(C onditionEffectIndex.Invulnerable)),
SetAltTexture.Instance(0),
CooldownExact.Instance(1000, MultiAttack.Instance(15, 15 * (float)Math.PI / 180, 5, projectileIndex: 0)),
CooldownExact.Instance(1800, MultiAttack.Instance(15, 15 * (float)Math.PI / 180, 5, projectileIndex: 0)),
Cooldown.Instance(100),
SetAltTexture.Instance(4),
SetConditionEffect.Instance(ConditionEffectIndex.I nvulnerable),
AngleMove.Instance(10.0f, 59.715f, 4.5f),
Cooldown.Instance(2800),
StateOnce.Instance(UnsetConditionEffect.Instance(C onditionEffectIndex.Invulnerable)),
SetAltTexture.Instance(0),
CooldownExact.Instance(1000, MultiAttack.Instance(15, 15 * (float)Math.PI / 180, 5, projectileIndex: 0)),
CooldownExact.Instance(1800, MultiAttack.Instance(15, 15 * (float)Math.PI / 180, 5, projectileIndex: 0)),
Cooldown.Instance(100),
SetAltTexture.Instance(4),
SetConditionEffect.Instance(ConditionEffectIndex.I nvulnerable),
AngleMove.Instance(10.0f, -19.25f, 4.65f),
Cooldown.Instance(3000),
SetAltTexture.Instance(0),
CooldownExact.Instance(1, SetState.Instance("run1"))
)),
new State("run1", new QueuedBehavior (
Reproduce.Instance(0x249e, 4, 1, 4),
Reproduce.Instance(0x249f, 4, 1, 4),
Reproduce.Instance(0x250a, 4, 1, 4),
CooldownExact.Instance(1, MultiAttack.Instance(15, 15 * (float)Math.PI / 180, 5, projectileIndex: 0)),
CooldownExact.Instance(1, TossEnemy.Instance(360 * (float)Math.PI / 180, 4, 0x299b)),
CooldownExact.Instance(1, TossEnemy.Instance(180 * (float)Math.PI / 180, 4, 0x299a)),
SetAltTexture.Instance(1),
Cooldown.Instance(70),
SetAltTexture.Instance(0),
Cooldown.Instance(70),
SetAltTexture.Instance(2),
Cooldown.Instance(70),
SetAltTexture.Instance(3),
Cooldown.Instance(70),
SetAltTexture.Instance(3),
Cooldown.Instance(70),
SetAltTexture.Instance(2),
Cooldown.Instance(70),
SetAltTexture.Instance(0),
Cooldown.Instance(70),
SetAltTexture.Instance(1),
Cooldown.Instance(70),
SetAltTexture.Instance(1),
Cooldown.Instance(70),
SetAltTexture.Instance(0),
Cooldown.Instance(70),
SetAltTexture.Instance(2),
Cooldown.Instance(70),
SetAltTexture.Instance(3),
Cooldown.Instance(70),
SetAltTexture.Instance(3),
Cooldown.Instance(70),
SetAltTexture.Instance(2),
Cooldown.Instance(70),
SetAltTexture.Instance(0),
Cooldown.Instance(70),
SetAltTexture.Instance(1),
Cooldown.Instance(70),
SetAltTexture.Instance(1),
Cooldown.Instance(70),
SetAltTexture.Instance(0),
Cooldown.Instance(70),
SetAltTexture.Instance(2),
Cooldown.Instance(70),
SetAltTexture.Instance(3),
Cooldown.Instance(70),
SetAltTexture.Instance(3),
Cooldown.Instance(70),
SetAltTexture.Instance(2),
Cooldown.Instance(70),
SetAltTexture.Instance(0),
Cooldown.Instance(70),
SetAltTexture.Instance(1),
Cooldown.Instance(70),
CooldownExact.Instance(1, MultiAttack.Instance(15, 15 * (float)Math.PI / 180, 5, projectileIndex: 0)),
CooldownExact.Instance(1, TossEnemy.Instance(360 * (float)Math.PI / 180, 4, 0x299b)),
CooldownExact.Instance(1, TossEnemy.Instance(180 * (float)Math.PI / 180, 4, 0x299a)),
SetAltTexture.Instance(1),
Cooldown.Instance(70),
SetAltTexture.Instance(0),
Cooldown.Instance(70),
SetAltTexture.Instance(2),
Cooldown.Instance(70),
SetAltTexture.Instance(3),
Cooldown.Instance(70),
SetAltTexture.Instance(3),
Cooldown.Instance(70),
SetAltTexture.Instance(2),
Cooldown.Instance(70),
SetAltTexture.Instance(0),
Cooldown.Instance(70),
SetAltTexture.Instance(1),
Cooldown.Instance(70),
SetAltTexture.Instance(1),
Cooldown.Instance(70),
SetAltTexture.Instance(0),
Cooldown.Instance(70),
SetAltTexture.Instance(2),
Cooldown.Instance(70),
SetAltTexture.Instance(3),
Cooldown.Instance(70),
SetAltTexture.Instance(3),
Cooldown.Instance(70),
SetAltTexture.Instance(2),
Cooldown.Instance(70),
SetAltTexture.Instance(0),
Cooldown.Instance(70),
SetAltTexture.Instance(1),
Cooldown.Instance(70),
SetAltTexture.Instance(1),
Cooldown.Instance(70),
SetAltTexture.Instance(0),
Cooldown.Instance(70),
SetAltTexture.Instance(2),
Cooldown.Instance(70),
SetAltTexture.Instance(3),
Cooldown.Instance(70),
SetAltTexture.Instance(3),
Cooldown.Instance(70),
SetAltTexture.Instance(2),
Cooldown.Instance(70),
SetAltTexture.Instance(0),
Cooldown.Instance(70),
SetAltTexture.Instance(1),
Cooldown.Instance(70),
CooldownExact.Instance(1, MultiAttack.Instance(15, 15 * (float)Math.PI / 180, 5, projectileIndex: 0)),
CooldownExact.Instance(1, TossEnemy.Instance(360 * (float)Math.PI / 180, 4, 0x299b)),
CooldownExact.Instance(1, TossEnemy.Instance(180 * (float)Math.PI / 180, 4, 0x299a)),
SetAltTexture.Instance(1),
Cooldown.Instance(70),
SetAltTexture.Instance(0),
Cooldown.Instance(70),
SetAltTexture.Instance(2),
Cooldown.Instance(70),
SetAltTexture.Instance(3),
Cooldown.Instance(70),
SetAltTexture.Instance(3),
Cooldown.Instance(70),
SetAltTexture.Instance(2),
Cooldown.Instance(70),
SetAltTexture.Instance(0),
Cooldown.Instance(70),
SetAltTexture.Instance(1),
Cooldown.Instance(70),
SetAltTexture.Instance(1),
Cooldown.Instance(70),
SetAltTexture.Instance(0),
Cooldown.Instance(70),
SetAltTexture.Instance(2),
Cooldown.Instance(70),
SetAltTexture.Instance(3),
Cooldown.Instance(70),
SetAltTexture.Instance(3),
Cooldown.Instance(70),
SetAltTexture.Instance(2),
Cooldown.Instance(70),
SetAltTexture.Instance(0),
Cooldown.Instance(70),
SetAltTexture.Instance(1),
Cooldown.Instance(70),
SetAltTexture.Instance(1),
Cooldown.Instance(70),
SetAltTexture.Instance(0),
Cooldown.Instance(70),
SetAltTexture.Instance(2),
Cooldown.Instance(70),
SetAltTexture.Instance(3),
Cooldown.Instance(70),
SetAltTexture.Instance(3),
Cooldown.Instance(70),
SetAltTexture.Instance(2),
Cooldown.Instance(70),
SetAltTexture.Instance(0),
Cooldown.Instance(70),
SetAltTexture.Instance(1),
Cooldown.Instance(70),
CooldownExact.Instance(1, MultiAttack.Instance(15, 15 * (float)Math.PI / 180, 5, projectileIndex: 0)),
CooldownExact.Instance(1, TossEnemy.Instance(360 * (float)Math.PI / 180, 4, 0x299b)),
CooldownExact.Instance(1, TossEnemy.Instance(180 * (float)Math.PI / 180, 4, 0x299a)),
SetAltTexture.Instance(1),
Cooldown.Instance(70),
SetAltTexture.Instance(0),
Cooldown.Instance(70),
SetAltTexture.Instance(2),
Cooldown.Instance(70),
SetAltTexture.Instance(3),
Cooldown.Instance(70),
SetAltTexture.Instance(3),
Cooldown.Instance(70),
SetAltTexture.Instance(2),
Cooldown.Instance(70),
SetAltTexture.Instance(0),
Cooldown.Instance(70),
SetAltTexture.Instance(1),
Cooldown.Instance(70),
SetAltTexture.Instance(1),
Cooldown.Instance(70),
SetAltTexture.Instance(0),
Cooldown.Instance(70),
SetAltTexture.Instance(2),
Cooldown.Instance(70),
SetAltTexture.Instance(3),
Cooldown.Instance(70),
SetAltTexture.Instance(3),
Cooldown.Instance(70),
SetAltTexture.Instance(2),
Cooldown.Instance(70),
SetAltTexture.Instance(0),
Cooldown.Instance(70),
SetAltTexture.Instance(1),
Cooldown.Instance(70),
SetAltTexture.Instance(1),
Cooldown.Instance(70),
SetAltTexture.Instance(0),
Cooldown.Instance(70),
SetAltTexture.Instance(2),
Cooldown.Instance(70),
SetAltTexture.Instance(3),
Cooldown.Instance(70),
SetAltTexture.Instance(3),
Cooldown.Instance(70),
SetAltTexture.Instance(2),
Cooldown.Instance(70),
SetAltTexture.Instance(0),
Cooldown.Instance(70),
SetAltTexture.Instance(1),
Cooldown.Instance(70),
CooldownExact.Instance(1, MultiAttack.Instance(15, 15 * (float)Math.PI / 180, 5, projectileIndex: 0)),
CooldownExact.Instance(1, TossEnemy.Instance(360 * (float)Math.PI / 180, 4, 0x299b)),
CooldownExact.Instance(1, TossEnemy.Instance(180 * (float)Math.PI / 180, 4, 0x299a)),
SetAltTexture.Instance(1),
Cooldown.Instance(70),
SetAltTexture.Instance(0),
Cooldown.Instance(70),
SetAltTexture.Instance(2),
Cooldown.Instance(70),
SetAltTexture.Instance(3),
Cooldown.Instance(70),
SetAltTexture.Instance(3),
Cooldown.Instance(70),
SetAltTexture.Instance(2),
Cooldown.Instance(70),
SetAltTexture.Instance(0),
Cooldown.Instance(70),
SetAltTexture.Instance(1),
Cooldown.Instance(70),
SetAltTexture.Instance(1),
Cooldown.Instance(70),
SetAltTexture.Instance(0),
Cooldown.Instance(70),
SetAltTexture.Instance(2),
Cooldown.Instance(70),
SetAltTexture.Instance(3),
Cooldown.Instance(70),
SetAltTexture.Instance(3),
Cooldown.Instance(70),
SetAltTexture.Instance(2),
Cooldown.Instance(70),
SetAltTexture.Instance(0),
Cooldown.Instance(70),
SetAltTexture.Instance(1),
Cooldown.Instance(70),
SetAltTexture.Instance(1),
Cooldown.Instance(70),
SetAltTexture.Instance(0),
Cooldown.Instance(70),
SetAltTexture.Instance(2),
Cooldown.Instance(70),
SetAltTexture.Instance(3),
Cooldown.Instance(70),
SetAltTexture.Instance(3),
Cooldown.Instance(70),
SetAltTexture.Instance(2),
Cooldown.Instance(70),
SetAltTexture.Instance(0),
Cooldown.Instance(70),
SetAltTexture.Instance(1),
Cooldown.Instance(70),
SetAltTexture.Instance(0),
Reproduce.Instance(0x249e, 4, 1, 4),
Reproduce.Instance(0x249f, 4, 1, 4),
Reproduce.Instance(0x250a, 4, 1, 4),
CooldownExact.Instance(1, SetState.Instance("run4"))
)),
new State("run4",
SetAltTexture.Instance(0),
CooldownExact.Instance(1, MultiAttack.Instance(15, 15 * (float)Math.PI / 180, 5, projectileIndex: 0)),
CooldownExact.Instance(1, SetState.Instance("stage1"))
),
new State("restart", new QueuedBehavior(
new SimpleTaunt("YOU ARE STARTING TO UPSET ME! PREPARE FOR A FAST DEATH!"),
CooldownExact.Instance(50, SetState.Instance("run1"))
)),
new State("end", new QueuedBehavior(
SetConditionEffect.Instance(ConditionEffectIndex.I nvulnerable),
ReturnSpawn.Instance(20.0f),
Cooldown.Instance(1000),
new SimpleTaunt("THE MAD GOD SHALL KNOW ABOUT THESE TRANSGRESSIONS!"),
CooldownExact.Instance(100, RingAttack.Instance(5, projectileIndex: 0)),
TossEnemy.Instance(90 * (float)Math.PI / 180, 4, 0x250f),
CooldownExact.Instance(1000),
Die.Instance
))
)
))
.Init(0x247f, Behaves("Right Hand of Shaitan",
new RunBehaviors(
new State("idle", new QueuedBehavior(
SetConditionEffect.Instance(ConditionEffectIndex.I nvulnerable),
CooldownExact.Instance(300, SetSize.Instance(20)),
CooldownExact.Instance(300, SetSize.Instance(30)),
CooldownExact.Instance(300, SetSize.Instance(40)),
CooldownExact.Instance(300, SetSize.Instance(60)),
CooldownExact.Instance(300, SetSize.Instance(80)),
CooldownExact.Instance(300, SetSize.Instance(90)),
CooldownExact.Instance(300, SetSize.Instance(100)),
CooldownExact.Instance(300, SetSize.Instance(120)),
CooldownExact.Instance(300, SetSize.Instance(140)),
CooldownExact.Instance(300, SetSize.Instance(150)),
CooldownExact.Instance(300, SetSize.Instance(170)),
CooldownExact.Instance(1000, SetState.Instance("idle1"))
)),
new State("idle1", new QueuedBehavior (
SetAltTexture.Instance(1),
new SimpleTaunt("You are in the presence of demi-god, mortal"),
Cooldown.Instance(250),
SetAltTexture.Instance(2),
Cooldown.Instance(250),
SetAltTexture.Instance(1),
Cooldown.Instance(250),
SetAltTexture.Instance(2),
Cooldown.Instance(250),
SetAltTexture.Instance(1),
Cooldown.Instance(250),
SetAltTexture.Instance(2),
Cooldown.Instance(250),
SetAltTexture.Instance(1),
Cooldown.Instance(250),
SetAltTexture.Instance(2),
Cooldown.Instance(250),
SetAltTexture.Instance(1),
Cooldown.Instance(250),
SetAltTexture.Instance(2),
Cooldown.Instance(250),
SetAltTexture.Instance(0),
CooldownExact.Instance(2500, SetState.Instance("stage1"))
)),
new State("stage1",
SetAltTexture.Instance(0),
StateOnce.Instance(UnsetConditionEffect.Instance(C onditionEffectIndex.Invulnerable)),
CooldownExact.Instance(350, RingAttack.Instance(13, projectileIndex: 0)),
HpLesserPercent.Instance(0.60f, SetState.Instance("stage2"))
),
new State("stage2",
SetAltTexture.Instance(0),
StateOnce.Instance(UnsetConditionEffect.Instance(C onditionEffectIndex.Invulnerable)),
Charge.Instance(10, 5, null),
CooldownExact.Instance(700, RingAttack.Instance(6, projectileIndex: 1)),
HpLesserPercent.Instance(0.70f, SetState.Instance("stage3"))
),
new State("stage3",
SetAltTexture.Instance(0),
StateOnce.Instance(UnsetConditionEffect.Instance(C onditionEffectIndex.Invulnerable)),
Flashing.Instance(500, 0xffff0000),
Charge.Instance(10, 6, null),
CooldownExact.Instance(700, RingAttack.Instance(6, projectileIndex: 1)),
HpLesserPercent.Instance(0.20f, SetState.Instance("stage4"))
),
new State("stage4",
SetAltTexture.Instance(0),
ReturnSpawn.Instance(20.0f),
StateOnce.Instance(UnsetConditionEffect.Instance(C onditionEffectIndex.Invulnerable)),
Flashing.Instance(500, 0xffff0000),
CooldownExact.Instance(300, RingAttack.Instance(13, projectileIndex: 0))
)
)
))
.Init(0x248a, Behaves("Left Hand of Shaitan",
new RunBehaviors(
new State("idle", new QueuedBehavior(
SetConditionEffect.Instance(ConditionEffectIndex.I nvulnerable),
CooldownExact.Instance(300, SetSize.Instance(20)),
CooldownExact.Instance(300, SetSize.Instance(30)),
CooldownExact.Instance(300, SetSize.Instance(40)),
CooldownExact.Instance(300, SetSize.Instance(60)),
CooldownExact.Instance(300, SetSize.Instance(80)),
CooldownExact.Instance(300, SetSize.Instance(90)),
CooldownExact.Instance(300, SetSize.Instance(100)),
CooldownExact.Instance(300, SetSize.Instance(120)),
CooldownExact.Instance(300, SetSize.Instance(140)),
CooldownExact.Instance(300, SetSize.Instance(150)),
CooldownExact.Instance(300, SetSize.Instance(170)),
CooldownExact.Instance(1000, SetState.Instance("idle1"))
)),
new State("idle1", new QueuedBehavior (
Cooldown.Instance(2600),
SetAltTexture.Instance(1),
new SimpleTaunt("Yes, little mortals. Meet your doom at the hands of SHAITAN!"),
Cooldown.Instance(250),
SetAltTexture.Instance(2),
Cooldown.Instance(250),
SetAltTexture.Instance(1),
Cooldown.Instance(250),
SetAltTexture.Instance(2),
Cooldown.Instance(250),
SetAltTexture.Instance(1),
Cooldown.Instance(250),
SetAltTexture.Instance(2),
Cooldown.Instance(250),
SetAltTexture.Instance(1),
Cooldown.Instance(250),
SetAltTexture.Instance(2),
Cooldown.Instance(250),
SetAltTexture.Instance(1),
Cooldown.Instance(250),
SetAltTexture.Instance(2),
Cooldown.Instance(250),
SetAltTexture.Instance(0),
CooldownExact.Instance(1000, SetState.Instance("stage1"))
)),
new State("stage1",
SetAltTexture.Instance(0),
StateOnce.Instance(UnsetConditionEffect.Instance(C onditionEffectIndex.Invulnerable)),
CooldownExact.Instance(350, RingAttack.Instance(13, projectileIndex: 0)),
HpLesserPercent.Instance(0.60f, SetState.Instance("stage2"))
),
new State("stage2",
SetAltTexture.Instance(0),
StateOnce.Instance(UnsetConditionEffect.Instance(C onditionEffectIndex.Invulnerable)),
Charge.Instance(10, 5, null),
CooldownExact.Instance(700, RingAttack.Instance(6, projectileIndex: 1)),
HpLesserPercent.Instance(0.70f, SetState.Instance("stage3"))
),
new State("stage3",
SetAltTexture.Instance(0),
StateOnce.Instance(UnsetConditionEffect.Instance(C onditionEffectIndex.Invulnerable)),
Flashing.Instance(500, 0xffff0000),
Charge.Instance(10, 6, null),
CooldownExact.Instance(700, RingAttack.Instance(6, projectileIndex: 1)),
HpLesserPercent.Instance(0.20f, SetState.Instance("stage4"))
),
new State("stage4",
SetAltTexture.Instance(0),
ReturnSpawn.Instance(20.0f),
StateOnce.Instance(UnsetConditionEffect.Instance(C onditionEffectIndex.Invulnerable)),
Flashing.Instance(500, 0xffff0000),
CooldownExact.Instance(300, RingAttack.Instance(13, projectileIndex: 0))
)
)
))
.Init(0x299a, Behaves("Right Hand of Shaitan1",
new RunBehaviors(
Charge.Instance(10, 8, null),
StateOnce.Instance(UnsetConditionEffect.Instance(C onditionEffectIndex.Invulnerable)),
CooldownExact.Instance(300, RingAttack.Instance(6, projectileIndex: 1))
)
))
.Init(0x299b, Behaves("Left Hand of Shaitan1",
new RunBehaviors(
Charge.Instance(10, 8, null),
StateOnce.Instance(UnsetConditionEffect.Instance(C onditionEffectIndex.Invulnerable)),
CooldownExact.Instance(300, RingAttack.Instance(6, projectileIndex: 1))
)
))
.Init(0x249e, Behaves("Small Creepy Right Hand",
new RunBehaviors(
SmoothWandering.Instance(10f, 4f),
StateOnce.Instance(UnsetConditionEffect.Instance(C onditionEffectIndex.Invulnerable)),
CooldownExact.Instance(500, RingAttack.Instance(6, projectileIndex: 0))
)
))
.Init(0x249f, Behaves("Small Creepy Left Hand",
new RunBehaviors(
SmoothWandering.Instance(10f, 4f),
StateOnce.Instance(UnsetConditionEffect.Instance(C onditionEffectIndex.Invulnerable)),
CooldownExact.Instance(500, RingAttack.Instance(6, projectileIndex: 0))
)
))
.Init(0x250a, Behaves("Creepy Small Head",
new RunBehaviors(
SmoothWandering.Instance(10f, 4f),
StateOnce.Instance(UnsetConditionEffect.Instance(C onditionEffectIndex.Invulnerable)),
CooldownExact.Instance(300, MultiAttack.Instance(15, 15 * (float)Math.PI / 180, 1, projectileIndex: 0))
)
))
.Init(0x250f, Behaves("ShaitanChest",
new RunBehaviors(
new QueuedBehavior(
StateOnce.Instance(SetConditionEffect.Instance(Con ditionEffectIndex.Invulnerable)),
CooldownExact.Instance(7500, UnsetConditionEffect.Instance(ConditionEffectIndex .Invulnerable))
)),
loot: new LootBehavior(LootDef.Empty,
Tuple.Create(100, new LootDef(0, 5, 0, 8,
Tuple.Create(0.004, (ILoot)new ItemLoot("Skull of Endless Torment")),
Tuple.Create(0.1, (ILoot)new StatPotionLoot(StatPotion.Att)),
Tuple.Create(0.2, (ILoot)new StatPotionLoot(StatPotion.Def))
))),
condBehaviors: new ConditionalBehavior[] {
new DeathPortal(0x071d, 100)
}
));
}
}