Beispiel #1
0
        // Token: 0x060045EC RID: 17900 RVA: 0x0017880C File Offset: 0x00176A0C
        public static void PlaceInTunnelsNearSpawnCenter(IncidentParms parms, List <Pawn> pawns)
        {
            Map  map  = (Map)parms.target;
            bool flag = parms.faction != null && parms.faction.HostileTo(Faction.OfPlayer);

            TunnelRaidUtility.DropThingsNear(parms.spawnCenter, map, pawns.Cast <Thing>(), parms.podOpenDelay, false, true, flag || parms.raidArrivalModeForQuickMilitaryAid, parms.faction);
        }
        // Token: 0x060045E0 RID: 17888 RVA: 0x00178498 File Offset: 0x00176698
        public override void Arrive(List <Pawn> pawns, IncidentParms parms)
        {
            Map  map          = (Map)parms.target;
            bool canRoofPunch = parms.faction != null && parms.faction.HostileTo(Faction.OfPlayer);

            for (int i = 0; i < pawns.Count; i++)
            {
                TunnelRaidUtility.DropThingsNear(DropCellFinder.RandomDropSpot(map), map, Gen.YieldSingle <Thing>(pawns[i]), parms.podOpenDelay, false, true, canRoofPunch);
            }
        }
        // Token: 0x060045D7 RID: 17879 RVA: 0x001782AC File Offset: 0x001764AC
        public override void Arrive(List <Pawn> pawns, IncidentParms parms)
        {
            Map  map          = (Map)parms.target;
            bool canRoofPunch = parms.faction != null && parms.faction.HostileTo(Faction.OfPlayer);
            List <Pair <List <Pawn>, IntVec3> > list = PawnsArrivalModeWorkerUtility.SplitIntoRandomGroupsNearMapEdge(pawns, map, true);

            PawnsArrivalModeWorkerUtility.SetPawnGroupsInfo(parms, list);
            for (int i = 0; i < list.Count; i++)
            {
                TunnelRaidUtility.DropThingsNear(list[i].Second, map, list[i].First.Cast <Thing>(), parms.podOpenDelay, false, true, canRoofPunch);
            }
        }