34 {
37 bool isInGuild = Guild.Fighter.IsCurrentZone || Guild.Mage.IsCurrentZone || Guild.Thief.IsCurrentZone ||
Guild.
Merchant.
IsCurrentZone;
38 string bird = (flag2 ? "bird" : "tail");
40 string rumor = (c.IsPCParty ? GetTalk(
"sup") :
GetRumor(c));
43 bool num = !c.IsUnique ||
HasTopic(
"unique", c.
id);
44 if (!flag)
45 {
47 _Talk(
"tg", () => rumor);
48 }
49 if (num && flag3)
50 {
53 {
54 sequence.firstTalk.funcText = () => rumor;
56 Hobby hobby = ((list2.Count > 0) ? list2[0] :
null);
58 {
60 {
61 GameLang.refDrama1 = c.
GetFavCat().GetName().ToLower();
63 rumor =
GetText(c,
"general",
"talk_fav");
64 c.knowFav = true;
65 }
66 else
67 {
68 GameLang.refDrama1 = hobby.
Name.ToLower();
69 rumor =
GetText(c,
"general",
"talk_hobby");
70 }
71 }
72 else
73 {
75 }
77 choice.forceHighlight = true;
78 }).SetCondition(() => c.interest > 0);
79 }
80 bool flag4 = false;
82 {
84 {
86 flag4 = true;
87 }
88 else
89 {
91 }
92 }
94 {
96 if (!
item.CanDeliverToClient(c))
97 {
98 continue;
99 }
102 {
105 {
109 {
111 });
112 }
113 }
115 {
117 {
118 Choice2(
"daMakeHome",
"_makeHome");
119 }
121 {
123 }
124 }
126 {
129 {
131 {
133 {
134 Choice2("daLostProperty".lang(_t.Name), "_lostProperty").SetOnClick(delegate
135 {
136 destThing = _t;
137 });
138 }
139 });
140 }
142 {
144 {
146 {
148 {
149 continue;
150 }
152 if (dest != null)
153 {
155 {
157 });
158 }
160 {
161 continue;
162 }
164 if (dest2 != null)
165 {
167 {
169 });
170 }
171 }
173 {
175 }
176 }
178 {
180 }
182 {
184 }
186 {
188 {
190 }
192 {
194 }
195 }
197 {
199 }
201 {
203 }
205 {
206 Choice2(flag2 ?
"daBird" :
"daTail",
"_tail");
207 }
209 {
211 }
213 {
215 }
217 {
218 Choice2(flag2 ?
"daBirdBuy" :
"daTailBuy",
"_whore");
219 }
221 {
223 }
225 {
227 }
229 {
230 Choice2(
"daSellFame",
"_sellFame");
231 }
233 {
235 {
236 Choice2(
"daInvest",
"_investZone");
237 }
239 {
240 Choice2(
"daInvest",
"_investShop");
241 }
242 }
244 {
246 Choice2(
"daIdentifyAll",
"_identifyAll");
248 }
250 {
252 {
254 }
256 {
259 {
261 });
262 }
263 }
265 {
266 Choice2(
"daDeposit",
"_deposit");
267 }
269 {
270 Choice2(
"daExtraTax",
"_extraTax");
271 }
273 {
274 Choice2(
"daBlessing",
"_blessing");
275 }
276 }
277 }
279 {
281 {
283 {
285 }
286 Choice2(
"daBuyLand",
"_buyLand");
287 Choice2(
"daChangeTitle",
"_changeTitle");
288 }
290 {
291 Choice2(
"enableMove",
"_enableMove");
292 }
294 {
295 Choice2(
"daJoinParty",
"_joinParty");
296 }
298 {
300 }
301 Choice2(
"daFactionOther",
"_factionOther");
302 }
304 {
305 Choice2(
"daGreatDebt",
"_greatDebt");
306 }
307 if (!flag)
308 {
311 }
312 Step(
"_factionOther");
315 {
317 if (questDebt !=
null && questDebt.
gaveBill)
318 {
319 Choice(
"daGreatDebt2",
"_greatDebt2");
320 }
321 }
323 {
325 {
326 Choice((c.
GetInt(106) == 0) ?
"daShutup" :
"daShutup2",
"_shutup");
328 {
329 Choice((c.
GetInt(108) == 0) ?
"daInsult" :
"daInsult2",
"_insult");
330 }
331 }
332 }
334 {
335 Choice(
"disableMove",
"_disableMove");
336 }
337 Choice((c.
GetInt(123) == 0) ?
"daSleepBeside" :
"daSleepBeside2",
"_sleepBeside");
339 {
340 Choice((c.
GetInt(126) == 0) ?
"daDisableLoyal" :
"daDisableLoyal2",
"_disableLoyal");
341 }
343 {
344 Choice(
"daEquipSharedOff",
"_toggleSharedEquip");
345 }
346 else
347 {
348 Choice(
"daEquipSharedOn",
"_toggleSharedEquip");
349 }
351 {
352 Choice(
"daMakeMaid",
"_daMakeMaid");
353 }
355 {
356 Choice(
"daBanish",
"_depart");
357 }
359 Step(
"_toggleSharedEquip");
361 {
363 });
368 {
369 EClass.Branch.uidMaid = c.
uid;
370 });
375 {
377 {
378 GameLang.refDrama1 = c.GetBestAttribute().ToString() ?? "";
379 TempTalkTopic("invite3", StepDefault);
380 }
381 else
382 {
383 EClass.pc.party.AddMemeber(c, showMsg: true);
384 }
385 });
389 {
392 {
393 EClass.pc.Say("tame_send", c, c.homeZone.Name);
394 c.MoveZone(c.homeZone);
395 }
396 });
400 Step(
"_makeLivestock");
402 {
404 });
405 Talk(
"becomeLivestock",
StepEnd);
406 Step(
"_makeResident");
408 {
410 });
411 Talk(
"becomeResident",
StepEnd);
414 Choice(
"depart1",
"_depart1");
415 Choice(
"depart2",
"_depart2");
418 {
420 {
422 });
423 });
428 Talk("gift_good", null);
432 {
435 {
437 }
438 else
439 {
440 TempTalkTopic("goto", "_goto2");
441 }
442 });
445 {
447 {
448 destCard.Teleport(EClass.pc.pos.GetNearestPoint(allowBlock: false, allowChara: false, allowInstalled: true, ignoreCenter: true) ?? EClass.pc.pos, silent: true, force: true);
449 }
452 });
456 Step(
"_lostProperty");
458 {
462 });
468 {
471 });
475 {
477 {
478 return "";
479 }
484 }, text);
485 string text2 = "daAccept".lang();
487 {
489 }
491 {
495 {
499 {
501 if (supply != null)
502 {
504 {
507 {
512 {
514 });
515 }
516 }
517 }
519 Step(
"_questAccept");
521 Step(
"_questAccept_instance");
524 {
532 {
535 {
536 TempTalkTopic(
"loytel_bill_give_wait",
StepDefault);
537 }
539 {
540 TempTalkTopic(
"loytel_bill_give_given",
StepDefault);
541 }
542 else
543 {
546 }
547 });
550 {
552 TempTalkTopic(
"loytel_bill_give_lost",
StepEnd);
554 });
557 {
559 });
562 Step(
"_sleepBeside");
564 {
566 {
567 c.SetInt(123, (c.GetInt(123) == 0) ? 1 : 0);
568 }
569 else
570 {
571 TempTalkTopic("refuse", StepEnd);
572 }
573 });
576 Step(
"_disableLoyal");
578 {
580 });
584 _Talk(
"tg", GetTalk(
"pervert4"));
586 {
588 {
589 c.UseAbility("ActBloodsuck", EClass.pc);
590 }
591 else
592 {
593 c.Sniff(EClass.pc);
594 }
596 });
600 {
602 });
605 {
607 {
608 c.Talk("insult");
609 }
610 });
614 {
616 });
622 {
623 });
625 {
626 });
629 {
631 {
632 string[] recruitItems = c.source.recruitItems;
633 if (!recruitItems.IsEmpty())
634 {
635 string[] array3 = recruitItems[0].Split('/');
636 string reqId = array3[0];
637 int reqNum = array3[1].ToInt();
638 CardBlueprint.Set(CardBlueprint.Original);
639 GameLang.refDrama1 = ThingGen.Create(reqId).SetNum(reqNum).Name;
640 TempTalkTopic("inviteReq1", null);
641 foreach (Thing t2 in EClass.pc.things.List((Thing t) => t.id == reqId && t.Num >= reqNum, onlyAccessible: true))
642 {
643 Thing _t5 = t2;
644 Choice("daDeliver".lang("", _t5.GetName(NameStyle.Full, _t5.Num)), delegate
645 {
646 t2.ModNum(-reqNum);
647 TempTalk("hired", StepEnd);
648 EClass.Sound.Play("good");
649 c.MakeAlly();
650 }).SetOnTooltip(delegate(UITooltip a)
651 {
652 _t5.WriteNote(a.note);
653 });
654 }
655 Choice("no2", StepDefault, cancel: true).SetOnClick(RumorChill);
656 }
657 else
658 {
659 TempTalkTopic("invite2", StepDefault);
660 }
661 }
663 {
664 GameLang.refDrama1 = c.GetBestAttribute().ToString() ?? "";
665 TempTalkTopic("invite3", StepDefault);
666 }
667 else
668 {
669 TempTalkTopic("invite", null);
670 Choice("yes", delegate
671 {
672 TempTalk("hired", StepEnd);
673 EClass.Sound.Play("good");
674 c.MakeAlly();
675 });
677 }
678 });
681 {
682 TempTalkTopic("guide", null);
684 {
686 {
688 });
689 }
691 TempCancel();
692 });
693 BackChill();
696 {
697 TempTalkTopic(bird + "1", null);
699 {
700 TempTalkTopic(bird +
"2",
StepEnd);
702 {
703 target = c,
704 sell = true
705 });
706 });
708 });
711 {
714 TempTalkTopic(bird + "3", null);
716 {
718 {
719 TempTalkTopic("nomoney", StepDefault);
720 }
721 else
722 {
723 SE.Pay();
724 EClass.pc.ModCurrency(-costWhore);
725 TempTalkTopic(bird + "2", StepEnd);
726 EClass.pc.SetAI(new AI_Fuck
727 {
728 target = c
729 });
730 }
731 });
733 });
736 {
739 TempTalkTopic("bird3", null);
741 {
743 {
744 TempTalkTopic("lockTooHard", StepDefault);
745 }
747 {
748 TempTalkTopic("nomoney", StepDefault);
749 }
750 else
751 {
752 SE.Pay();
753 EClass.pc.ModCurrency(-cost8);
754 manager.layer.SetOnKill(delegate
755 {
756 c.PlaySound("lock_open");
757 c.Say("lockpick_success", c, destThing);
758 c.ModExp(280, 200 + destThing.c_lockLv * 20);
759 destThing.c_lockLv = 0;
760 if (destThing.isLostProperty)
761 {
762 EClass.player.ModKarma(-8);
763 }
764 destThing.isLostProperty = false;
765 });
767 }
768 });
770 });
773 {
774 TempTalkTopic("blooming1", null);
776 {
779 {
780 if (EClass._zone.influence < 10)
781 {
782 TempTalkTopic("blooming3", StepDefault);
783 }
784 else
785 {
786 EClass._zone.ModInfluence(-10);
787 LayerDrama.Instance.SetOnKill(delegate
788 {
789 c.Talk("goodBoy");
790 c4.Say("dingExp", c);
791 c4.Talk("insulted");
792 c4.SetFeat(1273, 1, msg: true);
793 c4.PlayEffect("aura_heaven");
794 c4.feat += 10;
795 EClass.pc.PlaySound("pray");
796 });
797 TempTalkTopic(
"blooming2",
StepEnd);
798 }
799 });
800 }
802 });
805 {
807 {
808 SE.Play("click_chat");
809 if (EClass.pc.GetCurrency("medal") > 0)
810 {
811 TempTalkTopic("miral_medal", null);
812 }
813 else
814 {
815 TempTalkTopic("miral_medal2", StepDefault);
816 }
817 }
818 });
820 {
822 {
823 SE.Play("click_chat");
824 TempTalkTopic("shop_blackmarket_noaccess", StepEnd);
825 }
827 {
828 SE.Play("click_chat");
829 TempTalkTopic("shop_criminal", StepEnd);
830 }
831 else
832 {
833 sequence.Exit();
834 manager.layer.Close();
835 c.trait.OnBarter();
836 if ((bool)WidgetFeed.Instance)
837 {
838 WidgetFeed.Instance.Talk(c, "barter");
839 }
841 }
845 {
846 List<ResearchPlan> plans = new List<ResearchPlan>();
848 {
850 {
852 }
853 }
855 {
856 list.moldItem = Resources.Load<
ItemGeneral>(
"UI/Element/Item/ItemGeneralBarter").transform;
858 {
860 {
861 b.button1.mainText.text = a.
Name;
865 uIItem.image1.sprite = c3.resource.Sprite;
867 {
869 });
870 b.
button1.onClick.AddListener(delegate
871 {
872 if (c3.resource.value < c3.cost)
873 {
874 SE.Beep();
875 }
876 else
877 {
878 c3.resource.Mod(-c3.cost);
879 plans.Remove(a);
881 SE.Pay();
882 list.
List(refreshHighlight:
true);
883 }
884 });
885 b.RebuildLayout(recursive: true);
886 },
887 onList = delegate
888 {
890 {
892 }
893 }
894 };
895 }).SetSize()
897 {
898 branchMoney = true
899 });
901 Step(
"_upgradeHearth");
903 {
906 GameLang.refDrama2 = (EClass.Branch.lv + 1).ToString() ?? "";
908 TempTalkTopic("upgrade_heath1", null);
910 {
912 {
913 TempTalkTopic("nomoney", StepDefault);
914 }
915 else
916 {
917 EClass.pc.ModCurrency(-cost7);
918 SE.Pay();
919 LayerDrama.Instance.SetOnKill(delegate
920 {
921 EClass.Branch.Upgrade();
922 });
923 TempTalkTopic(
"upgrade_heath2",
StepEnd);
924 }
925 });
927 });
930 {
931 int cost6 = EClass.player.fame / 5;
932 GameLang.refDrama1 = cost6.ToString() ?? "";
933 if (cost6 == 0)
934 {
936 }
937 else
938 {
939 TempTalkTopic("sellFame1", null);
941 {
943 SE.Pay();
946 });
948 }
949 });
952 {
956 TempTalkTopic("invest1", null);
958 {
959 Invest(quick: false);
960 });
962 Choice(
"quickInvest", delegate
963 {
964 Invest(quick: true);
965 });
966 void Invest(bool quick)
967 {
969 {
971 }
972 else
973 {
975 SE.Pay();
976 EClass._zone.investment += cost5;
980 if (quick)
981 {
983 }
984 else
985 {
987 }
988 }
989 }
990 });
993 {
997 TempTalkTopic("invest_shop1", null);
999 {
1000 Invest(quick: false);
1001 });
1003 Choice(
"quickInvest", delegate
1004 {
1005 Invest(quick: true);
1006 });
1007 void Invest(bool quick)
1008 {
1010 {
1012 }
1013 else
1014 {
1016 SE.Pay();
1021 if (quick)
1022 {
1024 }
1025 else
1026 {
1028 }
1029 }
1030 }
1031 });
1032 Step(
"_changeTitle");
1034 {
1035 EClass.player.title = WordGen.Get("title");
1041 {
1044 GameLang.refDrama1 = "";
1045 GameLang.refDrama2 = costLand.ToString() ?? "";
1046 if (!num5)
1047 {
1049 }
1050 else
1051 {
1054 {
1056 {
1057 TempTalkTopic("nomoney", StepDefault);
1058 }
1059 else
1060 {
1061 SE.Pay();
1062 EClass.pc.ModCurrency(-costLand, "money2");
1063 TempTalkTopic("expand2", StepDefault);
1064 EClass._map.bounds.Expand(1);
1065 SE.Play("good");
1066 EClass._map.RefreshAllTiles();
1067 WidgetMinimap.UpdateMap();
1068 ScreenEffect.Play("Firework");
1069 }
1070 });
1072 }
1073 });
1076 {
1080 });
1084 {
1091 {
1093 TempTalkTopic(
"blessing",
StepEnd);
1095 {
1097 {
1098 if (c.trait is TraitMiko_Mifu)
1099 {
1100 member.AddCondition<ConHolyVeil>()?.SetPerfume();
1101 }
1103 {
1104 member.AddCondition<ConEuphoric>()?.SetPerfume();
1105 }
1106 else
1107 {
1108 member.AddCondition<ConNightVision>()?.SetPerfume();
1109 }
1110 member.
Say(
"blessing", member);
1113 }
1114 c.isRestocking = true;
1115 });
1117 });
1120 {
1122 {
1123 list.moldItem = Resources.Load<
ButtonElement>(
"UI/Element/Button/ButtonElementTrain").transform;
1125 {
1127 {
1129 if (num4 == 0)
1130 {
1131 SE.Beep();
1132 }
1134 {
1136 {
1138 }
1139 else
1140 {
1142 }
1145 }
1146 },
1148 {
1150 b.imagePotential.enabled = flag5;
1154 b.mainText.text = b.mainText.text + " " + (flag5 ? "" : ("notLearned".lang() + " "));
1155 b.subText2.text = ((cost3 == 0) ? "-" : (cost3.ToString() ?? "")).TagColor(() => plat >= cost3 && cost3 != 0);
1156 b.RebuildLayout();
1157 },
1158 onInstantiate = delegate
1159 {
1160 },
1161 onList = delegate
1162 {
1164 {
1165 if (a.tag.Contains("unused"))
1166 {
1167 return false;
1168 }
1169 if (a.tag.Contains("guild"))
1170 {
1172 {
1173 return true;
1174 }
1176 {
1177 return true;
1178 }
1180 {
1181 return true;
1182 }
1184 {
1185 return true;
1186 }
1187 return false;
1188 }
1189 if (isInGuild)
1190 {
1191 return false;
1192 }
1193 return a.category ==
"skill" && a.categorySub == c.
trait.
IDTrainer;
1194 }).ToList())
1195 {
1197 }
1198 }
1199 };
1200 }).SetSize()
1204 {
1205 plat = true
1206 });
1208 Step(
"_changeDomain");
1210 {
1215 {
1219 {
1220 money = true
1221 });
1225 {
1226 LayerPeople.slaveToBuy = null;
1230 {
1231 money = true
1232 });
1234 }, () => !layer, "_buySlaveConfirm");
1235 Step(
"_buySlaveConfirm");
1237 {
1239 if (tc == null)
1240 {
1241 RumorChill();
1242 }
1243 else
1244 {
1246 GameLang.refDrama1 = cost2.ToString() ?? "";
1247 GameLang.refDrama2 = tc.
Name;
1248 TempTalkTopic("slave_buy", null);
1250 {
1252 {
1253 TempTalkTopic("nomoney", StepDefault);
1254 }
1255 else
1256 {
1257 GameLang.refDrama1 = tc.Name;
1258 EClass._zone.AddCard(tc, EClass.pc.pos.GetNearestPoint());
1259 tc.MakeAlly();
1260 c.GetObj<SlaverData>(5).list.Remove(tc);
1261 TempTalkTopic("slave_buy2", StepEnd);
1262 }
1263 }).DisableSound();
1265 }
1266 });
1270 {
1275 {
1281 Step(
"_identifyAll");
1283 {
1284 int costIdentify = 0;
1285 int numIdentify = 0;
1286 int numSuperior = 0;
1288 {
1290 {
1291 numIdentify++;
1292 costIdentify += CalcMoney.Identify(EClass.pc, superior: false);
1293 }
1294 });
1295 GameLang.refDrama1 = costIdentify.ToString() ?? "";
1296 GameLang.refDrama2 = numIdentify.ToString() ?? "";
1297 if (numIdentify == 0)
1298 {
1300 }
1301 else
1302 {
1305 {
1307 {
1308 TempTalkTopic("nomoney", StepDefault);
1309 }
1310 else
1311 {
1312 SE.Pay();
1313 EClass.pc.ModCurrency(-costIdentify);
1314 foreach (Thing item9 in EClass.pc.things.List((Thing t) => !t.IsIdentified, onlyAccessible: true))
1315 {
1316 item9.Thing.Identify(show: false);
1317 if (!item9.IsInstalled)
1318 {
1319 numSuperior++;
1320 }
1321 }
1323 }
1324 });
1326 }
1327 });
1328 Step(
"_identifySP");
1330 {
1338 {
1341 {
1343 {
1346 targetZ = c.pos.z
1347 });
1350 {
1351 target = c
1352 });
1355 {
1356 EClass.pc.MoveZone(z, ZoneTransition.EnterState.Center);
1357 });
1358 TempTalkTopic(
"bout2",
StepEnd);
1359 });
1364 {
1367 {
1368 TempTalkTopic("news2", null);
1369 }
1370 else
1371 {
1372 zone.isKnown = true;
1374 GameLang.refDrama1 = zone.
Name;
1375 TempTalkTopic("news1", null);
1376 }
1378 });
1380 {
1385 {
1388 TempTalkTopic("healer1", null);
1390 {
1392 {
1393 TempTalkTopic("nomoney", StepDefault);
1394 }
1395 else
1396 {
1397 SE.Pay();
1398 foreach (Chara member2 in EClass.pc.party.members)
1399 {
1400 ActEffect.Proc(EffectId.HealComplete, member2);
1401 }
1403 TempTalkTopic(
"healer2",
StepEnd);
1404 }
1405 });
1407 });
1410 {
1413 TempTalkTopic("food1", null);
1415 {
1417 {
1418 TempTalkTopic("alreadyFull", StepDefault);
1419 }
1421 {
1422 TempTalkTopic("nomoney", StepDefault);
1423 }
1424 else
1425 {
1426 SE.Pay();
1427 EClass.pc.ModCurrency(-cost);
1428 TempTalkTopic("food2", StepDefault);
1429 FoodEffect.Proc(EClass.pc, ThingGen.Create("dish_lunch"), consume: false);
1430 EClass.pc.hunger.value = 0;
1431 }
1432 });
1434 });
1435 int[] bankTier = new int[5] { 100, 1000, 10000, 100000, 1000000 };
1438 {
1442 {
1443 WidgetFeed.Instance.Talk(c, "barter");
1444 }
1445 SE.Play("shop_open");
1451 {
1455 {
1456 WidgetFeed.Instance.Talk(c, "barter");
1457 }
1458 SE.Play("shop_open");
1461 {
1462 c.c_copyContainer = ThingGen.Create("container_deposit");
1463 }
1469 int[] taxTier = new int[6] { 0, 1000, 2000, 5000, 10000, 20000 };
1472 {
1474 TempTalkTopic("extraTax", null);
1475 int[] array2 = taxTier;
1476 foreach (int num3 in array2)
1477 {
1478 int _i2 = num3;
1480 {
1481 EClass.player.extraTax = _i2;
1482 GameLang.refDrama1 = Lang._currency(_i2, "money");
1483 TempTalkTopic("extraTax2", StepDefault);
1484 });
1485 }
1487 });
1490 {
1492 GameLang.refDrama1 = bankMoney.ToString() ?? "";
1493 TempTalkTopic("banker2", null);
1494 int[] array = bankTier;
1495 foreach (int num2 in array)
1496 {
1497 int _i = num2;
1499 {
1501 {
1502 SE.Pay();
1503 EClass.pc.ModCurrency(_i);
1504 EClass.player.bankMoney -= _i;
1505 TempTalkTopic("banker4", StepDefault);
1506 });
1507 }
1508 }
1510 });
1511 Step(
"_disableMove");
1513 {
1514 c.noMove = true;
1517 });
1519 Step(
"_enableMove");
1521 {
1522 c.noMove = false;
1523 c.orgPos = null;
1525 });
1529 {
1531 });
1533 void BackChill()
1534 {
1536 }
1537 string GetTalk(string id)
1538 {
1540 }
1541 void RumorChill()
1542 {
1543 rumor = GetTalk("chill");
1544 }
1545 void Talk(string idTalk, string idJump)
1546 {
1547 _Talk(
"tg", GetTalk(idTalk), idJump);
1548 }
1549 void TempCancel()
1550 {
1552 }
1553 void TempTalk(string idTalk, string idJump)
1554 {
1555 _TempTalk(
"tg", GetTalk(idTalk), idJump);
1556 }
1557 void TempTalkTopic(string idTopc, string idJump)
1558 {
1560 }
1561 bool taken()
1562 {
1563 if (c.
quest !=
null)
1564 {
1566 }
1567 return false;
1568 }
1569 }
if(item3.idFile==idFirstFile &&item3.id==idFirstTopic)
int GetInt(int id, int? defaultInt=null)
void SetInt(int id, int value=0)
static int Picklock(Chara c, Thing t)
static int InvestZone(Chara c)
static int Identify(Chara c, bool superior)
static int BuySlave(Chara c)
static int InvestShop(Chara c, Chara tc)
static int Whore(Chara seller, Chara buyer)
static int Learn(Chara c, Element e)
static int Train(Chara c, Element _e)
ElementContainerCard elements
SoundSource PlaySound(string id, float v=1f, bool spatial=true)
void Talk(string idTopic, string ref1=null, string ref2=null, bool forceSync=false)
int GetCurrency(string id="money")
string GetTalkText(string idTopic, bool stripPun=false, bool useDefault=true)
Effect PlayEffect(string id, bool useRenderPos=true, float range=0f, Vector3 fix=default(Vector3))
void ModCurrency(int a, string id="money")
bool TryPay(int a, string id="money")
void ModExp(string alias, int a)
bool HasElement(int ele, bool includeNagative=false)
void Say(string lang, string ref1=null, string ref2=null)
SourceCategory.Row GetFavCat()
override bool IsAliveInCurrentZone
Chara SetGlobal(Zone _home, int x, int z)
override bool IsPCFaction
void SetAIImmediate(AIAct g)
List< Hobby > ListHobbies(bool useMemberType=true)
FactionMemberType memberType
SourceThing.Row GetFavFood()
void MoveZone(string alias)
int GetRaw(int offsetHours=0)
DramaChoice SetCondition(Func< bool > condition)
DramaChoice DisableSound()
DramaChoice SetOnClick(Action action)
void _TempTalk(string idActor, string text, string idJump=null)
void Method(Action action, Func< bool > endFunc=null, string idJump=null)
void EnableCancel(string idCancelJump=null)
void _Talk(string idActor, string text, string idJump=null)
DramaChoice Choice2(string lang, string idJump)
List< Card > GetListGuide()
string GetTopic(Chara c, string idTopic=null)
bool HasTopic(string idSheet, string idTopic)
DramaChoice Choice(string lang, string idJump, bool cancel=false)
void TempGoto(string idJump=null)
string GetText(Chara c, string idSheet, string idTopic)
static SourceManager sources
static FactionBranch Branch
static FactionBranch BranchOrHomeBranch
void Train(int ele, int a=10)
void Learn(int ele, int v=1)
Element SetBase(string alias, int v, int potential=0)
Element GetElement(string alias)
static Element Create(int id, int v=0)
ResearchManager researches
string GetHearthHint(int a)
HomeResourceManager resources
void BanishMember(Chara c, bool skipMsg=false)
void AddContribution(int a)
override bool IsCurrentZone
override bool IsCurrentZone
override bool IsCurrentZone
override bool IsCurrentZone
static GuildMerchant Merchant
static GuildFighter Fighter
static Guild GetCurrentGuild()
static string _currency(object a, string IDCurrency)
static LayerDragGrid CreateGive(Chara c)
static LayerDragGrid CreateIdentify(Chara cc, bool superior=false, BlessedState state=BlessedState.Normal, int price=0, int count=1)
static LayerDrama Instance
static LayerInventory CreateContainer(Card owner)
static LayerInventory CreateBuy(Card c, CurrencyType currency=CurrencyType.Money, PriceType price=PriceType.Default)
static LayerPeople Create(Mode mode)
Layer SetTitles(string langList, string idHeaderRow=null)
Layer SetOnKill(Action action)
static string Say(string idLang, string ref1, string ref2=null, string ref3=null, string ref4=null)
void RemoveMember(Chara c)
void RequestPathImmediate(PathProgress progress)
static PathManager Instance
Layer SelectDomain(Action onKill=null)
void EndTurn(bool consume=true)
string GetIdTalk_GiveBill()
List< Thing > ListDestThing(bool onlyFirst=false)
Quest Start(string id, string idGlobalChara)
virtual bool IsRandomQuest
virtual string GetTalkComplete()
virtual bool UseInstanceZone
virtual string GetTitle()
virtual string NameDeliver
virtual string GetTalkProgress()
virtual string GetDetail(bool onJournal=false)
virtual bool Deliver(Chara c, Thing t=null)
virtual Zone CreateInstanceZone(Chara c)
Zone CreateRandomSite(Zone center, int radius=8, string idSource=null, bool updateMesh=true, int lv=0)
bool IsListBarter(string idPlan)
static ResearchPlan Create(string id)
SourceResearch.Row source
SourceResearch researches
static Zone CreateInstance(string id, ZoneInstance instance)
List< Thing > List(Func< Thing, bool > func, bool onlyAccessible=false)
void SetSize(int w, int h)
void Foreach(Action< Thing > action, bool onlyAccessible=true)
override void WriteNote(UINote n, Action< UINote > onWriteNote=null, IInspect.NoteMode mode=IInspect.NoteMode.Default, Recipe recipe=null)
override string GetName(NameStyle style, int _num=-1)
virtual bool CanServeFood
virtual bool CanBeBanished
virtual bool CanJoinParty
virtual bool CanInvestTown
virtual bool CanJoinPartyResident
virtual CopyShopType CopyShop
void OnBarter(bool reroll=false)
virtual ShopType ShopType
virtual PriceType PriceType
string TextNextRestockPet
virtual CurrencyType CurrencyType
virtual SlaverType SlaverType
virtual bool AllowCriminal
override void Add(object item)
static Transform Instantiate(string path, Component parent=null)
void AddPreEnter(ZonePreEnterEvent e, bool executeIfActiveZone=true)
Dictionary< int, string > dictCitizen
Chara FindChara(string id)
virtual bool AllowCriminal
void ModDevelopment(int a)