Show geom.h syntax highlighted
/**
**************************************************************************************
*Palisma - Secrets of the Illuminati is an open-source 2D RPG *
*Copyright (C) 2006, Tony Sparks *
* *
*This library is free software; you can redistribute it and/or *
*modify it under the terms of the GNU Lesser General Public *
*License as published by the Free Software Foundation; either *
*version 2.1 of the License, or (at your option) any later version. *
* *
*This library is distributed in the hope that it will be useful, *
*but WITHOUT ANY WARRANTY; without even the implied warranty of *
*MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
*Lesser General Public License for more details. *
* *
*You should have received a copy of the GNU Lesser General Public *
*License along with this library; if not, write to the Free Software *
*Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA *
**************************************************************************************
*/
#pragma once
#include <algorithm>
/** Min max values */
//int max( int left, int right ) {
// return ((left > right) ? left : right);
//}
//int min( int left, int right ) {
// return ((left < right) ? left : right);
//}
struct Rect
{
int x;
int y;
int width;
int height;
bool Intersects( const Rect &r ) {
// check the map boundaries
if ((r.x + r.width < x) ||
(r.y + r.height < y) ||
(r.x > x + width) ||
(r.y > y + height) )
return false;
return true;
};
void Reset() { x = y = width = height = 0; };
void Set(int _x, int _y, int w, int h )
{
x = _x; y = _y;
width = w;
height = h;
};
Rect() { Reset(); };
Rect( int _x, int _y, int w, int h ) : x(_x), y(_y), width(w), height(h) {};
virtual ~Rect() {};
};
class MPoint {
public:
MPoint() { x=0;y=0;};
MPoint(int _x, int _y ) { x = _x; y = _y; };
int x;
int y;
~MPoint() {};
};
See more files for this project here