Files
oboe/Blades of Exile/tools/mathutil.h
Chokboyz bfdb5f19f8 Fixed a code collision in a previous attempt at merging Windows and Mac codes, which would prevent the move_to_zero function to work with short types.
Most obvious effects were infinite bless, haste, poison, webs not cleaning, etc

Chokboyz

git-svn-id: http://openexile.googlecode.com/svn/trunk@151 4ebdad44-0ea0-11de-aab3-ff745001d230
2010-05-25 23:30:07 +00:00

45 lines
688 B
C++

/*
* mathutil.h
* BoE
*
* Created by Celtic Minstrel on 16/04/09.
*
*/
#include <cmath>
using std::abs;
#ifdef max
#undef max
#endif
#ifdef min
#undef min
#endif
extern short get_ran (short times,short min,short max);
extern short s_pow(short x,short y);
short s_sqrt(short val);
short max(short a,short b);
short min(short a,short b);
short gcd(short a, short b);
template <class T>
void move_to_zero(T & value)
{
if (value > 0) --value;
else if (value < 0) ++value;
};
template <class T>
T minmax(T min, T max, T k)
{
return (k < min)? min : (k > max)? max : k;
};
template <class T>
T ex_abs(T value)
{
return (value < 0)? (-value) : value;
};