From 8cf7405faa6b95df659d53d343689ffeb66a63a2 Mon Sep 17 00:00:00 2001 From: Mehni Date: Thu, 26 Jul 2018 20:59:20 +0200 Subject: [PATCH] last minute tinkering before release --- Assemblies/MoreFactionInteraction.dll | Bin 99328 -> 99840 bytes .../General/HarmonyPatches.cs | 1 - .../ChoiceLetter_DiplomaticMarriage.cs | 3 ++- ...ArrivalAction_VisitFactionWarPeaceTalks.cs | 14 ++++++----- .../MoreFactionWar/FactionWarDialogue.cs | 7 +++--- .../MoreFactionWar/FactionWarPeaceTalks.cs | 1 - .../IncidentWorker_Extortion.cs | 18 +++++++------- .../WorldComponent_OutpostGrower.cs | 2 +- .../IncidentWorker_BumperCrop.cs | 2 +- .../WorldObjectComp_CaravanComp.cs | 7 ++++++ ...orldObjectComp_SettlementBumperCropComp.cs | 22 +++++++++++++----- 11 files changed, 48 insertions(+), 29 deletions(-) diff --git a/Assemblies/MoreFactionInteraction.dll b/Assemblies/MoreFactionInteraction.dll index d321758c21433fcb1e158df6fbed2a6b8960452b..08026c3a24a161c5d6fc34f5add4e87e4e56af55 100644 GIT binary patch delta 39690 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%0D9PDt}XsT!R$WXP^7WFjJ;)I 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 Hr&|64yV~Hs diff --git a/MoreFactionInteraction/General/HarmonyPatches.cs b/MoreFactionInteraction/General/HarmonyPatches.cs index fc09ab4..d9aa179 100644 --- a/MoreFactionInteraction/General/HarmonyPatches.cs +++ b/MoreFactionInteraction/General/HarmonyPatches.cs @@ -90,7 +90,6 @@ private static void TraderStocker_OverStockerPostFix(ref List __result, r else if (Find.CurrentMap != null) map = Find.CurrentMap; - if (map != null && (parms.traderDef.orbital || parms.traderDef.defName.Contains(value: "Base_"))) { float silverCount = __result.First(predicate: x => x.def == ThingDefOf.Silver).stackCount; diff --git a/MoreFactionInteraction/More Flavour/ChoiceLetter_DiplomaticMarriage.cs b/MoreFactionInteraction/More Flavour/ChoiceLetter_DiplomaticMarriage.cs index b3079d3..cc33c65 100644 --- a/MoreFactionInteraction/More Flavour/ChoiceLetter_DiplomaticMarriage.cs +++ b/MoreFactionInteraction/More Flavour/ChoiceLetter_DiplomaticMarriage.cs @@ -46,8 +46,8 @@ public override IEnumerable Choices HealIfPossible(p: this.betrothed); caravan.RemovePawn(p: this.betrothed); } - DetermineAndDoOutcome(marriageSeeker: this.marriageSeeker, betrothed: this.betrothed); + Find.LetterStack.RemoveLetter(this); } }; DiaNode dialogueNodeAccept = new DiaNode(text: "MFI_AcceptedProposal".Translate(this.betrothed, this.marriageSeeker.Faction).CapitalizeFirst().AdjustedFor(this.marriageSeeker)); @@ -60,6 +60,7 @@ public override IEnumerable Choices { //if (Rand.Chance(0.2f)) this.marriageSeeker.Faction.TryAffectGoodwillWith(other: Faction.OfPlayer, goodwillChange: DiplomacyTuning.Goodwill_PeaceTalksBackfireRange.RandomInRange, canSendMessage: true, canSendHostilityLetter: true, reason: "LetterLabelRejectedProposal".Translate()); + Find.LetterStack.RemoveLetter(this); } }; DiaNode dialogueNodeReject = new DiaNode(text: "MFI_DejectedProposal".Translate(this.marriageSeeker.Name, this.marriageSeeker.Faction).CapitalizeFirst().AdjustedFor(this.marriageSeeker)); diff --git a/MoreFactionInteraction/MoreFactionWar/CaravanArrivalAction_VisitFactionWarPeaceTalks.cs b/MoreFactionInteraction/MoreFactionWar/CaravanArrivalAction_VisitFactionWarPeaceTalks.cs index bf90389..78868fd 100644 --- a/MoreFactionInteraction/MoreFactionWar/CaravanArrivalAction_VisitFactionWarPeaceTalks.cs +++ b/MoreFactionInteraction/MoreFactionWar/CaravanArrivalAction_VisitFactionWarPeaceTalks.cs @@ -9,9 +9,9 @@ public class CaravanArrivalAction_VisitFactionWarPeaceTalks : CaravanArrivalActi { private FactionWarPeaceTalks factionWarPeaceTalks; - public override string Label => "VisitPeaceTalks".Translate(args: new object[] {this.factionWarPeaceTalks.Label}); + public override string Label => "VisitPeaceTalks".Translate( factionWarPeaceTalks.Label ); - public override string ReportString => "CaravanVisiting".Translate(args: new object[] { this.factionWarPeaceTalks.Label }); + public override string ReportString => "CaravanVisiting".Translate( this.factionWarPeaceTalks.Label ); public override void Arrived(Caravan caravan) { @@ -51,10 +51,12 @@ public static FloatMenuAcceptanceReport CanVisit(Caravan caravan, FactionWarPeac public static IEnumerable GetFloatMenuOptions(Caravan caravan, FactionWarPeaceTalks factionWarPeaceTalks) { - return CaravanArrivalActionUtility.GetFloatMenuOptions(acceptanceReportGetter: () => CanVisit(caravan: caravan, factionWarPeaceTalks: factionWarPeaceTalks), arrivalActionGetter: () => new CaravanArrivalAction_VisitFactionWarPeaceTalks(factionWarPeaceTalks: factionWarPeaceTalks), label: "VisitPeaceTalks".Translate(args: new object[] - { - factionWarPeaceTalks.Label - }), caravan: caravan, pathDestination: factionWarPeaceTalks.Tile, revalidateWorldClickTarget: factionWarPeaceTalks); + return CaravanArrivalActionUtility.GetFloatMenuOptions(acceptanceReportGetter: + () => CanVisit(caravan: caravan, factionWarPeaceTalks: factionWarPeaceTalks), arrivalActionGetter: + () => new CaravanArrivalAction_VisitFactionWarPeaceTalks(factionWarPeaceTalks: factionWarPeaceTalks), + label: "VisitPeaceTalks".Translate(factionWarPeaceTalks.Label), + caravan: caravan, pathDestination: factionWarPeaceTalks.Tile, + revalidateWorldClickTarget: factionWarPeaceTalks); } } } diff --git a/MoreFactionInteraction/MoreFactionWar/FactionWarDialogue.cs b/MoreFactionInteraction/MoreFactionWar/FactionWarDialogue.cs index 65436ee..9e2a9c3 100644 --- a/MoreFactionInteraction/MoreFactionWar/FactionWarDialogue.cs +++ b/MoreFactionInteraction/MoreFactionWar/FactionWarDialogue.cs @@ -39,7 +39,7 @@ public static DiaNode FactionWarPeaceTalks(Pawn pawn, Faction factionOne, Factio { dialogueGreeting.options.Add(item: new DiaOption(text: "(Dev: start war)") { action =() => - { Find.World.GetComponent().StartWar(factionOne: factionOne, factionInstigator: factionInstigator, selfResolved: true);}, + { Find.World.GetComponent().StartWar(factionOne: factionOne, factionInstigator: factionInstigator, selfResolved: false);}, linkLateBind = () => DialogueResolver(textResult: "Alrighty. War started. Sorry about the lack of fancy flavour text for this dev mode only option.")}); } @@ -50,7 +50,7 @@ private static IEnumerable DialogueOptions(Pawn pawn, Faction faction { string factionWarNegotiationsOutcome = "Something went wrong with More Faction Interaction. Please contact mod author."; - yield return new DiaOption(text: "MFI_FactionWarPeaceTalksCurryFavour".Translate(args: new object[] { factionOne.Name })) + yield return new DiaOption(text: "MFI_FactionWarPeaceTalksCurryFavour".Translate( factionOne.Name )) { action = () => { @@ -58,7 +58,7 @@ private static IEnumerable DialogueOptions(Pawn pawn, Faction faction }, linkLateBind = () => DialogueResolver(textResult: factionWarNegotiationsOutcome), }; - yield return new DiaOption(text: "MFI_FactionWarPeaceTalksCurryFavour".Translate(args: new object[] { factionInstigator.Name })) + yield return new DiaOption(text: "MFI_FactionWarPeaceTalksCurryFavour".Translate( factionInstigator.Name )) { action = () => { @@ -365,6 +365,7 @@ private static void Outcome_TalksSabotageDisaster(Faction favouredFaction, Facti } Find.TickManager.CurTimeSpeed = TimeSpeed.Paused; + Find.TickManager.slower.SignalForceNormalSpeedShort(); }, textKey: "GeneratingMapForNewEncounter", doAsynchronously: false, exceptionHandler: null); } diff --git a/MoreFactionInteraction/MoreFactionWar/FactionWarPeaceTalks.cs b/MoreFactionInteraction/MoreFactionWar/FactionWarPeaceTalks.cs index 26b7b60..4b503e4 100644 --- a/MoreFactionInteraction/MoreFactionWar/FactionWarPeaceTalks.cs +++ b/MoreFactionInteraction/MoreFactionWar/FactionWarPeaceTalks.cs @@ -82,7 +82,6 @@ public override IEnumerable GetFloatMenuOptions(Caravan caravan public override void PostRemove() { base.PostRemove(); - //TODO: make so that this doesn't trigger upon MY removal of 'this' if (!this.canRemoveWithoutPostRemove) Find.World.GetComponent().DetermineWarAsIfNoPlayerInteraction(this.factionOne, this.factionInstigator); } diff --git a/MoreFactionInteraction/Spreading Pirates/IncidentWorker_Extortion.cs b/MoreFactionInteraction/Spreading Pirates/IncidentWorker_Extortion.cs index 32eb0b4..b725474 100644 --- a/MoreFactionInteraction/Spreading Pirates/IncidentWorker_Extortion.cs +++ b/MoreFactionInteraction/Spreading Pirates/IncidentWorker_Extortion.cs @@ -64,22 +64,22 @@ protected override bool TryExecuteWorker(IncidentParms parms) //update: seems they now do? thx Tynan. int extorsionDemand = Math.Max(val1: Rand.Range(min: 150, max: 300), val2: (int)parms.points) * NearbyHostileEncampments(forTile: map.Tile).Count(); - ChoiceLetter_ExtortionDemand choiceLetter_ExtortionDemand = (ChoiceLetter_ExtortionDemand)LetterMaker.MakeLetter(label: this.def.letterLabel, text: "MFI_ExtortionDemand".Translate(args: new object[] + ChoiceLetter_ExtortionDemand choiceLetterExtortionDemand = (ChoiceLetter_ExtortionDemand)LetterMaker.MakeLetter(label: this.def.letterLabel, text: "MFI_ExtortionDemand".Translate(args: new object[] { this.faction.leader.LabelShort, this.faction.def.leaderTitle, this.faction.Name, this.worldObject.def.label, this.worldObject.Label, extorsionDemand, }).AdjustedFor(p: this.faction.leader), def: this.def.letterDef); - choiceLetter_ExtortionDemand.title = "MFI_ExtortionDemandTitle".Translate(args: new object[] + choiceLetterExtortionDemand.title = "MFI_ExtortionDemandTitle".Translate(args: new object[] { map.info.parent.Label }).CapitalizeFirst(); - if (this.worldObject is Site) choiceLetter_ExtortionDemand.outpost = true; - choiceLetter_ExtortionDemand.radioMode = true; - choiceLetter_ExtortionDemand.faction = this.faction; - choiceLetter_ExtortionDemand.map = map; - choiceLetter_ExtortionDemand.fee = extorsionDemand; - choiceLetter_ExtortionDemand.StartTimeout(duration: TimeoutTicks); - Find.LetterStack.ReceiveLetter(@let: choiceLetter_ExtortionDemand); + if (this.worldObject is Site) choiceLetterExtortionDemand.outpost = true; + choiceLetterExtortionDemand.radioMode = true; + choiceLetterExtortionDemand.faction = this.faction; + choiceLetterExtortionDemand.map = map; + choiceLetterExtortionDemand.fee = extorsionDemand; + choiceLetterExtortionDemand.StartTimeout(duration: TimeoutTicks); + Find.LetterStack.ReceiveLetter(@let: choiceLetterExtortionDemand); return true; } return false; diff --git a/MoreFactionInteraction/Spreading Pirates/WorldComponent_OutpostGrower.cs b/MoreFactionInteraction/Spreading Pirates/WorldComponent_OutpostGrower.cs index 30617ce..f676db6 100644 --- a/MoreFactionInteraction/Spreading Pirates/WorldComponent_OutpostGrower.cs +++ b/MoreFactionInteraction/Spreading Pirates/WorldComponent_OutpostGrower.cs @@ -45,7 +45,7 @@ where site.Faction.HostileTo(other: Faction.OfPlayer) && site.Faction.def.perman Find.LetterStack.ReceiveLetter(label: "MFI_LetterLabelBanditOutpostUpgraded".Translate(), text: "MFI_LetterBanditOutpostUpgraded".Translate(args: new object[] { factionBase.Faction.Name, - }), textLetterDef: LetterDefOf.NeutralEvent, lookTargets: factionBase); + }), textLetterDef: LetterDefOf.NeutralEvent, lookTargets: factionBase, relatedFaction: toUpgrade.Faction); } } } diff --git a/MoreFactionInteraction/World Incidents/IncidentWorker_BumperCrop.cs b/MoreFactionInteraction/World Incidents/IncidentWorker_BumperCrop.cs index bd703bd..e2701ab 100644 --- a/MoreFactionInteraction/World Incidents/IncidentWorker_BumperCrop.cs +++ b/MoreFactionInteraction/World Incidents/IncidentWorker_BumperCrop.cs @@ -47,7 +47,7 @@ protected override bool TryExecuteWorker(IncidentParms parms) { settlement.Label, (component.expiration - Find.TickManager.TicksGame).ToStringTicksToDays(format: "F0") - }), textLetterDef: LetterDefOf.PositiveEvent, lookTargets: settlement); + }), textLetterDef: LetterDefOf.PositiveEvent, lookTargets: settlement, relatedFaction: settlement.Faction); return true; } diff --git a/MoreFactionInteraction/World Incidents/WorldObjectComp_CaravanComp.cs b/MoreFactionInteraction/World Incidents/WorldObjectComp_CaravanComp.cs index 36da263..6533c28 100644 --- a/MoreFactionInteraction/World Incidents/WorldObjectComp_CaravanComp.cs +++ b/MoreFactionInteraction/World Incidents/WorldObjectComp_CaravanComp.cs @@ -25,5 +25,12 @@ public override void CompTick() CaravanVisitUtility.SettlementVisitedNow(caravan: (Caravan) this.parent)?.GetComponent().DoOutcome(caravan: (Caravan) this.parent); } } + + public override void PostExposeData() + { + base.PostExposeData(); + Scribe_Values.Look(ref this.workWillBeDoneAtTick, "MFI_BumperCropWorkingCaravanWorkWillBeDoneAt"); + Scribe_Values.Look(ref this.caravanIsWorking, "MFI_BumperCropCaravanIsWorking"); + } } } diff --git a/MoreFactionInteraction/World Incidents/WorldObjectComp_SettlementBumperCropComp.cs b/MoreFactionInteraction/World Incidents/WorldObjectComp_SettlementBumperCropComp.cs index c828eac..ac091a5 100644 --- a/MoreFactionInteraction/World Incidents/WorldObjectComp_SettlementBumperCropComp.cs +++ b/MoreFactionInteraction/World Incidents/WorldObjectComp_SettlementBumperCropComp.cs @@ -71,18 +71,19 @@ private void Outcome_Triumph(Caravan caravan) float totalYieldPowerForCaravan = CalculateYieldForCaravan(caravanMembersCapableOfGrowing: allMembersCapableOfGrowing); //TODO: Calculate a good amount - float totalreward = basereward * totalYieldPowerForCaravan * allMembersCapableOfGrowing.Count * Mathf.Max(a: 1, b: (float)allMembersCapableOfGrowing.Average(selector: pawn => pawn.skills.GetSkill(skillDef: SkillDefOf.Plants).Level)); + float totalreward = basereward * totalYieldPowerForCaravan * allMembersCapableOfGrowing.Count + * Mathf.Max(a: 1, b: (float)allMembersCapableOfGrowing.Average(selector: pawn => pawn.skills.GetSkill(skillDef: SkillDefOf.Plants).Level)); Thing reward = ThingMaker.MakeThing(def: this.bumperCrop); reward.stackCount = Mathf.RoundToInt(f: totalreward); CaravanInventoryUtility.GiveThing(caravan: caravan, thing: reward); - Find.LetterStack.ReceiveLetter(label: "MFI_LetterLabelHarvest_Triumph".Translate(), text: GetLetterText(baseText: "MFI_Harvest_Triumph".Translate(args: new object[] - { + Find.LetterStack.ReceiveLetter(label: "MFI_LetterLabelHarvest_Triumph".Translate(), text: GetLetterText(baseText: "MFI_Harvest_Triumph".Translate( + this.parent.Faction.def.pawnsPlural, this.parent.Faction.Name, Mathf.RoundToInt(f: randomInRange), reward.LabelCap - }), caravan: caravan), textLetterDef: LetterDefOf.PositiveEvent, lookTargets: caravan); + ), caravan: caravan), textLetterDef: LetterDefOf.PositiveEvent, lookTargets: caravan, relatedFaction: this.parent.Faction); allMembersCapableOfGrowing.ForEach(action: pawn => pawn.skills.Learn(sDef: SkillDefOf.Plants, xp: expGain, direct: true)); } @@ -109,8 +110,17 @@ private static string GetLetterText(string baseText, Caravan caravan) private static List AllCaravanMembersCapableOfGrowing(Caravan caravan) { - return caravan.PawnsListForReading.Where(predicate: pawn => !pawn.Dead && !pawn.Downed && !pawn.InMentalState && caravan.IsOwner(p: pawn) && pawn.health.capacities.CanBeAwake - && !StatDefOf.PlantHarvestYield.Worker.IsDisabledFor(thing: pawn)).ToList(); + return caravan.PawnsListForReading.Where(predicate: pawn => !pawn.Dead && !pawn.Downed && !pawn.InMentalState + && caravan.IsOwner(p: pawn) && pawn.health.capacities.CanBeAwake + && !StatDefOf.PlantHarvestYield.Worker.IsDisabledFor(thing: pawn)).ToList(); + } + + public override void PostExposeData() + { + base.PostExposeData(); + Scribe_Values.Look(ref this.expiration, "MFI_BumperCropExpiration"); + Scribe_Values.Look(ref this.workLeft, "MFI_BumperCropWorkLeft"); + Scribe_Values.Look(ref this.workStarted, "MFI_BumperCropWorkStarted"); } } } \ No newline at end of file