Difference between revisions of "01B2"
Jump to navigation
Jump to search
m |
|||
Line 2: | Line 2: | ||
<hr /> | <hr /> | ||
'''Description''' | '''Description''' | ||
− | : Gives a weapon to | + | : Gives a weapon to the character |
'''Syntax''' | '''Syntax''' | ||
: 01B2: give_actor [''char handle''] weapon [''int1''] ammo [''int2''] | : 01B2: give_actor [''char handle''] weapon [''int1''] ammo [''int2''] | ||
Line 15: | Line 15: | ||
: [[GIVE_WEAPON_TO_CHAR]] | : [[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 group. 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. |
− | < | + | <syntaxhighlight lang="scm"> |
// set constants | // set constants | ||
const | const | ||
Line 54: | Line 54: | ||
0249: release_model WEAP_MODEL | 0249: release_model WEAP_MODEL | ||
01C2: remove_references_to_actor CHAR_MODEL | 01C2: remove_references_to_actor CHAR_MODEL | ||
− | </ | + | </syntaxhighlight> |
== Keywords == | == Keywords == | ||
give, assign, actor, character, weapon | give, assign, actor, character, weapon | ||
+ | |||
+ | == See also == | ||
+ | * [[017B]], sets the character's weapon ammo | ||
+ | * [[01B1]], gives a weapon to the player | ||
[[Category:OpCodes]] | [[Category:OpCodes]] | ||
[[Category:Code Snippets]] | [[Category:Code Snippets]] |
Revision as of 18:31, 27 July 2015
Description
- Gives a weapon to the character
Syntax
- 01B2: give_actor [char handle] weapon [int1] ammo [int2]
Parameter
- [char handle]
- The handle of the character
- [int1]
- [int2]
- Ammo
Native analog
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 group. 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
WEAP_MODEL = #COLT45
WEAP_NUMBER = 17 // each game is different! see weapons page for the proper number to use!
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
// check if models are loaded
repeat
wait 0
if and
0248: model CHAR_MODEL available
0248: model WEAP_MODEL available
then
break
end
until false
// 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_NUMBER ammo 100
// cleanup
0249: release_model CHAR_MODEL
0249: release_model WEAP_MODEL
01C2: remove_references_to_actor CHAR_MODEL
Keywords
give, assign, actor, character, weapon