Elin Decompiled Documentation EA 23.246 Nightly
Loading...
Searching...
No Matches
CoreDebug.cs
Go to the documentation of this file.
1using System;
2using System.Collections.Generic;
3using System.Linq;
4using ReflexCLI.Attributes;
5using Steamworks;
6using UnityEngine;
7
8[ConsoleCommandClassCustomizer("")]
9public class CoreDebug : EScriptable
10{
11 [Serializable]
12 public class StartSetting
13 {
14 public string race;
15
16 public string job;
17
18 public int lv;
19 }
20
21 public enum DebugHotkey
22 {
23 None,
24 Block,
25 Item,
26 Decal,
27 Act,
28 Test,
29 Anime
30 }
31
32 public enum StartLoadout
33 {
34 New,
35 AllItem,
37 }
38
39 public enum StartParty
40 {
41 None,
42 Farris,
43 Full
44 }
45
46 public enum StartScene
47 {
48 Title,
50 Zone,
51 Home,
58 Tefra
59 }
60
61 [Serializable]
62 public class MatColorTest
63 {
64 public bool enable;
65
66 public Color color;
67
68 public int matColor;
69
71
72 public void Update()
73 {
74 foreach (SourceMaterial.Row row in EClass.sources.materials.rows)
75 {
76 if (row != MATERIAL.sourceWaterSea)
77 {
78 MatColors matColors = profile.matColors.TryGetValue(row.alias);
79 row.matColor = matColors.main;
80 row.altColor = matColors.alt;
81 }
82 }
83 }
84 }
85
86 public class DebugCommand
87 {
88 public Action action;
89
90 public int cat;
91
92 public string name;
93 }
94
95 [Header("Quick Start Setup")]
97
99
101
102 public int startHour;
103
105
106 public string startZone;
107
108 [Header("System(Release)")]
109 public bool showSceneSelector;
110
111 [Header("System(Release)")]
112 public bool skipModSync;
113
115
116 [Header("System")]
117 public bool ignorePool;
118
119 [Header("System")]
120 public bool resetPlayerConfig;
121
122 public bool dontUseThread;
123
124 public bool useNewConfig;
125
126 public bool ignoreAutoSave;
127
128 public bool alwaysResetWindow;
129
130 public bool validateData;
131
132 public bool dontCompressSave;
133
134 public bool skipMod;
135
136 public string command;
137
138 [Header("Input")]
139 public bool debugInput;
140
141 public bool keypadDebug;
142
144
145 [Header("Util")]
146 public int advanceMin;
147
148 public bool testLOS;
149
150 public bool testLOS2;
151
152 public bool debugProps;
153
154 public bool revealMap;
155
156 public bool debugHoard;
157
158 public bool revealInner;
159
160 public bool ignorePopup;
161
162 public bool skipEvent;
163
164 public bool skipNerun;
165
166 public bool showTone;
167
168 public bool showExtra;
169
170 public bool test;
171
172 [Header("Game")]
173 public bool godMode;
174
175 public bool randomResource;
176
177 public bool debugScatter;
178
179 public bool _godBuild;
180
181 public bool godCraft;
182
183 public bool godFood;
184
185 public bool ignoreBuildRule;
186
187 public bool ignoreWeight;
188
189 public bool autoIdentify;
190
191 public bool allAbility;
192
193 public bool allSkill;
194
195 public bool allHomeSkill;
196
197 public bool allArt;
198
199 public bool allBGM;
200
201 public bool ignoreEncounter;
202
203 public bool returnAnywhere;
204
205 public bool instaReturn;
206
207 public bool travelAnywhere;
208
210
211 public bool autoAdvanceQuest;
212
214
215 public bool testThingQuality;
216
217 public int numResource;
218
219 [Header("Game(Specific)")]
220 public bool unlimitedInterest;
221
222 public bool inviteAnytime;
223
224 public bool marryAnytime;
225
226 public bool showFav;
227
228 public bool alwaysFavFood;
229
230 public bool maxQuests;
231
232 [Header("Progress")]
233 public bool allRecipe;
234
235 public bool allMenu;
236
237 public bool allPolicy;
238
239 public bool allStory;
240
241 [Header("Log")]
242 public bool logAdv;
243
244 [Header("Log")]
245 public bool logCombat;
246
247 public bool logDice;
248
249 [Header("Once")]
250 public bool validatePref;
251
252 [Header("Test")]
253 public int param1;
254
255 [Header("Test")]
256 public int param2;
257
259
260 public bool boradcast;
261
262 public bool testFixedColor;
263
264 public Color32 fixedColor;
265
266 private readonly List<int[]> resolutions = new List<int[]>
267 {
268 new int[2] { 1920, 1080 },
269 new int[2] { 1366, 768 },
270 new int[2] { 1280, 720 }
271 };
272
274
275 [NonSerialized]
276 private int bidx;
277
278 private bool bilinear;
279
280 [NonSerialized]
281 private string[] blines;
282
283 public List<DebugCommand> commands = new List<DebugCommand>();
284
285 [NonSerialized]
286 public bool enable;
287
288 public Fov fov = new Fov();
289
290 private int indexResolution;
291
293
294 private Emo lastEmo;
295
296 private bool naked;
297
298 [NonSerialized]
299 private bool runtimeGodBuild;
300
301 private int ttt;
302
303 public bool godBuild
304 {
305 get
306 {
307 if (!_godBuild)
308 {
309 return runtimeGodBuild;
310 }
311 return true;
312 }
313 }
314
315 public static string EnableCheat => "Enable cheat by typing 'Cheat'";
316
317 private IEnumerable<string> ZoneIDs()
318 {
319 List<SourceZone.Row> rows = EClass.sources.zones.rows;
320 List<string> list = new List<string>();
321 foreach (SourceZone.Row item in rows)
322 {
323 list.Add(item.id);
324 }
325 return list;
326 }
327
328 public void Init()
329 {
331 EInput.disableKeyAxis = Application.isEditor;
332 }
333
334 public void QuickStart()
335 {
336 Game.Create("quick");
337 Tutorial.debugSkip = EClass.debug.skipNerun;
338 if (!startSetting.race.IsEmpty())
339 {
341 }
342 if (!startSetting.job.IsEmpty())
343 {
346 }
347 switch (startScene)
348 {
349 case StartScene.Zone:
350 case StartScene.Home:
351 EClass.game.world.date.hour = EClass.debug.startHour;
352 break;
353 case StartScene.Survival:
354 EClass.game.idPrologue = 3;
355 break;
356 case StartScene.Home_Cave:
357 EClass.game.idPrologue = 2;
358 break;
359 }
362 EClass.player.pref.lastIdTabAbility = 3;
364 switch (startParty)
365 {
366 case StartParty.Farris:
367 AddParty("farris");
368 break;
369 case StartParty.Full:
370 AddParty("farris");
371 AddParty("wescott");
372 break;
373 }
374 int lv = startSetting.lv;
375 if (allAbility)
376 {
377 foreach (SourceElement.Row row in EClass.sources.elements.rows)
378 {
379 if (row.category == "ability" && row.aliasRef != "mold" && !EClass.pc.HasElement(row.id) && (row.aliasRef.IsEmpty() || row.id <= 10000 || EClass.sources.elements.alias[row.aliasRef].tag.Contains(row.alias.Split('_')[0])))
380 {
381 EClass.pc.elements.ModBase(row.id, lv).vPotential = 30;
382 }
383 }
384 }
385 if (allSkill)
386 {
387 foreach (SourceElement.Row row2 in EClass.sources.elements.rows)
388 {
389 if (row2.isSkill && !row2.tag.Contains("unused"))
390 {
391 EClass.pc.elements.ModBase(row2.id, 1);
392 }
393 }
394 }
395 EClass.pc.elements.ModBase(60, lv / 2);
396 EClass.pc.elements.ModBase(61, lv / 2);
397 EClass.pc.elements.ModBase(79, lv / 5);
398 EClass.player.totalFeat = lv;
399 EClass.pc.SetLv(lv - 1);
400 EClass.player.fame = EClass.pc.LV * 100;
401 int idx = 0;
402 switch (startLoadout)
403 {
404 case StartLoadout.AllItem:
405 EClass.pc.ModCurrency(50, "plat");
406 EClass.pc.ModCurrency(50, "money2");
407 EClass.pc.EQ_CAT("weapon");
408 EClass.pc.EQ_CAT((EScriptable.rnd(2) == 0) ? "weapon" : "shield");
409 EClass.pc.EQ_CAT("torso");
410 EClass.pc.EQ_CAT("arm");
411 EClass.pc.EQ_CAT("ring");
412 EClass.pc.AddCard(ThingGen.Create("chest2"));
413 EClass.pc.AddCard(ThingGen.Create("torch_held"));
414 AddHotbar("axe");
415 AddHotbar("pickaxe");
416 AddHotbar("wateringCan");
417 AddHotbar("bow");
418 AddHotbar("deed");
419 AddAbility("SpellTeleport");
420 AddAbility("SpellCatsEye");
421 AddHotbar("map_big");
422 break;
423 case StartLoadout.FewItem:
424 {
425 if (startScene == StartScene.Survival)
426 {
427 AddHotbar("pickaxe").ChangeMaterial(0);
428 break;
429 }
430 Thing thing = ThingGen.Create("backpack");
431 thing.AddCard(ThingGen.Create("rp_food", -1, 10).SetNum(30));
432 thing.AddCard(ThingGen.Create("rp_block", -1, 10).SetNum(30));
433 for (int i = 0; i < 30; i++)
434 {
435 thing.AddCard(ThingGen.Create("rp_block", -1, 50));
436 }
437 EClass.pc.AddCard(thing);
438 thing = ThingGen.Create("pouch");
439 for (int j = 0; j < 30; j++)
440 {
442 Thing thing2 = ThingGen.CreateFromCategory("weapon", 214748364);
443 thing2.elements.SetBase(653, 1);
444 if (!(thing2.trait is TraitAmmo))
445 {
446 thing.AddCard(thing2);
447 }
449 thing2 = ThingGen.CreateFromCategory("armor", 214748364);
450 thing2.elements.SetBase(653, 1);
451 thing.AddCard(thing2);
452 }
453 EClass.pc.AddCard(thing);
454 thing = ThingGen.Create("pouch");
455 for (int k = 0; k < 30; k++)
456 {
457 thing.AddCard(ThingGen.Create("mathammer", MATERIAL.GetRandomMaterial(100).alias)).SetNum(10);
458 }
459 thing.AddCard(ThingGen.Create("mathammer", 103)).SetNum(10);
460 thing.AddCard(ThingGen.Create("mathammer", 102)).SetNum(10);
461 thing.AddCard(ThingGen.Create("mathammer", 33)).SetNum(10);
462 thing.AddCard(ThingGen.Create("mathammer", 18)).SetNum(10);
463 thing.AddCard(ThingGen.Create("mathammer", 10)).SetNum(99);
464 thing.AddCard(ThingGen.Create("mathammer", 31)).SetNum(10);
465 thing.AddCard(ThingGen.Create("mathammer", 28)).SetNum(99);
466 EClass.pc.AddCard(thing);
467 thing = ThingGen.Create("pouch");
468 for (int l = 0; l < 30; l++)
469 {
471 }
472 EClass.pc.AddCard(thing);
473 thing = ThingGen.Create("coolerbox");
474 for (int m = 0; m < 20; m++)
475 {
476 thing.AddCard(ThingGen.CreateFromCategory("foodstuff").SetNum(EScriptable.rnd(10) + 1));
477 }
478 EClass.pc.AddCard(thing);
479 List<SourceChara.Row> list = EClass.sources.charas.map.Values.Where((SourceChara.Row a) => a._idRenderData == "chara").ToList();
480 thing = ThingGen.Create("pouch");
481 list = EClass.sources.charas.map.Values.Where((SourceChara.Row a) => a._idRenderData == "chara_L").ToList();
482 for (int n = 0; n < 20; n++)
483 {
484 string id2 = list.RandomItem().id;
485 Thing thing3 = ThingGen.Create("figure");
486 thing3.MakeFigureFrom(id2);
487 thing.AddCard(thing3);
488 }
489 EClass.pc.AddCard(thing);
490 thing = ThingGen.Create("pouch");
491 list = EClass.sources.charas.map.Values.Where((SourceChara.Row a) => a._idRenderData == "chara").ToList();
492 for (int num = 0; num < 20; num++)
493 {
494 string id3 = list.RandomItem().id;
495 Thing thing4 = ThingGen.Create("figure3");
496 thing4.MakeFigureFrom(id3);
497 thing.AddCard(thing4);
498 }
499 EClass.pc.AddCard(thing);
500 thing.Dye("oak");
501 thing = ThingGen.Create("pouch");
502 list = EClass.sources.charas.map.Values.Where((SourceChara.Row a) => a._idRenderData == "chara_L").ToList();
503 for (int num2 = 0; num2 < 20; num2++)
504 {
505 string id4 = list.RandomItem().id;
506 Thing thing5 = ThingGen.Create("figure3");
507 thing5.MakeFigureFrom(id4);
508 thing.AddCard(thing5);
509 }
510 EClass.pc.AddCard(thing);
511 thing.Dye("pine");
512 thing = ThingGen.Create("pouch");
513 thing.AddCard(ThingGen.Create("flour").SetNum(10));
514 thing.AddCard(ThingGen.Create("wheat").SetNum(200));
515 thing.AddCard(ThingGen.Create("rice_plant").SetNum(200));
516 thing.AddCard(ThingGen.Create("noodle").SetNum(10));
517 thing.AddCard(ThingGen.Create("rice").SetNum(10));
518 thing.AddCard(ThingGen.Create("dough_cake").SetNum(10));
519 thing.AddCard(ThingGen.Create("dough_bread").SetNum(10));
520 thing.AddCard(ThingGen.Create("salt").SetNum(10));
521 thing.AddCard(ThingGen.Create("sugar").SetNum(10));
522 thing.AddCard(ThingGen.Create("honey").SetNum(10));
523 thing.AddCard(ThingGen.Create("yeast").SetNum(10));
524 thing.AddCard(ThingGen.Create("ketchup").SetNum(10));
525 thing.AddCard(ThingGen.Create("butter").SetNum(10));
526 thing.AddCard(ThingGen.Create("potion_empty").SetNum(10));
527 thing.AddCard(ThingGen.Create("bucket_empty").SetNum(10));
528 thing.AddCard(ThingGen.Create("battery"));
529 EClass.pc.AddCard(thing);
530 thing.Dye("saphire");
531 thing = ThingGen.Create("pouch");
532 thing.AddCard(ThingGen.Create("log").SetNum(99));
533 thing.AddCard(ThingGen.Create("log").SetNum(99).ChangeMaterial("pine"));
534 thing.AddCard(ThingGen.Create("ore").SetNum(99).ChangeMaterial("steel"));
535 thing.AddCard(ThingGen.Create("ore").SetNum(99).ChangeMaterial("copper"));
536 thing.AddCard(ThingGen.Create("ore_gem").SetNum(99).ChangeMaterial("gold"));
537 thing.AddCard(ThingGen.Create("gem").SetNum(99).ChangeMaterial("rubinus"));
538 thing.AddCard(ThingGen.Create("flower_white").SetNum(99));
539 thing.AddCard(ThingGen.Create("bait").SetNum(10));
540 EClass.pc.AddCard(thing);
541 thing.Dye("rubinus");
542 Thing thing6 = ThingGen.Create("quiver");
543 thing6.AddCard(ThingGen.Create("bullet").SetNum(250));
544 thing6.AddCard(ThingGen.Create("arrow").SetNum(250));
545 thing6.AddCard(ThingGen.Create("bolt").SetNum(250));
546 thing6.AddCard(ThingGen.Create("bullet_energy").SetNum(250));
548 thing = ThingGen.Create("backpack");
549 for (int num3 = 0; num3 < 10; num3++)
550 {
551 thing.AddThing("book", lv);
552 thing.AddThing("parchment");
553 thing.AddThing("book_ancient");
554 thing.AddCard(ThingGen.CreateRedBook("fox_dawn"));
555 thing.AddCard(ThingGen.CreateRedBook("forgotten_gods_1"));
556 }
557 EClass.pc.AddCard(thing);
558 thing.Dye("rubinus");
559 thing = ThingGen.Create("backpack");
560 foreach (SourceObj.Row row3 in EClass.sources.objs.rows)
561 {
562 if (row3.tag.Contains("seed"))
563 {
564 Thing c = TraitSeed.MakeSeed(row3).SetNum(10);
565 thing.AddCard(c);
566 }
567 }
568 EClass.pc.AddCard(thing);
569 thing.Dye("silver");
570 thing = ThingGen.Create("pouch");
571 for (int num4 = 0; num4 < 30; num4++)
572 {
573 thing.AddThing((EScriptable.rnd(10) != 0) ? "potion" : "drink", lv).SetNum(99);
574 }
575 EClass.pc.AddCard(thing);
576 thing.Dye("steel");
577 thing = ThingGen.Create("pouch");
578 for (int num5 = 0; num5 < 30; num5++)
579 {
580 thing.AddThing(ThingGen.CreateFromCategory("rod", lv));
581 }
582 EClass.pc.AddCard(thing);
583 thing.Dye("steel");
584 thing = ThingGen.Create("pouch");
585 for (int num6 = 0; num6 < 30; num6++)
586 {
587 thing.AddThing("scroll", lv).SetNum(99);
588 }
589 EClass.pc.AddCard(thing);
590 thing.Dye("steel");
591 thing = ThingGen.Create("pouch");
592 for (int num7 = 0; num7 < 40; num7++)
593 {
594 thing.AddThing("372", 100);
595 }
596 EClass.pc.AddCard(thing);
597 thing.Dye("steel");
598 Thing thing7 = EClass.pc.things.Find("purse");
599 thing7.AddThing("casino_coin").SetNum(30000000);
600 thing7.AddThing("medal").SetNum(1000);
601 thing7.ModCurrency(500, "plat");
602 EClass.pc.AddThing("record");
603 EClass.pc.AddThing("deed").SetNum(5);
604 EClass.pc.AddThing("book_story");
605 EClass.pc.AddThing("book_story_home");
606 EClass.pc.AddThing("book_tutorial");
607 EClass.pc.AddThing("water").SetNum(20).SetBlessedState(BlessedState.Blessed);
609 EClass.pc.AddThing("potion_empty").SetNum(20);
610 EClass.pc.ModCurrency(10000000);
613 Thing thing8 = ThingGen.Create("scroll_random").SetNum(10);
614 thing8.refVal = 8220;
615 EClass.pc.AddCard(thing8);
616 EClass.pc.ModCurrency(50, "money2");
617 AddHotbar("hoe");
618 AddHotbar("shovel");
619 AddHotbar("axe");
620 AddHotbar("pickaxe");
621 AddHotbar("wateringCan");
622 AddHotbar("gun_assault");
623 AddHotbar("hammer");
624 AddHotbar("bow");
625 break;
626 }
627 }
628 EClass.pc.RestockEquip(onCreate: true);
629 EClass.pc.stamina.value = EClass.pc.stamina.max;
630 EClass.pc.mana.value = EClass.pc.mana.max;
631 EClass.pc.hp = EClass.pc.MaxHP;
632 if (EClass.debug.startScene == StartScene.Zone)
633 {
634 EClass._zone.ClaimZone(debug: true);
635 }
636 SoundManager.ignoreSounds = true;
637 EClass.ui.ToggleInventory();
638 SoundManager.ignoreSounds = true;
639 EClass.ui.ToggleAbility();
640 SoundManager.ignoreSounds = false;
641 EClass.ui.layerFloat.GetLayer<LayerAbility>().windows[0].SetRect(EClass.core.refs.rects.abilityDebug);
642 if (allRecipe)
643 {
645 }
646 foreach (Thing thing11 in EClass.pc.things)
647 {
648 thing11.isNew = false;
649 }
652 if (startScene == StartScene.Story_Test)
653 {
654 EClass._zone.ClaimZone(debug: true);
655 EClass.Branch.AddMemeber(EClass._zone.AddCard(CharaGen.Create("loytel"), EClass.pc.pos.GetNearestPoint(allowBlock: false, allowChara: false)) as Chara);
656 EClass.Branch.AddMemeber(EClass._zone.AddCard(CharaGen.Create("farris"), EClass.pc.pos.GetNearestPoint(allowBlock: false, allowChara: false)) as Chara);
657 EClass.Branch.AddMemeber(EClass._zone.AddCard(CharaGen.Create("kettle"), EClass.pc.pos.GetNearestPoint(allowBlock: false, allowChara: false)) as Chara);
658 EClass.Branch.AddMemeber(EClass._zone.AddCard(CharaGen.Create("quru"), EClass.pc.pos.GetNearestPoint(allowBlock: false, allowChara: false)) as Chara);
659 EClass.Branch.AddMemeber(EClass._zone.AddCard(CharaGen.Create("corgon"), EClass.pc.pos.GetNearestPoint(allowBlock: false, allowChara: false)) as Chara);
660 EClass.Branch.AddMemeber(EClass._zone.AddCard(CharaGen.Create("demitas"), EClass.pc.pos.GetNearestPoint(allowBlock: false, allowChara: false)) as Chara);
661 EClass.game.quests.Add("greatDebt");
662 EClass.game.quests.Add("farris_tulip");
663 EClass.game.quests.Add("kettle_join");
664 EClass.game.quests.Add("quru_morning");
665 EClass.game.quests.Add("vernis_gold");
666 EClass.game.quests.Add("quru_sing");
667 EClass.game.quests.Add("quru_past1");
668 EClass.game.quests.Add("quru_past2");
669 EClass.game.quests.Add("pre_debt");
670 EClass.game.quests.Add("exile_meet");
671 EClass.game.quests.Add("exile_quru");
672 EClass.game.quests.Add("exile_kettle");
673 EClass.game.quests.Add("exile_whisper");
674 EClass.game.quests.Add("exile_voice");
675 EClass.game.quests.Add("into_darkness");
676 EClass.game.quests.Add("demitas_spellwriter");
677 EClass.game.quests.Add("negotiation_darkness");
678 EClass.game.quests.Start("into_darkness", EClass.game.cards.globalCharas.Find("kettle"));
680 EClass.player.ModKeyItem("potion_sorin", 1, msg: false);
681 EClass.player.ModKeyItem("potion_farris", 1, msg: false);
682 }
683 static Thing AddAbility(string id)
684 {
685 Thing thing9 = EClass.pc.AddThing(ThingGen.Create("catalyst"));
686 thing9.c_idAbility = id;
687 return thing9;
688 }
689 Thing AddHotbar(string id)
690 {
691 Thing thing10 = EClass.pc.AddThing(ThingGen.Create(id));
692 thing10.invX = idx;
693 thing10.invY = 1;
694 idx++;
695 return thing10;
696 }
697 void AddParty(string id)
698 {
699 Chara chara = CharaGen.Create(id);
700 chara.SetFaction(EClass.Home);
701 chara.SetHomeZone(homeZone);
702 if (chara.currentZone != EClass._zone)
703 {
704 EClass._zone.AddCard(chara, EClass.pc.pos.GetNearestPoint(allowBlock: false, allowChara: false));
705 }
706 EClass.pc.party.AddMemeber(chara);
707 }
708 }
709
710 public void OnLoad()
711 {
712 if (allRecipe)
713 {
715 }
716 }
717
718 public void AddAllRecipes()
719 {
721 {
722 if (!EClass.player.recipes.knownRecipes.ContainsKey(item.id))
723 {
725 }
726 }
727 }
728
729 public void SetStartStockpile(Thing container, int num = 100)
730 {
731 LittlePopper.skipPop = true;
732 foreach (SourceMaterial.Row row in EClass.sources.materials.rows)
733 {
734 if (!(row.alias == "void") && (!randomResource || EScriptable.rnd(4) == 0))
735 {
736 row.CreateByProduct(container, num);
737 }
738 }
739 foreach (SourceThing.Row row2 in EClass.sources.things.rows)
740 {
741 if ((row2.factory.IsEmpty() || !(row2.factory[0] == "x")) && !row2.isOrigin && row2.Category.tag.Contains("debug"))
742 {
743 Thing thing = ThingGen.Create(row2.id);
744 if (thing.trait.CanStack)
745 {
746 thing.ModNum(num);
747 }
748 container.AddThing(thing);
749 }
750 }
751 for (int i = 0; i < 10; i++)
752 {
753 container.AddThing(TraitSeed.MakeRandomSeed());
754 }
755 LittlePopper.skipPop = false;
756 }
757
759 {
760 foreach (Thing thing2 in EClass._map.things)
761 {
762 if (thing2.c_altName == "DebugContainer")
763 {
764 return thing2;
765 }
766 }
767 Thing thing = EClass._zone.AddThing("barrel", EClass.pc.pos).Thing;
768 thing.ChangeMaterial("obsidian");
769 thing.c_altName = "DebugContainer";
770 thing.isNPCProperty = false;
771 thing.SetPlaceState(PlaceState.installed);
772 return thing;
773 }
774
776 {
777 foreach (Thing thing in EClass._map.things)
778 {
779 if (thing.c_altName == "DebugContainer")
780 {
781 return thing;
782 }
783 }
784 return null;
785 }
786
788 {
791 enable = true;
792 if ((bool)WidgetHotbar.HotbarBuild)
793 {
795 }
797 Thing orCreateDebugContainer = GetOrCreateDebugContainer();
798 SetStartStockpile(orCreateDebugContainer, numResource);
799 }
800
802 {
803 }
804
805 public void UpdateAlways()
806 {
807 if (!EClass.debug.enable || (bool)EClass.ui.GetLayer<LayerConsole>())
808 {
809 return;
810 }
811 if (Input.GetKeyDown(KeyCode.B))
812 {
814 }
815 if (Input.GetKeyDown(KeyCode.O))
816 {
818 }
819 if (Input.GetKeyDown(KeyCode.P))
820 {
822 }
823 if (Input.GetKeyDown(KeyCode.F11))
824 {
825 if (Application.isEditor)
826 {
827 EClass.core.SetLang((Lang.langCode == "EN") ? "JP" : "EN");
828 }
829 else
830 {
832 }
833 NewsList.dict = null;
834 BookList.dict = null;
835 BookList.Init();
836 }
838 {
839 if (Input.GetKeyDown(KeyCode.U))
840 {
842 Msg.SayRaw(offset.ToString() ?? "");
843 EClass.screen.tileMap.rendererInnerBlock.offset = Vector3.zero;
844 }
845 if (Input.GetKeyDown(KeyCode.I))
846 {
848 Msg.SayRaw(offset.ToString() ?? "");
849 EClass.screen.tileMap.rendererInnerBlock.offset = new Vector3(0f, 0.54f, -0.5f);
850 }
851 }
852 }
853
854 public void ValidateData()
855 {
857 {
861 }
862 }
863
864 public void UpdateInput()
865 {
866 if (!debugInput || EInput.isInputFieldActive || (bool)EClass.ui.GetLayer<LayerConsole>())
867 {
868 return;
869 }
870 bool key = Input.GetKey(KeyCode.LeftShift);
871 bool key2 = Input.GetKey(KeyCode.LeftAlt);
872 bool key3 = Input.GetKey(KeyCode.LeftControl);
873 TraitStairs traitStairs = null;
874 if (Input.GetKeyDown(KeyCode.KeypadPlus) || (EInput.isShiftDown && Input.GetKeyDown(KeyCode.Period)))
875 {
877 if (traitStairsLocked != null && EClass._zone.CanUnlockExit)
878 {
879 traitStairsLocked.OnUse(EClass.pc);
880 }
881 }
882 if (Input.GetKeyDown(KeyCode.KeypadPlus) || (EInput.isShiftDown && Input.GetKeyDown(KeyCode.Period)))
883 {
884 traitStairs = EClass._map.FindThing<TraitStairsDown>();
885 }
886 if (Input.GetKeyDown(KeyCode.KeypadMinus) || (EInput.isShiftDown && Input.GetKeyDown(KeyCode.Comma)))
887 {
888 traitStairs = EClass._map.FindThing<TraitStairsUp>();
889 }
890 traitStairs?.MoveZone();
891 if (EInput.action == EAction.ShowGrid)
892 {
893 EClass.ui.Find("_Guide").ToggleActive();
894 }
895 if (Input.GetKey(KeyCode.N))
896 {
897 if (key)
898 {
899 SoundManager.current.sourceBGM.pitch = 10f;
900 }
901 if (key3)
902 {
903 SoundManager.current.sourceBGM.time = SoundManager.current.currentBGM.length - 10f;
904 }
905 }
906 else if (Input.GetKeyUp(KeyCode.N))
907 {
908 SoundManager.current.sourceBGM.pitch = 1f;
909 }
911 {
912 string text = "festival";
913 if (Input.GetKeyDown(KeyCode.F1))
914 {
915 EClass.ui.AddLayer<LayerDebug>();
916 }
917 if (Input.GetKeyDown(KeyCode.F2))
918 {
919 Zone.forceRegenerate = true;
921 EClass.scene.Init(Scene.Mode.Zone);
923 SE.MoveZone();
924 }
925 if (Input.GetKeyDown(KeyCode.F4))
926 {
927 if (!MapSubset.Exist(text))
928 {
929 SE.Beep();
930 return;
931 }
932 Zone.forceRegenerate = true;
933 Zone.forceSubset = text;
935 EClass.scene.Init(Scene.Mode.Zone);
937 SE.MoveZone();
938 EClass.ui.Say("Loaded Subset");
939 }
940 if (Input.GetKeyDown(KeyCode.F5))
941 {
942 MapSubset.Save(text);
943 SE.WriteJournal();
944 EClass.ui.Say("Exported Subset");
945 }
946 return;
947 }
948 if (Input.GetKeyDown(KeyCode.F1))
949 {
950 EClass.ui.AddLayer<LayerDebug>();
951 Debug.Log(EClass._zone);
952 Debug.Log(EClass._zone.id + "/" + EClass._zone.parent);
954 }
955 if (Input.GetKeyDown(KeyCode.F2))
956 {
957 EClass._zone.development += 10;
958 EClass._zone.development *= EClass._zone.development;
960 if (targetChara != null)
961 {
963 EClass.pc.Pick(CraftUtil.MakeLoveLunch(targetChara));
964 TraitFoodEggFertilized.Incubate(targetChara.MakeEgg(effect: false, 1, addToZone: false, 100), targetChara.pos.GetNearestPoint(allowBlock: false, allowChara: false));
965 }
966 targetChara.ScaleByPrincipal();
967 if (EClass.game.quests.Get<QuestDebt>() == null)
968 {
969 Chara chara = CharaGen.Create("loytel");
971 chara.SetGlobal();
972 Quest q = EClass.game.quests.Add("debt", "loytel");
975 Hostility hostility2 = (chara.c_originalHostility = Hostility.Ally);
976 chara.hostility = hostility2;
977 }
978 return;
979 }
980 if (Input.GetKeyDown(KeyCode.F3))
981 {
982 for (int i = 0; i < 10; i++)
983 {
984 Thing thing = ThingGen.Create("egg_fertilized");
985 thing.TryMakeRandomItem(40);
986 thing.SetEncLv(200);
987 EClass.pc.Pick(thing);
988 }
989 foreach (Chara deadChara in EClass._map.deadCharas)
990 {
991 Debug.Log(deadChara);
992 }
995 Msg.Say("loytelmart:" + EClass.player.flags.loytelMartLv);
996 Guild.Fighter.relation.rank = 20;
997 Guild.Mage.relation.rank = 20;
998 Guild.Thief.relation.rank = 20;
999 Guild.Merchant.relation.rank = 20;
1000 if (EClass.Branch != null)
1001 {
1003 }
1004 foreach (Chara item in EClass._map.charas.ToList())
1005 {
1006 item.AddExp(item.ExpToNext);
1007 item.Vomit();
1008 }
1009 EClass.pc.PlayEffect("boost");
1010 EClass.pc.PlaySound("boost");
1011 EClass.pc.elements.SetBase(306, 100);
1012 EClass.pc.elements.SetBase(85, 100);
1013 EClass.pc.feat += 10;
1014 EClass.player.totalFeat += 10;
1015 return;
1016 }
1017 if (Input.GetKeyDown(KeyCode.F4))
1018 {
1019 string text2 = new string[4] { "エターナルフォースブリザード", "Eternal Force Blizzard", "ぬるぽ", "Null Pointer" }.RandomItem();
1020 EClass.pc.renderer.Say("| " + text2 + " ");
1021 return;
1022 }
1023 if (Input.GetKeyDown(KeyCode.F5))
1024 {
1025 string text3 = (Input.GetKey(KeyCode.LeftControl) ? "quick3" : (Input.GetKey(KeyCode.LeftShift) ? "quick2" : "quick"));
1026 if (text3 != Game.id)
1027 {
1028 IO.DeleteDirectory(CorePath.RootSave + text3);
1029 IO.CopyAll(CorePath.RootSave + Game.id, CorePath.RootSave + text3);
1030 Game.id = text3;
1031 }
1032 EClass.game.isCloud = false;
1033 EClass.game.Save();
1034 }
1035 if (Input.GetKeyDown(KeyCode.F6))
1036 {
1038 {
1039 string id = (Input.GetKey(KeyCode.LeftControl) ? "quick3" : (Input.GetKey(KeyCode.LeftShift) ? "quick2" : "quick"));
1040 EClass.scene.Init(Scene.Mode.None);
1041 Game.Load(id, cloud: false);
1042 });
1043 }
1044 if (Input.GetKeyDown(KeyCode.F7))
1045 {
1046 MiniGame.Activate(MiniGame.Type.Scratch);
1047 return;
1048 }
1049 if (Input.GetKeyDown(KeyCode.F8))
1050 {
1051 SE.Click();
1053 runtimeGodBuild = true;
1056 }
1057 if (key3)
1058 {
1059 if (Input.GetKeyDown(KeyCode.F9))
1060 {
1062 if (indexResolution >= resolutions.Count)
1063 {
1064 indexResolution = 0;
1065 }
1066 int[] array = resolutions[indexResolution];
1067 int width = array[0];
1068 int height = array[1];
1069 Screen.SetResolution(width, height, key);
1070 WidgetFeed.Instance?.Nerun(width + "/" + height);
1071 }
1072 if (Input.GetKeyDown(KeyCode.F10))
1073 {
1074 int width2 = Screen.width;
1075 int height2 = width2 / 16 * 9;
1076 Screen.SetResolution(width2, height2, key);
1077 WidgetFeed.Instance?.Nerun(width2 + "/" + height2);
1078 }
1079 }
1080 else
1081 {
1082 Input.GetKeyDown(KeyCode.F9);
1083 if (Input.GetKey(KeyCode.F9))
1084 {
1085 EClass.scene.paused = false;
1086 for (int j = 0; j < advanceMin; j++)
1087 {
1089 }
1091 }
1092 if (Input.GetKeyDown(KeyCode.F10))
1093 {
1094 switch (EScriptable.rnd(5))
1095 {
1096 case 0:
1098 break;
1099 case 1:
1101 break;
1102 case 2:
1104 break;
1105 default:
1107 break;
1108 }
1109 }
1110 }
1111 if (Input.GetKeyDown(KeyCode.N) && !EInput.isShiftDown && !EInput.isCtrlDown)
1112 {
1113 EClass.Sound.NextBGM();
1114 }
1115 if (Input.GetKeyDown(KeyCode.Tab))
1116 {
1117 if (key)
1118 {
1119 EClass.ui.AddLayer<LayerConsole>();
1120 }
1121 else
1122 {
1123 EClass.ui.widgets.Toggle("Debug");
1124 }
1125 }
1126 Point hitPoint = Scene.HitPoint;
1127 if (!hitPoint.IsValid || EClass.ui.IsActive)
1128 {
1129 return;
1130 }
1131 if (hitPoint.detail != null)
1132 {
1133 _ = hitPoint.area;
1134 }
1135 if (hitPoint.detail?.things == null)
1136 {
1137 new List<Thing>();
1138 }
1139 if (hitPoint.detail?.charas == null)
1140 {
1141 new List<Chara>();
1142 }
1143 List<Card> list = hitPoint.ListCards();
1144 if (Input.GetMouseButtonDown(2))
1145 {
1146 if (EClass.core.releaseMode != 0)
1147 {
1148 if (key)
1149 {
1150 EClass._zone.SpawnMob(hitPoint);
1151 }
1152 else if (key3)
1153 {
1154 EClass._zone.SpawnMob(hitPoint);
1155 }
1156 else if (key2)
1157 {
1158 EClass._zone.SpawnMob(hitPoint);
1159 }
1160 }
1161 return;
1162 }
1163 if (key2)
1164 {
1165 if (Input.GetMouseButtonDown(0))
1166 {
1167 foreach (Card item2 in list)
1168 {
1169 Debug.Log(item2.Name + "/" + item2.dir + "/" + item2.flipX + "/" + item2.angle);
1170 }
1171 }
1172 if (Input.GetMouseButtonDown(1))
1173 {
1174 if (key)
1175 {
1176 EClass._map.charas.ForeachReverse(delegate(Chara c)
1177 {
1178 if (c.IsHostile(EClass.pc))
1179 {
1180 c.DamageHP(999999999L, AttackSource.Finish, EClass.pc);
1181 }
1182 });
1183 }
1184 else if (hitPoint.detail != null)
1185 {
1186 for (int num = hitPoint.detail.charas.Count - 1; num >= 0; num--)
1187 {
1188 hitPoint.detail.charas[num].DamageHP(999999999L, AttackSource.Finish, EClass.pc);
1189 }
1190 }
1191 EInput.Consume();
1192 }
1193 }
1194 if (Input.GetKeyDown(KeyCode.Delete))
1195 {
1196 if (Input.GetKey(KeyCode.RightControl))
1197 {
1198 return;
1199 }
1200 if (key)
1201 {
1202 foreach (Card item3 in EClass._map.Roaming.all)
1203 {
1204 EClass._zone.RemoveCard(item3);
1205 }
1206 }
1207 else if (hitPoint.detail != null)
1208 {
1209 for (int num2 = hitPoint.detail.things.Count - 1; num2 >= 0; num2--)
1210 {
1211 hitPoint.detail.things[num2].Destroy();
1212 }
1213 if (hitPoint.detail != null)
1214 {
1215 for (int num3 = hitPoint.detail.charas.Count - 1; num3 >= 0; num3--)
1216 {
1217 hitPoint.detail.charas[num3].Destroy();
1218 }
1219 }
1220 }
1221 }
1222 if (Input.GetKeyDown(KeyCode.End) && hitPoint.detail != null)
1223 {
1224 for (int num4 = hitPoint.detail.things.Count - 1; num4 >= 0; num4--)
1225 {
1226 Thing thing2 = hitPoint.detail.things[num4];
1227 Debug.Log(thing2.id + "/" + thing2.Pref.height + "/" + thing2.trait?.ToString() + "/" + thing2.source.tileType.CanStack + "/" + thing2.source.tileType?.ToString() + "/" + thing2.isSynced + "/" + RenderObject.syncList.Contains(thing2.renderer));
1228 }
1229 }
1230 if (!Application.isEditor)
1231 {
1232 return;
1233 }
1234 switch (debugHotkeys)
1235 {
1236 case DebugHotkey.Anime:
1237 {
1238 int num5 = -1;
1239 if (Input.GetKeyDown(KeyCode.Alpha0))
1240 {
1241 num5 = 0;
1242 }
1243 if (Input.GetKeyDown(KeyCode.Alpha1))
1244 {
1245 num5 = 1;
1246 }
1247 if (Input.GetKeyDown(KeyCode.Alpha2))
1248 {
1249 num5 = 2;
1250 }
1251 if (Input.GetKeyDown(KeyCode.Alpha3))
1252 {
1253 num5 = 3;
1254 }
1255 if (Input.GetKeyDown(KeyCode.Alpha4))
1256 {
1257 num5 = 4;
1258 }
1259 if (Input.GetKeyDown(KeyCode.Alpha5))
1260 {
1261 num5 = 5;
1262 }
1263 if (Input.GetKeyDown(KeyCode.Alpha6))
1264 {
1265 num5 = 6;
1266 }
1267 if (Input.GetKeyDown(KeyCode.Alpha7))
1268 {
1269 num5 = 7;
1270 }
1271 if (Input.GetKeyDown(KeyCode.Alpha8))
1272 {
1273 num5 = 8;
1274 }
1275 if (Input.GetKeyDown(KeyCode.Alpha9))
1276 {
1277 num5 = 9;
1278 }
1279 if (num5 == -1)
1280 {
1281 break;
1282 }
1283 foreach (Card item4 in hitPoint.ListCards())
1284 {
1285 item4.renderer.PlayAnime(num5.ToEnum<AnimeID>());
1286 }
1287 Debug.Log(num5.ToEnum<AnimeID>());
1288 break;
1289 }
1290 case DebugHotkey.Block:
1291 if (Input.GetKeyDown(KeyCode.Alpha1))
1292 {
1293 EClass._map.SetLiquid(hitPoint.x, hitPoint.z, 1, 9);
1294 }
1295 if (Input.GetKeyDown(KeyCode.Alpha2))
1296 {
1297 EClass._map.SetLiquid(hitPoint.x, hitPoint.z, 2, 9);
1298 }
1299 break;
1300 case DebugHotkey.Item:
1301 if (Input.GetKeyDown(KeyCode.Alpha1))
1302 {
1303 Thing thing3 = ThingGen.Create("stairsDown_cave");
1304 EClass._zone.AddCard(thing3, EClass.pc.pos);
1305 thing3.SetPlaceState(PlaceState.installed);
1306 }
1307 if (Input.GetKeyDown(KeyCode.Alpha2))
1308 {
1309 Thing thing4 = ThingGen.Create("stairs");
1310 EClass._zone.AddCard(thing4, EClass.pc.pos);
1311 thing4.SetPlaceState(PlaceState.installed);
1312 }
1313 if (Input.GetKeyDown(KeyCode.Alpha3))
1314 {
1315 Thing thing5 = ThingGen.Create("sign");
1316 EClass._zone.AddCard(thing5, hitPoint);
1317 thing5.SetPlaceState(PlaceState.installed);
1318 }
1319 if (Input.GetKeyDown(KeyCode.Alpha4))
1320 {
1321 Thing thing6 = ThingGen.Create("sign2");
1322 EClass._zone.AddCard(thing6, hitPoint);
1323 thing6.SetPlaceState(PlaceState.installed);
1324 }
1325 if (Input.GetKeyDown(KeyCode.Alpha5))
1326 {
1327 Thing thing7 = ThingGen.Create("well");
1328 EClass._zone.AddCard(thing7, hitPoint);
1329 thing7.SetPlaceState(PlaceState.installed);
1330 }
1331 if (Input.GetKeyDown(KeyCode.Alpha6))
1332 {
1333 Thing thing8 = ThingGen.Create("altar");
1334 EClass._zone.AddCard(thing8, hitPoint);
1335 thing8.SetPlaceState(PlaceState.installed);
1336 }
1337 if (Input.GetKeyDown(KeyCode.Alpha7))
1338 {
1339 Thing t = ThingGen.Create("torch");
1340 EClass._zone.AddCard(t, hitPoint);
1341 }
1342 if (Input.GetKeyDown(KeyCode.Alpha8))
1343 {
1344 Thing t2 = ThingGen.Create("street_lamp");
1345 EClass._zone.AddCard(t2, hitPoint);
1346 }
1347 if (Input.GetKeyDown(KeyCode.Alpha9))
1348 {
1349 Thing t3 = ThingGen.Create("statue_elin");
1350 EClass._zone.AddCard(t3, hitPoint);
1351 }
1352 if (Input.GetKeyDown(KeyCode.Alpha0))
1353 {
1354 Thing t4 = ThingGen.TestCreate();
1355 EClass._zone.AddCard(t4, hitPoint);
1356 }
1357 if (key && Input.GetKeyDown(KeyCode.Alpha1))
1358 {
1359 Chara t5 = CharaGen.Create("korgon");
1360 EClass._zone.AddCard(t5, hitPoint);
1361 }
1362 break;
1363 case DebugHotkey.Decal:
1364 if (Input.GetKeyDown(KeyCode.Alpha1))
1365 {
1366 EClass._map.AddDecal(hitPoint.x, hitPoint.z, EClass.pc.material.decal);
1367 }
1368 if (!Input.GetKeyDown(KeyCode.Alpha2))
1369 {
1370 }
1371 break;
1372 case DebugHotkey.Test:
1373 if (Input.GetKeyDown(KeyCode.Alpha1))
1374 {
1375 QualitySettings.vSyncCount = 0;
1376 Application.targetFrameRate = 60;
1377 }
1378 if (Input.GetKeyDown(KeyCode.Alpha2))
1379 {
1380 QualitySettings.vSyncCount = 0;
1381 Application.targetFrameRate = 20;
1382 }
1383 if (Input.GetKeyDown(KeyCode.Alpha3))
1384 {
1385 QualitySettings.vSyncCount = 0;
1386 Application.targetFrameRate = 30;
1387 }
1388 if (Input.GetKeyDown(KeyCode.Alpha4))
1389 {
1390 QualitySettings.vSyncCount = 0;
1391 Application.targetFrameRate = 40;
1392 }
1393 break;
1394 }
1395 Card card = (Card)(((object)hitPoint.FirstChara) ?? ((object)hitPoint.FirstThing));
1396 if (card == null)
1397 {
1398 return;
1399 }
1400 CharaActorPCC charaActorPCC = (card.renderer.actor as CharaActor) as CharaActorPCC;
1401 if ((bool)charaActorPCC)
1402 {
1403 if (Input.GetKeyDown(KeyCode.Keypad0))
1404 {
1405 charaActorPCC.NextFrame();
1406 charaActorPCC.RefreshSprite();
1407 }
1408 if (Input.GetKeyDown(KeyCode.Keypad1))
1409 {
1410 charaActorPCC.NextDir();
1411 card.angle = charaActorPCC.provider.angle;
1412 charaActorPCC.RefreshSprite();
1413 }
1414 if (Input.GetKeyDown(KeyCode.Keypad2))
1415 {
1416 charaActorPCC.pcc.data.Randomize();
1417 charaActorPCC.provider.Rebuild();
1418 }
1419 }
1420 if (Input.GetKeyDown(KeyCode.Keypad4))
1421 {
1422 lastEmo = lastEmo.NextEnum();
1423 card.ShowEmo();
1424 card.ShowEmo(lastEmo);
1425 }
1426 if (Input.GetKeyDown(KeyCode.Keypad5))
1427 {
1428 card.ShowEmo();
1429 card.ShowEmo(lastEmo);
1430 }
1431 if (Input.GetKeyDown(KeyCode.Keypad7))
1432 {
1433 lastAnime = lastAnime.NextEnum();
1434 card.renderer.PlayAnime(lastAnime);
1435 }
1436 if (Input.GetKeyDown(KeyCode.Keypad8))
1437 {
1438 card.renderer.PlayAnime(lastAnime);
1439 animeDest = card;
1440 }
1441 if (Input.GetKeyDown(KeyCode.Keypad9))
1442 {
1443 card.renderer.PlayAnime(AnimeID.Attack, animeDest);
1444 }
1445 }
1446
1447 public void InitDebugCommands()
1448 {
1449 commands.Clear();
1450 int cat2 = 0;
1451 Add(cat2, "Save Widgets", delegate
1452 {
1453 EClass.ui.widgets.Save();
1454 });
1455 Add(cat2, "Save Widgets(Dialog)", delegate
1456 {
1457 EClass.ui.widgets.DialogSave();
1458 });
1459 Add(cat2, "Export Zone", delegate
1460 {
1462 });
1463 Add(cat2, "Export Zone(Dialog)", delegate
1464 {
1466 });
1467 Add(0, "Import Zone(Dialog)", delegate
1468 {
1470 });
1471 Add(cat2, "Validate Backer Contents", delegate
1472 {
1473 foreach (SourceBacker.Row row2 in EClass.sources.backers.rows)
1474 {
1475 if (row2.valid)
1476 {
1477 switch (row2.type)
1478 {
1479 case 1:
1480 if (!EClass.sources.things.map.ContainsKey(row2.loot))
1481 {
1482 Debug.Log(row2.id + "/remain/" + row2.Name + "/" + row2.loot);
1483 }
1484 break;
1485 case 4:
1486 if (!EClass.sources.charas.map.ContainsKey(row2.chara))
1487 {
1488 Debug.Log(row2.id + "/pet/" + row2.Name + "/" + row2.chara);
1489 }
1490 break;
1491 case 6:
1492 if (!EClass.sources.religions.map.ContainsKey(row2.deity.ToLowerInvariant()))
1493 {
1494 Debug.Log(row2.id + "/" + row2.Name + "/follower/" + row2.deity);
1495 }
1496 break;
1497 }
1498 }
1499 }
1500 });
1501 Add(cat2, "Edit PCC", delegate
1502 {
1503 EClass.ui.AddLayer<LayerEditPCC>().Activate(EClass.pc, UIPCC.Mode.Full);
1504 });
1505 Add(cat2, "COM_Teleport", COM_Teleport);
1506 Add(cat2, "LOG_Spatials", LOG_Spatials);
1507 Add(cat2, "Play Start Drama", COM_PlayStartDrama);
1508 Add(cat2, "Fix Floating Items", delegate
1509 {
1510 foreach (Thing thing in EClass._map.things)
1511 {
1512 if (thing.Pref.Float)
1513 {
1514 thing.isFloating = true;
1515 }
1516 }
1517 });
1518 cat2 = 1;
1519 Add(cat2, "Add Conditions", delegate
1520 {
1521 if (EScriptable.rnd(2) == 0)
1522 {
1523 EClass.pc.AddCondition<ConWet>();
1524 }
1525 else
1526 {
1527 EClass.pc.AddCondition<ConSuffocation>();
1528 }
1529 if (EScriptable.rnd(2) == 0)
1530 {
1531 EClass.pc.AddCondition<ConPoison>();
1532 }
1533 else
1534 {
1535 EClass.pc.AddCondition<ConDisease>();
1536 }
1537 });
1538 cat2 = 2;
1539 Add(cat2, "Max Construction", COM_MaxConstruction);
1540 Add(cat2, "Add Reserves", delegate
1541 {
1542 EClass.Home.AddReserve(CharaGen.Create("merc_archer"));
1544 EClass.Home.AddReserve(CharaGen.Create("bartender"));
1545 EClass.Home.AddReserve(CharaGen.Create("merchant"));
1549 });
1550 Add(cat2, "Add Recruits", delegate
1551 {
1552 if (EClass.Branch != null)
1553 {
1554 EClass.Branch.AddRecruit(CharaGen.Create("merc_archer"));
1555 EClass.Branch.AddRecruit(CharaGen.Create("healer"));
1556 EClass.Branch.AddRecruit(CharaGen.Create("bartender"));
1557 EClass.Branch.AddRecruit(CharaGen.Create("merchant"));
1558 EClass.Branch.AddRecruit(CharaGen.CreateFromFilter("c_wilds"));
1559 EClass.Branch.AddRecruit(CharaGen.CreateFromFilter("c_wilds"));
1560 EClass.Branch.AddRecruit(CharaGen.CreateFromFilter("c_wilds"));
1561 }
1562 });
1563 Add(cat2, "Add Resources", delegate
1564 {
1565 if (EClass.Branch != null)
1566 {
1567 EClass.Branch.resources.food.Mod(100);
1568 EClass.Branch.resources.knowledge.Mod(100);
1569 }
1570 });
1571 Add(cat2, "Remove Influence", delegate
1572 {
1573 EClass._zone.influence = 0;
1574 });
1575 Add(cat2, "Reroll Hobbies", delegate
1576 {
1577 foreach (Chara chara in EClass._map.charas)
1578 {
1579 chara.RerollHobby();
1580 }
1581 });
1582 Add(cat2, "Test_Siege", Test_Siege);
1583 Add(cat2, "Test_SiegeGuard", Test_SiegeGuard);
1584 Add(cat2, "Log_BranchMembers", delegate
1585 {
1587 {
1588 Debug.Log(EClass.Branch.members.Count);
1589 foreach (Chara member in EClass.Branch.members)
1590 {
1591 EClass.debug.Log(member);
1592 }
1593 }
1594 });
1595 cat2 = 3;
1596 Add(cat2, "Weather.Fine", delegate
1597 {
1599 });
1600 Add(cat2, "Weather.Blossom", delegate
1601 {
1603 });
1604 Add(cat2, "Weather.Random", delegate
1605 {
1607 });
1608 Add(cat2, "Weather.Ether+50", delegate
1609 {
1610 EClass.world.ModEther(50);
1612 });
1613 Add(cat2, "Season.Next", delegate
1614 {
1616 });
1617 Add(cat2, "Unreveal Map", delegate
1618 {
1619 EClass._map.ForeachCell(delegate(Cell c)
1620 {
1621 c.isSeen = false;
1622 });
1624 });
1625 Add(cat2, "Test_GodTalk", Test_GodTalk);
1626 Add(cat2, "Test_Filter", Test_Filter);
1627 Add(cat2, "Test_Grow", Test_Grow);
1628 Add(cat2, "Turn On All Lights", delegate
1629 {
1630 foreach (Thing thing2 in EClass._map.things)
1631 {
1632 if (thing2.trait.IsLighting)
1633 {
1634 thing2.trait.Toggle(on: true);
1635 }
1636 }
1637 });
1638 Add(cat2, "Reset All Custom Lights", delegate
1639 {
1640 foreach (Thing thing3 in EClass._map.things)
1641 {
1642 thing3.c_lightColor = 0;
1643 thing3.RecalculateFOV();
1644 }
1645 });
1646 Add(cat2, "Reset All obj materials", delegate
1647 {
1648 EClass._map.ForeachCell(delegate(Cell c)
1649 {
1650 if (c.HasObj)
1651 {
1652 c.objMat = (byte)c.sourceObj.DefaultMaterial.id;
1653 }
1654 });
1655 });
1656 Add(cat2, "Reset Certain obj materials", delegate
1657 {
1658 EClass._map.ForeachCell(delegate(Cell c)
1659 {
1660 if (c.HasObj && c.obj == 79)
1661 {
1662 c.objMat = (byte)c.sourceObj.DefaultMaterial.id;
1663 }
1664 });
1665 });
1666 Add(cat2, "Fix Floors under Blocks", delegate
1667 {
1668 EClass._map.ForeachCell(delegate(Cell c)
1669 {
1670 if (c.HasFullBlock)
1671 {
1672 SourceBlock.Row sourceBlock = c.sourceBlock;
1673 SourceFloor.Row row = EClass.sources.floors.alias[sourceBlock.autoFloor];
1674 EClass._map.SetFloor(c.x, c.z, row.DefaultMaterial.id, row.id);
1675 }
1676 });
1677 });
1678 Add(cat2, "Bless Inventory", delegate
1679 {
1680 EClass.pc.things.Foreach(delegate(Thing t)
1681 {
1682 t.SetBlessedState(BlessedState.Blessed);
1683 });
1684 });
1685 Add(cat2, "Curse Inventory", delegate
1686 {
1687 EClass.pc.things.Foreach(delegate(Thing t)
1688 {
1689 t.SetBlessedState(BlessedState.Cursed);
1690 });
1691 });
1692 Add(cat2, "List Global Charas", delegate
1693 {
1694 foreach (KeyValuePair<int, Chara> globalChara in EClass.game.cards.globalCharas)
1695 {
1696 Debug.Log(globalChara.Key + "/" + globalChara.Value.Name + "/" + ((globalChara.Value.currentZone == null) ? "NULL" : globalChara.Value.currentZone.Name) + "/" + globalChara.Value.faction?.ToString() + "/" + globalChara.Value.homeBranch);
1697 }
1698 });
1699 Add(cat2, "List Global Charas In Zone", delegate
1700 {
1701 foreach (KeyValuePair<int, Chara> globalChara2 in EClass.game.cards.globalCharas)
1702 {
1703 if (globalChara2.Value.currentZone == EClass._zone)
1704 {
1705 Debug.Log(globalChara2.Key + "/" + globalChara2.Value);
1706 }
1707 }
1708 });
1709 Add(cat2, "List Citizen", delegate
1710 {
1711 foreach (KeyValuePair<int, string> p in EClass._zone.dictCitizen)
1712 {
1713 Debug.Log(p.Value);
1714 Debug.Log(EClass._map.charas.Find((Chara c) => c.uid == p.Key));
1715 Debug.Log(EClass._map.deadCharas.Find((Chara c) => c.uid == p.Key));
1716 }
1717 });
1718 void Add(int cat, string id, Action action)
1719 {
1720 DebugCommand item = new DebugCommand
1721 {
1722 name = id,
1723 action = action,
1724 cat = cat
1725 };
1726 commands.Add(item);
1727 }
1728 }
1729
1730 public void Test_Grow()
1731 {
1732 EClass._map.ForeachCell(delegate(Cell c)
1733 {
1734 if (c.sourceObj.HasGrowth)
1735 {
1736 c.TryGrow();
1737 }
1738 });
1739 foreach (Thing item in EClass._map.things.Copy())
1740 {
1741 if (item.trait is TraitSeed traitSeed)
1742 {
1743 traitSeed.TrySprout(force: true);
1744 }
1745 }
1746 }
1747
1748 public void Test_GodTalk()
1749 {
1750 foreach (Religion value in EClass.game.religions.dictAll.Values)
1751 {
1752 value.Talk("test");
1753 }
1754 }
1755
1756 public void COM_Teleport()
1757 {
1758 for (int i = 0; i < 10000; i++)
1759 {
1760 Point point = EClass.pc.pos.Copy();
1761 point.x += EScriptable.rnd(60) - EScriptable.rnd(60);
1762 point.z += EScriptable.rnd(60) - EScriptable.rnd(60);
1763 if (point.IsValid && !point.cell.blocked && point.HasFloor)
1764 {
1765 EClass.pc.Teleport(point);
1766 break;
1767 }
1768 }
1769 }
1770
1772 {
1773 EClass.ui.CloseLayers();
1774 EClass.game.world.date.hour = 2;
1776 LayerDrama.ActivateMain("mono", "1-2");
1777 }
1778
1779 public void Test_Filter()
1780 {
1781 bilinear = !bilinear;
1782 MeshPass[] passes = EClass.scene.passes;
1783 for (int i = 0; i < passes.Length; i++)
1784 {
1785 passes[i].mat.GetTexture("_MainTex").filterMode = (bilinear ? FilterMode.Bilinear : FilterMode.Point);
1786 }
1787 }
1788
1789 public void LOG_Spatials()
1790 {
1791 foreach (Spatial child in EClass.world.region.children)
1792 {
1793 Debug.Log(child.uid + "/" + child.Name + "/" + child.mainFaction.name + "/" + (child == EClass.player.zone));
1794 }
1795 }
1796
1797 public void Test_SiegeGuard()
1798 {
1799 if (EClass._zone.events.GetEvent<ZoneEventSiegeGuard>() == null)
1800 {
1802 }
1803 else
1804 {
1806 }
1807 }
1808
1809 public void Test_Siege()
1810 {
1811 if (EClass._zone.events.GetEvent<ZoneEventSiege>() == null)
1812 {
1814 }
1815 else
1816 {
1818 }
1819 }
1820
1822 {
1823 if (EClass.pc.homeBranch != null)
1824 {
1826 }
1827 }
1828
1829 public static bool CheatEnabled()
1830 {
1831 if (!EClass.debug.enable)
1832 {
1833 return EClass.game.config.cheat;
1834 }
1835 return true;
1836 }
1837
1838 [ConsoleCommand("")]
1839 public static string Cheat()
1840 {
1841 EClass.game.config.cheat = true;
1842 return "Cheat Enabled";
1843 }
1844
1845 [ConsoleCommand("")]
1846 public static string Reset_LoytelDebt()
1847 {
1848 QuestDebt questDebt = EClass.game.quests.Get<QuestDebt>();
1849 if (questDebt == null)
1850 {
1851 return "Quest Status Not Valid.";
1852 }
1853 questDebt.stage = 0;
1854 questDebt.paid = false;
1855 questDebt.gaveBill = false;
1856 EClass.player.debt = 20000000;
1857 Thing thing = ThingGen.Create("856");
1858 thing.refVal = 109;
1859 EClass.pc.Pick(thing);
1860 return "Quest Reset!";
1861 }
1862
1863 [ConsoleCommand("")]
1864 public static string Fix_RemoveDuplicateUnique()
1865 {
1866 if (EClass.Branch == null)
1867 {
1868 return "No Branch";
1869 }
1870 EClass.Branch.members.ForeachReverse(delegate(Chara c)
1871 {
1872 if ((c.id == "kettle" || c.id == "quru") && EClass.Branch.members.Where((Chara c2) => c2.id == c.id).Count() >= 2)
1873 {
1874 EClass.Branch.RemoveMemeber(c);
1875 c.Destroy();
1876 }
1877 });
1878 return "Fixed!";
1879 }
1880
1881 [ConsoleCommand("")]
1882 public static string Fix_EtherDisease()
1883 {
1884 EClass.pc.ModCorruption(-100000);
1885 Chara chara = CharaGen.Create("chara");
1886 chara.ChangeRace(EClass.pc.race.id);
1887 chara.ChangeJob(EClass.pc.job.id);
1888 string text = "";
1889 foreach (Element value in chara.elements.dict.Values)
1890 {
1891 if (!(value.source.category != "attribute"))
1892 {
1893 Element orCreateElement = EClass.pc.elements.GetOrCreateElement(value.id);
1894 if (value.vBase > orCreateElement.vBase)
1895 {
1896 text = text + "Fixing Base Value:" + orCreateElement.Name + " Before:" + orCreateElement.vBase + " Now:" + (value.vBase + 1) + Environment.NewLine;
1897 EClass.pc.elements.ModBase(orCreateElement.id, value.vBase - orCreateElement.vBase + 1);
1898 }
1899 }
1900 }
1901 return text + "Fixed!";
1902 }
1903
1904 [ConsoleCommand("")]
1905 public static string Fix_LostCore()
1906 {
1908 {
1909 return "Not in base.";
1910 }
1911 foreach (Thing thing in EClass._map.things)
1912 {
1913 if (thing.trait is TraitCoreZone)
1914 {
1915 return "Base already has core.";
1916 }
1917 }
1918 if (EClass.pc.things.Find((Thing t) => t.trait is TraitCoreZone) != null)
1919 {
1920 return "Player has core.";
1921 }
1923 return "Done.";
1924 }
1925
1926 [ConsoleCommand("")]
1927 public static string Fix_RemoveDemitas()
1928 {
1929 List<Chara> list = new List<Chara>();
1930 foreach (Chara value in EClass.game.cards.globalCharas.Values)
1931 {
1932 if (value.id == "demitas" && value.currentZone == EClass._zone)
1933 {
1934 list.Add(value);
1935 }
1936 }
1937 if (list.Count > 1)
1938 {
1939 Chara chara = list[1];
1940 chara.homeBranch.BanishMember(chara);
1941 chara.Destroy();
1942 return "Demitas Removed!";
1943 }
1944 return "Not enough Demitas!";
1945 }
1946
1947 [ConsoleCommand("")]
1948 public static string Fix_RemoveDesignations()
1949 {
1950 EClass._map.ForeachCell(delegate(Cell c)
1951 {
1952 if (c.detail != null && c.detail.designation != null)
1953 {
1954 c.detail.designation.taskList.Remove(c.detail.designation);
1955 }
1956 });
1957 return "Done.";
1958 }
1959
1960 [ConsoleCommand("")]
1961 public static string ListChara()
1962 {
1963 string text = "";
1964 foreach (SourceChara.Row row in EClass.sources.charas.rows)
1965 {
1966 text = text + row.id + "\n";
1967 }
1968 return text;
1969 }
1970
1971 [ConsoleCommand("")]
1972 public static string ListThing()
1973 {
1974 string text = "";
1975 foreach (SourceThing.Row row in EClass.sources.things.rows)
1976 {
1977 text = text + row.id + "\n";
1978 }
1979 return text;
1980 }
1981
1982 [ConsoleCommand("")]
1983 public static string SetElement(string alias, int value, int potential = 100)
1984 {
1985 if (!CheatEnabled())
1986 {
1987 return EnableCheat;
1988 }
1989 SourceElement.Row row = EClass.sources.elements.alias.TryGetValue(alias);
1990 if (row == null)
1991 {
1992 return "Element not found.";
1993 }
1994 if (row.type == "Feat")
1995 {
1996 EClass.pc.SetFeat(row.id, value, msg: true);
1997 }
1998 else
1999 {
2000 EClass.pc.elements.SetBase(row.id, value, potential);
2001 }
2002 return "Done.";
2003 }
2004
2005 [ConsoleCommand("")]
2006 public static string SpawnBoss(string id)
2007 {
2008 if (!CheatEnabled())
2009 {
2010 return EnableCheat;
2011 }
2012 if (EClass.sources.charas.map.ContainsKey(id))
2013 {
2015 return "Spawned " + chara.Name;
2016 }
2017 return "'" + id + "' does not exist in the database.";
2018 }
2019
2020 [ConsoleCommand("")]
2021 public static string Spawn(string id, int num = 1, string aliasMat = "", int objLv = -1)
2022 {
2023 if (!CheatEnabled())
2024 {
2025 return EnableCheat;
2026 }
2027 if (EClass.sources.things.map.ContainsKey(id))
2028 {
2029 Thing thing = ThingGen.Create(id, -1, objLv).SetNum(num);
2030 if (!aliasMat.IsEmpty())
2031 {
2032 thing.ChangeMaterial(aliasMat);
2033 }
2034 EClass._zone.AddCard(thing, EClass.pc.pos);
2035 return "Spawned " + thing.Name;
2036 }
2037 if (EClass.sources.charas.map.ContainsKey(id))
2038 {
2039 Chara chara = CharaGen.Create(id);
2040 if (objLv != -1)
2041 {
2042 chara.SetLv(objLv);
2043 }
2044 EClass._zone.AddCard(chara, EClass.pc.pos);
2045 return "Spawned " + chara.Name;
2046 }
2047 return "'" + id + "' does not exist in the database.";
2048 }
2049
2050 [ConsoleCommand("")]
2051 public static string TestSpawn(int lv, int num, int lvRange = -1)
2052 {
2053 if (!CheatEnabled())
2054 {
2055 return EnableCheat;
2056 }
2057 if (EClass._zone is Zone_Arena)
2058 {
2059 EClass._zone._dangerLv = lv;
2060 }
2061 foreach (Chara item in EClass._map.charas.Where((Chara c) => c.HasEditorTag(EditorTag.SpawnTest)).ToList())
2062 {
2063 item.Destroy();
2064 }
2065 for (int i = 0; i < num; i++)
2066 {
2067 EClass._zone.SpawnMob(EClass.pc.pos.GetNearestPoint(allowBlock: false, allowChara: false, allowInstalled: false, ignoreCenter: true), new SpawnSetting
2068 {
2069 filterLv = lv,
2070 levelRange = lvRange
2071 }).AddEditorTag(EditorTag.SpawnTest);
2072 }
2073 return "Spawned.";
2074 }
2075
2076 [ConsoleCommand("")]
2077 public static string ResetPetUpgrades()
2078 {
2079 foreach (Chara value in EClass.game.cards.globalCharas.Values)
2080 {
2081 if (value.IsPCFaction)
2082 {
2083 value.ResetUpgrade();
2084 }
2085 }
2086 return "Not Implemented.";
2087 }
2088
2089 [ConsoleCommand("")]
2090 public static string ResetPrincipalSeals()
2091 {
2092 if (!CheatEnabled())
2093 {
2094 return EnableCheat;
2095 }
2096 EClass.game.principal.modified.Clear();
2097 return "Done.";
2098 }
2099
2100 [ConsoleCommand("")]
2101 public static string GodMode()
2102 {
2103 if (!CheatEnabled())
2104 {
2105 return EnableCheat;
2106 }
2107 EClass.pc.Revive();
2108 EClass.pc.hp = EClass.pc.MaxHP;
2109 return "I'm God!";
2110 }
2111
2112 [ConsoleCommand("")]
2113 public static string ModFame(int amount)
2114 {
2115 if (!CheatEnabled())
2116 {
2117 return EnableCheat;
2118 }
2119 EClass.player.ModFame(amount);
2120 return "Done.";
2121 }
2122
2123 [ConsoleCommand("")]
2124 public static string MaxFame()
2125 {
2126 if (!CheatEnabled())
2127 {
2128 return EnableCheat;
2129 }
2130 if (EClass.player.CountKeyItem("license_adv") == 0)
2131 {
2132 EClass.player.ModKeyItem("license_adv");
2133 }
2134 EClass.player.ModFame(int.MaxValue);
2135 return "Done.";
2136 }
2137
2138 [ConsoleCommand("")]
2139 public static string ModKarma(int amount)
2140 {
2141 if (!CheatEnabled())
2142 {
2143 return EnableCheat;
2144 }
2145 EClass.player.ModKarma(amount);
2146 return "Done.";
2147 }
2148
2149 [ConsoleCommand("")]
2150 public static string ModContribution(int amount)
2151 {
2152 if (!CheatEnabled())
2153 {
2154 return EnableCheat;
2155 }
2157 return "Done.";
2158 }
2159
2160 [ConsoleCommand("")]
2161 public static string Rust()
2162 {
2163 if (!CheatEnabled())
2164 {
2165 return EnableCheat;
2166 }
2167 EClass.pc.things.Foreach(delegate(Thing t)
2168 {
2169 t.ModEncLv(-100);
2170 });
2171 return "Done.";
2172 }
2173
2174 [ConsoleCommand("")]
2175 public static string FlyMode()
2176 {
2178 return "I can fly!";
2179 }
2180
2181 [ConsoleCommand("")]
2182 public static string ChangeRace(string id = "?")
2183 {
2184 if (EClass.sources.races.map.ContainsKey(id))
2185 {
2186 Thing thing = null;
2187 foreach (BodySlot slot in EClass.pc.body.slots)
2188 {
2189 if (slot.thing != null)
2190 {
2191 if (slot.thing.blessedState <= BlessedState.Cursed)
2192 {
2193 slot.thing.blessedState = BlessedState.Normal;
2194 }
2195 if (slot.thing.trait is TraitToolBelt)
2196 {
2197 thing = slot.thing;
2198 }
2199 EClass.pc.body.Unequip(slot);
2200 }
2201 }
2204 EClass.pc.ChangeRace(id);
2205 if (EClass.ui.IsInventoryOpen)
2206 {
2207 EClass.ui.ToggleInventory();
2208 }
2211 EClass.pc.body.Equip(thing);
2212 return "Done.";
2213 }
2214 string text = "";
2215 foreach (SourceRace.Row row in EClass.sources.races.rows)
2216 {
2217 text = text + row.id + " " + row.GetName() + Environment.NewLine;
2218 }
2219 return text;
2220 }
2221
2222 [ConsoleCommand("")]
2223 public static string ChangeJob(string id = "?")
2224 {
2225 if (EClass.sources.jobs.map.ContainsKey(id))
2226 {
2227 EClass.pc.ChangeJob(id);
2229 return "Done.";
2230 }
2231 string text = "";
2232 foreach (SourceJob.Row row in EClass.sources.jobs.rows)
2233 {
2234 text = text + row.id + " " + row.GetName() + Environment.NewLine;
2235 }
2236 return text;
2237 }
2238
2239 [ConsoleCommand("")]
2240 public static string FirstAdventurer()
2241 {
2242 string text = "Steam is not running.";
2243 DateTime dateTime = new DateTime(2024, 11, 3, 6, 0, 0);
2244 DateTimeOffset dateTimeOffset = (Application.isEditor ? new DateTimeOffset(2024, 11, 6, 1, 9, 0, default(TimeSpan)) : ((!SteamAPI.IsSteamRunning()) ? new DateTimeOffset(9999, 1, 1, 1, 9, 0, default(TimeSpan)) : DateTimeOffset.FromUnixTimeSeconds(SteamApps.GetEarliestPurchaseUnixTime(EClass.core.steam.steamworks.settings.applicationId))));
2245 dateTimeOffset = dateTimeOffset.ToOffset(new TimeSpan(9, 0, 0));
2246 text = ((dateTimeOffset < dateTime) ? "Valid: " : "Invalid: ");
2247 text = text + "Arrived North Tyris on " + dateTimeOffset.Year + " " + dateTimeOffset.Month + "/" + dateTimeOffset.Day + " " + dateTimeOffset.Hour + ":" + dateTimeOffset.Minute;
2248 return text + " Eligible by " + dateTime.Year + " " + dateTime.Month + "/" + dateTime.Day + " " + dateTime.Hour + ":" + dateTime.Minute;
2249 }
2250
2251 [ConsoleCommand("")]
2252 public static string RegenerateNames()
2253 {
2255 NameGen.list = null;
2256 AliasGen.list = null;
2257 NameGen.Init();
2258 AliasGen.Init();
2259 foreach (Chara chara in EClass._map.charas)
2260 {
2261 if (!chara.IsPC)
2262 {
2263 if (chara.source.name == "*r")
2264 {
2265 chara.c_altName = NameGen.getRandomName();
2266 }
2267 if (!chara._alias.IsEmpty())
2268 {
2269 chara._alias = AliasGen.GetRandomAlias();
2270 }
2271 }
2272 }
2273 return "Done!";
2274 }
2275
2276 [ConsoleCommand("")]
2277 public static string AllRecipe(bool forget = false)
2278 {
2279 if (!CheatEnabled())
2280 {
2281 return EnableCheat;
2282 }
2283 if (forget)
2284 {
2286 }
2287 else
2288 {
2290 }
2291 return "Done!";
2292 }
2293
2294 [ConsoleCommand("")]
2295 public static string LastWish(string name)
2296 {
2297 string text = "";
2298 foreach (SourceBacker.Row row in EClass.sources.backers.rows)
2299 {
2300 if (row.name.Contains(name) || row.id.ToString() == name)
2301 {
2302 text = text + row.id + " valid?:" + row.valid + " lang:" + row.lang + " type:" + row.type + " destroyed:" + EClass.player.doneBackers.Contains(row.id) + " loc:" + (row.loc.IsEmpty() ? "random" : row.loc) + Environment.NewLine;
2303 }
2304 }
2305 if (text == "")
2306 {
2307 return "Not Found";
2308 }
2309 return text + Resources.Load<TextAsset>("logo2").text;
2310 }
2311
2312 [ConsoleCommand("")]
2313 public static string ClearLastWishFlag()
2314 {
2315 if (!CheatEnabled())
2316 {
2317 return EnableCheat;
2318 }
2319 EClass.player.doneBackers.Clear();
2320 return Resources.Load<TextAsset>("logo2").text + Environment.NewLine + "Done!";
2321 }
2322
2323 [ConsoleCommand("")]
2324 public static string Resource()
2325 {
2326 if (!CheatEnabled())
2327 {
2328 return EnableCheat;
2329 }
2331 return "Resources spawned.";
2332 }
2333
2334 public void Log(object o)
2335 {
2336 Debug.Log(o);
2337 }
2338
2339 public void NextBGM()
2340 {
2341 if ((bool)SoundManager.current)
2342 {
2343 SoundManager.current.NextBGM();
2344 }
2345 }
2346
2347 public void ToggleRevealMap()
2348 {
2349 revealMap = !revealMap;
2350 if (revealMap)
2351 {
2353 }
2354 SE.ClickGeneral();
2355 }
2356
2357 public void LoadBroadcast()
2358 {
2359 TextAsset textAsset = Resources.Load<TextAsset>("Data/Text/broadcast");
2360 blines = textAsset.text.Split('-');
2361 }
2362
2363 public void BroadcastNext()
2364 {
2365 LoadBroadcast();
2366 if (Input.GetKey(KeyCode.LeftControl))
2367 {
2368 bidx--;
2369 }
2370 bidx = Mathf.Clamp(bidx, 0, blines.Length - 1);
2371 string text = blines[bidx];
2372 bidx += ((!Input.GetKey(KeyCode.LeftShift)) ? 1 : (-1));
2373 EClass.pc.SayRaw(text.TrimNewLines());
2374 }
2375}
AnimeID
Definition: AnimeID.cs:2
AttackSource
Definition: AttackSource.cs:2
BlessedState
Definition: BlessedState.cs:2
EAction
Definition: EAction.cs:2
EditorTag
Definition: EditorTag.cs:2
Emo
Definition: Emo.cs:2
Hostility
Definition: Hostility.cs:2
ID_Achievement
PlaceState
Definition: PlaceState.cs:2
if(item3.idFile==idFirstFile &&item3.id==idFirstTopic)
Definition: UIBook.cs:627
list. Add(item3)
void Activate(Thing t)
static AM_Inspect Inspect
Definition: ActionMode.cs:23
void Deactivate()
Definition: ActionMode.cs:529
virtual bool IsBuildMode
Definition: ActionMode.cs:181
Definition: Anime.cs:6
void WaitForEndOfFrame(Action action)
Definition: BaseCore.cs:61
List< Action > actionsNextFrame
Definition: BaseCore.cs:31
ReleaseMode releaseMode
Definition: BaseCore.cs:23
BaseTileMap tileMap
RenderData rendererInnerBlock
Definition: BaseTileMap.cs:203
Thing thing
Definition: BodySlot.cs:8
static void Init()
Definition: BookList.cs:22
static void Set(CardBlueprint _bp=null)
static CardBlueprint DebugEQ
Chara Find(string id)
Definition: CardManager.cs:20
GlobalCharaList globalCharas
Definition: CardManager.cs:46
void PlayAnime(AnimeID id, bool force)
void Say(string text, Color c=default(Color), float duration=0f)
Definition: Card.cs:11
float angle
Definition: Card.cs:71
Thing TryMakeRandomItem(int lv=-1, TryMakeRandomItemSource itemSource=TryMakeRandomItemSource.Default, Chara crafter=null)
Definition: Card.cs:5444
void Teleport(Point point, bool silent=false, bool force=false)
Definition: Card.cs:5859
void MakeFigureFrom(string id)
Definition: Card.cs:5704
void SetPlaceState(PlaceState newState, bool byPlayer=false)
Definition: Card.cs:3747
ElementContainerCard elements
Definition: Card.cs:41
string id
Definition: Card.cs:35
SourceMaterial.Row material
Definition: Card.cs:2051
SoundSource PlaySound(string id, float v=1f, bool spatial=true)
Definition: Card.cs:6165
Card ChangeMaterial(int idNew, bool ignoreFixedMaterial=false)
Definition: Card.cs:3041
string c_altName
Definition: Card.cs:1593
Card AddCard(Card c)
Definition: Card.cs:3090
Thing AddThing(string id, int lv=-1)
Definition: Card.cs:3104
Card SetLv(int a)
Definition: Card.cs:2905
string Name
Definition: Card.cs:2137
void AddEditorTag(EditorTag tag)
Definition: Card.cs:2605
Thing SetNum(int a)
Definition: Card.cs:3495
virtual void SetBlessedState(BlessedState s)
Definition: Card.cs:3895
void RecalculateFOV()
Definition: Card.cs:6377
Point pos
Definition: Card.cs:59
Effect PlayEffect(string id, bool useRenderPos=true, float range=0f, Vector3 fix=default(Vector3))
Definition: Card.cs:6199
void Dye(string idMat)
Definition: Card.cs:6011
Trait trait
Definition: Card.cs:53
void ModCurrency(int a, string id="money")
Definition: Card.cs:3961
void ModEncLv(int a)
Definition: Card.cs:3846
void SetEncLv(int a)
Definition: Card.cs:3864
void Destroy()
Definition: Card.cs:5070
bool HasEditorTag(EditorTag tag)
Definition: Card.cs:2600
ThingContainer things
Definition: Card.cs:38
virtual Thing Thing
Definition: Card.cs:2058
BlessedState blessedState
Definition: Card.cs:278
int dir
Definition: Card.cs:146
void ModNum(int a, bool notify=true)
Definition: Card.cs:3515
void SayRaw(string text, string ref1=null, string ref2=null)
Definition: Card.cs:6797
CardRenderer renderer
Definition: Card.cs:61
virtual bool flipX
Definition: Card.cs:2116
bool HasElement(int ele, bool includeNagative=false)
Definition: Card.cs:5920
int LV
Definition: Card.cs:386
virtual bool isSynced
Definition: Card.cs:2087
Thing MakeEgg(bool effect=true, int num=1, bool addToZone=true, int fertChance=20, BlessedState? state=null)
Definition: Card.cs:5727
TaskDesignation designation
Definition: CellDetail.cs:19
List< Thing > things
Definition: CellDetail.cs:11
List< Chara > charas
Definition: CellDetail.cs:13
Definition: Cell.cs:7
CellDetail detail
Definition: Cell.cs:92
byte obj
Definition: Cell.cs:38
SourceObj.Row sourceObj
Definition: Cell.cs:1072
bool HasObj
Definition: Cell.cs:641
bool HasFullBlock
Definition: Cell.cs:817
override void RefreshSprite()
override void NextDir()
override void NextFrame()
SpriteProvider provider
Definition: CharaActorPCC.cs:9
void AddBodyPart(int ele, Thing thing=null)
Definition: CharaBody.cs:268
void Unequip(Thing thing, bool refresh=true)
Definition: CharaBody.cs:49
List< BodySlot > slots
Definition: CharaBody.cs:8
Thing GetEquippedThing(int elementId)
Definition: CharaBody.cs:409
bool Equip(Thing thing, BodySlot slot=null, bool msg=true)
Definition: CharaBody.cs:186
void RemoveBodyPart(int ele)
Definition: CharaBody.cs:323
static Chara CreateFromFilter(string id, int lv=-1, int levelRange=-1)
Definition: CharaGen.cs:22
static Chara Create(string id, int lv=-1)
Definition: CharaGen.cs:17
Definition: Chara.cs:10
void ChangeRace(string idNew)
Definition: Chara.cs:2261
CharaBody body
Definition: Chara.cs:94
Condition AddCondition(string id, int p=100, bool force=false)
Definition: Chara.cs:9244
override bool IsPC
Definition: Chara.cs:612
SourceJob.Row job
Definition: Chara.cs:466
void SetFeat(int id, int value=1, bool msg=false)
Definition: Chara.cs:9873
void ResetUpgrade()
Definition: Chara.cs:8540
Party party
Definition: Chara.cs:43
Chara SetHomeZone(Zone zone)
Definition: Chara.cs:1427
Chara SetFaction(Faction f)
Definition: Chara.cs:1419
Chara SetGlobal(Zone _home, int x, int z)
Definition: Chara.cs:1471
override bool IsPCFaction
Definition: Chara.cs:671
Chara ScaleByPrincipal()
Definition: Chara.cs:1694
override int MaxHP
Definition: Chara.cs:708
Zone currentZone
Definition: Chara.cs:255
SourceChara.Row source
Definition: Chara.cs:158
Stats mana
Definition: Chara.cs:1154
Stats stamina
Definition: Chara.cs:1146
void ChangeJob(string idNew)
Definition: Chara.cs:2162
void Revive(Point p=null, bool msg=false)
Definition: Chara.cs:5136
void ModCorruption(int a)
Definition: Chara.cs:9815
void RestockEquip(bool onCreate)
Definition: Chara.cs:4688
string _alias
Definition: Chara.cs:219
FactionBranch homeBranch
Definition: Chara.cs:1066
bool IsHostile()
Definition: Chara.cs:6526
Thing Pick(Thing t, bool msg=true, bool tryStack=true)
Definition: Chara.cs:4303
void EQ_CAT(string s)
Definition: Chara.cs:5076
SourceRace.Row race
Definition: Chara.cs:464
UD_String_MatData matColors
ColorProfile profile
Definition: CoreDebug.cs:70
bool ignoreWeight
Definition: CoreDebug.cs:187
bool marryAnytime
Definition: CoreDebug.cs:224
bool godMode
Definition: CoreDebug.cs:173
bool godFood
Definition: CoreDebug.cs:183
bool allStory
Definition: CoreDebug.cs:239
static string Resource()
Definition: CoreDebug.cs:2324
static string ModKarma(int amount)
Definition: CoreDebug.cs:2139
void Init()
Definition: CoreDebug.cs:328
bool godCraft
Definition: CoreDebug.cs:181
bool debugScatter
Definition: CoreDebug.cs:177
bool skipMod
Definition: CoreDebug.cs:134
bool allBGM
Definition: CoreDebug.cs:199
bool dontCompressSave
Definition: CoreDebug.cs:132
static bool CheatEnabled()
Definition: CoreDebug.cs:1829
StartParty startParty
Definition: CoreDebug.cs:100
bool showSceneSelector
Definition: CoreDebug.cs:109
bool allSkill
Definition: CoreDebug.cs:193
string[] blines
Definition: CoreDebug.cs:281
void Test_Siege()
Definition: CoreDebug.cs:1809
static string Fix_EtherDisease()
Definition: CoreDebug.cs:1882
bool showTone
Definition: CoreDebug.cs:166
bool allPolicy
Definition: CoreDebug.cs:237
bool testFixedColor
Definition: CoreDebug.cs:262
bool naked
Definition: CoreDebug.cs:296
Thing GetDebugContainer()
Definition: CoreDebug.cs:775
IEnumerable< string > ZoneIDs()
Definition: CoreDebug.cs:317
bool allMenu
Definition: CoreDebug.cs:235
void ToggleRevealMap()
Definition: CoreDebug.cs:2347
bool alwaysResetWindow
Definition: CoreDebug.cs:128
bool test
Definition: CoreDebug.cs:170
int indexResolution
Definition: CoreDebug.cs:290
int bidx
Definition: CoreDebug.cs:276
string startZone
Definition: CoreDebug.cs:106
bool logCombat
Definition: CoreDebug.cs:245
DebugHotkey debugHotkeys
Definition: CoreDebug.cs:143
bool inviteAnytime
Definition: CoreDebug.cs:222
static string Fix_RemoveDesignations()
Definition: CoreDebug.cs:1948
bool _godBuild
Definition: CoreDebug.cs:179
void Test_Filter()
Definition: CoreDebug.cs:1779
int numResource
Definition: CoreDebug.cs:217
MatColorTest matColorTest
Definition: CoreDebug.cs:258
Card animeDest
Definition: CoreDebug.cs:273
bool debugInput
Definition: CoreDebug.cs:139
List< DebugCommand > commands
Definition: CoreDebug.cs:283
bool logDice
Definition: CoreDebug.cs:247
bool revealMap
Definition: CoreDebug.cs:154
static string FirstAdventurer()
Definition: CoreDebug.cs:2240
static string ClearLastWishFlag()
Definition: CoreDebug.cs:2313
void Test_Grow()
Definition: CoreDebug.cs:1730
static string Reset_LoytelDebt()
Definition: CoreDebug.cs:1846
bool showFav
Definition: CoreDebug.cs:226
void LoadBroadcast()
Definition: CoreDebug.cs:2357
bool keypadDebug
Definition: CoreDebug.cs:141
bool unlimitedInterest
Definition: CoreDebug.cs:220
static string EnableCheat
Definition: CoreDebug.cs:315
bool travelAnywhere
Definition: CoreDebug.cs:207
static string FlyMode()
Definition: CoreDebug.cs:2175
bool allAbility
Definition: CoreDebug.cs:191
bool instaReturn
Definition: CoreDebug.cs:205
bool ignorePool
Definition: CoreDebug.cs:117
bool alwaysFavFood
Definition: CoreDebug.cs:228
bool useNewConfig
Definition: CoreDebug.cs:124
string command
Definition: CoreDebug.cs:136
void Log(object o)
Definition: CoreDebug.cs:2334
bool showExtra
Definition: CoreDebug.cs:168
bool returnAnywhere
Definition: CoreDebug.cs:203
void SetStartStockpile(Thing container, int num=100)
Definition: CoreDebug.cs:729
static string SetElement(string alias, int value, int potential=100)
Definition: CoreDebug.cs:1983
void ValidateData()
Definition: CoreDebug.cs:854
bool ignoreEncounter
Definition: CoreDebug.cs:201
bool validateData
Definition: CoreDebug.cs:130
static string Rust()
Definition: CoreDebug.cs:2161
static string Spawn(string id, int num=1, string aliasMat="", int objLv=-1)
Definition: CoreDebug.cs:2021
bool runtimeGodBuild
Definition: CoreDebug.cs:299
Emo lastEmo
Definition: CoreDebug.cs:294
void InitDebugCommands()
Definition: CoreDebug.cs:1447
static string GodMode()
Definition: CoreDebug.cs:2101
void COM_MaxConstruction()
Definition: CoreDebug.cs:1821
static string ModFame(int amount)
Definition: CoreDebug.cs:2113
static string Fix_RemoveDemitas()
Definition: CoreDebug.cs:1927
bool validatePref
Definition: CoreDebug.cs:250
bool allHomeSkill
Definition: CoreDebug.cs:195
readonly List< int[]> resolutions
Definition: CoreDebug.cs:266
void COM_Teleport()
Definition: CoreDebug.cs:1756
void COM_PlayStartDrama()
Definition: CoreDebug.cs:1771
static string RegenerateNames()
Definition: CoreDebug.cs:2252
int param1
Definition: CoreDebug.cs:253
void QuickStart()
Definition: CoreDebug.cs:334
void Test_SiegeGuard()
Definition: CoreDebug.cs:1797
void UpdateInput()
Definition: CoreDebug.cs:864
bool enable
Definition: CoreDebug.cs:286
bool ignorePopup
Definition: CoreDebug.cs:160
void LOG_Spatials()
Definition: CoreDebug.cs:1789
bool skipModSync
Definition: CoreDebug.cs:112
int param2
Definition: CoreDebug.cs:256
Color32 fixedColor
Definition: CoreDebug.cs:264
static string Cheat()
Definition: CoreDebug.cs:1839
bool skipEvent
Definition: CoreDebug.cs:162
bool testLOS2
Definition: CoreDebug.cs:150
bool logAdv
Definition: CoreDebug.cs:242
bool autoIdentify
Definition: CoreDebug.cs:189
AnimeID lastAnime
Definition: CoreDebug.cs:292
static string ListThing()
Definition: CoreDebug.cs:1972
bool resetPlayerConfig
Definition: CoreDebug.cs:120
void AddAllRecipes()
Definition: CoreDebug.cs:718
void UpdateAlways()
Definition: CoreDebug.cs:805
bool godBuild
Definition: CoreDebug.cs:304
bool autoAdvanceQuest
Definition: CoreDebug.cs:211
static string AllRecipe(bool forget=false)
Definition: CoreDebug.cs:2277
static string ListChara()
Definition: CoreDebug.cs:1961
int startHour
Definition: CoreDebug.cs:102
static string ChangeJob(string id="?")
Definition: CoreDebug.cs:2223
bool testThingQuality
Definition: CoreDebug.cs:215
void Test_GodTalk()
Definition: CoreDebug.cs:1748
bool allRecipe
Definition: CoreDebug.cs:233
static string MaxFame()
Definition: CoreDebug.cs:2124
bool bilinear
Definition: CoreDebug.cs:278
StartLoadout startLoadout
Definition: CoreDebug.cs:98
bool skipNerun
Definition: CoreDebug.cs:164
static string ResetPetUpgrades()
Definition: CoreDebug.cs:2077
void EnableDebugResource()
Definition: CoreDebug.cs:787
bool debugHoard
Definition: CoreDebug.cs:156
Thing GetOrCreateDebugContainer()
Definition: CoreDebug.cs:758
bool debugProps
Definition: CoreDebug.cs:152
static string ModContribution(int amount)
Definition: CoreDebug.cs:2150
static string ResetPrincipalSeals()
Definition: CoreDebug.cs:2090
void OnLoad()
Definition: CoreDebug.cs:710
void NextBGM()
Definition: CoreDebug.cs:2339
bool maxQuests
Definition: CoreDebug.cs:230
static string LastWish(string name)
Definition: CoreDebug.cs:2295
static string Fix_LostCore()
Definition: CoreDebug.cs:1905
bool enableMapPieceEditor
Definition: CoreDebug.cs:213
bool revealInner
Definition: CoreDebug.cs:158
bool allArt
Definition: CoreDebug.cs:197
bool testLOS
Definition: CoreDebug.cs:148
static string SpawnBoss(string id)
Definition: CoreDebug.cs:2006
StartSetting startSetting
Definition: CoreDebug.cs:104
bool ignoreAutoSave
Definition: CoreDebug.cs:126
bool boradcast
Definition: CoreDebug.cs:260
static string TestSpawn(int lv, int num, int lvRange=-1)
Definition: CoreDebug.cs:2051
int advanceMin
Definition: CoreDebug.cs:146
void SpawnCheatContainer()
Definition: CoreDebug.cs:801
static string Fix_RemoveDuplicateUnique()
Definition: CoreDebug.cs:1864
bool ignoreBuildRule
Definition: CoreDebug.cs:185
static string ChangeRace(string id="?")
Definition: CoreDebug.cs:2182
void BroadcastNext()
Definition: CoreDebug.cs:2363
bool hidePCItemsInBuild
Definition: CoreDebug.cs:209
Lang.LangCode langCode
Definition: CoreDebug.cs:114
bool randomResource
Definition: CoreDebug.cs:175
bool dontUseThread
Definition: CoreDebug.cs:122
StartScene startScene
Definition: CoreDebug.cs:96
static string RootSave
Definition: CorePath.cs:206
RectData abilityDebug
Definition: CoreRef.cs:170
Rects rects
Definition: CoreRef.cs:361
CoreRef refs
Definition: Core.cs:51
ModManager mods
Definition: Core.cs:39
Steam steam
Definition: Core.cs:57
bool IsGameStarted
Definition: Core.cs:84
void SetLang(string langCode, bool force=false)
Definition: Core.cs:705
static Thing MakeLoveLunch(Chara c)
Definition: CraftUtil.cs:220
static Thing MakeBloodMeal(Chara sucker, Chara feeder, bool msg=true)
Definition: CraftUtil.cs:154
Definition: EClass.cs:6
static Game game
Definition: EClass.cs:9
static Scene scene
Definition: EClass.cs:31
static Faction Home
Definition: EClass.cs:27
static Core core
Definition: EClass.cs:7
static Zone _zone
Definition: EClass.cs:21
static World world
Definition: EClass.cs:41
static Map _map
Definition: EClass.cs:19
static SourceManager sources
Definition: EClass.cs:43
static FactionBranch Branch
Definition: EClass.cs:23
static BaseGameScreen screen
Definition: EClass.cs:33
static Player player
Definition: EClass.cs:13
static Chara pc
Definition: EClass.cs:15
static CoreDebug debug
Definition: EClass.cs:49
static SoundManager Sound
Definition: EClass.cs:47
static UI ui
Definition: EClass.cs:17
Definition: EInput.cs:8
static bool isCtrlDown
Definition: EInput.cs:263
static void Consume(int _skipFrame)
Definition: EInput.cs:656
static bool isInputFieldActive
Definition: EInput.cs:277
static bool isShiftDown
Definition: EInput.cs:261
static EAction action
Definition: EInput.cs:259
static int rnd(int a)
Definition: EScriptable.cs:5
Dictionary< int, Element > dict
Element ModBase(int ele, int v)
Element SetBase(string alias, int v, int potential=0)
Element GetOrCreateElement(Element ele)
int id
Definition: ELEMENT.cs:250
int vBase
Definition: ELEMENT.cs:252
SourceElement.Row source
Definition: ELEMENT.cs:273
int vPotential
Definition: ELEMENT.cs:256
void ModExp(int a)
int GetNextExp(int _lv=-1)
List< Chara > members
void BanishMember(Chara c, bool skipMsg=false)
void AddMemeber(Chara c)
string name
Definition: FACTION.cs:135
void AddReserve(Chara c)
Definition: FACTION.cs:338
void AddContribution(int a)
Definition: FACTION.cs:318
Definition: Fov.cs:6
void AdvanceMin(int a)
Definition: GameDate.cs:22
HashSet< string > modified
void FixedUpdate()
Definition: GameUpdater.cs:436
bool cheat
Definition: Game.cs:54
Definition: Game.cs:8
ReligionManager religions
Definition: Game.cs:158
static void Load(string id, bool cloud)
Definition: Game.cs:321
GamePrincipal principal
Definition: Game.cs:224
static string id
Definition: Game.cs:147
bool Save(bool isAutoSave=false, bool silent=false)
Definition: Game.cs:1028
SpatialManager spatials
Definition: Game.cs:152
static void Create(string _id=null, bool cloud=false)
Definition: Game.cs:722
Prologue Prologue
Definition: Game.cs:263
CardManager cards
Definition: Game.cs:155
GameUpdater updater
Definition: Game.cs:249
new World world
Definition: Game.cs:176
Config config
Definition: Game.cs:218
QuestManager quests
Definition: Game.cs:182
void StartNewGame()
Definition: Game.cs:796
Definition: Guild.cs:2
static Guild GetCurrentGuild()
Definition: Guild.cs:74
void ResetHotbar(int id)
Definition: HotbarManager.cs:8
Definition: Lang.cs:6
static string langCode
Definition: Lang.cs:28
LangCode
Definition: Lang.cs:8
static LayerDrama ActivateMain(string idSheet, string idStep=null, Chara target=null, Card ref1=null, string tag="")
Definition: LayerDrama.cs:61
static void SetDirtyAll(bool immediate=false)
static SourceMaterial.Row GetRandomMaterial(int lv, string group=null, bool tryLevelMatTier=false)
Definition: MATERIAL.cs:56
static SourceMaterial.Row sourceWaterSea
Definition: MATERIAL.cs:49
Point GetCenterPos()
Definition: MapBounds.cs:52
static bool Exist(string id)
Definition: MapSubset.cs:17
static void Save(string id)
Definition: MapSubset.cs:22
new void ForeachCell(Action< Cell > action)
Definition: Map.cs:2346
Thing FindThing(Func< Thing, bool > func)
Definition: Map.cs:2592
PropsInstalled Installed
Definition: Map.cs:123
void SetLiquid(int x, int z, CellEffect effect=null)
Definition: Map.cs:1477
PropsRoaming Roaming
Definition: Map.cs:125
List< Thing > things
Definition: Map.cs:49
List< Chara > deadCharas
Definition: Map.cs:46
PropsStocked Stocked
Definition: Map.cs:121
List< Chara > charas
Definition: Map.cs:81
void AddDecal(int x, int z, int id, int amount=1, bool refresh=true)
Definition: Map.cs:2029
void RevealAll(bool reveal=true)
Definition: Map.cs:905
Color main
Definition: MatColors.cs:7
Color alt
Definition: MatColors.cs:9
Material mat
Definition: MeshPass.cs:21
static void Activate(Type type)
Definition: MiniGame.cs:44
Definition: Msg.cs:5
static string SayRaw(string text)
Definition: Msg.cs:113
static string Say(string idLang, string ref1, string ref2=null, string ref3=null, string ref4=null)
Definition: Msg.cs:58
void RemoveMember(Chara c)
Definition: Party.cs:102
void AddMemeber(Chara c, bool showMsg=false)
Definition: Party.cs:57
void OnEnableDebug()
Definition: Player.cs:722
int loytelMartLv
Definition: Player.cs:671
Flags flags
Definition: Player.cs:1094
RecipeManager recipes
Definition: Player.cs:1097
void ModFame(int a)
Definition: Player.cs:2094
void ModKarma(int a)
Definition: Player.cs:2516
void RefreshDomain()
Definition: Player.cs:1522
Zone zone
Definition: Player.cs:1082
HashSet< int > doneBackers
Definition: Player.cs:1073
int CountKeyItem(string alias)
Definition: Player.cs:2168
void ModKeyItem(string alias, int num=1, bool msg=true)
Definition: Player.cs:2136
HotbarManager hotbars
Definition: Player.cs:1085
Chara TargetChara
Definition: PointTarget.cs:41
Definition: Point.cs:9
List< Card > ListCards(bool includeMasked=false)
Definition: Point.cs:1051
Point Copy()
Definition: Point.cs:491
CellDetail detail
Definition: Point.cs:71
int x
Definition: Point.cs:36
Point GetNearestPoint(bool allowBlock=false, bool allowChara=true, bool allowInstalled=true, bool ignoreCenter=false, int minRadius=0)
Definition: Point.cs:619
int z
Definition: Point.cs:39
bool IsValid
Definition: Point.cs:88
Area area
Definition: Point.cs:73
bool HasFloor
Definition: Point.cs:219
Chara FirstChara
Definition: Point.cs:288
Thing FirstThing
Definition: Point.cs:301
Cell cell
Definition: Point.cs:51
string idStartZone
Definition: Prologue.cs:9
void Validate()
Definition: Props.cs:445
PropSet all
Definition: Props.cs:8
Quest Add(string id, string idGlobalChara=null)
Definition: QuestManager.cs:29
Quest Start(string id, string idGlobalChara)
Definition: QuestManager.cs:41
Quest Get(string id)
Definition: Quest.cs:7
static List< RecipeSource > list
Dictionary< string, int > knownRecipes
Dictionary< string, Religion > dictAll
void Talk(string idTalk, Card c=null, Card agent=null)
Definition: Religion.cs:153
Vector3 offset
Definition: RenderData.cs:18
static List< ISyncScreen > syncList
Definition: RenderObject.cs:24
Definition: Scene.cs:8
static Point HitPoint
Definition: Scene.cs:21
GameScreen screenElin
Definition: Scene.cs:93
ActionMode actionMode
Definition: Scene.cs:79
MeshPass[] passes
Definition: Scene.cs:121
PointTarget mouseTarget
Definition: Scene.cs:135
void Init(Mode newMode)
Definition: Scene.cs:178
Mode
Definition: Scene.cs:10
void Next()
Definition: Season.cs:85
SourceMaterial materials
SourceRace races
SourceObj objs
SourceThing things
SourceZone zones
void ImportSourceTexts()
SourceBacker backers
SourceElement elements
SourceChara charas
SourceJob jobs
float height
Definition: SourcePref.cs:51
Zone Find(string id)
int uid
Definition: Spatial.cs:70
Spatial parent
Definition: Spatial.cs:10
virtual string Name
Definition: Spatial.cs:509
Faction mainFaction
Definition: Spatial.cs:442
string id
Definition: Spatial.cs:13
int development
Definition: Spatial.cs:238
virtual Point RegionPos
Definition: Spatial.cs:560
List< Spatial > children
Definition: Spatial.cs:37
static SpawnSetting Boss(int filterLv, int fixedLv=-1)
Definition: SpawnSetting.cs:47
virtual int max
Definition: Stats.cs:68
Definition: Steam.cs:8
SteamworksBehaviour steamworks
Definition: Steam.cs:11
static void GetAchievement(ID_Achievement id)
Definition: Steam.cs:49
void CheckUpdate()
Definition: Steam.cs:30
Thing Find(int uid)
void Foreach(Action< Thing > action, bool onlyAccessible=true)
static Thing CreateBlock(int id, int idMat)
Definition: ThingGen.cs:101
static Thing CreateRedBook(string id, int num=1)
Definition: ThingGen.cs:167
static Thing TestCreate()
Definition: ThingGen.cs:32
static Thing CreateFloor(int id, int idMat, bool platform=false)
Definition: ThingGen.cs:108
static Thing CreateFromCategory(string idCat, int lv=-1)
Definition: ThingGen.cs:75
static Thing Create(string id, int idMat=-1, int lv=-1)
Definition: ThingGen.cs:53
Definition: Thing.cs:8
SourceThing.Row source
Definition: Thing.cs:11
override SourcePref Pref
Definition: Thing.cs:50
static Chara Incubate(Thing egg, Point pos, Card incubator=null)
bool MoveZone(bool confirmed=false)
static Thing MakeRandomSeed(bool enc=false)
Definition: TraitSeed.cs:192
static Thing MakeSeed(string id, PlantData plant=null)
Definition: TraitSeed.cs:88
override bool OnUse(Chara c)
virtual bool CanStack
Definition: Trait.cs:152
bool TryGetValue(TKey key, out TValue value)
Definition: UDictionary.cs:178
static void TryShowTip(Transform root=null, bool highlight=true, bool ignoreWhenRightClick=true)
Definition: UIButton.cs:778
void SetCondition(Condition condition, int _duration=20, bool silent=false)
Definition: Weather.cs:308
Condition
Definition: Weather.cs:16
Condition CurrentCondition
Definition: Weather.cs:79
void SetRandomCondition()
Definition: Weather.cs:295
void Nerun(string text, string idPortrait="UN_nerun")
Definition: WidgetFeed.cs:93
static WidgetFeed Instance
Definition: WidgetFeed.cs:14
void RebuildPage(int page=-1)
static WidgetHotbar HotbarBuild
Definition: WidgetHotbar.cs:36
static void OnChangeMode()
static WidgetMinimap Instance
Region region
Definition: World.cs:23
GameDate date
Definition: World.cs:6
void ModEther(int a=3)
Definition: World.cs:58
Weather weather
Definition: World.cs:12
int ether
Definition: World.cs:21
Season season
Definition: World.cs:9
void Add(ZoneEvent e, bool allowDuplicate=false)
void Remove(ZoneEvent e)
Definition: Zone.cs:12
Dictionary< int, string > dictCitizen
Definition: Zone.cs:52
ZoneEventManager events
Definition: Zone.cs:40
void ImportDialog(string dir=null)
Definition: Zone.cs:3227
void ClaimZone(bool debug=false, Point pos=null)
Definition: Zone.cs:1712
Card AddThing(string id, int x, int z)
Definition: Zone.cs:1967
ElementContainerZone elements
Definition: Zone.cs:43
void ExportDialog(string dir=null)
Definition: Zone.cs:3214
virtual bool CanUnlockExit
Definition: Zone.cs:277
MapBounds bounds
Definition: Zone.cs:49
Chara SpawnMob(string id, Point pos=null)
Definition: Zone.cs:2741
void RemoveCard(Card t)
Definition: Zone.cs:2017
bool IsPCFaction
Definition: Zone.cs:473
void Export(string path, PartialMap partial=null, bool usermap=false)
Definition: Zone.cs:3173
Card AddCard(Card t, Point point)
Definition: Zone.cs:1977