10 public bool ConsumeGoods
24 if (this.progress != 0)
34 public bool hasSecondReq
38 return this.req2.Count > 0;
43 public override bool CanDeliverToClient(
Chara c)
52 Thing thing =
EClass.pc.things.Find(req.idThing, -1, -1);
53 if (thing ==
null || thing.Num < req.num)
63 public override bool Deliver(
Chara c,
Thing t =
null)
65 if (!this.CanDeliverToClient(c))
69 bool consumeGoods = this.ConsumeGoods;
70 if (this.progress == 0 && this.hasSecondReq)
76 EClass.game.quests.Complete(
this);
78 this.OnProgressComplete();
83 public void OnProgressComplete()
85 if (this.progress == 0)
88 if (!(
id ==
"fiama1"))
104 public override void OnDropReward()
109 base.DropReward(
ThingGen.Create(
"crimAle", -1, -1));
116 base.DropReward(
ThingGen.Create(
"crimAle", -1, -1));
120 public override void OnComplete()
126 questCraft.SetClient(base.chara,
true);
130 if (!(
id ==
"fiama1"))
135 questCraft2.SetClient(base.chara,
true);
140 public override string GetTextProgress()
145 text = text + (text.IsEmpty() ?
"" : Environment.NewLine) +
"progressShowSupply".lang(
EClass.sources.things.map[req.idThing].GetName(req.num),
null,
null,
null,
null);
151 public override string GetDetailText(
bool onJournal =
false)
153 return base.source.GetDetail().Split(
'|', StringSplitOptions.None)[this.progress];
157 public override string GetTalkProgress()
159 return this.GetDetailText(
false);
163 public override string GetTalkComplete()
165 if (this.progress != 1 || !this.hasSecondReq)
167 return base.Parse(base.source.GetText(
"talkComplete",
false));
169 return this.GetDetailText(
false);
193 public Req(
string id,
int n)
201 public string idThing;