public Wizard(int level, GameObject characterObject) : base("Wizard", level, 100 + Application.loadedLevel * 50) { CharacterObject = characterObject; WaypointPosition = new Vector3(0.9f, 0.65f, -1.0f); Speed = 0.5f; // 100f; BasicAttack = new Frostbolt(); StrongAttack = new ArcaneBarrage(); SpecialAttack = new Meteor(); BasicDefend = new Shield(); StrongDefend = new IceBarrier(); SpecialDefend = new Dodge(); }
public SpellBlade() { heroTexture = Engine.Engine.GetTexture("Hero/SpellBlade"); Hero.loadSprite(); heroRole = Classes.SpellBlade; baseHealth = 400; healthPerLevel = 40; requiredBranchLevel = int.MaxValue; resetLevel(); resetHealth(); abilities[0] = new Fireball(); abilities[1] = new Blink(); abilities[2] = new ArcaneWeapon(); abilities[3] = new SoulSiphon(); abilities[4] = new ArcaneBarrage(); abilities[5] = new ArcaneOverload(); Enemies.Enemy.UpdateTargets(this); Enemies.BossEnemy.UpdateBossTargets(this); }
public Spell GetSpell(SpellId spellId) { Spell s = Spells[(int)spellId]; if (s != null) { return(s); } //Spell s = null; //if (Spells.TryGetValue((int)spellId, out s)) return s; switch (spellId) { case SpellId.ArcaneBolt: s = new ArcaneBolt(this); break; case SpellId.LightningBolt: s = new LightningBolt(this); break; case SpellId.ArcaneMissiles: s = new ArcaneMissiles(this, false); break; case SpellId.ArcaneMissilesMB: s = new ArcaneMissiles(this, true); break; case SpellId.ArcaneMissilesCC: s = new ArcaneMissilesCC(this); break; case SpellId.ArcaneMissilesNoProc: s = new ArcaneMissiles(this, false, true, false, false); break; /*case SpellId.ArcaneMissilesFTF: * s = new ArcaneMissiles(this); * break; * case SpellId.ArcaneMissilesFTT: * s = new ArcaneMissiles(this); * break;*/ case SpellId.Frostbolt: s = new Frostbolt(this); break; case SpellId.FrostboltNoCC: s = new Frostbolt(this, true, false, false); break; case SpellId.Fireball: s = new Fireball(this, false); break; case SpellId.FrostfireBolt: s = new FrostfireBolt(this, false); break; case SpellId.Pyroblast: s = new Pyroblast(this, false); break; case SpellId.FireBlast: s = new FireBlast(this); break; case SpellId.Scorch: s = new Scorch(this); break; case SpellId.ScorchNoCC: s = new Scorch(this, false); break; case SpellId.ArcaneBarrage: s = new ArcaneBarrage(this); break; case SpellId.ArcaneBlast33: s = new ArcaneBlast(this, 3, 3); break; case SpellId.ArcaneBlast33NoCC: s = new ArcaneBlast(this, 3, 3, true, false, false); break; case SpellId.ArcaneBlast00: s = new ArcaneBlast(this, 0, 0); break; case SpellId.ArcaneBlast00NoCC: s = new ArcaneBlast(this, 0, 0, true, false, false); break; case SpellId.ArcaneBlast10: s = new ArcaneBlast(this, 1, 0); break; case SpellId.ArcaneBlast01: s = new ArcaneBlast(this, 0, 1); break; case SpellId.ArcaneBlast11: s = new ArcaneBlast(this, 1, 1); break; case SpellId.ArcaneBlast11NoCC: s = new ArcaneBlast(this, 1, 1, true, false, false); break; case SpellId.ArcaneBlast22: s = new ArcaneBlast(this, 2, 2); break; case SpellId.ArcaneBlast22NoCC: s = new ArcaneBlast(this, 2, 2, true, false, false); break; case SpellId.ArcaneBlast12: s = new ArcaneBlast(this, 1, 2); break; case SpellId.ArcaneBlast23: s = new ArcaneBlast(this, 2, 3); break; case SpellId.ArcaneBlast30: s = new ArcaneBlast(this, 3, 0); break; case SpellId.ABAM: s = new ABAM(this); break; case SpellId.ABMBAM: s = new ABMBAM(this); break; case SpellId.ABABar: s = new ABABar(this); break; case SpellId.ABAMP: s = new ABAMP(this); break; case SpellId.AB3AMSc: s = new AB3AMSc(this); break; case SpellId.ABAM3Sc: s = new ABAM3Sc(this); break; case SpellId.ABAM3Sc2: s = new ABAM3Sc2(this); break; case SpellId.ABAM3FrB: s = new ABAM3FrB(this); break; case SpellId.ABAM3FrB2: s = new ABAM3FrB2(this); break; case SpellId.ABFrB: s = new ABFrB(this); break; case SpellId.AB3FrB: s = new AB3FrB(this); break; case SpellId.ABFrB3FrB: s = new ABFrB3FrB(this); break; case SpellId.ABFrB3FrB2: s = new ABFrB3FrB2(this); break; case SpellId.ABFrB3FrBSc: s = new ABFrB3FrBSc(this); break; case SpellId.ABFB3FBSc: s = new ABFB3FBSc(this); break; case SpellId.AB3Sc: s = new AB3Sc(this); break; case SpellId.FireballScorch: s = new FireballScorch(this); break; case SpellId.FireballFireBlast: s = new FireballFireBlast(this); break; case SpellId.ABAM3ScCCAM: s = new ABAM3ScCCAM(this); break; case SpellId.ABAM3Sc2CCAM: s = new ABAM3Sc2CCAM(this); break; case SpellId.ABAM3FrBCCAM: s = new ABAM3FrBCCAM(this); break; case SpellId.ABAM3FrBCCAMFail: s = new ABAM3FrBCCAMFail(this); break; case SpellId.ABAM3FrBScCCAM: s = new ABAM3FrBScCCAM(this); break; case SpellId.ABAMCCAM: s = new ABAMCCAM(this); break; case SpellId.ABAM3CCAM: s = new ABAM3CCAM(this); break; case SpellId.ArcaneExplosion: s = new ArcaneExplosion(this); break; case SpellId.FlamestrikeSpammed: s = new Flamestrike(this, true); break; case SpellId.FlamestrikeSingle: s = new Flamestrike(this, false); break; case SpellId.Blizzard: s = new Blizzard(this); break; case SpellId.BlastWave: s = new BlastWave(this); break; case SpellId.DragonsBreath: s = new DragonsBreath(this); break; case SpellId.ConeOfCold: s = new ConeOfCold(this); break; case SpellId.ArcaneBlast0POM: s = new ArcaneBlast(this, 0, 0, false, false, true); break; case SpellId.FireballPOM: s = new Fireball(this, true); break; case SpellId.FrostboltPOM: s = new Frostbolt(this, false, false, true); break; case SpellId.PyroblastPOM: s = new Pyroblast(this, true); break; case SpellId.CustomSpellMix: s = new SpellCustomMix(this); break; } if (s != null) { s.SpellId = spellId; Spells[(int)spellId] = s; } return(s); }