MCPcopy Create free account
hub / github.com/OpenFodder/openfodder / cPosition

Class cPosition

Source/Position.hpp:23–110  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

21 */
22
23class cPosition {
24 public:
25 int mX, mY;
26
27 public:
28 cPosition() : mX( 0 ), mY( 0 ) {}
29 cPosition( unsigned int pX, unsigned int pY ) : mX( pX ), mY( pY ) {}
30
31 void Set( unsigned int pX, unsigned int pY ) { mX = pX; mY = pY; }
32 void Clear() { mX = 0; mY = 0; }
33
34 int distanceTo(const cPosition& pPosition) const {
35
36 int X = mX - pPosition.mX;
37 int Y = mY - pPosition.mY;
38
39 if (X < 0)
40 X = -X;
41 if (Y < 0)
42 Y = -Y;
43
44 return X + Y;
45 }
46
47 bool operator== (const cPosition& pPosition) const {
48
49 return pPosition.mX == mX && pPosition.mY == mY;
50
51 }
52
53 bool operator!= (const cPosition& pPosition) const {
54
55 return !(*this == pPosition);
56
57 }
58 cPosition& operator+= (const cPosition& pPosition) {
59
60 mX += pPosition.mX;
61 mY += pPosition.mY;
62
63 return *this;
64 }
65
66 cPosition& operator-= (const cPosition& pPosition) {
67
68 mX -= pPosition.mX;
69 mY -= pPosition.mY;
70
71 return *this;
72 }
73
74 cPosition operator-(const cPosition& pPosition) const {
75
76 return cPosition( mX - pPosition.mX, mY - pPosition.mY );
77 }
78
79 cPosition operator+(const cPosition& pPosition) const {
80

Callers 3

operator-Method · 0.70
operator+Method · 0.70
EventCheckMethod · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected