forked from mipen/BannerlordTweaks
-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathTweakedConspiracyBehavrior.cs
64 lines (59 loc) · 2.21 KB
/
TweakedConspiracyBehavrior.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
using System;
using TaleWorlds.CampaignSystem;
using TaleWorlds.Core;
using StoryMode.StoryModePhases;
namespace BannerlordTweaks
{
//internal class TweakedConspiracyBehavior : CampaignBehaviorBase
public class ConspiracyQuestTimerTweak
{
/*
public override void RegisterEvents()
{
CampaignEvents.DailyTickEvent.AddNonSerializedListener(this, new Action(this.ExtendDeadline));
}
*/
public static void Apply(Campaign campaign)
{
var obj = new ConspiracyQuestTimerTweak();
CampaignEvents.DailyTickEvent.AddNonSerializedListener(obj, new Action(obj.ExtendDeadline));
}
private void ExtendDeadline()
{
if (Campaign.Current != null && Campaign.Current.QuestManager != null)
{
foreach (QuestBase questBase in Campaign.Current.QuestManager.Quests)
{
bool flag2 = questBase.GetName().ToString().StartsWith("stop_conspiracy_") && questBase.QuestDueTime < CampaignTime.DaysFromNow(5f);
if (flag2)
{
DebugHelpers.ColorGreenMessage("Extending Stop the Conspiracy quest by 1 year.");
questBase.ChangeQuestDueTime(CampaignTime.YearsFromNow(1f));
DebugHelpers.ColorGreenMessage("New quest deadline: " + questBase.QuestDueTime.ToString());
}
//bool flag3 = questBase.GetName().ToString().StartsWith("conspiacy_quest_") && questBase.QuestDueTime < CampaignTime.DaysFromNow(5f);
bool flag3 = questBase.StringId.StartsWith("conspiracy_quest_") && questBase.QuestDueTime < CampaignTime.DaysFromNow(7f);
if (flag3)
{
questBase.ChangeQuestDueTime(CampaignTime.WeeksFromNow(3f));
DebugHelpers.ColorGreenMessage("BT Extend Conspiracy Tweak: Extended conspiracy quest.");
float cStrngth = SecondPhase.Instance.ConspiracyStrength;
if (cStrngth > 1000 && cStrngth > 250)
{
SecondPhase.Instance.DecreaseConspiracyStrength();
SecondPhase.Instance.DecreaseConspiracyStrength();
SecondPhase.Instance.DecreaseConspiracyStrength();
SecondPhase.Instance.DecreaseConspiracyStrength();
DebugHelpers.ColorGreenMessage("BT Extend Conspiracy Tweak: Reduced conspiracy strength.");
}
}
}
}
}
/*
public override void SyncData(IDataStore dataStore)
{
}
*/
}
}