private Thing SpawnTunnels(Map map)
        {
            IntVec3 loc;

            if (!RatkinTunnelCellFinder.FindFoodStockpile(out loc, map))
            {
                return(null);
            }
            Thing thing = GenSpawn.Spawn(ThingMaker.MakeThing(RatkinBuildingDefOf.RK_ThiefTunnelSpawner, null), loc, map, WipeMode.FullRefund);

            return(thing);
        }
        private Thing SpawnTunnels(Map map, IncidentParms parms)
        {
            IntVec3 loc;

            if (!RatkinTunnelCellFinder.FindPowerPlantNearCell(out loc, map))   //발전 시설이 없다면 터널을 생성하지 않는다.
            {
                return(null);
            }
            Thing thing = GenSpawn.Spawn(ThingMaker.MakeThing(RatkinBuildingDefOf.RK_GuerrillaTunnelSpawner, null), loc, map, WipeMode.FullRefund);

            ((GuerrillaTunnelSpawner)thing).eventPoint = parms.points;
            return(thing);
        }
        protected override bool CanFireNowSub(IncidentParms parms)
        {
            Map     map = (Map)parms.target;
            IntVec3 intVec;

            return(base.CanFireNowSub(parms) && Find.FactionManager.FirstFactionOfDef(RatkinFactionDefOf.Rakinia).HostileTo(Faction.OfPlayer) && (RatkinTunnelUtility.TotalSpawnedTunnelCount(map) < 2) && RatkinTunnelCellFinder.FindPowerPlantNearCell(out intVec, map));
        }