mirror of
https://github.com/TombEngine/TombEngine.git
synced 2025-05-01 09:18:00 +03:00

- No more enums.h, constants.h, macro.h, etc... - moved all structure in types.h to there respective file.
47 lines
1.4 KiB
C
47 lines
1.4 KiB
C
#pragma once
|
|
#include "items.h"
|
|
#include "collide.h"
|
|
#include "room.h"
|
|
|
|
typedef struct DOORPOS_DATA
|
|
{
|
|
FLOOR_INFO* floor;
|
|
FLOOR_INFO data;
|
|
short block;
|
|
};
|
|
|
|
typedef struct DOOR_DATA
|
|
{
|
|
DOORPOS_DATA d1;
|
|
DOORPOS_DATA d1flip;
|
|
DOORPOS_DATA d2;
|
|
DOORPOS_DATA d2flip;
|
|
short opened;
|
|
short* dptr1;
|
|
short* dptr2;
|
|
short* dptr3;
|
|
short* dptr4;
|
|
byte dn1;
|
|
byte dn2;
|
|
byte dn3;
|
|
byte dn4;
|
|
ITEM_INFO* item;
|
|
};
|
|
|
|
void SequenceDoorControl(short itemNumber);
|
|
void UnderwaterDoorCollision(short itemNum, ITEM_INFO* l, COLL_INFO* coll);
|
|
void DoubleDoorCollision(short itemNum, ITEM_INFO* l, COLL_INFO* coll);
|
|
void PushPullKickDoorCollision(short itemNum, ITEM_INFO* l, COLL_INFO* coll);
|
|
void PushPullKickDoorControl(short itemNumber);
|
|
void DoorCollision(short itemNum, ITEM_INFO* l, COLL_INFO* coll);
|
|
void DoorControl(short itemNumber);
|
|
void OpenThatDoor(DOORPOS_DATA* doorPos, DOOR_DATA* dd);
|
|
void ShutThatDoor(DOORPOS_DATA* doorPos, DOOR_DATA* dd);
|
|
void InitialiseDoor(short itemNumber);
|
|
void InitialiseSteelDoor(short itemNumber);
|
|
void SteelDoorCollision(short itemNumber, ITEM_INFO* l, COLL_INFO* coll);
|
|
void AssignClosedDoor(ITEM_INFO* item);
|
|
void InitialiseClosedDoors();
|
|
void ProcessClosedDoors();
|
|
void GetClosedDoorNormal(ROOM_INFO* room, short** dptr, byte* n, int z, int x, int absX, int absZ);
|
|
void FillDoorPointers(DOOR_DATA* doorData, ITEM_INFO* item, short roomNumber, int dz, int dx);
|