Пример #1
0
        public void SaveSpriteToFile(BinaryWriter bw)
        {
            Vec2Utils.SaveVec2iToFile(bw, this.GetSize());

            for (int y = 0; y < this.GetSize().Y; ++y)
            {
                for (int x = 0; x < this.GetSize().X; ++x)
                {
                    bw.Write(BitConverter.GetBytes(this.GetAt(x, y)));
                    bw.Write(BitConverter.GetBytes((UInt16)this.GetColorAt(x, y)));
                }
            }
        }
Пример #2
0
        public static SprEnt2 LoadSpriteFromFile(BinaryReader br)
        {
            SprEnt2 spr = new SprEnt2(Vec2Utils.LoadVec2iFromFile(br));

            for (int y = 0; y < spr.GetSize().Y; ++y)
            {
                for (int x = 0; x < spr.GetSize().X; ++x)
                {
                    //Hmm... it sure do be like that, yes... interesting
                    spr.SetAt(BitConverter.ToChar(br.ReadBytes(2), 0), x, y);
                    spr.SetColorAt((ConsoleColor)br.ReadUInt16(), x, y);
                }
            }

            return(spr);
        }