Jump to content
🛡️FORUMS ARE IN READ-ONLY MODE Read more... ×
Sign in to follow this  
ssm4862

Smoke effect time setting question.

Recommended Posts

I want to stop the smoke effect at any time. But I do not remember the command. Please help.

(* It's largely irrelevant question. I want Near the fire closer to the players want to give a continuous damage.)

Game Logic (hpad1) : nul = [hpad1] execVM "smoke.sqf";

Smoke.sqf : _obj = _this select 0;

_PS1 = "#particlesource" createVehicleLocal getpos _obj;

_PS2 = "#particlesource" createVehicleLocal getpos _obj;

_PS3 = "#particlesource" createVehicleLocal getpos _obj;

_PS1 setParticleCircle [0, [0, 0, 0]];

_PS1 setParticleRandom [0.2, [1, 1, 0], [0.5, 0.5, 0], 1, 0.5, [0, 0, 0, 0], 0, 0];

_PS1 setParticleParams [["\Ca\Data\ParticleEffects\Universal\Universal", 8, 2, 6], "", "Billboard", 1, 1, [0, 0, 0], [0, 0, 0.5], 1, 1, 0.9, 0.3, [1.5], [[1, 0.7, 0.7, 0.5]], [1], 0, 0, "", "", _obj];

_PS1 setDropInterval 0.03;

_PS2 setParticleCircle [0, [0, 0, 0]];

_PS2 setParticleRandom [0, [0, 0, 0], [0.33, 0.33, 0], 0, 0.25, [0.05, 0.05, 0.05, 0.05], 0, 0];

_PS2 setParticleParams [["\Ca\Data\ParticleEffects\Universal\Universal", 8, 0, 1], "", "Billboard", 1, 10, [0, 0, 0.5], [0, 0, 2.9], 1, 1.275, 1, 0.066, [4, 5, 10, 10], [[0.3, 0.3, 0.3, 0.33], [0.4, 0.4, 0.4, 0.33], [0.2, 0.2, 0, 0]], [0, 1], 1, 0, "", "", _obj];

_PS2 setDropInterval 0.5;

_PS3 setParticleCircle [0, [0, 0, 0]];

_PS3 setParticleRandom [0, [0, 0, 0], [0.5, 0.5, 0], 0, 0.25, [0.05, 0.05, 0.05, 0.05], 0, 0];

_PS3 setParticleParams [["\Ca\Data\ParticleEffects\Universal\Universal", 8, 3, 1], "", "Billboard", 1, 15, [0, 0, 0.5], [0, 0, 2.9], 1, 1.275, 1, 0.066, [4, 5, 10, 10], [[0.1, 0.1, 0.1, 0.75], [0.4, 0.4, 0.4, 0.5], [1, 1, 1, 0.2]], [0], 1, 0, "", "", _obj];

_PS3 setDropInterval 0.25;

Share this post


Link to post
Share on other sites

stop smoke:

{deleteVehicle _x} foreach [_PS1,_PS2,_PS3];

give damage:

while {alive anyobject_fire} do {
  {
     if ( (_x distance anyobject_fire) < 2 ) then {_x setDammage ((getDammage _x)+0.05)};
  } foreach allUnits;
  sleep 1;
};
// anyobject_fire = whatever object to be near to get damage from.
// 2 = how near you need to be to take damage in meters.
// 0.05 = the damage taken every second when near object.

;

Share this post


Link to post
Share on other sites
stop smoke:

{deleteVehicle _x} foreach [_PS1,_PS2,_PS3];

give damage:

while {alive anyobject_fire} do {
  {
     if ( (_x distance anyobject_fire) < 2 ) then {_x setDammage ((getDammage _x)+0.05)};
  } foreach allUnits;
  sleep 1;
};
// anyobject_fire = whatever object to be near to get damage from.
// 2 = how near you need to be to take damage in meters.
// 0.05 = the damage taken every second when near object.

;

very very very thank you demonized!

---------- Post added at 11:11 AM ---------- Previous post was at 11:06 AM ----------

stop smoke:

{deleteVehicle _x} foreach [_PS1,_PS2,_PS3];

give damage:

while {alive anyobject_fire} do {
  {
     if ( (_x distance anyobject_fire) < 2 ) then {_x setDammage ((getDammage _x)+0.05)};
  } foreach allUnits;
  sleep 1;
};
// anyobject_fire = whatever object to be near to get damage from.
// 2 = how near you need to be to take damage in meters.
// 0.05 = the damage taken every second when near object.

;

Demonized Thank you. but give damage script does not work. I have written a check is correct to ask.

//create a red smokeshell at a helipad called hpad1

_smoke_red = "SmokeShellRed" createVehicle position hpad1;

//create a green smokeshell at helipad called hpad2

_smoke_green = "SmokeShellGreen" createVehicle position hpad2;

_obj = _this select 0;

_PS1 = "#particlesource" createVehicleLocal getpos _obj;

_PS2 = "#particlesource" createVehicleLocal getpos _obj;

_PS3 = "#particlesource" createVehicleLocal getpos _obj;

_PS1 setParticleCircle [0, [0, 0, 0]];

_PS1 setParticleRandom [0.2, [1, 1, 0], [0.5, 0.5, 0], 1, 0.5, [0, 0, 0, 0], 0, 0];

_PS1 setParticleParams [["\Ca\Data\ParticleEffects\Universal\Universal", 8, 2, 8], "", "Billboard", 1, 1, [0, 0, 0], [0, 0, 0.5], 1, 1, 0.9, 0.3, [1.5], [[1, 0.7, 0.7, 0.5]], [1], 0, 0, "", "", _obj];

_PS1 setDropInterval 0.03;

_PS2 setParticleCircle [0, [0, 0, 0]];

_PS2 setParticleRandom [0, [0, 0, 0], [0.33, 0.33, 0], 0, 0.25, [0.05, 0.05, 0.05, 0.05], 0, 0];

_PS2 setParticleParams [["\Ca\Data\ParticleEffects\Universal\Universal", 8, 0, 1], "", "Billboard", 1, 10, [0, 0, 0.5], [0, 0, 2.9], 1, 1.275, 1, 0.066, [4, 5, 10, 10], [[0.3, 0.3, 0.3, 0.33], [0.4, 0.4, 0.4, 0.33], [0.2, 0.2, 0, 0]], [0, 1], 1, 0, "", "", _obj];

_PS2 setDropInterval 0.5;

_PS3 setParticleCircle [0, [0, 0, 0]];

_PS3 setParticleRandom [0, [0, 0, 0], [0.5, 0.5, 0], 0, 0.25, [0.05, 0.05, 0.05, 0.05], 0, 0];

_PS3 setParticleParams [["\Ca\Data\ParticleEffects\Universal\Universal", 8, 3, 1], "", "Billboard", 1, 15, [0, 0, 0.5], [0, 0, 2.9], 1, 1.275, 1, 0.066, [4, 5, 10, 10], [[0.1, 0.1, 0.1, 0.75], [0.4, 0.4, 0.4, 0.5], [1, 1, 1, 0.2]], [0], 1, 0, "", "", _obj];

_PS3 setDropInterval 0.25;

while {alive anyobject_fire} do {

{

if ( (_x distance anyobject_fire) < 2 ) then {_x setDammage ((getDammage _x)+0.05)};

} foreach allUnits;

sleep 1;

};

// anyobject_fire = whatever object to be near to get damage from.

// 2 = how near you need to be to take damage in meters.

// 0.05 = the damage taken every second when near object.

Share this post


Link to post
Share on other sites
Sign in to follow this  

×