1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161
|
#include <iostream>
#include <cctype>
#include <string>
#include <cstdlib>
using namespace std;
void RollDiceAndMove(); //game rolls dice, and moves the player
void CheckChutes(); // game checks to see if player landed on chutes
void CheckLadders(); // game checks to see if player landed on ladders
void whoWon(); // game checkes to see if anyone has won yet
void welcomeMessage(); // shows display message, ans asks if they want to play
void goodbyeMessage(); // tells user goodbye after game
int main()
{
bool player1Turn = 0; //switches between player1 and player2's turns
string player1Name, player2Name; // gets names from both players
int answer = 'y'; // answer when asked if players want to play
int Player1Loc = 0, Player2Loc = 0; // location of the players
void welcomeMessage(int answer);
cout << "please enter your names: " << endl;
cout << "Player1: ";
cin >> player1Name;
cout << "Player2: ";
cin >> player2Name;
while(answer == 'y'){
//reset game variables
while(whoWon ( ) == 0){
if(Player2Loc != 100 && Player2Loc != 100){
cout << player1Name << ": Its your turn." << endl;
void RollDiceAndMove();
void CheckChutes();
void CheckLadders();
//number they are on
player1Turn = false;
}
else{
cout << player2Name << ": Its your turn." << endl;
void RollDiceAndMove();
void CheckChutes();
void CheckLadders();
player1Turn = true;
}
}
}
void goodbyeMessage();
return 0;
}
void welcomeMessage(int choice)
{
// shows welcome message, and asks if they want to play
// IN: choice
cout << "Welcome to the chutes and ladders game. Both " << endl;
cout << "players start at 0, and the first one to 100 " << endl;
cout << "wins the game. However, if you land on a chute," << endl;
cout << "your player will move down, but a ladder " << endl;
cout << "will move you up. Do you want to play?" << endl;
cout << "press 'y' to play, or 'n' to quit." << endl;
cin >> choice;
}
void goodbyeMessage()
{
// shows the goodbye message
cout << "Thanks for playing!" << endl;
}
void RollDiceAndMove (int Playerpos, int NewPos = 0, int RollDie = 0)
{
// rolls dice, and moves the player
switch(NewPos = 0)
{
for (int Player1pos = 0; Player1pos < 100; Player1pos++)
{
RollDie = rand() % 6 + 1;
Player1pos = 1;
NewPos = Player1pos + RollDie;
CheckChutes();
CheckLadders();
cout << "Your new location is: " << NewPos << endl;
break;
}
for (int Player2pos = 0; Player2pos < 100; Player2pos++)
{
RollDie = rand() % 6 + 1;
Player2pos = 1;
NewPos = Player2pos + RollDie;
CheckChutes();
CheckLadders();
cout << "Your new location is: " << NewPos << endl;
break;
}
}
}
void whoWon(int NewPos)
{
// determines if user has won, when their location is at 100
int RollDiceAndMove();
if (NewPos == 100){
cout << "You won!!" << endl;
}
}
void CheckChutes (int NewPos)
{
//checks if chutes, if yes, then moves player backwards
if (NewPos == 98)
NewPos = 78;
else if (NewPos == 95)
NewPos = 75;
else if (NewPos == 93)
NewPos = 70;
else if (NewPos == 87)
NewPos = 24;
else if (NewPos == 64)
NewPos = 60;
else if (NewPos == 62)
NewPos = 19;
else if (NewPos == 56)
NewPos = 53;
else if (NewPos == 49)
NewPos = 11;
else if (NewPos == 48)
NewPos = 26;
else if (NewPos == 16)
NewPos = 6;
else
NewPos = NewPos;
cout << "You landed on chutes, and have to move down" << endl;
}
void CheckLadders (int NewPos)
{
// checks if ladders. if yes, moves player forwards
if (NewPos == 1)
NewPos = 38;
else if (NewPos == 4)
NewPos = 14;
else if (NewPos == 9)
NewPos = 21;
else if (NewPos == 23)
NewPos = 44;
else if (NewPos == 28)
NewPos = 84;
else if (NewPos == 36)
NewPos = 44;
else if (NewPos == 51)
NewPos = 66;
else if (NewPos == 71)
NewPos = 90;
else if (NewPos == 80)
NewPos = 100;
else
NewPos = NewPos;
cout << "You landed on ladders, and get to move up the board!" << endl;
}
|