Boss.cpp 4 KB
Newer Older
Kameron Kinsey's avatar
Kameron Kinsey committed
1 2 3 4 5 6 7 8 9 10 11
/******************************************************************************
 * 
 *
 *  Fucnction File for the Boss Class
 *  By: Kameron Kinsey
 *
 *
 *
 *
 */ 
 
Kameron Kinsey's avatar
Kameron Kinsey committed
12
#include "Boss.h"
Aaron Sturtevant's avatar
t  
Aaron Sturtevant committed
13 14 15 16
#include <string>
#include <iostream>
using namespace std;

Kameron Kinsey's avatar
Kameron Kinsey committed
17
void Boss::summonBoss(int floorNum) {
Aaron Sturtevant's avatar
t  
Aaron Sturtevant committed
18
    
Kameron Kinsey's avatar
Kameron Kinsey committed
19
    switch(floorNum) {
Aaron Sturtevant's avatar
t  
Aaron Sturtevant committed
20 21
        case 1:
            cout << "A Minotaur stands before you, Warhammer raised and nose pierced" << endl;
Aaron Sturtevant's avatar
Aaron Sturtevant committed
22
            break;
Aaron Sturtevant's avatar
t  
Aaron Sturtevant committed
23 24
        case 2:
            cout << "The Pop-Culture representation of Death Itself stands before you, scythe poised and hungry" << endl;
Aaron Sturtevant's avatar
Aaron Sturtevant committed
25
            break;
Aaron Sturtevant's avatar
t  
Aaron Sturtevant committed
26 27
        case 3:
            cout << "A Dragon stands before you. C'mon, you had to see this coming" << endl;
Aaron Sturtevant's avatar
Aaron Sturtevant committed
28
            break;
Kameron Kinsey's avatar
Kameron Kinsey committed
29 30 31
        case 4:
            cout << "A hooded figure stands before you, dice in one hand, and a rulebook in the other. " << endl
                 << "You cannot escape the power of the Dungen Master." << endl;
Aaron Sturtevant's avatar
Aaron Sturtevant committed
32
            break;
Aaron Sturtevant's avatar
t  
Aaron Sturtevant committed
33 34 35
    }
}

Kameron Kinsey's avatar
Kameron Kinsey committed
36 37

int Boss::getFight(int floorNum) {
Aaron Sturtevant's avatar
t  
Aaron Sturtevant committed
38
    
Kameron Kinsey's avatar
Kameron Kinsey committed
39 40 41 42 43 44 45 46 47 48 49 50
    switch(floorNum) {
        case 1:
            // Minotaur
            return fight = 20;
        case 2:
            // Death
            return fight = 17;
        case 3:
            // Dragon
            return fight = 15;
        case 4:
            // Dungen Master
Aaron Sturtevant's avatar
Aaron Sturtevant committed
51
            return fight = 20;
Kameron Kinsey's avatar
Kameron Kinsey committed
52 53 54 55
    }
}

int Boss::getTalk(int floorNum) {
Aaron Sturtevant's avatar
t  
Aaron Sturtevant committed
56
    
Kameron Kinsey's avatar
Kameron Kinsey committed
57 58 59 60 61 62 63 64 65 66 67 68
    switch(floorNum) {
        case 1:
            // Minotaur
            return talk = 15;
        case 2:
            // Death
            return talk = 17;
        case 3:
            // Dragon
            return talk = 20;
        case 4:
            // Dungen Master
Aaron Sturtevant's avatar
Aaron Sturtevant committed
69
            return talk = 20;
Kameron Kinsey's avatar
Kameron Kinsey committed
70
    }
Kameron Kinsey's avatar
Kameron Kinsey committed
71 72
}

Aaron Sturtevant's avatar
Aaron Sturtevant committed
73
void Boss::bossResponse(int floorNum, bool playerWon) {
Kameron Kinsey's avatar
Kameron Kinsey committed
74 75 76 77 78 79
    
    if (playerWon == true) {
        switch(floorNum) {
            case 1:
                // Minotaur
                cout << "The Minotaur drops its hammer, a bellow escapes its lips as it falls to the floor. Defeated" << endl;
Aaron Sturtevant's avatar
Aaron Sturtevant committed
80
                break;
Kameron Kinsey's avatar
Kameron Kinsey committed
81 82 83
            case 2:
                // Death
                cout << "Death drops its scythe, as it disappears into the Soul Realm. Defeated" << endl;
Aaron Sturtevant's avatar
Aaron Sturtevant committed
84
                break;
Kameron Kinsey's avatar
Kameron Kinsey committed
85 86 87
            case 3:
                // Dragon
                cout << "The Dragon falls in a bout of flame, its fighting 'til its last breath. Defeated" << endl;
Aaron Sturtevant's avatar
Aaron Sturtevant committed
88
                break;
Kameron Kinsey's avatar
Kameron Kinsey committed
89 90 91 92 93
            case 4:
                // Dungen Master
                cout << "\"How did you defeat me?\" The Dungen Master exclaims. \"I had everyting prepared with utmost care.\"" << endl
                     << "\"Perfectly laid traps, well executed enemies, but somehow you still beat me.\"" << endl
                     << "\"Take it then, if you are willing to endure the consequences. . .\"" << endl;
Aaron Sturtevant's avatar
Aaron Sturtevant committed
94 95
                break;            
            
Kameron Kinsey's avatar
Kameron Kinsey committed
96
        }
Kameron Kinsey's avatar
Kameron Kinsey committed
97 98 99 100 101
    } else {
        switch(floorNum) {
            case 1:
                // Minotaur
                cout << "The Minotaur swings its hammer, it bellows with pleasure at your pain" << endl;
Aaron Sturtevant's avatar
Aaron Sturtevant committed
102
                break;
Kameron Kinsey's avatar
Kameron Kinsey committed
103 104 105
            case 2:
                // Death
                cout << "Death brings your soul closer to the reaping" << endl;
Aaron Sturtevant's avatar
Aaron Sturtevant committed
106
                break;    
Kameron Kinsey's avatar
Kameron Kinsey committed
107 108 109
            case 3:
                // Dragon
                cout << "The Dragon lets loose a fountain of flame onto your sorry form" << endl;
Aaron Sturtevant's avatar
Aaron Sturtevant committed
110
                break;
Kameron Kinsey's avatar
Kameron Kinsey committed
111 112 113
            case 4:
                // Dungen Master
                cout << "With a roll of the die and a smirk, you take damage" << endl;
Aaron Sturtevant's avatar
Aaron Sturtevant committed
114
                break;
Kameron Kinsey's avatar
Kameron Kinsey committed
115
        }
Kameron Kinsey's avatar
Kameron Kinsey committed
116 117
    }
}
Kameron Kinsey's avatar
Kameron Kinsey committed
118

119
void Boss::giveBossItems(int floorNum, Inventory &inventory) {
Kameron Kinsey's avatar
Kameron Kinsey committed
120 121 122 123
    
    switch(floorNum) {
        case 1:
            // Minotaur
Aaron Sturtevant's avatar
Aaron Sturtevant committed
124 125
            inventory.gainItem("Cow Hammer", 10, -5);
            break;
Kameron Kinsey's avatar
Kameron Kinsey committed
126 127
        case 2:
            // Death
Aaron Sturtevant's avatar
Aaron Sturtevant committed
128 129
            inventory.gainItem("Death Svythe", 7, 7);
            break;
Kameron Kinsey's avatar
Kameron Kinsey committed
130 131
        case 3:
            // Dragon
Aaron Sturtevant's avatar
Aaron Sturtevant committed
132 133
            inventory.gainItem("Dragon Heart", 0, 10);
            break;
Kameron Kinsey's avatar
Kameron Kinsey committed
134 135
        case 4:
            // Dungen Master
Aaron Sturtevant's avatar
Aaron Sturtevant committed
136 137
            inventory.gainItem("Maguffin of Vague Desireability", 15, 15);
            break;
Kameron Kinsey's avatar
Kameron Kinsey committed
138 139
    }
}