/****************************************************************************
*
* MOVEBLOK.H
*
* PROGRAMMER : Chris
*    VERSION : 00.00
*    CREATED : 03/06/98
*   MODIFIED : 03/06/98
*       TABS : 5
*
* DESCRIPTION
*	Header file for MOVEBLOK.C
*
*****************************************************************************/

#ifndef _MOVEBLOK_H
#define _MOVEBLOK_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"

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

extern void InitialiseMovingBlock(sint16 item_num);
extern void	ClearMovableBlockSplitters(sint32 x, sint32 y, sint32 z, sint16 room_number);
extern void MovableBlock(sint16 item_number);
extern void MovableBlockCollision(sint16 item_num, ITEM_INFO *laraitem, COLL_INFO *coll);
extern int TestBlockPush(ITEM_INFO *item, int blokhite, uint16 quadrant);
extern int TestBlockPull(ITEM_INFO *item, int blokhite, uint16 quadrant);
extern void AlterFloorHeight(ITEM_INFO *item, int height);
extern void DrawMovableBlock(ITEM_INFO *item);

extern void DrawUnclippedItem(ITEM_INFO *item);
extern void SetupCleanerFromSavegame(ITEM_INFO *item, long block);

#ifdef __cplusplus
}
#endif

#endif
