Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
Download

CSC112 Spring 2016 Examples

2370 views
1
#include <iostream>
2
#include "earthPaca.h"
3
4
using namespace std;
5
6
7
//earthPaca::earthPaca(unsigned int pow) : alpaca(pow) {}
8
9
std::string
10
cwillis::earthPaca::name() {
11
return nickName;
12
}
13
14
//automate
15
void
16
cwillis::earthPaca::act(Alpaca* opponent) {
17
18
if(getHp() > 90 ) {
19
switch(rand()%4) {
20
case 0:
21
earthquake(opponent);
22
break;
23
case 1:
24
fossilize();
25
break;
26
case 2:
27
rockToss(opponent);
28
break;
29
case 3:
30
bury(opponent);
31
break;
32
}
33
} else if (getHp() > 60 and getHp() <= 90) {
34
if (opponent->getStatus() != STUNNED) {
35
bury(opponent);
36
}
37
else {
38
earthquake(opponent);
39
}
40
41
} else if (getHp() > 30 and getHp() >0) {
42
rockToss(opponent);
43
}
44
}
45
46
//moves
47
void
48
cwillis::earthPaca::earthquake(Alpaca* opponent) {
49
cout << name() << " splits the earth with its mighty hooves." << endl;
50
attack(opponent, 20);
51
}
52
53
void
54
cwillis::earthPaca::fossilize() {
55
cout << name() << " hardens itself." << endl;
56
increaseDefense(10);
57
}
58
59
void
60
cwillis::earthPaca::rockToss(Alpaca* opponent) {
61
cout << name() << " hurls a rock." << endl;
62
attack(opponent, 10);
63
}
64
65
void
66
cwillis::earthPaca::bury(Alpaca* opponent) {
67
cout << name() << " pulls its opponent underground." << endl;
68
stun(opponent, 10);
69
}
70
71
72
73