Advertisement
Cinestra

Attempt #2 at moveRabbits

Feb 7th, 2023
1,030
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.81 KB | None | 0 0
  1. void Arena::moveRabbits()
  2. {
  3.     // Move all rabbits
  4.     // TODO:  Move each rabbit.  Mark the player as dead if necessary.
  5.     //        Deallocate any dead dynamically allocated rabbit.
  6.  
  7.     // Another turn has been taken
  8.  
  9.     int i = 0;
  10.  
  11.     while (i < m_nRabbits)
  12.     {
  13.         Rabbit* pointer_rabbit = m_rabbits[i];
  14.         pointer_rabbit->move();
  15.  
  16.         if (pointer_rabbit->isDead())
  17.         {
  18.             delete pointer_rabbit;
  19.             m_rabbits[i] = m_rabbits[m_nRabbits - 1];
  20.             m_nRabbits--;
  21.         }
  22.  
  23.         else if (pointer_rabbit->isDead() == false)
  24.         {
  25.             i++;
  26.         }
  27.  
  28.         if (m_player->row() == pointer_rabbit->row() && m_player->col() == pointer_rabbit->col())
  29.         {
  30.             m_player->setDead();
  31.         }
  32.     }
  33.  
  34.     m_turns++;
  35. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement