22 #ifndef DARKSEED_ROOM_H 23 #define DARKSEED_ROOM_H 25 #include "common/rect.h" 26 #include "darkseed/nsp.h" 27 #include "darkseed/pal.h" 28 #include "darkseed/pic.h" 38 uint16 roomNumber = 0;
58 bool _palLoaded =
false;
61 static constexpr
int MAX_CONNECTORS = 12;
75 uint16 _selectedObjIndex = 0;
76 int16 _collisionType = 0;
78 explicit Room(
int roomNumber);
85 int checkCursorAndMoveableObjects();
86 int checkCursorAndStaticObjects(
int x,
int y);
87 int CheckCursorAndMovedObjects();
88 int getRoomExitAtCursor();
89 void getWalkTargetForObjectType_maybe(
int objId);
90 int getObjectUnderCursor();
91 uint16 getDoorTargetRoom(
int objId);
92 int getExitRoomNumberAtPoint(
int x,
int y);
95 bool canWalkAtLocation(
int x,
int y);
96 bool canWalkInLineToTarget(
int x,
int y,
int targetX,
int targetY);
97 void printRoomDescriptionText()
const;
98 void calculateScaledSpriteDimensions(
int width,
int height,
int curYPosition);
99 bool isOutside()
const;
101 void runRoomObjects();
102 void removeObjectFromRoom(int16 objNum);
103 void updateRoomObj(int16 objNum, int16 x, int16 width, int16 y, int16 height);
104 bool advanceFrame(
int animIdx);
105 void mikeStickThrowAnim();
106 void loadRoom61AWalkableLocations();
107 void restorePalette();
108 void installPalette();
112 static MusicId getMusicIdForRoom(uint8 roomNumber);
113 void loadRoomMusic();
119 void advanceLocAnimFrame(
int roomObjIdx);
120 void dosDemoFixupRoomObjects();
125 #endif // DARKSEED_ROOM_H
Definition: adlib_dsf.h:27