コード例 #1
0
        private void btnContinue_Click(object sender, RoutedEventArgs e)
        {
            // Validate the current step before setting it to the next step.
            string message;

            if (!this.ValidateStep(this.Step, out message))
            {
                MessageBox.Show(message, "Validation Error", MessageBoxButton.OK);
            }
            else
            {
                CreateCharacterWizardStep step = this.Step;
                switch (this.Step)
                {
                case CreateCharacterWizardStep.Gender:
                    step = CreateCharacterWizardStep.Name;
                    break;

                case CreateCharacterWizardStep.Name:
                    if (!ctlName.IsNameAvailable)
                    {
                        this.Cursor = Cursors.Wait;
                        _nameCheckCauseAdvanceStep      = true;
                        _supressSuccessNameCheckMessage = true;
                        ctlName.CheckName();
                    }
                    else
                    {
                        step = CreateCharacterWizardStep.Race;
                    }
                    break;

                case CreateCharacterWizardStep.Race:
                    step = CreateCharacterWizardStep.Attributes;
                    break;

                case CreateCharacterWizardStep.Attributes:
                    step = CreateCharacterWizardStep.SkillGroups;
                    break;

                case CreateCharacterWizardStep.SkillGroups:
                    step = CreateCharacterWizardStep.Review;
                    break;

                case CreateCharacterWizardStep.Skills:
                    step = CreateCharacterWizardStep.Review;
                    break;

                case CreateCharacterWizardStep.Review:
                    // Create Character.
                    break;
                }
                this.Step = step;
            }
        }
コード例 #2
0
        void CreateCharacterWizardScreen_Loaded(object sender, RoutedEventArgs e)
        {
            this.Avatar = new Avatar();
            this.Step   = CreateCharacterWizardStep.Gender;

            ctlRace.SetDefaultSelection();

            _diagCreateCharacterContent = new LoadingCharactersDialog();
            diagCreateCharacter.DialogContent.Add(_diagCreateCharacterContent);

            ctlSkills.MaximumSkillValue = 32;
            ctlSkills.SkillChanged     += new SkillChangedEventHandler(ctlSkills_SkillChanged);
        }
コード例 #3
0
 private void ctlName_NameCheckComplete(NameCheckEventArgs e)
 {
     this.Cursor = Cursors.Arrow;
     if (e.IsAvailable)
     {
         if (!_supressSuccessNameCheckMessage)
         {
             MessageBox.Show(e.Message, "Character Name Available", MessageBoxButton.OK);
         }
         if (_nameCheckCauseAdvanceStep)
         {
             _nameCheckCauseAdvanceStep = false;
             this.Step = CreateCharacterWizardStep.Race;
         }
     }
     else
     {
         MessageBox.Show(e.Message, "Unavailable Character Name", MessageBoxButton.OK);
         this.Step = CreateCharacterWizardStep.Name;
     }
 }
コード例 #4
0
        private bool ValidateStep(CreateCharacterWizardStep step, out string message)
        {
            // Validate current step.
            switch (step)
            {
            case CreateCharacterWizardStep.Gender:
                break;

            case CreateCharacterWizardStep.Name:
                if (String.IsNullOrEmpty(this.Avatar.Name))
                {
                    message = "Please enter a first name for your new Character.";
                    return(false);
                }
                break;

            case CreateCharacterWizardStep.Attributes:
                if (ctlAttributes.AttributePoints != 0)
                {
                    message = "You still have Attribute Points left over, you need to use these before you can continue with the Character Creation process.";
                    return(false);
                }
                break;

            case CreateCharacterWizardStep.Race:
                break;

            case CreateCharacterWizardStep.SkillGroups:
                break;

            case CreateCharacterWizardStep.Skills:
                break;

            case CreateCharacterWizardStep.Review:
                break;
            }
            message = String.Empty;
            return(true);
        }
コード例 #5
0
        private void btnBack_Click(object sender, RoutedEventArgs e)
        {
            CreateCharacterWizardStep step = this.Step;

            switch (this.Step)
            {
            case CreateCharacterWizardStep.Gender:
                ScreenManager.SetScreen(new HomeScreen());
                return;

            case CreateCharacterWizardStep.Name:
                _supressSuccessNameCheckMessage = false;
                step = CreateCharacterWizardStep.Gender;
                btnBack.Visibility = Visibility.Visible;
                break;

            case CreateCharacterWizardStep.Race:
                step = CreateCharacterWizardStep.Name;
                break;

            case CreateCharacterWizardStep.Attributes:
                step = CreateCharacterWizardStep.Race;
                break;

            case CreateCharacterWizardStep.SkillGroups:
                step = CreateCharacterWizardStep.Attributes;
                break;

            case CreateCharacterWizardStep.Skills:
                step = CreateCharacterWizardStep.SkillGroups;
                break;

            case CreateCharacterWizardStep.Review:
                step = CreateCharacterWizardStep.SkillGroups;
                break;
            }
            this.Step = step;
        }
コード例 #6
0
 private void btnThief_Click(object sender, RoutedEventArgs e)
 {
     // Set Thief Skills, advance to skills.
     this.LoadSkills(Game.SkillGroups["Thief"]);
     this.Step = CreateCharacterWizardStep.Skills;
 }
コード例 #7
0
 private void btnFreeForm_Click(object sender, RoutedEventArgs e)
 {
     this.LoadSkills(null);
     this.Step = CreateCharacterWizardStep.Skills;
 }