private void RegisterRelationShifted(Hero baseHero, Hero otherHero, SegmentalFractionalScore fractionalScore)
 {
     /*
      * List<Hero> tst = Hero.All.OrderByDescending(h => h.Id).ToList();
      * CampaignDescriptor cd = Campaign.Current.GetCampaignDescriptor();
      * cd = new CampaignDescriptor(Hero.MainHero.Father);
      * string s = cd.Descriptor;
      * cd = new CampaignDescriptor(Hero.MainHero.Spouse);
      * s = cd.Descriptor;
      *
      * CampaignDescriptor NewCampaignDescriptor;
      * byte[] serialisedInfo;
      * using (MemoryStream file = new MemoryStream())
      * {
      * BinaryFormatter bf = new BinaryFormatter();
      * bf.Serialize(file, cd);
      * serialisedInfo = file.ToArray();
      * }
      * using (MemoryStream file = new MemoryStream(serialisedInfo))
      * {
      * BinaryFormatter bf = new BinaryFormatter();
      * NewCampaignDescriptor = (CampaignDescriptor)bf.Deserialize(file);
      * }
      */
     MessageHelper.SimpleMessage(string.Format("RegisterRelationShifted. baseHero: {0}. otherHero: {1}. fractionalScore = {2}.", baseHero.Name, otherHero.Name, fractionalScore));
 }
        public void UpdateFractionalRelationScore(Hero baseHero, Hero otherHero, SegmentalFractionalScore fractionalScore)
        {
            ulong heroTuple = ElegantPairHelper.Pair(baseHero.Id, otherHero.Id);

            fractionalScore += GetFractionalRelationScore(heroTuple);
            UpdatePersonalRelation(baseHero, otherHero, ref fractionalScore);
            SetFractionalRelationScore(heroTuple, fractionalScore);
        }
 public void UpdatePersonalRelation(Hero baseHero, Hero otherHero, ref SegmentalFractionalScore fractionalScore)
 {
     if (fractionalScore.ReadyToExtract())
     {
         fractionalScore = fractionalScore.ExtractWholeParts(out SegmentalFractionalScore integerScrore);
         UpdatePersonalRelation(baseHero, otherHero, (int)(integerScrore.PositiveScore - integerScrore.NegativeScore));
     }
 }
 private void SetFractionalRelationScore(ulong heroTuple, SegmentalFractionalScore fractionalScore)
 {
     _fractionalHeroRelations[heroTuple] = fractionalScore;
 }
 public void SetFractionalRelationScore(Hero baseHero, Hero otherHero, SegmentalFractionalScore fractionalScore)
 {
     UpdatePersonalRelation(baseHero, otherHero, ref fractionalScore);
     SetFractionalRelationScore(ElegantPairHelper.Pair(baseHero.Id, otherHero.Id), fractionalScore);
 }
Example #6
0
 internal void OnRelationShifted(Hero baseHero, Hero otherHero, SegmentalFractionalScore fractionalScore, string explanation)
 {
     MbEvent4InvokeHandler <Hero, Hero, SegmentalFractionalScore, string> .deInvoke(Instance._relationShifted, baseHero, otherHero, fractionalScore, explanation);
 }
Example #7
0
 internal void OnRelationShift(Hero baseHero, Hero otherHero, SegmentalFractionalScore fractionalScore)
 {
     MbEvent3InvokeHandler <Hero, Hero, SegmentalFractionalScore> .deInvoke(Instance._relationShift, baseHero, otherHero, fractionalScore);
 }
Example #8
0
 private void RegisterRelationShifted(Hero baseHero, Hero otherHero, SegmentalFractionalScore fractionalScore)
 {
     MessageHelper.SimpleMessage(string.Format("RegisterRelationShifted. baseHero: {0}. otherHero: {1}. fractionalScore = {2}.", baseHero.Name, otherHero.Name, fractionalScore));
 }