game_command_fire_staff_member

This commit is contained in:
zsilencer 2015-04-12 14:24:43 -06:00
parent 97bd30ece7
commit 623e607dfd
4 changed files with 21 additions and 2 deletions

View File

@ -905,7 +905,7 @@ static uint32 game_do_command_table[58] = {
0x006C5AE9,
0, // use new_game_command_table, original: 0x006BEFA1, 29
0, // 30
0x006C0B83,
0,
0,
0,
0,
@ -968,7 +968,7 @@ static GAME_COMMAND_POINTER* new_game_command_table[58] = {
game_command_emptysub,
game_command_hire_new_staff_member, //game_command_emptysub,
game_command_set_staff_patrol, // 30
game_command_emptysub,
game_command_fire_staff_member,
game_command_set_staff_order,
game_command_set_park_name,
game_command_set_park_open,

View File

@ -570,6 +570,7 @@ int peep_check_easteregg_name(int index, rct_peep *peep);
int peep_get_easteregg_name_id(rct_peep *peep);
int peep_is_mechanic(rct_peep *peep);
int peep_has_food(rct_peep* peep);
void peep_sprite_remove(rct_peep* peep);
void peep_window_state_update(rct_peep* peep);
void peep_decrement_num_riders(rct_peep* peep);

View File

@ -282,6 +282,23 @@ void game_command_set_staff_patrol(int *eax, int *ebx, int *ecx, int *edx, int *
*ebx = 0;
}
/**
*
* rct2: 0x006C0B83
*/
void game_command_fire_staff_member(int *eax, int *ebx, int *ecx, int *edx, int *esi, int *edi, int *ebp)
{
RCT2_GLOBAL(RCT2_ADDRESS_NEXT_EXPENDITURE_TYPE, uint8) = 40;
if(*ebx & GAME_COMMAND_FLAG_APPLY){
window_close_by_class(WC_FIRE_PROMPT);
uint16 sprite_id = *edx;
rct_peep *peep = &g_sprite_list[sprite_id].peep;
RCT2_CALLPROC_X(0x0069A512, 0, 0, 0, 0, (int)peep, 0, 0);
peep_sprite_remove(peep);
}
*ebx = 0;
}
/*
* Updates the colour of the given staff type.
*/

View File

@ -53,6 +53,7 @@ void game_command_update_staff_colour(int *eax, int *ebx, int *ecx, int *edx, in
void game_command_hire_new_staff_member(int *eax, int *ebx, int *ecx, int *edx, int *esi, int *edi, int *ebp);
void game_command_set_staff_order(int *eax, int *ebx, int *ecx, int *edx, int *esi, int *edi, int *ebp);
void game_command_set_staff_patrol(int *eax, int *ebx, int *ecx, int *edx, int *esi, int *edi, int *ebp);
void game_command_fire_staff_member(int *eax, int *ebx, int *ecx, int *edx, int *esi, int *edi, int *ebp);
void update_staff_colour(uint8 staffType, uint16 color);
uint16 hire_new_staff_member(uint8 staffType);