Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 19 additions & 6 deletions BannerKings/CampaignContent/Economy/Markets/MarketGroup.cs
Original file line number Diff line number Diff line change
@@ -1,32 +1,45 @@
using System.Collections.Generic;
using TaleWorlds.CampaignSystem;
using TaleWorlds.Core;
using TaleWorlds.Localization;

namespace BannerKings.CampaignContent.Economy.Markets
{
public class MarketGroup : BannerKingsObject
{
public MarketGroup(string id) : base(id)
{
public MarketGroup(string id) : base(id) {
}

public void Initialize(TextObject name, TextObject description, CultureObject culture, Dictionary<CultureObject, float> spawns)
{
public void Initialize(TextObject name, TextObject description, CultureObject culture, Dictionary<CultureObject, float> spawns, Dictionary<ItemCategory, float> demands = null) {
Initialize(name, description);
Culture = culture;
Spawns = spawns;
Demands = demands;
}

public CultureObject Culture { get; private set; }
public Dictionary<CultureObject, float> Spawns { get; private set; }
public Dictionary<ItemCategory, float> Demands { get; private set; }

public float GetSpawn(CultureObject culture)
{
public float GetSpawn(CultureObject culture) {
float result = 0f;
if (culture.StringId == Culture.StringId) result = 1f;
else if (Spawns.ContainsKey(culture)) result = Spawns[culture];

return result;
}

public float GetDemand(ItemCategory itemCategory) {
bool flag = this.Demands == null;
if (flag) {
this.Demands = new Dictionary<ItemCategory, float>();
}
float result;
bool flag2 = !this.Demands.TryGetValue(itemCategory, out result);
if (flag2) {
result = 1f;
}
return result;
}
}
}
2 changes: 1 addition & 1 deletion BannerKings/Main.cs
Original file line number Diff line number Diff line change
Expand Up @@ -138,7 +138,7 @@ protected override void OnGameStart(Game game, IGameStarter gameStarter)
campaignStarter.AddModel(new BKCategorySelector());
campaignStarter.AddModel(new BKSettlementAccessModel());
campaignStarter.AddModel(BannerKingsConfig.Instance.MarriageModel);
campaignStarter.AddModel(new BKItemValueModel());
//campaignStarter.AddModel(new BKItemValueModel());
campaignStarter.AddModel(new BKTargetScoreModel());

BKAttributes.Instance.Initialize();
Expand Down