Beispiel #1
0
    public static MapViewData smethod_24(GClass839 gclass839_0, bool bool_0)
    {
        Map         map         = gclass839_0.Map;
        MapViewData mapViewData = new MapViewData();

        mapViewData.Background = GClass840.smethod_0(Color.Black);
        mapViewData.MapId      = map.MapId;
        List <EntityDataRoot> entities = mapViewData.Entities;

        entities.Add(GClass840.smethod_17(map));
        if (bool_0)
        {
            List <EntityDataRoot> list = mapViewData.CachableEntities = new List <EntityDataRoot>();
            mapViewData.IncludesCache = true;
            foreach (KeyValuePair <string, ICollidable> keyValuePair in map.Collidables)
            {
                CollidableRect collidableRect = keyValuePair.Value as CollidableRect;
                if (collidableRect != null && collidableRect.imethod_0(map) != CollidableType.None)
                {
                    list.Add(GClass840.smethod_22(map, collidableRect));
                }
            }
            foreach (KeyValuePair <int, Asset> keyValuePair2 in map.Assets)
            {
                list.Add(GClass840.smethod_23(map, keyValuePair2.Value));
            }
        }
        foreach (KeyValuePair <int, Gate> keyValuePair3 in map.Gates)
        {
            entities.Add(GClass840.smethod_14(map, keyValuePair3.Value));
        }
        foreach (KeyValuePair <string, Collectible> keyValuePair4 in map.Collectibles)
        {
            entities.Add(GClass840.smethod_13(map, keyValuePair4.Value));
        }
        Ship selectedShip = map.SelectedShip;

        foreach (KeyValuePair <int, Ship> keyValuePair5 in map.Ships)
        {
            if (keyValuePair5.Value != selectedShip)
            {
                entities.Add(GClass840.smethod_12(gclass839_0, map, keyValuePair5.Value));
            }
        }
        if (selectedShip != null)
        {
            entities.Add(GClass840.smethod_12(gclass839_0, map, selectedShip));
        }
        entities.Add(GClass840.smethod_21(map));
        EntityDataRoot entityDataRoot = GClass840.smethod_18(gclass839_0, map);

        if (entityDataRoot != null)
        {
            entities.Add(entityDataRoot);
        }
        entities.Add(GClass840.smethod_20(map, map.Hero));
        if (selectedShip != null)
        {
            entities.Add(GClass840.smethod_20(map, selectedShip));
        }
        entities.Add(GClass840.smethod_19(gclass839_0));
        return(mapViewData);
    }