diff --git a/src/openrct2/peep/staff.c b/src/openrct2/peep/staff.c index 2ba5ef536c..2a54e04a62 100644 --- a/src/openrct2/peep/staff.c +++ b/src/openrct2/peep/staff.c @@ -1437,7 +1437,7 @@ uint32 staff_get_available_entertainer_costumes() } // For some reason the flags are +4 from the actual costume IDs - entertainerCostumes <<= 4; + entertainerCostumes >>= 4; return entertainerCostumes; } diff --git a/src/openrct2/windows/staff_list.c b/src/openrct2/windows/staff_list.c index 4d9ffb8107..393886f923 100644 --- a/src/openrct2/windows/staff_list.c +++ b/src/openrct2/windows/staff_list.c @@ -227,7 +227,7 @@ static void window_staff_list_mouseup(rct_window *w, sint32 widgetIndex) uint8 costume = window_staff_list_get_random_entertainer_costume(); staffType += costume; } - hire_new_staff_member(_windowStaffListSelectedTab); + hire_new_staff_member(staffType); break; } case WIDX_STAFF_LIST_SHOW_PATROL_AREA_BUTTON: @@ -712,7 +712,8 @@ static uint8 window_staff_list_get_random_entertainer_costume() sint32 numCostumes = staff_get_available_entertainer_costume_list(costumeList); if (numCostumes > 0) { - result = util_rand() % numCostumes; + sint32 index = util_rand() % numCostumes; + result = costumeList[index]; } return result; }