Пример #1
0
        public override SiteCoreOrPartParams GenerateDefaultParams(Site site, float myThreatPoints)
        {
            SiteCoreOrPartParams siteCoreOrPartParams = base.GenerateDefaultParams(site, myThreatPoints);

            siteCoreOrPartParams.threatPoints = Mathf.Max(siteCoreOrPartParams.threatPoints, FactionDefOf.Mechanoid.MinPointsToGeneratePawnGroup(PawnGroupKindDefOf.Combat));
            return(siteCoreOrPartParams);
        }
Пример #2
0
        public override SiteCoreOrPartParams GenerateDefaultParams(Site site, float myThreatPoints)
        {
            SiteCoreOrPartParams siteCoreOrPartParams = base.GenerateDefaultParams(site, myThreatPoints);

            siteCoreOrPartParams.threatPoints = Mathf.Max(siteCoreOrPartParams.threatPoints, site.Faction.def.MinPointsToGeneratePawnGroup(PawnGroupKindDefOf.Settlement));
            return(siteCoreOrPartParams);
        }
Пример #3
0
        public override SiteCoreOrPartParams GenerateDefaultParams(Site site, float myThreatPoints)
        {
            SiteCoreOrPartParams siteCoreOrPartParams = base.GenerateDefaultParams(site, myThreatPoints);

            siteCoreOrPartParams.threatPoints *= 0.8f;
            return(siteCoreOrPartParams);
        }
Пример #4
0
        public override SiteCoreOrPartParams GenerateDefaultParams(Site site, float myThreatPoints)
        {
            SiteCoreOrPartParams siteCoreOrPartParams = base.GenerateDefaultParams(site, myThreatPoints);

            siteCoreOrPartParams.mortarsCount = Rand.RangeInclusive(0, 1);
            siteCoreOrPartParams.turretsCount = Mathf.Clamp(Mathf.RoundToInt(siteCoreOrPartParams.threatPoints / 250f), 2, 11);
            return(siteCoreOrPartParams);
        }
Пример #5
0
        public virtual SiteCoreOrPartParams GenerateDefaultParams(Site site, float myThreatPoints)
        {
            SiteCoreOrPartParams siteCoreOrPartParams = new SiteCoreOrPartParams();

            siteCoreOrPartParams.randomValue  = Rand.Int;
            siteCoreOrPartParams.threatPoints = ((!def.wantsThreatPoints) ? 0f : myThreatPoints);
            return(siteCoreOrPartParams);
        }
Пример #6
0
        public override SiteCoreOrPartParams GenerateDefaultParams(Site site, float myThreatPoints)
        {
            SiteCoreOrPartParams siteCoreOrPartParams = base.GenerateDefaultParams(site, myThreatPoints);

            if (ManhunterPackGenStepUtility.TryGetAnimalsKind(siteCoreOrPartParams.threatPoints, site.Tile, out siteCoreOrPartParams.animalKind))
            {
                siteCoreOrPartParams.threatPoints = Mathf.Max(siteCoreOrPartParams.threatPoints, siteCoreOrPartParams.animalKind.combatPower);
            }
            return(siteCoreOrPartParams);
        }
Пример #7
0
        public override SiteCoreOrPartParams GenerateDefaultParams(Site site, float myThreatPoints)
        {
            SiteCoreOrPartParams siteCoreOrPartParams = base.GenerateDefaultParams(site, myThreatPoints);

            if (TryFindAnimalKind(site.Tile, out siteCoreOrPartParams.animalKind))
            {
                siteCoreOrPartParams.threatPoints = Mathf.Max(siteCoreOrPartParams.threatPoints, siteCoreOrPartParams.animalKind.combatPower);
            }
            return(siteCoreOrPartParams);
        }
Пример #8
0
 private int GetMechanoidsCount(Site site, SiteCoreOrPartParams parms)
 {
     return(PawnGroupMakerUtility.GeneratePawnKindsExample(new PawnGroupMakerParms
     {
         tile = site.Tile,
         faction = Faction.OfMechanoids,
         groupKind = PawnGroupKindDefOf.Combat,
         points = parms.threatPoints,
         seed = new int?(SleepingMechanoidsSitePartUtility.GetPawnGroupMakerSeed(parms))
     }).Count <PawnKindDef>());
 }
        private int GetMechanoidsCount(Site site, SiteCoreOrPartParams parms)
        {
            PawnGroupMakerParms pawnGroupMakerParms = new PawnGroupMakerParms();

            pawnGroupMakerParms.tile      = site.Tile;
            pawnGroupMakerParms.faction   = Faction.OfMechanoids;
            pawnGroupMakerParms.groupKind = PawnGroupKindDefOf.Combat;
            pawnGroupMakerParms.points    = parms.threatPoints;
            pawnGroupMakerParms.seed      = SleepingMechanoidsSitePartUtility.GetPawnGroupMakerSeed(parms);
            return(PawnGroupMakerUtility.GeneratePawnKindsExample(pawnGroupMakerParms).Count());
        }
Пример #10
0
        private int GetEnemiesCount(Site site, SiteCoreOrPartParams parms)
        {
            PawnGroupMakerParms pawnGroupMakerParms = new PawnGroupMakerParms();

            pawnGroupMakerParms.tile        = site.Tile;
            pawnGroupMakerParms.faction     = site.Faction;
            pawnGroupMakerParms.groupKind   = PawnGroupKindDefOf.Settlement;
            pawnGroupMakerParms.points      = parms.threatPoints;
            pawnGroupMakerParms.inhabitants = true;
            pawnGroupMakerParms.seed        = OutpostSitePartUtility.GetPawnGroupMakerSeed(parms);
            return(PawnGroupMakerUtility.GeneratePawnKindsExample(pawnGroupMakerParms).Count());
        }
 private int GetEnemiesCount(Site site, SiteCoreOrPartParams parms)
 {
     return(PawnGroupMakerUtility.GeneratePawnKindsExample(new PawnGroupMakerParms
     {
         tile = site.Tile,
         faction = site.Faction,
         groupKind = PawnGroupKindDefOf.Settlement,
         points = parms.threatPoints,
         inhabitants = true,
         seed = new int?(SitePartWorker_Outpost.GetPawnGroupMakerSeed(parms))
     }).Count <PawnKindDef>());
 }
Пример #12
0
        private string GetThreatsInfo(SiteCoreOrPartParams parms)
        {
            StringBuilder stringBuilder = new StringBuilder();
            int           num           = parms.mortarsCount + 1;

            if (parms.turretsCount != 0)
            {
                stringBuilder.Append(parms.turretsCount + " ");
                if (parms.turretsCount == 1)
                {
                    stringBuilder.Append("Turret".Translate());
                }
                else
                {
                    stringBuilder.Append("Turrets".Translate());
                }
            }
            if (parms.mortarsCount != 0)
            {
                if (stringBuilder.Length != 0)
                {
                    stringBuilder.Append(", ");
                }
                stringBuilder.Append(parms.mortarsCount + " ");
                if (parms.mortarsCount == 1)
                {
                    stringBuilder.Append("Mortar".Translate());
                }
                else
                {
                    stringBuilder.Append("Mortars".Translate());
                }
            }
            if (num != 0)
            {
                if (stringBuilder.Length != 0)
                {
                    stringBuilder.Append(", " + "AndLower".Translate() + " ");
                }
                stringBuilder.Append(num + " ");
                if (num == 1)
                {
                    stringBuilder.Append("Enemy".Translate());
                }
                else
                {
                    stringBuilder.Append("Enemies".Translate());
                }
            }
            return(stringBuilder.ToString());
        }
        private int GetPawnCount(Site site, SiteCoreOrPartParams parms)
        {
            PawnGroupMakerParms pawnGroupMakerParms1 = new PawnGroupMakerParms();

            pawnGroupMakerParms1.tile      = site.Tile;
            pawnGroupMakerParms1.faction   = Faction.OfAncients;
            pawnGroupMakerParms1.groupKind = PawnGroupKindDefOf.Combat;
            pawnGroupMakerParms1.points    = parms.threatPoints;
            pawnGroupMakerParms1.seed      = SleepingMechanoidsSitePartUtility.GetPawnGroupMakerSeed(parms);

            PawnGroupMakerParms pawnGroupMakerParms2 = new PawnGroupMakerParms();

            pawnGroupMakerParms2.tile      = site.Tile;
            pawnGroupMakerParms2.faction   = Faction.OfAncientsHostile;
            pawnGroupMakerParms2.groupKind = PawnGroupKindDefOf.Combat;
            pawnGroupMakerParms2.points    = parms.threatPoints;
            pawnGroupMakerParms2.seed      = SleepingMechanoidsSitePartUtility.GetPawnGroupMakerSeed(parms);

            return(PawnGroupMakerUtility.GeneratePawnKindsExample(pawnGroupMakerParms1).Count() + PawnGroupMakerUtility.GeneratePawnKindsExample(pawnGroupMakerParms2).Count());
        }
Пример #14
0
 private int GetAnimalsCount(SiteCoreOrPartParams parms)
 {
     return(ManhunterPackIncidentUtility.GetAnimalsCount(parms.animalKind, parms.threatPoints));
 }
Пример #15
0
 public static int GetPawnGroupMakerSeed(SiteCoreOrPartParams parms)
 {
     return(parms.randomValue);
 }