/****************************************************************************
*
* TRIBOSS.H
*
* PROGRAMMER : Chris
*    VERSION : 00.00
*    CREATED : 20/08/98
*   MODIFIED : 20/08/98
*       TABS : 5
*
* DESCRIPTION
*	Header file for TRIBOSS.C
*
*****************************************************************************/

#ifndef _TRIBOSS_H
#define _TRIBOSS_H

#ifdef __cplusplus
extern "C" {
#endif

/*---------------------------------------------------------------------------
 *	Import Headers
\*--------------------------------------------------------------------------*/

#ifdef PSX_VERSION
#include "../spec_psx/typedefs.h"
#else
#include "..\specific\stypes.h"
#endif

#include "items.h"
#include "collide.h"

/*---------------------------------------------------------------------------
 *	Prototypes
\*--------------------------------------------------------------------------*/

#if defined(PSX_VERSION) && defined(RELOC)

typedef void (TRIBOSSFUNC1)(ITEM_INFO *);
typedef void (TRIBOSSFUNC2)(long, long, long, ITEM_INFO *);
typedef void (TRIBOSSFUNC3)(long);

#define InitialiseTribeBoss		((VOIDFUNCSINT16 *)Baddie1Ptr[0])
#define TribeBossControl			((VOIDFUNCSINT16 *)Baddie1Ptr[1])
#define S_DrawTribeBoss			((TRIBOSSFUNC1 *)Baddie1Ptr[2])
#define FindClosestShieldPoint	((TRIBOSSFUNC2 *)Baddie1Ptr[3])

#else

extern void FindClosestShieldPoint(long x, long y, long z, ITEM_INFO *item);
extern void TribeBossControl(sint16 item_number);
extern void S_DrawTribeBoss(ITEM_INFO *item);
extern void InitialiseTribeBoss(sint16);

#endif

extern ITEM_INFO *TribeBossItem;
extern char lizard_man_active;
extern char TribeBossShieldOn;

#ifdef __cplusplus
}
#endif

#endif
