summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorNikolay Korolev <nickvnuk@gmail.com>2019-11-09 14:44:17 +0100
committerNikolay Korolev <nickvnuk@gmail.com>2019-11-09 14:44:17 +0100
commitcc9a49d061bc1231c32a6794322c9a07fd27973c (patch)
tree5a2bb20d5827e105477a6848891b88be1fb37221 /src
parentMerge remote-tracking branch 'upstream/master' into script_dev (diff)
downloadre3-cc9a49d061bc1231c32a6794322c9a07fd27973c.tar
re3-cc9a49d061bc1231c32a6794322c9a07fd27973c.tar.gz
re3-cc9a49d061bc1231c32a6794322c9a07fd27973c.tar.bz2
re3-cc9a49d061bc1231c32a6794322c9a07fd27973c.tar.lz
re3-cc9a49d061bc1231c32a6794322c9a07fd27973c.tar.xz
re3-cc9a49d061bc1231c32a6794322c9a07fd27973c.tar.zst
re3-cc9a49d061bc1231c32a6794322c9a07fd27973c.zip
Diffstat (limited to 'src')
-rw-r--r--src/control/Script.cpp525
-rw-r--r--src/core/config.h2
2 files changed, 520 insertions, 7 deletions
diff --git a/src/control/Script.cpp b/src/control/Script.cpp
index b9c8bada..ccb551dd 100644
--- a/src/control/Script.cpp
+++ b/src/control/Script.cpp
@@ -5500,6 +5500,525 @@ int8 CRunningScript::ProcessCommandsFrom600To699(int32 command)
}
#endif
+#if 1
+WRAPPER int8 CRunningScript::ProcessCommandsFrom700To799(int32 command) { EAXJMP(0x4458A0); }
+#else
+int8 CRunningScript::ProcessCommandsFrom700To799(int32 command)
+{
+ switch (command){
+ case COMMAND_SET_SWAT_REQUIRED:
+ case COMMAND_SET_FBI_REQUIRED:
+ case COMMAND_SET_ARMY_REQUIRED:
+ case COMMAND_IS_CAR_IN_WATER:
+ case COMMAND_GET_CLOSEST_CHAR_NODE:
+ case COMMAND_GET_CLOSEST_CAR_NODE:
+ case COMMAND_CAR_GOTO_COORDINATES_ACCURATE:
+ case COMMAND_START_PACMAN_RACE:
+ case COMMAND_START_PACMAN_RECORD:
+ case COMMAND_GET_NUMBER_OF_POWER_PILLS_EATEN:
+ case COMMAND_CLEAR_PACMAN:
+ case COMMAND_START_PACMAN_SCRAMBLE:
+ case COMMAND_GET_NUMBER_OF_POWER_PILLS_CARRIED:
+ case COMMAND_CLEAR_NUMBER_OF_POWER_PILLS_CARRIED:
+ case COMMAND_IS_CAR_ON_SCREEN:
+ case COMMAND_IS_CHAR_ON_SCREEN:
+ case COMMAND_IS_OBJECT_ON_SCREEN:
+ case COMMAND_GOSUB_FILE:
+ case COMMAND_GET_GROUND_Z_FOR_3D_COORD:
+ case COMMAND_START_SCRIPT_FIRE:
+ case COMMAND_IS_SCRIPT_FIRE_EXTINGUISHED:
+ case COMMAND_REMOVE_SCRIPT_FIRE:
+ case COMMAND_SET_COMEDY_CONTROLS:
+ case COMMAND_BOAT_GOTO_COORDS:
+ case COMMAND_BOAT_STOP:
+ case COMMAND_IS_PLAYER_SHOOTING_IN_AREA:
+ case COMMAND_IS_CHAR_SHOOTING_IN_AREA:
+ case COMMAND_IS_CURRENT_PLAYER_WEAPON:
+ case COMMAND_IS_CURRENT_CHAR_WEAPON:
+ case COMMAND_CLEAR_NUMBER_OF_POWER_PILLS_EATEN:
+ case COMMAND_ADD_POWER_PILL:
+ case COMMAND_SET_BOAT_CRUISE_SPEED:
+ case COMMAND_GET_RANDOM_CHAR_IN_AREA:
+ case COMMAND_GET_RANDOM_CHAR_IN_ZONE:
+ case COMMAND_IS_PLAYER_IN_TAXI:
+ case COMMAND_IS_PLAYER_SHOOTING:
+ case COMMAND_IS_CHAR_SHOOTING:
+ case COMMAND_CREATE_MONEY_PICKUP:
+ case COMMAND_SET_CHAR_ACCURACY:
+ case COMMAND_GET_CAR_SPEED:
+ case COMMAND_LOAD_CUTSCENE:
+ case COMMAND_CREATE_CUTSCENE_OBJECT:
+ case COMMAND_SET_CUTSCENE_ANIM:
+ case COMMAND_START_CUTSCENE:
+ case COMMAND_GET_CUTSCENE_TIME:
+ case COMMAND_HAS_CUTSCENE_FINISHED:
+ case COMMAND_CLEAR_CUTSCENE:
+ case COMMAND_RESTORE_CAMERA_JUMPCUT:
+ case COMMAND_CREATE_COLLECTABLE1:
+ case COMMAND_SET_COLLECTABLE1_TOTAL:
+ case COMMAND_IS_PROJECTILE_IN_AREA:
+ case COMMAND_DESTROY_PROJECTILES_IN_AREA:
+ case COMMAND_DROP_MINE:
+ case COMMAND_DROP_NAUTICAL_MINE:
+ case COMMAND_IS_CHAR_MODEL:
+ case COMMAND_LOAD_SPECIAL_MODEL:
+ case COMMAND_CREATE_CUTSCENE_HEAD:
+ case COMMAND_SET_CUTSCENE_HEAD_ANIM:
+ case COMMAND_SIN:
+ case COMMAND_COS:
+ case COMMAND_GET_CAR_FORWARD_X:
+ case COMMAND_GET_CAR_FORWARD_Y:
+ case COMMAND_CHANGE_GARAGE_TYPE:
+ case COMMAND_ACTIVATE_CRUSHER_CRANE:
+ case COMMAND_PRINT_WITH_2_NUMBERS:
+ case COMMAND_PRINT_WITH_2_NUMBERS_NOW:
+ case COMMAND_PRINT_WITH_2_NUMBERS_SOON:
+ case COMMAND_PRINT_WITH_3_NUMBERS:
+ case COMMAND_PRINT_WITH_3_NUMBERS_NOW:
+ case COMMAND_PRINT_WITH_3_NUMBERS_SOON:
+ case COMMAND_PRINT_WITH_4_NUMBERS:
+ case COMMAND_PRINT_WITH_4_NUMBERS_NOW:
+ case COMMAND_PRINT_WITH_4_NUMBERS_SOON:
+ case COMMAND_PRINT_WITH_5_NUMBERS:
+ case COMMAND_PRINT_WITH_5_NUMBERS_NOW:
+ case COMMAND_PRINT_WITH_5_NUMBERS_SOON:
+ case COMMAND_PRINT_WITH_6_NUMBERS:
+ case COMMAND_PRINT_WITH_6_NUMBERS_NOW:
+ case COMMAND_PRINT_WITH_6_NUMBERS_SOON:
+ case COMMAND_SET_CHAR_OBJ_FOLLOW_CHAR_IN_FORMATION:
+ case COMMAND_PLAYER_MADE_PROGRESS:
+ case COMMAND_SET_PROGRESS_TOTAL:
+ case COMMAND_REGISTER_JUMP_DISTANCE:
+ case COMMAND_REGISTER_JUMP_HEIGHT:
+ case COMMAND_REGISTER_JUMP_FLIPS:
+ case COMMAND_REGISTER_JUMP_SPINS:
+ case COMMAND_REGISTER_JUMP_STUNT:
+ case COMMAND_REGISTER_UNIQUE_JUMP_FOUND:
+ case COMMAND_SET_UNIQUE_JUMPS_TOTAL:
+ case COMMAND_REGISTER_PASSENGER_DROPPED_OFF_TAXI:
+ case COMMAND_REGISTER_MONEY_MADE_TAXI:
+ case COMMAND_REGISTER_MISSION_GIVEN:
+ case COMMAND_REGISTER_MISSION_PASSED:
+ case COMMAND_SET_CHAR_RUNNING:
+ case COMMAND_REMOVE_ALL_SCRIPT_FIRES:
+ case COMMAND_IS_FIRST_CAR_COLOUR:
+ case COMMAND_IS_SECOND_CAR_COLOUR:
+ case COMMAND_HAS_CHAR_BEEN_DAMAGED_BY_WEAPON:
+ case COMMAND_HAS_CAR_BEEN_DAMAGED_BY_WEAPON:
+ case COMMAND_IS_CHAR_IN_CHARS_GROUP:
+ default:
+ assert(0);
+ }
+ return -1;
+}
+#endif
+
+#if 1
+WRAPPER int8 CRunningScript::ProcessCommandsFrom800To899(int32 command) { EAXJMP(0x448240); }
+#else
+int8 CRunningScript::ProcessCommandsFrom800To899(int32 command)
+{
+ switch (command) {
+ case COMMAND_IS_CHAR_IN_PLAYERS_GROUP:
+ case COMMAND_EXPLODE_CHAR_HEAD:
+ case COMMAND_EXPLODE_PLAYER_HEAD:
+ case COMMAND_ANCHOR_BOAT:
+ case COMMAND_SET_ZONE_GROUP:
+ case COMMAND_START_CAR_FIRE:
+ case COMMAND_START_CHAR_FIRE:
+ case COMMAND_GET_RANDOM_CAR_OF_TYPE_IN_AREA:
+ case COMMAND_GET_RANDOM_CAR_OF_TYPE_IN_ZONE:
+ case COMMAND_HAS_RESPRAY_HAPPENED:
+ case COMMAND_SET_CAMERA_ZOOM:
+ case COMMAND_CREATE_PICKUP_WITH_AMMO:
+ case COMMAND_SET_CAR_RAM_CAR:
+ case COMMAND_SET_CAR_BLOCK_CAR:
+ case COMMAND_SET_CHAR_OBJ_CATCH_TRAIN:
+ case COMMAND_SET_COLL_OBJ_CATCH_TRAIN:
+ case COMMAND_SET_PLAYER_NEVER_GETS_TIRED:
+ case COMMAND_SET_PLAYER_FAST_RELOAD:
+ case COMMAND_SET_CHAR_BLEEDING:
+ case COMMAND_SET_CAR_FUNNY_SUSPENSION:
+ case COMMAND_SET_CAR_BIG_WHEELS:
+ case COMMAND_SET_FREE_RESPRAYS:
+ case COMMAND_SET_PLAYER_VISIBLE:
+ case COMMAND_SET_CHAR_VISIBLE:
+ case COMMAND_SET_CAR_VISIBLE:
+ case COMMAND_IS_AREA_OCCUPIED:
+ case COMMAND_START_DRUG_RUN:
+ case COMMAND_HAS_DRUG_RUN_BEEN_COMPLETED:
+ case COMMAND_HAS_DRUG_PLANE_BEEN_SHOT_DOWN:
+ case COMMAND_SAVE_PLAYER_FROM_FIRES:
+ case COMMAND_DISPLAY_TEXT:
+ case COMMAND_SET_TEXT_SCALE:
+ case COMMAND_SET_TEXT_COLOUR:
+ case COMMAND_SET_TEXT_JUSTIFY:
+ case COMMAND_SET_TEXT_CENTRE:
+ case COMMAND_SET_TEXT_WRAPX:
+ case COMMAND_SET_TEXT_CENTRE_SIZE:
+ case COMMAND_SET_TEXT_BACKGROUND:
+ case COMMAND_SET_TEXT_BACKGROUND_COLOUR:
+ case COMMAND_SET_TEXT_BACKGROUND_ONLY_TEXT:
+ case COMMAND_SET_TEXT_PROPORTIONAL:
+ case COMMAND_SET_TEXT_FONT:
+ case COMMAND_INDUSTRIAL_PASSED:
+ case COMMAND_COMMERCIAL_PASSED:
+ case COMMAND_SUBURBAN_PASSED:
+ case COMMAND_ROTATE_OBJECT:
+ case COMMAND_SLIDE_OBJECT:
+ case COMMAND_REMOVE_CHAR_ELEGANTLY:
+ case COMMAND_SET_CHAR_STAY_IN_SAME_PLACE:
+ case COMMAND_IS_NASTY_GAME:
+ case COMMAND_UNDRESS_CHAR:
+ case COMMAND_DRESS_CHAR:
+ case COMMAND_START_CHASE_SCENE:
+ case COMMAND_STOP_CHASE_SCENE:
+ case COMMAND_IS_EXPLOSION_IN_AREA:
+ case COMMAND_IS_EXPLOSION_IN_ZONE:
+ case COMMAND_START_DRUG_DROP_OFF:
+ case COMMAND_HAS_DROP_OFF_PLANE_BEEN_SHOT_DOWN:
+ case COMMAND_FIND_DROP_OFF_PLANE_COORDINATES:
+ case COMMAND_CREATE_FLOATING_PACKAGE:
+ case COMMAND_PLACE_OBJECT_RELATIVE_TO_CAR:
+ case COMMAND_MAKE_OBJECT_TARGETTABLE:
+ case COMMAND_ADD_ARMOUR_TO_PLAYER:
+ case COMMAND_ADD_ARMOUR_TO_CHAR:
+ case COMMAND_OPEN_GARAGE:
+ case COMMAND_CLOSE_GARAGE:
+ case COMMAND_WARP_CHAR_FROM_CAR_TO_COORD:
+ case COMMAND_SET_VISIBILITY_OF_CLOSEST_OBJECT_OF_TYPE:
+ case COMMAND_HAS_CHAR_SPOTTED_CHAR:
+ case COMMAND_SET_CHAR_OBJ_HAIL_TAXI:
+ case COMMAND_HAS_OBJECT_BEEN_DAMAGED:
+ case COMMAND_START_KILL_FRENZY_HEADSHOT:
+ case COMMAND_ACTIVATE_MILITARY_CRANE:
+ case COMMAND_WARP_PLAYER_INTO_CAR:
+ case COMMAND_WARP_CHAR_INTO_CAR:
+ case COMMAND_SWITCH_CAR_RADIO:
+ case COMMAND_SET_AUDIO_STREAM:
+ case COMMAND_PRINT_WITH_2_NUMBERS_BIG:
+ case COMMAND_PRINT_WITH_3_NUMBERS_BIG:
+ case COMMAND_PRINT_WITH_4_NUMBERS_BIG:
+ case COMMAND_PRINT_WITH_5_NUMBERS_BIG:
+ case COMMAND_PRINT_WITH_6_NUMBERS_BIG:
+ case COMMAND_SET_CHAR_WAIT_STATE:
+ case COMMAND_SET_CAMERA_BEHIND_PLAYER:
+ case COMMAND_SET_MOTION_BLUR:
+ case COMMAND_PRINT_STRING_IN_STRING:
+ case COMMAND_CREATE_RANDOM_CHAR:
+ case COMMAND_SET_CHAR_OBJ_STEAL_ANY_CAR:
+ case COMMAND_SET_2_REPEATED_PHONE_MESSAGES:
+ case COMMAND_SET_2_PHONE_MESSAGES:
+ case COMMAND_SET_3_REPEATED_PHONE_MESSAGES:
+ case COMMAND_SET_3_PHONE_MESSAGES:
+ case COMMAND_SET_4_REPEATED_PHONE_MESSAGES:
+ case COMMAND_SET_4_PHONE_MESSAGES:
+ case COMMAND_IS_SNIPER_BULLET_IN_AREA:
+ case COMMAND_GIVE_PLAYER_DETONATOR:
+ case COMMAND_SET_COLL_OBJ_STEAL_ANY_CAR:
+ case COMMAND_SET_OBJECT_VELOCITY:
+ case COMMAND_SET_OBJECT_COLLISION:
+ case COMMAND_IS_ICECREAM_JINGLE_ON:
+ default:
+ assert(0);
+ }
+ return -1;
+}
+#endif
+
+#if 1
+WRAPPER int8 CRunningScript::ProcessCommandsFrom900To999(int32 command) { EAXJMP(0x44CB80); }
+#else
+int8 CRunningScript::ProcessCommandsFrom900To999(int32 command)
+{
+ switch (command){
+ case COMMAND_PRINT_STRING_IN_STRING_NOW:
+ case COMMAND_PRINT_STRING_IN_STRING_SOON:
+ case COMMAND_SET_5_REPEATED_PHONE_MESSAGES:
+ case COMMAND_SET_5_PHONE_MESSAGES:
+ case COMMAND_SET_6_REPEATED_PHONE_MESSAGES:
+ case COMMAND_SET_6_PHONE_MESSAGES:
+ case COMMAND_IS_POINT_OBSCURED_BY_A_MISSION_ENTITY:
+ case COMMAND_LOAD_ALL_MODELS_NOW:
+ case COMMAND_ADD_TO_OBJECT_VELOCITY:
+ case COMMAND_DRAW_SPRITE:
+ case COMMAND_DRAW_RECT:
+ case COMMAND_LOAD_SPRITE:
+ case COMMAND_LOAD_TEXTURE_DICTIONARY:
+ case COMMAND_REMOVE_TEXTURE_DICTIONARY:
+ case COMMAND_SET_OBJECT_DYNAMIC:
+ case COMMAND_SET_CHAR_ANIM_SPEED:
+ case COMMAND_PLAY_MISSION_PASSED_TUNE:
+ case COMMAND_CLEAR_AREA:
+ case COMMAND_FREEZE_ONSCREEN_TIMER:
+ case COMMAND_SWITCH_CAR_SIREN:
+ case COMMAND_SWITCH_PED_ROADS_ON_ANGLED:
+ case COMMAND_SWITCH_PED_ROADS_OFF_ANGLED:
+ case COMMAND_SWITCH_ROADS_ON_ANGLED:
+ case COMMAND_SWITCH_ROADS_OFF_ANGLED:
+ case COMMAND_SET_CAR_WATERTIGHT:
+ case COMMAND_ADD_MOVING_PARTICLE_EFFECT:
+ case COMMAND_SET_CHAR_CANT_BE_DRAGGED_OUT:
+ case COMMAND_TURN_CAR_TO_FACE_COORD:
+ case COMMAND_IS_CRANE_LIFTING_CAR:
+ case COMMAND_DRAW_SPHERE:
+ case COMMAND_SET_CAR_STATUS:
+ case COMMAND_IS_CHAR_MALE:
+ case COMMAND_SCRIPT_NAME:
+ case COMMAND_CHANGE_GARAGE_TYPE_WITH_CAR_MODEL:
+ case COMMAND_FIND_DRUG_PLANE_COORDINATES:
+ case COMMAND_SAVE_INT_TO_DEBUG_FILE:
+ case COMMAND_SAVE_FLOAT_TO_DEBUG_FILE:
+ case COMMAND_SAVE_NEWLINE_TO_DEBUG_FILE:
+ case COMMAND_POLICE_RADIO_MESSAGE:
+ case COMMAND_SET_CAR_STRONG:
+ case COMMAND_REMOVE_ROUTE:
+ case COMMAND_SWITCH_RUBBISH:
+ case COMMAND_REMOVE_PARTICLE_EFFECTS_IN_AREA:
+ case COMMAND_SWITCH_STREAMING:
+ case COMMAND_IS_GARAGE_OPEN:
+ case COMMAND_IS_GARAGE_CLOSED:
+ case COMMAND_START_CATALINA_HELI:
+ case COMMAND_CATALINA_HELI_TAKE_OFF:
+ case COMMAND_REMOVE_CATALINA_HELI:
+ case COMMAND_HAS_CATALINA_HELI_BEEN_SHOT_DOWN:
+ case COMMAND_SWAP_NEAREST_BUILDING_MODEL:
+ case COMMAND_SWITCH_WORLD_PROCESSING:
+ case COMMAND_REMOVE_ALL_PLAYER_WEAPONS:
+ case COMMAND_GRAB_CATALINA_HELI:
+ case COMMAND_CLEAR_AREA_OF_CARS:
+ case COMMAND_SET_ROTATING_GARAGE_DOOR:
+ case COMMAND_ADD_SPHERE:
+ case COMMAND_REMOVE_SPHERE:
+ case COMMAND_CATALINA_HELI_FLY_AWAY:
+ case COMMAND_SET_EVERYONE_IGNORE_PLAYER:
+ case COMMAND_STORE_CAR_CHAR_IS_IN_NO_SAVE:
+ case COMMAND_STORE_CAR_PLAYER_IS_IN_NO_SAVE:
+ case COMMAND_IS_PHONE_DISPLAYING_MESSAGE:
+ case COMMAND_DISPLAY_ONSCREEN_TIMER_WITH_STRING:
+ case COMMAND_DISPLAY_ONSCREEN_COUNTER_WITH_STRING:
+ case COMMAND_CREATE_RANDOM_CAR_FOR_CAR_PARK:
+ case COMMAND_IS_COLLISION_IN_MEMORY:
+ case COMMAND_SET_WANTED_MULTIPLIER:
+ case COMMAND_SET_CAMERA_IN_FRONT_OF_PLAYER:
+ case COMMAND_IS_CAR_VISIBLY_DAMAGED:
+ case COMMAND_DOES_OBJECT_EXIST:
+ case COMMAND_LOAD_SCENE:
+ case COMMAND_ADD_STUCK_CAR_CHECK:
+ case COMMAND_REMOVE_STUCK_CAR_CHECK:
+ case COMMAND_IS_CAR_STUCK:
+ case COMMAND_LOAD_MISSION_AUDIO:
+ case COMMAND_HAS_MISSION_AUDIO_LOADED:
+ case COMMAND_PLAY_MISSION_AUDIO:
+ case COMMAND_HAS_MISSION_AUDIO_FINISHED:
+ case COMMAND_GET_CLOSEST_CAR_NODE_WITH_HEADING:
+ case COMMAND_HAS_IMPORT_GARAGE_SLOT_BEEN_FILLED:
+ case COMMAND_CLEAR_THIS_PRINT:
+ case COMMAND_CLEAR_THIS_BIG_PRINT:
+ case COMMAND_SET_MISSION_AUDIO_POSITION:
+ case COMMAND_ACTIVATE_SAVE_MENU:
+ case COMMAND_HAS_SAVE_GAME_FINISHED:
+ case COMMAND_NO_SPECIAL_CAMERA_FOR_THIS_GARAGE:
+ case COMMAND_ADD_BLIP_FOR_PICKUP_OLD:
+ case COMMAND_ADD_BLIP_FOR_PICKUP:
+ case COMMAND_ADD_SPRITE_BLIP_FOR_PICKUP:
+ case COMMAND_SET_PED_DENSITY_MULTIPLIER:
+ case COMMAND_FORCE_RANDOM_PED_TYPE:
+ case COMMAND_SET_TEXT_DRAW_BEFORE_FADE:
+ case COMMAND_GET_COLLECTABLE1S_COLLECTED:
+ case COMMAND_REGISTER_EL_BURRO_TIME:
+ case COMMAND_SET_SPRITES_DRAW_BEFORE_FADE:
+ case COMMAND_SET_TEXT_RIGHT_JUSTIFY:
+ case COMMAND_PRINT_HELP:
+ case COMMAND_CLEAR_HELP:
+ case COMMAND_FLASH_HUD_OBJECT:
+ default:
+ assert(0);
+ }
+ return -1;
+}
+#endif
+
+#if 1
+WRAPPER int8 CRunningScript::ProcessCommandsFrom1000To1099(int32 command) { EAXJMP(0x588490); }
+#else
+int8 CRunningScript::ProcessCommandsFrom1000To1099(int32 command)
+{
+ switch (command){
+ case COMMAND_FLASH_RADAR_BLIP:
+ case COMMAND_IS_CHAR_IN_CONTROL:
+ case COMMAND_SET_GENERATE_CARS_AROUND_CAMERA:
+ case COMMAND_CLEAR_SMALL_PRINTS:
+ case COMMAND_HAS_MILITARY_CRANE_COLLECTED_ALL_CARS:
+ case COMMAND_SET_UPSIDEDOWN_CAR_NOT_DAMAGED:
+ case COMMAND_CAN_PLAYER_START_MISSION:
+ case COMMAND_MAKE_PLAYER_SAFE_FOR_CUTSCENE:
+ case COMMAND_USE_TEXT_COMMANDS:
+ case COMMAND_SET_THREAT_FOR_PED_TYPE:
+ case COMMAND_CLEAR_THREAT_FOR_PED_TYPE:
+ case COMMAND_GET_CAR_COLOURS:
+ case COMMAND_SET_ALL_CARS_CAN_BE_DAMAGED:
+ case COMMAND_SET_CAR_CAN_BE_DAMAGED:
+ case COMMAND_MAKE_PLAYER_UNSAFE:
+ case COMMAND_LOAD_COLLISION:
+ case COMMAND_GET_BODY_CAST_HEALTH:
+ case COMMAND_SET_CHARS_CHATTING:
+ case COMMAND_MAKE_PLAYER_SAFE:
+ case COMMAND_SET_CAR_STAYS_IN_CURRENT_LEVEL:
+ case COMMAND_SET_CHAR_STAYS_IN_CURRENT_LEVEL:
+ case COMMAND_REGISTER_4X4_ONE_TIME:
+ case COMMAND_REGISTER_4X4_TWO_TIME:
+ case COMMAND_REGISTER_4X4_THREE_TIME:
+ case COMMAND_REGISTER_4X4_MAYHEM_TIME:
+ case COMMAND_REGISTER_LIFE_SAVED:
+ case COMMAND_REGISTER_CRIMINAL_CAUGHT:
+ case COMMAND_REGISTER_AMBULANCE_LEVEL:
+ case COMMAND_REGISTER_FIRE_EXTINGUISHED:
+ case COMMAND_TURN_PHONE_ON:
+ case COMMAND_REGISTER_LONGEST_DODO_FLIGHT:
+ case COMMAND_REGISTER_DEFUSE_BOMB_TIME:
+ case COMMAND_SET_TOTAL_NUMBER_OF_KILL_FRENZIES:
+ case COMMAND_BLOW_UP_RC_BUGGY:
+ case COMMAND_REMOVE_CAR_FROM_CHASE:
+ case COMMAND_IS_FRENCH_GAME:
+ case COMMAND_IS_GERMAN_GAME:
+ case COMMAND_CLEAR_MISSION_AUDIO:
+ case COMMAND_SET_FADE_IN_AFTER_NEXT_ARREST:
+ case COMMAND_SET_FADE_IN_AFTER_NEXT_DEATH:
+ case COMMAND_SET_GANG_PED_MODEL_PREFERENCE:
+ case COMMAND_SET_CHAR_USE_PEDNODE_SEEK:
+ case COMMAND_SWITCH_VEHICLE_WEAPONS:
+ case COMMAND_SET_GET_OUT_OF_JAIL_FREE:
+ case COMMAND_SET_FREE_HEALTH_CARE:
+ case COMMAND_IS_CAR_DOOR_CLOSED:
+ case COMMAND_LOAD_AND_LAUNCH_MISSION:
+ case COMMAND_LOAD_AND_LAUNCH_MISSION_INTERNAL:
+ case COMMAND_SET_OBJECT_DRAW_LAST:
+ case COMMAND_GET_AMMO_IN_PLAYER_WEAPON:
+ case COMMAND_GET_AMMO_IN_CHAR_WEAPON:
+ case COMMAND_REGISTER_KILL_FRENZY_PASSED:
+ case COMMAND_SET_CHAR_SAY:
+ case COMMAND_SET_NEAR_CLIP:
+ case COMMAND_SET_RADIO_CHANNEL:
+ case COMMAND_OVERRIDE_HOSPITAL_LEVEL:
+ case COMMAND_OVERRIDE_POLICE_STATION_LEVEL:
+ case COMMAND_FORCE_RAIN:
+ case COMMAND_DOES_GARAGE_CONTAIN_CAR:
+ case COMMAND_SET_CAR_TRACTION:
+ case COMMAND_ARE_MEASUREMENTS_IN_METRES:
+ case COMMAND_CONVERT_METRES_TO_FEET:
+ case COMMAND_MARK_ROADS_BETWEEN_LEVELS:
+ case COMMAND_MARK_PED_ROADS_BETWEEN_LEVELS:
+ case COMMAND_SET_CAR_AVOID_LEVEL_TRANSITIONS:
+ case COMMAND_SET_CHAR_AVOID_LEVEL_TRANSITIONS:
+ case COMMAND_IS_THREAT_FOR_PED_TYPE:
+ case COMMAND_CLEAR_AREA_OF_CHARS:
+ case COMMAND_SET_TOTAL_NUMBER_OF_MISSIONS:
+ case COMMAND_CONVERT_METRES_TO_FEET_INT:
+ case COMMAND_REGISTER_FASTEST_TIME:
+ case COMMAND_REGISTER_HIGHEST_SCORE:
+ case COMMAND_WARP_CHAR_INTO_CAR_AS_PASSENGER:
+ case COMMAND_IS_CAR_PASSENGER_SEAT_FREE:
+ case COMMAND_GET_CHAR_IN_CAR_PASSENGER_SEAT:
+ case COMMAND_SET_CHAR_IS_CHRIS_CRIMINAL:
+ case COMMAND_START_CREDITS:
+ case COMMAND_STOP_CREDITS:
+ case COMMAND_ARE_CREDITS_FINISHED:
+ case COMMAND_CREATE_SINGLE_PARTICLE:
+ case COMMAND_SET_CHAR_IGNORE_LEVEL_TRANSITIONS:
+ case COMMAND_GET_CHASE_CAR:
+ case COMMAND_START_BOAT_FOAM_ANIMATION:
+ case COMMAND_UPDATE_BOAT_FOAM_ANIMATION:
+ case COMMAND_SET_MUSIC_DOES_FADE:
+ case COMMAND_SET_INTRO_IS_PLAYING:
+ case COMMAND_SET_PLAYER_HOOKER:
+ case COMMAND_PLAY_END_OF_GAME_TUNE:
+ case COMMAND_STOP_END_OF_GAME_TUNE:
+ case COMMAND_GET_CAR_MODEL:
+ case COMMAND_IS_PLAYER_SITTING_IN_CAR:
+ case COMMAND_IS_PLAYER_SITTING_IN_ANY_CAR:
+ case COMMAND_SET_SCRIPT_FIRE_AUDIO:
+ case COMMAND_ARE_ANY_CAR_CHEATS_ACTIVATED:
+ case COMMAND_SET_CHAR_SUFFERS_CRITICAL_HITS:
+ case COMMAND_IS_PLAYER_LIFTING_A_PHONE:
+ case COMMAND_IS_CHAR_SITTING_IN_CAR:
+ case COMMAND_IS_CHAR_SITTING_IN_ANY_CAR:
+ case COMMAND_IS_PLAYER_ON_FOOT:
+ case COMMAND_IS_CHAR_ON_FOOT:
+ default:
+ assert(0);
+ }
+ return -1;
+}
+#endif
+
+#if 1
+WRAPPER int8 CRunningScript::ProcessCommandsFrom1100To1199(int32 command) { EAXJMP(0x589D00); }
+#else
+int8 CRunningScript::ProcessCommandsFrom1100To1199(int32 command)
+{
+ switch (command) {
+ case COMMAND_LOAD_COLLISION_WITH_SCREEN:
+ case COMMAND_LOAD_SPLASH_SCREEN:
+ case COMMAND_SET_CAR_IGNORE_LEVEL_TRANSITIONS:
+ case COMMAND_MAKE_CRAIGS_CAR_A_BIT_STRONGER:
+ case COMMAND_SET_JAMES_CAR_ON_PATH_TO_PLAYER:
+ case COMMAND_LOAD_END_OF_GAME_TUNE:
+ case COMMAND_ENABLE_PLAYER_CONTROL_CAMERA:
+ case COMMAND_SET_OBJECT_ROTATION:
+ case COMMAND_GET_DEBUG_CAMERA_COORDINATES:
+ case COMMAND_GET_DEBUG_CAMERA_FRONT_VECTOR:
+ case COMMAND_IS_PLAYER_TARGETTING_ANY_CHAR:
+ case COMMAND_IS_PLAYER_TARGETTING_CHAR:
+ case COMMAND_IS_PLAYER_TARGETTING_OBJECT:
+ case COMMAND_TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME:
+ case COMMAND_DISPLAY_TEXT_WITH_NUMBER:
+ case COMMAND_DISPLAY_TEXT_WITH_2_NUMBERS:
+ case COMMAND_FAIL_CURRENT_MISSION:
+ case COMMAND_GET_CLOSEST_OBJECT_OF_TYPE:
+ case COMMAND_PLACE_OBJECT_RELATIVE_TO_OBJECT:
+ case COMMAND_SET_ALL_OCCUPANTS_OF_CAR_LEAVE_CAR:
+ case COMMAND_SET_INTERPOLATION_PARAMETERS:
+ case COMMAND_GET_CLOSEST_CAR_NODE_WITH_HEADING_TOWARDS_POINT:
+ case COMMAND_GET_CLOSEST_CAR_NODE_WITH_HEADING_AWAY_POINT:
+ case COMMAND_GET_DEBUG_CAMERA_POINT_AT:
+ case COMMAND_ATTACH_CHAR_TO_CAR:
+ case COMMAND_DETACH_CHAR_FROM_CAR:
+ case COMMAND_SET_CAR_STAY_IN_FAST_LANE:
+ case COMMAND_CLEAR_CHAR_LAST_WEAPON_DAMAGE:
+ case COMMAND_CLEAR_CAR_LAST_WEAPON_DAMAGE:
+ case COMMAND_GET_RANDOM_COP_IN_AREA:
+ case COMMAND_GET_RANDOM_COP_IN_ZONE:
+ case COMMAND_SET_CHAR_OBJ_FLEE_CAR:
+ case COMMAND_GET_DRIVER_OF_CAR:
+ case COMMAND_GET_NUMBER_OF_FOLLOWERS:
+ case COMMAND_GIVE_REMOTE_CONTROLLED_MODEL_TO_PLAYER:
+ case COMMAND_GET_CURRENT_PLAYER_WEAPON:
+ case COMMAND_GET_CURRENT_CHAR_WEAPON:
+ case COMMAND_LOCATE_CHAR_ANY_MEANS_OBJECT_2D:
+ case COMMAND_LOCATE_CHAR_ON_FOOT_OBJECT_2D:
+ case COMMAND_LOCATE_CHAR_IN_CAR_OBJECT_2D:
+ case COMMAND_LOCATE_CHAR_ANY_MEANS_OBJECT_3D:
+ case COMMAND_LOCATE_CHAR_ON_FOOT_OBJECT_3D:
+ case COMMAND_LOCATE_CHAR_IN_CAR_OBJECT_3D:
+ case COMMAND_SET_CAR_TEMP_ACTION:
+ case COMMAND_SET_CAR_HANDBRAKE_TURN_RIGHT:
+ case COMMAND_SET_CAR_HANDBRAKE_STOP:
+ case COMMAND_IS_CHAR_ON_ANY_BIKE:
+ case COMMAND_LOCATE_SNIPER_BULLET_2D:
+ case COMMAND_LOCATE_SNIPER_BULLET_3D:
+ case COMMAND_GET_NUMBER_OF_SEATS_IN_MODEL:
+ case COMMAND_IS_PLAYER_ON_ANY_BIKE:
+ case COMMAND_IS_CHAR_LYING_DOWN:
+ case COMMAND_CAN_CHAR_SEE_DEAD_CHAR:
+ case COMMAND_SET_ENTER_CAR_RANGE_MULTIPLIER:
+ default:
+ assert(0);
+ }
+ return -1;
+}
+#endif
+
int16 CRunningScript::GetPadState(uint16 pad, uint16 button)
{
CPad* pPad = CPad::GetPad(pad);
@@ -5534,12 +6053,6 @@ bool CTheScripts::IsVehicleStopped(CVehicle* pVehicle)
return 0.01f * CTimer::GetTimeStep() >= pVehicle->m_fDistanceTravelled;
}
-WRAPPER int8 CRunningScript::ProcessCommandsFrom700To799(int32 command) { EAXJMP(0x4458A0); }
-WRAPPER int8 CRunningScript::ProcessCommandsFrom800To899(int32 command) { EAXJMP(0x448240); }
-WRAPPER int8 CRunningScript::ProcessCommandsFrom900To999(int32 command) { EAXJMP(0x44CB80); }
-WRAPPER int8 CRunningScript::ProcessCommandsFrom1000To1099(int32 command) { EAXJMP(0x588490); }
-WRAPPER int8 CRunningScript::ProcessCommandsFrom1100To1199(int32 command) { EAXJMP(0x589D00); }
-
WRAPPER void CRunningScript::LocatePlayerCommand(int32, uint32*) { EAXJMP(0x44FE10); }
WRAPPER void CRunningScript::LocatePlayerCharCommand(int32, uint32*) { EAXJMP(0x4501E0); }
WRAPPER void CRunningScript::LocatePlayerCarCommand(int32, uint32*) { EAXJMP(0x450540); }
diff --git a/src/core/config.h b/src/core/config.h
index ae9e2ea4..12cb7be8 100644
--- a/src/core/config.h
+++ b/src/core/config.h
@@ -162,6 +162,6 @@ enum Config {
// Peds
#define ANIMATE_PED_COL_MODEL
-//#define VC_PED_PORTS
+#define VC_PED_PORTS
#define NEW_WALK_AROUND_ALGORITHM
#define CANCELLABLE_CAR_ENTER