282 lines
5.7 KiB
C#
282 lines
5.7 KiB
C#
using Server.Items;
|
|
using Server.Mobiles;
|
|
|
|
namespace Server.Engines.Quests.Ninja
|
|
{
|
|
public class FindEminoBeginObjective : QuestObjective
|
|
{
|
|
public override object Message => 1063174;
|
|
|
|
public FindEminoBeginObjective()
|
|
{
|
|
}
|
|
|
|
public override void OnComplete()
|
|
{
|
|
System.AddConversation( new FindZoelConversation() );
|
|
}
|
|
}
|
|
|
|
public class FindZoelObjective : QuestObjective
|
|
{
|
|
public override object Message => 1063176;
|
|
|
|
public FindZoelObjective()
|
|
{
|
|
}
|
|
|
|
public override void OnComplete()
|
|
{
|
|
System.AddConversation( new EnterCaveConversation() );
|
|
}
|
|
}
|
|
|
|
public class EnterCaveObjective : QuestObjective
|
|
{
|
|
public override object Message => 1063179;
|
|
|
|
public EnterCaveObjective()
|
|
{
|
|
}
|
|
|
|
public override void CheckProgress()
|
|
{
|
|
if ( System.From.Map == Map.Malas && System.From.InRange( new Point3D( 406, 1141, 0 ), 2 ) )
|
|
Complete();
|
|
}
|
|
|
|
public override void OnComplete()
|
|
{
|
|
System.AddConversation( new SneakPastGuardiansConversation() );
|
|
}
|
|
}
|
|
|
|
public class SneakPastGuardiansObjective : QuestObjective
|
|
{
|
|
private bool m_TaughtHowToUseSkills;
|
|
|
|
public bool TaughtHowToUseSkills
|
|
{
|
|
get => m_TaughtHowToUseSkills;
|
|
set => m_TaughtHowToUseSkills = value;
|
|
}
|
|
|
|
public override object Message => 1063261;
|
|
|
|
public SneakPastGuardiansObjective()
|
|
{
|
|
}
|
|
|
|
public override void CheckProgress()
|
|
{
|
|
if ( System.From.Map == Map.Malas && System.From.InRange( new Point3D( 412, 1123, 0 ), 3 ) )
|
|
Complete();
|
|
}
|
|
|
|
public override void OnComplete()
|
|
{
|
|
System.AddConversation( new UseTeleporterConversation() );
|
|
}
|
|
|
|
public override void ChildDeserialize( GenericReader reader )
|
|
{
|
|
int version = reader.ReadEncodedInt();
|
|
|
|
m_TaughtHowToUseSkills = reader.ReadBool();
|
|
}
|
|
|
|
public override void ChildSerialize( GenericWriter writer )
|
|
{
|
|
writer.WriteEncodedInt( (int) 0 ); // version
|
|
|
|
writer.Write( (bool) m_TaughtHowToUseSkills );
|
|
}
|
|
}
|
|
|
|
public class UseTeleporterObjective : QuestObjective
|
|
{
|
|
public override object Message => 1063183;
|
|
|
|
public UseTeleporterObjective()
|
|
{
|
|
}
|
|
|
|
public override void OnComplete()
|
|
{
|
|
System.AddConversation( new GiveZoelNoteConversation() );
|
|
}
|
|
}
|
|
|
|
public class GiveZoelNoteObjective : QuestObjective
|
|
{
|
|
public override object Message => 1063185;
|
|
|
|
public GiveZoelNoteObjective()
|
|
{
|
|
}
|
|
|
|
public override void OnComplete()
|
|
{
|
|
System.AddConversation( new GainInnInformationConversation() );
|
|
}
|
|
}
|
|
|
|
public class GainInnInformationObjective : QuestObjective
|
|
{
|
|
public override object Message => 1063190;
|
|
|
|
public GainInnInformationObjective()
|
|
{
|
|
}
|
|
|
|
public override void CheckProgress()
|
|
{
|
|
Mobile from = System.From;
|
|
|
|
if ( from.Map == Map.Malas && from.X > 399 && from.X < 408 && from.Y > 1091 && from.Y < 1099 )
|
|
Complete();
|
|
}
|
|
|
|
public override void OnComplete()
|
|
{
|
|
System.AddConversation( new ReturnFromInnConversation() );
|
|
}
|
|
}
|
|
|
|
public class ReturnFromInnObjective : QuestObjective
|
|
{
|
|
public override object Message => 1063197;
|
|
|
|
public ReturnFromInnObjective()
|
|
{
|
|
}
|
|
|
|
public override void OnComplete()
|
|
{
|
|
System.AddConversation( new SearchForSwordConversation() );
|
|
}
|
|
}
|
|
|
|
public class SearchForSwordObjective : QuestObjective
|
|
{
|
|
public override object Message => 1063200;
|
|
|
|
public SearchForSwordObjective()
|
|
{
|
|
}
|
|
|
|
public override void OnComplete()
|
|
{
|
|
System.AddConversation( new HallwayWalkConversation() );
|
|
}
|
|
}
|
|
|
|
public class HallwayWalkObjective : QuestObjective
|
|
{
|
|
private bool m_StolenTreasure;
|
|
|
|
public bool StolenTreasure
|
|
{
|
|
get => m_StolenTreasure;
|
|
set => m_StolenTreasure = value;
|
|
}
|
|
|
|
public override object Message => 1063202;
|
|
|
|
public HallwayWalkObjective()
|
|
{
|
|
}
|
|
|
|
public override void OnComplete()
|
|
{
|
|
System.AddConversation( new ReturnSwordConversation() );
|
|
}
|
|
|
|
public override void ChildDeserialize( GenericReader reader )
|
|
{
|
|
int version = reader.ReadEncodedInt();
|
|
|
|
m_StolenTreasure = reader.ReadBool();
|
|
}
|
|
|
|
public override void ChildSerialize( GenericWriter writer )
|
|
{
|
|
writer.WriteEncodedInt( (int) 0 ); // version
|
|
|
|
writer.Write( (bool) m_StolenTreasure );
|
|
}
|
|
}
|
|
|
|
public class ReturnSwordObjective : QuestObjective
|
|
{
|
|
public override object Message => 1063204;
|
|
|
|
public ReturnSwordObjective()
|
|
{
|
|
}
|
|
|
|
public override void CheckProgress()
|
|
{
|
|
Mobile from = System.From;
|
|
|
|
if ( from.Map != Map.Malas || from.Y > 992 )
|
|
Complete();
|
|
}
|
|
|
|
public override void OnComplete()
|
|
{
|
|
System.AddConversation( new SlayHenchmenConversation() );
|
|
}
|
|
}
|
|
|
|
public class SlayHenchmenObjective : QuestObjective
|
|
{
|
|
public override object Message => 1063206;
|
|
|
|
public SlayHenchmenObjective()
|
|
{
|
|
}
|
|
|
|
public override int MaxProgress => 3;
|
|
|
|
public override void RenderProgress( BaseQuestGump gump )
|
|
{
|
|
if ( !Completed )
|
|
{
|
|
// Henchmen killed:
|
|
gump.AddHtmlLocalized( 70, 260, 270, 100, 1063207, BaseQuestGump.Blue, false, false );
|
|
gump.AddLabel( 70, 280, 0x64, CurProgress.ToString() );
|
|
gump.AddLabel( 100, 280, 0x64, "/" );
|
|
gump.AddLabel( 130, 280, 0x64, MaxProgress.ToString() );
|
|
}
|
|
else
|
|
{
|
|
base.RenderProgress( gump );
|
|
}
|
|
}
|
|
|
|
public override void OnKill( BaseCreature creature, Container corpse )
|
|
{
|
|
if ( creature is Henchman )
|
|
CurProgress++;
|
|
}
|
|
|
|
public override void OnComplete()
|
|
{
|
|
System.AddConversation( new GiveEminoSwordConversation() );
|
|
}
|
|
}
|
|
|
|
public class GiveEminoSwordObjective : QuestObjective
|
|
{
|
|
public override object Message => 1063210;
|
|
|
|
public GiveEminoSwordObjective()
|
|
{
|
|
}
|
|
|
|
public override void OnComplete()
|
|
{
|
|
}
|
|
}
|
|
}
|