示例#1
0
        public void Update(InputHandler input, StateHandler sh)
        {
            for (int i = 0; i < saveFileCount; i++)
            {
                this.playButtons[i].Update(input);
                this.deleteButtons[i].Update(input);

                if (deleteButtons[i].clicked)
                {
                    this.deleteButtons[i].clicked = false;
                    File.Delete(this.saveDir + saveNames[i] + ".ah");
                    this.Reload();
                }

                if (playButtons[i].clicked)
                {
                    this.playButtons[i].clicked = false;
                    sh.setCurState(State.GAME);
                    ((GameState)sh.curState).UpdateSaveData(PlayerSaver.LoadPlayerSaveFile(saveNames[i]));
                }
            }

            backButton.Update(input);

            if (backButton.clicked)
            {
                backButton.clicked = false;
                ((MenuState)sh.curState).curScreen = "main";
            }
        }
示例#2
0
        //Below: Specific update and draw methods for each step of the World Creation Process


        private void UpdateCharacterCreation(InputHandler input, StateHandler sh)
        {
            nameBox.Update(input);
            genderBoxes.Update(input);
            hairstyleList.Update(input);
            manaColorSlider.Update(input);
            skinColorSlider.Update(input);
            hairColorSlider.Update(input);
            shirtColorSlider.Update(input);

            charPrev.Update(genderBoxes.curSelectedID, hairstyleList.curElementID, manaColorSlider.curColor, skinColorSlider.curColor, hairColorSlider.curColor, shirtColorSlider.curColor);

            nextButton1.Update(input);
            backButton1.Update(input);

            if (backButton1.clicked)
            {
                backButton1.clicked = false;
                ((MenuState)sh.curState).curScreen = "main";
            }

            if (nextButton1.clicked)
            {
                nextButton1.clicked = false;
                this.curStep        = "stats";
            }
        }
示例#3
0
        private void UpdateCharStats(InputHandler input, StateHandler sh)
        {
            nextButton2.Update(input);
            backButton2.Update(input);

            for (int i = 0; i < statCount; i++)
            {
                plusBoxes[i].Update(input);
                minusBoxes[i].Update(input);

                if (plusBoxes[i].clicked)
                {
                    plusBoxes[i].clicked = false;
                    if (remainingPoints > 0)
                    {
                        statValues[i]++;
                        remainingPoints--;
                    }
                }
                else if (minusBoxes[i].clicked)
                {
                    minusBoxes[i].clicked = false;
                    if (statValues[i] > 10)
                    {
                        statValues[i]--;
                        remainingPoints++;
                    }
                }


                statIcons[i].Update(input);
            }

            if (backButton2.clicked)
            {
                backButton2.clicked = false;
                this.curStep        = "character";
            }

            if (nextButton2.clicked)
            {
                nextButton2.clicked = false;
                if (remainingPoints == 0)
                {
                    PlayerSaver.SaveNewGame(new CharData(this.nameBox.text, this.genderBoxes.curSelectedID, this.hairstyleList.curElementID,
                                                         this.manaColorSlider.curColor, this.skinColorSlider.curColor, this.hairColorSlider.curColor, this.shirtColorSlider.curColor),
                                            this.statValues);

                    sh.setCurState(State.GAME);
                    ((GameState)sh.curState).UpdateSaveData(PlayerSaver.LoadPlayerSaveFile(this.nameBox.text));
                }
            }
        }