0A30

From GTAMods Wiki
Revision as of 23:09, 2 January 2012 by Spaceeinstein (talk | contribs) (code update)
Jump to navigation Jump to search

San Andreas


Description

Fixes the specified vehicle

Syntax

0A30: repair_car [car handle]

Parameter

[car handle]
The handle of the vehicle

Native analog

FIX_CAR

This opcode fixes the vehicle from all damages done to it, including all physical damages like damaged panels or popped tires.

For GTA III and Vice City

This opcode does not exist in GTA III and Vice City, but there exist a function used in spray shops that behaves similarly to this opcode in both games. The following example, using Sanny Builder with CLEO for GTA III and Vice City in an external script (not the main one), and tested on US v1.0, with some changes needed for GTA III, should work similarly to this opcode. Place this at the end of the file:

:opcode_0A30
// 0@ - input param (car handle) 
0224: set_car 0@ health_to 1000
05E7: 1@ = car 0@ struct
1@ += 0x29C  // vehicle type offset
05E0: 1@ = read_memory 1@ size 1 virtual_protect 0
05E7: 0@ = car 0@ struct
if
    1@ == 0  // is car
then
    05E3: call_method 0x588530 0@ num_params 0 pop 0  // car repair, for GTA III please use 0x53C240
else
    05E3: call_method 0x609F00 0@ num_params 0 pop 0  // others repair, for GTA III please use 0x53C240
end
05F6: ret 0

Use this line as a substitute for opcode 0A30. This can be placed anywhere within the external script:

5F5: call_scm_func @opcode_0A30 inputs 1 car_handle [car handle]  // change [car handle] to the actual handle of the car

Keywords

fix, repair, heal, vehicle, car, damage

External link