/******************************************************************************************
	CRTEST PS   (c) 1999-2001 ISL

	crate.h			
******************************************************************************************/

#ifndef __CRATE_H__
#define __CRATE_H__

void crateStart(void);
void crateFree(void);
static void crateCycle(void);
static void crateEnd(void);
void crateDraw(void);
static void crateMoveCrate(void);
static void crateUpdateLinkPositions(void);
static void crateDrawMap(void);
static void crateDrawModels(void);
static void crateDrawSprites(void);
static void crateDrawStars(void);
static void crateDrawOverlays(void);
static void crateMoveTweedy(void);
static void crateMoveAxe(void);
static void crateDrawRectangle(int x, int y, int number);
static void crateMoveRope(void);
static void crateCollision(void);
static void crateGeneratePartExplosion(VECTOR *v);
static void crateDrawPartExplosion(void);
static void crateUpdatePartExplosion(void);
static void crateMoveCamera(void); 
static void crateKeepPointWithinSphere(VECTOR *v, int radius);
static void crateGenerateNewEgg(void);
static void crateMoveEgg(void);
static void crateDrawEgg(void);
static void crateUpdateState(void);
static void crateCheckCrateDamage(void);
static void crateEndFail(void);
static void crateEndSuccess(void);
static void crateDrawBriefing(void);
static void crateStopSamples(void);
static void crateGenerateNewAxe(void);
static void crateDoAxeCollisionCheck(void);
static void crateMrsTweedyGoToClimb(void);
static void crateInitialiseRope(void);
static void crateSetUpSamples(void);
static void crateSetUpTextures(void);
static void crateInitialiseTweedy(void);
static void crateSetUpStars(void);
static void crateInitialiseAxe(void);
static void crateInitialiseCrate(void);
static void crateGetCameraPath(void);
static void crateDrawDeadMessage(void);
static void cratePlaySamples(void);
static void crateAddSampleToQueue(SfxSampleType *sample, int priority);
static void cratePlayQueuedSamples(void);
static void crateClearSoundQueue(void);
void crateUpdateAnims(void);
#endif

