Jump to content
BArielNMtz

Damaging particles...

Recommended Posts

I would like to ask what exactly are you attempting? I can find no single opcode to get a particle's position. But there may be a way to work out your problem if we know why you need a particle to injure or damage. For example; if particle is attached to an object or actor then I could go from there.

Share this post


Link to post
Share on other sites
I would like to ask what exactly are you attempting? I can find no single opcode to get a particle's position. But there may be a way to work out your problem if we know why you need a particle to injure or damage. For example; if particle is attached to an object or actor then I could go from there.

well..

for examplee i attach a FLAMETHROWER particle to a hotring.. and when i press TAB it creates the FLAMETHROWER thing.. but i want to injure any ped..car..etc which passes through it...

how can i do that??

for example i was surfing around the master spark script and i found out that is just a mixture of particles and i cant figure out how can i do damage with it...

tnx 4 reAding..

Share this post


Link to post
Share on other sites
well..

for examplee i attach a FLAMETHROWER particle to a hotring.. and when i press TAB it creates the FLAMETHROWER thing.. but i want to injure any ped..car..etc which passes through it...

how can i do that??

for example i was surfing around the master spark script and i found out that is just a mixture of particles and i cant figure out how can i do damage with it...

tnx 4 reAding..

So basically you want to do fire damage. Create fire in front of your hotring using this;

Assume [email protected] is your hotring racer. 5.0 is the distance from your car.

00AA: store_car [email protected] position_to [email protected] [email protected] [email protected] 
[email protected] = Car.Angle([email protected])
02F6: $TEMPVAR_FLOAT_1 = cosine [email protected] 
02F7: $TEMPVAR_FLOAT_2 = sine [email protected] 
$TEMPVAR_FLOAT_1 *= 5.0  //distance
$TEMPVAR_FLOAT_1 *= 5.0  //distance
0059: [email protected] -= $TEMPVAR_FLOAT_1 
0059: [email protected] += $TEMPVAR_FLOAT_2 
02CF: [email protected] = create_fire_at [email protected] [email protected] [email protected] propagation 0 size 1  //Size will make it bigger propagation is true or false

This remains untested but if the flames appear too close try increasing the distance. Propagation makes smaller fires around the primary. There are a few unknowns working with fires let me know if there are any problems.

Share this post


Link to post
Share on other sites

So basically you want to do fire damage. Create fire in front of your hotring using this;

Assume [email protected] is your hotring racer. 5.0 is the distance from your car.

// This file was decompiled using sascm.ini published by Seemann (http://sannybuilder.com/files/SASCM.rar) on 13.10.2007

{$VERSION 3.1.0027}
{$CLEO .cs}

//-------------MAIN---------------
0247: load_model #BULLET 
038B: load_requested_models 
03A4: name_thread \'HYPERBULLET\' 

:HYPERBULLET_26
0001: wait 0 ms 
00D6: if 
0256:   player $PLAYER_CHAR defined 
03EE:   player $PLAYER_CHAR controllable 
004D: jump_if_false @HYPERBULLET_26 
00D6: if and
0AB0:   key_pressed 72 
0AB0:   key_pressed 66 
004D: jump_if_false @HYPERBULLET_26 

:HYPERBULLET_70
0001: wait 50 ms 
00D6: if 
0248:   model #BULLET available 
004D: jump_if_false @HYPERBULLET_70 
04C4: store_coords_to [email protected] [email protected] [email protected] from_actor $PLAYER_ACTOR with_offset 0.0 3.0 0.0 
00A5: [email protected] = create_car #BULLET at [email protected] [email protected] [email protected] 
099A: set_car [email protected] collision_detection 1 
0229: set_car [email protected] primary_color_to 0 secondary_color_to 6 
0175: set_car [email protected] Z_angle_to 90.0 
00AD: set_car [email protected] max_speed_to 100000.0 
02AC: set_car [email protected] immunities BP 1 FP 1 EP 1 CP 1 MP 1 
053F: set_car [email protected] tires_vulnerability 0 
041E: set_radio_station -1 

:HYPERBULLET_205
0001: wait 0 ms 
00D6: if and
00DF:   actor $PLAYER_ACTOR driving 
00E1:   player 0 pressed_key 17 
004D: jump_if_false @HYPERBULLET_205
00AA: store_car [email protected] position_to [email protected] [email protected] [email protected] 
[email protected] = Car.Angle([email protected])
02F6: $TEMPVAR_FLOAT_1 = cosine [email protected] 
02F7: $TEMPVAR_FLOAT_2 = sine [email protected] 
$TEMPVAR_FLOAT_1 *= 5.0  //distance
$TEMPVAR_FLOAT_1 *= 5.0  //distance
0059: [email protected] -= $TEMPVAR_FLOAT_1 
0059: [email protected] += $TEMPVAR_FLOAT_2 
02CF: [email protected] = create_fire_at [email protected] [email protected] [email protected] propagation 0 size 1  //Size will make it bigger propagation is true or false
jump @HYPERBULLET_205

and game freezes when i press FIRE key...

Edited by bnm9417

Share this post


Link to post
Share on other sites
// This file was decompiled using sascm.ini published by Seemann (http://sannybuilder.com/files/SASCM.rar) on 13.10.2007

{$VERSION 3.1.0027}
{$CLEO .cs}

//-------------MAIN---------------
0247: load_model #BULLET 
038B: load_requested_models 
03A4: name_thread \'HYPERBULLET\' 

:HYPERBULLET_26
0001: wait 0 ms 
00D6: if 
0256:   player $PLAYER_CHAR defined 
03EE:   player $PLAYER_CHAR controllable 
004D: jump_if_false @HYPERBULLET_26 
00D6: if and
0AB0:   key_pressed 72 
0AB0:   key_pressed 66 
004D: jump_if_false @HYPERBULLET_26 

:HYPERBULLET_70
0001: wait 50 ms 
00D6: if 
0248:   model #BULLET available 
004D: jump_if_false @HYPERBULLET_70 
04C4: store_coords_to [email protected] [email protected] [email protected] from_actor $PLAYER_ACTOR with_offset 0.0 3.0 0.0 
00A5: [email protected] = create_car #BULLET at [email protected] [email protected] [email protected] 
099A: set_car [email protected] collision_detection 1 
0229: set_car [email protected] primary_color_to 0 secondary_color_to 6 
0175: set_car [email protected] Z_angle_to 90.0 
00AD: set_car [email protected] max_speed_to 100000.0 
02AC: set_car [email protected] immunities BP 1 FP 1 EP 1 CP 1 MP 1 
053F: set_car [email protected] tires_vulnerability 0 
041E: set_radio_station -1 

:HYPERBULLET_205
0001: wait 0 ms 
00D6: if and
00DF:   actor $PLAYER_ACTOR driving 
00E1:   player 0 pressed_key 17 
004D: jump_if_false @HYPERBULLET_205
00AA: store_car [email protected] position_to [email protected] [email protected] [email protected] 
[email protected] = Car.Angle([email protected])
02F6: $TEMPVAR_FLOAT_1 = cosine [email protected] 
02F7: $TEMPVAR_FLOAT_2 = sine [email protected] 
$TEMPVAR_FLOAT_1 *= 5.0  //distance
$TEMPVAR_FLOAT_1 *= 5.0  //distance
0059: [email protected] -= $TEMPVAR_FLOAT_1 
0059: [email protected] += $TEMPVAR_FLOAT_2 
02CF: [email protected] = create_fire_at [email protected] [email protected] [email protected] propagation 0 size 1  //Size will make it bigger propagation is true or false
jump @HYPERBULLET_205

and game freezes when i press FIRE key...

You need to change this to reflect the variable used to create YOUR car, [email protected] was used as an example.

00AA: store_car [email protected] position_to [email protected] [email protected] [email protected] 
[email protected] = Car.Angle([email protected])

Since you used [email protected] as the car it should read:

00AA: store_car [email protected] position_to [email protected] [email protected] [email protected] 
[email protected] = Car.Angle([email protected])

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×