Overwrite
Complete Overwrite of the Folder with the free shard. ServUO 57.3 has been added.
This commit is contained in:
561
Scripts/Quests/HaochisTrials/Objectives.cs
Normal file
561
Scripts/Quests/HaochisTrials/Objectives.cs
Normal file
@@ -0,0 +1,561 @@
|
||||
using System;
|
||||
using Server.Items;
|
||||
using Server.Mobiles;
|
||||
|
||||
namespace Server.Engines.Quests.Samurai
|
||||
{
|
||||
public class FindHaochiObjective : QuestObjective
|
||||
{
|
||||
public FindHaochiObjective()
|
||||
{
|
||||
}
|
||||
|
||||
public override object Message
|
||||
{
|
||||
get
|
||||
{
|
||||
// Speak to Daimyo Haochi.
|
||||
return 1063026;
|
||||
}
|
||||
}
|
||||
public override void OnComplete()
|
||||
{
|
||||
this.System.AddConversation(new FirstTrialIntroConversation());
|
||||
}
|
||||
}
|
||||
|
||||
public class FirstTrialIntroObjective : QuestObjective
|
||||
{
|
||||
public FirstTrialIntroObjective()
|
||||
{
|
||||
}
|
||||
|
||||
public override object Message
|
||||
{
|
||||
get
|
||||
{
|
||||
// Follow the green path. The guards will now let you through.
|
||||
return 1063030;
|
||||
}
|
||||
}
|
||||
public override void OnComplete()
|
||||
{
|
||||
this.System.AddConversation(new FirstTrialKillConversation());
|
||||
}
|
||||
}
|
||||
|
||||
public class FirstTrialKillObjective : QuestObjective
|
||||
{
|
||||
private int m_CursedSoulsKilled;
|
||||
private int m_YoungRoninKilled;
|
||||
public FirstTrialKillObjective()
|
||||
{
|
||||
}
|
||||
|
||||
public override object Message
|
||||
{
|
||||
get
|
||||
{
|
||||
// Kill 3 Young Ronin or 3 Cursed Souls. Return to Daimyo Haochi when you have finished.
|
||||
return 1063032;
|
||||
}
|
||||
}
|
||||
public override int MaxProgress
|
||||
{
|
||||
get
|
||||
{
|
||||
return 3;
|
||||
}
|
||||
}
|
||||
public override void OnKill(BaseCreature creature, Container corpse)
|
||||
{
|
||||
if (creature is CursedSoul)
|
||||
{
|
||||
if (this.m_CursedSoulsKilled == 0)
|
||||
this.System.AddConversation(new GainKarmaConversation(true));
|
||||
|
||||
this.m_CursedSoulsKilled++;
|
||||
|
||||
// Cursed Souls killed: ~1_COUNT~
|
||||
this.System.From.SendLocalizedMessage(1063038, this.m_CursedSoulsKilled.ToString());
|
||||
}
|
||||
else if (creature is YoungRonin)
|
||||
{
|
||||
if (this.m_YoungRoninKilled == 0)
|
||||
this.System.AddConversation(new GainKarmaConversation(false));
|
||||
|
||||
this.m_YoungRoninKilled++;
|
||||
|
||||
// Young Ronin killed: ~1_COUNT~
|
||||
this.System.From.SendLocalizedMessage(1063039, this.m_YoungRoninKilled.ToString());
|
||||
}
|
||||
|
||||
this.CurProgress = Math.Max(this.m_CursedSoulsKilled, this.m_YoungRoninKilled);
|
||||
}
|
||||
|
||||
public override void OnComplete()
|
||||
{
|
||||
this.System.AddObjective(new FirstTrialReturnObjective(this.m_CursedSoulsKilled > this.m_YoungRoninKilled));
|
||||
}
|
||||
|
||||
public override void ChildDeserialize(GenericReader reader)
|
||||
{
|
||||
int version = reader.ReadEncodedInt();
|
||||
|
||||
this.m_CursedSoulsKilled = reader.ReadEncodedInt();
|
||||
this.m_YoungRoninKilled = reader.ReadEncodedInt();
|
||||
}
|
||||
|
||||
public override void ChildSerialize(GenericWriter writer)
|
||||
{
|
||||
writer.WriteEncodedInt((int)0); // version
|
||||
|
||||
writer.WriteEncodedInt(this.m_CursedSoulsKilled);
|
||||
writer.WriteEncodedInt(this.m_YoungRoninKilled);
|
||||
}
|
||||
}
|
||||
|
||||
public class FirstTrialReturnObjective : QuestObjective
|
||||
{
|
||||
bool m_CursedSoul;
|
||||
public FirstTrialReturnObjective(bool cursedSoul)
|
||||
{
|
||||
this.m_CursedSoul = cursedSoul;
|
||||
}
|
||||
|
||||
public FirstTrialReturnObjective()
|
||||
{
|
||||
}
|
||||
|
||||
public override object Message
|
||||
{
|
||||
get
|
||||
{
|
||||
// The first trial is complete. Return to Daimyo Haochi.
|
||||
return 1063044;
|
||||
}
|
||||
}
|
||||
public override void OnComplete()
|
||||
{
|
||||
this.System.AddConversation(new SecondTrialIntroConversation(this.m_CursedSoul));
|
||||
}
|
||||
|
||||
public override void ChildDeserialize(GenericReader reader)
|
||||
{
|
||||
int version = reader.ReadEncodedInt();
|
||||
|
||||
this.m_CursedSoul = reader.ReadBool();
|
||||
}
|
||||
|
||||
public override void ChildSerialize(GenericWriter writer)
|
||||
{
|
||||
writer.WriteEncodedInt((int)0); // version
|
||||
|
||||
writer.Write((bool)this.m_CursedSoul);
|
||||
}
|
||||
}
|
||||
|
||||
public class SecondTrialIntroObjective : QuestObjective
|
||||
{
|
||||
public SecondTrialIntroObjective()
|
||||
{
|
||||
}
|
||||
|
||||
public override object Message
|
||||
{
|
||||
get
|
||||
{
|
||||
// Follow the yellow path. The guards will now let you through.
|
||||
return 1063047;
|
||||
}
|
||||
}
|
||||
public override void OnComplete()
|
||||
{
|
||||
this.System.AddConversation(new SecondTrialAttackConversation());
|
||||
}
|
||||
}
|
||||
|
||||
public class SecondTrialAttackObjective : QuestObjective
|
||||
{
|
||||
public SecondTrialAttackObjective()
|
||||
{
|
||||
}
|
||||
|
||||
public override object Message
|
||||
{
|
||||
get
|
||||
{
|
||||
// Choose your opponent and attack one with all your skill.
|
||||
return 1063058;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public class SecondTrialReturnObjective : QuestObjective
|
||||
{
|
||||
private bool m_Dragon;
|
||||
public SecondTrialReturnObjective(bool dragon)
|
||||
{
|
||||
this.m_Dragon = dragon;
|
||||
}
|
||||
|
||||
public SecondTrialReturnObjective()
|
||||
{
|
||||
}
|
||||
|
||||
public override object Message
|
||||
{
|
||||
get
|
||||
{
|
||||
// The second trial is complete. Return to Daimyo Haochi.
|
||||
return 1063229;
|
||||
}
|
||||
}
|
||||
public bool Dragon
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.m_Dragon;
|
||||
}
|
||||
}
|
||||
public override void OnComplete()
|
||||
{
|
||||
this.System.AddConversation(new ThirdTrialIntroConversation(this.m_Dragon));
|
||||
}
|
||||
|
||||
public override void ChildDeserialize(GenericReader reader)
|
||||
{
|
||||
int version = reader.ReadEncodedInt();
|
||||
|
||||
this.m_Dragon = reader.ReadBool();
|
||||
}
|
||||
|
||||
public override void ChildSerialize(GenericWriter writer)
|
||||
{
|
||||
writer.WriteEncodedInt((int)0); // version
|
||||
|
||||
writer.Write((bool)this.m_Dragon);
|
||||
}
|
||||
}
|
||||
|
||||
public class ThirdTrialIntroObjective : QuestObjective
|
||||
{
|
||||
public ThirdTrialIntroObjective()
|
||||
{
|
||||
}
|
||||
|
||||
public override object Message
|
||||
{
|
||||
get
|
||||
{
|
||||
/* The next trial will test your benevolence. Follow the blue path.
|
||||
* The guards will now let you through.
|
||||
*/
|
||||
return 1063061;
|
||||
}
|
||||
}
|
||||
public override void OnComplete()
|
||||
{
|
||||
this.System.AddConversation(new ThirdTrialKillConversation());
|
||||
}
|
||||
}
|
||||
|
||||
public class ThirdTrialKillObjective : QuestObjective
|
||||
{
|
||||
public ThirdTrialKillObjective()
|
||||
{
|
||||
}
|
||||
|
||||
public override object Message
|
||||
{
|
||||
get
|
||||
{
|
||||
/* Use your Honorable Execution skill to finish off the wounded wolf.
|
||||
* Double click the icon in your Book of Bushido to activate the skill.
|
||||
* When you are done, return to Daimyo Haochi.
|
||||
*/
|
||||
return 1063063;
|
||||
}
|
||||
}
|
||||
public override void OnKill(BaseCreature creature, Container corpse)
|
||||
{
|
||||
if (creature is InjuredWolf)
|
||||
this.Complete();
|
||||
}
|
||||
|
||||
public override void OnComplete()
|
||||
{
|
||||
this.System.AddObjective(new ThirdTrialReturnObjective());
|
||||
}
|
||||
}
|
||||
|
||||
public class ThirdTrialReturnObjective : QuestObjective
|
||||
{
|
||||
public ThirdTrialReturnObjective()
|
||||
{
|
||||
}
|
||||
|
||||
public override object Message
|
||||
{
|
||||
get
|
||||
{
|
||||
// Return to Daimyo Haochi.
|
||||
return 1063064;
|
||||
}
|
||||
}
|
||||
public override void OnComplete()
|
||||
{
|
||||
this.System.AddConversation(new FourthTrialIntroConversation());
|
||||
}
|
||||
}
|
||||
|
||||
public class FourthTrialIntroObjective : QuestObjective
|
||||
{
|
||||
public FourthTrialIntroObjective()
|
||||
{
|
||||
}
|
||||
|
||||
public override object Message
|
||||
{
|
||||
get
|
||||
{
|
||||
// Follow the red path and pass through the guards to the entrance of the fourth trial.
|
||||
return 1063066;
|
||||
}
|
||||
}
|
||||
public override void OnComplete()
|
||||
{
|
||||
this.System.AddConversation(new FourthTrialCatsConversation());
|
||||
}
|
||||
}
|
||||
|
||||
public class FourthTrialCatsObjective : QuestObjective
|
||||
{
|
||||
public FourthTrialCatsObjective()
|
||||
{
|
||||
}
|
||||
|
||||
public override object Message
|
||||
{
|
||||
get
|
||||
{
|
||||
/* Give the gypsy gold or hunt one of the cats to eliminate the undue
|
||||
* need it has placed on the gypsy.
|
||||
*/
|
||||
return 1063068;
|
||||
}
|
||||
}
|
||||
public override void OnKill(BaseCreature creature, Container corpse)
|
||||
{
|
||||
if (creature is DiseasedCat)
|
||||
{
|
||||
this.Complete();
|
||||
this.System.AddObjective(new FourthTrialReturnObjective(true));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public class FourthTrialReturnObjective : QuestObjective
|
||||
{
|
||||
private bool m_KilledCat;
|
||||
public FourthTrialReturnObjective(bool killedCat)
|
||||
{
|
||||
this.m_KilledCat = killedCat;
|
||||
}
|
||||
|
||||
public FourthTrialReturnObjective()
|
||||
{
|
||||
}
|
||||
|
||||
public override object Message
|
||||
{
|
||||
get
|
||||
{
|
||||
// You have made your choice. Return now to Daimyo Haochi.
|
||||
return 1063242;
|
||||
}
|
||||
}
|
||||
public bool KilledCat
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.m_KilledCat;
|
||||
}
|
||||
}
|
||||
public override void OnComplete()
|
||||
{
|
||||
this.System.AddConversation(new FifthTrialIntroConversation(this.m_KilledCat));
|
||||
}
|
||||
|
||||
public override void ChildDeserialize(GenericReader reader)
|
||||
{
|
||||
int version = reader.ReadEncodedInt();
|
||||
|
||||
this.m_KilledCat = reader.ReadBool();
|
||||
}
|
||||
|
||||
public override void ChildSerialize(GenericWriter writer)
|
||||
{
|
||||
writer.WriteEncodedInt((int)0); // version
|
||||
|
||||
writer.Write((bool)this.m_KilledCat);
|
||||
}
|
||||
}
|
||||
|
||||
public class FifthTrialIntroObjective : QuestObjective
|
||||
{
|
||||
private bool m_StolenTreasure;
|
||||
public FifthTrialIntroObjective()
|
||||
{
|
||||
}
|
||||
|
||||
public override object Message
|
||||
{
|
||||
get
|
||||
{
|
||||
// Retrieve Daimyo Haochi<68>s katana from the treasure room.
|
||||
return 1063072;
|
||||
}
|
||||
}
|
||||
public bool StolenTreasure
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.m_StolenTreasure;
|
||||
}
|
||||
set
|
||||
{
|
||||
this.m_StolenTreasure = value;
|
||||
}
|
||||
}
|
||||
public override void OnComplete()
|
||||
{
|
||||
this.System.AddConversation(new FifthTrialReturnConversation());
|
||||
}
|
||||
|
||||
public override void ChildDeserialize(GenericReader reader)
|
||||
{
|
||||
int version = reader.ReadEncodedInt();
|
||||
|
||||
this.m_StolenTreasure = reader.ReadBool();
|
||||
}
|
||||
|
||||
public override void ChildSerialize(GenericWriter writer)
|
||||
{
|
||||
writer.WriteEncodedInt((int)0); // version
|
||||
|
||||
writer.Write((bool)this.m_StolenTreasure);
|
||||
}
|
||||
}
|
||||
|
||||
public class FifthTrialReturnObjective : QuestObjective
|
||||
{
|
||||
public FifthTrialReturnObjective()
|
||||
{
|
||||
}
|
||||
|
||||
public override object Message
|
||||
{
|
||||
get
|
||||
{
|
||||
// Give the sword to Daimyo Haochi.
|
||||
return 1063073;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public class SixthTrialIntroObjective : QuestObjective
|
||||
{
|
||||
public SixthTrialIntroObjective()
|
||||
{
|
||||
}
|
||||
|
||||
public override object Message
|
||||
{
|
||||
get
|
||||
{
|
||||
// Light one of the candles near the altar and return to Daimyo Haochi.
|
||||
return 1063078;
|
||||
}
|
||||
}
|
||||
public override void OnComplete()
|
||||
{
|
||||
this.System.AddObjective(new SixthTrialReturnObjective());
|
||||
}
|
||||
}
|
||||
|
||||
public class SixthTrialReturnObjective : QuestObjective
|
||||
{
|
||||
public SixthTrialReturnObjective()
|
||||
{
|
||||
}
|
||||
|
||||
public override object Message
|
||||
{
|
||||
get
|
||||
{
|
||||
// You have done as requested. Return to Daimyo Haochi.
|
||||
return 1063252;
|
||||
}
|
||||
}
|
||||
public override void OnComplete()
|
||||
{
|
||||
this.System.AddConversation(new SeventhTrialIntroConversation());
|
||||
}
|
||||
}
|
||||
|
||||
public class SeventhTrialIntroObjective : QuestObjective
|
||||
{
|
||||
public SeventhTrialIntroObjective()
|
||||
{
|
||||
}
|
||||
|
||||
public override object Message
|
||||
{
|
||||
get
|
||||
{
|
||||
/* Three young Ninja must be dealt with. Your job is to kill them.
|
||||
* When you have done so, return to Daimyo Haochi.
|
||||
*/
|
||||
return 1063080;
|
||||
}
|
||||
}
|
||||
public override int MaxProgress
|
||||
{
|
||||
get
|
||||
{
|
||||
return 3;
|
||||
}
|
||||
}
|
||||
public override void OnKill(BaseCreature creature, Container corpse)
|
||||
{
|
||||
if (creature is YoungNinja)
|
||||
this.CurProgress++;
|
||||
}
|
||||
|
||||
public override void OnComplete()
|
||||
{
|
||||
this.System.AddObjective(new SeventhTrialReturnObjective());
|
||||
}
|
||||
}
|
||||
|
||||
public class SeventhTrialReturnObjective : QuestObjective
|
||||
{
|
||||
public SeventhTrialReturnObjective()
|
||||
{
|
||||
}
|
||||
|
||||
public override object Message
|
||||
{
|
||||
get
|
||||
{
|
||||
// The executions are complete. Return to the Daimyo.
|
||||
return 1063253;
|
||||
}
|
||||
}
|
||||
public override void OnComplete()
|
||||
{
|
||||
this.System.AddConversation(new EndConversation());
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user