Files
oboe/src/scenedit/scen.global.hpp
Celtic Minstrel c68b01c3a2 Make roads an overlay instead of a terrain trim type
Game:
- Roads now show on the automap again!
- Possible fix for undetected issue in displaying outdoor special spots
- Road conversion code for legacy scenarios now applied in towns too

Editor:
- New tool for placing roads, works the same as special dots
- Roads appear at all zoom levels

Other:
- Removed all terrain graphics that used the small road dot, replacing them with blank (white) space
- Make obvious out-of-bounds array accesses an error in the project settings
2015-09-27 22:37:12 -04:00

108 lines
3.6 KiB
C++

#ifndef BOE_SCEN_GLOBAL_HPP
#define BOE_SCEN_GLOBAL_HPP
#define DRAG_EDGE 15
#define DISPLAY_LEFT 23
#define DISPLAY_TOP 23
#define BITMAP_WIDTH 28
#define BITMAP_HEIGHT 36
#define NUM_BUTTONS 15
#define NUM_DLOG_B 53
#define NLS 26
// number of left slots for buttons
#define NRS right_button_status.size()
// number of right slots for scrolling list
#define NRSONPAGE 33
// number of right slots for scrolling list on page at 1 time
#define RIGHT_AREA_UL_X 287
#define RIGHT_AREA_UL_Y 5
#define RIGHT_AREA_WIDTH 290
#define RIGHT_AREA_HEIGHT 400
#define TER_RECT_UL_X 6
#define TER_RECT_UL_Y 19 // Formerly 25
enum eScenMode {
MODE_DRAWING = 0,
MODE_SET_WANDER_POINTS = 2,
MODE_ROOM_RECT = 3,
MODE_PLACE_ITEM = 4,
MODE_EDIT_ITEM = 5,
MODE_TOGGLE_SPECIAL_DOT = 6,
MODE_SET_TOWN_START = 7, // unused; for something I'd like to add
MODE_PLACE_SAME_CREATURE = 8,
MODE_SET_TOWN_RECT = 9,
MODE_PLACE_NORTH_ENTRANCE = 10,
MODE_PLACE_EAST_ENTRANCE = 11,
MODE_PLACE_SOUTH_ENTRANCE = 12,
MODE_PLACE_WEST_ENTRANCE = 13,
MODE_FLOOD_FILL = 14,
MODE_TOGGLE_ROAD = 15,
MODE_PLACE_FORCECAGE = 19,
MODE_PLACE_WEB = 20,
MODE_PLACE_CRATE = 21,
MODE_PLACE_BARREL = 22,
MODE_PLACE_FIRE_BARRIER = 23,
MODE_PLACE_FORCE_BARRIER = 24,
MODE_PLACE_QUICKFIRE = 25,
MODE_CLEAR_FIELDS = 26,
MODE_PLACE_STONE_BLOCK = 27,
MODE_PLACE_CREATURE = 28,
MODE_LARGE_PAINTBRUSH = 29, // uncertain
MODE_SMALL_PAINTBRUSH = 30, // uncertain
MODE_LARGE_SPRAYCAN = 31, // uncertain
MODE_SMALL_SPRAYCAN = 32, // uncertain
MODE_PLACE_SFX = 33, // eg bloodstain or ashes
MODE_EYEDROPPER = 34,
MODE_HOLLOW_RECT = 35,
MODE_FILLED_RECT = 36,
MODE_ERASER = 37,
MODE_EDIT_SIGN = 38,
MODE_EDIT_CREATURE = 39,
MODE_EDIT_SPECIAL = 40, // or create a special if there's none there
MODE_COPY_SPECIAL = 41,
MODE_PASTE_SPECIAL = 42,
MODE_ERASE_SPECIAL = 43,
MODE_PLACE_SPECIAL = 44, // or set the special to be called if there's already one there
MODE_EDIT_TOWN_ENTRANCE = 45, // for outdoors
MODE_PLACE_SAME_ITEM = 46,
MODE_SET_OUT_START = 47,
MODE_ERASE_CREATURE = 48,
MODE_ERASE_ITEM = 49,
MODE_ERASE_TOWN_ENTRANCE = 50,
// Modes below this do not have the terrain area visible.
MODE_MAIN_SCREEN = 60,
MODE_INTRO_SCREEN = 61,
MODE_EDIT_TYPES = 62, // currently only used for editing terrain, but I'd like to use it for editing monsters and items too.
};
enum eDrawMode {
DRAW_TERRAIN = 0,
DRAW_MONST = 1,
DRAW_ITEM = 2,
};
enum eStrMode {
STRS_SCEN, STRS_OUT, STRS_TOWN, STRS_JOURNAL,
STRS_OUT_SIGN, STRS_TOWN_SIGN,
STRS_OUT_RECT, STRS_TOWN_RECT,
};
enum ePalBtn {
PAL_BLANK = -1,
PAL_PENCIL = 0, PAL_BRUSH_LG = 1, PAL_BRUSH_SM = 2, PAL_SPRAY_LG = 3, PAL_SPRAY_SM = 4, PAL_DROPPER = 5, PAL_RECT_HOLLOW = 6, PAL_RECT_FILLED = 7, PAL_BUCKET = 8,
PAL_ZOOM = 10, PAL_ERASER = 11, PAL_EDIT_SIGN = 12, PAL_TEXT_AREA = 13, PAL_WANDER = 14, PAL_CHANGE = 15, PAL_ERASE_TOWN = 16, PAL_EDIT_TOWN = 17,
PAL_EDIT_ITEM = 20, PAL_SAME_ITEM = 21, PAL_ERASE_ITEM = 22, PAL_SPEC = 23, PAL_COPY_SPEC = 24, PAL_PASTE_SPEC = 25, PAL_ERASE_SPEC = 26, PAL_EDIT_SPEC = 27,
PAL_EDIT_MONST = 30, PAL_SAME_MONST = 31, PAL_ERASE_MONST = 32, PAL_ENTER_N = 34, PAL_ENTER_W = 35, PAL_ENTER_S = 36, PAL_ENTER_E = 37,
PAL_WEB = 40, PAL_CRATE = 41, PAL_BARREL = 42, PAL_FIRE_BARR = 43, PAL_FORCE_BARR = 44, PAL_QUICKFIRE = 45, PAL_SPEC_SPOT = 46, PAL_BLOCK = 47, PAL_FORCECAGE = 48, PAL_ERASE_FIELD = 33,
PAL_SFX_SB = 50, PAL_SFX_MB = 51, PAL_SFX_LB = 52, PAL_SFX_SS = 53, PAL_SFX_LS = 54, PAL_SFX_ASH = 55, PAL_SFX_BONE = 56, PAL_SFX_ROCK = 57, PAL_ROAD = 58,
PAL_ARROW_UP = 9, PAL_ARROW_DOWN = 69, PAL_TERRAIN = 29, PAL_ITEM = 39, PAL_MONST = 49,
};
#endif