#ifndef BLACKSHADES_MISC_H #define BLACKSHADES_MISC_H #include #include #include #include #include struct AnimationData { struct { struct { float x, y, z; } joints[20]; float speed; } *ptr; size_t len; }; struct JointData { float x, y, z; float length; unsigned char model; bool visible; bool lower; signed char parent; }; struct MuscleData { float length, initlen, minlen, maxlen; bool flag; bool visible; signed char parent1; signed char parent2; }; struct Scores { size_t high_score; bool completed; }; struct Fog { GLfloat color[4]; GLfloat density; GLfloat start; GLfloat end; }; #ifdef __cplusplus extern "C" { #endif // __cplusplus bool keyPress(int key); struct AnimationData loadAnimation(const char*); void loadJoints(struct JointData*); void loadMuscles(struct MuscleData*); ALuint loadSound(const char*); GLuint loadTexture(const char*); void playSound(ALuint source, ALfloat x, ALfloat y, ALfloat z); float randFloat(); int32_t randInt(int32_t at_least, int32_t at_most); uint32_t randUint(uint32_t less_than); void setFog(struct Fog*, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat); void tempFog(struct Fog*, GLfloat, GLfloat, GLfloat); void resetFog(struct Fog*); #ifdef __cplusplus } // extern "C" #endif // __cplusplus #endif // BLACKSHADES_MISC_H