mirror of
https://github.com/OpenRCT2/OpenRCT2
synced 2026-01-28 01:04:50 +01:00
refactor game command enum
This commit is contained in:
@@ -596,7 +596,7 @@ int ride_create_ride(ride_list_item listItem)
|
||||
|
||||
RCT2_GLOBAL(RCT2_ADDRESS_GAME_COMMAND_ERROR_TITLE, uint16) = 0x3DC;
|
||||
|
||||
esi = GAME_COMMAND_6;
|
||||
esi = GAME_COMMAND_CREATE_RIDE;
|
||||
game_do_command_p(esi, &eax, &ebx, &ecx, &edx, &esi, &edi, &ebp);
|
||||
return ebx == MONEY32_UNDEFINED ? -1 : edi;
|
||||
}
|
||||
@@ -1029,10 +1029,10 @@ void sub_6C96C0()
|
||||
|
||||
ride = GET_RIDE(rideIndex);
|
||||
if (ride->type == RIDE_TYPE_MAZE) {
|
||||
game_do_command(x , 41 | (0 << 8), y , rideIndex | (2 << 8), GAME_COMMAND_38, z, 0);
|
||||
game_do_command(x , 41 | (1 << 8), y + 16, rideIndex | (2 << 8), GAME_COMMAND_38, z, 0);
|
||||
game_do_command(x + 16, 41 | (2 << 8), y + 16, rideIndex | (2 << 8), GAME_COMMAND_38, z, 0);
|
||||
game_do_command(x + 16, 41 | (3 << 8), y , rideIndex | (2 << 8), GAME_COMMAND_38, z, 0);
|
||||
game_do_command(x , 41 | (0 << 8), y , rideIndex | (2 << 8), GAME_COMMAND_SET_MAZE_TRACK, z, 0);
|
||||
game_do_command(x , 41 | (1 << 8), y + 16, rideIndex | (2 << 8), GAME_COMMAND_SET_MAZE_TRACK, z, 0);
|
||||
game_do_command(x + 16, 41 | (2 << 8), y + 16, rideIndex | (2 << 8), GAME_COMMAND_SET_MAZE_TRACK, z, 0);
|
||||
game_do_command(x + 16, 41 | (3 << 8), y , rideIndex | (2 << 8), GAME_COMMAND_SET_MAZE_TRACK, z, 0);
|
||||
} else {
|
||||
direction = RCT2_GLOBAL(0x00F440CB, uint8);
|
||||
if (!(direction & 4)) {
|
||||
@@ -4289,14 +4289,14 @@ int ride_get_refund_price(int ride_id)
|
||||
|
||||
ebx = oldebx;
|
||||
ebx |= 0 << 0;
|
||||
RCT2_GLOBAL(0x00F4413A, int) += game_do_command_p(GAME_COMMAND_38, &eax, &ebx, &ecx, &edx, &esi, &edi, &ebp);
|
||||
RCT2_GLOBAL(0x00F4413A, int) += game_do_command_p(GAME_COMMAND_SET_MAZE_TRACK, &eax, &ebx, &ecx, &edx, &esi, &edi, &ebp);
|
||||
|
||||
ebx = oldebx;
|
||||
ebx |= 1 << 8;
|
||||
ecx = oldecx;
|
||||
ecx += 16;
|
||||
edx = oldedx;
|
||||
RCT2_GLOBAL(0x00F4413A, int) += game_do_command_p(GAME_COMMAND_38, &eax, &ebx, &ecx, &edx, &esi, &edi, &ebp);
|
||||
RCT2_GLOBAL(0x00F4413A, int) += game_do_command_p(GAME_COMMAND_SET_MAZE_TRACK, &eax, &ebx, &ecx, &edx, &esi, &edi, &ebp);
|
||||
|
||||
ebx = oldebx;
|
||||
ebx |= 2 << 8;
|
||||
@@ -4305,7 +4305,7 @@ int ride_get_refund_price(int ride_id)
|
||||
ecx = oldecx;
|
||||
ecx += 16;
|
||||
edx = oldedx;
|
||||
RCT2_GLOBAL(0x00F4413A, int) += game_do_command_p(GAME_COMMAND_38, &eax, &ebx, &ecx, &edx, &esi, &edi, &ebp);
|
||||
RCT2_GLOBAL(0x00F4413A, int) += game_do_command_p(GAME_COMMAND_SET_MAZE_TRACK, &eax, &ebx, &ecx, &edx, &esi, &edi, &ebp);
|
||||
|
||||
ebx = oldebx;
|
||||
ebx |= 3 << 8;
|
||||
@@ -4313,7 +4313,7 @@ int ride_get_refund_price(int ride_id)
|
||||
eax += 16;
|
||||
ecx = oldecx;
|
||||
edx = oldedx;
|
||||
RCT2_GLOBAL(0x00F4413A, int) += game_do_command_p(GAME_COMMAND_38, &eax, &ebx, &ecx, &edx, &esi, &edi, &ebp);
|
||||
RCT2_GLOBAL(0x00F4413A, int) += game_do_command_p(GAME_COMMAND_SET_MAZE_TRACK, &eax, &ebx, &ecx, &edx, &esi, &edi, &ebp);
|
||||
}else{
|
||||
edx |= 0xFF << 8;
|
||||
edx &= ((map_element->properties.track.sequence & 0xF) << 8) | 0xFF;
|
||||
|
||||
@@ -1444,7 +1444,7 @@ int track_place_maze(sint16 x, sint16 y, sint16 z, uint8 rideIndex, uint8** trac
|
||||
|
||||
RCT2_GLOBAL(0x00141E9AE, rct_string_id) = 927;
|
||||
|
||||
cost = game_do_command(mapCoord.x, bl | (maze_entry & 0xFF) << 8, mapCoord.y, rideIndex | (maze_entry & 0xFF00), GAME_COMMAND_49, z, 0);
|
||||
cost = game_do_command(mapCoord.x, bl | (maze_entry & 0xFF) << 8, mapCoord.y, rideIndex | (maze_entry & 0xFF00), GAME_COMMAND_PLACE_MAZE_DESIGN, z, 0);
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -1962,9 +1962,9 @@ int sub_6D2189(int* cost, uint8* ride_id){
|
||||
int eax = 0, ebx, ecx = 0, edx, esi, edi = 0, ebp = 0;
|
||||
ebx = 41;
|
||||
edx = track_design->type | (entry_index << 8);
|
||||
esi = GAME_COMMAND_6;
|
||||
esi = GAME_COMMAND_CREATE_RIDE;
|
||||
|
||||
if (MONEY32_UNDEFINED == game_do_command_p(GAME_COMMAND_6, &eax, &ebx, &ecx, &edx, &esi, &edi, &ebp)) return 1;
|
||||
if (MONEY32_UNDEFINED == game_do_command_p(GAME_COMMAND_CREATE_RIDE, &eax, &ebx, &ecx, &edx, &esi, &edi, &ebp)) return 1;
|
||||
|
||||
// bh
|
||||
*ride_id = edi & 0xFF;
|
||||
@@ -3204,10 +3204,10 @@ void game_command_place_track_design(int* eax, int* ebx, int* ecx, int* edx, int
|
||||
_ebx = GAME_COMMAND_FLAG_APPLY,
|
||||
_ecx = 0,
|
||||
_edx = track_design->type | (entry_index << 8),
|
||||
_esi = GAME_COMMAND_6,
|
||||
_esi = GAME_COMMAND_CREATE_RIDE,
|
||||
_edi = 0,
|
||||
_ebp = 0;
|
||||
game_do_command_p(GAME_COMMAND_6, &_eax, &_ebx, &_ecx, &_edx, &_esi, &_edi, &_ebp);
|
||||
game_do_command_p(GAME_COMMAND_CREATE_RIDE, &_eax, &_ebx, &_ecx, &_edx, &_esi, &_edi, &_ebp);
|
||||
if (_ebx == MONEY32_UNDEFINED){
|
||||
*ebx = MONEY32_UNDEFINED;
|
||||
RCT2_GLOBAL(RCT2_ADDRESS_NEXT_EXPENDITURE_TYPE, uint8) = 0;
|
||||
|
||||
Reference in New Issue
Block a user