public override void OnRead() { Victoria victoria = ((TheSummoningQuest)System).Victoria; if ( victoria == null ) { System.From.SendMessage( "Internal error: unable to find Victoria. Quest unable to continue." ); System.Cancel(); } else { SummoningAltar altar = victoria.Altar; if ( altar == null ) { System.From.SendMessage( "Internal error: unable to find summoning altar. Quest unable to continue." ); System.Cancel(); } else if ( altar.Daemon == null || !altar.Daemon.Alive ) { BoneDemon daemon = new BoneDemon(); daemon.MoveToWorld( altar.Location, altar.Map ); altar.Daemon = daemon; System.AddObjective( new VanquishDaemonObjective( daemon ) ); } else { victoria.SayTo( System.From, "The devourer has already been summoned." ); ((TheSummoningQuest)System).WaitForSummon = true; } } }
public override void Deserialize( GenericReader reader ) { base.Deserialize( reader ); /*int version = */reader.ReadInt(); m_Daemon = reader.ReadMobile() as BoneDemon; CheckDaemon(); }
public void CheckDaemon() { if ( m_Daemon == null || !m_Daemon.Alive ) { m_Daemon = null; Hue = 0; } else { Hue = 0x66D; } }
public void CheckDaemon() { if (this.m_Daemon == null || !this.m_Daemon.Alive) { this.m_Daemon = null; this.Hue = 0; } else { this.Hue = 0x66D; } }
public VanquishDaemonObjective(BoneDemon daemon) { this.m_Daemon = daemon; }
public override void ChildDeserialize(GenericReader reader) { int version = reader.ReadEncodedInt(); this.m_Daemon = reader.ReadMobile() as BoneDemon; this.m_CorpseWithSkull = reader.ReadItem() as Corpse; }