Difference between revisions of "01B2"
Jump to navigation
Jump to search
m |
m |
||
(4 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
− | {{Icon| | + | {{OpCode |
− | + | | games = {{Icon|t}} | |
− | + | | command = GIVE_WEAPON_TO_CHAR | |
− | + | | description = Gives the [[weapon]] to the character | |
− | + | | syntax1 = 01B2: give_actor [''char handle''] weapon [''int1''] ammo [''int2''] | |
− | + | | p1t = [''char handle''] | |
− | + | | p1d = The handle of the character | |
− | + | | p2t = [''int1''] | |
− | + | | p2d = [[Weapon#Lists of weapons|Weapon type]] | |
− | + | | p3t = [''int2''] | |
− | + | | p3d = Ammo | |
− | + | | native = [[GIVE_WEAPON_TO_CHAR]] | |
− | + | }} | |
− | |||
− | |||
− | This opcode | + | This opcode adds to the character's weapon ammo and sets the weapon as the current one for the character. If the character does not have the weapon, the weapon is given to it and replaces any weapon of the same slot. Using this opcode requires loading the weapon model through [[0247]] or else the weapon might not be visible which can crash the game. When the character dies, it drops the weapon as a [[0213#Weapons|pickup type 4 with predefined ammo count]]. |
== Example == | == Example == | ||
− | The following | + | The following example using Sanny Builder will spawn a character holding a pistol close to the player character. The values used here are for Vice City and should be changed if used for other games. |
+ | {{Pre|class=sb-code|1= | ||
+ | <span class="c1">// set constants</span> | ||
+ | <span class="k">const</span> | ||
+ | CHAR_MODEL = <span class="nt">#BFORI</span> <span class="c1">// set your character model</span> | ||
+ | WEAP_MODEL = <span class="nt">#COLT45</span> <span class="c1">// set your weapon model</span> | ||
+ | WEAP_TYPE = <span class="m">17</span> <span class="c1">// set your weapon type</span> | ||
+ | SPAWNED_CHAR = <span class="nv">0@</span> | ||
+ | X_POS = <span class="nv">1@</span> | ||
+ | Y_POS = <span class="nv">2@</span> | ||
+ | Z_POS = <span class="nv">3@</span> | ||
+ | <span class="k">end</span> | ||
− | < | + | <span class="c1">// load models, required to prevent unnecessary crash!</span> |
− | + | [[0247]]: request_model CHAR_MODEL | |
− | + | [[0247]]: request_model WEAP_MODEL | |
− | + | [[038B]]: load_requested_models | |
− | + | <span class="c1">// spawn character with weapon</span> | |
− | + | [[00A0]]: store_actor <span class="nv">$PLAYER_ACTOR</span> position_to X_POS Y_POS Z_POS | |
− | + | X_POS += <span class="m">4.0</span> | |
− | + | [[009A]]: SPAWNED_CHAR = create_actor <span class="m">4</span> CHAR_MODEL at X_POS Y_POS Z_POS | |
− | + | 01B2: give_actor SPAWNED_CHAR weapon WEAP_TYPE ammo <span class="m">100</span> | |
− | + | <span class="c1">// cleanup</span> | |
− | + | [[0249]]: release_model CHAR_MODEL | |
− | + | [[0249]]: release_model WEAP_MODEL | |
− | // load models, required to prevent unnecessary crash! | + | [[01C2]]: remove_references_to_actor SPAWNED_CHAR |
− | 0247: request_model CHAR_MODEL | + | }} |
− | 0247: request_model WEAP_MODEL | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | // spawn character with weapon | ||
− | 00A0: store_actor $PLAYER_ACTOR position_to X_POS Y_POS Z_POS | ||
− | X_POS += 4.0 | ||
− | 009A: SPAWNED_CHAR = create_actor 4 CHAR_MODEL at X_POS Y_POS Z_POS | ||
− | 01B2: give_actor SPAWNED_CHAR weapon | ||
− | // cleanup | ||
− | 0249: release_model CHAR_MODEL | ||
− | 0249: release_model WEAP_MODEL | ||
− | 01C2: remove_references_to_actor | ||
− | |||
== Keywords == | == Keywords == | ||
give, assign, actor, character, weapon | give, assign, actor, character, weapon | ||
− | [[ | + | == See also == |
+ | * {{Icon|3}} {{Icon|SA}} [[017B]], sets the character's weapon ammo | ||
+ | * {{Icon|3}} {{Icon|VC}} [[01B1]], gives the weapon to the player | ||
+ | |||
[[Category:Code Snippets]] | [[Category:Code Snippets]] |
Latest revision as of 19:28, 7 July 2017
- Description
- Gives the weapon to the character
- Syntax
- 01B2: give_actor [char handle] weapon [int1] ammo [int2]
- Parameter
- [char handle]
- The handle of the character
- [int1]
- Weapon type
- [int2]
- Ammo
- Native analog
- GIVE_WEAPON_TO_CHAR
This opcode adds to the character's weapon ammo and sets the weapon as the current one for the character. If the character does not have the weapon, the weapon is given to it and replaces any weapon of the same slot. Using this opcode requires loading the weapon model through 0247 or else the weapon might not be visible which can crash the game. When the character dies, it drops the weapon as a pickup type 4 with predefined ammo count.
Example
The following example using Sanny Builder will spawn a character holding a pistol close to the player character. The values used here are for Vice City and should be changed if used for other games.
// set constants const CHAR_MODEL = #BFORI // set your character model WEAP_MODEL = #COLT45 // set your weapon model WEAP_TYPE = 17 // set your weapon type SPAWNED_CHAR = 0@ X_POS = 1@ Y_POS = 2@ Z_POS = 3@ end // load models, required to prevent unnecessary crash! 0247: request_model CHAR_MODEL 0247: request_model WEAP_MODEL 038B: load_requested_models // spawn character with weapon 00A0: store_actor $PLAYER_ACTOR position_to X_POS Y_POS Z_POS X_POS += 4.0 009A: SPAWNED_CHAR = create_actor 4 CHAR_MODEL at X_POS Y_POS Z_POS 01B2: give_actor SPAWNED_CHAR weapon WEAP_TYPE ammo 100 // cleanup 0249: release_model CHAR_MODEL 0249: release_model WEAP_MODEL 01C2: remove_references_to_actor SPAWNED_CHAR
Keywords
give, assign, actor, character, weapon