Ejemplo n.º 1
0
        private void UpdateWords(GameTime gameTime)
        {
            if ((gridRenderer.grid.validWords.Count > 0)&& (wordUpdateTrigger > new TimeSpan(0,0,0,0,500)))
            {
                if (Shorewood.gameplayTimer.IsStarted)
                {
                    Shorewood.gameplayTimer.Stop();
                }

                WordBuilder wordCheck = gridRenderer.grid.validWords.Dequeue();//gridRenderer.grid.validWords[gridRenderer.grid.validWords.Count - 1];
                levelManager.CheckIfWordMeetsGoal(wordCheck, true);
                WordBuilder word = wordCheck;
                word = gridRenderer.grid.ScoreValidWord(word);
                Shorewood.foundWordAnimator.Add(word, TimeSpan.Zero);

                garbageLetters.AddRange(word.letters);
                Shorewood.goalRenderer.ForceUpdateOnce();

                gridRenderer.StartRipple(Vector2.Zero, Vector2.Zero, (float)gameTime.TotalGameTime.TotalMilliseconds, 250);

                wordUpdateTrigger = new TimeSpan();
            }
            else if (gridRenderer.grid.validWords.Count == 0)
            {
                gameplayState = NormalGameplayState.NoMoreWords;
            }
        }
Ejemplo n.º 2
0
        protected virtual void ChangeCurrentLetterToRandom(GameTime now)
        {
            Letter letter = new Letter();
            letter = nextLetter;
            letter.gridPosition.X = (float)Math.Round(gridRenderer.grid.width / 2);
            letter.gridPosition.Y = 0;
            gridRenderer.grid.PositionLetter((int)letter.gridPosition.X, (int)letter.gridPosition.Y, letter);

            currentLetter = letter;
            gridRenderer.currentLetter = currentLetter;

            if (now != null)
            {
                lastLetterUpdate = (float)now.ElapsedGameTime.TotalMilliseconds;
            }
            nextLetter = letterSet.GetRandomLetter();
            gridRenderer.nextLetter = nextLetter;
            gameplayState = NormalGameplayState.CurrentLetterActive;
        }
Ejemplo n.º 3
0
 private void HandleLetterDrop(Letter letter, GameTime gameTime)
 {
     gridRenderer.grid.ResetGlowers();
     gridRenderer.grid.SetLetter(letter.gridPosition.X, letter.gridPosition.Y, letter);
     previousCurrentLetterPosition = gridRenderer.grid.GetLetter(letter.gridPosition.X, letter.gridPosition.Y).position;
     gameplayState = NormalGameplayState.WordSearch;
     Shorewood.clink.Play();
     //ChangeCurrentLetterToRandom(gameTime);
 }
Ejemplo n.º 4
0
 public void UpdateGoals(GameTime gameTime)
 {
     gameplayState = NormalGameplayState.CurrentLetterActive;
     Shorewood.goalRenderer.ForceUpdateOnce();
     //gridRenderer.grid.CheckForChanges();
 }
Ejemplo n.º 5
0
        public void Reset(GameTime gameTime)
        {
            Shorewood.freeSpellMode.Hide();
            PredictiveTextAnalyzer.Stop();
            PredictiveTextAnalyzer.ClearSuggestedLetters();
            letterSet.Reset();
            Shorewood.levelManager.Reset();
            Shorewood.scoreBox.Reset();
            Shorewood.recentWords.Reset();
            Shorewood.gameplayTimer.Reset();
            Shorewood.goalRenderer.ForceUpdateOnce();

            gridRenderer.grid.ClearGrid();
            isGameOver = false;
            Shorewood.gameState = GameState.ResettingNormalGameplay;
            gameplayState = NormalGameplayState.GameOver;
            currentLetter = Letter.EmptyLetter;
            lastLetterUpdate = 0;
            Shorewood.Is1337Compliant = false;
        }
Ejemplo n.º 6
0
 public void OnTrigger(object sender, ButtonFireEventArgs args)
 {
     if (!args.previouslyDown && gameplayState == NormalGameplayState.CurrentLetterActive
         && !Shorewood.dialogManager.IsActive)
     {
         if (gridRenderer.grid.validWords.Count > 0)
         {
             gameplayState = NormalGameplayState.FindingWords;
         }
     }
 }
Ejemplo n.º 7
0
 public void Hide()
 {
     this.Enabled = false;
     this.gridRenderer.Visible = false;
     this.gridRenderer.Enabled = false;
     Shorewood.scoreBox.Visible = false;
     Shorewood.scoreBox.Enabled = false;
     Shorewood.recentWords.Enabled = false;
     Shorewood.recentWords.Visible = false;
     Shorewood.timerRenderer.Visible = false;
     Shorewood.timerRenderer.Enabled = false;
     Shorewood.goalRenderer.Visible = false;
     Shorewood.goalRenderer.Enabled = false;
     Shorewood.freeSpellMode.Hide();
     PredictiveTextAnalyzer.Stop();
     gameplayState = NormalGameplayState.GameOver;
 }
Ejemplo n.º 8
0
 public void GameOver(GameTime gameTime, object nothing)
 {
     isGameOver = true;
     Shorewood.gameState = GameState.GameOver;
     int score = gridRenderer.grid.currentScore;
     TimeSpan duration = Shorewood.gameplayTimer.ElapsedTime;
     ScoreEntry highScore = new ScoreEntry();
     highScore.Difficulty = Shorewood.Difficulty;
     highScore.Duration = duration;
     highScore.Score = Shorewood.scoreBox.CurrentScore;
     #if XBOX
     if ((Gamer.SignedInGamers.Count > 0) && Gamer.SignedInGamers[Shorewood.mainPlayer] != null)
     {
         highScore.GamerTag = Gamer.SignedInGamers[Shorewood.mainPlayer].Gamertag;
         GamerEntry gamer = new GamerEntry();
         gamer.GamerPicture = Gamer.SignedInGamers[Shorewood.mainPlayer].GetProfile().GamerPicture;
         gamer.gamerTag = highScore.GamerTag;
         if (!Shorewood.storage.HighScores.Gamers.Contains(gamer))
         {
             Shorewood.storage.HighScores.Gamers.Add(gamer);
         }
     }
     #else
     highScore.GamerTag = "Zikomo";
     #endif
     List<ScoreEntry> scores = Shorewood.storage.HighScores.GetList(Shorewood.Difficulty);
     scores.Add(highScore);
     scores.Sort();
     if (scores.Count > 10)
     {
         scores.RemoveRange(10, scores.Count - 10);
     }
     Shorewood.storage.SaveHighScoresToDevice();
     gameplayState = NormalGameplayState.GameOver;
 }