Difference between revisions of "009A"

From GTAMods Wiki
Jump to navigation Jump to search
m (Example: added syntax highlighting, had to remove wiki links)
m (more highlighting, headlines)
Line 16: Line 16:
 
The sixth parameter is placed in the beginning instead of at the end. This depends on which INI file you use.<br>
 
The sixth parameter is placed in the beginning instead of at the end. This depends on which INI file you use.<br>
 
[[Sanny_Builder|Sanny Builder]] by default:
 
[[Sanny_Builder|Sanny Builder]] by default:
<code>009A: 0@ = create_actor_pedtype 5 model #BFORI at 0.0 0.0 0.0</code>
+
<source lang="scm">009A: 0@ = create_actor_pedtype 5 model #BFORI at 0.0 0.0 0.0</source>
  
 
In Sanny Builder, this opcode is equivalent to the command '''Actor.Create'''.
 
In Sanny Builder, this opcode is equivalent to the command '''Actor.Create'''.
Line 23: Line 23:
 
Beginners have a hard time creating actors because it is tough to learn how to make a code that would create an actor successfully. These will be only shown as examples and should not be copied verbatim. There are several ways of doing this. The following codes uses the Sanny Builder.
 
Beginners have a hard time creating actors because it is tough to learn how to make a code that would create an actor successfully. These will be only shown as examples and should not be copied verbatim. There are several ways of doing this. The following codes uses the Sanny Builder.
  
<b>Recommended format:</b>
+
===Recommended format===
 
<source lang="scm">
 
<source lang="scm">
:LoadModel
+
:LoadModel
0247: load_model #BFORI
+
0247: load_model #BFORI
 
   
 
   
:CheckModel
+
:CheckModel
0001: wait 0 ms
+
0001: wait 0 ms
00D6: if 0
+
00D6: if 0
0248:  model #BFORI available
+
0248:  model #BFORI available
004D: jump_if_false @CheckModel
+
004D: jump_if_false @CheckModel
009A: 0@ = create_actor_pedtype 5 model #BFORI at 0.0 0.0 0.0
+
009A: 0@ = create_actor_pedtype 5 model #BFORI at 0.0 0.0 0.0
0249: release_model #BFORI
+
0249: release_model #BFORI
004E: end_thread
+
004E: end_thread
 
</source>
 
</source>
  
<b>Rockstar's common format:</b>
+
===Rockstar's common format===
 
<source lang="scm">
 
<source lang="scm">
:LoadModel
+
:LoadModel
0247: load_model #BFORI
+
0247: load_model #BFORI
 
   
 
   
:CheckModel
+
:CheckModel
00D6: if 0
+
00D6: if 0
8248:  not model #BFORI available
+
8248:  not model #BFORI available
004D: jump_if_false @CreateModel
+
004D: jump_if_false @CreateModel
0001: wait 0 ms
+
0001: wait 0 ms
0002: jump @CheckModel
+
0002: jump @CheckModel
 
   
 
   
:CreateModel
+
:CreateModel
009A: 0@ = create_actor_pedtype 5 model #BFORI at 0.0 0.0 0.0
+
009A: 0@ = create_actor_pedtype 5 model #BFORI at 0.0 0.0 0.0
0249: release_model #BFORI
+
0249: release_model #BFORI
004E: end_thread
+
004E: end_thread
 
</source>
 
</source>
  
<b>Rockstar's less common format:</b>
+
===Rockstar's less common format:===
 
<source lang="scm">
 
<source lang="scm">
:LoadModel
+
:LoadModel
00D6: if 0
+
00D6: if 0
8248:  not model #BFORI available
+
8248:  not model #BFORI available
004D: jump_if_false @CreateModel
+
004D: jump_if_false @CreateModel
0247: load_model #BFORI
+
0247: load_model #BFORI
0001: wait 0 ms
+
0001: wait 0 ms
0002: jump @LoadModel
+
0002: jump @LoadModel
 
   
 
   
:CreateModel
+
:CreateModel
009A: 0@ = create_actor_pedtype 5 model #BFORI at 0.0 0.0 0.0
+
009A: 0@ = create_actor_pedtype 5 model #BFORI at 0.0 0.0 0.0
0249: release_model #BFORI
+
0249: release_model #BFORI
004E: end_thread
+
004E: end_thread
 
</source>
 
</source>
  
Line 79: Line 79:
 
===Example===
 
===Example===
 
Loading special peds is similar to loading regular peds. The following code uses Sanny Builder.
 
Loading special peds is similar to loading regular peds. The following code uses Sanny Builder.
:LoadModel
+
<source lang="scm">
[[023C]]: load_special_actor 'ANDRE' as 1
+
:LoadModel
 +
023C: load_special_actor 'ANDRE' as 1
 
   
 
   
:CheckModel
+
:CheckModel
0001: wait 0 ms
+
0001: wait 0 ms
00D6: if 0
+
00D6: if 0
[[023D]]:  special_actor 1 loaded
+
023D:  special_actor 1 loaded
004D: jump_if_false @CheckModel
+
004D: jump_if_false @CheckModel
009A: 0@ = create_actor_pedtype 23 model #SPECIAL01 at 0.0 0.0 0.0
+
009A: 0@ = create_actor_pedtype 23 model #SPECIAL01 at 0.0 0.0 0.0
[[0296]]: unload_special_actor 1
+
0296: unload_special_actor 1
004E: end_thread
+
004E: end_thread
 +
</source>
  
 
==Keywords==
 
==Keywords==

Revision as of 21:36, 7 December 2008

009A=6,%1d% %2o% %3d% %4d% %5d% %6d%
Description: Creates a ped at a coordinate
Parameter 1: Ped type
Parameter 2: Valid ped DFF model name or ID number as defined in the IDE file
Parameter 3: X-coordinate
Parameter 4: Y-coordinate
Parameter 5: Z-coordinate
Parameter 6: Actor handle
Supports: GTA3, Vice City, San Andreas

This creates a ped at a coordinate. Using this opcode requires 0247 or else the game might crash.

Notes

Sometimes this opcode is written as this:
009A=6,%6d% %1d% %2o% %3d% %4d% %5d%
The sixth parameter is placed in the beginning instead of at the end. This depends on which INI file you use.
Sanny Builder by default:

009A: 0@ = create_actor_pedtype 5 model #BFORI at 0.0 0.0 0.0

In Sanny Builder, this opcode is equivalent to the command Actor.Create.

Example

Beginners have a hard time creating actors because it is tough to learn how to make a code that would create an actor successfully. These will be only shown as examples and should not be copied verbatim. There are several ways of doing this. The following codes uses the Sanny Builder.

Recommended format

:LoadModel
0247: load_model #BFORI
 
:CheckModel
0001: wait 0 ms
00D6: if 0
0248:   model #BFORI available
004D: jump_if_false @CheckModel
009A: 0@ = create_actor_pedtype 5 model #BFORI at 0.0 0.0 0.0
0249: release_model #BFORI
004E: end_thread

Rockstar's common format

:LoadModel
0247: load_model #BFORI
 
:CheckModel
00D6: if 0
8248:   not model #BFORI available
004D: jump_if_false @CreateModel
0001: wait 0 ms
0002: jump @CheckModel
 
:CreateModel
009A: 0@ = create_actor_pedtype 5 model #BFORI at 0.0 0.0 0.0
0249: release_model #BFORI
004E: end_thread

Rockstar's less common format:

:LoadModel
00D6: if 0
8248:   not model #BFORI available
004D: jump_if_false @CreateModel
0247: load_model #BFORI
0001: wait 0 ms
0002: jump @LoadModel
 
:CreateModel
009A: 0@ = create_actor_pedtype 5 model #BFORI at 0.0 0.0 0.0
0249: release_model #BFORI
004E: end_thread

Special Peds

Special peds uses models SPECIAL#.dff, where # is a number from 01 to 10. It is used in conjunction with 023C. The special actor ID number corresponds to the number in SPECIAL#.dff. You do not have to load SPECIAL#.dff as it is always loaded into the game. Each special actor ID can accommodate only one special ped at a time and can be replaced by another special ped if the other special ped has the same ID.

In San Andreas, the game actively uses special actor numbers 1 to 5. The rest is not actively used in the game but it is still usable.

Example

Loading special peds is similar to loading regular peds. The following code uses Sanny Builder.

:LoadModel
023C: load_special_actor 'ANDRE' as 1
 
:CheckModel
0001: wait 0 ms
00D6: if 0
023D:   special_actor 1 loaded
004D: jump_if_false @CheckModel
009A: 0@ = create_actor_pedtype 23 model #SPECIAL01 at 0.0 0.0 0.0
0296: unload_special_actor 1
004E: end_thread

Keywords

create, spawn, actor, ped, pedestrian, pedtype, model