Advertisement
kompilainenn

Untitled

Jun 2nd, 2025
809
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.98 KB | None | 0 0
  1. class SnakesLadders
  2. {
  3.   private:
  4.  
  5.     int player1_position = 0;
  6.     int player2_position = 0;
  7.     int who_goes = 1;
  8.  
  9.     void check_position (int &position){
  10.       if (position > 100)
  11.           position = 200 - position;
  12.       switch (position){
  13.               case 2: position = 38; break;
  14.               case 7: position = 14; break;
  15.               case 8: position = 31; break;
  16.               case 15: position = 26; break;
  17.               case 21: position = 42; break;
  18.               case 28: position = 84; break;
  19.               case 36: position = 44; break;
  20.               case 51: position = 67; break;
  21.               case 71: position = 91; break;
  22.               case 78: position = 98; break;
  23.               case 87: position = 94; break;
  24.               case 16: position = 6; break;
  25.               case 46: position = 25; break;
  26.               case 49: position = 11; break;
  27.               case 62: position = 19; break;
  28.               case 64: position = 60; break;
  29.               case 74: position = 53; break;
  30.               case 89: position = 68; break;
  31.               case 92: position = 88; break;
  32.               case 95: position = 75; break;
  33.               case 99: position = 80; break;
  34.               default: break;
  35.           };
  36.       }
  37.    
  38.    
  39.   public:
  40.     SnakesLadders(){};
  41.     std::string play(int die1, int die2)
  42.     {
  43.       std::string message = "";
  44.       if (player2_position == 100 || player1_position == 100){
  45.         //player1_position = 0;
  46.         //player2_position = 0;
  47.         return "Game over!";
  48.       };
  49.       if (die1 != die2 && who_goes == 1){
  50.         who_goes = 2;
  51.         player1_position += (die1 + die2);
  52.         if (player1_position == 100)
  53.           return "Player 1 Wins!";
  54.         check_position(player1_position);
  55.         message = "Player 1 is on square " + std::to_string(player1_position);
  56.         return message;
  57.       }
  58.       else
  59.         if (die1 == die2 && who_goes == 1){
  60.           player1_position += (die1 + die2);
  61.           check_position(player1_position);
  62.           if (player1_position == 100)
  63.             return "Player 1 Wins!";
  64.           message = "Player 1 is on square " + std::to_string(player1_position);
  65.           return message;
  66.         }
  67.         else
  68.           if (die1 != die2 && who_goes == 2){
  69.             who_goes = 1;
  70.             player2_position += (die1 + die2);
  71.             if (player2_position == 100)
  72.               return "Player 2 Wins!";
  73.             check_position(player2_position);
  74.             message = "Player 2 is on square " + std::to_string(player2_position);
  75.             return message;
  76.           }
  77.           else
  78.             if (die1 == die2 && who_goes == 2){
  79.               player2_position += (die1 + die2);
  80.               if (player2_position == 100)
  81.                 return "Player 2 Wins!";
  82.               check_position(player2_position);
  83.               message = "Player 2 is on square " + std::to_string(player2_position);
  84.               return message;
  85.             };
  86.        
  87.     };
  88. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement