public void Add(Toggle toggle) { if (LayoutManager == null) toggle.Rect = new Rectangle(toggle.Rect.X + Rect.X, toggle.Rect.Y + Rect.Y, toggle.Rect.Width, toggle.Rect.Height); else toggle.Rect = new Rectangle(LayoutManager.NextX(toggle), LayoutManager.NextY(toggle), toggle.Rect.Width, toggle.Rect.Height); toggle.Index = components.Count; if (components.Count == 0) // this is the first element toggle.Set(); toggle.OnMouseClick = delegate(object sender, EventArgs e) { SelectedIndex = toggle.Index; }; components.Add(toggle); }
public void Add(string text) { Toggle toggle = new Toggle(game, text); Add(toggle); }
public NewGame(GameClass game) : base(game) { #region Background Background = new Image(game, @"Images\Screen_NewGame"); #endregion #region Title title = new Label(game, "Create a New Character", @"Pericles_30pt", Color.White, 40, 30); Add(title); #region TitleLine line = new Primitive(game); line.Rect = new Rectangle(40, 90, 900, 90); Add(line); #endregion #endregion #region TabbedPanel tabbedPanel = new TabbedPanel(game); tabbedPanel.Rect = new Rectangle(20, 120, Globals .ScreenWidth - 20 * 2, Globals.ScreenHeight - 20 * 2 - 120); #region SeparatorLine Primitive separator = new Primitive(game); separator.Rect = new Rectangle(260, 120, 260, 560); Add(separator); #endregion #region CircumstancesPanel Panel circumstancesPanel = new Panel(game); circumstancesPanel.MarginX = 30; tabbedPanel.AddTab("Circumstances", circumstancesPanel); circumstancesPanel.LayoutManager = new FlowLayout(FlowLayout.Mode.HORIZONTAL); OptionPanel circumstancesPanel_optionPanel = new OptionPanel(game, new Rectangle(0, 0, 650, 240)); circumstancesPanel.Add(circumstancesPanel_optionPanel); circumstancesPanel_optionPanel.LayoutManager = new FlowLayout(); humanCommonerToggle = new Toggle(game, "Human Commoner", 0, 0, 220, 40); circumstancesPanel_optionPanel.Add(humanCommonerToggle); humanNobleToggle = new Toggle(game, "Human Noble", 0, 0, 220, 40); circumstancesPanel_optionPanel.Add(humanNobleToggle); humanBanditToggle = new Toggle(game, "Human Bandit", 0, 0, 220, 40); circumstancesPanel_optionPanel.Add(humanBanditToggle); elvenCommonerToggle = new Toggle(game, "Elven Commoner", 0, 0, 220, 40); elvenCommonerToggle.CorePictureFileTitle = @"Interface\Toggle2"; circumstancesPanel_optionPanel.Add(elvenCommonerToggle); elvenInitiateToggle = new Toggle(game, "Elven Initiate", 0, 0, 220, 40); elvenInitiateToggle.CorePictureFileTitle = @"Interface\Toggle2"; circumstancesPanel_optionPanel.Add(elvenInitiateToggle); elvenOutcastToggle = new Toggle(game, "Elven Outcast", 0, 0, 220, 40); elvenOutcastToggle.CorePictureFileTitle = @"Interface\Toggle2"; circumstancesPanel_optionPanel.Add(elvenOutcastToggle); gnomeCommonerToggle = new Toggle(game, "Gnome Commoner", 0, 0, 220, 40); gnomeCommonerToggle.CorePictureFileTitle = @"Interface\Toggle3"; circumstancesPanel_optionPanel.Add(gnomeCommonerToggle); gnomeInventorToggle = new Toggle(game, "Gnome Inventor", 0, 0, 220, 40); gnomeInventorToggle.CorePictureFileTitle = @"Interface\Toggle3"; circumstancesPanel_optionPanel.Add(gnomeInventorToggle); gnomeThiefToggle = new Toggle(game, "Gnome Thief", 0, 0, 220, 40); gnomeThiefToggle.CorePictureFileTitle = @"Interface\Toggle3"; circumstancesPanel_optionPanel.Add(gnomeThiefToggle); Panel circumstancesPanelRight = new Panel(game); circumstancesPanelRight.Rect = new Rectangle(0, 0, 320, 300); circumstancesPanel.Add(circumstancesPanelRight); circumstancesPanelRight.LayoutManager = new FlowLayout(); circumstancesInfo = new LabelArea(game); circumstancesInfo.Rect = new Rectangle(0, 0, 320, 440); circumstancesPanelRight.Add(circumstancesInfo); circumstancesInfo.FontCoreFileName = @"Fonts\Cambria"; circumstancesInfo.FontSize = "16"; circumstancesInfo.Text = ""; circumstancesInfo.Background = new Image(game, @"Interface\LabelArea"); circumstancesInfo.MarginX = 10; circumstancesInfo.MarginY = 5; EventHandler circumstancesToggle1Click = delegate(object sender, EventArgs e) { circumstancesInfo.Text = "<color=yellow><b>Human Commoner</b><n><n></color>Born in the secluded village on the outskirts of the <i>Dayen Forest</i>, you have been brought up in the traditions of the local people. Your parents are working the village mill and are of reasonable standing. <color=green>Fayna</color>, your little sister is you only other living relative.<n><n><b>Class: </b>No restrictions."; warriorToggle.Enabled = true; mageToggle.Enabled = true; rogueToggle.Enabled = true; rangerToggle.Enabled = true; warriorToggle.Set(); lastNameText.Enabled = true; if (lastNameText.Text == "Morren") lastNameText.Text = ""; bGenerateLastName.Enabled = true; }; humanCommonerToggle.OnMouseClick += circumstancesToggle1Click; humanCommonerToggle.OnMouseMove += circumstancesToggle1Click; EventHandler circumstancesToggle2Click = delegate(object sender, EventArgs e) { circumstancesInfo.Text = "<color=yellow><b>Human Noble</b><n><n></color>The <i>House of Morren</i> has always been well respected in the royal court of <i>Sidris Fey</i>. As the only child of <color=green>Daeya</color> and <color=green>Sumac Morren</color>, you've been given every privilage a young person can wish for.<n><n><b>Class: </b><color=blue>Warrior</color> or <color=blue>Mage</color>."; warriorToggle.Enabled = true; mageToggle.Enabled = true; rogueToggle.Enabled = false; rangerToggle.Enabled = false; warriorToggle.Set(); lastNameText.Text = "Morren"; lastNameText.Enabled = false; bGenerateLastName.Enabled = false; }; humanNobleToggle.OnMouseClick += circumstancesToggle2Click; humanNobleToggle.OnMouseMove += circumstancesToggle2Click; EventHandler circumstancesToggle3Click = delegate(object sender, EventArgs e) { circumstancesInfo.Text = "<color=yellow><b>Human Bandit</b><n><n></color>Orphaned at a young age, you've been surviving on the streets of <i>Als Ondir</i> by luck, more than anything. A while ago your fellow beggars got you connected to a bandit group known as <i>The Foresters</i>. Bandit leader <color=green>Jake</color> has taken a liking to you, so your life quality has improved greatly.<n><n><b>Class: </b><color=blue>Rogue</color>, <color=blue>Mage</color> or <color=blue>Ranger</color>."; warriorToggle.Enabled = false; mageToggle.Enabled = true; rogueToggle.Enabled = true; rangerToggle.Enabled = true; mageToggle.Set(); lastNameText.Enabled = true; if (lastNameText.Text == "Morren") lastNameText.Text = ""; bGenerateLastName.Enabled = true; }; humanBanditToggle.OnMouseClick += circumstancesToggle3Click; humanBanditToggle.OnMouseMove += circumstancesToggle3Click; EventHandler circumstancesToggle4Click = delegate(object sender, EventArgs e) { circumstancesInfo.Text = "<color=yellow><b>Elven Commoner</b><n><n></color>asd<n><n><b>Class: </b><color=blue>Mage</color> or <color=blue>Ranger</color>."; warriorToggle.Enabled = false; mageToggle.Enabled = true; rogueToggle.Enabled = false; rangerToggle.Enabled = true; mageToggle.Set(); lastNameText.Enabled = true; if (lastNameText.Text == "Morren") lastNameText.Text = ""; bGenerateLastName.Enabled = true; }; elvenCommonerToggle.OnMouseClick += circumstancesToggle4Click; elvenCommonerToggle.OnMouseMove += circumstancesToggle4Click; EventHandler circumstancesToggle5Click = delegate(object sender, EventArgs e) { circumstancesInfo.Text = "<color=yellow><b>Elven Initiate</b><n><n></color>asd<n><n><b>Class: </b><color=blue>Mage</color>."; warriorToggle.Enabled = false; mageToggle.Enabled = true; rogueToggle.Enabled = false; rangerToggle.Enabled = false; mageToggle.Set(); lastNameText.Enabled = true; if (lastNameText.Text == "Morren") lastNameText.Text = ""; bGenerateLastName.Enabled = true; }; elvenInitiateToggle.OnMouseClick += circumstancesToggle5Click; elvenInitiateToggle.OnMouseMove += circumstancesToggle5Click; EventHandler circumstancesToggle6Click = delegate(object sender, EventArgs e) { circumstancesInfo.Text = "<color=yellow><b>Elven Outcast</b><n><n></color>asd<n><n><b>Class: </b><color=blue>Warrior</color>, <color=blue>Rogue</color> or <color=blue>Ranger</color>."; warriorToggle.Enabled = true; mageToggle.Enabled = false; rogueToggle.Enabled = true; rangerToggle.Enabled = true; warriorToggle.Set(); lastNameText.Enabled = true; if (lastNameText.Text == "Morren") lastNameText.Text = ""; bGenerateLastName.Enabled = true; }; elvenOutcastToggle.OnMouseClick += circumstancesToggle6Click; elvenOutcastToggle.OnMouseMove += circumstancesToggle6Click; EventHandler circumstancesToggle7Click = delegate(object sender, EventArgs e) { circumstancesInfo.Text = "<color=yellow><b>Gnome Commoner</b><n><n></color>asd<n><n><b>Class: </b><color=blue>Warrior</color> or <color=blue>Rogue</color>."; warriorToggle.Enabled = true; mageToggle.Enabled = false; rogueToggle.Enabled = true; rangerToggle.Enabled = false; warriorToggle.Set(); lastNameText.Enabled = true; if (lastNameText.Text == "Morren") lastNameText.Text = ""; bGenerateLastName.Enabled = true; }; gnomeCommonerToggle.OnMouseClick += circumstancesToggle7Click; gnomeCommonerToggle.OnMouseMove += circumstancesToggle7Click; EventHandler circumstancesToggle8Click = delegate(object sender, EventArgs e) { circumstancesInfo.Text = "<color=yellow><b>Gnome Inventor</b><n><n></color>asd<n><n><b>Class: </b><color=blue>Warrior</color> or <color=blue>Ranger</color>."; warriorToggle.Enabled = true; mageToggle.Enabled = false; rogueToggle.Enabled = false; rangerToggle.Enabled = true; warriorToggle.Set(); lastNameText.Enabled = true; if (lastNameText.Text == "Morren") lastNameText.Text = ""; bGenerateLastName.Enabled = true; }; gnomeInventorToggle.OnMouseClick += circumstancesToggle8Click; gnomeInventorToggle.OnMouseMove += circumstancesToggle8Click; EventHandler circumstancesToggle9Click = delegate(object sender, EventArgs e) { circumstancesInfo.Text = "<color=yellow><b>Gnome Thief</b><n><n></color>asd<n><n><b>Class: </b><color=blue>Rogue</color>."; warriorToggle.Enabled = false; mageToggle.Enabled = false; rogueToggle.Enabled = true; rangerToggle.Enabled = false; rogueToggle.Set(); lastNameText.Enabled = true; if (lastNameText.Text == "Morren") lastNameText.Text = ""; bGenerateLastName.Enabled = true; }; gnomeThiefToggle.OnMouseClick += circumstancesToggle9Click; gnomeThiefToggle.OnMouseMove += circumstancesToggle9Click; #endregion #region ClassPanel Panel classPanel = new Panel(game); classPanel.MarginX = 30; tabbedPanel.AddTab("Class", classPanel); classPanel.LayoutManager = new FlowLayout(FlowLayout.Mode.HORIZONTAL); OptionPanel classPanel_optionPanel = new OptionPanel(game, new Rectangle(0, 0, 650, 240)); classPanel.Add(classPanel_optionPanel); classPanel_optionPanel.LayoutManager = new FlowLayout(); warriorToggle = new Toggle(game, "Warrior", 0, 0, 220, 40); classPanel_optionPanel.Add(warriorToggle); mageToggle = new Toggle(game, "Mage", 0, 0, 220, 40); classPanel_optionPanel.Add(mageToggle); rogueToggle = new Toggle(game, "Rogue", 0, 0, 220, 40); classPanel_optionPanel.Add(rogueToggle); rangerToggle = new Toggle(game, "Ranger", 0, 0, 220, 40); classPanel_optionPanel.Add(rangerToggle); Panel classPanelRight = new Panel(game); classPanelRight.Rect = new Rectangle(0, 0, 320, 300); classPanel.Add(classPanelRight); classPanelRight.LayoutManager = new FlowLayout(); classInfo = new LabelArea(game); classInfo.Rect = new Rectangle(0, 0, 320, 440); classPanelRight.Add(classInfo); classInfo.FontCoreFileName = @"Fonts\Cambria"; classInfo.FontSize = "16"; classInfo.Text = ""; classInfo.Background = new Image(game, @"Interface\LabelArea"); classInfo.MarginX = 10; classInfo.MarginY = 5; EventHandler classToggle1Click = delegate(object sender, EventArgs e) { classInfo.Text = "<color=yellow><b>Warrior</b><n><n></color>Proficient with melee weapons (swords, axes, clubs, maces, etc.) and capable of wearing heavy armor. Warriors solve most situations with brute force.<n><n><b>Evolves to: </b><n><color=blue>Swordmaster</color> or <color=blue>Duelist</color>."; }; warriorToggle.OnMouseClick += classToggle1Click; warriorToggle.OnMouseMove += classToggle1Click; EventHandler classToggle2Click = delegate(object sender, EventArgs e) { classInfo.Text = "<color=yellow><b>Mage</b><n><n></color>Born with the <i>Gift</i>, mages can use psionic power at will handling tasks ranging from lock-picking to healing to dealing damage. Can use staves and rods for spell focussing or fighting.<n><n><b>Evolves to: </b><n><color=blue>Generalist</color> or <color=blue>Scholar</color>."; }; mageToggle.OnMouseClick += classToggle2Click; mageToggle.OnMouseMove += classToggle2Click; EventHandler classToggle3Click = delegate(object sender, EventArgs e) { classInfo.Text = "<color=yellow><b>Rogue</b><n><n></color>Adept at poison and trap making and detection, sneaking, pick-pocketing, lock-picking and similar skills, rogues are excellent thieves and assassins. Weapon proficiency limited to daggers and short swords.<n><n><b>Evolves to: </b><n><color=blue>Shade</color> or <color=blue>Assassin</color>."; }; rogueToggle.OnMouseClick += classToggle3Click; rogueToggle.OnMouseMove += classToggle3Click; EventHandler classToggle4Click = delegate(object sender, EventArgs e) { classInfo.Text = "<color=yellow><b>Ranger</b><n><n></color>Rangers use bows and crossbows as their weapons of choice. They are capable of making various potions and poultices using herbs.<n><n><b>Evolves to: </b><n><color=blue>Warden</color> or <color=blue>Bowmaster</color>."; }; rangerToggle.OnMouseClick += classToggle4Click; rangerToggle.OnMouseMove += classToggle4Click; #endregion #region GenderPanel Panel genderPanel = new Panel(game); genderPanel.MarginX = 30; tabbedPanel.AddTab("Gender", genderPanel); genderPanel.LayoutManager = new FlowLayout(FlowLayout.Mode.HORIZONTAL); OptionPanel genderPanel_optionPanel = new OptionPanel(game, new Rectangle(0, 0, 650, 240)); genderPanel.Add(genderPanel_optionPanel); genderPanel_optionPanel.LayoutManager = new FlowLayout(); maleToggle = new Toggle(game, "Male", 0, 0, 220, 40); genderPanel_optionPanel.Add(maleToggle); femaleToggle = new Toggle(game, "Female", 0, 0, 220, 40); genderPanel_optionPanel.Add(femaleToggle); Panel genderPanelRight = new Panel(game); genderPanelRight.Rect = new Rectangle(0, 0, 320, 300); genderPanel.Add(genderPanelRight); genderPanelRight.LayoutManager = new FlowLayout(); LabelArea genderInfo = new LabelArea(game); genderInfo.Rect = new Rectangle(0, 0, 320, 440); genderPanelRight.Add(genderInfo); genderInfo.FontCoreFileName = @"Fonts\Cambria"; genderInfo.FontSize = "16"; genderInfo.Text = ""; genderInfo.Background = new Image(game, @"Interface\LabelArea"); genderInfo.MarginX = 10; genderInfo.MarginY = 5; EventHandler maleToggleClick = delegate(object sender, EventArgs e) { genderInfo.Text = "<color=yellow><b>Male</b><n><n></color>While both genders are balanced in terms of skills, people may behave differently if the player character is male."; }; maleToggle.OnMouseClick += maleToggleClick; maleToggle.OnMouseMove += maleToggleClick; EventHandler femaleToggleClick = delegate(object sender, EventArgs e) { genderInfo.Text = "<color=yellow><b>Female</b><n><n></color>While both genders are balanced in terms of skills, people may behave differently if the player character is female."; }; femaleToggle.OnMouseClick += femaleToggleClick; femaleToggle.OnMouseMove += femaleToggleClick; #endregion #region AppearancePanel Panel appearancePanel = new Panel(game); appearancePanel.MarginX = 30; tabbedPanel.AddTab("Appearance", appearancePanel); appearancePanel.LayoutManager = new FlowLayout(FlowLayout.Mode.HORIZONTAL); int lastGender = -1, lastCircumstances = -1; EventHandler eh = delegate(object sender, EventArgs e) { if (genderPanel_optionPanel.SelectedIndex == lastGender && circumstancesPanel_optionPanel.SelectedIndex == lastCircumstances) return; lastGender = genderPanel_optionPanel.SelectedIndex; lastCircumstances = circumstancesPanel_optionPanel.SelectedIndex; appearancePanel.Clear(); portraitsPanel = new OptionPanel(game, new Rectangle(0, 0, 650, 240)); appearancePanel.Add(portraitsPanel); portraitsPanel.LayoutManager = new BoxLayout(5, 3); portraits = new Toggle[15]; for (int i = 0; i < 5; ++i) { portraits[i] = new Toggle(game, "", 0, 0, 120, 160); portraits[i].CorePictureFileTitle = @"Portraits\Human" + (genderPanel_optionPanel.SelectedIndex == 0 ? "Male" : "Female") + (i + 1); portraitsPanel.Add(portraits[i]); if (!(humanCommonerToggle.Pressed() || humanNobleToggle.Pressed() || humanBanditToggle.Pressed())) portraits[i].Enabled = false; else portraits[0].Set(); } for (int i = 5; i < 10; ++i) { portraits[i] = new Toggle(game, "", 0, 0, 120, 160); portraits[i].CorePictureFileTitle = @"Portraits\Elf" + (genderPanel_optionPanel.SelectedIndex == 0 ? "Male" : "Female") + (i - 4); portraitsPanel.Add(portraits[i]); if (!(elvenCommonerToggle.Pressed() || elvenInitiateToggle.Pressed() || elvenOutcastToggle.Pressed())) portraits[i].Enabled = false; else portraits[5].Set(); } for (int i = 10; i < 15; ++i) { portraits[i] = new Toggle(game, "", 0, 0, 120, 160); portraits[i].CorePictureFileTitle = @"Portraits\Gnome" + (genderPanel_optionPanel.SelectedIndex == 0 ? "Male" : "Female") + (i - 9); portraitsPanel.Add(portraits[i]); if (!(gnomeCommonerToggle.Pressed() || gnomeInventorToggle.Pressed() || gnomeThiefToggle.Pressed())) portraits[i].Enabled = false; else portraits[10].Set(); } Panel portraitPreviewPanel = new Panel(game, new Rectangle(0, 0, 340, 400)); appearancePanel.Add(portraitPreviewPanel); portraitPreview = new Image(game); portraitPreviewPanel.Add(portraitPreview); for (int i = 0; i < 15; ++i) { int y = i; portraits[i].OnMouseClick += delegate(object sender2, EventArgs e2) { int x = y; portraitPreview.Texture = Res.Get<Texture2D>(portraits[x].CorePictureFileTitle); portraitPreview.Rect = new Rectangle(portraitPreview.Rect.X, portraitPreview.Rect.Y, portraitPreview.Texture.Bounds.Width + 20, portraitPreview.Texture.Bounds.Height + 20); }; } }; eh(this, null); tabbedPanel.SetOpenTabAction(3, eh); #endregion #region FinalPanel Panel finalPanel = new Panel(game); finalPanel.MarginX = 30; tabbedPanel.AddTab("Finalize!", finalPanel); Panel namePanel = new Panel(game, new Rectangle(0, 0, 650, 40)); finalPanel.Add(namePanel); Label firstNameLabel = new Label(game, "First Name: ", "Cambria_12pt", Color.White); namePanel.Add(firstNameLabel); firstNameText = new TextBox(game); firstNameText.Rect = new Rectangle(firstNameLabel.Rect.Width + 10, -6, 300, 36); firstNameText.EnableSpace = false; firstNameText.BoundedTextWidth = true; namePanel.Add(firstNameText); Button bGenerateFirstName = new Button(game, "Generate", firstNameText.Rect.Width + firstNameLabel.Rect.Width + 20, -2, 218, 30); bGenerateFirstName.OnMouseClick = delegate(object sender, EventArgs e) { firstNameText.Text = generateFirstName(); }; namePanel.Add(bGenerateFirstName); Label lastNameLabel = new Label(game, "Last Name: ", "Cambria_12pt", Color.White); lastNameLabel.Rect = new Rectangle(0, firstNameLabel.Rect.Height + 10, 0, 0); namePanel.Add(lastNameLabel); lastNameText = new TextBox(game); lastNameText.Rect = new Rectangle(firstNameLabel.Rect.Width + 10, firstNameLabel.Rect.Height + 10 - 6, 300, 36); lastNameText.EnableSpace = false; lastNameText.BoundedTextWidth = true; namePanel.Add(lastNameText); bGenerateLastName = new Button(game, "Generate", firstNameText.Rect.Width + firstNameLabel.Rect.Width + 20, firstNameLabel.Rect.Height + 8, 218, 30); bGenerateLastName.OnMouseClick = delegate(object sender, EventArgs e) { lastNameText.Text = generateLastName(); }; namePanel.Add(bGenerateLastName); #region Recap Panel recapPanel = new Panel(game); EventHandler recap = delegate(object sender, EventArgs e) { recapPanel.Clear(); Image recapBackground = new Image(game, @"Interface\LabelArea"); recapBackground.Rect = new Rectangle(0, 70, 620, 320); recapPanel.Add(recapBackground); Image recapPortrait = new Image(game); eh(this, null); // update portraits (if circumstances or gender changed) recapPortrait.Texture = Res.Get<Texture2D>(portraits[portraitsPanel.SelectedIndex].CorePictureFileTitle); recapPortrait.Rect = new Rectangle(15, 80, 225, 300); recapPanel.Add(recapPortrait); Label recapCircumstances = new Label(game, getSelectedCircumstances(), 250, 80); recapCircumstances.Font = Res.Get<SpriteFont>(@"Fonts\Cambria_16pt_b"); recapCircumstances.FontColor = Color.White; recapPanel.Add(recapCircumstances); Label recapClass = new Label(game, "Level 1 " + getSelectedClass(), 250, 100); recapClass.Font = Res.Get<SpriteFont>(@"Fonts\Cambria_12pt_b"); recapClass.FontColor = Color.Yellow; recapPanel.Add(recapClass); string circText = ""; if (circumstancesInfo.Text != null && circumstancesInfo.Text != string.Empty) { int firstNewLine = circumstancesInfo.Text.IndexOf("<n>"); circText = circumstancesInfo.Text.Substring(firstNewLine).Substring(3, circumstancesInfo.Text.LastIndexOf("<n>") - firstNewLine); } string classText = ""; if (classInfo.Text != null && classInfo.Text != string.Empty) { int firstNewLine = classInfo.Text.IndexOf("<n>"); int lastNewLine = classInfo.Text.LastIndexOf("<n>"); classText = classInfo.Text.Substring(firstNewLine).Substring(6, lastNewLine - firstNewLine); classText = classText.Substring(0, classText.LastIndexOf("<n><n>")); } LabelArea recapCircumstancesInfo = new LabelArea(game, circText + classText, new Rectangle(250, 110, 370, 240)); recapPanel.Add(recapCircumstancesInfo); }; recap(this, null); finalPanel.Add(recapPanel); tabbedPanel.SetOpenTabAction(4, recap); #endregion Button bConfirm = new Button(game, "Confirm", 400, 400, 220, 40); finalPanel.Add(bConfirm); bConfirm.OnMouseClick = delegate(object sender, EventArgs e) { if (firstNameText.Text == null || firstNameText.Text.Trim() == string.Empty || lastNameText.Text == null || lastNameText.Text.Trim() == string.Empty) { if (firstNameText.Text == null || firstNameText.Text.Trim() == string.Empty) firstNameText.Text = generateFirstName(); if (lastNameText.Text == null || lastNameText.Text.Trim() == string.Empty) lastNameText.Text = generateLastName(); return; } game.MainCharacter = new Character(firstNameText.Text, lastNameText.Text, portraits[portraitsPanel.SelectedIndex].CorePictureFileTitle, getSelectedClass(), getSelectedCircumstances()); game.MainCharacter.Level = 1; game.Screen_InGame = new InGame(game); game.Screen_InGame.Process(); game.currentScreen = GameScreen.IN_GAME; }; #endregion Add(tabbedPanel); #endregion #region BackToMenu Button Button bCancel = new Button(game, "Back to Menu", 20, 520, 220, 40); bCancel.OnMouseClick = delegate(object sender, EventArgs e) { game.currentScreen = GameScreen.MAIN_MENU; }; Add(bCancel); #endregion }