public void RegisterAgreement(Kingdom kingdom, Kingdom otherKingdom, DiplomaticAgreement diplomaticAgreement)
        {
            FactionMapping factionMapping = new FactionMapping(kingdom, otherKingdom);

            if (this._agreements.TryGetValue(factionMapping, out List <DiplomaticAgreement> agreements))
            {
                agreements.Add(diplomaticAgreement);
            }
            else
            {
                this._agreements[factionMapping] = new List <DiplomaticAgreement>()
                {
                    diplomaticAgreement
                };
            }
        }
 public DiplomaticAgreement(CampaignTime startdate, CampaignTime endDate, FactionMapping factionMapping)
 {
     this.StartDate = startdate;
     this.EndDate   = endDate;
     this.Factions  = factionMapping;
 }