mirror of
https://github.com/PrimeDecomp/prime.git
synced 2025-12-10 10:27:40 +00:00
35 lines
857 B
C++
35 lines
857 B
C++
#ifndef _CVECTOR2I
|
|
#define _CVECTOR2I
|
|
|
|
#include "Kyoto/Streams/CInputStream.hpp"
|
|
#include "types.h"
|
|
|
|
class CVector2i {
|
|
public:
|
|
CVector2i(int x = 0, int y = 0);
|
|
CVector2i(CInputStream& in) {
|
|
mX = in.ReadLong();
|
|
mY = in.ReadLong();
|
|
}
|
|
|
|
int GetX() const { return mX; }
|
|
void SetX(const int x) { mX = x; }
|
|
int GetY() const { return mY; }
|
|
void SetY(const int y) { mY = y; }
|
|
|
|
int& operator[](int idx) { return *(&mX + idx); }
|
|
const int& operator[](int idx) const { return *(&mX + idx); }
|
|
|
|
private:
|
|
int mX;
|
|
int mY;
|
|
};
|
|
|
|
CVector2i operator+(const CVector2i& lhs, const CVector2i& rhs);
|
|
CVector2i operator+(const CVector2i& lhs, const CVector2i& rhs);
|
|
bool operator==(const CVector2i& lhs, const CVector2i& rhs);
|
|
CVector2i operator*(const CVector2i& lhs, int rhs);
|
|
CVector2i operator/(const CVector2i& lhs, int rhs);
|
|
|
|
#endif // _CVECTOR2I
|