Elin Decompiled Documentation EA 23.102 Nightly
Loading...
Searching...
No Matches
DramaOutcome.cs
Go to the documentation of this file.
1using System.Collections.Generic;
2using UnityEngine;
3
4public class DramaOutcome : EMono
5{
6 public static string idJump;
7
9
11
12 public Person tg => manager.tg;
13
14 public Chara cc => tg.chara;
15
16 public void StartNewGame()
17 {
18 if ((bool)LayerTitle.actor)
19 {
21 }
22 }
23
24 public void StartNewGame2()
25 {
26 if ((bool)LayerTitle.actor)
27 {
30 EMono.pc.global.transition = new ZoneTransition
31 {
32 state = ZoneTransition.EnterState.Exact,
34 z = EMono.game.Prologue.startZ
35 };
36 }
37 }
38
39 public void PutOutFire()
40 {
42 {
43 EMono._zone.AddCard(ThingGen.Create("dish_soup"), item.pos.GetRandomNeighbor());
44 }
45 }
46
47 public void OnClaimLand()
48 {
49 Chara c = EMono.game.cards.globalCharas.Find("ashland");
50 EMono.game.quests.globalList.Add(Quest.Create("sharedContainer").SetClient(c, assignQuest: false));
51 EMono.game.quests.globalList.Add(Quest.Create("crafter").SetClient(c, assignQuest: false));
52 EMono.game.quests.globalList.Add(Quest.Create("defense").SetClient(c, assignQuest: false));
53 EMono.game.quests.Get<QuestHome>().ChangePhase(2);
54 AddMaid();
55 }
56
57 public void AddMaid()
58 {
59 }
60
61 public void convert_Jure()
62 {
65 {
66 EMono.player.flags.gotJurePillow = true;
67 EMono.player.DropReward(ThingGen.Create("pillow_jure"));
68 }
69 }
70
72 {
74 }
75
77 {
78 Recipe.DropIngredients("container_shipping", "palm", 6);
79 }
80
82 {
83 EMono.player.DropReward(ThingGen.CreateScroll(8220), silent: true).c_IDTState = 0;
85 }
86
88 {
89 EMono.game.quests.Get<QuestExploration>().ChangePhase(1);
91 cc.RemoveEditorTag(EditorTag.InvulnerableToMobs);
92 cc.RemoveEditorTag(EditorTag.Invulnerable);
93 cc.homeZone = EMono.game.StartZone;
95 }
96
98 {
99 EMono.game.quests.Get<QuestExploration>().ChangePhase(2);
100 if (EMono.Branch == null)
101 {
103 }
105 if (EMono.game.quests.Main == null)
106 {
107 EMono.game.quests.Start("main");
108 }
110 }
111
113 {
115 if (quest == null)
116 {
117 quest = EMono.game.quests.Start("exploration", EMono.game.cards.globalCharas.Find("ashland"), assignQuest: false);
118 }
119 quest.ChangePhase(5);
120 Chara chara = EMono.game.cards.globalCharas.Find("fiama");
121 EMono._zone.AddCard(ThingGen.CreateScroll(8220).Identify(show: false), chara.pos);
123 chara.RemoveEditorTag(EditorTag.AINoMove);
124 }
125
127 {
128 Chara chara = EMono.game.cards.globalCharas.Find("ashland");
129 chara.MoveHome("lothria", 40, 49);
130 EMono.game.quests.RemoveAll(chara);
131 chara = EMono.game.cards.globalCharas.Find("fiama");
132 chara.MoveHome("lothria", 46, 56);
133 EMono.game.quests.RemoveAll(chara);
134 if (EMono.game.quests.Main == null)
135 {
136 EMono.game.quests.Start("main");
137 }
139 }
140
141 public void QuestCraft_Drop1()
142 {
144 }
145
146 public void QuestDefense_0()
147 {
148 Prologue prologue = EMono.game.Prologue;
149 Card card = EMono._zone.AddChara("punk", prologue.posPunk.x, prologue.posPunk.y);
150 card.things.DestroyAll();
151 (EMono._zone.AddThing("gallows", prologue.posPunk.x, prologue.posPunk.y).Install().trait as TraitShackle).Restrain(card);
153 }
154
156 {
158 }
159
160 public void QuestDefense_1()
161 {
162 Prologue prologue = EMono.game.Prologue;
163 Card tc = EMono._zone.AddChara("boar", prologue.posPunk.x + 1, prologue.posPunk.y);
164 (EMono._zone.AddThing("gallows", prologue.posPunk.x + 1, prologue.posPunk.y).Install().trait as TraitShackle).Restrain(tc);
166 EMono.player.DropReward(ThingGen.Create("330").SetNum(3), silent: true).Identify(show: false);
167 EMono.player.DropReward(ThingGen.Create("331").SetNum(3), silent: true).Identify(show: false);
169 }
170
171 public void QuestDefense_2()
172 {
173 }
174
175 public void QuestDebt_reward()
176 {
177 EMono.game.quests.Get<QuestDebt>().GiveReward();
178 }
179
180 public void Tutorial1()
181 {
182 Thing t = ThingGen.Create("log");
183 Point point = new Point(53, 52);
184 EMono._zone.AddCard(t, point).SetPlaceState(PlaceState.installed);
185 t = ThingGen.Create("crimAle");
186 EMono._zone.AddCard(t, point).SetPlaceState(PlaceState.installed);
187 }
188
189 public void WelcomeMsg()
190 {
191 }
192
193 public void chara_hired()
194 {
196 {
197 EMono.pc.ModCurrency(-CalcGold.Hire(cc), "money2");
198 cc.SetBool(18, enable: true);
199 }
200 EMono.Sound.Play("good");
202 }
203
204 public void chara_hired_ticket()
205 {
206 EMono.pc.things.Find("ticket_resident").ModNum(-1);
207 EMono.Sound.Play("good");
208 cc.SetBool(18, enable: true);
210 }
211
212 public void nerun_gift()
213 {
214 Dialog.Gift("", true, ThingGen.Create("rp1"));
215 }
216
217 public void nerun_gift2()
218 {
219 Dialog.Gift("", true, ThingGen.Create("rp1"));
220 }
221
222 public void nerun_gift3()
223 {
224 List<Card> list = new List<Card>();
225 list.Add(ThingGen.Create("rp1"));
226 list.Add(ThingGen.Create("rp2"));
227 list.Add(ThingGen.Create("rp3"));
228 list.Add(ThingGen.Create("rp4"));
229 list.Add(ThingGen.Create("rp5"));
230 Dialog.Gift("", autoAdd: true, list);
231 }
232
233 public void fiama_gold()
234 {
236 if (EMono.game.idPrologue == 2)
237 {
239 }
240 }
241
242 public void fiama_pet1()
243 {
244 Chara c = CharaGen.Create("dog");
245 fiama_pet(c);
246 }
247
248 public void fiama_pet2()
249 {
250 Chara c = CharaGen.Create("cat");
251 fiama_pet(c);
252 }
253
254 public void fiama_pet3()
255 {
256 Chara c = CharaGen.Create("bearCub");
257 fiama_pet(c);
258 }
259
260 public void fiama_pet4()
261 {
262 Chara c = CharaGen.Create("shojo");
263 fiama_pet(c);
264 }
265
266 private void fiama_pet(Chara c)
267 {
269 c.MakeAlly();
270 c.SetInt(100, 1);
271 }
272
273 public void fiama_starter_gift()
274 {
276 Thing thing = null;
277 switch (lastChoice.index)
278 {
279 case 0:
280 thing = ThingGen.Create("ring_decorative").SetNoSell();
281 thing.elements.SetBase(65, 10);
282 EMono.player.DropReward(thing);
283 break;
284 case 1:
285 EMono.player.DropReward(ThingGen.Create("ticket_resident").SetNoSell());
287 break;
288 case 2:
289 thing = ThingGen.Create("boots_").SetNoSell();
290 thing.elements.SetBase(65, 5);
291 thing.elements.SetBase(407, 5);
292 EMono.player.DropReward(thing);
293 break;
294 case 3:
296 break;
297 case 4:
298 {
299 for (int i = 0; i < 10; i++)
300 {
302 }
303 break;
304 }
305 default:
306 cc.DoHostileAction(EMono.pc, immediate: true);
307 cc.calmCheckTurn = 100;
308 break;
309 }
310 }
311
312 public void revive_pet()
313 {
314 foreach (Chara member in EMono.pc.homeBranch.members)
315 {
316 if (member.isDead && member.GetInt(100) != 0)
317 {
318 member.GetRevived();
319 }
320 }
321 cc.ModAffinity(EMono.pc, -2);
322 }
323
324 public void melilith_friend()
325 {
326 if (cc.id == "melilith" && EMono.game.quests.completedIDs.Contains("melilith"))
327 {
328 cc.MakeAlly();
329 }
330 }
331
332 public void sister_friend()
333 {
334 if (cc.id == "olderyoungersister")
335 {
336 cc.MakeAlly();
337 }
338 EMono.pc.ModCurrency(-10000);
339 cc.Say("hug", cc, EMono.pc);
340 }
341
342 public void sister_change()
343 {
344 cc.idSkin = ((cc.idSkin != 1) ? 1 : 2);
345 }
346
347 public void get_scratch()
348 {
350 EMono.game.dateScratch = EMono.world.date.GetRaw(24);
351 }
352
353 public void poppy_found()
354 {
355 if (cc.id == "poppy")
356 {
357 cc.MakeAlly();
358 }
359 EMono.game.quests.Get("puppy").NextPhase();
360 Msg.Say("npc_rescue", cc);
361 cc.RemoveEditorTag(EditorTag.InvulnerableToMobs);
362 cc.RemoveEditorTag(EditorTag.Invulnerable);
363 }
364
365 public void event_swordkeeper()
366 {
367 EMono._zone.AddChara("swordkeeper", 45, 52);
368 }
369
370 public static bool If(DramaChoice item, Chara c)
371 {
372 _ = item.IF.Split('/')[0] == "costHire";
373 return true;
374 }
375
376 public void guild_trial()
377 {
379 {
380 EMono.game.quests.Start("guild_merchant", cc, assignQuest: false);
381 }
382 else
383 {
384 (cc.trait as TraitGuildDoorman).GiveTrial();
385 }
386 }
387
388 public void guild_join()
389 {
391 {
392 (cc.trait as TraitGuildDoorman).OnJoinGuild();
393 }
394 Msg.Say("guild_join", Guild.Current.Name);
395 SE.Play("questComplete");
396 Guild.Current.relation.type = FactionRelation.RelationType.Member;
398 }
399
400 public void guild_mageTrial()
401 {
403 EMono.pc.things.Find("letter_trial")?.ModNum(-1);
404 }
405
406 public void guild_promote()
407 {
410 }
411
412 public bool check_sketch()
413 {
414 Thing thing = EMono.pc.things.Find("sketch_old");
415 if (thing == null)
416 {
417 return false;
418 }
419 int num = thing.Num;
420 thing.Destroy();
421 bool flag = false;
422 for (int i = 0; i < num; i++)
423 {
424 for (int j = 0; j < 5; j++)
425 {
426 int item = EMono.core.refs.dictSketches.Keys.RandomItem();
427 if (!EMono.player.sketches.Contains(item))
428 {
430 Msg.Say("add_sketch", item.ToString() ?? "");
431 flag = true;
432 break;
433 }
434 }
435 }
436 if (flag)
437 {
438 SE.WriteJournal();
439 return true;
440 }
441 return false;
442 }
443
445 {
446 int count = EMono.player.sketches.Count;
447 int num = count / 10;
448 if (num >= 29)
449 {
450 num = 29;
451 }
452 Debug.Log(count + "/" + num + "/" + EMono.player.lastFelmeraReward);
453 return num;
454 }
455
456 public bool check_sketch2()
457 {
459 }
460
461 public List<Thing> ListFelmeraBarter()
462 {
463 List<Thing> list = new List<Thing>();
464 int felmeraRewardIndex = GetFelmeraRewardIndex();
465 for (int i = 0; i < felmeraRewardIndex; i++)
466 {
467 Thing thing = ThingGen.Create("painting_reward");
468 thing.idSkin = i;
469 list.Add(thing);
470 }
471 return list;
472 }
473
474 public void give_sketch_reward()
475 {
476 int felmeraRewardIndex = GetFelmeraRewardIndex();
477 for (int i = EMono.player.lastFelmeraReward; i < felmeraRewardIndex; i++)
478 {
479 Thing thing = ThingGen.Create("painting_reward");
480 thing.idSkin = i;
481 EMono.player.DropReward(thing);
482 }
483 EMono.player.lastFelmeraReward = felmeraRewardIndex;
484 }
485
487 {
488 foreach (int key in EMono.core.refs.dictSketches.Keys)
489 {
490 if (key >= 500 && key < 700)
491 {
492 EMono.player.sketches.Add(key);
493 }
494 }
495 Msg.Say("add_sketch_special");
496 SE.WriteJournal();
497 EMono.pc.things.Find("sketch_special").Destroy();
498 }
499}
EditorTag
Definition: EditorTag.cs:2
PlaceState
Definition: PlaceState.cs:2
void SetBool(int id, bool enable)
Definition: BaseCard.cs:20
int GetInt(int id, int? defaultInt=null)
Definition: BaseCard.cs:25
void SetInt(int id, int value=0)
Definition: BaseCard.cs:39
List< Action > actionsNextFrame
Definition: BaseCore.cs:31
static int Hire(Chara c)
Definition: CalcGold.cs:8
static void SetNormalRarity(bool fixedMat=false)
Chara Find(string id)
Definition: CardManager.cs:20
GlobalCharaList globalCharas
Definition: CardManager.cs:46
Definition: Card.cs:11
void RemoveEditorTag(EditorTag tag)
Definition: Card.cs:2470
void SetPlaceState(PlaceState newState, bool byPlayer=false)
Definition: Card.cs:3454
ElementContainerCard elements
Definition: Card.cs:37
string id
Definition: Card.cs:31
Thing SetNum(int a)
Definition: Card.cs:3242
int c_IDTState
Definition: Card.cs:1193
Point pos
Definition: Card.cs:55
Trait trait
Definition: Card.cs:49
void ModCurrency(int a, string id="money")
Definition: Card.cs:3638
void Destroy()
Definition: Card.cs:4538
ThingContainer things
Definition: Card.cs:34
Thing SetNoSell()
Definition: Card.cs:3256
Card Install()
Definition: Card.cs:3448
Thing Add(string id, int num=1, int lv=1)
Definition: Card.cs:2878
int Num
Definition: Card.cs:154
void ModNum(int a, bool notify=true)
Definition: Card.cs:3262
void Say(string lang, string ref1=null, string ref2=null)
Definition: Card.cs:6046
static Chara Create(string id, int lv=-1)
Definition: CharaGen.cs:17
Definition: Chara.cs:10
void GetRevived()
Definition: Chara.cs:4628
void ModAffinity(Chara c, int a, bool show=true, bool showOnlyEmo=false)
Definition: Chara.cs:7166
void MakeAlly(bool msg=true)
Definition: Chara.cs:2004
void DoHostileAction(Card _tg, bool immediate=false)
Definition: Chara.cs:5707
FactionBranch homeBranch
Definition: Chara.cs:889
void MoveHome(string id, int x=-1, int z=-1)
Definition: Chara.cs:3135
bool isDead
Definition: Chara.cs:374
void MoveZone(string alias)
Definition: Chara.cs:3010
UD_Int_String dictSketches
Definition: CoreRef.cs:397
CoreRef refs
Definition: Core.cs:51
int GetRaw(int offsetHours=0)
Definition: Date.cs:322
Definition: Dialog.cs:7
static Dialog Gift(string langHeader, bool autoAdd, params Card[] cards)
Definition: Dialog.cs:420
static DramaChoice lastChoice
Definition: DramaChoice.cs:5
DramaSequence sequence
Definition: DramaManager.cs:27
void QuestExploration_MeetFarris()
Definition: DramaOutcome.cs:87
int GetFelmeraRewardIndex()
void QuestExploration_AfterComplete()
void AddMaid()
Definition: DramaOutcome.cs:57
void convert_Jure()
Definition: DramaOutcome.cs:61
void QuestDefense_0()
void fiama_pet(Chara c)
static string idJump
Definition: DramaOutcome.cs:6
void fiama_pet4()
void sister_friend()
void melilith_friend()
void fiama_pet1()
void event_swordkeeper()
void QuestExploration_Drop1()
Definition: DramaOutcome.cs:81
void fiama_pet3()
static bool If(DramaChoice item, Chara c)
void WelcomeMsg()
void QuestShippingChest_Drop1()
Definition: DramaOutcome.cs:76
void QuestExploration_AfterCrystal()
void give_sketch_special()
void QuestCraft_Drop1()
void guild_mageTrial()
void QuestSharedContainer_Drop1()
Definition: DramaOutcome.cs:71
void StartNewGame()
Definition: DramaOutcome.cs:16
void guild_promote()
DramaSequence sequence
Definition: DramaOutcome.cs:10
DramaManager manager
Definition: DramaOutcome.cs:8
bool check_sketch()
void nerun_gift2()
void QuestExploration_MeetFarris2()
Definition: DramaOutcome.cs:97
void fiama_gold()
void QuestDefense_1()
void revive_pet()
void QuestDefense_2()
void QuestDebt_reward()
void poppy_found()
void nerun_gift()
void nerun_gift3()
void guild_trial()
void chara_hired()
void fiama_pet2()
void sister_change()
void guild_join()
bool check_sketch2()
void PutOutFire()
Definition: DramaOutcome.cs:39
void OnClaimLand()
Definition: DramaOutcome.cs:47
void chara_hired_ticket()
void fiama_starter_gift()
void StartNewGame2()
Definition: DramaOutcome.cs:24
void give_sketch_reward()
List< Thing > ListFelmeraBarter()
void QuestVernis_DropRecipe()
void get_scratch()
void Tutorial1()
Definition: EMono.cs:4
static Core core
Definition: EMono.cs:5
static Chara pc
Definition: EMono.cs:13
static World world
Definition: EMono.cs:37
static Player player
Definition: EMono.cs:11
static Zone _zone
Definition: EMono.cs:19
static Game game
Definition: EMono.cs:7
static SoundManager Sound
Definition: EMono.cs:39
static FactionBranch Branch
Definition: EMono.cs:21
static Map _map
Definition: EMono.cs:17
static SourceManager sources
Definition: EMono.cs:41
Element SetBase(string alias, int v, int potential=0)
bool IsRecruit(Chara c)
List< Chara > members
void Recruit(Chara c)
GuildMerchant Merchant
string Name
Definition: FACTION.cs:148
FactionRelation relation
Definition: FACTION.cs:124
ReligionManager religions
Definition: Game.cs:158
Prologue Prologue
Definition: Game.cs:257
CardManager cards
Definition: Game.cs:155
QuestManager quests
Definition: Game.cs:179
void StartNewGame()
Definition: Game.cs:766
FactionManager factions
Definition: Game.cs:161
Zone StartZone
Definition: Game.cs:269
int idPrologue
Definition: Game.cs:200
Definition: Guild.cs:2
void RefreshDevelopment()
Definition: Guild.cs:62
static QuestGuild CurrentQuest
Definition: Guild.cs:31
static Guild Current
Definition: Guild.cs:4
static Guild GetCurrentGuild()
Definition: Guild.cs:41
static void KillActor()
Definition: LayerTitle.cs:191
static EmbarkActor actor
Definition: LayerTitle.cs:25
void TrySmoothPick(Cell cell, Thing t, Chara c)
Definition: Map.cs:1791
PropsManager props
Definition: Map.cs:91
Definition: Msg.cs:5
static string Say(string idLang, string ref1, string ref2=null, string ref3=null, string ref4=null)
Definition: Msg.cs:58
Definition: Person.cs:6
Chara chara
Definition: Person.cs:36
bool gotJurePillow
Definition: Player.cs:426
Flags flags
Definition: Player.cs:895
int lastFelmeraReward
Definition: Player.cs:742
HashSet< int > sketches
Definition: Player.cs:871
Thing DropReward(Thing t, bool silent=false)
Definition: Player.cs:2320
Definition: Point.cs:9
string idStartZone
Definition: Prologue.cs:7
Vector2Int posPunk
Definition: Prologue.cs:25
int startX
Definition: Prologue.cs:9
PropsInstalled installed
Definition: PropsManager.cs:8
TraitManager traits
Definition: Props.cs:18
HashSet< string > completedIDs
Definition: QuestManager.cs:17
QuestMain Main
Definition: QuestManager.cs:25
Quest Start(string id, string idGlobalChara)
Definition: QuestManager.cs:41
List< Quest > globalList
Definition: QuestManager.cs:14
Quest Get(string id)
void RemoveAll(Chara c)
Definition: QuestManager.cs:86
Definition: Quest.cs:7
void NextPhase()
Definition: Quest.cs:567
void ChangePhase(int a)
Definition: Quest.cs:572
Quest SetClient(Chara c, bool assignQuest=true)
Definition: Quest.cs:380
static Quest Create(string _id, string _idPerson=null, Chara c=null)
Definition: Quest.cs:241
Definition: Recipe.cs:7
static void DropIngredients(string id, string idMatMain, int num=1)
Definition: Recipe.cs:348
ReligionHealing Healing
ConvertType
Definition: Religion.cs:8
void JoinFaith(Chara c, ConvertType type=ConvertType.Default)
Definition: Religion.cs:386
SourceMaterial materials
Thing Find(int uid)
static Thing CreateRawMaterial(SourceMaterial.Row m)
Definition: ThingGen.cs:68
static Thing CreateRecipe(string id)
Definition: ThingGen.cs:144
static Thing CreateScroll(int ele, int num=1)
Definition: ThingGen.cs:163
static Thing Create(string id, int idMat=-1, int lv=-1)
Definition: ThingGen.cs:53
Definition: Thing.cs:8
Thing Identify(bool show=true, IDTSource idtSource=IDTSource.Identify)
Definition: Thing.cs:1959
TraitSet GetTraitSet(Type t)
Definition: TraitManager.cs:94
ICollection< TKey > Keys
Definition: UDictionary.cs:25
GameDate date
Definition: World.cs:6
Card AddChara(string id, int x, int z)
Definition: Zone.cs:1878
Card AddThing(string id, int x, int z)
Definition: Zone.cs:1883
void ClaimZone(bool debug=false)
Definition: Zone.cs:1659
Card AddCard(Card t, Point point)
Definition: Zone.cs:1893