2018-08-19 09:46:58 +02:00
|
|
|
#pragma once
|
|
|
|
|
2019-12-29 08:05:58 +01:00
|
|
|
#include "..\Global\global.h"
|
|
|
|
|
2019-05-31 21:45:13 +02:00
|
|
|
enum spotcam_flags
|
|
|
|
{
|
|
|
|
SCF_CUT_PAN = (1 << 0), // 0x0001 cut without panning smoothly
|
|
|
|
SCF_VIGNETTE = (1 << 1), // 0x0002
|
|
|
|
SCF_LOOP_SEQUENCE = (1 << 2), // 0x0004
|
|
|
|
SCF_TRACKING_CAM = (1 << 3), // 0x0008
|
|
|
|
SCF_HIDE_LARA = (1 << 4), // 0x0010
|
|
|
|
SCF_FOCUS_LARA_HEAD = (1 << 5), // 0x0020
|
|
|
|
SCF_PAN_TO_LARA_CAM = (1 << 6), // 0x0040
|
|
|
|
SCF_CUT_TO_CAM = (1 << 7), // 0x0080
|
|
|
|
SCF_STOP_MOVEMENT = (1 << 8), // 0x0100 stops movement for a given time (cf. `Timer` field)
|
|
|
|
SCF_DISABLE_BREAKOUT = (1 << 9), // 0x0200 disables breaking out from cutscene using Look key
|
|
|
|
SCF_DISABLE_LARA_CONTROLS = (1 << 10), // 0x0400 also adds widescreen bars
|
|
|
|
SCF_REENABLE_LARA_CONTROLS = (1 << 11), // 0x0800 use with 0x0400, keeps widescreen bars
|
|
|
|
SCF_SCREEN_FADE_IN = (1 << 12), // 0x1000
|
|
|
|
SCF_SCREEN_FADE_OUT = (1 << 13), // 0x2000
|
|
|
|
SCF_ACTIVATE_HEAVY_TRIGGERS = (1 << 14), // 0x4000 when camera is moving above heavy trigger sector, it'll be activated
|
|
|
|
SCF_CAMERA_ONE_SHOT = (1 << 15), // 0x8000
|
|
|
|
};
|
|
|
|
|
2019-12-26 08:09:31 +01:00
|
|
|
//#define InitSpotCamSequences ((void (__cdecl*)()) 0x0047A800)
|
2019-12-28 15:29:33 +01:00
|
|
|
//#define CalculateSpotCameras ((void (__cdecl*)()) 0x0047B280)
|
2019-12-26 08:09:31 +01:00
|
|
|
//#define InitialiseSpotCam ((void (__cdecl*)(short)) 0x0047A9D0)
|
2019-11-27 15:12:35 +01:00
|
|
|
#define TriggerTitleSpotcam ((void (__cdecl*)(int)) 0x004284A0)
|
|
|
|
#define Spline ((int (__cdecl*)(int, int*, int)) 0x0047A890)
|
2019-05-31 21:45:13 +02:00
|
|
|
|
2019-12-29 08:05:58 +01:00
|
|
|
extern byte SpotCamRemap[16];
|
|
|
|
extern byte CameraCnt[16];
|
|
|
|
extern int LastSpotCam;
|
|
|
|
extern SPOTCAM SpotCam[64];
|
|
|
|
extern int NumberSpotcams;
|
|
|
|
|
2019-12-26 08:09:31 +01:00
|
|
|
void InitSpotCamSequences();
|
|
|
|
void InitialiseSpotCam(short sequence);
|
2019-12-28 15:29:33 +01:00
|
|
|
void CalculateSpotCameras();
|
2019-05-31 21:45:13 +02:00
|
|
|
|
2019-12-02 14:49:19 +01:00
|
|
|
void Inject_Spotcam();
|