Difference between revisions of "02B9"
Jump to navigation
Jump to search
m (testing) |
m |
||
(4 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | {{Icon|3}} {{Icon|SA}} | + | {{OpCode |
− | + | | games = {{Icon|3}} {{Icon|SA}} | |
− | + | | command = DEACTIVATE_GARAGE | |
− | + | | description = Deactivates the [[garage]] | |
− | + | | syntax1 = {{Icon|3}} 02B9: deactivate_garage [''garage handle''] | |
− | + | | syntax2 = {{Icon|SA}} 02B9: deactivate_garage '[''string'']' | |
− | + | | syntax3 = {{Icon|SA}} Garage.Deactivate( '[''string'']' ) | |
− | + | | p1t = [''garage handle''] | |
− | + | | p1d = The [[Garage#GTA III 2|handle of the garage]], for GTA III | |
− | + | | p2t = [''string''] | |
− | + | | p2d = The [[Garage#San Andreas 2|name of the garage]], for San Andreas | |
− | + | }} | |
− | |||
− | |||
− | This opcode deactivates | + | This opcode deactivates the garage. It can be reactivated by using opcode [[0299]]. Normal garage functions will be limited, like save garages not opening, spray shops not being able to finish spraying, and bomb shops not being able to finish fitting the bomb. |
− | |||
== For Vice City == | == For Vice City == | ||
− | This opcode does not exist in Vice City, but the deactivation behavior of the garage remains. The following example, using Sanny Builder with [[CLEO]] for Vice City, and tested on US v1.0, should work similarly to this opcode | + | This opcode does not exist in Vice City, but the deactivation behavior of the garage remains. The following example, using Sanny Builder with [[CLEO]] for Vice City in an external script (not the main one), and tested on US v1.0, should work similarly to this opcode. Place this at the end of the file: |
− | < | + | {{Pre|class=sb-code|1= |
− | + | <span class="nl">:opcode_02B9</span> | |
− | 0@ *= 0xA8 // size of each garage | + | <span class="c1">// 0@ - input param (garage handle)</span> |
− | 0@ += 0x812668 // | + | <span class="nv">0@</span> *= <span class="m">0xA8</span> <span class="c1">// size of each garage struct</span> |
− | 0@ += 0x5 // offset | + | <span class="nv">0@</span> += <span class="m">0x812668</span> <span class="c1">// base address for garages</span> |
− | 05DF: write_memory 0@ size 1 value 1 virtual_protect 0 // deactivate garage | + | <span class="nv">0@</span> += <span class="m">0x5</span> <span class="c1">// activation offset</span> |
− | </ | + | 05DF: write_memory <span class="nv">0@</span> size <span class="m">1</span> value <span class="m">1</span> virtual_protect <span class="m">0</span> <span class="c1">// deactivate garage</span> |
+ | 05F6: ret <span class="m">0</span> | ||
+ | }} | ||
+ | |||
+ | Use this line as a substitute for opcode 02B9. This can be placed anywhere within the external script: | ||
+ | {{Pre|class=sb-code|1= | ||
+ | 05F5: call_scm_func <span class="nl">@opcode_02B9</span> inputs <span class="m">1</span> garage_handle [garage handle] | ||
+ | }} | ||
== Keywords == | == Keywords == | ||
garage, deactivate, disable | garage, deactivate, disable | ||
− | |||
− |
Latest revision as of 18:42, 24 December 2016
- Description
- Deactivates the garage
- Syntax
- 02B9: deactivate_garage [garage handle]
- 02B9: deactivate_garage '[string]'
- Garage.Deactivate( '[string]' )
- Parameter
- [garage handle]
- The handle of the garage, for GTA III
- [string]
- The name of the garage, for San Andreas
This opcode deactivates the garage. It can be reactivated by using opcode 0299. Normal garage functions will be limited, like save garages not opening, spray shops not being able to finish spraying, and bomb shops not being able to finish fitting the bomb.
For Vice City
This opcode does not exist in Vice City, but the deactivation behavior of the garage remains. The following example, using Sanny Builder with CLEO for Vice City in an external script (not the main one), and tested on US v1.0, should work similarly to this opcode. Place this at the end of the file:
:opcode_02B9 // 0@ - input param (garage handle) 0@ *= 0xA8 // size of each garage struct 0@ += 0x812668 // base address for garages 0@ += 0x5 // activation offset 05DF: write_memory 0@ size 1 value 1 virtual_protect 0 // deactivate garage 05F6: ret 0
Use this line as a substitute for opcode 02B9. This can be placed anywhere within the external script:
05F5: call_scm_func @opcode_02B9 inputs 1 garage_handle [garage handle]
Keywords
garage, deactivate, disable