Exemplo n.º 1
0
        public static void Exploring()
        {
            if (world == null)
            {
                return;
            }

            Console.Title = gameTitle + " Exploring";

            bool loopExploring = true;

            renderer.DrawClear();

            menu = new Menu(renderer.Width - 24, 1, 24, "Exploring");
            MenuText worldNameDisplay = new MenuText(world.Name);

            menu.AddMenuItem(worldNameDisplay);

            MenuText mapNameDisplay = new MenuText(world.CurrentMap.Name);

            menu.AddMenuItem(mapNameDisplay);

            MenuText tileNameDisplay = new MenuText(world.CurrentMap.SelectedTile.Name);

            menu.AddMenuItem(tileNameDisplay);

            MenuText positionDisplay = new MenuText("");

            menu.AddMenuItem(positionDisplay);
            menu.AddMenuItem(new MenuText(""));
            menu.AddMenuItem(new MenuText(""));
            menu.AddMenuItem(new MenuText(""));

            MenuButton tileEnterExitButton = new MenuButton("Enter Tile")
            {
                ButtonEvent = () =>
                {
                    world.EnterExitInteriorExterior();
                }
            };

            menu.AddMenuItem(tileEnterExitButton);


            while (loopExploring)
            {
                worldNameDisplay.Text = "World: " + world.Name;
                mapNameDisplay.Text   = "Region: " + world.CurrentMap.Name;
                tileNameDisplay.Text  = "Terrain: " + world.CurrentMap.SelectedTile.Name;

                if (world.CurrentMap.SelectedTile.Exsterior != null)
                {
                    tileEnterExitButton.Text = "Explore " + world.CurrentMap.SelectedTile.Exsterior.Name;
                }

                if (world.CurrentMap.SelectedTile.Interior != null)
                {
                    tileEnterExitButton.Text = "Explore " + world.CurrentMap.SelectedTile.Interior.Name;
                }

                positionDisplay.Text = "Position: " + world.CurrentMap.CameraX + ":" + -world.CurrentMap.CameraY;

                world.Render(renderer);
                menu.Renderer(renderer);
                renderer.Render();
                KeyEvent(true);
            }
        }
Exemplo n.º 2
0
        static void CharacterCreation()
        {
            Console.Title = gameTitle + " Character Creation";

            bool loopCharacterCreation = true;

            renderer.DrawBox(0, 0, renderer.Width, renderer.Height, ConsoleColor.Gray);
            player = new Player(random);

            //Character Creation: Name & Race
            #region Character Creation: Name & Race
            loopCharacterCreation = true;

            renderer.DrawBox(1, 1, renderer.Width - 1, renderer.Height - 1, ConsoleColor.Black);
            menu = new Menu(((renderer.Width + 1) / 2 - standardMenuWidth / 2), (standardMenuY), standardMenuWidth, "Character Creation: Name & Race");

            menu.AddMenuItem(new MenuText("NAME:"));
            MenuButton nameInput = new MenuButton("NONAME");
            nameInput.ButtonEvent = () =>
            {
                Console.Beep(131, 50);
                Console.Beep(111, 50);
                bool loopNameInput = true;
                while (loopNameInput)
                {
                    menu.Renderer(renderer);
                    renderer.Render();
                    ConsoleKey ck = Console.ReadKey().Key;
                    switch (ck)
                    {
                    default:
                        nameInput.Text += ck.ToString();
                        break;

                    case ConsoleKey.Backspace:
                        if (nameInput.Text.Length > 0)
                        {
                            nameInput.Text = nameInput.Text.Remove(nameInput.Text.Length - 1);
                        }
                        break;

                    case ConsoleKey.Enter:
                        loopNameInput = false;
                        break;

                    case ConsoleKey.Delete:
                        nameInput.Text = "";
                        break;
                    }
                }
            };
            menu.AddMenuItem(nameInput);
            menu.AddBlankMenuItem();

            int raceIndex = 0;
            Actor_Description.DescriptionRace[] races = new Actor_Description.DescriptionRace[] { Actor_Description.DescriptionRace.Human, Actor_Description.DescriptionRace.Elf, Actor_Description.DescriptionRace.Orc };
            MenuText raceIndexCounter = new MenuText("Race: " + races[raceIndex]);
            menu.AddMenuItem(raceIndexCounter);
            menu.AddMenuItem(new MenuButton("   +")
            {
                ButtonEvent = () =>
                {
                    if (raceIndex < races.Length - 1)
                    {
                        Console.Beep(131, 100);
                        raceIndexCounter.Text = "Race: " + races[++raceIndex];
                    }
                }
            });
            menu.AddMenuItem(new MenuButton("   -")
            {
                ButtonEvent = () =>
                {
                    if (raceIndex > 0)
                    {
                        Console.Beep(111, 100);
                        raceIndexCounter.Text = "Race: " + races[--raceIndex];
                    }
                }
            });
            menu.AddBlankMenuItem();

            int genderIndex = 0;
            Actor_Description.DescriptionGender[] genders = new Actor_Description.DescriptionGender[] { Actor_Description.DescriptionGender.None, Actor_Description.DescriptionGender.Male, Actor_Description.DescriptionGender.Female, Actor_Description.DescriptionGender.Male_Female };
            MenuText genderIndexCounter = new MenuText("Gender: " + genders[genderIndex]);
            menu.AddMenuItem(genderIndexCounter);
            menu.AddMenuItem(new MenuButton("   +")
            {
                ButtonEvent = () =>
                {
                    if (genderIndex < genders.Length - 1)
                    {
                        Console.Beep(131, 100);
                        genderIndexCounter.Text = "Gender: " + genders[++genderIndex];
                    }
                }
            });
            menu.AddMenuItem(new MenuButton("   -")
            {
                ButtonEvent = () =>
                {
                    if (genderIndex > 0)
                    {
                        Console.Beep(111, 100);
                        genderIndexCounter.Text = "Gender: " + genders[--genderIndex];
                    }
                }
            });

            menu.AddBlankMenuItem();
            menu.AddMenuItem(new MenuButton("Continue: ")
            {
                ButtonEvent = () =>
                {
                    Console.Beep(121, 100);
                    loopCharacterCreation = false;
                }
            });

            while (loopCharacterCreation)
            {
                menu.Renderer(renderer);
                renderer.Render();
                KeyEvent();
            }

            player.Description.InitilizeNRG(races[raceIndex], genders[genderIndex]);
            #endregion

            //Character Creation: Skillpoints
            #region Character Creation: Skillpoints
            loopCharacterCreation = true;

            renderer.DrawBox(1, 1, renderer.Width - 1, renderer.Height - 1, ConsoleColor.Black);
            menu = new Menu(((renderer.Width + 1) / 2 - standardMenuWidth / 2), (standardMenuY - 6), standardMenuWidth, "Character Creation: Skillpoints");

            //SKILLPOINTS
            int      skillPoints       = 42;
            MenuText skillPointCounter = new MenuText("Skillpoints: " + skillPoints);
            menu.AddMenuItem(skillPointCounter);

            menu.AddMenuItem(new MenuText("    Physic:"));

            //STRENGHT
            int      strenghtPoints       = 3;
            MenuText strenghtPointCounter = new MenuText("Strenght: " + strenghtPoints);
            menu.AddMenuItem(strenghtPointCounter);
            menu.AddMenuItem(new MenuButton("       +")
            {
                ButtonEvent = () =>
                {
                    if (skillPoints > 0)
                    {
                        Console.Beep(131, 100);
                        skillPointCounter.Text    = "Skillpoints: " + --skillPoints;
                        strenghtPointCounter.Text = "Strenght: " + ++strenghtPoints;
                    }
                }
            });
            menu.AddMenuItem(new MenuButton("       -")
            {
                ButtonEvent = () =>
                {
                    if (strenghtPoints > 0)
                    {
                        Console.Beep(111, 100);
                        skillPointCounter.Text    = "Skillpoints: " + ++skillPoints;
                        strenghtPointCounter.Text = "Strenght: " + --strenghtPoints;
                    }
                }
            });

            //ENDURANCE
            int      endurancePoints       = 3;
            MenuText endurancePointCounter = new MenuText("Endurance: " + endurancePoints);
            menu.AddMenuItem(endurancePointCounter);
            menu.AddMenuItem(new MenuButton("       +")
            {
                ButtonEvent = () =>
                {
                    if (skillPoints > 0)
                    {
                        Console.Beep(131, 100);
                        skillPointCounter.Text     = "Skillpoints: " + --skillPoints;
                        endurancePointCounter.Text = "Endurance: " + ++endurancePoints;
                    }
                }
            });
            menu.AddMenuItem(new MenuButton("       -")
            {
                ButtonEvent = () =>
                {
                    if (endurancePoints > 0)
                    {
                        Console.Beep(111, 100);
                        skillPointCounter.Text     = "Skillpoints: " + ++skillPoints;
                        endurancePointCounter.Text = "Endurance: " + --endurancePoints;
                    }
                }
            });

            //DEXTERITY
            int      dexsterityPoints      = 3;
            MenuText dexterityPointCounter = new MenuText("Dexterity: " + dexsterityPoints);
            menu.AddMenuItem(dexterityPointCounter);
            menu.AddMenuItem(new MenuButton("       +")
            {
                ButtonEvent = () =>
                {
                    if (skillPoints > 0)
                    {
                        Console.Beep(131, 100);
                        skillPointCounter.Text     = "Skillpoints: " + --skillPoints;
                        dexterityPointCounter.Text = "Dexyesterity: " + ++dexsterityPoints;
                    }
                }
            });
            menu.AddMenuItem(new MenuButton("       -")
            {
                ButtonEvent = () =>
                {
                    if (dexsterityPoints > 0)
                    {
                        Console.Beep(111, 100);
                        skillPointCounter.Text     = "Skillpoints: " + ++skillPoints;
                        dexterityPointCounter.Text = "Dexsterity: " + --dexsterityPoints;
                    }
                }
            });

            menu.AddMenuItem(new MenuText("    Psyce:"));

            //WISDOM
            int      wisdomPoints       = 3;
            MenuText wisdomPointCounter = new MenuText("Wisdom: " + wisdomPoints);
            menu.AddMenuItem(wisdomPointCounter);
            menu.AddMenuItem(new MenuButton("       +")
            {
                ButtonEvent = () =>
                {
                    if (skillPoints > 0)
                    {
                        Console.Beep(131, 100);
                        skillPointCounter.Text  = "Skillpoints: " + --skillPoints;
                        wisdomPointCounter.Text = "Wisdom: " + ++wisdomPoints;
                    }
                }
            });
            menu.AddMenuItem(new MenuButton("       -")
            {
                ButtonEvent = () =>
                {
                    if (wisdomPoints > 0)
                    {
                        Console.Beep(111, 100);
                        skillPointCounter.Text  = "Skillpoints: " + ++skillPoints;
                        wisdomPointCounter.Text = "Wisdom: " + --wisdomPoints;
                    }
                }
            });

            //INTELLIGENCE
            int      intelligencePoints       = 3;
            MenuText intelligencePointCounter = new MenuText("Intelligence: " + intelligencePoints);
            menu.AddMenuItem(intelligencePointCounter);
            menu.AddMenuItem(new MenuButton("       +")
            {
                ButtonEvent = () =>
                {
                    if (skillPoints > 0)
                    {
                        Console.Beep(131, 100);
                        skillPointCounter.Text        = "Skillpoints: " + --skillPoints;
                        intelligencePointCounter.Text = "Intelligence: " + ++intelligencePoints;
                    }
                }
            });
            menu.AddMenuItem(new MenuButton("       -")
            {
                ButtonEvent = () =>
                {
                    if (intelligencePoints > 0)
                    {
                        Console.Beep(111, 100);
                        skillPointCounter.Text        = "Skillpoints: " + ++skillPoints;
                        intelligencePointCounter.Text = "Intelligence: " + --intelligencePoints;
                    }
                }
            });

            //CHARISMA
            int      charismaPoints       = 3;
            MenuText charismaPointCounter = new MenuText("Charisma: " + charismaPoints);
            menu.AddMenuItem(charismaPointCounter);
            menu.AddMenuItem(new MenuButton("       +")
            {
                ButtonEvent = () =>
                {
                    if (skillPoints > 0)
                    {
                        Console.Beep(131, 100);
                        skillPointCounter.Text    = "Skillpoints: " + --skillPoints;
                        charismaPointCounter.Text = "Charisma: " + ++charismaPoints;
                    }
                }
            });
            menu.AddMenuItem(new MenuButton("       -")
            {
                ButtonEvent = () =>
                {
                    if (charismaPoints > 0)
                    {
                        Console.Beep(111, 100);
                        skillPointCounter.Text    = "Skillpoints: " + ++skillPoints;
                        charismaPointCounter.Text = "Charisma: " + --charismaPoints;
                    }
                }
            });

            menu.AddBlankMenuItem();
            menu.AddMenuItem(new MenuButton("Continue: ")
            {
                ButtonEvent = () =>
                {
                    Console.Beep(121, 100);
                    loopCharacterCreation = false;
                }
            });

            while (loopCharacterCreation)
            {
                menu.Renderer(renderer);
                renderer.Render();
                KeyEvent();
            }

            player.InitilizeSkillPoints(skillPoints, strenghtPoints, endurancePoints, dexsterityPoints, wisdomPoints, intelligencePoints, charismaPoints);
            #endregion

            //Character Creation: Looks
            #region Character Creation: Looks
            loopCharacterCreation = true;

            renderer.DrawBox(1, 1, renderer.Width - 1, renderer.Height - 1, ConsoleColor.Black);
            menu = new Menu(((renderer.Width + 1) / 2 - standardMenuWidth / 2), (standardMenuY), standardMenuWidth, "Character Creation: Looks");

            //HEAD
            menu.AddMenuItem(new MenuButton("Head")
            {
                ButtonEvent = () =>
                {
                    Console.Beep(121, 100);
                    Menu startMenu = menu;

                    renderer.DrawBox(1, 1, renderer.Width - 1, renderer.Height - 1, ConsoleColor.Black);
                    menu = new Menu(((renderer.Width + 1) / 2 - standardMenuWidth / 2), (standardMenuY), standardMenuWidth, "Head");

                    //HAIR
                    int hairIndex = 0;
                    Actor_Description.DescriptionLenght[] hairs = new Actor_Description.DescriptionLenght[] { Actor_Description.DescriptionLenght.None, Actor_Description.DescriptionLenght.Short, Actor_Description.DescriptionLenght.Medium, Actor_Description.DescriptionLenght.Long };
                    MenuText hairIndexCounter = new MenuText("Hair: " + hairs[hairIndex]);
                    menu.AddMenuItem(hairIndexCounter);
                    menu.AddMenuItem(new MenuButton("   +")
                    {
                        ButtonEvent = () =>
                        {
                            if (hairIndex < hairs.Length - 1)
                            {
                                Console.Beep(131, 100);
                                hairIndexCounter.Text = "Hair: " + hairs[++hairIndex];
                            }
                        }
                    });
                    menu.AddMenuItem(new MenuButton("   -")
                    {
                        ButtonEvent = () =>
                        {
                            if (hairIndex > 0)
                            {
                                Console.Beep(111, 100);
                                hairIndexCounter.Text = "Hair: " + hairs[--hairIndex];
                            }
                        }
                    });
                    menu.AddBlankMenuItem();

                    //EYES
                    int eyeIndex             = 0;
                    ConsoleColor[] eyes      = new ConsoleColor[] { ConsoleColor.Black, ConsoleColor.Blue, ConsoleColor.Cyan, ConsoleColor.Gray, ConsoleColor.Green, ConsoleColor.Magenta, ConsoleColor.Red, ConsoleColor.White, ConsoleColor.Yellow };
                    MenuText eyeIndexCounter = new MenuText("Eyes: " + eyes[eyeIndex]);
                    menu.AddMenuItem(eyeIndexCounter);
                    menu.AddMenuItem(new MenuButton("   +")
                    {
                        ButtonEvent = () =>
                        {
                            if (eyeIndex < eyes.Length - 1)
                            {
                                Console.Beep(131, 100);
                                eyeIndexCounter.Text = "Eyes: " + eyes[++eyeIndex];
                            }
                        }
                    });
                    menu.AddMenuItem(new MenuButton("   -")
                    {
                        ButtonEvent = () =>
                        {
                            if (eyeIndex > 0)
                            {
                                Console.Beep(111, 100);
                                eyeIndexCounter.Text = "Eyes: " + eyes[--eyeIndex];
                            }
                        }
                    });
                    menu.AddBlankMenuItem();

                    //BEARD
                    int beardIndex = 0;
                    Actor_Description.DescriptionLenght[] beard = new Actor_Description.DescriptionLenght[] { Actor_Description.DescriptionLenght.None, Actor_Description.DescriptionLenght.None, Actor_Description.DescriptionLenght.Medium, Actor_Description.DescriptionLenght.Long };
                    MenuText beardIndexCounter = new MenuText("Beard: " + beard[beardIndex]);
                    menu.AddMenuItem(beardIndexCounter);
                    menu.AddMenuItem(new MenuButton("   +")
                    {
                        ButtonEvent = () =>
                        {
                            if (beardIndex < beard.Length - 1)
                            {
                                Console.Beep(131, 100);
                                beardIndexCounter.Text = "Beard: " + beard[++beardIndex];
                            }
                        }
                    });
                    menu.AddMenuItem(new MenuButton("   -")
                    {
                        ButtonEvent = () =>
                        {
                            if (beardIndex > 0)
                            {
                                Console.Beep(111, 100);
                                beardIndexCounter.Text = "Beard: " + beard[--beardIndex];
                            }
                        }
                    });
                    menu.AddBlankMenuItem();

                    menu.AddMenuItem(new MenuButton("Back")
                    {
                        ButtonEvent = () =>
                        {
                            Console.Beep(121, 100);
                            renderer.DrawBox(1, 1, renderer.Width - 1, renderer.Height - 1, ConsoleColor.Black);
                            menu = startMenu;

                            player.Description.InitilizeDescriptionHead(hairs[hairIndex], eyes[eyeIndex], beard[beardIndex]);
                        }
                    });
                }
            });
            menu.AddBlankMenuItem();

            //TORSO
            menu.AddMenuItem(new MenuButton("Torso")
            {
                ButtonEvent = () =>
                {
                    Console.Beep(121, 100);
                    Menu startMenu = menu;

                    renderer.DrawBox(1, 1, renderer.Width - 1, renderer.Height - 1, ConsoleColor.Black);
                    menu = new Menu(((renderer.Width + 1) / 2 - standardMenuWidth / 2), (standardMenuY), standardMenuWidth, "Torso");

                    //TORSO
                    int sizeIndex = 0;
                    Actor_Description.DescriptionSize[] sizes = new Actor_Description.DescriptionSize[] { Actor_Description.DescriptionSize.Small, Actor_Description.DescriptionSize.Medium, Actor_Description.DescriptionSize.Large };
                    MenuText sizeIndexCounter = new MenuText("Size: " + sizes[sizeIndex]);
                    menu.AddMenuItem(sizeIndexCounter);
                    menu.AddMenuItem(new MenuButton("   +")
                    {
                        ButtonEvent = () =>
                        {
                            if (sizeIndex < sizes.Length - 1)
                            {
                                Console.Beep(131, 100);
                                sizeIndexCounter.Text = "Size: " + sizes[++sizeIndex];
                            }
                        }
                    });
                    menu.AddMenuItem(new MenuButton("   -")
                    {
                        ButtonEvent = () =>
                        {
                            if (sizeIndex > 0)
                            {
                                Console.Beep(111, 100);
                                sizeIndexCounter.Text = "Size: " + sizes[--sizeIndex];
                            }
                        }
                    });
                    menu.AddBlankMenuItem();

                    menu.AddMenuItem(new MenuButton("Back")
                    {
                        ButtonEvent = () =>
                        {
                            Console.Beep(121, 100);
                            renderer.DrawBox(1, 1, renderer.Width - 1, renderer.Height - 1, ConsoleColor.Black);
                            menu = startMenu;

                            player.Description.InitilizeDescriptionTorso(sizes[sizeIndex]);
                        }
                    });
                }
            });
            menu.AddBlankMenuItem();

            //LEGS
            menu.AddMenuItem(new MenuButton("Legs")
            {
                ButtonEvent = () =>
                {
                    Console.Beep(121, 100);
                    Menu startMenu = menu;

                    renderer.DrawBox(1, 1, renderer.Width - 1, renderer.Height - 1, ConsoleColor.Black);
                    menu = new Menu(((renderer.Width + 1) / 2 - standardMenuWidth / 2), (standardMenuY), standardMenuWidth, "Legs");

                    //LEGS
                    int sizeIndex = 0;
                    Actor_Description.DescriptionSize[] sizes = new Actor_Description.DescriptionSize[] { Actor_Description.DescriptionSize.Small, Actor_Description.DescriptionSize.Medium, Actor_Description.DescriptionSize.Large };
                    MenuText sizeIndexCounter = new MenuText("Size: " + sizes[sizeIndex]);
                    menu.AddMenuItem(sizeIndexCounter);
                    menu.AddMenuItem(new MenuButton("   +")
                    {
                        ButtonEvent = () =>
                        {
                            if (sizeIndex < sizes.Length - 1)
                            {
                                Console.Beep(131, 100);
                                sizeIndexCounter.Text = "Size: " + sizes[++sizeIndex];
                            }
                        }
                    });
                    menu.AddMenuItem(new MenuButton("   -")
                    {
                        ButtonEvent = () =>
                        {
                            if (sizeIndex > 0)
                            {
                                Console.Beep(111, 100);
                                sizeIndexCounter.Text = "Size: " + sizes[--sizeIndex];
                            }
                        }
                    });
                    menu.AddBlankMenuItem();

                    menu.AddMenuItem(new MenuButton("Back")
                    {
                        ButtonEvent = () =>
                        {
                            Console.Beep(121, 100);
                            renderer.DrawBox(1, 1, renderer.Width - 1, renderer.Height - 1, ConsoleColor.Black);
                            menu = startMenu;

                            player.Description.InitilizeDescriptionLegs(sizes[sizeIndex]);
                        }
                    });
                }
            });
            menu.AddBlankMenuItem();

            //OTHER
            menu.AddMenuItem(new MenuButton("Other")
            {
                ButtonEvent = () =>
                {
                    Console.Beep(121, 100);
                    Menu startMenu = menu;

                    renderer.DrawBox(1, 1, renderer.Width - 1, renderer.Height - 1, ConsoleColor.Black);
                    menu = new Menu(((renderer.Width + 1) / 2 - standardMenuWidth / 2), (standardMenuY), standardMenuWidth, "Other");

                    //HAIRCOLOR
                    int hairIndex             = 0;
                    ConsoleColor[] hairs      = new ConsoleColor[] { ConsoleColor.White, ConsoleColor.Black, ConsoleColor.Blue, ConsoleColor.DarkBlue, ConsoleColor.Cyan, ConsoleColor.DarkCyan, ConsoleColor.Gray, ConsoleColor.DarkGray, ConsoleColor.Green, ConsoleColor.DarkGreen, ConsoleColor.Magenta, ConsoleColor.DarkMagenta, ConsoleColor.Red, ConsoleColor.DarkRed, ConsoleColor.Yellow, ConsoleColor.DarkYellow };
                    MenuText hairIndexCounter = new MenuText("Hair Color: " + hairs[hairIndex]);
                    menu.AddMenuItem(hairIndexCounter);
                    menu.AddMenuItem(new MenuButton("   +")
                    {
                        ButtonEvent = () =>
                        {
                            if (hairIndex < hairs.Length - 1)
                            {
                                Console.Beep(131, 100);
                                hairIndexCounter.Text = "Hair Color: " + hairs[++hairIndex];
                            }
                        }
                    });
                    menu.AddMenuItem(new MenuButton("   -")
                    {
                        ButtonEvent = () =>
                        {
                            if (hairIndex > 0)
                            {
                                Console.Beep(111, 100);
                                hairIndexCounter.Text = "Hair Color: " + hairs[--hairIndex];
                            }
                        }
                    });
                    menu.AddBlankMenuItem();

                    //SKIN
                    int skinIndex             = 0;
                    ConsoleColor[] skin       = new ConsoleColor[] { ConsoleColor.White, ConsoleColor.Black, ConsoleColor.Blue, ConsoleColor.DarkBlue, ConsoleColor.Cyan, ConsoleColor.DarkCyan, ConsoleColor.Gray, ConsoleColor.DarkGray, ConsoleColor.Green, ConsoleColor.DarkGreen, ConsoleColor.Magenta, ConsoleColor.DarkMagenta, ConsoleColor.Red, ConsoleColor.DarkRed, ConsoleColor.Yellow, ConsoleColor.DarkYellow };
                    MenuText skinIndexCounter = new MenuText("Skin: " + skin[skinIndex]);
                    menu.AddMenuItem(skinIndexCounter);
                    menu.AddMenuItem(new MenuButton("   +")
                    {
                        ButtonEvent = () =>
                        {
                            if (skinIndex < skin.Length - 1)
                            {
                                Console.Beep(131, 100);
                                skinIndexCounter.Text = "Skin: " + skin[++skinIndex];
                            }
                        }
                    });
                    menu.AddMenuItem(new MenuButton("   -")
                    {
                        ButtonEvent = () =>
                        {
                            if (skinIndex > 0)
                            {
                                Console.Beep(111, 100);
                                skinIndexCounter.Text = "Skin: " + skin[--skinIndex];
                            }
                        }
                    });
                    menu.AddBlankMenuItem();

                    menu.AddMenuItem(new MenuButton("Back")
                    {
                        ButtonEvent = () =>
                        {
                            Console.Beep(121, 100);
                            renderer.DrawBox(1, 1, renderer.Width - 1, renderer.Height - 1, ConsoleColor.Black);
                            menu = startMenu;

                            player.Description.InitilizeDescriptionOther(hairs[hairIndex], skin[skinIndex]);
                        }
                    });
                }
            });
            menu.AddBlankMenuItem();

            menu.AddMenuItem(new MenuButton("Continue: ")
            {
                ButtonEvent = () =>
                {
                    Console.Beep(121, 100);
                    loopCharacterCreation = false;
                }
            });

            while (loopCharacterCreation)
            {
                menu.Renderer(renderer);
                renderer.Render();
                KeyEvent();
            }
            #endregion

            //RENDER
            renderer.DrawBox(1, 1, renderer.Width - 1, renderer.Height - 1, ConsoleColor.Black);
            player.Description.Render(renderer, (renderer.Width + 1) / 2 - 32 / 2, 2);
            renderer.Render();
            Console.ReadKey();
        }