/******************************************************************************
	enmain.h
******************************************************************************/

#ifndef ENMAIN_H
#define ENMAIN_H

#include "endynamic.h"
#include "enrecord.h"

/******************************************************************************
	define constants
******************************************************************************/

/******************************************************************************
	structures
******************************************************************************/

typedef struct {
	int	lev, trg, last;
	int	x, y;
	float	ax, ay, ar;
} enCont;

/******************************************************************************
	external variables
******************************************************************************/
extern int	nenproc;
extern int	centest, centest2;

extern enDynamic	endynamic[2], *pendynamic;
extern Gfx		*pendlist;
extern int		ienmtxmdl;

extern enCont	cont[MAXCONTROLLERS];

extern int	conttrg2, csamecont, lastcont;
extern int	stklevx, stklevy, stktrgx, stktrgy, stktrgx2, stktrgy2;
extern int	fstkretx, fstkrety;		/* on when 3d-stick retun zero */
extern int	laststklevx, laststklevy, csamestkx, csamestky;

extern Recpack	recpack, recpack_pfs;
extern Ghost_info_rec	ghost_info_rec;

/******************************************************************************
	external functions
******************************************************************************/

extern void EndoMain(void);
extern void Adjust3Dstick(int joy_x, int joy_y, float *adj_x, float *adj_y);
extern void GetCont(int no);
extern void InitProcCont(void);
extern void ProcCont(enCont *pcont);
extern void StrCpy(char *d, char *s);
extern void StrnCpy(char *d, char *s, int n);
extern int StrCmp(char *s1, char *s2);
extern int StrnCmp(char *s1, char *s2, int n);

#endif
