public override void Execute() { Debug.Assert(DobjArtifact != null || DobjMonster != null); if (BlastSpell || ActorMonster.Weapon > 0) { // Attack Bozworth if (DobjMonster != null && DobjMonster.Uid == 20) { gEngine.PrintEffectDesc(20); DobjMonster.SetInLimbo(); NextState = Globals.CreateInstance <IStartState>(); } // Attack/BLAST backpack else if (DobjArtifact != null && DobjArtifact.Uid == 13) { PrintDontNeedTo(); NextState = Globals.CreateInstance <IStartState>(); } else { base.Execute(); } } else { base.Execute(); } }
public override void ProcessEvents(EventType eventType) { // BLAST Bozworth if (eventType == EventType.AfterCastSpellCheck && DobjMonster != null && DobjMonster.Uid == 20) { gEngine.PrintEffectDesc(21); DobjMonster.SetInLimbo(); NextState = Globals.CreateInstance <IStartState>(); GotoCleanup = true; } else { base.ProcessEvents(eventType); } }