All pastes #707668 Raw Edit

game

public text v1 · immutable
#707668 ·published 2007-09-23 04:50 UTC
rendered paste body
#include "map.h"
#include "player.h"
#include <cstdlib>
#include <ctime>
#include <iostream>
using namespace std;

int main()
{
    srand(time(0));
    
    map gamemap;
    
    player mainplayer;
    
    mainplayer.createclass();
    
    //begim adventure
    bool done = false;
    while(!done)
    {
                //each loop cycle outputs the players position and a selection menu
                
                gamemap.printplayerpos();
                
                int selection = 1;
                cout << "1) Move  2) Rest  3) View Stats  4) Quit: ";
                cin >> selection;
                
                monster* monster = 0;
                switch(selection)
                {
                        case 1:
                             gamemap.moveplayer();
                             
                             monster = gamemap.checkrandomencounter();
                             
                             if(monster != 0)
                             {
                                  while(true)
                                  {
                                             mainplayer.displayhitpoints();
                                             monster->displayhitpoints();
                                             cout << endl;
                                             
                                             bool runaway = mainplayer.attack(*monster);
                                             
                                             if(runaway)
                                             {
                                                        break;
                                             }
                                             if(monster->isdead())
                                             {
                                                    mainplayer.victory(monster->getxp());
                                                    mainplayer.levelup();
                                                    break;
                                             }
                                             monster->attack(mainplayer);
                                             
                                             if(mainplayer.isdead())
                                             {
                                                    mainplayer.gameover();
                                                    done = true;
                                                    break;
                                             }
                                  }
                                  
                                  delete monster;
                                  monster = 0;
                             }
break;

      case 2:
           mainplayer.rest();
           break;
      case 3:
           mainplayer.viewstats();
      case 4:
           done = true;
           break;
           }
      }

system("PAUSE");
return EXIT_SUCCESS;
}