-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathSurrenderTweaksMixin.cs
More file actions
52 lines (42 loc) · 1.61 KB
/
Copy pathSurrenderTweaksMixin.cs
File metadata and controls
52 lines (42 loc) · 1.61 KB
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
using Bannerlord.UIExtenderEx.Attributes;
using Bannerlord.UIExtenderEx.ViewModels;
using System;
using TaleWorlds.Core.ViewModelCollection;
using TaleWorlds.Library;
using TaleWorlds.Localization;
namespace SurrenderTweaks
{
[ViewModelMixin]
public class SurrenderTweaksMixin : BaseViewModelMixin<PowerLevelComparer>
{
private string _surrenderChance;
public static WeakReference<SurrenderTweaksMixin> MixinWeakReference { get; set; }
[DataSourceProperty]
public string SurrenderChance
{
get => _surrenderChance;
set
{
if (value != _surrenderChance)
{
_surrenderChance = value;
ViewModel?.OnPropertyChangedWithValue(value, "SurrenderChance");
}
}
}
public SurrenderTweaksMixin(PowerLevelComparer powerLevelComparer) : base(powerLevelComparer) => MixinWeakReference = new WeakReference<SurrenderTweaksMixin>(this);
public void SetSurrenderChance()
{
SurrenderEvent surrenderEvent = SurrenderEvent.PlayerSurrenderEvent;
SurrenderChance = null;
if (surrenderEvent.IsBribeFeasible)
{
SurrenderChance = new TextObject("{=SurrenderTweaks01}Chance of Surrender: High").ToString();
}
if (surrenderEvent.IsSurrenderFeasible)
{
SurrenderChance = new TextObject("{=SurrenderTweaks02}Chance of Surrender: Very High").ToString();
}
}
}
}