-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathObstructedNode.cpp
More file actions
88 lines (73 loc) · 2.19 KB
/
Copy pathObstructedNode.cpp
File metadata and controls
88 lines (73 loc) · 2.19 KB
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
#include "ObstructedNode.h"
ObstructedNode::ObstructedNode () :Node()
{
required_item = REQUIRED_ITEM_NOT_SET;
description_success = 0;
description_failure = 0;
}
ObstructedNode::ObstructedNode (const ObstructedNode& to_copy)
:Node(to_copy),
required_item(to_copy.required_item),
description_success(to_copy.description_success),
description_failure(to_copy.description_failure)
{
}
ObstructedNode::~ObstructedNode ()
{
}
ObstructedNode& ObstructedNode::operator= (const ObstructedNode& to_copy)
{
if(&to_copy != this)
{
Node::operator= (to_copy);
required_item = to_copy.required_item;
description_success = to_copy.description_success;
description_failure = to_copy.description_failure;
}
return *this;
}
ObstructedNode::ObstructedNode (unsigned int description1,
unsigned int north1,
unsigned int south1,
unsigned int east1,
unsigned int west1,
char required_item1,
unsigned int description_failure1,
unsigned int description_success1)
:Node(description1,north1,south1,east1,west1,false)
{
required_item = required_item1;
description_success = description_success1;
description_failure = description_failure1;
}
void ObstructedNode::debugPrint () const
{
cout << 'O' << endl;
cout << "Description number is: " << getDescription() << endl;
cout << "North is: " << getNorth() << endl;
cout << "South is: " << getSouth() << endl;
cout << "East is: " << getEast() << endl;
cout << "West is: " << getWest() << endl;
cout << "required item is: " << required_item << endl;
cout << "description of success is: " << description_success << endl;
cout << "description of failure is: " << description_failure << endl;
}
Node* ObstructedNode::getClone () const
{
Node* pO = new ObstructedNode(*this);
return pO;
}
bool ObstructedNode::isObstructed () const
{
return true;
}
unsigned int ObstructedNode::getDescriptionFailure () const
{
assert(isObstructed () == true);
return description_failure;
}
unsigned int ObstructedNode::getDescriptionSuccess () const
{
assert(isObstructed () == true);
return description_success;
}