Browse Source

Reorder objects.cpp

pull/914/head
Anders Jenbo 5 years ago
parent
commit
377e9a3383
  1. 30
      Source/objects.cpp
  2. 134
      Source/objects.h

30
Source/objects.cpp

@ -297,6 +297,17 @@ DIABOOL RndLocOk(int xp, int yp)
return FALSE;
}
static DIABOOL WallTrapLocOkK(int xp, int yp)
{
if (dFlags[xp][yp] & BFLAG_POPULATED)
return FALSE;
if (nTrapTable[dPiece[xp][yp]] != FALSE)
return TRUE;
else
return FALSE;
}
void InitRndLocObj(int min, int max, int objtype)
{
int i, xp, yp, numobjs;
@ -603,7 +614,7 @@ void AddL3Objs(int x1, int y1, int x2, int y2)
}
}
DIABOOL WallTrapLocOk(int xp, int yp)
DIABOOL TorchLocOK(int xp, int yp)
{
if (dFlags[xp][yp] & BFLAG_POPULATED)
return FALSE;
@ -616,7 +627,7 @@ void AddL2Torches()
for (j = 0; j < MAXDUNY; j++) {
for (i = 0; i < MAXDUNX; i++) {
if (!WallTrapLocOk(i, j))
if (!TorchLocOK(i, j))
continue;
pn = dPiece[i][j];
@ -635,17 +646,6 @@ void AddL2Torches()
}
}
DIABOOL TorchLocOK(int xp, int yp)
{
if (dFlags[xp][yp] & BFLAG_POPULATED)
return FALSE;
if (nTrapTable[dPiece[xp][yp]] != FALSE)
return TRUE;
else
return FALSE;
}
void AddObjTraps()
{
char oi_trap, oi;
@ -675,7 +675,7 @@ void AddObjTraps()
while (!nSolidTable[dPiece[xp][j]])
xp--;
if (!TorchLocOK(xp, j) || i - xp <= 1)
if (!WallTrapLocOkK(xp, j) || i - xp <= 1)
continue;
AddObject(OBJ_TRAPL, xp, j);
@ -688,7 +688,7 @@ void AddObjTraps()
while (!nSolidTable[dPiece[i][yp]])
yp--;
if (!TorchLocOK(i, yp) || j - yp <= 1)
if (!WallTrapLocOkK(i, yp) || j - yp <= 1)
continue;
AddObject(OBJ_TRAPR, i, yp);

134
Source/objects.h

@ -6,86 +6,20 @@
#ifndef __OBJECTS_H__
#define __OBJECTS_H__
extern int trapid;
extern int trapdir;
extern BYTE *pObjCels[40];
extern char ObjFileList[40];
extern int objectactive[MAXOBJECTS];
extern int nobjects;
extern int leverid;
extern int objectavail[MAXOBJECTS];
extern ObjectStruct object[MAXOBJECTS];
extern BOOL InitObjFlag;
extern int numobjfiles;
void InitObjectGFX();
void FreeObjectGFX();
DIABOOL RndLocOk(int xp, int yp);
void InitRndLocObj(int min, int max, int objtype);
void InitRndLocBigObj(int min, int max, int objtype);
void InitRndLocObj5x5(int min, int max, int objtype);
void ClrAllObjects();
void AddTortures();
void AddCandles();
void AddBookLever(int lx1, int ly1, int lx2, int ly2, int x1, int y1, int x2, int y2, int msg);
void InitRndBarrels();
void AddL1Objs(int x1, int y1, int x2, int y2);
#ifdef HELLFIRE
void add_crypt_objs(int x1, int y1, int x2, int y2);
#endif
void AddL2Objs(int x1, int y1, int x2, int y2);
void AddL3Objs(int x1, int y1, int x2, int y2);
DIABOOL WallTrapLocOk(int xp, int yp);
void AddL2Torches();
DIABOOL TorchLocOK(int xp, int yp);
void AddObjTraps();
void AddChestTraps();
void LoadMapObjects(BYTE *pMap, int startx, int starty, int x1, int y1, int w, int h, int leveridx);
void LoadMapObjs(BYTE *pMap, int startx, int starty);
void AddDiabObjs();
#ifdef HELLFIRE
void objects_add_lv22(int s);
void objects_add_lv24();
#endif
void AddStoryBooks();
void AddHookedBodies(int freq);
void AddL4Goodies();
void AddLazStand();
void InitObjects();
void SetMapObjects(BYTE *pMap, int startx, int starty);
void DeleteObject_(int oi, int i);
void SetupObject(int i, int x, int y, int ot);
void SetObjMapRange(int i, int x1, int y1, int x2, int y2, int v);
void SetBookMsg(int i, int msg);
void AddL1Door(int i, int x, int y, int ot);
void AddSCambBook(int i);
void AddChest(int i, int t);
void AddL2Door(int i, int x, int y, int ot);
void AddL3Door(int i, int x, int y, int ot);
void AddSarc(int i);
void AddFlameTrap(int i);
void AddFlameLvr(int i);
void AddTrap(int i, int ot);
void AddObjLight(int i, int r);
void AddBarrel(int i, int t);
void AddShrine(int i);
void AddBookcase(int i);
void AddPurifyingFountain(int i);
void AddArmorStand(int i);
void AddGoatShrine(int i);
void AddCauldron(int i);
void AddMurkyFountain(int i);
void AddTearFountain(int i);
void AddDecap(int i);
void AddVilebook(int i);
void AddMagicCircle(int i);
void AddBrnCross(int i);
void AddBookstand(int i);
void AddBloodFtn(int i);
void AddPedistal(int i);
void AddStoryBook(int i);
void AddWeaponRack(int i);
void AddTorturedBody(int i);
void GetRndObjLoc(int randarea, int &xx, int &yy);
void AddMushPatch();
void AddSlainHero();
@ -95,76 +29,19 @@ void objects_44DA68(int a1, int a2);
void objects_454AF0(int a1, int a2, int a3);
#endif
void AddObject(int ot, int ox, int oy);
void Obj_Light(int i, int lr);
void Obj_Circle(int i);
void Obj_StopAnim(int i);
void Obj_Door(int i);
void Obj_Sarc(int i);
void ActivateTrapLine(int ttype, int tid);
void Obj_FlameTrap(int i);
void Obj_Trap(int i);
void Obj_BCrossDamage(int i);
void ProcessObjects();
void ObjSetMicro(int dx, int dy, int pn);
void objects_set_door_piece(int x, int y);
void ObjSetMini(int x, int y, int v);
void ObjL1Special(int x1, int y1, int x2, int y2);
void ObjL2Special(int x1, int y1, int x2, int y2);
void DoorSet(int oi, int dx, int dy);
void RedoPlayerVision();
void OperateL1RDoor(int pnum, int oi, DIABOOL sendflag);
void OperateL1LDoor(int pnum, int oi, DIABOOL sendflag);
void OperateL2RDoor(int pnum, int oi, DIABOOL sendflag);
void OperateL2LDoor(int pnum, int oi, BOOL sendflag);
void OperateL3RDoor(int pnum, int oi, DIABOOL sendflag);
void OperateL3LDoor(int pnum, int oi, DIABOOL sendflag);
void MonstCheckDoors(int m);
void ObjChangeMap(int x1, int y1, int x2, int y2);
void ObjChangeMapResync(int x1, int y1, int x2, int y2);
void OperateL1Door(int pnum, int i, DIABOOL sendflag);
void OperateLever(int pnum, int i);
void OperateBook(int pnum, int i);
void OperateBookLever(int pnum, int i);
void OperateSChambBk(int pnum, int i);
void OperateChest(int pnum, int i, DIABOOL sendmsg);
void OperateMushPatch(int pnum, int i);
void OperateInnSignChest(int pnum, int i);
void OperateSlainHero(int pnum, int i, DIABOOL sendmsg);
void OperateTrapLvr(int i);
void OperateSarc(int pnum, int i, DIABOOL sendmsg);
void OperateL2Door(int pnum, int i, DIABOOL sendflag);
void OperateL3Door(int pnum, int i, DIABOOL sendflag);
void OperatePedistal(int pnum, int i);
void TryDisarm(int pnum, int i);
int ItemMiscIdIdx(int imiscid);
void OperateShrine(int pnum, int i, int sType);
void OperateSkelBook(int pnum, int i, DIABOOL sendmsg);
void OperateBookCase(int pnum, int i, DIABOOL sendmsg);
void OperateDecap(int pnum, int i, DIABOOL sendmsg);
void OperateArmorStand(int pnum, int i, DIABOOL sendmsg);
int FindValidShrine(int i);
void OperateGoatShrine(int pnum, int i, int sType);
void OperateCauldron(int pnum, int i, int sType);
DIABOOL OperateFountains(int pnum, int i);
void OperateWeaponRack(int pnum, int i, DIABOOL sendmsg);
void OperateStoryBook(int pnum, int i);
void OperateLazStand(int pnum, int i);
void OperateObject(int pnum, int i, BOOL TeleFlag);
void SyncOpL1Door(int pnum, int cmd, int i);
void SyncOpL2Door(int pnum, int cmd, int i);
void SyncOpL3Door(int pnum, int cmd, int i);
void SyncOpObject(int pnum, int cmd, int i);
void BreakCrux(int i);
void BreakBarrel(int pnum, int i, int dam, BOOL forcebreak, BOOL sendmsg);
void BreakObject(int pnum, int oi);
void SyncBreakObj(int pnum, int oi);
void SyncL1Doors(int i);
void SyncCrux(int i);
void SyncLever(int i);
void SyncQSTLever(int i);
void SyncPedistal(int i);
void SyncL2Doors(int i);
void SyncL3Doors(int i);
void SyncObjectAnim(int o);
void GetObjectStr(int i);
#ifdef HELLFIRE
@ -174,15 +51,4 @@ void objects_rnd_454BEA();
DIABOOL objects_lv_24_454B04(int s);
#endif
/* rdata */
extern int bxadd[8];
extern int byadd[8];
extern const char *const shrinestrs[NUM_SHRINETYPE];
extern char shrinemin[NUM_SHRINETYPE];
extern char shrinemax[NUM_SHRINETYPE];
extern BYTE shrineavail[NUM_SHRINETYPE];
extern const char *const StoryBookName[];
extern int StoryText[3][3];
#endif /* __OBJECTS_H__ */

Loading…
Cancel
Save