protected override void ScatterAt(IntVec3 loc, Map map, int count = 1)
        {
            DownedRefugeeComp component = ((WorldObject)map.info.parent).GetComponent <DownedRefugeeComp>();
            Pawn newThing = (component == null || !component.pawn.Any) ? DownedRefugeeQuestUtility.GenerateRefugee(map.Tile) : component.pawn.Take(component.pawn[0]);

            GenSpawn.Spawn(newThing, loc, map);
            MapGenerator.rootsToUnfog.Add(loc);
        }
示例#2
0
        protected override void ScatterAt(IntVec3 loc, Map map, int count = 1)
        {
            DownedRefugeeComp component = map.Parent.GetComponent <DownedRefugeeComp>();
            Pawn pawn = (component == null || !component.pawn.Any) ? DownedRefugeeQuestUtility.GenerateRefugee(map.Tile) : component.pawn.Take(component.pawn[0]);

            HealthUtility.DamageUntilDowned(pawn, allowBleedingWounds: false);
            HealthUtility.DamageLegsUntilIncapableOfMoving(pawn, allowBleedingWounds: false);
            GenSpawn.Spawn(pawn, loc, map);
            pawn.mindState.WillJoinColonyIfRescued = true;
            MapGenerator.rootsToUnfog.Add(loc);
        }
示例#3
0
        protected override void ScatterAt(IntVec3 loc, Map map, int count = 1)
        {
            DownedRefugeeComp component = map.info.parent.GetComponent <DownedRefugeeComp>();
            Pawn newThing;

            if (component != null && component.pawn.Any)
            {
                newThing = component.pawn.Take(component.pawn[0]);
            }
            else
            {
                newThing = DownedRefugeeQuestUtility.GenerateRefugee(map.Tile);
            }
            GenSpawn.Spawn(newThing, loc, map);
            MapGenerator.rootsToUnfog.Add(loc);
        }
        protected override void ScatterAt(IntVec3 loc, Map map, int count = 1)
        {
            DownedRefugeeComp component = map.Parent.GetComponent <DownedRefugeeComp>();
            Pawn pawn;

            if (component != null && component.pawn.Any)
            {
                pawn = component.pawn.Take(component.pawn[0]);
            }
            else
            {
                pawn = DownedRefugeeQuestUtility.GenerateRefugee(map.Tile);
            }
            GenSpawn.Spawn(pawn, loc, map, WipeMode.Vanish);
            pawn.mindState.willJoinColonyIfRescued = true;
            MapGenerator.rootsToUnfog.Add(loc);
        }
        protected override void ScatterAt(IntVec3 loc, Map map, GenStepParams parms, int count = 1)
        {
            Pawn pawn;

            if (parms.sitePart != null && parms.sitePart.things != null && parms.sitePart.things.Any)
            {
                pawn = (Pawn)parms.sitePart.things.Take(parms.sitePart.things[0]);
            }
            else
            {
                DownedRefugeeComp component = map.Parent.GetComponent <DownedRefugeeComp>();
                pawn = ((component == null || !component.pawn.Any) ? DownedRefugeeQuestUtility.GenerateRefugee(map.Tile) : component.pawn.Take(component.pawn[0]));
            }
            HealthUtility.DamageUntilDowned(pawn, allowBleedingWounds: false);
            HealthUtility.DamageLegsUntilIncapableOfMoving(pawn, allowBleedingWounds: false);
            GenSpawn.Spawn(pawn, loc, map);
            pawn.mindState.WillJoinColonyIfRescued = true;
            MapGenerator.rootsToUnfog.Add(loc);
            MapGenerator.SetVar("RectOfInterest", CellRect.CenteredOn(loc, 1, 1));
        }