Пример #1
0
        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();
            }
        }
Пример #2
0
        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);
            }
        }