mirror of
https://github.com/OpenRCT2/OpenRCT2
synced 2026-01-17 03:53:07 +01:00
Implemented mouseup for window_staff_peep.
This commit is contained in:
@@ -54,7 +54,7 @@ enum GAME_COMMAND {
|
||||
GAME_COMMAND_HIRE_NEW_STAFF_MEMBER, // 29
|
||||
GAME_COMMAND_30,
|
||||
GAME_COMMAND_31,
|
||||
GAME_COMMAND_32,
|
||||
GAME_COMMAND_SET_STAFF_ORDER,
|
||||
GAME_COMMAND_33,
|
||||
GAME_COMMAND_SET_PARK_OPEN, // 34
|
||||
GAME_COMMAND_35,
|
||||
|
||||
@@ -86,6 +86,10 @@ void window_staff_peep_disable_widgets(rct_window* w);
|
||||
void window_staff_peep_close();
|
||||
void window_staff_peep_mouseup();
|
||||
|
||||
void window_staff_peep_orders_mouseup();
|
||||
|
||||
void window_staff_peep_stats_mouseup();
|
||||
|
||||
// 0x992AEC
|
||||
static void* window_staff_peep_overview_events[] = {
|
||||
window_staff_peep_close,
|
||||
@@ -121,7 +125,7 @@ static void* window_staff_peep_overview_events[] = {
|
||||
// 0x992B5C
|
||||
static void* window_staff_peep_orders_events[] = {
|
||||
window_staff_peep_emptysub,
|
||||
(void*)0x6BE7DB,
|
||||
window_staff_peep_orders_mouseup,
|
||||
(void*)0x6BE975,
|
||||
(void*)0x6BE802,
|
||||
(void*)0x6BE809,
|
||||
@@ -153,7 +157,7 @@ static void* window_staff_peep_orders_events[] = {
|
||||
// 0x992BCC
|
||||
static void* window_staff_peep_stats_events[] = {
|
||||
window_staff_peep_emptysub,
|
||||
(void*)0x6BEBCF,
|
||||
window_staff_peep_stats_mouseup,
|
||||
(void*)0x6BEC1B,
|
||||
window_staff_peep_emptysub,
|
||||
window_staff_peep_emptysub,
|
||||
@@ -409,7 +413,6 @@ void window_staff_peep_mouseup()
|
||||
rct_peep* peep = GET_PEEP(w->number);
|
||||
|
||||
switch (widgetIndex) {
|
||||
|
||||
case WIDX_CLOSE:
|
||||
window_close(w);
|
||||
break;
|
||||
@@ -445,4 +448,62 @@ void window_staff_peep_mouseup()
|
||||
window_show_textinput(w, (int)widgetIndex, 0xBA1, 0xBA2, peep->name_string_idx);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/** rct2: 0x006BE814 */
|
||||
void window_staff_peep_set_order(rct_window* w, int order_id)
|
||||
{
|
||||
int eax = 1 << order_id;
|
||||
|
||||
rct_peep* peep = GET_PEEP(w->number);
|
||||
|
||||
int ax = peep->var_C6 ^ eax;
|
||||
int flags = (ax << 8) | 1;
|
||||
|
||||
game_do_command(peep->x, flags, peep->y, w->number, GAME_COMMAND_SET_STAFF_ORDER, (int)peep, 0);
|
||||
}
|
||||
|
||||
/** rct2: 0x006BE7DB */
|
||||
void window_staff_peep_orders_mouseup()
|
||||
{
|
||||
short widgetIndex;
|
||||
rct_window* w;
|
||||
window_widget_get_registers(w, widgetIndex);
|
||||
|
||||
switch (widgetIndex) {
|
||||
case WIDX_CLOSE:
|
||||
window_close(w);
|
||||
break;
|
||||
case WIDX_TAB_1:
|
||||
case WIDX_TAB_2:
|
||||
case WIDX_TAB_3:
|
||||
window_staff_peep_set_page(w, widgetIndex - WIDX_TAB_1);
|
||||
break;
|
||||
case WIDX_VIEWPORT:
|
||||
case WIDX_BTM_LABEL:
|
||||
case WIDX_PICKUP:
|
||||
case WIDX_PATROL:
|
||||
case WIDX_RENAME:
|
||||
window_staff_peep_set_order(w, widgetIndex - 8);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/** rct2: 0x0006BEBCF */
|
||||
void window_staff_peep_stats_mouseup()
|
||||
{
|
||||
short widgetIndex;
|
||||
rct_window* w;
|
||||
window_widget_get_registers(w, widgetIndex);
|
||||
|
||||
switch (widgetIndex) {
|
||||
case WIDX_CLOSE:
|
||||
window_close(w);
|
||||
break;
|
||||
case WIDX_TAB_1:
|
||||
case WIDX_TAB_2:
|
||||
case WIDX_TAB_3:
|
||||
window_staff_peep_set_page(w, widgetIndex - WIDX_TAB_1);
|
||||
break;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user