Decipher hex stuff

This commit is contained in:
Lwmte 2021-10-27 19:00:30 +03:00
parent 226c0aaee1
commit e99acea69e
23 changed files with 107 additions and 158 deletions

View file

@ -1786,7 +1786,7 @@ void SomeSparkEffect(int x, int y, int z, int count)
spark->dG = spark->sG >> 1;
spark->dB = spark->sB >> 1;
spark->sLife = 24;
spark->transType = COLADD;
spark->transType = TransTypeEnum::COLADD;
spark->friction = 5;
int random = GetRandomControl() & 0xFFF;
spark->xVel = -128 * phd_sin(random << 4);

View file

@ -118,7 +118,7 @@ void TriggerChaffSparkles (PHD_VECTOR* pos, PHD_VECTOR* vel, CVECTOR* color,int
sparkle->colFadeSpeed = 3;
sparkle->fadeToBlack = 5;
sparkle->sLife = sparkle->life = 10;
sparkle->transType = COLADD;
sparkle->transType = TransTypeEnum::COLADD;
sparkle->dynamic = true;
sparkle->x = pos->x + (GetRandomDraw() & 7) - 3;

View file

@ -416,7 +416,7 @@ void TriggerCyborgSpark(int x, int y, int z, short xv, short yv, short zv)
spark->dB = -64 - ((random & 0x7F) + 64);
spark->life = 10;
spark->sLife = 10;
spark->transType = COLADD;
spark->transType = TransTypeEnum::COLADD;
spark->friction = 34;
spark->scalar = 1;
spark->x = (random & 7) + x - 3;
@ -458,7 +458,7 @@ void TriggerExplosionBubbles(int x, int y, int z, short roomNumber)
spark->sB = 0;
spark->colFadeSpeed = 8;
spark->fadeToBlack = 12;
spark->transType = COLADD;
spark->transType = TransTypeEnum::COLADD;
spark->x = x;
spark->y = y;
spark->z = z;
@ -513,9 +513,9 @@ void TriggerExplosionSmokeEnd(int x, int y, int z, int uw)
spark->fadeToBlack = 64;
spark->life = spark->sLife= (GetRandomControl() & 0x1F) + 96;
if (uw)
spark->transType = COLADD;
spark->transType = TransTypeEnum::COLADD;
else
spark->transType = COLSUB;
spark->transType = TransTypeEnum::COLSUB;
spark->x = (GetRandomControl() & 0x1F) + x - 16;
spark->y = (GetRandomControl() & 0x1F) + y - 16;
spark->z = (GetRandomControl() & 0x1F) + z - 16;
@ -571,7 +571,7 @@ void TriggerExplosionSmoke(int x, int y, int z, int uw)
spark->dB = 64;
spark->colFadeSpeed = 2;
spark->fadeToBlack = 8;
spark->transType = COLSUB;
spark->transType = TransTypeEnum::COLSUB;
spark->life = spark->sLife = (GetRandomControl() & 3) + 10;
spark->x = (GetRandomControl() & 0x1FF) + x - 256;
spark->y = (GetRandomControl() & 0x1FF) + y - 256;
@ -680,7 +680,7 @@ void TriggerExplosionSmoke(int x, int y, int z, int uw)
spark->colFadeSpeed = (GetRandomControl() & 3) + 8;
spark->sLife = spark->life = (GetRandomControl() & 3) + 28;
}
spark->transType = COLADD;
spark->transType = TransTypeEnum::COLADD;
if (fxObj == -1)
{
if (type && type != 1)
@ -808,7 +808,7 @@ void TriggerSuperJetFlame(ITEM_INFO* item, int yvel, int deadly)
sptr->dB = 32;
sptr->colFadeSpeed = 8;
sptr->fadeToBlack = 8;
sptr->transType = COLADD;
sptr->transType = TransTypeEnum::COLADD;
sptr->life = sptr->sLife = (size >> 9) + (GetRandomControl() & 7) + 16;
sptr->x = (GetRandomControl() & 0x1F) + item->pos.xPos - 16;
sptr->y = (GetRandomControl() & 0x1F) + item->pos.yPos - 16;
@ -1146,7 +1146,7 @@ void TriggerWaterfallMist(int x, int y, int z, int angle)
spark->dG = 64;
spark->dB = 64;
spark->colFadeSpeed = 1;
spark->transType = COLADD;
spark->transType = TransTypeEnum::COLADD;
spark->life = spark->sLife = (GetRandomControl() & 3) + 6;
spark->fadeToBlack = spark->life - 4;
dl = ((dh + (GlobalCounter << 6)) % 1536) + (GetRandomControl() & 0x3F) - 32;
@ -1180,7 +1180,7 @@ void TriggerWaterfallMist(int x, int y, int z, int angle)
spark->dG = 96;
spark->dB = 96;
spark->colFadeSpeed = 1;
spark->transType = COLADD;
spark->transType = TransTypeEnum::COLADD;
spark->life = spark->sLife = (GetRandomControl() & 3) + 6;
spark->fadeToBlack = spark->life - 1;
dl = GetRandomControl() % 1408 + 64;
@ -1296,7 +1296,7 @@ void TriggerRocketFlame(int x, int y, int z, int xv, int yv, int zv, int itemNum
sptr->colFadeSpeed = 12 + (GetRandomControl() & 3);
sptr->fadeToBlack = 12;
sptr->sLife = sptr->life = (GetRandomControl() & 3) + 28;
sptr->transType = COLADD;
sptr->transType = TransTypeEnum::COLADD;
sptr->extras = 0;
sptr->dynamic = -1;
@ -1351,7 +1351,7 @@ void TriggerRocketFire(int x, int y, int z)
sptr->colFadeSpeed = 4 + (GetRandomControl() & 3);
sptr->fadeToBlack = 12;
sptr->sLife = sptr->life = (GetRandomControl() & 3) + 20;
sptr->transType = COLADD;
sptr->transType = TransTypeEnum::COLADD;
sptr->extras = 0;
sptr->dynamic = -1;
@ -1403,7 +1403,7 @@ void TriggerRocketSmoke(int x, int y, int z, int bodyPart)
sptr->colFadeSpeed = 4 + (GetRandomControl() & 3);
sptr->fadeToBlack = 12;
sptr->sLife = sptr->life = (GetRandomControl() & 3) + 20;
sptr->transType = COLADD;
sptr->transType = TransTypeEnum::COLADD;
sptr->extras = 0;
sptr->dynamic = -1;
@ -1457,7 +1457,7 @@ void TriggerFlashSmoke(int x, int y, int z, short roomNumber)
spark->dShade = -128;
spark->colFadeSpeed = 4;
spark->fadeToBlack = 16;
spark->transType = COLADD;
spark->transType = TransTypeEnum::COLADD;
spark->life = spark->sLife = (GetRandomControl() & 0xF) + 64;
spark->x = (GetRandomControl() & 0x1F) + x - 16;
spark->y = (GetRandomControl() & 0x1F) + y - 16;
@ -1563,7 +1563,7 @@ void TriggerFireFlame(int x, int y, int z, int fxObj, int type)
spark->life = spark->sLife = (GetRandomControl() & 3) + 18;
}
spark->transType = COLADD;
spark->transType = TransTypeEnum::COLADD;
if (fxObj != -1)
{
@ -1735,7 +1735,7 @@ void TriggerMetalSparks(int x, int y, int z, int xv, int yv, int zv, int additio
spark->colFadeSpeed = 3;
spark->fadeToBlack = 5;
spark->y = ((r >> 3) & 7) + y - 3;
spark->transType = COLADD;
spark->transType = TransTypeEnum::COLADD;
spark->friction = 34;
spark->scalar = 1;
spark->z = ((r >> 6) & 7) + z - 3;
@ -1757,7 +1757,7 @@ void TriggerMetalSparks(int x, int y, int z, int xv, int yv, int zv, int additio
spark->sR = spark->dR >> 1;
spark->sG = spark->dG >> 1;
spark->fadeToBlack = 4;
spark->transType = COLADD;
spark->transType = TransTypeEnum::COLADD;
spark->colFadeSpeed = (r & 3) + 8;
spark->sB = spark->dB >> 1;
spark->dR = 32;

View file

@ -1,5 +1,6 @@
#pragma once
#include "Specific\phd_global.h"
struct ITEM_INFO;
struct COLL_INFO;
@ -32,7 +33,7 @@ enum SpriteEnumFlag
SP_PLASMAEXP = 0x2000
};
enum TransTypeEnum
enum class TransTypeEnum
{
NOTRANS,
SEMITRANS,

View file

@ -25,7 +25,7 @@ void TriggerTorchFlame(char fxObj, char node)
spark->dG = (GetRandomControl() & 0x3F) + -128;
spark->fadeToBlack = 8;
spark->colFadeSpeed = (GetRandomControl() & 3) + 12;
spark->transType = COLADD;
spark->transType = TransTypeEnum::COLADD;
spark->life = spark->sLife = (GetRandomControl() & 7) + 24;
spark->y = 0;
spark->x = (GetRandomControl() & 0xF) - 8;

View file

@ -501,7 +501,7 @@ void TriggerGunSmoke(int x, int y, int z, short xv, short yv, short zv, byte ini
spark->dShade = 64;
}
spark->transType = COLADD;
spark->transType = TransTypeEnum::COLADD;
spark->x = x + (GetRandomControl() & 31) - 16;
spark->y = y + (GetRandomControl() & 31) - 16;
spark->z = z + (GetRandomControl() & 31) - 16;
@ -584,7 +584,7 @@ void TriggerShatterSmoke(int x, int y, int z)
spark->colFadeSpeed = 4;
spark->dShade = (GetRandomControl() & 0x1F) + 64;
spark->fadeToBlack = 24 - (GetRandomControl() & 7);
spark->transType = COLADD;
spark->transType = TransTypeEnum::COLADD;
spark->life = spark->sLife = (GetRandomControl() & 7) + 48;
spark->x = (GetRandomControl() & 0x1F) + x - 16;
spark->y = (GetRandomControl() & 0x1F) + y - 16;
@ -1015,7 +1015,7 @@ void AddWaterSparks(int x, int y, int z, int num)
spark->fadeToBlack = 8;
spark->life = 24;
spark->sLife = 24;
spark->transType = COLADD;
spark->transType = TransTypeEnum::COLADD;
int random = GetRandomControl() & 0xFFF;
spark->xVel = -phd_sin(random << 4) * 128;
spark->yVel = -640 - GetRandomControl();
@ -1359,7 +1359,7 @@ void TriggerShockwaveHitEffect(int x, int y, int z, byte r, byte g, byte b, shor
spark->dR = r;
spark->colFadeSpeed = 4;
spark->fadeToBlack = 8;
spark->transType = COLADD;
spark->transType = TransTypeEnum::COLADD;
spark->life = spark->sLife = (GetRandomControl() & 3) + 16;
int speed = (GetRandomControl() & 0xF) + vel;
@ -1467,7 +1467,7 @@ void TriggerExplosionBubble(int x, int y, int z, short roomNum)
spark->sB = 0;
spark->colFadeSpeed = 8;
spark->fadeToBlack = 12;
spark->transType = COLADD;
spark->transType = TransTypeEnum::COLADD;
spark->x = x;
spark->y = y;
spark->z = z;
@ -1524,7 +1524,7 @@ void TriggerExplosionBubble(int x, int y, int z, short roomNum)
spark->fadeToBlack = 64;
spark->life = spark->sLife = (GetRandomControl() & 0x1F) + 96;
if (unk)
spark->transType = COLADD;
spark->transType = TransTypeEnum::COLADD;
else
spark->transType = 3;
spark->x = (GetRandomControl() & 0x1F) + x - 16;
@ -1594,7 +1594,7 @@ void TriggerFenceSparks(int x, int y, int z, int kill, int crane)
spark->life = (GetRandomControl() & 7) + 24;
spark->sLife = (GetRandomControl() & 7) + 24;
spark->transType = COLADD;
spark->transType = TransTypeEnum::COLADD;
spark->dynamic = -1;
spark->x = x;
@ -1644,7 +1644,7 @@ void TriggerSmallSplash(int x, int y, int z, int num)
sptr->life = 24;
sptr->sLife = 24;
sptr->transType = COLADD;
sptr->transType = TransTypeEnum::COLADD;
angle = GetRandomControl() << 3;

View file

@ -1,6 +1,8 @@
#pragma once
#include "Specific\phd_global.h"
#include "Specific/phd_global.h"
#include "effects/effects.h"
#include "lara_struct.h"
struct ITEM_INFO;
struct SMOKE_SPARKS
@ -30,7 +32,7 @@ struct SMOKE_SPARKS
byte fadeToBlack;
signed char sLife;
signed char life;
byte transType;
TransTypeEnum transType;
byte fxObj;
byte nodeNumber;
byte mirror;

View file

@ -15,25 +15,18 @@
OBJECT_TEXTURE* WaterfallTextures[6];
float WaterfallY[6];
int lastWaterfallY = 0;
OBJECT_COLLISION_BOUNDS TightRopeBounds =
{
(short)0xFF00, 0x0100, 0x0000, 0x0000, (short)0xFF00, 0x0100, (short)0xF8E4, 0x071C, (short)0xEAAC, 0x1554,
(short)0xF8E4, 0x071C
};
PHD_VECTOR TightRopePos = { 0, 0, 0 };
OBJECT_COLLISION_BOUNDS TightRopeBounds =
{ -256, 256, 0, 0, -256, 256, ANGLE(-10), ANGLE(10), ANGLE(-30), ANGLE(30), ANGLE(-10), ANGLE(10) };
OBJECT_COLLISION_BOUNDS ParallelBarsBounds =
{
(short)0xFD80, 0x0280, 0x02C0, 0x0340, (short)0xFFA0, 0x0060, (short)0xF8E4, 0x071C, (short)0xEAAC, 0x1554, (short)0xF8E4, 0x071C
};
{ -640, 640, 704, 832, -96, 96, ANGLE(-10), ANGLE(10), ANGLE(-30), ANGLE(30), ANGLE(-10), ANGLE(10) };
PHD_VECTOR PolePos = { 0, 0, -208 };
PHD_VECTOR PolePosR = { 0, 0, 0 };
OBJECT_COLLISION_BOUNDS PoleBounds = // offset 0xA1250
{
(short)0xFF00, 0x0100, 0x0000, 0x0000, (short)0xFE00, 0x0200, (short)0xF8E4, 0x071C, (short)0xEAAC, 0x1554,
(short)0xF8E4, 0x071C
};
OBJECT_COLLISION_BOUNDS PoleBounds =
{ -256, 256, 0, 0, -512, 512, ANGLE(-10), ANGLE(10), ANGLE(-30), ANGLE(30), ANGLE(-10), ANGLE(10) };
void ControlAnimatingSlots(short itemNumber)
{
@ -465,7 +458,7 @@ void HighObject2Control(short itemNumber)
spark->dG = (GetRandomControl() & 0x3F) + -128;
spark->fadeToBlack = 4;
spark->colFadeSpeed = (GetRandomControl() & 3) + 4;
spark->transType = COLADD;
spark->transType = TransTypeEnum::COLADD;
spark->life = spark->sLife = (GetRandomControl() & 3) + 24;
spark->x = item->itemFlags[1] + (GetRandomControl() & 0x3F) + item->pos.xPos - 544;
spark->y = item->pos.yPos;

View file

@ -29,65 +29,40 @@
#include "pickup/pickup_consumable.h"
#include "pickup/pickup_misc_items.h"
OBJECT_COLLISION_BOUNDS PickUpBounds = // offset 0xA1338
{
(short)0xFF00, 0x0100, (short)0xFF38, 0x00C8, (short)0xFF00, 0x0100, (short)0xF8E4, 0x071C, 0x0000, 0x0000,
0x0000, 0x0000
};
static PHD_VECTOR PickUpPosition(0, 0, -100); // offset 0xA1350
OBJECT_COLLISION_BOUNDS HiddenPickUpBounds = // offset 0xA135C
{
(short)0xFF00, 0x0100, (short)0xFF9C, 0x0064, (short)0xFCE0, (short)0xFF00, (short)0xF8E4, 0x071C, (short)0xEAAC, 0x1554,
0x0000, 0x0000
};
static PHD_VECTOR HiddenPickUpPosition(0, 0, -690); // offset 0xA1374
OBJECT_COLLISION_BOUNDS CrowbarPickUpBounds = // offset 0xA1380
{
(short)0xFF00, 0x0100, (short)0xFF9C, 0x0064, 0x00C8, 0x0200, (short)0xF8E4, 0x071C, (short)0xEAAC, 0x1554,
0x0000, 0x0000
};
static PHD_VECTOR CrowbarPickUpPosition(0, 0, 215); // offset 0xA1398
OBJECT_COLLISION_BOUNDS JobyCrowPickUpBounds = // offset 0xA13A4
{
(short)0xFE00, 0x0000, (short)0xFF9C, 0x0064, 0x0000, 0x0200, (short)0xF8E4, 0x071C, (short)0xEAAC, 0x1554,
0x0000, 0x0000
};
static PHD_VECTOR JobyCrowPickUpPosition(-224, 0, 240); // offset 0xA13BC
OBJECT_COLLISION_BOUNDS PlinthPickUpBounds = // offset 0xA13C8
{
(short)0xFF00, 0x0100, (short)0xFD80, 0x0280, (short)0xFE01, 0x0000, (short)0xF8E4, 0x071C, (short)0xEAAC, 0x1554,
0x0000, 0x0000
};
static PHD_VECTOR PlinthPickUpPosition(0, 0, -460); // offset 0xA13E0
OBJECT_COLLISION_BOUNDS PickUpBoundsUW = // offset 0xA13EC
{
(short)0xFE00, 0x0200, (short)0xFE00, 0x0200, (short)0xFE00, 0x0200, (short)0xE002, 0x1FFE, (short)0xE002, 0x1FFE,
(short)0xE002, 0x1FFE
};
static PHD_VECTOR PickUpPositionUW(0, -200, -350); // offset 0xA1404
OBJECT_COLLISION_BOUNDS SOBounds = // offset 0xA144C
{
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, (short)0xF8E4, 0x071C, (short)0xEAAC, 0x1554,
(short)0xF8E4, 0x071C
};
static PHD_VECTOR SOPos(0, 0, 0); // offset 0xA1464
short SearchCollectFrames[4] =
{
0x00B4, 0x0064, 0x0099, 0x0053
};
short SearchAnims[4] =
{
0x01D0, 0x01D1, 0x01D2, 0x01D8
};
short SearchOffsets[4] =
{
0x00A0, 0x0060, 0x00A0, 0x0070
};
OBJECT_COLLISION_BOUNDS MSBounds = // offset 0xA1488
{
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, (short)0xF8E4, 0x071C, (short)0xEAAC, 0x1554,
(short)0xF8E4, 0x071C
};
static PHD_VECTOR PickUpPosition(0, 0, -100);
OBJECT_COLLISION_BOUNDS PickUpBounds =
{ -256, 256, -200, 200, -256, 256, ANGLE(-10), ANGLE(10), 0, 0, 0, 0 };
static PHD_VECTOR HiddenPickUpPosition(0, 0, -690);
OBJECT_COLLISION_BOUNDS HiddenPickUpBounds =
{ -256, 256, -100, 100, -800, -256, ANGLE(-10), ANGLE(10), ANGLE(-30), ANGLE(30), 0, 0 };
static PHD_VECTOR CrowbarPickUpPosition(0, 0, 215);
OBJECT_COLLISION_BOUNDS CrowbarPickUpBounds =
{ -256, 256, -100, 100, 200, 512, ANGLE(-10), ANGLE(10), ANGLE(-30), ANGLE(30), 0, 0 };
static PHD_VECTOR JobyCrowPickUpPosition(-224, 0, 240);
OBJECT_COLLISION_BOUNDS JobyCrowPickUpBounds =
{ -512, 0, -100, 100, 0, 512, ANGLE(-10), ANGLE(10), ANGLE(-30), ANGLE(30), 0, 0 };
static PHD_VECTOR PlinthPickUpPosition(0, 0, -460);
OBJECT_COLLISION_BOUNDS PlinthPickUpBounds =
{ -256, 256, -640, 640, -511, 0, ANGLE(-10), ANGLE(10), ANGLE(-30), ANGLE(30), 0, 0 };
static PHD_VECTOR PickUpPositionUW(0, -200, -350);
OBJECT_COLLISION_BOUNDS PickUpBoundsUW =
{ -512, 512, -512, 512, -512, 512, ANGLE(-45), ANGLE(45), ANGLE(-45), ANGLE(45), ANGLE(-45), ANGLE(45) };
static PHD_VECTOR SOPos(0, 0, 0);
OBJECT_COLLISION_BOUNDS SOBounds =
{ 0, 0, 0, 0, 0, 0, ANGLE(-10), ANGLE(10), ANGLE(-30), ANGLE(30), ANGLE(-10), ANGLE(10) };
short SearchCollectFrames[4] = { 180, 100, 153, 83 };
short SearchAnims[4] = { LA_LOOT_CABINET, LA_LOOT_DRAWER, LA_LOOT_SHELF, LA_LOOT_CHEST };
short SearchOffsets[4] = { 160, 96, 160, 112 };
OBJECT_COLLISION_BOUNDS MSBounds =
{ 0, 0, 0, 0, 0, 0, ANGLE(-10), ANGLE(10), ANGLE(-30), ANGLE(30), ANGLE(-10), ANGLE(10) };
int NumRPickups;
short RPickups[16];
@ -97,8 +72,6 @@ PHD_VECTOR OldPickupPos;
extern Inventory g_Inventory;
#endif
void PickedUpObject(GAME_OBJECT_ID objID, int count)
{
// see if the items fit into one of these easy groups

View file

@ -30,20 +30,11 @@ enum PuzzleType {
short puzzleItem;
/*bounds*/
OBJECT_COLLISION_BOUNDS PuzzleBounds =
{
0, 0,
-256, 256,
0, 0,
-ANGLE(10), ANGLE(10),
-ANGLE(30), ANGLE(30),
-ANGLE(10), ANGLE(10)
};
OBJECT_COLLISION_BOUNDS KeyHoleBounds =
{
(short)0xFF00, 0x0100, 0x0000, 0x0000, 0x0000, 0x019C, (short)0xF8E4,(short)0x071C,(short)0xEAAC, (short)0x1554,
(short)0xF8E4,(short)0x071C
};
{ 0, 0, -256, 256, 0, 0, ANGLE(-10), ANGLE(10), ANGLE(-30), ANGLE(30), ANGLE(-10), ANGLE(10) };
static PHD_VECTOR KeyHolePosition(0, 0, 312);
OBJECT_COLLISION_BOUNDS KeyHoleBounds =
{ -256, 256, 0, 0, 0, 412, ANGLE(-10), ANGLE(10), ANGLE(-30), ANGLE(30), ANGLE(-10), ANGLE(10) };
/*puzzles*/
void PuzzleHoleCollision(short itemNum, ITEM_INFO* l, COLL_INFO* coll)

View file

@ -96,7 +96,7 @@ void DoBoatWakeEffect(ITEM_INFO* boat)
spark->dG = 64;
spark->dB = 64;
spark->colFadeSpeed = 1;
spark->transType = COLADD;
spark->transType = TransTypeEnum::COLADD;
spark->life = spark->sLife = (GetRandomControl() & 3) + 6;
spark->fadeToBlack = spark->life - 4;
spark->x = (BOAT_SIDE * phd_sin(boat->pos.yRot) >> W2V_SHIFT) + (GetRandomControl() & 128) + x - 8;
@ -124,7 +124,7 @@ void DoBoatWakeEffect(ITEM_INFO* boat)
spark->dG = 64;
spark->dB = 64;
spark->colFadeSpeed = 1;
spark->transType = COLADD;
spark->transType = TransTypeEnum::COLADD;
spark->life = spark->sLife = (GetRandomControl() & 3) + 6;
spark->fadeToBlack = spark->life - 4;
spark->x = (BOAT_SIDE * phd_sin(boat->pos.yRot) >> W2V_SHIFT) + (GetRandomControl() & 128) + x - 8;

View file

@ -321,7 +321,7 @@ void DoSnowEffect(ITEM_INFO* skidoo)
spark->dG = 64;
spark->dB = 64;
spark->colFadeSpeed = 1;
spark->transType = COLADD;
spark->transType = TransTypeEnum::COLADD;
spark->life = spark->sLife = (GetRandomControl() & 3) + 6;
spark->fadeToBlack = spark->life - 4;
spark->x = (GetRandomControl() & 255) + skidoo->pos.xPos - 8;

View file

@ -202,7 +202,7 @@ static void DemigodHammerAttack(int x, int y, int z, int something)
spark->colFadeSpeed = 4;
spark->dShade = (GetRandomControl() & 0x1F) + 96;
spark->fadeToBlack = 24 - (GetRandomControl() & 7);
spark->transType = COLADD;
spark->transType = TransTypeEnum::COLADD;
spark->life = spark->sLife = (GetRandomControl() & 7) + 48;
spark->x = (GetRandomControl() & 0x1F) + x - 16;
spark->y = (GetRandomControl() & 0x1F) + y - 16;

View file

@ -74,8 +74,9 @@ namespace TEN::Entities::TR4
BITE_INFO sasGun = { 0, 300, 64, 7 };
OBJECT_COLLISION_BOUNDS SasDragBlokeBounds = { (short)0xFF00, 0x100, (short)0xFF9C, 0x0064, (short)0xFE00, (short)0xFE34, (short)0xF8E4, 0x071C, (short)0xEAAC, 0x1554, 0x0000, 0x0000 };
PHD_VECTOR SasDragBlokePosition = { 0, 0, -460 };
OBJECT_COLLISION_BOUNDS SasDragBlokeBounds =
{ -256, 256, -64, 100, -200, -460, ANGLE(-10), ANGLE(10), ANGLE(-30), ANGLE(30), 0, 0 };
void InitialiseSas(short itemNumber)
{

View file

@ -474,7 +474,7 @@ void DrawWraith(int x, int y, int z, short xVel, short yVel, short zVel, int obj
spark->colFadeSpeed = 4;
spark->fadeToBlack = 7;
spark->transType = COLADD;
spark->transType = TransTypeEnum::COLADD;
life = (GetRandomControl() & 7) + 12;
spark->life = life;
spark->sLife = life;
@ -539,7 +539,7 @@ void WraithWallsEffect(int x, int y, int z, short yrot, short objNumber)
spark->dB = dB;
spark->colFadeSpeed = 4;
spark->fadeToBlack = 7;
spark->transType = COLADD;
spark->transType = TransTypeEnum::COLADD;
short life = (GetRandomControl() & 7) + 32;
spark->life = life;
spark->sLife = life;

View file

@ -8,12 +8,9 @@
#include "setup.h"
#include "health.h"
OBJECT_COLLISION_BOUNDS SarcophagusBounds =
{
(short)0xFE00, 512, (short)0xFF9C, 100, (short)0xFE00, 0,
(short)0xF8E4, (short)1820, (short)0xEAAC, (short)5460, 0, 0
};
static PHD_VECTOR SarcophagusPosition(0, 0, -300);
OBJECT_COLLISION_BOUNDS SarcophagusBounds =
{ -512, 512, -100, 100, -512, 0, ANGLE(-10), ANGLE(10), ANGLE(-30), ANGLE(30), 0, 0 };
void InitialiseSarcophagus(short itemNum)
{

View file

@ -15,10 +15,7 @@ using namespace TEN::Entities::Switches;
using namespace TEN::Entities::TR4;
OBJECT_COLLISION_BOUNDS ScalesBounds =
{
(short)0xFA80, (short)0xFA80, 0x0000, 0x0000, (short)0xFE00, 0x0200,
(short)0xF8E4, (short)0x071C, (short)0xEAAC, (short)0x1554, (short)0xF8E4, (short)0x071C
};
{ -1408, -1408, 0, 0, -512, 512, ANGLE(-10), ANGLE(10), ANGLE(-30), ANGLE(30), ANGLE(-10), ANGLE(10) };
void ScalesControl(short itemNum)
{

View file

@ -16,12 +16,9 @@ char SenetDisplacement, ActiveSenetPieces[6], SenetBoard[17];
int SenetTargetX, SenetTargetZ;
char ActivePiece = -1;
OBJECT_COLLISION_BOUNDS GameStixBounds =
{
(short)0xFF00, 0x0100, (short)0xFF38, 0x00C8, (short)0xFF00, 0x0100, (short)0xF8E4, (short)0x071C, (short)0xEAAC, (short)0x1554, 0x0, 0x0
};
static PHD_VECTOR GameStixPosition = { 0, 0, -100 };
OBJECT_COLLISION_BOUNDS GameStixBounds =
{ -256, 256, -200, 200, -256, 256, ANGLE(-10), ANGLE(10), ANGLE(-30), ANGLE(30), 0, 0 };
void InitialiseGameStix(short itemNumber)
{

View file

@ -40,14 +40,14 @@ namespace TEN::Entities::TR4
short rotations[8] =
{
(short)0x8000,
(short)0xa000,
(short)0xc000,
(short)0xe000,
0,
0x2000,
0x4000,
0x6000
ANGLE(180),
ANGLE(225),
ANGLE(270),
ANGLE(315),
ANGLE(0),
ANGLE(45),
ANGLE(90),
ANGLE(135)
};
if (item->triggerFlags & 8)

View file

@ -460,7 +460,7 @@ static void TriggerMotorbikeExhaustSmoke(int x, int y, int z, short angle, short
sptr->sLife = rnd;
}
sptr->transType = COLADD;
sptr->transType = TransTypeEnum::COLADD;
sptr->x = x + (GetRandomControl() & 0xF) - 8;
sptr->y = y + (GetRandomControl() & 0xF) - 8;
sptr->z = z + (GetRandomControl() & 0xF) - 8;

View file

@ -161,7 +161,7 @@ void SmokeEmitterControl(short itemNumber)
spark->dR = 48;
spark->dG = 48;
spark->dB = 48;
spark->transType = COLADD;
spark->transType = TransTypeEnum::COLADD;
spark->x = (GetRandomControl() & 0x3F) + item->pos.xPos - 32;
spark->y = (GetRandomControl() & 0x3F) + item->pos.yPos - 32;
spark->z = (GetRandomControl() & 0x3F) + item->pos.zPos - 32;
@ -269,9 +269,9 @@ void SmokeEmitterControl(short itemNumber)
spark->colFadeSpeed = (GetRandomControl() & 3) + 8;
spark->life = spark->sLife = (GetRandomControl() & 7) + 28;
if (item->objectNumber == ID_SMOKE_EMITTER_WHITE)
spark->transType = COLSUB;
spark->transType = TransTypeEnum::COLSUB;
else
spark->transType = COLADD;
spark->transType = TransTypeEnum::COLADD;
spark->x = (GetRandomControl() & 0x3F) + item->pos.xPos - 32;
spark->y = (GetRandomControl() & 0x3F) + item->pos.yPos - 32;
spark->z = (GetRandomControl() & 0x3F) + item->pos.zPos - 32;

View file

@ -12,13 +12,10 @@
#include "setup.h"
#include "tr5_pushableblock_info.h"
static OBJECT_COLLISION_BOUNDS PushableBlockBounds = {
0x0000, 0x0000, (short)0xFFC0, 0x0000,
0x0000, 0x0000, (short)0xF8E4, 0x071C,
(short)0xEAAC, 0x1554, (short)0xF8E4, 0x071C
};
PHD_VECTOR PushableBlockPos = { 0, 0, 0 };
static OBJECT_COLLISION_BOUNDS PushableBlockBounds =
{ 0, 0, -64, 0, 0, 0, ANGLE(-10), ANGLE(10), ANGLE(-30), ANGLE(30), ANGLE(-10), ANGLE(10) };
int DoPushPull = 0;
void ClearMovableBlockSplitters(int x, int y, int z, short roomNumber)

View file

@ -144,7 +144,7 @@ void ControlTeleporter(short itemNumber)
v35->FadeToBlack = 4;
v35->Life = 24;
v35->sLife = 24;
v35->TransType = 2;
v35->TransType = TransTypeEnum::COLADD;
v35->x = src.xPos;
v35->y = src.yPos;
v35->z = src.zPos;