Elin Decompiled Documentation EA 23.102 Nightly
Loading...
Searching...
No Matches
QuestDialog.cs
Go to the documentation of this file.
2{
3 public override bool RequireClientInSameZone => false;
4
5 public override void ShowCompleteText()
6 {
7 if (id == "pre_debt_runaway")
8 {
9 SE.WriteJournal();
10 Msg.Say("completeQuest", GetTitle());
11 }
12 else
13 {
14 base.ShowCompleteText();
15 }
16 }
17
18 public override bool CanStartQuest()
19 {
20 if (source.id == "farris_tulip")
21 {
22 return EClass.pc.faction.HasMember("farris");
23 }
24 return true;
25 }
26
27 public override void OnDropReward()
28 {
29 switch (source.id)
30 {
31 case "pre_debt":
32 {
34 if (chara.currentZone == null)
35 {
37 }
38 chara.MoveHome("olvina", 59, 66);
39 chara.noMove = true;
40 chara.AddEditorTag(EditorTag.Invulnerable);
41 EClass.player.flags.loytelEscaped = true;
42 EClass.game.quests.Start("pre_debt_runaway", "farris");
43 break;
44 }
45 case "pre_debt_runaway":
46 EClass.game.quests.Add("exile_meet", "quru").startDate = EClass.world.date.GetRaw() + 43200;
47 break;
48 case "exile_meet":
49 EClass.Branch.AddMemeber(EClass._zone.AddCard(CharaGen.Create("demitas"), EClass.pc.pos.GetNearestPoint(allowBlock: false, allowChara: false)) as Chara);
50 EClass.game.quests.Add("exile_quru", "quru").startDate = EClass.world.date.GetRaw() + 1440;
51 break;
52 case "exile_quru":
53 EClass.game.quests.Add("exile_kettle", "kettle").startDate = EClass.world.date.GetRaw() + 1440;
54 if (!EClass.game.quests.IsCompleted("into_darkness"))
55 {
56 EClass.game.quests.Add("into_darkness", "kettle").startDate = EClass.world.date.GetRaw() + 7200;
57 }
58 break;
59 case "exile_kettle":
60 EClass.game.quests.Add("exile_whisper").startDate = EClass.world.date.GetRaw() + 1440;
61 break;
62 case "exile_whisper":
63 EClass.game.quests.Add("exile_voice").startDate = EClass.world.date.GetRaw() + 1440;
64 break;
65 case "fiama_reward":
66 DropReward(ThingGen.CreateRecipe("workbench2"));
67 DropReward(ThingGen.CreateRecipe("factory_stone"));
68 DropReward(ThingGen.CreateRecipe("stonecutter"));
69 EClass.game.quests.globalList.Add(Quest.Create("fiama_lock").SetClient(EClass.game.cards.globalCharas.Find("fiama"), assignQuest: false));
70 break;
71 case "greatDebt":
72 EClass.game.quests.Add("farris_tulip", "loytel").startDate = EClass.world.date.GetRaw() + 1440;
73 break;
74 case "farris_tulip":
75 EClass.game.quests.Add("kettle_join", "loytel").startDate = EClass.world.date.GetRaw() + 1440;
76 break;
77 case "kettle_join":
78 EClass.Branch.AddMemeber(EClass._zone.AddCard(CharaGen.Create("kettle"), EClass.pc.pos.GetNearestPoint(allowBlock: false, allowChara: false)) as Chara);
79 EClass.Branch.AddMemeber(EClass._zone.AddCard(CharaGen.Create("quru"), EClass.pc.pos.GetNearestPoint(allowBlock: false, allowChara: false)) as Chara);
80 EClass.game.quests.Add("quru_morning", "loytel").startDate = EClass.world.date.GetRaw() + 1440;
81 break;
82 case "quru_morning":
83 EClass.game.quests.Add("quru_sing", "quru").startDate = EClass.world.date.GetRaw() + 2880;
84 EClass.game.quests.Add("vernis_gold", "loytel").startDate = EClass.world.date.GetRaw() + 1440;
85 break;
86 case "quru_sing":
87 EClass.game.quests.Add("quru_past1", "kettle").startDate = EClass.world.date.GetRaw() + 1440;
88 break;
89 case "quru_past1":
90 EClass.game.quests.Add("quru_past2", "farris").startDate = EClass.world.date.GetRaw() + 1440;
91 break;
92 }
93 }
94}
EditorTag
Definition: EditorTag.cs:2
Chara Find(string id)
Definition: CardManager.cs:20
GlobalCharaList globalCharas
Definition: CardManager.cs:46
void AddEditorTag(EditorTag tag)
Definition: Card.cs:2465
Point pos
Definition: Card.cs:55
static Chara Create(string id, int lv=-1)
Definition: CharaGen.cs:17
Definition: Chara.cs:10
Faction faction
Definition: Chara.cs:412
Zone currentZone
Definition: Chara.cs:240
FactionBranch homeBranch
Definition: Chara.cs:889
void MoveHome(string id, int x=-1, int z=-1)
Definition: Chara.cs:3135
int GetRaw(int offsetHours=0)
Definition: Date.cs:322
Definition: EClass.cs:5
static Game game
Definition: EClass.cs:8
static Zone _zone
Definition: EClass.cs:20
static World world
Definition: EClass.cs:40
static FactionBranch Branch
Definition: EClass.cs:22
static Chara pc
Definition: EClass.cs:14
void AddMemeber(Chara c)
bool HasMember(string id, bool includeReserve=true)
Definition: FACTION.cs:275
CardManager cards
Definition: Game.cs:155
QuestManager quests
Definition: Game.cs:179
Definition: Msg.cs:5
static string Say(string idLang, string ref1, string ref2=null, string ref3=null, string ref4=null)
Definition: Msg.cs:58
Point GetNearestPoint(bool allowBlock=false, bool allowChara=true, bool allowInstalled=true, bool ignoreCenter=false)
Definition: Point.cs:595
override void OnDropReward()
Definition: QuestDialog.cs:27
override void ShowCompleteText()
Definition: QuestDialog.cs:5
override bool RequireClientInSameZone
Definition: QuestDialog.cs:3
override bool CanStartQuest()
Definition: QuestDialog.cs:18
Quest Add(string id, string idGlobalChara=null)
Definition: QuestManager.cs:29
bool IsCompleted(string id)
Quest Start(string id, string idGlobalChara)
Definition: QuestManager.cs:41
List< Quest > globalList
Definition: QuestManager.cs:14
override string GetTitle()
Definition: QuestSequence.cs:7
Definition: Quest.cs:7
int startDate
Definition: Quest.cs:58
Chara chara
Definition: Quest.cs:105
Thing DropReward(string id)
Definition: Quest.cs:506
Quest SetClient(Chara c, bool assignQuest=true)
Definition: Quest.cs:380
virtual SourceQuest.Row source
Definition: Quest.cs:107
static Quest Create(string _id, string _idPerson=null, Chara c=null)
Definition: Quest.cs:241
static Thing CreateRecipe(string id)
Definition: ThingGen.cs:144
GameDate date
Definition: World.cs:6
Card AddCard(Card t, Point point)
Definition: Zone.cs:1893