X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=Source%2FGame.h;h=1297fbdc4f6c016076c7bdbe308e563b2a53b5d7;hb=decb00e82a2e65e25dbcdd8f16fff5a6a07d31d6;hp=a112d0a47697684f893d76897686707bd8f8b763;hpb=36cc3af3e5074215817ddee16defde754e2ad67f;p=lugaru.git diff --git a/Source/Game.h b/Source/Game.h index a112d0a..1297fbd 100644 --- a/Source/Game.h +++ b/Source/Game.h @@ -1,6 +1,35 @@ +/* +Copyright (C) 2003, 2010 - Wolfire Games + +This file is part of Lugaru. + +Lugaru is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program 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 General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +*/ + #ifndef _GAME_H_ #define _GAME_H_ +#include "SDL.h" + +#if (defined(__APPLE__) && defined(__MACH__)) +# ifdef PLATFORM_MACOSX +# error Do not define PLATFORM_MACOSX for new builds. It is for the old Carbonized build. +# endif +#endif + #ifdef PLATFORM_MACOSX #include #include "Quicktime.h" @@ -10,22 +39,20 @@ //#include #include "TGALoader.h" -#ifdef WIN32 + +#if !PLATFORM_MACOSX #include "WinInput.h" -#elif USE_SDL -#include "SDL.h" -#include "SDLInput.h" #else #include "Macinput.h" #endif + #include "Terrain.h" #include "Skybox.h" #include "Skeleton.h" -#include "Models.h" +#include "Models.h" #include "Lights.h" #include "Person.h" #include "Constants.h" -#include "fmod.h" #include "Sprites.h" //#include #include "Text.h" @@ -35,19 +62,11 @@ #include "binio.h" #include #include "gamegl.h" +#include "Stereo.h" extern GLuint rabbittexture; -#ifndef TRUE -#define TRUE 1 -#endif - -#ifndef FALSE -#define FALSE 0 -#endif - - -class Game +class Game { public: @@ -85,7 +104,6 @@ public: int loaddistrib; int keyselect; int indemo; - int registered; bool won; @@ -220,16 +238,16 @@ public: bool oldattackkey; long long MD5_string (char *string); - static void LoadTexture(char *fileName, GLuint *textureid,int mipmap, bool hasalpha); - static void LoadTextureSave(char *fileName, GLuint *textureid,int mipmap,GLubyte *array, int *skinsize); - void LoadSave(char *fileName, GLuint *textureid,bool mipmap,GLubyte *array, int *skinsize); - bool AddClothes(char *fileName, GLuint *textureid,bool mipmap,GLubyte *array, int *skinsize); + static void LoadTexture(const char *fileName, GLuint *textureid,int mipmap, bool hasalpha); + static void LoadTextureSave(const char *fileName, GLuint *textureid,int mipmap,GLubyte *array, int *skinsize); + void LoadSave(const char *fileName, GLuint *textureid,bool mipmap,GLubyte *array, int *skinsize); + bool AddClothes(const char *fileName, GLuint *textureid,bool mipmap,GLubyte *array, int *skinsize); void InitGame(); void LoadStuff(); void LoadingScreen(); void FadeLoadingScreen(float howmuch); void Dispose(); - int DrawGLScene(GLvoid); + int DrawGLScene(StereoSide side); void Tick(); void TickOnce(); void TickOnceAfter(); @@ -258,7 +276,7 @@ public: int musicselected; int change; Game(); - ~Game() { + ~Game() { for(int i=0;i<10;i++){ if(Mainmenuitems[i])glDeleteTextures( 1, &Mainmenuitems[i] ); } @@ -279,4 +297,28 @@ public: }; +#ifndef __forceinline +# ifdef __GNUC__ +# define __forceinline inline __attribute__((always_inline)) +# endif +#endif + +static __forceinline void swap_gl_buffers(void) +{ + + SDL_GL_SwapBuffers(); + +} + +#ifdef __GNUC__ +#define LONGLONGCONST(x) (x##ll) +#else +#define LONGLONGCONST(x) (x) +#endif + +extern "C" { void UndefinedSymbolToExposeStubbedCode(void); } +//#define STUBBED(x) UndefinedSymbolToExposeStubbedCode(); +#define STUBBED(x) { static bool seen = false; if (!seen) { seen = true; fprintf(stderr, "STUBBED: %s at %s:%d\n", x, __FILE__, __LINE__); } } +//#define STUBBED(x) + #endif