1
0
mirror of https://github.com/OpenRCT2/OpenRCT2 synced 2026-01-06 06:32:56 +01:00

Use sprite constants for staff list dialog

This commit is contained in:
Marijn van der Werf
2016-07-28 23:21:01 +02:00
parent a17e6cee5e
commit b4f8f13849
2 changed files with 44 additions and 3 deletions

View File

@@ -87,6 +87,24 @@ enum {
SPR_SHOP_ITEM_EMPTY_JUICE_CUP = 5108,
SPR_SHOP_ITEM_ROAST_SAUSAGE = 5109,
SPR_SHOP_ITEM_EMPTY_BOWL_BLUE = 5110,
SPR_STAFF_ORDERS_SWEEPING = 5111,
SPR_STAFF_ORDERS_WATER_FLOWERS = 5112,
SPR_STAFF_ORDERS_EMPTY_BINS = 5113,
SPR_STAFF_ORDERS_MOWING = 5114,
SPR_STAFF_ORDERS_INSPECT_RIDES = 5115,
SPR_STAFF_ORDERS_FIX_RIDES = 5116,
SPR_STAFF_PATROL_PATH = 5117,
SPR_STAFF_COSTUME_PANDA = 5118,
SPR_STAFF_COSTUME_TIGER = 5119,
SPR_STAFF_COSTUME_ELEPHANT = 5120,
SPR_STAFF_COSTUME_ROMAN = 5121,
SPR_STAFF_COSTUME_GORILLA = 5122,
SPR_STAFF_COSTUME_SNOWMAN = 5123,
SPR_STAFF_COSTUME_KNIGHT = 5124,
SPR_STAFF_COSTUME_ASTRONAUT = 5125,
SPR_STAFF_COSTUME_BANDIT = 5126,
SPR_STAFF_COSTUME_SHERIFF = 5127,
SPR_STAFF_COSTUME_PIRATE = 5128,
SPR_RIDE_CONSTRUCTION_STRAIGHT = 5137,
SPR_RIDE_CONSTRUCTION_LEFT_CURVE = 5138,

View File

@@ -616,6 +616,28 @@ void window_staff_list_paint(rct_window *w, rct_drawpixelinfo *dpi)
gfx_draw_string_left(dpi, STR_STAFF_LIST_COUNTER, gCommonFormatArgs, 0, w->x + 4, window_staff_list_widgets[WIDX_STAFF_LIST_LIST].bottom + w->y + 2);
}
/** rct2: 0x00992A08 */
static const uint32 staffOrderBaseSprites[] = {
SPR_STAFF_ORDERS_SWEEPING,
SPR_STAFF_ORDERS_INSPECT_RIDES,
0,
0,
};
static const uint32 staffCostumeSprites[] = {
SPR_STAFF_COSTUME_PANDA,
SPR_STAFF_COSTUME_TIGER,
SPR_STAFF_COSTUME_ELEPHANT,
SPR_STAFF_COSTUME_ROMAN,
SPR_STAFF_COSTUME_GORILLA,
SPR_STAFF_COSTUME_SNOWMAN,
SPR_STAFF_COSTUME_KNIGHT,
SPR_STAFF_COSTUME_ASTRONAUT,
SPR_STAFF_COSTUME_BANDIT,
SPR_STAFF_COSTUME_SHERIFF,
SPR_STAFF_COSTUME_PIRATE,
};
/**
*
* rct2: 0x006BD785
@@ -657,13 +679,13 @@ void window_staff_list_scrollpaint(rct_window *w, rct_drawpixelinfo *dpi, int sc
// True if a patrol path is set for the worker
if (RCT2_ADDRESS(RCT2_ADDRESS_STAFF_MODE_ARRAY, uint8)[peep->staff_id] & 2) {
gfx_draw_sprite(dpi, 0x13FD, 110, y - 1, 0);
gfx_draw_sprite(dpi, SPR_STAFF_PATROL_PATH, 110, y - 1, 0);
}
staffOrderIcon_x = 0x7D;
if (peep->staff_type != 3) {
staffOrders = peep->staff_orders;
staffOrderSprite = RCT2_ADDRESS(0x00992A08, uint32)[selectedTab];
staffOrderSprite = staffOrderBaseSprites[selectedTab];
while (staffOrders != 0) {
if (staffOrders & 1) {
@@ -671,10 +693,11 @@ void window_staff_list_scrollpaint(rct_window *w, rct_drawpixelinfo *dpi, int sc
}
staffOrders = staffOrders >> 1;
staffOrderIcon_x += 9;
// TODO: Remove sprite ID addition
staffOrderSprite++;
}
} else {
gfx_draw_sprite(dpi, peep->sprite_type - 4 + 0x13FE, staffOrderIcon_x, y - 1, 0);
gfx_draw_sprite(dpi, staffCostumeSprites[peep->sprite_type - 4], staffOrderIcon_x, y - 1, 0);
}
}