protected override void InitEffects() { int rocketBlastRadius = 3; base.InitEffects(); AttackData rocketProjectileAttack = new AttackData(); rocketProjectileAttack.Type = AttackType.PHYSICAL; rocketProjectileAttack.Element = ElementType.NONE; AttackData rocketBlastAttack = new AttackData(); rocketProjectileAttack.Type = AttackType.BLAST; rocketProjectileAttack.Element = ElementType.NONE; DamageData dmg = new DamageData(); dmg.Magnitude = 6; dmg.DmgAttackType = AttackType.BLAST; dmg.DmgElement = ElementType.NONE; dmg.DamagesWalls = true; Effects.Add(new Effect_WriteText("The quazax rocketeer fires a rocket!")); Effect_GenericProjectile rocketProjectile = new Effect_GenericProjectile(rocketProjectileAttack); Effect_Blast rocketBlast = new Effect_Blast(rocketBlastAttack, rocketBlastRadius); rocketProjectile.SetSource(_scene.GetGameObjectPool().GetActor(OwnerID).Position); rocketBlast.EffectsOnEachActor.Add(new Effect_BasicDamage(dmg)); rocketProjectile.EffectsOnStrike.Add(rocketBlast); Effects.Add(rocketProjectile); }
protected override void InitEffects() { base.InitEffects(); AttackData atk = new AttackData(); atk.Type = AttackType.ARCANE; atk.Element = ElementType.NONE; DamageData dmg = new DamageData(); dmg.Magnitude = 1; dmg.DmgAttackType = AttackType.ARCANE; dmg.DmgElement = ElementType.NONE; Effects.Add(new Effect_WriteText("The gopherkin adept shoots magic missiles!")); for (int i = 0; i < 2; i++) { Effect_GenericProjectile projectile = new Effect_GenericProjectile(atk); projectile.EffectsOnDamage.Add(new Effect_BasicDamage(dmg)); Effects.Add(projectile); } }
protected override void InitEffects() { base.InitEffects(); AttackData atk = new AttackData(); atk.Type = AttackType.ARCANE; atk.Element = ElementType.COLD; DamageData dmg = new DamageData(); dmg.Magnitude = 2; dmg.DmgAttackType = AttackType.ARCANE; dmg.DmgElement = ElementType.COLD; Effects.Add(new Effect_WriteText("The spectral pupil summons a chilling blast!")); for (int i = 0; i < 2; i++) { Effect_GenericProjectile projectile = new Effect_GenericProjectile(atk); projectile.EffectsOnDamage.Add(new Effect_BasicDamage(dmg)); Effects.Add(projectile); } }
protected override void InitEffects() { base.InitEffects(); AttackData atk = new AttackData(); atk.Type = AttackType.ARCANE; atk.Element = ElementType.NONE; DamageData dmg = new DamageData(); dmg.Magnitude = 2; dmg.DmgAttackType = AttackType.ARCANE; dmg.DmgElement = ElementType.NONE; Effects.Add(new Effect_WriteText("Some magic darts zip from your finger!")); for (int i = 0; i < 3; i++) { Effect_GenericProjectile projectile = new Effect_GenericProjectile(atk); projectile.EffectsOnDamage.Add(new Effect_BasicDamage(dmg)); Effects.Add(projectile); } }
protected override void InitEffects() { int rocketScatterRadius = 5; int rocketBlastRadius = 3; base.InitEffects(); AttackData rocketProjectileAttack = new AttackData(); rocketProjectileAttack.Type = AttackType.PHYSICAL; rocketProjectileAttack.Element = ElementType.NONE; AttackData rocketBlastAttack = new AttackData(); rocketProjectileAttack.Type = AttackType.BLAST; rocketProjectileAttack.Element = ElementType.NONE; DamageData dmg = new DamageData(); dmg.Magnitude = 4; dmg.DmgAttackType = AttackType.BLAST; dmg.DmgElement = ElementType.NONE; dmg.DamagesWalls = true; Effects.Add(new Effect_WriteText("The mechanodragon fires a volley of rockets!")); Effect_PickRandomTargetsInRadius randomTargets = new Effect_PickRandomTargetsInRadius(rocketScatterRadius, 4, 4); Effect_GenericProjectile rocketProjectile = new Effect_GenericProjectile(rocketProjectileAttack); Effect_Blast rocketBlast = new Effect_Blast(rocketBlastAttack, rocketBlastRadius); rocketProjectile.SetSource(_scene.GetGameObjectPool().GetActor(OwnerID).Position); rocketBlast.EffectsOnEachActor.Add(new Effect_BasicDamage(dmg)); rocketProjectile.EffectsOnStrike.Add(rocketBlast); randomTargets.EffectsOnEachTarget.Add(rocketProjectile); Effects.Add(randomTargets); }