Exemplo n.º 1
0
        // Token: 0x06000010 RID: 16 RVA: 0x00002BC8 File Offset: 0x00000DC8
        internal static bool GetTerrainEffectsOutsider(TerrainDef terrain, Pawn pawn)
        {
            if (ProximityGet.GetTProxOutsider(terrain))
            {
                return(true);
            }

            var map     = pawn.Map;
            var faction = map?.ParentFaction;

            if (faction == null || pawn.Faction == null)
            {
                return(false);
            }

            if (pawn.Faction.RelationKindWith(faction) == FactionRelationKind.Ally)
            {
                if (ProximityGet.GetTProxAlly(terrain))
                {
                    return(true);
                }
            }
            else if (pawn.Faction.RelationKindWith(faction) == FactionRelationKind.Neutral)
            {
                if (ProximityGet.GetTProxNeutral(terrain))
                {
                    return(true);
                }
            }
            else if (pawn.Faction.RelationKindWith(faction) == FactionRelationKind.Hostile &&
                     ProximityGet.GetTProxHostile(terrain))
            {
                return(true);
            }

            return(false);
        }