File size: 2,191 Bytes
0ef7a64 |
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 |
/*
Name:Wong Pui Shan
Sdutent ID:52611804
program: AScISD
Name: HAR Chiu Kwong Samson
Sdutent ID:52629360
program: AScISD
Name: LAM Cheuk Man
Sdutent ID:52621140
program: AScISD
Name:KO Jeffrey KO
Sdutent ID:525 695 30
program: AScISD
*/
#include "Game.h"
#include "Maze.h"
#include "Utilities.h"
#include<iostream>
using namespace std;
Game::Game()
{
level = 1;
life = 3;
point = 0;
loopGame = true;
addLife = 0;
}
void Game::setPoint(int x)
{
point += x;
}
void Game::print1()
{
//show the level and Game Point
// Extra Life when user meet more than 8888 points
cout << "Level: " << level << "\tGP:" << point << endl;
bool check = false;
if(point > 8888 && addLife==0 )
{
check = true;
while(check)
{
extraLife();
check = false;
addLife++;
}
}
}
void Game::print2()
{
cout << "Life left: " << life << " ";
switch(level){
case 1:
cout << "Fruit:Cherry " << endl;
break;
case 2:
cout << "Fruit:Strayberry " << endl;
break;
case 3:
cout << "Fruit:Orange " << endl;
break;
}
}
int Game::getPoint()
{
return point;
}
void Game::Move(Maze m,Utilities u)
{
u.gotoXY(0,18);
u.changeColour(FOREGROUND_WHITE);
Game::print1();
Game::print2();
u.gotoXY(0,20);
cout << " ";
u.gotoXY(0,20);
cout << "Remain Dot: "<< m.getTotalDot() << endl;
cout << "Press p to pause";
u.changeColour(FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE);
}
int Game::GetLife(){
return life;
}
void Game::setLife()
{
life = 3;
}
void Game::extraLife()
{
life++;
}
bool Game::getLoopGameBool()
{
return loopGame;
}
void Game::setLoopGameBool(bool temp)
{
loopGame = temp;
}
void Game::checkForUpLevel(Maze &m)
{
if (m.getTotalDot()==0)
{
setGameLevel();
setLoopGameBool(false);
}
}
void Game::setGameLevel()
{
level++;
}
int Game::getGameLevel()
{
return level;
}
void Game:: setReplayBool(bool temp)
{
replay = temp;
}
bool Game::getReplayBool()
{
return replay;
}
void Game::gameReset()
{
level = 1;
life = 3;
point = 0;
loopGame = true;
}
|