private static void AcceptPeace(Kingdom kingdomMakingPeace, Kingdom otherKingdom, DiplomacyCost diplomacyCost)
 {
     LogFactory.Get <KingdomPeaceAction>()
     .LogTrace($"[{CampaignTime.Now}] {kingdomMakingPeace.Name} secured peace with {otherKingdom.Name} (cost: {diplomacyCost.Value}).");
     diplomacyCost.ApplyCost();
     MakePeaceAction.Apply(kingdomMakingPeace, otherKingdom);
 }
Example #2
0
        public static void ApplyPeace(Kingdom kingdomMakingPeace, Kingdom otherKingdom, bool payCosts = true, bool forcePlayerCharacterCosts = false)
        {
            int   payment       = payCosts ? DiplomacyCostCalculator.DetermineGoldCostForMakingPeace(kingdomMakingPeace, otherKingdom) : 0;
            float influenceCost = payCosts ? DiplomacyCostCalculator.DetermineInfluenceCostForMakingPeace(kingdomMakingPeace) : 0f;

            ApplyPeace(kingdomMakingPeace, otherKingdom, payment, influenceCost, forcePlayerCharacterCosts);
        }
Example #3
0
 public SettlementGenerator(GameGenerator gamGen, World world, Kingdom kingdom, List <SettlementBase> settlements)
 {
     GameGenerator = gamGen;
     Settlements   = settlements;
     Kingdom       = kingdom;
     World         = world;
 }
Example #4
0
 private void DailyMakeSureNoKingdom(Clan c, Kingdom k1, Kingdom k2)
 {
     if (c == null || DiplomacyUtils.GetHardCodedExceptionClans().Contains(c.StringId))
     {
         return;
     }
     try
     {
         if (dataManager == null)
         {
             GetData();
         }
         if (dataManager.Data.ContainsKey(c.StringId))
         {
             if (dataManager.Data[c.StringId].ForceNoKingdom && c.Kingdom != null)
             {
                 ChangeKingdomAction.ApplyByLeaveKingdom(c, false);
                 ModDebug.ShowMessage(c.StringId + " has forcefully been removed from parent kingdom", DebugMessageType.Diplomacy);
             }
         }
     }
     catch (Exception e)
     {
         ErrorHandler.HandleException(e, "daily make sure no kingdom process");
     }
 }
Example #5
0
        private static string CreateMakePeaceInquiryText(Kingdom kingdomMakingPeace, Kingdom otherKingdom, int payment)
        {
            TextObject peaceText;

            if (Settings.Instance.EnableWarExhaustion && WarExhaustionManager.Instance.HasMaxWarExhaustion(kingdomMakingPeace, otherKingdom))
            {
                peaceText = new TextObject("{=HWiDa4R1}Exhausted from the war, the {KINGDOM} is proposing peace with the {PLAYER_KINGDOM}.");
                peaceText.SetTextVariable("KINGDOM", kingdomMakingPeace.Name.ToString());
                peaceText.SetTextVariable("PLAYER_KINGDOM", otherKingdom.Name.ToString());
            }
            else
            {
                peaceText = new TextObject("{=t0ZS9maD}{KINGDOM_LEADER} of the {KINGDOM} is proposing peace with the {PLAYER_KINGDOM}.");
                peaceText.SetTextVariable("KINGDOM_LEADER", kingdomMakingPeace.Leader.Name.ToString());
                peaceText.SetTextVariable("KINGDOM", kingdomMakingPeace.Name.ToString());
                peaceText.SetTextVariable("PLAYER_KINGDOM", otherKingdom.Name.ToString());
            }
            List <string> inquiryText = new List <string>();

            inquiryText.Add(peaceText.ToString());

            if (payment > 0)
            {
                TextObject warReparationText = new TextObject("{=ZrwszZww} They are willing to pay war reparations of {DENARS} denars.");
                warReparationText.SetTextVariable("DENARS", payment);
                inquiryText.Add(warReparationText.ToString());
            }
            return(string.Concat(inquiryText));
        }
Example #6
0
        public static void RemoveWall()
        {
            Kingdom kingdom = SingletonMonoBehaviour <Managers> .Inst.kingdom;

            if (kingdom.playerOne != null)
            {
                if (kingdom.playerOne.coins > 0)
                {
                    var   walls = Traverse.Create(kingdom).Field("_walls").GetValue <HashSet <Wall> >();
                    Wall  wall  = null;
                    float min   = float.MaxValue;
                    walls.Do((w) =>
                    {
                        float dis = Vector3.Distance(w.transform.position, kingdom.playerOne.transform.position);
                        if (dis < 1.4f && dis < min)
                        {
                            wall = w;
                            min  = dis;
                        }
                    });
                    if (wall != null)
                    {
                        Traverse.Create(wall).Field("_damageable").GetValue <Damageable>().ReceiveDamage(999, kingdom.playerOne.gameObject, DamageSource.Knight);
                        kingdom.playerOne._wallet.coins--;
                    }
                }
            }
        }
Example #7
0
        public static bool Prefix(Clan clan1, Kingdom kingdom)
        {
            // prevent stupid things
            if (clan1.Leader == clan1.Kingdom.Leader || clan1.Kingdom == kingdom)
            {
                return(false);
            }
            // prevent unwise defection for lord with fiefs
            if ((clan1.Settlements.Count() > 0) &&
                (clan1.Leader.HasGoodRelationWith(clan1.Kingdom.Leader) ||
                 clan1.Leader.IsEnemy(kingdom.Leader) ||
                 !clan1.CloseKingdoms().Contains(kingdom)))
            {
                return(false);
            }
            // prevent defection of supporting clan while kingdom have a chance
            if (clan1.Leader.HasGoodRelationWith(clan1.Kingdom.Leader) &&
                clan1.Kingdom.Settlements.Count() > 0 &&
                clan1.Kingdom.Clans.Where(x => !x.IsUnderMercenaryService).Count() <= 2)
            {
                return(false);
            }

            return(true);
        }
    /// <summary>
    /// removes the weapon from the hero and then adds it back into the kingdoms inventory provided it is equipment
    /// </summary>
    public void unequipItemFromHero(string item)
    {
        Kingdom kingdom = GameObject.Find("Kingdom").GetComponent <Kingdom>();

        //check the item to see what to remove
        if (item.Equals("weapon"))
        {
            //check and make sure the the hero has an actual item equipped
            if (!heroToEquip.weapon.itemName.ToLower().Equals("fists"))
            {
                //move the old weapon the correct list
                kingdom.weapons.Add(heroToEquip.weapon);
                //change the heros weapon to be "unequipped"
                heroToEquip.weapon = new Weapon("Fists", 1, 1, "Fists", 1);
            }
            //else display a message that no weapon is currently equipped
        }
        else if (item.Equals("upper body"))
        {
            if (!heroToEquip.UBArmor.itemName.ToLower().Equals("shirt"))
            {
                kingdom.armor.Add(heroToEquip.UBArmor);

                heroToEquip.UBArmor = new Armor("Shirt", "upper body", 1, "Shirt", 2);
            }
        }
    }
        public InfoType Get(Kingdom gameObject)
        {
            if (gameObject == null)
            {
                return(null);
            }

            var infos = this.Infos.Where(i => i.Id == gameObject.StringId);

            if (infos.Count() > 1)
            {
                this.RemoveDuplicates();
            }

            var info = infos.FirstOrDefault();

            if (info != null)
            {
                return(info);
            }

            info = (InfoType)Activator.CreateInstance(typeof(InfoType), gameObject);
            this.Infos.Add(info);

            return(info);
        }
    private void DefinePlayerKingdom()
    {
        List <Kingdom> kingdoms = new List <Kingdom> {
            Kingdom.Blue, Kingdom.Green, Kingdom.Orange, Kingdom.Purple, Kingdom.Red
        };
        Kingdom randomKingdom = kingdoms[Random.Range(0, kingdoms.Count)];

        foreach (Kingdom k in kingdoms)
        {
            List <Property> kingdomProperties = GetKingdomProperties(k);

            foreach (Property property in kingdomProperties)
            {
                if (k == randomKingdom)
                {
                    property.SetDominated(true, false);
                }
                else
                {
                    property.SetDominated(false, false);
                }
            }
        }

        kingdom = randomKingdom;
    }
Example #11
0
 internal void CECaptorMakeHeroCompanion(Hero captive)
 {
     if (captive == null)
     {
         return;
     }
     if (captive.IsFactionLeader)
     {
         if (captive.Clan != null && captive.Clan.IsKingdomFaction)
         {
             Kingdom            kingdom = captive.Clan.Kingdom;
             Clan               result  = null;
             float              num     = 0f;
             IEnumerable <Clan> clans   = kingdom.Clans;
             foreach (Clan clan in clans.Where((Clan t) => t.Heroes.Any((Hero h) => h.IsAlive) && !t.IsMinorFaction && t != captive.Clan))
             {
                 float clanStrength = Campaign.Current.Models.DiplomacyModel.GetClanStrength(clan);
                 if (num <= clanStrength)
                 {
                     num    = clanStrength;
                     result = clan;
                 }
             }
             kingdom.RulingClan = result;
         }
     }
     AddCompanionAction.Apply(Clan.PlayerClan, captive);
 }
Example #12
0
        public static void MessageSent(Human ambassador, Guid destination, string msg)
        {
            Kingdom k = FindKingdom(destination);

            HumanTask gettingBackTask = new HumanTask(ambassador)
            {
                TaskType    = ETask.SendingMessage,
                Destination = k.UserId.ToString(),
                Context     = Locale.Get("commands.send.empty_answer", k.Language)
            };

            gettingBackTask.CalculateTaskTime(ambassador);

            ambassador.TasksToDo.AddRange(new[] {
                new HumanTask(ambassador)
                {
                    TaskType = ETask.Waiting,
                    TimeLeft = 3
                },
                gettingBackTask
            });

            msg = string.Format(Locale.Get("commands.send.recieved", k.Language), ambassador.GetName(k.Language), k.Name, msg);
            UsersManager.Send(destination, new MessageCallback(msg));
        }
Example #13
0
    public int AddKingdom(Kingdom kingdom)
    {
        int place = WorldKingdoms.Count;

        WorldKingdoms.Add(place, kingdom);
        return(place);
    }
Example #14
0
    public void setAtWar(Kingdom k)
    {
        warStatus[k] = true;

        if (k.Equals(Kingdom.Cobeth))
        {
            tradeCobeth = 2;
        }

        if (k.Equals(Kingdom.Rym))
        {
            tradeRym = 2;
        }

        if (k.Equals(Kingdom.Galerd))
        {
            tradeGalerd = 2;
        }

        if (k.Equals(Kingdom.Jalonn))
        {
            tradeJalonn = 2;
        }

        isAtWar = true;
    }
Example #15
0
        public static void Apply(Kingdom kingdom, Kingdom otherKingdom, bool forcePlayerCharacterCosts = false)
        {
            Kingdom playerKingdom = Clan.PlayerClan?.Kingdom;

            if (otherKingdom == playerKingdom && playerKingdom.Leader == Hero.MainHero)
            {
                TextObject textObject = new TextObject("{=QbOqatd7}{KINGDOM} is proposing an alliance with {PLAYER_KINGDOM}.");
                textObject.SetTextVariable("KINGDOM", kingdom.Name);
                textObject.SetTextVariable("PLAYER_KINGDOM", otherKingdom.Name);

                InformationManager.ShowInquiry(new InquiryData(
                                                   new TextObject("{=3pbwc8sh}Alliance Proposal").ToString(),
                                                   textObject.ToString(),
                                                   true,
                                                   true,
                                                   new TextObject("{=3fTqLwkC}Accept").ToString(),
                                                   new TextObject("{=dRoMejb0}Decline").ToString(),
                                                   () => ApplyInternal(kingdom, otherKingdom, forcePlayerCharacterCosts),
                                                   null,
                                                   ""), true);
            }
            else
            {
                ApplyInternal(kingdom, otherKingdom, forcePlayerCharacterCosts);
            }
        }
        public static void Postfix(Clan mercenaryClan, Kingdom kingdom, DefaultDiplomacyModel __instance, ref float __result)
        {
            try
            {
                if (!LoyaltyDebugHelper.InDebugBranch || !SettingsHelper.SystemDebugEnabled(AOSystems.EnsuredLoyalty, DebugType.Technical, mercenaryClan))
                {
                    return;
                }

                float ComputedResult = (float)(10000.0 * (0.00999999977648258 * Math.Min(100f, mercenaryClan.LastFactionChangeTime.ElapsedDaysUntilNow)) - 5000.0) - __instance.GetScoreOfMercenaryToJoinKingdom(mercenaryClan, kingdom);

                string UnitValueDebugInfo = string.Format("ScoreOfMercenaryToLeaveKingdom. DaysWithFaction = {0}. DaysWithFactionModified = {1}. GetScoreOfMercenaryToJoinKingdom = {2}." +
                                                          "CalculatedResult = {3}. NativeResult = {4}.",
                                                          mercenaryClan.LastFactionChangeTime.ElapsedDaysUntilNow.ToString(), (10000.0 * (0.00999999977648258 * Math.Min(100f, mercenaryClan.LastFactionChangeTime.ElapsedDaysUntilNow))).ToString("N"),
                                                          __instance.GetScoreOfMercenaryToJoinKingdom(mercenaryClan, kingdom).ToString("N"),
                                                          ComputedResult.ToString("N"), __result.ToString("N"));

                MessageHelper.TechnicalMessage(UnitValueDebugInfo);
            }
            catch (Exception ex)
            {
                MethodInfo methodInfo = MethodBase.GetCurrentMethod() as MethodInfo;
                DebugHelper.HandleException(ex, methodInfo, "Harmony patch for GetScoreOfMercenaryToLeaveKingdom");
            }
        }
Example #17
0
        public static void Main(string[] args)
        {
            Message  mes, mes2, mes3;
            Republic ukraine = new Republic();
            Monarchy spain   = new Monarchy("Spain", 70000000);
            Kingdom  uk      = new Kingdom("United Kingdom", 140000000);

            ukraine.Name       = "Ukraine";
            ukraine.Population = 41000000;

            mes = ukraine.Info;

            mes2  = spain.Info;
            mes2 += uk.Info;
            mes3  = mes + mes2;
            mes3();

            Console.WriteLine();

            IDerzhava[] masiv = new IDerzhava[3];

            masiv[0] = ukraine;
            masiv[1] = spain;
            masiv[2] = uk;

            foreach (IDerzhava derzh in masiv)
            {
                mes += derzh.Info;
            }

            mes.Invoke();
        }
 void Start()
 {
     /*foreach (int townID in blue.townIDs) {
      *              foreach (GameObject townGO in GameObject.FindGameObjectsWithTag("Town")) {
      *                      Town town = townGO.GetComponent<Town>();
      *                      if (town.townKingdom != blue) town.Flip();
      *              }
      *      }
      *      foreach (int townID in red.townIDs) {
      *              foreach (GameObject townGO in GameObject.FindGameObjectsWithTag("Town")) {
      *                      Town town = townGO.GetComponent<Town>();
      *                      if (town.townKingdom != red) town.Flip();
      *              }
      *      }*/
     if (GameState.GS.currentTurn != null)
     {
         currentTurn = GameState.GS.currentTurn;
     }
     else
     {
         currentTurn = blue;
     }
     if (currentTurn == red)
     {
         Invoke("AIsTurn", 1f);
     }
 }
Example #19
0
        public void WhenAKingdomWantsToMakeAlliesAndSendsIncorrectMessage_ThenHeShouldBeAbleToSendMessagesAndIncreaseAllies()
        {
            var kingdom = new Kingdom(KingdomNames.SPACE, Emblems.Gorilla);

            kingdom.SendMessage(_kingdom, "ABC");
            Assert.True(kingdom.Allies.Count == 0);
        }
 public static bool CheckLoyalty(Clan clan, out TextObject DebugTextObject, Kingdom kingdom = null)
 {
     DebugTextObject = new TextObject(Debug_EnsuredLoyalty);
     if (!Settings.Instance.UseEnsuredLoyalty)
     {
         return(SetDebugResult(ELState.SystemDisabled, DebugTextObject));
     }
     else
     {
         if (!SettingsHelper.FactionInScope(clan, Settings.Instance.EnsuredLoyaltyScope))
         {
             return(SetDebugResult(ELState.FactionOutOfScope, DebugTextObject));
         }
         else
         {
             int DaysWithKingdom = (int)(CampaignTime.Now - clan.LastFactionChangeTime).ToDays;
             int RequiredDays    = clan.IsUnderMercenaryService ? Settings.Instance.MinorFactionServicePeriod : (clan.IsMinorFaction ? Settings.Instance.MinorFactionOathPeriod : Settings.Instance.FactionOathPeriod);
             if (clan.Kingdom != null && DaysWithKingdom <= RequiredDays)
             {
                 return(SetDebugResult(ELState.UnderRequiredService, DebugTextObject, DaysWithKingdom: DaysWithKingdom, RequiredDays: RequiredDays));
             }
             else if (Settings.Instance.UseRelationForEnsuredLoyalty && !clan.IsUnderMercenaryService)
             {
                 return(SetDebugResult(ELState.AffectedByRelations, DebugTextObject, clan, kingdom));
             }
             else
             {
                 return(SetDebugResult(ELState.UnaffectedByRelations, DebugTextObject, clan));
             }
         }
     }
 }
Example #21
0
        public ResourceService(ApplicationDbContext dbContext, IHttpContextAccessor contextAccessor)
        {
            this.dbContext = dbContext;
            var username = contextAccessor.HttpContext.User.Claims.FirstOrDefault(c => c.Type == "Username").Value;

            kingdom = dbContext.Kingdoms.Include(k => k.User).Include(k => k.Resources).FirstOrDefault(k => k.User.Username == username);
        }
Example #22
0
    public void LookAtKingdom(Kingdom kingdom)
    {
        Debug.Log("LookAtKingdomCalled");
        cameraControllerTransform.DOLocalRotate(new Vector3(kingdom.xRotation, kingdom.yRotation, 0), 1);

        //pivotTransform.localEulerAngles = new Vector3(k.x, k.y, 0);
    }
Example #23
0
        private void AddWarExhaustion(Kingdom kingdom1, Kingdom kingdom2, float warExhaustionToAdd, WarExhaustionType warExhaustionType, bool addFuzziness = true)
        {
            string key = CreateKey(kingdom1, kingdom2);

            if (key != null)
            {
                float finalWarExhaustionDelta = warExhaustionToAdd;
                if (addFuzziness)
                {
                    finalWarExhaustionDelta *= Fuzziness;
                }
                if (_warExhaustionById.TryGetValue(key, out float currentValue))
                {
                    _warExhaustionById[key] = MBMath.ClampFloat(currentValue += finalWarExhaustionDelta, MinWarExhaustion, MaxWarExhaustion);
                }
                else
                {
                    _warExhaustionById[key] = MBMath.ClampFloat(finalWarExhaustionDelta, MinWarExhaustion, MaxWarExhaustion);
                }

                if (Settings.Instance.EnableWarExhaustionDebugMessages && kingdom1 == Hero.MainHero.MapFaction)
                {
                    string information = string.Format("Added {0} {1} war exhaustion to {2}'s war with {3}", finalWarExhaustionDelta, Enum.GetName(typeof(WarExhaustionType), warExhaustionType), kingdom1.Name, kingdom2.Name);
                    InformationManager.DisplayMessage(new InformationMessage(information, Color.FromUint(4282569842U)));
                }
            }
        }
Example #24
0
        private void InitializeKingdom(Hero leader, Settlement target)
        {
            Kingdom newKingdom = MBObjectManager.Instance.CreateObject <Kingdom>();

            try
            {
                TextObject name = new TextObject("{=!}{CLAN_NAME}");

                string origin = target.Name.ToString().Replace("Castle", "").Trim();

                name.SetTextVariable("CLAN_NAME", leader.Name + " of " + origin);

                newKingdom.InitializeKingdom(name,
                                             name,
                                             leader.Culture,
                                             Banner.CreateRandomClanBanner(leader.StringId.GetDeterministicHashCode()),
                                             0,
                                             0,
                                             new Vec2(target.GatePosition.X, target.GatePosition.Y));

                ChangeKingdomAction.ApplyByJoinToKingdom(leader.Clan, newKingdom, false);
                newKingdom.RulingClan = leader.Clan;

                newKingdom.AddPolicy(DefaultPolicies.NobleRetinues);

                MBObjectManager.Instance.RegisterObject(newKingdom);
            }
            catch (Exception e)
            {
                Log.Info("Exception in InitializeKingdom");
                Log.Error(e);
            }
        }
Example #25
0
        private static void CheckIfPartyIconIsDirty(Clan clan, Kingdom oldKingdom)
        {
            IFaction faction;

            if (clan.Kingdom == null)
            {
                faction = clan;
            }
            else
            {
                IFaction kingdom = clan.Kingdom;
                faction = kingdom;
            }
            IFaction faction2 = faction;
            IFaction faction3 = (IFaction)oldKingdom ?? clan;

            foreach (MobileParty mobileParty in MobileParty.All)
            {
                if (mobileParty.IsVisible && ((mobileParty.Party.Owner != null && mobileParty.Party.Owner.Clan == clan) || (clan == Clan.PlayerClan && ((!FactionManager.IsAtWarAgainstFaction(mobileParty.MapFaction, faction2) && FactionManager.IsAtWarAgainstFaction(mobileParty.MapFaction, faction3)) || (FactionManager.IsAtWarAgainstFaction(mobileParty.MapFaction, faction2) && !FactionManager.IsAtWarAgainstFaction(mobileParty.MapFaction, faction3))))))
                {
                    mobileParty.Party.Visuals.SetMapIconAsDirty();
                }
            }
            foreach (Settlement settlement in clan.Settlements)
            {
                settlement.Party.Visuals.SetMapIconAsDirty();
            }
        }
Example #26
0
        public bool ApplyCondition(Kingdom kingdom, Kingdom otherKingdom, out TextObject textObject, bool forcePlayerCharacterCosts = false)
        {
            textObject = null;
            IEnumerable <LogEntry> gameActionLogs = Campaign.Current.LogEntryHistory.GameActionLogs;

            CampaignTime lastPeaceTime = CampaignTime.Never;

            foreach (LogEntry logEntry in gameActionLogs)
            {
                if (logEntry is MakePeaceLogEntry &&
                    ((((MakePeaceLogEntry)logEntry).Faction1 == kingdom.MapFaction && ((MakePeaceLogEntry)logEntry).Faction2 == otherKingdom.MapFaction) || (((MakePeaceLogEntry)logEntry).Faction1 == otherKingdom.MapFaction && ((MakePeaceLogEntry)logEntry).Faction2 == kingdom.MapFaction)))
                {
                    lastPeaceTime = logEntry.GameTime;
                    break;
                }
            }

            double daysSinceLastWar     = CampaignTime.Now.ToDays - lastPeaceTime.ToDays;
            bool   hasEnoughTimeElapsed = lastPeaceTime == CampaignTime.Never || daysSinceLastWar > MinimumTimeFromLastWar;

            if (!hasEnoughTimeElapsed)
            {
                textObject = new TextObject(TOO_SOON);
                textObject.SetTextVariable("ELAPSED_DAYS", (int)daysSinceLastWar);
                textObject.SetTextVariable("REQUIRED_DAYS", (int)MinimumTimeFromLastWar);
            }
            return(hasEnoughTimeElapsed);
        }
Example #27
0
    public KingdomViewModel(IJumpService jumpService, IIdToNameService idToNameService)
    {
        _model = new Kingdom();
        JumpToBattleConfigCommand = new RelayCommand <BattleConfigId>(id => jumpService.JumpTo(BattleConfigSelectorEditorModule.Id, (int)id));

        KingdomItems = idToNameService.GetComboBoxItemsPlusDefault <IKingdomService>();
    }
Example #28
0
        public static void Apply(Kingdom kingdom, Kingdom otherKingdom)
        {
            Kingdom playerKingdom = Clan.PlayerClan?.Kingdom;

            if (otherKingdom == playerKingdom && playerKingdom.Leader == Hero.MainHero)
            {
                TextObject textObject = new TextObject("{=384jX28Q}{KINGDOM} is breaking the alliance with {PLAYER_KINGDOM}.");
                textObject.SetTextVariable("KINGDOM", kingdom.Name);
                textObject.SetTextVariable("PLAYER_KINGDOM", otherKingdom.Name);

                InformationManager.ShowInquiry(new InquiryData(
                                                   new TextObject("{=D1ZQKZr1}Alliance Broken").ToString(),
                                                   textObject.ToString(),
                                                   true,
                                                   false,
                                                   GameTexts.FindText("str_ok", null).ToString(),
                                                   null,
                                                   () => ApplyInternal(kingdom, otherKingdom),
                                                   null,
                                                   ""), true);
            }
            else
            {
                ApplyInternal(kingdom, otherKingdom);
            }
        }
        public void GivenGorillaKingHasLessThan3Allies_WhenDecideRulerIsCalled_ThenReturnFalse()
        {
            var spaceKingdom = new Kingdom(KingdomNames.SPACE, Emblems.Gorilla);
            var result       = _southeros.DecideRuler(spaceKingdom);

            Assert.False(result);
        }
        public BallotMessageTest()
        {
            sender = new Kingdom("LAND", "Panda");
            Kingdom receiver = new Kingdom("Test", "Test");

            ballotMessage = new BallotMessage(sender, receiver, "Test");
        }
Example #31
0
 public Kingdom ToKingdom()
 {
     List<CardModel> cards = new List<CardModel>();
     foreach(string card in this.Cards)
     {
         cards.Add(CardModelFactory.GetCardModel(card));
     }
     List<CardModel> prohibitedCards = new List<CardModel>();
     foreach (string card in this.ProhibitedCards)
     {
         prohibitedCards.Add(CardModelFactory.GetCardModel(card));
     }
     CardModel bane = this.Bane != null ? CardModelFactory.GetCardModel(this.Bane) : null;
     Kingdom kingdom = new Kingdom(cards, prohibitedCards, bane, GameSets.Any, this.Players.Count, this.UseColonies, this.UseShelters, this.StartingHandType);
     return kingdom;
 }
        public QuickShooterUnit(List<Point> map, Kingdom kingdom)
        {
            Kingdom = kingdom;
            travelPoints = map;
            Weapons = new List<Weapon>();
            Shields = new List<Shield>();

            Weapons.Add(new GunWeapon(this));

            Drawer = new QuickShooterDrawer(kingdom.Color);
            Drawer.Init();

            spinUpTimer = 0;
            spinDownTimer = 0;

            SpinDownTime = (int) ( 20 * 1.5 );
            SpinUpTime = 20 * 1;
        }