2using System.Collections.Generic;
36 bool isInGuild = Guild.Fighter.IsCurrentZone || Guild.Mage.IsCurrentZone || Guild.Thief.IsCurrentZone ||
Guild.
Merchant.
IsCurrentZone;
37 string bird = (flag2 ?
"bird" :
"tail");
39 string rumor = (c.IsPCParty ? GetTalk(
"sup") :
GetRumor(c));
42 bool num = !c.IsUnique ||
HasTopic(
"unique", c.
id);
46 _Talk(
"tg", () => rumor);
53 sequence.firstTalk.funcText = () => rumor;
55 Hobby hobby = ((list2.Count > 0) ? list2[0] :
null);
60 GameLang.refDrama1 = c.
GetFavCat().GetName().ToLower();
62 rumor =
GetText(c,
"general",
"talk_fav");
67 GameLang.refDrama1 = hobby.
Name.ToLower();
68 rumor =
GetText(c,
"general",
"talk_hobby");
76 choice.forceHighlight =
true;
77 }).SetCondition(() => c.interest > 0);
95 if (!
item.CanDeliverToClient(c))
100 foreach (
Thing item2
in questDeliver.ListDestThing())
113 if (c.IsPCParty && !c.isSummon)
117 Choice2(
"daMakeHome",
"_makeHome");
119 if (c.host ==
null && c.homeZone !=
null)
121 Choice2(
"daLeaveParty".lang(c.homeZone.Name),
"_leaveParty");
126 Choice2(
"daQuest".lang(c.quest?.GetTitle() ??
""),
"_quest").
SetCondition(() => c.quest !=
null);
133 Choice2(
"daLostProperty".lang(_t.Name),
"_lostProperty").SetOnClick(delegate
142 if (c.trait.CanGuide)
182 if (c.trait.ShopType != 0)
190 if (c.trait.SlaverType != 0)
194 if (c.trait.CopyShop != 0)
196 Choice2((
"daCopy" + c.trait.CopyShop).lang(c.trait.NumCopyItem.ToString() ??
""),
"_copyItem").
DisableSound();
209 Choice2(flag2 ?
"daBird" :
"daTail",
"_tail");
213 if (condition ==
null)
233 Choice2(flag2 ?
"daBird" :
"daTail",
"_tail");
238 if (c.IsHomeMember())
246 Choice2(
"daBuyLand",
"_buyLand");
247 Choice2(
"daChangeTitle",
"_changeTitle");
251 Choice2(
"enableMove",
"_enableMove");
253 if (!c.IsPCParty && c.memberType !=
FactionMemberType.Livestock && c.trait.CanJoinParty)
255 Choice2(
"daJoinParty",
"_joinParty");
257 if (!c.IsDisabled && (c.HasElement(1250) || (
EClass.
pc.
IsMofuable && c.ability.Has(6627))))
261 Choice2(
"daFactionOther",
"_factionOther");
265 Choice2(
"daGreatDebt",
"_greatDebt");
272 Step(
"_factionOther");
292 if (questDebt !=
null && questDebt.
gaveBill)
294 Choice(
"daGreatDebt2",
"_greatDebt2");
301 Choice((c.GetInt(106) == 0) ?
"daShutup" :
"daShutup2",
"_shutup");
302 if (c.CanInsult() || c.GetInt(108) == 1)
304 Choice((c.GetInt(108) == 0) ?
"daInsult" :
"daInsult2",
"_insult");
310 Choice(
"disableMove",
"_disableMove");
312 Choice((c.GetInt(123) == 0) ?
"daSleepBeside" :
"daSleepBeside2",
"_sleepBeside");
313 if (c.HasElement(1225))
315 Choice((c.GetInt(126) == 0) ?
"daDisableLoyal" :
"daDisableLoyal2",
"_disableLoyal");
317 if (c.GetInt(113) == 0)
319 Choice(
"daEquipSharedOff",
"_toggleSharedEquip");
323 Choice(
"daEquipSharedOn",
"_toggleSharedEquip");
327 Choice(
"daMakeMaid",
"_daMakeMaid");
329 if (c.trait.CanBeBanished && !c.IsPCParty)
331 Choice(
"daBanish",
"_depart");
334 Step(
"_toggleSharedEquip");
337 c.SetInt(113, (c.GetInt(113) == 0) ? 1 : 0);
339 _Talk(
"tg",
GetTopic(c, (c.GetInt(113) == 0) ?
"shutup" :
"shutup2"));
344 EClass.Branch.uidMaid = c.uid;
351 if (!c.trait.CanJoinPartyResident)
353 GameLang.refDrama1 = c.GetBestAttribute().ToString() ??
"";
354 TempTalkTopic(
"invite3", StepDefault);
358 EClass.pc.party.AddMemeber(c, showMsg: true);
368 EClass.pc.Say(
"tame_send", c, c.homeZone.Name);
369 c.MoveZone(c.homeZone);
375 Step(
"_makeLivestock");
380 Talk(
"becomeLivestock",
StepEnd);
381 Step(
"_makeResident");
386 Talk(
"becomeResident",
StepEnd);
389 Choice(
"depart1",
"_depart1");
390 Choice(
"depart2",
"_depart2");
396 c.homeBranch.BanishMember(c);
403 Talk(
"gift_good",
null);
415 TempTalkTopic(
"goto",
"_goto2");
423 destCard.Teleport(EClass.pc.pos.GetNearestPoint(allowBlock: false, allowChara: false, allowInstalled: true, ignoreCenter: true) ?? EClass.pc.pos, silent: true, force: true);
431 Step(
"_lostProperty");
458 return (!taken()) ? c.quest.GetDetail() : c.quest.GetTalkProgress().IsEmpty(
GetTopic(c,
"questInProgress"));
460 string text2 =
"daAccept".lang();
461 if (c.quest !=
null && c.quest.deadline != 0)
463 text2 +=
"hintDeadline".lang(c.quest.TextDeadline).ToLower();
465 Choice(text2, (c.quest !=
null && c.quest.UseInstanceZone) ?
"_questAccept_instance" :
"_questAccept").
SetOnClick(delegate
494 Step(
"_questAccept");
496 Step(
"_questAccept_instance");
500 Zone z3 = c.quest.CreateInstanceZone(c);
511 TempTalkTopic(
"loytel_bill_give_wait",
StepDefault);
515 TempTalkTopic(
"loytel_bill_give_given",
StepDefault);
527 TempTalkTopic(
"loytel_bill_give_lost",
StepEnd);
533 c.SetInt(106, (c.GetInt(106) == 0) ? 1 : 0);
535 _Talk(
"tg",
GetTopic(c, (c.GetInt(106) == 0) ?
"shutup" :
"shutup2"));
537 Step(
"_sleepBeside");
540 if (c.affinity.CanSleepBeside() || c.GetInt(123) == 1)
542 c.SetInt(123, (c.GetInt(123) == 0) ? 1 : 0);
546 TempTalkTopic(
"refuse", StepEnd);
549 _Talk(
"tg",
GetTopic(c, (c.GetInt(123) == 0) ?
"ok" :
"shutup"));
554 if (!c.affinity.CanMarry())
556 TempTalkTopic(
"refuse", StepEnd);
568 destThing.rarity = Rarity.Mythical;
588 TempTalkTopic(
"wedding_deed", StepDefault);
592 TempTalkTopic(
"wedding_zone", StepDefault);
596 TempTalkTopic(
"wedding_confirm", null);
597 Choice(
"yes", delegate
599 TempTalkTopic(
"wedding_accept", null);
604 if (c.c_love != null)
606 c.c_love.dateWedding = EClass.world.date.GetRaw();
616 c.BanishAllMinions();
619 EClass.pc.party.AddMemeber(c);
623 if (item6 != EClass.pc && item6 != c)
625 EClass.pc.party.RemoveMember(item6);
630 ActRide.Unride(EClass.pc, c == EClass.pc.parasite, talk: false);
634 Zone z2 = quest.CreateInstanceZone(c);
637 state = ZoneTransition.EnterState.Exact,
644 Step(
"_disableLoyal");
647 c.SetInt(126, (c.GetInt(126) == 0) ? 1 : 0);
649 _Talk(
"tg", GetTopic(c, (c.GetInt(126) == 0) ?
"shutup" :
"shutup2"));
652 _Talk(
"tg", GetTalk(
"pervert4"));
655 if (c.HasElement(1250))
657 c.UseAbility(
"ActBloodsuck", EClass.pc);
669 c.SetInt(108, (c.GetInt(108) == 0) ? 1 : 0);
671 _Talk(
"tg", GetTopic(c, (c.GetInt(108) == 0) ?
"insult" :
"insult2"));
674 if (c.GetInt(108) == 1)
685 _Talk(
"tg", GetTopic(c,
"ok"));
688 Talk(
"rumor", StepDefault);
689 Choice(
"daAccept", StepDefault).SetOnClick(delegate
692 Choice(
"daDecline", StepDefault).SetOnClick(delegate
698 if (!c.trait.CanInvite)
700 string[] recruitItems = c.source.recruitItems;
701 if (!recruitItems.IsEmpty())
703 string[] array3 = recruitItems[0].Split(
'/');
704 string reqId = array3[0];
705 int reqNum = array3[1].ToInt();
706 CardBlueprint.Set(CardBlueprint.Original);
707 GameLang.refDrama1 = ThingGen.Create(reqId).SetNum(reqNum).Name;
708 TempTalkTopic(
"inviteReq1", null);
709 foreach (Thing t2 in EClass.pc.things.List((Thing t) => t.id == reqId && t.Num >= reqNum, onlyAccessible: true))
712 Choice(
"daDeliver".lang(
"", _t6.GetName(NameStyle.Full, _t6.Num)), delegate
715 TempTalk(
"hired", StepEnd);
716 EClass.Sound.Play(
"good");
718 }).SetOnTooltip(delegate(UITooltip a)
720 _t6.WriteNote(a.note);
723 Choice(
"no2", StepDefault, cancel: true).SetOnClick(RumorChill);
727 TempTalkTopic(
"invite2", StepDefault);
732 GameLang.refDrama1 = c.GetBestAttribute().ToString() ??
"";
733 TempTalkTopic(
"invite3", StepDefault);
737 TempTalkTopic(
"invite", null);
738 Choice(
"yes", delegate
740 TempTalk(
"hired", StepEnd);
741 EClass.Sound.Play(
"good");
744 Choice(
"no", StepDefault, cancel:
true).SetOnClick(RumorChill);
750 TempTalkTopic(
"guide",
null);
751 foreach (
Card guide
in GetListGuide())
753 Choice(
"daGotoGuide".lang(guide.
Name,
""),
"_goto").SetOnClick(delegate
758 Choice(
"no", StepDefault, cancel:
true).SetOnClick(RumorChill);
765 TempTalkTopic(c.IsMarried ?
"tail4" : (bird +
"1"),
null);
766 Choice(
"yes2", delegate
768 TempTalkTopic(bird +
"2", StepEnd);
775 Choice(
"no2", StepDefault, cancel:
true).SetOnClick(RumorChill);
782 Steam.GetAchievement(ID_Achievement.MAMA);
784 if (!(id2 ==
"farris"))
788 Steam.GetAchievement(ID_Achievement.MAMA3);
793 Steam.GetAchievement(ID_Achievement.MAMA2);
795 TempTalkTopic(
"mama_yes", StepEnd);
799 variation = AI_Fuck.Variation.MotherMilk
804 TempTalkTopic(
"mama_no", StepDefault);
813 TempTalkTopic(
"baby_yes", StepEnd);
814 EClass.pc.SetAI(new AI_Fuck
817 variation = AI_Fuck.Variation.MotherMilk,
823 TempTalkTopic(
"baby_no", StepDefault);
832 TempTalkTopic(bird +
"3",
null);
833 Choice(
"yes2", delegate
837 TempTalkTopic(
"nomoney", StepDefault);
842 EClass.pc.ModCurrency(-costWhore);
843 TempTalkTopic(bird +
"2", StepEnd);
844 EClass.pc.SetAI(new AI_Fuck
850 Choice(
"no2", StepDefault, cancel:
true).SetOnClick(RumorChill);
857 TempTalkTopic(
"bird3",
null);
858 Choice(
"yes2", delegate
862 TempTalkTopic(
"lockTooHard", StepDefault);
866 TempTalkTopic(
"nomoney", StepDefault);
871 EClass.pc.ModCurrency(-cost8);
872 manager.layer.SetOnKill(delegate
874 c.PlaySound(
"lock_open");
875 c.Say(
"lockpick_success", c, destThing);
876 c.ModExp(280, 200 + destThing.c_lockLv * 20);
877 destThing.c_lockLv = 0;
878 if (destThing.isLostProperty)
880 EClass.player.ModKarma(-8);
882 destThing.isLostProperty = false;
884 TempTalkTopic(destThing.
isLostProperty ?
"lockpick_purse" :
"bird2", StepEnd);
887 Choice(
"no2", StepDefault, cancel:
true).SetOnClick(RumorChill);
892 TempTalkTopic(
"blooming1",
null);
896 Choice(
"daBloom".lang(c4.
Name), delegate
898 if (EClass._zone.influence < 10)
900 TempTalkTopic(
"blooming3", StepDefault);
904 EClass._zone.ModInfluence(-10);
905 LayerDrama.Instance.SetOnKill(delegate
908 c4.Say(
"dingExp", c);
910 c4.SetFeat(1273, 1, msg: true);
911 c4.PlayEffect(
"aura_heaven");
913 EClass.pc.PlaySound(
"pray");
915 TempTalkTopic(
"blooming2", StepEnd);
919 Choice(
"no2", StepDefault, cancel:
true).SetOnClick(RumorChill);
926 SE.Play(
"click_chat");
927 if (EClass.pc.GetCurrency(
"medal") > 0)
929 TempTalkTopic(
"miral_medal", null);
933 TempTalkTopic(
"miral_medal2", StepDefault);
941 SE.Play(
"click_chat");
942 TempTalkTopic(
"shop_blackmarket_noaccess", StepEnd);
946 SE.Play(
"click_chat");
947 TempTalkTopic(
"shop_criminal", StepEnd);
952 manager.layer.Close();
954 if ((bool)WidgetFeed.Instance)
956 WidgetFeed.Instance.Talk(c,
"barter");
960 }, () => !layer, StepDefault);
964 List<ResearchPlan> plans =
new List<ResearchPlan>();
974 list.moldItem = Resources.Load<
ItemGeneral>(
"UI/Element/Item/ItemGeneralBarter").transform;
979 b.button1.mainText.text = a.
Name;
983 uIItem.image1.sprite = c3.resource.Sprite;
988 b.
button1.onClick.AddListener(delegate
990 if (c3.resource.value < c3.cost)
996 c3.resource.Mod(-c3.cost);
1000 list.
List(refreshHighlight:
true);
1003 b.RebuildLayout(recursive:
true);
1018 }, () => !layer, StepDefault);
1019 Step(
"_upgradeHearth");
1024 GameLang.refDrama2 = (EClass.Branch.lv + 1).ToString() ??
"";
1026 TempTalkTopic(
"upgrade_heath1",
null);
1027 Choice(
"yes", delegate
1031 TempTalkTopic(
"nomoney", StepDefault);
1035 EClass.pc.ModCurrency(-cost7);
1037 LayerDrama.Instance.SetOnKill(delegate
1039 EClass.Branch.Upgrade();
1041 TempTalkTopic(
"upgrade_heath2", StepEnd);
1044 Choice(
"no", StepDefault, cancel:
true).SetOnClick(RumorChill);
1049 int cost6 = EClass.player.fame / 5;
1050 GameLang.refDrama1 = cost6.ToString() ??
"";
1053 TempTalkTopic(
"goto2", StepDefault);
1057 TempTalkTopic(
"sellFame1",
null);
1058 Choice(
"yes", delegate
1063 TempTalkTopic(
"sellFame2", StepDefault);
1065 Choice(
"no", StepDefault, cancel:
true).SetOnClick(RumorChill);
1068 Step(
"_investZone");
1074 TempTalkTopic(
"invest1",
null);
1075 Choice(
"yes", delegate
1077 Invest(quick:
false);
1079 Choice(
"no", StepDefault, cancel:
true).SetOnClick(RumorChill);
1080 Choice(
"quickInvest", delegate
1082 Invest(quick:
true);
1084 void Invest(
bool quick)
1088 TempTalkTopic(
"nomoney", StepDefault);
1094 EClass._zone.investment += cost5;
1100 TempGoto(
"_investZone");
1104 TempTalkTopic(
"invest2", StepDefault);
1109 Step(
"_investShop");
1115 TempTalkTopic(
"invest_shop1",
null);
1116 Choice(
"yes", delegate
1118 Invest(quick:
false);
1120 Choice(
"no", StepDefault, cancel:
true).SetOnClick(RumorChill);
1121 Choice(
"quickInvest", delegate
1123 Invest(quick:
true);
1125 void Invest(
bool quick)
1129 TempTalkTopic(
"nomoney", StepDefault);
1141 TempGoto(
"_investShop");
1145 TempTalkTopic(
"invest_shop2", StepDefault);
1150 Step(
"_changeTitle");
1153 EClass.player.title = WordGen.Get(
"title");
1155 TempTalk(
"changeTitle", StepDefault);
1156 },
null, StepDefault);
1162 GameLang.refDrama1 =
"";
1163 GameLang.refDrama2 = costLand.ToString() ??
"";
1166 TempTalkTopic(
"expand3", StepDefault);
1170 TempTalkTopic(
"expand1", StepDefault);
1171 Choice(
"yes", delegate
1175 TempTalkTopic(
"nomoney", StepDefault);
1180 EClass.pc.ModCurrency(-costLand,
"money2");
1181 TempTalkTopic(
"expand2", StepDefault);
1182 EClass._map.bounds.Expand(1);
1184 EClass._map.RefreshAllTiles();
1185 WidgetMinimap.UpdateMap();
1186 ScreenEffect.Play(
"Firework");
1189 Choice(
"no", StepDefault, cancel:
true).SetOnClick(RumorChill);
1206 }, () => !layer, StepDefault);
1211 TempTalkTopic(
"blessing", StepEnd);
1216 if (c.trait is TraitMiko_Mifu)
1218 member.AddCondition<ConHolyVeil>()?.SetPerfume();
1222 member.AddCondition<ConEuphoric>()?.SetPerfume();
1226 member.AddCondition<ConNightVision>()?.SetPerfume();
1228 member.
Say(
"blessing", member);
1232 c.isRestocking =
true;
1241 list.moldItem = Resources.Load<
ButtonElement>(
"UI/Element/Button/ButtonElementTrain").transform;
1268 b.imagePotential.enabled = flag5;
1272 b.mainText.text = b.mainText.text +
" " + (flag5 ?
"" : (
"notLearned".lang() +
" "));
1273 b.subText2.text = ((cost3 == 0) ?
"-" : (cost3.ToString() ??
"")).TagColor(() => plat >= cost3 && cost3 != 0);
1276 onInstantiate = delegate
1283 if (a.tag.Contains(
"unused"))
1287 if (a.tag.Contains(
"guild"))
1311 return a.category ==
"skill" && a.categorySub == c.trait.IDTrainer;
1325 }, () => !layer, StepDefault);
1326 Step(
"_changeDomain");
1330 }, () => !layer, StepDefault);
1335 layer.SetOnKill(SE.PopDrama);
1340 }, () => !layer, StepDefault);
1344 LayerPeople.slaveToBuy =
null;
1346 layer.SetOnKill(SE.PopDrama);
1352 }, () => !layer,
"_buySlaveConfirm");
1353 Step(
"_buySlaveConfirm");
1364 GameLang.refDrama1 = cost2.ToString() ??
"";
1365 GameLang.refDrama2 = tc.
Name;
1366 TempTalkTopic(
"slave_buy",
null);
1367 Choice(
"yes", delegate
1371 TempTalkTopic(
"nomoney", StepDefault);
1375 GameLang.refDrama1 = tc.Name;
1376 EClass._zone.AddCard(tc, EClass.pc.pos.GetNearestPoint());
1378 c.GetObj<SlaverData>(5).list.Remove(tc);
1379 TempTalkTopic(
"slave_buy2", StepEnd);
1382 Choice(
"no", StepDefault, cancel:
true).SetOnClick(RumorChill);
1390 }, () => !layer, StepDefault);
1398 }, () => !layer, StepDefault);
1399 Step(
"_identifyAll");
1402 int costIdentify = 0;
1403 int numIdentify = 0;
1404 int numSuperior = 0;
1410 costIdentify += CalcMoney.Identify(EClass.pc, superior: false);
1413 GameLang.refDrama1 = costIdentify.ToString() ??
"";
1414 GameLang.refDrama2 = numIdentify.ToString() ??
"";
1415 if (numIdentify == 0)
1417 TempTalkTopic(
"appraise3", StepDefault);
1421 TempTalkTopic(
"appraise1", StepDefault);
1422 Choice(
"yes", delegate
1426 TempTalkTopic(
"nomoney", StepDefault);
1431 EClass.pc.ModCurrency(-costIdentify);
1432 foreach (Thing item10 in EClass.pc.things.List((Thing t) => !t.IsIdentified, onlyAccessible: true))
1434 item10.Thing.Identify(show: false);
1435 if (!item10.IsInstalled)
1440 TempTalkTopic(
"appraise2", StepDefault);
1443 Choice(
"no", StepDefault, cancel:
true).SetOnClick(RumorChill);
1446 Step(
"_identifySP");
1453 }, () => !layer, StepDefault);
1457 TempTalkTopic(
"bout1", StepDefault);
1458 Choice(
"yes", delegate
1474 EClass.pc.MoveZone(z, ZoneTransition.EnterState.Center);
1476 TempTalkTopic(
"bout2", StepEnd);
1478 Choice(
"no", StepDefault, cancel:
true).SetOnClick(RumorChill);
1479 },
null, StepDefault);
1483 TempTalkTopic(
"rob1", StepDefault);
1484 Choice(
"yes_rob", delegate
1487 c.Talk(
"callGuards");
1490 if (chara == c || chara.master == c)
1492 chara.SetHostility(Hostility.Enemy);
1493 chara.DoHostileAction(EClass.pc.party.members.RandomItem());
1498 EClass._zone.SetBGM(102);
1501 c.SetBool(129, enable:
true);
1503 Choice(
"no_rob", StepDefault, cancel:
true).SetOnClick(RumorChill);
1504 },
null, StepDefault);
1511 TempTalkTopic(
"news2",
null);
1515 zone.isKnown =
true;
1517 GameLang.refDrama1 = zone.
Name;
1518 TempTalkTopic(
"news1",
null);
1525 },
null, StepDefault);
1531 TempTalkTopic(
"healer1",
null);
1532 Choice(
"yes", delegate
1536 TempTalkTopic(
"nomoney", StepDefault);
1541 foreach (Chara member2 in EClass.pc.party.members)
1543 ActEffect.Proc(EffectId.HealComplete, member2);
1546 TempTalkTopic(
"healer2", StepEnd);
1549 Choice(
"no", StepDefault, cancel:
true).SetOnClick(RumorChill);
1556 TempTalkTopic(
"food1",
null);
1557 Choice(
"yes", delegate
1561 TempTalkTopic(
"alreadyFull", StepDefault);
1565 TempTalkTopic(
"nomoney", StepDefault);
1570 EClass.pc.ModCurrency(-cost);
1571 TempTalkTopic(
"food2", StepDefault);
1572 FoodEffect.Proc(EClass.pc, ThingGen.Create(
"dish_lunch"), consume: false);
1573 EClass.pc.hunger.value = 0;
1576 Choice(
"no", StepDefault, cancel:
true).SetOnClick(RumorChill);
1578 int[] bankTier =
new int[5] { 100, 1000, 10000, 100000, 1000000 };
1586 WidgetFeed.Instance.Talk(c,
"barter");
1588 SE.Play(
"shop_open");
1590 }, () => !layer, StepDefault);
1599 WidgetFeed.Instance.Talk(c,
"barter");
1601 SE.Play(
"shop_open");
1603 if (c.c_copyContainer ==
null)
1605 c.c_copyContainer = ThingGen.Create(
"container_deposit");
1607 int numCopyItem = c.trait.NumCopyItem;
1608 c.c_copyContainer.things.SetSize(numCopyItem, 1);
1610 }, () => !layer, StepDefault);
1612 int[] taxTier =
new int[6] { 0, 1000, 2000, 5000, 10000, 20000 };
1617 TempTalkTopic(
"extraTax",
null);
1618 int[] array2 = taxTier;
1619 foreach (
int num5
in array2)
1624 EClass.player.extraTax = _i2;
1625 GameLang.refDrama1 = Lang._currency(_i2,
"money");
1626 TempTalkTopic(
"extraTax2", StepDefault);
1629 Choice(
"no2", StepDefault, cancel:
true).SetOnClick(RumorChill);
1635 GameLang.refDrama1 = bankMoney.ToString() ??
"";
1636 TempTalkTopic(
"banker2",
null);
1637 int[] array = bankTier;
1638 foreach (
int num4
in array)
1646 EClass.pc.ModCurrency(_i);
1647 EClass.player.bankMoney -= _i;
1648 TempTalkTopic(
"banker4", StepDefault);
1652 Choice(
"no2", StepDefault, cancel:
true).SetOnClick(RumorChill);
1654 Step(
"_disableMove");
1658 c.orgPos =
new Point(c.pos);
1662 Step(
"_enableMove");
1680 Choice2(
"daMama",
"_mama");
1683 Choice2(
"daBaby",
"_baby");
1688 if (condition2 ==
null)
1690 if (c.HasElement(1232))
1694 num3 = c.HasElement(1291);
1698 num3 = condition2.
IsBaby;
1706 if (c.trait.CanRevive)
1708 Choice2(
"daRevive",
"_revive").DisableSound();
1712 Choice2(
"daTrain",
"_train").DisableSound();
1714 if (c.trait.CanWhore)
1716 Choice2(flag2 ?
"daBirdBuy" :
"daTailBuy",
"_whore");
1718 if (c.trait.CanHeal)
1720 Choice2(
"daHeal",
"_heal");
1722 if (c.trait.CanServeFood)
1724 Choice2(
"daFood",
"_food");
1728 Choice2(
"daSellFame",
"_sellFame");
1734 Choice2(
"daInvest",
"_investZone");
1736 if (c.trait.CanInvest)
1738 Choice2(
"daInvest",
"_investShop");
1741 if (c.trait.CanIdentify)
1743 Choice2(
"daIdentify",
"_identify").DisableSound();
1744 Choice2(
"daIdentifyAll",
"_identifyAll");
1745 Choice2(
"daIdentifySP",
"_identifySP").DisableSound();
1747 if (c.trait.CanPicklock)
1749 if (c.Evalue(280) < 20)
1751 c.elements.SetBase(280, 20);
1756 Choice2(
"daPicklock".lang(_t2.
Name),
"_picklock").SetOnClick(delegate
1764 Choice2(
"daDeposit",
"_deposit");
1768 Choice2(
"daExtraTax",
"_extraTax");
1772 Choice2(
"daBlessing",
"_blessing");
1777 Method(RumorChill,
null, StepDefault);
1779 string GetTalk(
string id)
1781 return c.GetTalkText(
id);
1785 rumor = GetTalk(
"chill");
1787 void Talk(
string idTalk,
string idJump)
1789 _Talk(
"tg", GetTalk(idTalk), idJump);
1793 EnableCancel(
"back");
1795 void TempTalk(
string idTalk,
string idJump)
1797 _TempTalk(
"tg", GetTalk(idTalk), idJump);
1799 void TempTalkTopic(
string idTopc,
string idJump)
1801 _TempTalk(
"tg", GetTopic(c, idTopc), idJump);
1805 if (c.quest !=
null)
1817 return GetText(c,
"rumor",
"bored");
1819 if (HasTopic(
"unique", c.
id))
1821 return GetText(c,
"unique", c.
id);
1841 return GetText(c,
"rumor",
"hint");
1843 return GetText(c,
"rumor",
"default");
1858 if (!(idSheet !=
"unique"))
1860 return dialog.RandomItem();
1862 return c.
ApplyTone(dialog.RandomItem());
1867 return GetText(c,
"general", idTopic);
1873 string[] array = setup.
textData.Split(
new string[1] { Environment.NewLine + Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries);
1874 foreach (
string text
in array)
1876 if (!(text == Environment.NewLine))
1878 _Talk(
"", text.TrimStart(Environment.NewLine.ToCharArray()).TrimEnd(Environment.NewLine.ToCharArray()));
1887 e.sequence = sequence;
1899 public void Method(Action action, Func<bool> endFunc =
null,
string idJump =
null)
1905 if (!idJump.IsEmpty())
1926 public void _Talk(
string idActor,
string text,
string idJump =
null)
1936 public void _Talk(
string idActor, Func<string> funcText,
string idJump =
null)
1946 public void _TempTalk(
string idActor,
string text,
string idJump =
null)
1961 sequence.
Play(idJump);
1970 EnableCancel(idJump);
1978 dramaChoice.onJump = onJump;
1993 manager.lastTalk.canCancel =
true;
1994 manager.lastTalk.idCancelJump = idCancelJump;
1999 List<Card> list =
new List<Card>();
int GetInt(int id, int? defaultInt=null)
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)
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)
string ApplyTone(string text, bool stripPun=false)
SourceCategory.Row GetFavCat()
override bool IsAliveInCurrentZone
override bool IsPCFaction
void SetAIImmediate(AIAct g)
List< Hobby > ListHobbies(bool useMemberType=true)
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)
DramaChoice Choice(string lang, Action onJump)
void _Talk(string idActor, string text, string idJump=null)
DramaChoice Choice2(string lang, string idJump)
List< DramaEvent > events
List< Card > GetListGuide()
DramaEvent Event(DramaEvent e)
string GetTopic(Chara c, string idTopic=null)
void _Talk(string idActor, Func< string > funcText, string idJump=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)
void AddChoice(DramaChoice choice)
List< DramaChoice > _choices
Dictionary< string, string > customTalkTopics
List< DramaEvent > tempEvents
static SourceManager sources
static FactionBranch Branch
static FactionBranch BranchOrHomeBranch
void Train(int ele, int a=10)
void Learn(int ele, int v=1)
Element ModBase(int ele, int v)
Element GetElement(string alias)
static Element Create(int id, int v=0)
ResearchManager researches
string GetHearthHint(int a)
HomeResourceManager resources
void AddContribution(int a)
ReligionManager religions
override bool IsCurrentZone
override bool IsCurrentZone
override bool IsCurrentZone
override bool IsCurrentZone
static GuildMerchant Merchant
static GuildFighter Fighter
static Guild GetCurrentGuild()
static string[] GetDialog(string idSheet, string idTopic)
static ExcelData.Sheet GetDialogSheet(string idSheet)
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 Activate(string book, string idSheet, string idStep, Chara target=null, Card ref1=null, string tag="")
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)
static async UniTask< bool > SendChat(string name, string msg, ChatCategory cat, string idLang)
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()
static Quest Create(string _id, string _idPerson=null, Chara c=null, bool assignQuest=true)
virtual string GetTitle()
virtual string NameDeliver
virtual bool Deliver(Chara c, Thing t=null)
Zone CreateRandomSite(Zone center, int radius=8, string idSource=null, bool updateMesh=true, int lv=0)
ReligionMoonShadow MoonShadow
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 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)
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)