#define NTEXTURE 30 // The number of textures (in the models-textures dir)
#define MAXOBJECTS 256
+#ifndef M_PI
+#define M_PI 3.14159265358979323846
+#endif
+
// Meshes and textures arrays
extern mesh* meshes[];
extern texture* textures[];
// Scene object arrays
extern SceneObject sceneObjs[];
extern int nObjects;
+extern int curObject;
+extern int buttonSelected;
+extern int manipulateState;
// Directories containing models
extern char *dirDefault1;
// Stores the directory name for the meshes and textures.
extern char dataDir[];
-extern int moving, startx, starty;
-
-/* Recursion level for floor drawing */
-extern int drawFloorRecurse;
+extern int startx, starty;
/* Size of floor, from -n to n */
extern int floorSize;
extern int width, height;
/* Zoom and rotate tracking */
-extern GLfloat zoom, rotate;
-extern GLfloat zoomFactor, rotateFactor;
+extern GLfloat zoom, rotate, camAngle;
+extern GLfloat zoomFactor, camRotateFactor, camAngleFactor;
+extern GLfloat leftrightFactor, nearfarFactor, bigsmallFactor, updownFactor, rotateFactor, texscaleFactor;
/* Texture state tracking */
extern int currentGroundTexture, currentMeshTexture;