Difference between revisions of "04C4"

From GTAMods Wiki
Jump to navigation Jump to search
(Created long page)
 
(Example)
Line 31: Line 31:
 
// set constants
 
// set constants
 
const
 
const
X1_POS = 0@
+
X_POS = 0@
Y1_POS = 1@
+
Y_POS = 1@
Z1_POS = 2@
+
Z_POS = 2@
X2_POS = 3@
+
PICKUP_1 = 3@
Y2_POS = 4@
+
PICKUP_2 = 4@
Z2_POS = 5@
 
PICKUP_1 = 6@
 
PICKUP_2 = 7@
 
 
end
 
end
  
 +
// spawn pickups
 
while true
 
while true
 
     wait 50
 
     wait 50
Line 46: Line 44:
 
         00E1:  key_pressed 0 4  // action key
 
         00E1:  key_pressed 0 4  // action key
 
     then
 
     then
         04C4: create_coordinate X1_POS Y1_POS Z1_POS from_actor $PLAYER_ACTOR offset 0.0 3.0 0.0  // 3 units to the front of the player
+
         // spawn adrenaline
         04C4: create_coordinate X2_POS Y2_POS Z2_POS from_actor $PLAYER_ACTOR offset 3.0 0.0 0.0  // 3 units to the right of the player
+
         04C4: create_coordinate X_POS Y_POS Z_POS from_actor $PLAYER_ACTOR offset 0.0 3.0 0.0  // 3 units to the front of the player
        // spawn pickups
 
 
         0215: destroy_pickup PICKUP_1
 
         0215: destroy_pickup PICKUP_1
 +
        0213: PICKUP_1 = create_pickup #ADRENALINE type 3 at X_POS Y_POS Z_POS
 +
        // spawn bribe
 +
        04C4: create_coordinate X_POS Y_POS Z_POS from_actor $PLAYER_ACTOR offset 3.0 0.0 0.0  // 3 units to the right of the player
 
         0215: destroy_pickup PICKUP_2
 
         0215: destroy_pickup PICKUP_2
        0213: PICKUP_1 = create_pickup #ADRENALINE type 3 at X1_POS Y1_POS Z1_POS
+
         0213: PICKUP_2 = create_pickup #BRIBE type 3 at X_POS Y_POS Z_POS
         0213: PICKUP_2 = create_pickup #BRIBE type 3 at X2_POS Y2_POS Z2_POS
 
 
     end
 
     end
 
end
 
end

Revision as of 18:53, 21 August 2011

Vice City San Andreas


Description

Stores a point offset from the character's position

Syntax

04C4: create_coordinate [var1] [var2] [var3] from_actor [char handle] offset [float1] [float2] [float3]

Parameter

[var1]
Variable to store the offset x-coordinate
[var2]
Variable to store the offset y-coordinate
[var3]
Variable to store the offset z-coordinate
[char handle]
The handle of the character
[float1]
Distance to offset from the character's right side
[float1]
Distance to offset from the character's front side
[float1]
Distance to offset from the character's top side

Native analog

GET_OFFSET_FROM_CHAR_IN_WORLD_COORDS

This opcode stores a point offset from the character's position. The coordinates it store is dependent on the direction the character is facing.

Example

The following exmaple, using Sanny Builder, will spawn an Adrenaline pickup in front of the player character and a Bribe pickup to the right of the player character after pressing the ACTION key.

// set constants
const
X_POS = 0@
Y_POS = 1@
Z_POS = 2@
PICKUP_1 = 3@
PICKUP_2 = 4@
end

// spawn pickups 
while true
    wait 50
    if 
        00E1:   key_pressed 0 4  // action key
    then
        // spawn adrenaline
        04C4: create_coordinate X_POS Y_POS Z_POS from_actor $PLAYER_ACTOR offset 0.0 3.0 0.0  // 3 units to the front of the player
        0215: destroy_pickup PICKUP_1
        0213: PICKUP_1 = create_pickup #ADRENALINE type 3 at X_POS Y_POS Z_POS
        // spawn bribe
        04C4: create_coordinate X_POS Y_POS Z_POS from_actor $PLAYER_ACTOR offset 3.0 0.0 0.0  // 3 units to the right of the player
        0215: destroy_pickup PICKUP_2
        0213: PICKUP_2 = create_pickup #BRIBE type 3 at X_POS Y_POS Z_POS
    end
end

For GTA III

This opcode does not exist in GTA III. The following code, in which GTA III can use, will work similarly to this:

04C4: create_coordinate X_POS Y_POS Z_POS from_actor $PLAYER_ACTOR offset 0.0 3.0 0.0
const
X_POS = 0@
Y_POS = 1@
Z_POS = 2@
ANGLE = 3@
SINE_ANGLE = 4@
COSINE_ANGLE = 5@
end

var
X_POS : float
Y_POS : float
SINE_ANGLE : float
COSINE_ANGLE : float
end

00A0: store_actor $PLAYER_ACTOR position_to X_POS Y_POS Z_POS
0172: ANGLE = actor $PLAYER_ACTOR z_angle
02F6: SINE_ANGLE = sine ANGLE
02F7: COSINE_ANGLE = cosine ANGLE
SINE_ANGLE *= -3.0
COSINE_ANGLE *= 3.0
X_POS += SINE_ANGLE
Y_POS += COSINE_ANGLE

Keywords

store, coordinates, get, point, actor, character, offset