From 3bd383baf6a17e734329e1fc677c7e86283db772 Mon Sep 17 00:00:00 2001 From: Chris Xiong Date: Mon, 26 Oct 2015 22:52:36 +0800 Subject: Added support for relative line numbers. Added instructions for, brk and cont. (They are still untested...) Parser code cleanup. Removed garbage output to stderr. Reorganize the repository structure. Updated BLR2 code move it into archive. Added BLR1 files. --- include/hgevector.h | 54 ----------------------------------------------------- 1 file changed, 54 deletions(-) delete mode 100644 include/hgevector.h (limited to 'include/hgevector.h') diff --git a/include/hgevector.h b/include/hgevector.h deleted file mode 100644 index b86bd01..0000000 --- a/include/hgevector.h +++ /dev/null @@ -1,54 +0,0 @@ -/* -** Haaf's Game Engine 1.7 -** Copyright (C) 2003-2007, Relish Games -** hge.relishgames.com -** -** hgeVector helper class -*/ - - -#ifndef HGEVECTOR_H -#define HGEVECTOR_H - -#include - -/* -** Fast 1.0/sqrtf(float) routine -*/ -float InvSqrt(float x); - -class hgeVector -{ -public: - float x,y; - - hgeVector(float _x, float _y) { x=_x; y=_y; } - hgeVector() { x=0; y=0; } - - hgeVector operator- () const { return hgeVector(-x, -y); } - hgeVector operator- (const hgeVector &v) const { return hgeVector(x-v.x, y-v.y); } - hgeVector operator+ (const hgeVector &v) const { return hgeVector(x+v.x, y+v.y); } - hgeVector& operator-= (const hgeVector &v) { x-=v.x; y-=v.y; return *this; } - hgeVector& operator+= (const hgeVector &v) { x+=v.x; y+=v.y; return *this; } - bool operator== (const hgeVector &v) const { return (x==v.x && y==v.y); } - bool operator!= (const hgeVector &v) const { return (x!=v.x || y!=v.y); } - - hgeVector operator/ (const float scalar) const { return hgeVector(x/scalar, y/scalar); } - hgeVector operator* (const float scalar) const { return hgeVector(x*scalar, y*scalar); } - hgeVector& operator*= (const float scalar) { x*=scalar; y*=scalar; return *this; } - - float Dot(const hgeVector *v) const { return x*v->x + y*v->y; } - float Length() const { return sqrtf(Dot(this)); } - float Angle(const hgeVector *v = 0) const; - - void Clamp(const float max) { if(Length() > max) { Normalize(); x *= max; y *= max; } } - hgeVector* Normalize() { float rc=InvSqrt(Dot(this)); x*=rc; y*=rc; return this; } - hgeVector* Rotate(float a); -}; - -inline hgeVector operator* (const float s, const hgeVector &v) { return v*s; } -inline float operator^ (const hgeVector &v, const hgeVector &u) { return v.Angle(&u); } -inline float operator% (const hgeVector &v, const hgeVector &u) { return v.Dot(&u); } - - -#endif -- cgit v1.2.3