Example #1
0
        private Frame CreateFrame(ISizeable size)
        {
            FrameBuilder fb = new FrameBuilder(size)
            {
                Color  = FG_WHITE,
                Offset = new Point(4, 2)
            };

            string levelProgress = _character.LevelProgress.ToString();

            int width          = _character.Name.Length;
            int reserved_width = 2 + TITLE.Length;

            if (levelProgress.Length > width)
            {
                width = levelProgress.Length + 1;
            }

            if (width < 24)
            {
                width = 24;
            }

            //top border
            int top_border_remaining = width - reserved_width;

            {
                int border_n = top_border_remaining / 2;

                fb.Color = CONJUNCTION_COLOR;
                fb.Write('+');
                fb.Color = BORDER_COLOR;
                fb.Write(new string(BORDER_GLYPGH, border_n));

                fb.Color = TITLE_COLOR;
                fb.Write("[Character]");

                fb.Color = BORDER_COLOR;
                fb.Write(new string(BORDER_GLYPGH, top_border_remaining - border_n));
                fb.Color = CONJUNCTION_COLOR;
                fb.WriteLine('+');
            }

            fb.NewLine();
            fb.WriteLine($"  Name: {_character.Name}");
            fb.WriteLine($"  {levelProgress}");
            return(fb.Build());
        }
Example #2
0
        public Frame CreateFrame()
        {
            FrameBuilder fb = new FrameBuilder(this);

            //Title
            {
                fb.Cursor = new Point(0, 4);
                int empty_left = Width / 2 - TITLE.Length / 2;
                fb.Write(new string(' ', empty_left));

                fb.Write(TITLE, FG_GREEN);
                fb.Write(new string(' ', Width - empty_left - TITLE.Length), FG_BLACK);
            }

            return(fb.Build());
        }
Example #3
0
        public MenuWindow(ISizeable size) : base(size)
        {
            FrameBuilder fb = new FrameBuilder(size)
            {
                Color  = FG_GREEN,
                Offset = new Point(4, 2)
            };

            fb.WriteLine("1) Play");
            fb.Color = FG_CYAN;
            fb.WriteLine("2) Player");
            fb.Color = FG_BLUE;
            fb.WriteLine("3) Exit");
            VisibleFrame = fb.Build();

            ChildWindows = new[]
            {
                new PlayerWindow(size, this)
            };
        }
Example #4
0
        public PlayerWindow(ISizeable size, Window parent) : base(size)
        {
            Parent = parent;

            FrameBuilder fb = new FrameBuilder(this)
            {
                Color  = FG_GREEN,
                Offset = new Point(4, 2)
            };

            fb.WriteLine("Hello Player");
            fb.Color = FG_WHITE;
            fb.WriteLine("2) Character stuff");
            VisibleFrame = fb.Build();

            ChildWindows = new[]
            {
                new CharacterWindow(size, this)
            };
        }
Example #5
0
        private Animation CreateTitleFireAnimation(Point offset)
        {
            Animation titleFire = new Animation {
                Speed = TimeSpan.FromMilliseconds(200)
            };

            Size size = new Size(5, 7);

            {
                FrameBuilder fire = new FrameBuilder(size)
                {
                    Offset = offset
                };

                fire.Color = FG_CYAN;
                fire.WriteLine("| o |");
                fire.WriteLine("|o o|");
                fire.WriteLine("| o |");
                fire.Write('|'); fire.Write("---", FG_YELLOW); fire.WriteLine('|', FG_CYAN);
                fire.WriteLine("| o |");
                fire.WriteLine("|o o|");
                fire.Color = FG_YELLOW;
                fire.WriteLine("--+--");

                titleFire.Frames.Add(fire.Build());
            }
            {
                FrameBuilder fire = new FrameBuilder(size)
                {
                    Offset = offset
                };

                fire.Color = FG_CYAN;
                fire.WriteLine("|o o|");
                fire.WriteLine("| o |");
                fire.Write('|'); fire.Write("---", FG_YELLOW); fire.WriteLine('|', FG_CYAN);
                fire.WriteLine("| o |");
                fire.WriteLine("|o o|");
                fire.WriteLine("| o |");
                fire.Color = FG_YELLOW;
                fire.WriteLine("--+--");

                titleFire.Frames.Add(fire.Build());
            }
            {
                FrameBuilder fire = new FrameBuilder(size)
                {
                    Offset = offset
                };
                fire.Color = FG_CYAN;
                fire.WriteLine("| o |");
                fire.Write('|'); fire.Write("---", FG_YELLOW); fire.WriteLine('|', FG_CYAN);
                fire.WriteLine("| o |");
                fire.WriteLine("|o o|");
                fire.WriteLine("| o |");
                fire.WriteLine("|o o|");
                fire.Color = FG_YELLOW;
                fire.WriteLine("--+--");

                titleFire.Frames.Add(fire.Build());
            }
            {
                FrameBuilder fire = new FrameBuilder(size)
                {
                    Offset = offset
                };
                fire.Color = FG_CYAN;
                fire.Write('|'); fire.Write(" - ", FG_YELLOW); fire.WriteLine('|', FG_CYAN);
                fire.WriteLine("| o |");
                fire.WriteLine("|o o|");
                fire.WriteLine("| o |");
                fire.WriteLine("|o o|");
                fire.WriteLine("| o |");
                fire.Color = FG_YELLOW;
                fire.WriteLine("--+--");

                titleFire.Frames.Add(fire.Build());
            }
            {
                FrameBuilder fire = new FrameBuilder(size)
                {
                    Offset = offset
                };
                fire.Color = FG_CYAN;
                fire.WriteLine("| o |");
                fire.WriteLine("|o o|");
                fire.WriteLine("| o |");
                fire.WriteLine("|o o|");
                fire.WriteLine("| o |");
                fire.Write('|'); fire.Write(" - ", FG_YELLOW); fire.WriteLine('|', FG_CYAN);
                fire.Color = FG_YELLOW;
                fire.WriteLine("--+--");

                titleFire.Frames.Add(fire.Build());
            }
            {
                FrameBuilder fire = new FrameBuilder(size)
                {
                    Offset = offset
                };
                fire.Color = FG_CYAN;
                fire.WriteLine("|o o|");
                fire.WriteLine("| o |");
                fire.WriteLine("|o o|");
                fire.WriteLine("| o |");
                fire.Write('|'); fire.Write("---", FG_YELLOW); fire.WriteLine('|', FG_CYAN);
                fire.WriteLine("| o |");
                fire.Color = FG_YELLOW;
                fire.WriteLine("--+--");

                titleFire.Frames.Add(fire.Build());
            }


            return(titleFire);
        }