Пример #1
0
        /// <summary>
        /// Renders the given save file entries to the map
        /// </summary>
        /// <param name="Entries">Save File Entries</param>
        /// <returns>Map</returns>
        public static Image RenderEntries(IEnumerable <SaveFileEntry> Entries, double factor = 1.0)
        {
            Init();
            var Objects = new List <DrawObject>();

            foreach (var P in Entries.Where(m => m.EntryType == OBJECT_TYPE.OBJECT))
            {
                var O = new DrawObject(P, Color.Green, 2 * factor);
                //Change color according to object type
                if (P.ObjectData.Name.Contains("Build"))
                {
                    O.ObjectColor = Color.Yellow;
                }
                if (P.ObjectData.Name.Contains("Node"))
                {
                    O.ObjectColor = Color.Fuchsia;
                }
                if (P.ObjectData.Name.Contains("Foundation"))
                {
                    O.ObjectColor = Color.DarkGray;
                }
                if (P.ObjectData.Name.Contains("Walkway"))
                {
                    O.ObjectColor = Color.White;
                }
                Objects.Add(O);
            }
            //Enumerate players seperately because we want them bigger
            foreach (var P in Entries.Where(m => m.ObjectData.Name == "/Game/FactoryGame/Character/Player/Char_Player.Char_Player_C"))
            {
                Objects.Add(new DrawObject(P, Color.Red, 10 * factor));
            }

            Log.Write("Map: Rendering {0} entries as {1} objects", Entries.Count(), Objects.Count);

            return(Render(Objects));
        }
Пример #2
0
 /// <summary>
 /// Gets a map with the item rendered on it
 /// </summary>
 /// <param name="Object">Item to render</param>
 /// <returns>Map</returns>
 /// <remarks>It's the users responsibility to dispose the image</remarks>
 public static Image Render(DrawObject Object)
 {
     Init();
     return(Render(new DrawObject[] { Object }));
 }